diff --git a/.github/helper/install.sh b/.github/helper/install.sh
index 48337ce..915a463 100644
--- a/.github/helper/install.sh
+++ b/.github/helper/install.sh
@@ -4,7 +4,9 @@
 
 cd ~ || exit
 
-sudo apt update && sudo apt install redis-server libcups2-dev
+sudo apt update
+sudo apt remove mysql-server mysql-client
+sudo apt install libcups2-dev redis-server mariadb-client-10.6
 
 pip install frappe-bench
 
@@ -25,14 +27,14 @@
 
 
 if [ "$DB" == "mariadb" ];then
-    mysql --host 127.0.0.1 --port 3306 -u root -proot -e "SET GLOBAL character_set_server = 'utf8mb4'"
-    mysql --host 127.0.0.1 --port 3306 -u root -proot -e "SET GLOBAL collation_server = 'utf8mb4_unicode_ci'"
+    mariadb --host 127.0.0.1 --port 3306 -u root -proot -e "SET GLOBAL character_set_server = 'utf8mb4'"
+    mariadb --host 127.0.0.1 --port 3306 -u root -proot -e "SET GLOBAL collation_server = 'utf8mb4_unicode_ci'"
 
-    mysql --host 127.0.0.1 --port 3306 -u root -proot -e "CREATE USER 'test_frappe'@'localhost' IDENTIFIED BY 'test_frappe'"
-    mysql --host 127.0.0.1 --port 3306 -u root -proot -e "CREATE DATABASE test_frappe"
-    mysql --host 127.0.0.1 --port 3306 -u root -proot -e "GRANT ALL PRIVILEGES ON \`test_frappe\`.* TO 'test_frappe'@'localhost'"
+    mariadb --host 127.0.0.1 --port 3306 -u root -proot -e "CREATE USER 'test_frappe'@'localhost' IDENTIFIED BY 'test_frappe'"
+    mariadb --host 127.0.0.1 --port 3306 -u root -proot -e "CREATE DATABASE test_frappe"
+    mariadb --host 127.0.0.1 --port 3306 -u root -proot -e "GRANT ALL PRIVILEGES ON \`test_frappe\`.* TO 'test_frappe'@'localhost'"
 
-    mysql --host 127.0.0.1 --port 3306 -u root -proot -e "FLUSH PRIVILEGES"
+    mariadb --host 127.0.0.1 --port 3306 -u root -proot -e "FLUSH PRIVILEGES"
 fi
 
 if [ "$DB" == "postgres" ];then
@@ -68,6 +70,6 @@
 
 wait $wkpid
 
-bench start &> bench_run_logs.txt &
+bench start &>> ~/frappe-bench/bench_start.log &
 CI=Yes bench build --app frappe &
 bench --site test_site reinstall --yes
diff --git a/.github/workflows/initiate_release.yml b/.github/workflows/initiate_release.yml
index ee60bad..7034773 100644
--- a/.github/workflows/initiate_release.yml
+++ b/.github/workflows/initiate_release.yml
@@ -30,23 +30,3 @@
           head: version-${{ matrix.version }}-hotfix
         env:
           GITHUB_TOKEN: ${{ secrets.RELEASE_TOKEN }}
-
-  beta-release:
-    name: Release
-    runs-on: ubuntu-latest
-    strategy:
-      fail-fast: false
-
-    steps:
-      - uses: octokit/request-action@v2.x
-        with:
-          route: POST /repos/{owner}/{repo}/pulls
-          owner: frappe
-          repo: erpnext
-          title: |-
-            "chore: release v15 beta"
-          body: "Automated beta release."
-          base: version-15-beta
-          head: develop
-        env:
-          GITHUB_TOKEN: ${{ secrets.RELEASE_TOKEN }}
diff --git a/.github/workflows/patch.yml b/.github/workflows/patch.yml
index aae2928..21dd3d4 100644
--- a/.github/workflows/patch.yml
+++ b/.github/workflows/patch.yml
@@ -23,12 +23,12 @@
 
     services:
       mysql:
-        image: mariadb:10.3
+        image: mariadb:10.6
         env:
           MARIADB_ROOT_PASSWORD: 'root'
         ports:
           - 3306:3306
-        options: --health-cmd="mysqladmin ping" --health-interval=5s --health-timeout=2s --health-retries=3
+        options: --health-cmd="mariadb-admin ping" --health-interval=5s --health-timeout=2s --health-retries=3
 
     steps:
       - name: Clone
@@ -45,9 +45,7 @@
       - name: Setup Python
         uses: "actions/setup-python@v4"
         with:
-          python-version: |
-              3.7
-              3.10
+          python-version: '3.10'
 
       - name: Setup Node
         uses: actions/setup-node@v2
@@ -102,40 +100,60 @@
       - name: Run Patch Tests
         run: |
           cd ~/frappe-bench/
-          wget https://erpnext.com/files/v10-erpnext.sql.gz
-          bench --site test_site --force restore ~/frappe-bench/v10-erpnext.sql.gz
+          bench remove-app payments --force
+          jq 'del(.install_apps)' ~/frappe-bench/sites/test_site/site_config.json > tmp.json
+          mv tmp.json ~/frappe-bench/sites/test_site/site_config.json
+
+          wget https://erpnext.com/files/v13-erpnext.sql.gz
+          bench --site test_site --force restore ~/frappe-bench/v13-erpnext.sql.gz
 
           git -C "apps/frappe" remote set-url upstream https://github.com/frappe/frappe.git
           git -C "apps/erpnext" remote set-url upstream https://github.com/frappe/erpnext.git
 
-          for version in $(seq 12 13)
-          do
-              echo "Updating to v$version"
-              branch_name="version-$version-hotfix"
 
-              git -C "apps/frappe" fetch --depth 1 upstream $branch_name:$branch_name
-              git -C "apps/erpnext" fetch --depth 1 upstream $branch_name:$branch_name
+          function update_to_version() {
+            version=$1
 
-              git -C "apps/frappe" checkout -q -f $branch_name
-              git -C "apps/erpnext" checkout -q -f $branch_name
+            branch_name="version-$version-hotfix"
+            echo "Updating to v$version"
 
-              rm -rf ~/frappe-bench/env
-              bench setup env --python python3.7
-              bench pip install -e ./apps/payments
-              bench pip install -e ./apps/erpnext
+            # Fetch and checkout branches
+            git -C "apps/frappe" fetch --depth 1 upstream $branch_name:$branch_name
+            git -C "apps/erpnext" fetch --depth 1 upstream $branch_name:$branch_name
+            git -C "apps/frappe" checkout -q -f $branch_name
+            git -C "apps/erpnext" checkout -q -f $branch_name
 
-              bench --site test_site migrate
-          done
+            # Resetup env and install apps
+            pgrep honcho | xargs kill
+            rm -rf ~/frappe-bench/env
+            bench -v setup env
+            bench pip install -e ./apps/erpnext
+            bench start &>> ~/frappe-bench/bench_start.log &
 
+            bench --site test_site migrate
+          }
+
+          update_to_version 14
 
           echo "Updating to latest version"
           git -C "apps/frappe" checkout -q -f "${GITHUB_BASE_REF:-${GITHUB_REF##*/}}"
           git -C "apps/erpnext" checkout -q -f "$GITHUB_SHA"
 
+          pgrep honcho | xargs kill
           rm -rf ~/frappe-bench/env
-          bench -v setup env --python python3.10
-          bench pip install -e ./apps/payments
+          bench -v setup env
           bench pip install -e ./apps/erpnext
+          bench start &>> ~/frappe-bench/bench_start.log &
 
           bench --site test_site migrate
-          bench --site test_site install-app payments
+
+      - name: Show bench output
+        if: ${{ always() }}
+        run: |
+          cd ~/frappe-bench
+          cat bench_start.log || true
+          cd logs
+          for f in ./*.log*; do
+            echo "Printing log: $f";
+            cat $f
+          done
diff --git a/.github/workflows/server-tests-mariadb.yml b/.github/workflows/server-tests-mariadb.yml
index 2ce1125..ccdfc8c 100644
--- a/.github/workflows/server-tests-mariadb.yml
+++ b/.github/workflows/server-tests-mariadb.yml
@@ -47,7 +47,7 @@
           MARIADB_ROOT_PASSWORD: 'root'
         ports:
           - 3306:3306
-        options: --health-cmd="mysqladmin ping" --health-interval=5s --health-timeout=2s --health-retries=3
+        options: --health-cmd="mariadb-admin ping" --health-interval=5s --health-timeout=2s --health-retries=3
 
     steps:
       - name: Clone
@@ -123,6 +123,10 @@
           CI_BUILD_ID: ${{ github.run_id }}
           ORCHESTRATOR_URL: http://test-orchestrator.frappe.io
 
+      - name: Show bench output
+        if: ${{ always() }}
+        run: cat ~/frappe-bench/bench_start.log || true
+
       - name: Upload coverage data
         uses: actions/upload-artifact@v3
         with:
diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml
index 2c9a60c..30be903 100644
--- a/.pre-commit-config.yaml
+++ b/.pre-commit-config.yaml
@@ -40,6 +40,7 @@
       - id: flake8
         additional_dependencies: [
           'flake8-bugbear',
+          'flake8-tuple',
         ]
         args: ['--config', '.github/helper/.flake8_strict']
         exclude: ".*setup.py$"
diff --git a/erpnext/accounts/doctype/account/account.js b/erpnext/accounts/doctype/account/account.js
index 3c0eb85..bcf7efc 100644
--- a/erpnext/accounts/doctype/account/account.js
+++ b/erpnext/accounts/doctype/account/account.js
@@ -137,9 +137,6 @@
 					args: {
 						old: frm.doc.name,
 						new: data.name,
-						is_group: frm.doc.is_group,
-						root_type: frm.doc.root_type,
-						company: frm.doc.company,
 					},
 					callback: function (r) {
 						if (!r.exc) {
diff --git a/erpnext/accounts/doctype/account/account.py b/erpnext/accounts/doctype/account/account.py
index c1eca72..02e6c20 100644
--- a/erpnext/accounts/doctype/account/account.py
+++ b/erpnext/accounts/doctype/account/account.py
@@ -18,6 +18,10 @@
 	pass
 
 
+class InvalidAccountMergeError(frappe.ValidationError):
+	pass
+
+
 class Account(NestedSet):
 	nsm_parent_field = "parent_account"
 
@@ -460,25 +464,34 @@
 
 
 @frappe.whitelist()
-def merge_account(old, new, is_group, root_type, company):
+def merge_account(old, new):
 	# Validate properties before merging
 	new_account = frappe.get_cached_doc("Account", new)
+	old_account = frappe.get_cached_doc("Account", old)
 
 	if not new_account:
 		throw(_("Account {0} does not exist").format(new))
 
-	if (new_account.is_group, new_account.root_type, new_account.company) != (
-		cint(is_group),
-		root_type,
-		company,
+	if (
+		cint(new_account.is_group),
+		new_account.root_type,
+		new_account.company,
+		cstr(new_account.account_currency),
+	) != (
+		cint(old_account.is_group),
+		old_account.root_type,
+		old_account.company,
+		cstr(old_account.account_currency),
 	):
 		throw(
-			_(
-				"""Merging is only possible if following properties are same in both records. Is Group, Root Type, Company"""
-			)
+			msg=_(
+				"""Merging is only possible if following properties are same in both records. Is Group, Root Type, Company and Account Currency"""
+			),
+			title=("Invalid Accounts"),
+			exc=InvalidAccountMergeError,
 		)
 
-	if is_group and new_account.parent_account == old:
+	if old_account.is_group and new_account.parent_account == old:
 		new_account.db_set("parent_account", frappe.get_cached_value("Account", old, "parent_account"))
 
 	frappe.rename_doc("Account", old, new, merge=1, force=1)
diff --git a/erpnext/accounts/doctype/account/chart_of_accounts/import_from_openerp.py b/erpnext/accounts/doctype/account/chart_of_accounts/import_from_openerp.py
deleted file mode 100644
index 3f25ada..0000000
--- a/erpnext/accounts/doctype/account/chart_of_accounts/import_from_openerp.py
+++ /dev/null
@@ -1,289 +0,0 @@
-# Copyright (c) 2015, Frappe Technologies Pvt. Ltd. and Contributors
-# License: GNU General Public License v3. See license.txt
-
-"""
-Import chart of accounts from OpenERP sources
-"""
-
-import ast
-import json
-import os
-from xml.etree import ElementTree as ET
-
-import frappe
-from frappe.utils.csvutils import read_csv_content
-
-path = "/Users/nabinhait/projects/odoo/addons"
-
-accounts = {}
-charts = {}
-all_account_types = []
-all_roots = {}
-
-
-def go():
-	global accounts, charts
-	default_account_types = get_default_account_types()
-
-	country_dirs = []
-	for basepath, folders, files in os.walk(path):
-		basename = os.path.basename(basepath)
-		if basename.startswith("l10n_"):
-			country_dirs.append(basename)
-
-	for country_dir in country_dirs:
-		accounts, charts = {}, {}
-		country_path = os.path.join(path, country_dir)
-		manifest = ast.literal_eval(open(os.path.join(country_path, "__openerp__.py")).read())
-		data_files = (
-			manifest.get("data", []) + manifest.get("init_xml", []) + manifest.get("update_xml", [])
-		)
-		files_path = [os.path.join(country_path, d) for d in data_files]
-		xml_roots = get_xml_roots(files_path)
-		csv_content = get_csv_contents(files_path)
-		prefix = country_dir if csv_content else None
-		account_types = get_account_types(
-			xml_roots.get("account.account.type", []), csv_content.get("account.account.type", []), prefix
-		)
-		account_types.update(default_account_types)
-
-		if xml_roots:
-			make_maps_for_xml(xml_roots, account_types, country_dir)
-
-		if csv_content:
-			make_maps_for_csv(csv_content, account_types, country_dir)
-		make_account_trees()
-		make_charts()
-
-	create_all_roots_file()
-
-
-def get_default_account_types():
-	default_types_root = []
-	default_types_root.append(
-		ET.parse(os.path.join(path, "account", "data", "data_account_type.xml")).getroot()
-	)
-	return get_account_types(default_types_root, None, prefix="account")
-
-
-def get_xml_roots(files_path):
-	xml_roots = frappe._dict()
-	for filepath in files_path:
-		fname = os.path.basename(filepath)
-		if fname.endswith(".xml"):
-			tree = ET.parse(filepath)
-			root = tree.getroot()
-			for node in root[0].findall("record"):
-				if node.get("model") in [
-					"account.account.template",
-					"account.chart.template",
-					"account.account.type",
-				]:
-					xml_roots.setdefault(node.get("model"), []).append(root)
-					break
-	return xml_roots
-
-
-def get_csv_contents(files_path):
-	csv_content = {}
-	for filepath in files_path:
-		fname = os.path.basename(filepath)
-		for file_type in ["account.account.template", "account.account.type", "account.chart.template"]:
-			if fname.startswith(file_type) and fname.endswith(".csv"):
-				with open(filepath, "r") as csvfile:
-					try:
-						csv_content.setdefault(file_type, []).append(read_csv_content(csvfile.read()))
-					except Exception as e:
-						continue
-	return csv_content
-
-
-def get_account_types(root_list, csv_content, prefix=None):
-	types = {}
-	account_type_map = {
-		"cash": "Cash",
-		"bank": "Bank",
-		"tr_cash": "Cash",
-		"tr_bank": "Bank",
-		"receivable": "Receivable",
-		"tr_receivable": "Receivable",
-		"account rec": "Receivable",
-		"payable": "Payable",
-		"tr_payable": "Payable",
-		"equity": "Equity",
-		"stocks": "Stock",
-		"stock": "Stock",
-		"tax": "Tax",
-		"tr_tax": "Tax",
-		"tax-out": "Tax",
-		"tax-in": "Tax",
-		"charges_personnel": "Chargeable",
-		"fixed asset": "Fixed Asset",
-		"cogs": "Cost of Goods Sold",
-	}
-	for root in root_list:
-		for node in root[0].findall("record"):
-			if node.get("model") == "account.account.type":
-				data = {}
-				for field in node.findall("field"):
-					if (
-						field.get("name") == "code"
-						and field.text.lower() != "none"
-						and account_type_map.get(field.text)
-					):
-						data["account_type"] = account_type_map[field.text]
-
-				node_id = prefix + "." + node.get("id") if prefix else node.get("id")
-				types[node_id] = data
-
-	if csv_content and csv_content[0][0] == "id":
-		for row in csv_content[1:]:
-			row_dict = dict(zip(csv_content[0], row))
-			data = {}
-			if row_dict.get("code") and account_type_map.get(row_dict["code"]):
-				data["account_type"] = account_type_map[row_dict["code"]]
-			if data and data.get("id"):
-				node_id = prefix + "." + data.get("id") if prefix else data.get("id")
-				types[node_id] = data
-	return types
-
-
-def make_maps_for_xml(xml_roots, account_types, country_dir):
-	"""make maps for `charts` and `accounts`"""
-	for model, root_list in xml_roots.items():
-		for root in root_list:
-			for node in root[0].findall("record"):
-				if node.get("model") == "account.account.template":
-					data = {}
-					for field in node.findall("field"):
-						if field.get("name") == "name":
-							data["name"] = field.text
-						if field.get("name") == "parent_id":
-							parent_id = field.get("ref") or field.get("eval")
-							data["parent_id"] = parent_id
-
-						if field.get("name") == "user_type":
-							value = field.get("ref")
-							if account_types.get(value, {}).get("account_type"):
-								data["account_type"] = account_types[value]["account_type"]
-								if data["account_type"] not in all_account_types:
-									all_account_types.append(data["account_type"])
-
-					data["children"] = []
-					accounts[node.get("id")] = data
-
-				if node.get("model") == "account.chart.template":
-					data = {}
-					for field in node.findall("field"):
-						if field.get("name") == "name":
-							data["name"] = field.text
-						if field.get("name") == "account_root_id":
-							data["account_root_id"] = field.get("ref")
-						data["id"] = country_dir
-					charts.setdefault(node.get("id"), {}).update(data)
-
-
-def make_maps_for_csv(csv_content, account_types, country_dir):
-	for content in csv_content.get("account.account.template", []):
-		for row in content[1:]:
-			data = dict(zip(content[0], row))
-			account = {
-				"name": data.get("name"),
-				"parent_id": data.get("parent_id:id") or data.get("parent_id/id"),
-				"children": [],
-			}
-			user_type = data.get("user_type/id") or data.get("user_type:id")
-			if account_types.get(user_type, {}).get("account_type"):
-				account["account_type"] = account_types[user_type]["account_type"]
-				if account["account_type"] not in all_account_types:
-					all_account_types.append(account["account_type"])
-
-			accounts[data.get("id")] = account
-			if not account.get("parent_id") and data.get("chart_template_id:id"):
-				chart_id = data.get("chart_template_id:id")
-				charts.setdefault(chart_id, {}).update({"account_root_id": data.get("id")})
-
-	for content in csv_content.get("account.chart.template", []):
-		for row in content[1:]:
-			if row:
-				data = dict(zip(content[0], row))
-				charts.setdefault(data.get("id"), {}).update(
-					{
-						"account_root_id": data.get("account_root_id:id") or data.get("account_root_id/id"),
-						"name": data.get("name"),
-						"id": country_dir,
-					}
-				)
-
-
-def make_account_trees():
-	"""build tree hierarchy"""
-	for id in accounts.keys():
-		account = accounts[id]
-
-		if account.get("parent_id"):
-			if accounts.get(account["parent_id"]):
-				# accounts[account["parent_id"]]["children"].append(account)
-				accounts[account["parent_id"]][account["name"]] = account
-			del account["parent_id"]
-			del account["name"]
-
-	# remove empty children
-	for id in accounts.keys():
-		if "children" in accounts[id] and not accounts[id].get("children"):
-			del accounts[id]["children"]
-
-
-def make_charts():
-	"""write chart files in app/setup/doctype/company/charts"""
-	for chart_id in charts:
-		src = charts[chart_id]
-		if not src.get("name") or not src.get("account_root_id"):
-			continue
-
-		if not src["account_root_id"] in accounts:
-			continue
-
-		filename = src["id"][5:] + "_" + chart_id
-
-		print("building " + filename)
-		chart = {}
-		chart["name"] = src["name"]
-		chart["country_code"] = src["id"][5:]
-		chart["tree"] = accounts[src["account_root_id"]]
-
-		for key, val in chart["tree"].items():
-			if key in ["name", "parent_id"]:
-				chart["tree"].pop(key)
-			if type(val) == dict:
-				val["root_type"] = ""
-		if chart:
-			fpath = os.path.join(
-				"erpnext", "erpnext", "accounts", "doctype", "account", "chart_of_accounts", filename + ".json"
-			)
-
-			with open(fpath, "r") as chartfile:
-				old_content = chartfile.read()
-				if not old_content or (
-					json.loads(old_content).get("is_active", "No") == "No"
-					and json.loads(old_content).get("disabled", "No") == "No"
-				):
-					with open(fpath, "w") as chartfile:
-						chartfile.write(json.dumps(chart, indent=4, sort_keys=True))
-
-					all_roots.setdefault(filename, chart["tree"].keys())
-
-
-def create_all_roots_file():
-	with open("all_roots.txt", "w") as f:
-		for filename, roots in sorted(all_roots.items()):
-			f.write(filename)
-			f.write("\n----------------------\n")
-			for r in sorted(roots):
-				f.write(r.encode("utf-8"))
-				f.write("\n")
-			f.write("\n\n\n")
-
-
-if __name__ == "__main__":
-	go()
diff --git a/erpnext/accounts/doctype/account/chart_of_accounts/verified/ae_uae_chart_template_standard.json b/erpnext/accounts/doctype/account/chart_of_accounts/verified/ae_uae_chart_template_standard.json
index a8afb55..3a3b6e3 100644
--- a/erpnext/accounts/doctype/account/chart_of_accounts/verified/ae_uae_chart_template_standard.json
+++ b/erpnext/accounts/doctype/account/chart_of_accounts/verified/ae_uae_chart_template_standard.json
@@ -437,12 +437,20 @@
             },
             "Sales": {
                 "Sales from Other Regions": {
-                    "Sales from Other Region": {}
+                    "Sales from Other Region": {
+                        "account_type": "Income Account"
+                    }
                 },
                 "Sales of same region": {
-                    "Management Consultancy Fees 1": {},
-                    "Sales Account": {},
-                    "Sales of I/C": {}
+                    "Management Consultancy Fees 1": {
+                        "account_type": "Income Account"
+                    },
+                    "Sales Account": {
+                        "account_type": "Income Account"
+                    },
+                    "Sales of I/C": {
+                        "account_type": "Income Account"
+                    }
                 }
             },
             "root_type": "Income"
diff --git a/erpnext/accounts/doctype/account/chart_of_accounts/verified/id_chart_of_accounts.json b/erpnext/accounts/doctype/account/chart_of_accounts/verified/id_chart_of_accounts.json
index d1a0def..fb97476 100644
--- a/erpnext/accounts/doctype/account/chart_of_accounts/verified/id_chart_of_accounts.json
+++ b/erpnext/accounts/doctype/account/chart_of_accounts/verified/id_chart_of_accounts.json
@@ -69,8 +69,7 @@
                 "Persediaan Barang": {
                     "Persediaan Barang": {
                         "account_number": "1141.000", 
-                        "account_type": "Stock", 
-                        "is_group": 1
+                        "account_type": "Stock"
                     }, 
                     "Uang Muka Pembelian": {
                         "Uang Muka Pembelian": {
@@ -670,7 +669,8 @@
             }, 
             "Penjualan Barang Dagangan": {
                 "Penjualan": {
-                    "account_number": "4110.000"
+                    "account_number": "4110.000",
+                    "account_type": "Income Account"
                 }, 
                 "Potongan Penjualan": {
                     "account_number": "4130.000"
diff --git a/erpnext/accounts/doctype/account/chart_of_accounts/verified/mx_plan_de_cuentas.json b/erpnext/accounts/doctype/account/chart_of_accounts/verified/mx_plan_de_cuentas.json
index e98c2d6..858f05c 100644
--- a/erpnext/accounts/doctype/account/chart_of_accounts/verified/mx_plan_de_cuentas.json
+++ b/erpnext/accounts/doctype/account/chart_of_accounts/verified/mx_plan_de_cuentas.json
@@ -109,8 +109,7 @@
                     }
                 }, 
                 "INVENTARIOS": {
-                    "account_type": "Stock", 
-                    "is_group": 1
+                    "account_type": "Stock"
                 }
             }, 
             "ACTIVO LARGO PLAZO": {
@@ -398,10 +397,18 @@
                         "INGRESOS POR SERVICIOS 1": {}
                     }, 
                     "VENTAS": {
-                        "VENTAS EXPORTACION": {}, 
-                        "VENTAS INMUEBLES": {}, 
-                        "VENTAS NACIONALES": {}, 
-                        "VENTAS NACIONALES AL DETAL": {}
+                        "VENTAS EXPORTACION": {
+                            "account_type": "Income Account"
+                        }, 
+                        "VENTAS INMUEBLES": {
+                            "account_type": "Income Account"
+                        }, 
+                        "VENTAS NACIONALES": {
+                            "account_type": "Income Account"
+                        }, 
+                        "VENTAS NACIONALES AL DETAL": {
+                            "account_type": "Income Account"
+                        }
                     }
                 }
             }, 
diff --git a/erpnext/accounts/doctype/account/test_account.py b/erpnext/accounts/doctype/account/test_account.py
index 62303bd..30eebef 100644
--- a/erpnext/accounts/doctype/account/test_account.py
+++ b/erpnext/accounts/doctype/account/test_account.py
@@ -7,7 +7,11 @@
 import frappe
 from frappe.test_runner import make_test_records
 
-from erpnext.accounts.doctype.account.account import merge_account, update_account_number
+from erpnext.accounts.doctype.account.account import (
+	InvalidAccountMergeError,
+	merge_account,
+	update_account_number,
+)
 from erpnext.stock import get_company_default_inventory_account, get_warehouse_account
 
 test_dependencies = ["Company"]
@@ -47,49 +51,53 @@
 		frappe.delete_doc("Account", "1211-11-4 - 6 - Debtors 1 - Test - - _TC")
 
 	def test_merge_account(self):
-		if not frappe.db.exists("Account", "Current Assets - _TC"):
-			acc = frappe.new_doc("Account")
-			acc.account_name = "Current Assets"
-			acc.is_group = 1
-			acc.parent_account = "Application of Funds (Assets) - _TC"
-			acc.company = "_Test Company"
-			acc.insert()
-		if not frappe.db.exists("Account", "Securities and Deposits - _TC"):
-			acc = frappe.new_doc("Account")
-			acc.account_name = "Securities and Deposits"
-			acc.parent_account = "Current Assets - _TC"
-			acc.is_group = 1
-			acc.company = "_Test Company"
-			acc.insert()
-		if not frappe.db.exists("Account", "Earnest Money - _TC"):
-			acc = frappe.new_doc("Account")
-			acc.account_name = "Earnest Money"
-			acc.parent_account = "Securities and Deposits - _TC"
-			acc.company = "_Test Company"
-			acc.insert()
-		if not frappe.db.exists("Account", "Cash In Hand - _TC"):
-			acc = frappe.new_doc("Account")
-			acc.account_name = "Cash In Hand"
-			acc.is_group = 1
-			acc.parent_account = "Current Assets - _TC"
-			acc.company = "_Test Company"
-			acc.insert()
-		if not frappe.db.exists("Account", "Accumulated Depreciation - _TC"):
-			acc = frappe.new_doc("Account")
-			acc.account_name = "Accumulated Depreciation"
-			acc.parent_account = "Fixed Assets - _TC"
-			acc.company = "_Test Company"
-			acc.account_type = "Accumulated Depreciation"
-			acc.insert()
+		create_account(
+			account_name="Current Assets",
+			is_group=1,
+			parent_account="Application of Funds (Assets) - _TC",
+			company="_Test Company",
+		)
 
-		doc = frappe.get_doc("Account", "Securities and Deposits - _TC")
+		create_account(
+			account_name="Securities and Deposits",
+			is_group=1,
+			parent_account="Current Assets - _TC",
+			company="_Test Company",
+		)
+
+		create_account(
+			account_name="Earnest Money",
+			parent_account="Securities and Deposits - _TC",
+			company="_Test Company",
+		)
+
+		create_account(
+			account_name="Cash In Hand",
+			is_group=1,
+			parent_account="Current Assets - _TC",
+			company="_Test Company",
+		)
+
+		create_account(
+			account_name="Receivable INR",
+			parent_account="Current Assets - _TC",
+			company="_Test Company",
+			account_currency="INR",
+		)
+
+		create_account(
+			account_name="Receivable USD",
+			parent_account="Current Assets - _TC",
+			company="_Test Company",
+			account_currency="USD",
+		)
+
 		parent = frappe.db.get_value("Account", "Earnest Money - _TC", "parent_account")
 
 		self.assertEqual(parent, "Securities and Deposits - _TC")
 
-		merge_account(
-			"Securities and Deposits - _TC", "Cash In Hand - _TC", doc.is_group, doc.root_type, doc.company
-		)
+		merge_account("Securities and Deposits - _TC", "Cash In Hand - _TC")
+
 		parent = frappe.db.get_value("Account", "Earnest Money - _TC", "parent_account")
 
 		# Parent account of the child account changes after merging
@@ -98,30 +106,28 @@
 		# Old account doesn't exist after merging
 		self.assertFalse(frappe.db.exists("Account", "Securities and Deposits - _TC"))
 
-		doc = frappe.get_doc("Account", "Current Assets - _TC")
-
 		# Raise error as is_group property doesn't match
 		self.assertRaises(
-			frappe.ValidationError,
+			InvalidAccountMergeError,
 			merge_account,
 			"Current Assets - _TC",
 			"Accumulated Depreciation - _TC",
-			doc.is_group,
-			doc.root_type,
-			doc.company,
 		)
 
-		doc = frappe.get_doc("Account", "Capital Stock - _TC")
-
 		# Raise error as root_type property doesn't match
 		self.assertRaises(
-			frappe.ValidationError,
+			InvalidAccountMergeError,
 			merge_account,
 			"Capital Stock - _TC",
 			"Softwares - _TC",
-			doc.is_group,
-			doc.root_type,
-			doc.company,
+		)
+
+		# Raise error as currency doesn't match
+		self.assertRaises(
+			InvalidAccountMergeError,
+			merge_account,
+			"Receivable INR - _TC",
+			"Receivable USD - _TC",
 		)
 
 	def test_account_sync(self):
@@ -400,11 +406,20 @@
 		"Account", filters={"account_name": kwargs.get("account_name"), "company": kwargs.get("company")}
 	)
 	if account:
-		return account
+		account = frappe.get_doc("Account", account)
+		account.update(
+			dict(
+				is_group=kwargs.get("is_group", 0),
+				parent_account=kwargs.get("parent_account"),
+			)
+		)
+		account.save()
+		return account.name
 	else:
 		account = frappe.get_doc(
 			dict(
 				doctype="Account",
+				is_group=kwargs.get("is_group", 0),
 				account_name=kwargs.get("account_name"),
 				account_type=kwargs.get("account_type"),
 				parent_account=kwargs.get("parent_account"),
diff --git a/erpnext/accounts/doctype/account_closing_balance/account_closing_balance.py b/erpnext/accounts/doctype/account_closing_balance/account_closing_balance.py
index e75af70..d06bd83 100644
--- a/erpnext/accounts/doctype/account_closing_balance/account_closing_balance.py
+++ b/erpnext/accounts/doctype/account_closing_balance/account_closing_balance.py
@@ -37,6 +37,7 @@
 			}
 		)
 		cle.flags.ignore_permissions = True
+		cle.flags.ignore_links = True
 		cle.submit()
 
 
diff --git a/erpnext/accounts/doctype/accounting_dimension/accounting_dimension.py b/erpnext/accounts/doctype/accounting_dimension/accounting_dimension.py
index cfe5e6e..3a2c3cb 100644
--- a/erpnext/accounts/doctype/accounting_dimension/accounting_dimension.py
+++ b/erpnext/accounts/doctype/accounting_dimension/accounting_dimension.py
@@ -265,20 +265,21 @@
 
 @frappe.whitelist()
 def get_dimensions(with_cost_center_and_project=False):
-	dimension_filters = frappe.db.sql(
-		"""
-		SELECT label, fieldname, document_type
-		FROM `tabAccounting Dimension`
-		WHERE disabled = 0
-	""",
-		as_dict=1,
-	)
 
-	default_dimensions = frappe.db.sql(
-		"""SELECT p.fieldname, c.company, c.default_dimension
-		FROM `tabAccounting Dimension Detail` c, `tabAccounting Dimension` p
-		WHERE c.parent = p.name""",
-		as_dict=1,
+	c = frappe.qb.DocType("Accounting Dimension Detail")
+	p = frappe.qb.DocType("Accounting Dimension")
+	dimension_filters = (
+		frappe.qb.from_(p)
+		.select(p.label, p.fieldname, p.document_type)
+		.where(p.disabled == 0)
+		.run(as_dict=1)
+	)
+	default_dimensions = (
+		frappe.qb.from_(c)
+		.inner_join(p)
+		.on(c.parent == p.name)
+		.select(p.fieldname, c.company, c.default_dimension)
+		.run(as_dict=1)
 	)
 
 	if isinstance(with_cost_center_and_project, str):
diff --git a/erpnext/accounts/doctype/accounting_dimension/test_accounting_dimension.py b/erpnext/accounts/doctype/accounting_dimension/test_accounting_dimension.py
index 25ef2ea..cb7f5f5 100644
--- a/erpnext/accounts/doctype/accounting_dimension/test_accounting_dimension.py
+++ b/erpnext/accounts/doctype/accounting_dimension/test_accounting_dimension.py
@@ -84,12 +84,22 @@
 	frappe.set_user("Administrator")
 
 	if not frappe.db.exists("Accounting Dimension", {"document_type": "Department"}):
-		frappe.get_doc(
+		dimension = frappe.get_doc(
 			{
 				"doctype": "Accounting Dimension",
 				"document_type": "Department",
 			}
-		).insert()
+		)
+		dimension.append(
+			"dimension_defaults",
+			{
+				"company": "_Test Company",
+				"reference_document": "Department",
+				"default_dimension": "_Test Department - _TC",
+			},
+		)
+		dimension.insert()
+		dimension.save()
 	else:
 		dimension = frappe.get_doc("Accounting Dimension", "Department")
 		dimension.disabled = 0
diff --git a/erpnext/accounts/doctype/bank_account/bank_account.json b/erpnext/accounts/doctype/bank_account/bank_account.json
index 41d7947..32f1c67 100644
--- a/erpnext/accounts/doctype/bank_account/bank_account.json
+++ b/erpnext/accounts/doctype/bank_account/bank_account.json
@@ -13,6 +13,7 @@
   "account_type",
   "account_subtype",
   "column_break_7",
+  "disabled",
   "is_default",
   "is_company_account",
   "company",
@@ -199,10 +200,16 @@
    "fieldtype": "Data",
    "in_global_search": 1,
    "label": "Branch Code"
+  },
+  {
+   "default": "0",
+   "fieldname": "disabled",
+   "fieldtype": "Check",
+   "label": "Disabled"
   }
  ],
  "links": [],
- "modified": "2022-05-04 15:49:42.620630",
+ "modified": "2023-09-22 21:31:34.763977",
  "modified_by": "Administrator",
  "module": "Accounts",
  "name": "Bank Account",
diff --git a/erpnext/accounts/doctype/bank_clearance/test_bank_clearance.py b/erpnext/accounts/doctype/bank_clearance/test_bank_clearance.py
index c7404d1..ace751b 100644
--- a/erpnext/accounts/doctype/bank_clearance/test_bank_clearance.py
+++ b/erpnext/accounts/doctype/bank_clearance/test_bank_clearance.py
@@ -35,13 +35,14 @@
 		from lending.loan_management.doctype.loan.test_loan import (
 			create_loan,
 			create_loan_accounts,
-			create_loan_type,
+			create_loan_product,
 			create_repayment_entry,
 			make_loan_disbursement_entry,
 		)
 
 		def create_loan_masters():
-			create_loan_type(
+			create_loan_product(
+				"Clearance Loan",
 				"Clearance Loan",
 				2000000,
 				13.5,
diff --git a/erpnext/accounts/doctype/bank_reconciliation_tool/bank_reconciliation_tool.py b/erpnext/accounts/doctype/bank_reconciliation_tool/bank_reconciliation_tool.py
index 3da5ac3..9a7a9a3 100644
--- a/erpnext/accounts/doctype/bank_reconciliation_tool/bank_reconciliation_tool.py
+++ b/erpnext/accounts/doctype/bank_reconciliation_tool/bank_reconciliation_tool.py
@@ -7,7 +7,9 @@
 import frappe
 from frappe import _
 from frappe.model.document import Document
+from frappe.query_builder.custom import ConstantColumn
 from frappe.utils import cint, flt
+from pypika.terms import Parameter
 
 from erpnext import get_default_cost_center
 from erpnext.accounts.doctype.bank_transaction.bank_transaction import get_total_allocated_amount
@@ -15,7 +17,7 @@
 	get_amounts_not_reflected_in_system,
 	get_entries,
 )
-from erpnext.accounts.utils import get_balance_on
+from erpnext.accounts.utils import get_account_currency, get_balance_on
 
 
 class BankReconciliationTool(Document):
@@ -283,68 +285,68 @@
 	to_reference_date=None,
 ):
 	frappe.flags.auto_reconcile_vouchers = True
-	document_types = ["payment_entry", "journal_entry"]
+	reconciled, partially_reconciled = set(), set()
+
 	bank_transactions = get_bank_transactions(bank_account)
-	matched_transaction = []
 	for transaction in bank_transactions:
 		linked_payments = get_linked_payments(
 			transaction.name,
-			document_types,
+			["payment_entry", "journal_entry"],
 			from_date,
 			to_date,
 			filter_by_reference_date,
 			from_reference_date,
 			to_reference_date,
 		)
-		vouchers = []
-		for r in linked_payments:
-			vouchers.append(
-				{
-					"payment_doctype": r[1],
-					"payment_name": r[2],
-					"amount": r[4],
-				}
-			)
-		transaction = frappe.get_doc("Bank Transaction", transaction.name)
-		account = frappe.db.get_value("Bank Account", transaction.bank_account, "account")
-		matched_trans = 0
-		for voucher in vouchers:
-			gl_entry = frappe.db.get_value(
-				"GL Entry",
-				dict(
-					account=account, voucher_type=voucher["payment_doctype"], voucher_no=voucher["payment_name"]
-				),
-				["credit", "debit"],
-				as_dict=1,
-			)
-			gl_amount, transaction_amount = (
-				(gl_entry.credit, transaction.deposit)
-				if gl_entry.credit > 0
-				else (gl_entry.debit, transaction.withdrawal)
-			)
-			allocated_amount = gl_amount if gl_amount >= transaction_amount else transaction_amount
-			transaction.append(
-				"payment_entries",
-				{
-					"payment_document": voucher["payment_doctype"],
-					"payment_entry": voucher["payment_name"],
-					"allocated_amount": allocated_amount,
+
+		if not linked_payments:
+			continue
+
+		vouchers = list(
+			map(
+				lambda entry: {
+					"payment_doctype": entry.get("doctype"),
+					"payment_name": entry.get("name"),
+					"amount": entry.get("paid_amount"),
 				},
+				linked_payments,
 			)
-			matched_transaction.append(str(transaction.name))
-		transaction.save()
-		transaction.update_allocations()
-	matched_transaction_len = len(set(matched_transaction))
-	if matched_transaction_len == 0:
-		frappe.msgprint(_("No matching references found for auto reconciliation"))
-	elif matched_transaction_len == 1:
-		frappe.msgprint(_("{0} transaction is reconcilied").format(matched_transaction_len))
-	else:
-		frappe.msgprint(_("{0} transactions are reconcilied").format(matched_transaction_len))
+		)
+
+		updated_transaction = reconcile_vouchers(transaction.name, json.dumps(vouchers))
+
+		if updated_transaction.status == "Reconciled":
+			reconciled.add(updated_transaction.name)
+		elif flt(transaction.unallocated_amount) != flt(updated_transaction.unallocated_amount):
+			# Partially reconciled (status = Unreconciled & unallocated amount changed)
+			partially_reconciled.add(updated_transaction.name)
+
+	alert_message, indicator = get_auto_reconcile_message(partially_reconciled, reconciled)
+	frappe.msgprint(title=_("Auto Reconciliation"), msg=alert_message, indicator=indicator)
 
 	frappe.flags.auto_reconcile_vouchers = False
+	return reconciled, partially_reconciled
 
-	return frappe.get_doc("Bank Transaction", transaction.name)
+
+def get_auto_reconcile_message(partially_reconciled, reconciled):
+	"""Returns alert message and indicator for auto reconciliation depending on result state."""
+	alert_message, indicator = "", "blue"
+	if not partially_reconciled and not reconciled:
+		alert_message = _("No matches occurred via auto reconciliation")
+		return alert_message, indicator
+
+	indicator = "green"
+	if reconciled:
+		alert_message += _("{0} Transaction(s) Reconciled").format(len(reconciled))
+		alert_message += "<br>"
+
+	if partially_reconciled:
+		alert_message += _("{0} {1} Partially Reconciled").format(
+			len(partially_reconciled),
+			_("Transactions") if len(partially_reconciled) > 1 else _("Transaction"),
+		)
+
+	return alert_message, indicator
 
 
 @frappe.whitelist()
@@ -390,19 +392,13 @@
 	"Look up & subtract any existing Bank Transaction allocations"
 	copied = []
 	for voucher in vouchers:
-		rows = get_total_allocated_amount(voucher[1], voucher[2])
-		amount = None
-		for row in rows:
-			if row["gl_account"] == gl_account:
-				amount = row["total"]
-				break
+		rows = get_total_allocated_amount(voucher.get("doctype"), voucher.get("name"))
+		filtered_row = list(filter(lambda row: row.get("gl_account") == gl_account, rows))
 
-		if amount:
-			l = list(voucher)
-			l[3] -= amount
-			copied.append(tuple(l))
-		else:
-			copied.append(voucher)
+		if amount := None if not filtered_row else filtered_row[0]["total"]:
+			voucher["paid_amount"] -= amount
+
+		copied.append(voucher)
 	return copied
 
 
@@ -418,6 +414,18 @@
 	to_reference_date,
 ):
 	exact_match = True if "exact_match" in document_types else False
+	queries = get_queries(
+		bank_account,
+		company,
+		transaction,
+		document_types,
+		from_date,
+		to_date,
+		filter_by_reference_date,
+		from_reference_date,
+		to_reference_date,
+		exact_match,
+	)
 
 	filters = {
 		"amount": transaction.unallocated_amount,
@@ -429,30 +437,15 @@
 	}
 
 	matching_vouchers = []
+	for query in queries:
+		matching_vouchers.extend(frappe.db.sql(query, filters, as_dict=True))
 
-	# get matching vouchers from all the apps
-	for method_name in frappe.get_hooks("get_matching_vouchers_for_bank_reconciliation"):
-		matching_vouchers.extend(
-			frappe.get_attr(method_name)(
-				bank_account,
-				company,
-				transaction,
-				document_types,
-				from_date,
-				to_date,
-				filter_by_reference_date,
-				from_reference_date,
-				to_reference_date,
-				exact_match,
-				filters,
-			)
-			or []
-		)
-
-	return sorted(matching_vouchers, key=lambda x: x[0], reverse=True) if matching_vouchers else []
+	return (
+		sorted(matching_vouchers, key=lambda x: x["rank"], reverse=True) if matching_vouchers else []
+	)
 
 
-def get_matching_vouchers_for_bank_reconciliation(
+def get_queries(
 	bank_account,
 	company,
 	transaction,
@@ -463,7 +456,6 @@
 	from_reference_date,
 	to_reference_date,
 	exact_match,
-	filters,
 ):
 	# get queries to get matching vouchers
 	account_from_to = "paid_to" if transaction.deposit > 0.0 else "paid_from"
@@ -488,17 +480,7 @@
 			or []
 		)
 
-	vouchers = []
-
-	for query in queries:
-		vouchers.extend(
-			frappe.db.sql(
-				query,
-				filters,
-			)
-		)
-
-	return vouchers
+	return queries
 
 
 def get_matching_queries(
@@ -515,6 +497,8 @@
 	to_reference_date,
 ):
 	queries = []
+	currency = get_account_currency(bank_account)
+
 	if "payment_entry" in document_types:
 		query = get_pe_matching_query(
 			exact_match,
@@ -541,12 +525,12 @@
 		queries.append(query)
 
 	if transaction.deposit > 0.0 and "sales_invoice" in document_types:
-		query = get_si_matching_query(exact_match)
+		query = get_si_matching_query(exact_match, currency)
 		queries.append(query)
 
 	if transaction.withdrawal > 0.0:
 		if "purchase_invoice" in document_types:
-			query = get_pi_matching_query(exact_match)
+			query = get_pi_matching_query(exact_match, currency)
 			queries.append(query)
 
 	if "bank_transaction" in document_types:
@@ -560,33 +544,48 @@
 	# get matching bank transaction query
 	# find bank transactions in the same bank account with opposite sign
 	# same bank account must have same company and currency
+	bt = frappe.qb.DocType("Bank Transaction")
+
 	field = "deposit" if transaction.withdrawal > 0.0 else "withdrawal"
+	amount_equality = getattr(bt, field) == transaction.unallocated_amount
+	amount_rank = frappe.qb.terms.Case().when(amount_equality, 1).else_(0)
+	amount_condition = amount_equality if exact_match else getattr(bt, field) > 0.0
 
-	return f"""
+	ref_rank = (
+		frappe.qb.terms.Case().when(bt.reference_number == transaction.reference_number, 1).else_(0)
+	)
+	unallocated_rank = (
+		frappe.qb.terms.Case().when(bt.unallocated_amount == transaction.unallocated_amount, 1).else_(0)
+	)
 
-		SELECT
-			(CASE WHEN reference_number = %(reference_no)s THEN 1 ELSE 0 END
-			+ CASE WHEN {field} = %(amount)s THEN 1 ELSE 0 END
-			+ CASE WHEN ( party_type = %(party_type)s AND party = %(party)s ) THEN 1 ELSE 0 END
-			+ CASE WHEN unallocated_amount = %(amount)s THEN 1 ELSE 0 END
-			+ 1) AS rank,
-			'Bank Transaction' AS doctype,
-			name,
-			unallocated_amount AS paid_amount,
-			reference_number AS reference_no,
-			date AS reference_date,
-			party,
-			party_type,
-			date AS posting_date,
-			currency
-		FROM
-			`tabBank Transaction`
-		WHERE
-			status != 'Reconciled'
-			AND name != '{transaction.name}'
-			AND bank_account = '{transaction.bank_account}'
-			AND {field} {'= %(amount)s' if exact_match else '> 0.0'}
-	"""
+	party_condition = (
+		(bt.party_type == transaction.party_type)
+		& (bt.party == transaction.party)
+		& bt.party.isnotnull()
+	)
+	party_rank = frappe.qb.terms.Case().when(party_condition, 1).else_(0)
+
+	query = (
+		frappe.qb.from_(bt)
+		.select(
+			(ref_rank + amount_rank + party_rank + unallocated_rank + 1).as_("rank"),
+			ConstantColumn("Bank Transaction").as_("doctype"),
+			bt.name,
+			bt.unallocated_amount.as_("paid_amount"),
+			bt.reference_number.as_("reference_no"),
+			bt.date.as_("reference_date"),
+			bt.party,
+			bt.party_type,
+			bt.date.as_("posting_date"),
+			bt.currency,
+		)
+		.where(bt.status != "Reconciled")
+		.where(bt.name != transaction.name)
+		.where(bt.bank_account == transaction.bank_account)
+		.where(amount_condition)
+		.where(bt.docstatus == 1)
+	)
+	return str(query)
 
 
 def get_pe_matching_query(
@@ -600,45 +599,56 @@
 	to_reference_date,
 ):
 	# get matching payment entries query
-	if transaction.deposit > 0.0:
-		currency_field = "paid_to_account_currency as currency"
-	else:
-		currency_field = "paid_from_account_currency as currency"
-	filter_by_date = f"AND posting_date between '{from_date}' and '{to_date}'"
-	order_by = " posting_date"
-	filter_by_reference_no = ""
+	to_from = "to" if transaction.deposit > 0.0 else "from"
+	currency_field = f"paid_{to_from}_account_currency"
+	payment_type = "Receive" if transaction.deposit > 0.0 else "Pay"
+	pe = frappe.qb.DocType("Payment Entry")
+
+	ref_condition = pe.reference_no == transaction.reference_number
+	ref_rank = frappe.qb.terms.Case().when(ref_condition, 1).else_(0)
+
+	amount_equality = pe.paid_amount == transaction.unallocated_amount
+	amount_rank = frappe.qb.terms.Case().when(amount_equality, 1).else_(0)
+	amount_condition = amount_equality if exact_match else pe.paid_amount > 0.0
+
+	party_condition = (
+		(pe.party_type == transaction.party_type)
+		& (pe.party == transaction.party)
+		& pe.party.isnotnull()
+	)
+	party_rank = frappe.qb.terms.Case().when(party_condition, 1).else_(0)
+
+	filter_by_date = pe.posting_date.between(from_date, to_date)
 	if cint(filter_by_reference_date):
-		filter_by_date = f"AND reference_date between '{from_reference_date}' and '{to_reference_date}'"
-		order_by = " reference_date"
+		filter_by_date = pe.reference_date.between(from_reference_date, to_reference_date)
+
+	query = (
+		frappe.qb.from_(pe)
+		.select(
+			(ref_rank + amount_rank + party_rank + 1).as_("rank"),
+			ConstantColumn("Payment Entry").as_("doctype"),
+			pe.name,
+			pe.paid_amount,
+			pe.reference_no,
+			pe.reference_date,
+			pe.party,
+			pe.party_type,
+			pe.posting_date,
+			getattr(pe, currency_field).as_("currency"),
+		)
+		.where(pe.docstatus == 1)
+		.where(pe.payment_type.isin([payment_type, "Internal Transfer"]))
+		.where(pe.clearance_date.isnull())
+		.where(getattr(pe, account_from_to) == Parameter("%(bank_account)s"))
+		.where(amount_condition)
+		.where(filter_by_date)
+		.orderby(pe.reference_date if cint(filter_by_reference_date) else pe.posting_date)
+	)
+
 	if frappe.flags.auto_reconcile_vouchers == True:
-		filter_by_reference_no = f"AND reference_no = '{transaction.reference_number}'"
-	return f"""
-		SELECT
-			(CASE WHEN reference_no=%(reference_no)s THEN 1 ELSE 0 END
-			+ CASE WHEN (party_type = %(party_type)s AND party = %(party)s ) THEN 1 ELSE 0 END
-			+ CASE WHEN paid_amount = %(amount)s THEN 1 ELSE 0 END
-			+ 1 ) AS rank,
-			'Payment Entry' as doctype,
-			name,
-			paid_amount,
-			reference_no,
-			reference_date,
-			party,
-			party_type,
-			posting_date,
-			{currency_field}
-		FROM
-			`tabPayment Entry`
-		WHERE
-			docstatus = 1
-			AND payment_type IN (%(payment_type)s, 'Internal Transfer')
-			AND ifnull(clearance_date, '') = ""
-			AND {account_from_to} = %(bank_account)s
-			AND paid_amount {'= %(amount)s' if exact_match else '> 0.0'}
-			{filter_by_date}
-			{filter_by_reference_no}
-		order by{order_by}
-	"""
+		query = query.where(ref_condition)
+
+	return str(query)
 
 
 def get_je_matching_query(
@@ -655,100 +665,121 @@
 	# So one bank could have both types of bank accounts like asset and liability
 	# So cr_or_dr should be judged only on basis of withdrawal and deposit and not account type
 	cr_or_dr = "credit" if transaction.withdrawal > 0.0 else "debit"
-	filter_by_date = f"AND je.posting_date between '{from_date}' and '{to_date}'"
-	order_by = " je.posting_date"
-	filter_by_reference_no = ""
+	je = frappe.qb.DocType("Journal Entry")
+	jea = frappe.qb.DocType("Journal Entry Account")
+
+	ref_condition = je.cheque_no == transaction.reference_number
+	ref_rank = frappe.qb.terms.Case().when(ref_condition, 1).else_(0)
+
+	amount_field = f"{cr_or_dr}_in_account_currency"
+	amount_equality = getattr(jea, amount_field) == transaction.unallocated_amount
+	amount_rank = frappe.qb.terms.Case().when(amount_equality, 1).else_(0)
+
+	filter_by_date = je.posting_date.between(from_date, to_date)
 	if cint(filter_by_reference_date):
-		filter_by_date = f"AND je.cheque_date between '{from_reference_date}' and '{to_reference_date}'"
-		order_by = " je.cheque_date"
-	if frappe.flags.auto_reconcile_vouchers == True:
-		filter_by_reference_no = f"AND je.cheque_no = '{transaction.reference_number}'"
-	return f"""
-		SELECT
-			(CASE WHEN je.cheque_no=%(reference_no)s THEN 1 ELSE 0 END
-			+ CASE WHEN jea.{cr_or_dr}_in_account_currency = %(amount)s THEN 1 ELSE 0 END
-			+ 1) AS rank ,
-			'Journal Entry' AS doctype,
+		filter_by_date = je.cheque_date.between(from_reference_date, to_reference_date)
+
+	query = (
+		frappe.qb.from_(jea)
+		.join(je)
+		.on(jea.parent == je.name)
+		.select(
+			(ref_rank + amount_rank + 1).as_("rank"),
+			ConstantColumn("Journal Entry").as_("doctype"),
 			je.name,
-			jea.{cr_or_dr}_in_account_currency AS paid_amount,
-			je.cheque_no AS reference_no,
-			je.cheque_date AS reference_date,
-			je.pay_to_recd_from AS party,
+			getattr(jea, amount_field).as_("paid_amount"),
+			je.cheque_no.as_("reference_no"),
+			je.cheque_date.as_("reference_date"),
+			je.pay_to_recd_from.as_("party"),
 			jea.party_type,
 			je.posting_date,
-			jea.account_currency AS currency
-		FROM
-			`tabJournal Entry Account` AS jea
-		JOIN
-			`tabJournal Entry` AS je
-		ON
-			jea.parent = je.name
-		WHERE
-			je.docstatus = 1
-			AND je.voucher_type NOT IN ('Opening Entry')
-			AND (je.clearance_date IS NULL OR je.clearance_date='0000-00-00')
-			AND jea.account = %(bank_account)s
-			AND jea.{cr_or_dr}_in_account_currency {'= %(amount)s' if exact_match else '> 0.0'}
-			AND je.docstatus = 1
-			{filter_by_date}
-			{filter_by_reference_no}
-			order by {order_by}
-	"""
+			jea.account_currency.as_("currency"),
+		)
+		.where(je.docstatus == 1)
+		.where(je.voucher_type != "Opening Entry")
+		.where(je.clearance_date.isnull())
+		.where(jea.account == Parameter("%(bank_account)s"))
+		.where(amount_equality if exact_match else getattr(jea, amount_field) > 0.0)
+		.where(je.docstatus == 1)
+		.where(filter_by_date)
+		.orderby(je.cheque_date if cint(filter_by_reference_date) else je.posting_date)
+	)
+
+	if frappe.flags.auto_reconcile_vouchers == True:
+		query = query.where(ref_condition)
+
+	return str(query)
 
 
-def get_si_matching_query(exact_match):
+def get_si_matching_query(exact_match, currency):
 	# get matching sales invoice query
-	return f"""
-		SELECT
-			( CASE WHEN si.customer = %(party)s  THEN 1 ELSE 0 END
-			+ CASE WHEN sip.amount = %(amount)s THEN 1 ELSE 0 END
-			+ 1 ) AS rank,
-			'Sales Invoice' as doctype,
+	si = frappe.qb.DocType("Sales Invoice")
+	sip = frappe.qb.DocType("Sales Invoice Payment")
+
+	amount_equality = sip.amount == Parameter("%(amount)s")
+	amount_rank = frappe.qb.terms.Case().when(amount_equality, 1).else_(0)
+	amount_condition = amount_equality if exact_match else sip.amount > 0.0
+
+	party_condition = si.customer == Parameter("%(party)s")
+	party_rank = frappe.qb.terms.Case().when(party_condition, 1).else_(0)
+
+	query = (
+		frappe.qb.from_(sip)
+		.join(si)
+		.on(sip.parent == si.name)
+		.select(
+			(party_rank + amount_rank + 1).as_("rank"),
+			ConstantColumn("Sales Invoice").as_("doctype"),
 			si.name,
-			sip.amount as paid_amount,
-			'' as reference_no,
-			'' as reference_date,
-			si.customer as party,
-			'Customer' as party_type,
+			sip.amount.as_("paid_amount"),
+			ConstantColumn("").as_("reference_no"),
+			ConstantColumn("").as_("reference_date"),
+			si.customer.as_("party"),
+			ConstantColumn("Customer").as_("party_type"),
 			si.posting_date,
-			si.currency
+			si.currency,
+		)
+		.where(si.docstatus == 1)
+		.where(sip.clearance_date.isnull())
+		.where(sip.account == Parameter("%(bank_account)s"))
+		.where(amount_condition)
+		.where(si.currency == currency)
+	)
 
-		FROM
-			`tabSales Invoice Payment` as sip
-		JOIN
-			`tabSales Invoice` as si
-		ON
-			sip.parent = si.name
-		WHERE
-			si.docstatus = 1
-			AND (sip.clearance_date is null or sip.clearance_date='0000-00-00')
-			AND sip.account = %(bank_account)s
-			AND sip.amount {'= %(amount)s' if exact_match else '> 0.0'}
-	"""
+	return str(query)
 
 
-def get_pi_matching_query(exact_match):
+def get_pi_matching_query(exact_match, currency):
 	# get matching purchase invoice query when they are also used as payment entries (is_paid)
-	return f"""
-		SELECT
-			( CASE WHEN supplier = %(party)s THEN 1 ELSE 0 END
-			+ CASE WHEN paid_amount = %(amount)s THEN 1 ELSE 0 END
-			+ 1 ) AS rank,
-			'Purchase Invoice' as doctype,
-			name,
-			paid_amount,
-			'' as reference_no,
-			'' as reference_date,
-			supplier as party,
-			'Supplier' as party_type,
-			posting_date,
-			currency
-		FROM
-			`tabPurchase Invoice`
-		WHERE
-			docstatus = 1
-			AND is_paid = 1
-			AND ifnull(clearance_date, '') = ""
-			AND cash_bank_account = %(bank_account)s
-			AND paid_amount {'= %(amount)s' if exact_match else '> 0.0'}
-	"""
+	purchase_invoice = frappe.qb.DocType("Purchase Invoice")
+
+	amount_equality = purchase_invoice.paid_amount == Parameter("%(amount)s")
+	amount_rank = frappe.qb.terms.Case().when(amount_equality, 1).else_(0)
+	amount_condition = amount_equality if exact_match else purchase_invoice.paid_amount > 0.0
+
+	party_condition = purchase_invoice.supplier == Parameter("%(party)s")
+	party_rank = frappe.qb.terms.Case().when(party_condition, 1).else_(0)
+
+	query = (
+		frappe.qb.from_(purchase_invoice)
+		.select(
+			(party_rank + amount_rank + 1).as_("rank"),
+			ConstantColumn("Purchase Invoice").as_("doctype"),
+			purchase_invoice.name,
+			purchase_invoice.paid_amount,
+			ConstantColumn("").as_("reference_no"),
+			ConstantColumn("").as_("reference_date"),
+			purchase_invoice.supplier.as_("party"),
+			ConstantColumn("Supplier").as_("party_type"),
+			purchase_invoice.posting_date,
+			purchase_invoice.currency,
+		)
+		.where(purchase_invoice.docstatus == 1)
+		.where(purchase_invoice.is_paid == 1)
+		.where(purchase_invoice.clearance_date.isnull())
+		.where(purchase_invoice.cash_bank_account == Parameter("%(bank_account)s"))
+		.where(amount_condition)
+		.where(purchase_invoice.currency == currency)
+	)
+
+	return str(query)
diff --git a/erpnext/accounts/doctype/bank_reconciliation_tool/test_bank_reconciliation_tool.py b/erpnext/accounts/doctype/bank_reconciliation_tool/test_bank_reconciliation_tool.py
index 599ced5..5a6bb69 100644
--- a/erpnext/accounts/doctype/bank_reconciliation_tool/test_bank_reconciliation_tool.py
+++ b/erpnext/accounts/doctype/bank_reconciliation_tool/test_bank_reconciliation_tool.py
@@ -1,9 +1,100 @@
 # Copyright (c) 2020, Frappe Technologies Pvt. Ltd. and Contributors
 # See license.txt
 
-# import frappe
 import unittest
 
+import frappe
+from frappe import qb
+from frappe.tests.utils import FrappeTestCase, change_settings
+from frappe.utils import add_days, flt, getdate, today
 
-class TestBankReconciliationTool(unittest.TestCase):
-	pass
+from erpnext.accounts.doctype.bank_reconciliation_tool.bank_reconciliation_tool import (
+	auto_reconcile_vouchers,
+	get_bank_transactions,
+)
+from erpnext.accounts.doctype.payment_entry.test_payment_entry import create_payment_entry
+from erpnext.accounts.test.accounts_mixin import AccountsTestMixin
+
+
+class TestBankReconciliationTool(AccountsTestMixin, FrappeTestCase):
+	def setUp(self):
+		self.create_company()
+		self.create_customer()
+		self.clear_old_entries()
+		bank_dt = qb.DocType("Bank")
+		q = qb.from_(bank_dt).delete().where(bank_dt.name == "HDFC").run()
+		self.create_bank_account()
+
+	def tearDown(self):
+		frappe.db.rollback()
+
+	def create_bank_account(self):
+		bank = frappe.get_doc(
+			{
+				"doctype": "Bank",
+				"bank_name": "HDFC",
+			}
+		).save()
+
+		self.bank_account = (
+			frappe.get_doc(
+				{
+					"doctype": "Bank Account",
+					"account_name": "HDFC _current_",
+					"bank": bank,
+					"is_company_account": True,
+					"account": self.bank,  # account from Chart of Accounts
+				}
+			)
+			.insert()
+			.name
+		)
+
+	def test_auto_reconcile(self):
+		# make payment
+		from_date = add_days(today(), -1)
+		to_date = today()
+		payment = create_payment_entry(
+			company=self.company,
+			posting_date=from_date,
+			payment_type="Receive",
+			party_type="Customer",
+			party=self.customer,
+			paid_from=self.debit_to,
+			paid_to=self.bank,
+			paid_amount=100,
+		).save()
+		payment.reference_no = "123"
+		payment = payment.save().submit()
+
+		# make bank transaction
+		bank_transaction = (
+			frappe.get_doc(
+				{
+					"doctype": "Bank Transaction",
+					"date": to_date,
+					"deposit": 100,
+					"bank_account": self.bank_account,
+					"reference_number": "123",
+				}
+			)
+			.save()
+			.submit()
+		)
+
+		# assert API output pre reconciliation
+		transactions = get_bank_transactions(self.bank_account, from_date, to_date)
+		self.assertEqual(len(transactions), 1)
+		self.assertEqual(transactions[0].name, bank_transaction.name)
+
+		# auto reconcile
+		auto_reconcile_vouchers(
+			bank_account=self.bank_account,
+			from_date=from_date,
+			to_date=to_date,
+			filter_by_reference_date=False,
+		)
+
+		# assert API output post reconciliation
+		transactions = get_bank_transactions(self.bank_account, from_date, to_date)
+		self.assertEqual(len(transactions), 0)
diff --git a/erpnext/accounts/doctype/bank_statement_import/bank_statement_import.js b/erpnext/accounts/doctype/bank_statement_import/bank_statement_import.js
index 04af323..a70af7a 100644
--- a/erpnext/accounts/doctype/bank_statement_import/bank_statement_import.js
+++ b/erpnext/accounts/doctype/bank_statement_import/bank_statement_import.js
@@ -352,10 +352,11 @@
 
 	export_errored_rows(frm) {
 		open_url_post(
-			"/api/method/frappe.core.doctype.data_import.data_import.download_errored_template",
+			"/api/method/erpnext.accounts.doctype.bank_statement_import.bank_statement_import.download_errored_template",
 			{
 				data_import_name: frm.doc.name,
-			}
+			},
+			true
 		);
 	},
 
diff --git a/erpnext/accounts/doctype/bank_transaction/bank_transaction.js b/erpnext/accounts/doctype/bank_transaction/bank_transaction.js
index e548b4c..b3cc1cb 100644
--- a/erpnext/accounts/doctype/bank_transaction/bank_transaction.js
+++ b/erpnext/accounts/doctype/bank_transaction/bank_transaction.js
@@ -13,10 +13,11 @@
 		});
 	},
 	refresh(frm) {
-		frm.add_custom_button(__('Unreconcile Transaction'), () => {
-			frm.call('remove_payment_entries')
-			.then( () => frm.refresh() );
-		});
+		if (!frm.is_dirty() && frm.doc.payment_entries.length > 0) {
+			frm.add_custom_button(__("Unreconcile Transaction"), () => {
+				frm.call("remove_payment_entries").then(() => frm.refresh());
+			});
+		}
 	},
 	bank_account: function (frm) {
 		set_bank_statement_filter(frm);
diff --git a/erpnext/accounts/doctype/bank_transaction/test_bank_transaction.py b/erpnext/accounts/doctype/bank_transaction/test_bank_transaction.py
index 59905da..4a6491d 100644
--- a/erpnext/accounts/doctype/bank_transaction/test_bank_transaction.py
+++ b/erpnext/accounts/doctype/bank_transaction/test_bank_transaction.py
@@ -47,7 +47,7 @@
 			from_date=bank_transaction.date,
 			to_date=utils.today(),
 		)
-		self.assertTrue(linked_payments[0][6] == "Conrad Electronic")
+		self.assertTrue(linked_payments[0]["party"] == "Conrad Electronic")
 
 	# This test validates a simple reconciliation leading to the clearance of the bank transaction and the payment
 	def test_reconcile(self):
@@ -93,7 +93,7 @@
 			from_date=bank_transaction.date,
 			to_date=utils.today(),
 		)
-		self.assertTrue(linked_payments[0][3])
+		self.assertTrue(linked_payments[0]["paid_amount"])
 
 	# Check error if already reconciled
 	def test_already_reconciled(self):
@@ -188,7 +188,7 @@
 		repayment_entry = create_loan_and_repayment()
 
 		linked_payments = get_linked_payments(bank_transaction.name, ["loan_repayment", "exact_match"])
-		self.assertEqual(linked_payments[0][2], repayment_entry.name)
+		self.assertEqual(linked_payments[0]["name"], repayment_entry.name)
 
 
 @if_lending_app_installed
@@ -410,7 +410,7 @@
 def create_loan_and_repayment():
 	from lending.loan_management.doctype.loan.test_loan import (
 		create_loan,
-		create_loan_type,
+		create_loan_product,
 		create_repayment_entry,
 		make_loan_disbursement_entry,
 	)
@@ -420,7 +420,8 @@
 
 	from erpnext.setup.doctype.employee.test_employee import make_employee
 
-	create_loan_type(
+	create_loan_product(
+		"Personal Loan",
 		"Personal Loan",
 		500000,
 		8.4,
@@ -441,7 +442,7 @@
 			"applicant_type": "Employee",
 			"company": "_Test Company",
 			"applicant": applicant,
-			"loan_type": "Personal Loan",
+			"loan_product": "Personal Loan",
 			"loan_amount": 5000,
 			"repayment_method": "Repay Fixed Amount per Period",
 			"monthly_repayment_amount": 500,
diff --git a/erpnext/accounts/doctype/currency_exchange_settings/currency_exchange_settings.json b/erpnext/accounts/doctype/currency_exchange_settings/currency_exchange_settings.json
index c62b711..df232a5 100644
--- a/erpnext/accounts/doctype/currency_exchange_settings/currency_exchange_settings.json
+++ b/erpnext/accounts/doctype/currency_exchange_settings/currency_exchange_settings.json
@@ -9,6 +9,7 @@
   "disabled",
   "service_provider",
   "api_endpoint",
+  "access_key",
   "url",
   "column_break_3",
   "help",
@@ -84,12 +85,18 @@
    "fieldname": "disabled",
    "fieldtype": "Check",
    "label": "Disabled"
+  },
+  {
+   "depends_on": "eval:doc.service_provider == 'exchangerate.host';",
+   "fieldname": "access_key",
+   "fieldtype": "Data",
+   "label": "Access Key"
   }
  ],
  "index_web_pages_for_search": 1,
  "issingle": 1,
  "links": [],
- "modified": "2023-01-09 12:19:03.955906",
+ "modified": "2023-10-04 15:30:25.333860",
  "modified_by": "Administrator",
  "module": "Accounts",
  "name": "Currency Exchange Settings",
diff --git a/erpnext/accounts/doctype/currency_exchange_settings/currency_exchange_settings.py b/erpnext/accounts/doctype/currency_exchange_settings/currency_exchange_settings.py
index d618c5c..117d5ff 100644
--- a/erpnext/accounts/doctype/currency_exchange_settings/currency_exchange_settings.py
+++ b/erpnext/accounts/doctype/currency_exchange_settings/currency_exchange_settings.py
@@ -18,11 +18,21 @@
 
 	def set_parameters_and_result(self):
 		if self.service_provider == "exchangerate.host":
+
+			if not self.access_key:
+				frappe.throw(
+					_("Access Key is required for Service Provider: {0}").format(
+						frappe.bold(self.service_provider)
+					)
+				)
+
 			self.set("result_key", [])
 			self.set("req_params", [])
 
 			self.api_endpoint = "https://api.exchangerate.host/convert"
 			self.append("result_key", {"key": "result"})
+			self.append("req_params", {"key": "access_key", "value": self.access_key})
+			self.append("req_params", {"key": "amount", "value": "1"})
 			self.append("req_params", {"key": "date", "value": "{transaction_date}"})
 			self.append("req_params", {"key": "from", "value": "{from_currency}"})
 			self.append("req_params", {"key": "to", "value": "{to_currency}"})
diff --git a/erpnext/accounts/doctype/exchange_rate_revaluation/test_exchange_rate_revaluation.py b/erpnext/accounts/doctype/exchange_rate_revaluation/test_exchange_rate_revaluation.py
index ec55e60..e520872 100644
--- a/erpnext/accounts/doctype/exchange_rate_revaluation/test_exchange_rate_revaluation.py
+++ b/erpnext/accounts/doctype/exchange_rate_revaluation/test_exchange_rate_revaluation.py
@@ -3,6 +3,296 @@
 
 import unittest
 
+import frappe
+from frappe import qb
+from frappe.tests.utils import FrappeTestCase, change_settings
+from frappe.utils import add_days, flt, today
 
-class TestExchangeRateRevaluation(unittest.TestCase):
-	pass
+from erpnext import get_default_cost_center
+from erpnext.accounts.doctype.payment_entry.payment_entry import get_payment_entry
+from erpnext.accounts.doctype.payment_entry.test_payment_entry import create_payment_entry
+from erpnext.accounts.doctype.purchase_invoice.test_purchase_invoice import make_purchase_invoice
+from erpnext.accounts.doctype.sales_invoice.test_sales_invoice import create_sales_invoice
+from erpnext.accounts.party import get_party_account
+from erpnext.accounts.test.accounts_mixin import AccountsTestMixin
+from erpnext.stock.doctype.item.test_item import create_item
+
+
+class TestExchangeRateRevaluation(AccountsTestMixin, FrappeTestCase):
+	def setUp(self):
+		self.create_company()
+		self.create_usd_receivable_account()
+		self.create_item()
+		self.create_customer()
+		self.clear_old_entries()
+		self.set_system_and_company_settings()
+
+	def tearDown(self):
+		frappe.db.rollback()
+
+	def set_system_and_company_settings(self):
+		# set number and currency precision
+		system_settings = frappe.get_doc("System Settings")
+		system_settings.float_precision = 2
+		system_settings.currency_precision = 2
+		system_settings.save()
+
+		# Using Exchange Gain/Loss account for unrealized as well.
+		company_doc = frappe.get_doc("Company", self.company)
+		company_doc.unrealized_exchange_gain_loss_account = company_doc.exchange_gain_loss_account
+		company_doc.save()
+
+	@change_settings(
+		"Accounts Settings",
+		{"allow_multi_currency_invoices_against_single_party_account": 1, "allow_stale": 0},
+	)
+	def test_01_revaluation_of_forex_balance(self):
+		"""
+		Test Forex account balance and Journal creation post Revaluation
+		"""
+		si = create_sales_invoice(
+			item=self.item,
+			company=self.company,
+			customer=self.customer,
+			debit_to=self.debtors_usd,
+			posting_date=today(),
+			parent_cost_center=self.cost_center,
+			cost_center=self.cost_center,
+			rate=100,
+			price_list_rate=100,
+			do_not_submit=1,
+		)
+		si.currency = "USD"
+		si.conversion_rate = 80
+		si.save().submit()
+
+		err = frappe.new_doc("Exchange Rate Revaluation")
+		err.company = self.company
+		err.posting_date = today()
+		accounts = err.get_accounts_data()
+		err.extend("accounts", accounts)
+		row = err.accounts[0]
+		row.new_exchange_rate = 85
+		row.new_balance_in_base_currency = flt(
+			row.new_exchange_rate * flt(row.balance_in_account_currency)
+		)
+		row.gain_loss = row.new_balance_in_base_currency - flt(row.balance_in_base_currency)
+		err.set_total_gain_loss()
+		err = err.save().submit()
+
+		# Create JV for ERR
+		err_journals = err.make_jv_entries()
+		je = frappe.get_doc("Journal Entry", err_journals.get("revaluation_jv"))
+		je = je.submit()
+
+		je.reload()
+		self.assertEqual(je.voucher_type, "Exchange Rate Revaluation")
+		self.assertEqual(je.total_debit, 8500.0)
+		self.assertEqual(je.total_credit, 8500.0)
+
+		acc_balance = frappe.db.get_all(
+			"GL Entry",
+			filters={"account": self.debtors_usd, "is_cancelled": 0},
+			fields=["sum(debit)-sum(credit) as balance"],
+		)[0]
+		self.assertEqual(acc_balance.balance, 8500.0)
+
+	@change_settings(
+		"Accounts Settings",
+		{"allow_multi_currency_invoices_against_single_party_account": 1, "allow_stale": 0},
+	)
+	def test_02_accounts_only_with_base_currency_balance(self):
+		"""
+		Test Revaluation on Forex account with balance only in base currency
+		"""
+		si = create_sales_invoice(
+			item=self.item,
+			company=self.company,
+			customer=self.customer,
+			debit_to=self.debtors_usd,
+			posting_date=today(),
+			parent_cost_center=self.cost_center,
+			cost_center=self.cost_center,
+			rate=100,
+			price_list_rate=100,
+			do_not_submit=1,
+		)
+		si.currency = "USD"
+		si.conversion_rate = 80
+		si.save().submit()
+
+		pe = get_payment_entry(si.doctype, si.name)
+		pe.source_exchange_rate = 85
+		pe.received_amount = 8500
+		pe.save().submit()
+
+		# Cancel the auto created gain/loss JE to simulate balance only in base currency
+		je = frappe.db.get_all(
+			"Journal Entry Account", filters={"reference_name": si.name}, pluck="parent"
+		)[0]
+		frappe.get_doc("Journal Entry", je).cancel()
+
+		err = frappe.new_doc("Exchange Rate Revaluation")
+		err.company = self.company
+		err.posting_date = today()
+		err.fetch_and_calculate_accounts_data()
+		err = err.save().submit()
+
+		# Create JV for ERR
+		self.assertTrue(err.check_journal_entry_condition())
+		err_journals = err.make_jv_entries()
+		je = frappe.get_doc("Journal Entry", err_journals.get("zero_balance_jv"))
+		je = je.submit()
+
+		je.reload()
+		self.assertEqual(je.voucher_type, "Exchange Gain Or Loss")
+		self.assertEqual(len(je.accounts), 2)
+		# Only base currency fields will be posted to
+		for acc in je.accounts:
+			self.assertEqual(acc.debit_in_account_currency, 0)
+			self.assertEqual(acc.credit_in_account_currency, 0)
+
+		self.assertEqual(je.total_debit, 500.0)
+		self.assertEqual(je.total_credit, 500.0)
+
+		acc_balance = frappe.db.get_all(
+			"GL Entry",
+			filters={"account": self.debtors_usd, "is_cancelled": 0},
+			fields=[
+				"sum(debit)-sum(credit) as balance",
+				"sum(debit_in_account_currency)-sum(credit_in_account_currency) as balance_in_account_currency",
+			],
+		)[0]
+		# account shouldn't have balance in base and account currency
+		self.assertEqual(acc_balance.balance, 0.0)
+		self.assertEqual(acc_balance.balance_in_account_currency, 0.0)
+
+	@change_settings(
+		"Accounts Settings",
+		{"allow_multi_currency_invoices_against_single_party_account": 1, "allow_stale": 0},
+	)
+	def test_03_accounts_only_with_account_currency_balance(self):
+		"""
+		Test Revaluation on Forex account with balance only in account currency
+		"""
+		precision = frappe.db.get_single_value("System Settings", "currency_precision")
+
+		# posting on previous date to make sure that ERR picks up the Payment entry's exchange
+		# rate while calculating gain/loss for account currency balance
+		si = create_sales_invoice(
+			item=self.item,
+			company=self.company,
+			customer=self.customer,
+			debit_to=self.debtors_usd,
+			posting_date=add_days(today(), -1),
+			parent_cost_center=self.cost_center,
+			cost_center=self.cost_center,
+			rate=100,
+			price_list_rate=100,
+			do_not_submit=1,
+		)
+		si.currency = "USD"
+		si.conversion_rate = 80
+		si.save().submit()
+
+		pe = get_payment_entry(si.doctype, si.name)
+		pe.paid_amount = 95
+		pe.source_exchange_rate = 84.211
+		pe.received_amount = 8000
+		pe.references = []
+		pe.save().submit()
+
+		acc_balance = frappe.db.get_all(
+			"GL Entry",
+			filters={"account": self.debtors_usd, "is_cancelled": 0},
+			fields=[
+				"sum(debit)-sum(credit) as balance",
+				"sum(debit_in_account_currency)-sum(credit_in_account_currency) as balance_in_account_currency",
+			],
+		)[0]
+		# account should have balance only in account currency
+		self.assertEqual(flt(acc_balance.balance, precision), 0.0)
+		self.assertEqual(flt(acc_balance.balance_in_account_currency, precision), 5.0)  # in USD
+
+		err = frappe.new_doc("Exchange Rate Revaluation")
+		err.company = self.company
+		err.posting_date = today()
+		err.fetch_and_calculate_accounts_data()
+		err.set_total_gain_loss()
+		err = err.save().submit()
+
+		# Create JV for ERR
+		self.assertTrue(err.check_journal_entry_condition())
+		err_journals = err.make_jv_entries()
+		je = frappe.get_doc("Journal Entry", err_journals.get("zero_balance_jv"))
+		je = je.submit()
+
+		je.reload()
+		self.assertEqual(je.voucher_type, "Exchange Gain Or Loss")
+		self.assertEqual(len(je.accounts), 2)
+		# Only account currency fields will be posted to
+		for acc in je.accounts:
+			self.assertEqual(flt(acc.debit, precision), 0.0)
+			self.assertEqual(flt(acc.credit, precision), 0.0)
+
+		row = [x for x in je.accounts if x.account == self.debtors_usd][0]
+		self.assertEqual(flt(row.credit_in_account_currency, precision), 5.0)  # in USD
+		row = [x for x in je.accounts if x.account != self.debtors_usd][0]
+		self.assertEqual(flt(row.debit_in_account_currency, precision), 421.06)  # in INR
+
+		# total_debit and total_credit will be 0.0, as JV is posting only to account currency fields
+		self.assertEqual(flt(je.total_debit, precision), 0.0)
+		self.assertEqual(flt(je.total_credit, precision), 0.0)
+
+		acc_balance = frappe.db.get_all(
+			"GL Entry",
+			filters={"account": self.debtors_usd, "is_cancelled": 0},
+			fields=[
+				"sum(debit)-sum(credit) as balance",
+				"sum(debit_in_account_currency)-sum(credit_in_account_currency) as balance_in_account_currency",
+			],
+		)[0]
+		# account shouldn't have balance in base and account currency post revaluation
+		self.assertEqual(flt(acc_balance.balance, precision), 0.0)
+		self.assertEqual(flt(acc_balance.balance_in_account_currency, precision), 0.0)
+
+	@change_settings(
+		"Accounts Settings",
+		{"allow_multi_currency_invoices_against_single_party_account": 1, "allow_stale": 0},
+	)
+	def test_04_get_account_details_function(self):
+		si = create_sales_invoice(
+			item=self.item,
+			company=self.company,
+			customer=self.customer,
+			debit_to=self.debtors_usd,
+			posting_date=today(),
+			parent_cost_center=self.cost_center,
+			cost_center=self.cost_center,
+			rate=100,
+			price_list_rate=100,
+			do_not_submit=1,
+		)
+		si.currency = "USD"
+		si.conversion_rate = 80
+		si.save().submit()
+
+		from erpnext.accounts.doctype.exchange_rate_revaluation.exchange_rate_revaluation import (
+			get_account_details,
+		)
+
+		account_details = get_account_details(
+			self.company, si.posting_date, self.debtors_usd, "Customer", self.customer, 0.05
+		)
+		# not checking for new exchange rate and balances as it is dependent on live exchange rates
+		expected_data = {
+			"account_currency": "USD",
+			"balance_in_base_currency": 8000.0,
+			"balance_in_account_currency": 100.0,
+			"current_exchange_rate": 80.0,
+			"zero_balance": False,
+			"new_balance_in_account_currency": 100.0,
+		}
+
+		for key, val in expected_data.items():
+			self.assertEqual(expected_data.get(key), account_details.get(key))
diff --git a/erpnext/accounts/doctype/journal_entry/journal_entry.js b/erpnext/accounts/doctype/journal_entry/journal_entry.js
index 35a3788..22b6880 100644
--- a/erpnext/accounts/doctype/journal_entry/journal_entry.js
+++ b/erpnext/accounts/doctype/journal_entry/journal_entry.js
@@ -50,8 +50,18 @@
 					frm.trigger("make_inter_company_journal_entry");
 				}, __('Make'));
 		}
-	},
 
+		erpnext.accounts.unreconcile_payments.add_unreconcile_btn(frm);
+	},
+	before_save: function(frm) {
+		if ((frm.doc.docstatus == 0) && (!frm.doc.is_system_generated)) {
+			let payment_entry_references = frm.doc.accounts.filter(elem => (elem.reference_type == "Payment Entry"));
+			if (payment_entry_references.length > 0) {
+				let rows = payment_entry_references.map(x => "#"+x.idx);
+				frappe.throw(__("Rows: {0} have 'Payment Entry' as reference_type. This should not be set manually.", [frappe.utils.comma_and(rows)]));
+			}
+		}
+	},
 	make_inter_company_journal_entry: function(frm) {
 		var d = new frappe.ui.Dialog({
 			title: __("Select Company"),
diff --git a/erpnext/accounts/doctype/ledger_merge/ledger_merge.py b/erpnext/accounts/doctype/ledger_merge/ledger_merge.py
index 381083b..362d273 100644
--- a/erpnext/accounts/doctype/ledger_merge/ledger_merge.py
+++ b/erpnext/accounts/doctype/ledger_merge/ledger_merge.py
@@ -48,9 +48,6 @@
 				merge_account(
 					row.account,
 					ledger_merge.account,
-					ledger_merge.is_group,
-					ledger_merge.root_type,
-					ledger_merge.company,
 				)
 				row.db_set("merged", 1)
 				frappe.db.commit()
diff --git a/erpnext/accounts/doctype/opening_invoice_creation_tool/test_opening_invoice_creation_tool.py b/erpnext/accounts/doctype/opening_invoice_creation_tool/test_opening_invoice_creation_tool.py
index 1e22c64..02c2c67 100644
--- a/erpnext/accounts/doctype/opening_invoice_creation_tool/test_opening_invoice_creation_tool.py
+++ b/erpnext/accounts/doctype/opening_invoice_creation_tool/test_opening_invoice_creation_tool.py
@@ -218,6 +218,7 @@
 			"territory": "All Territories",
 		}
 	)
+
 	if not frappe.db.exists("Customer", customer_name):
 		customer.insert(ignore_permissions=True)
 		return customer.name
diff --git a/erpnext/accounts/doctype/payment_entry/payment_entry.js b/erpnext/accounts/doctype/payment_entry/payment_entry.js
index f131be2..0203c45 100644
--- a/erpnext/accounts/doctype/payment_entry/payment_entry.js
+++ b/erpnext/accounts/doctype/payment_entry/payment_entry.js
@@ -9,7 +9,7 @@
 
 frappe.ui.form.on('Payment Entry', {
 	onload: function(frm) {
-		frm.ignore_doctypes_on_cancel_all = ['Sales Invoice', 'Purchase Invoice', 'Journal Entry', 'Repost Payment Ledger','Repost Accounting Ledger'];
+		frm.ignore_doctypes_on_cancel_all = ['Sales Invoice', 'Purchase Invoice', 'Journal Entry', 'Repost Payment Ledger','Repost Accounting Ledger', 'Unreconcile Payments', 'Unreconcile Payment Entries'];
 
 		if(frm.doc.__islocal) {
 			if (!frm.doc.paid_from) frm.set_value("paid_from_account_currency", null);
@@ -154,6 +154,13 @@
 		frm.events.set_dynamic_labels(frm);
 		frm.events.show_general_ledger(frm);
 		erpnext.accounts.ledger_preview.show_accounting_ledger_preview(frm);
+		if(frm.doc.references.find((elem) => {return elem.exchange_gain_loss != 0})) {
+			frm.add_custom_button(__("View Exchange Gain/Loss Journals"), function() {
+				frappe.set_route("List", "Journal Entry", {"voucher_type": "Exchange Gain Or Loss", "reference_name": frm.doc.name});
+			}, __('Actions'));
+
+		}
+		erpnext.accounts.unreconcile_payments.add_unreconcile_btn(frm);
 	},
 
 	validate_company: (frm) => {
@@ -535,15 +542,21 @@
 	},
 
 	source_exchange_rate: function(frm) {
+		let company_currency = frappe.get_doc(":Company", frm.doc.company).default_currency;
 		if (frm.doc.paid_amount) {
 			frm.set_value("base_paid_amount", flt(frm.doc.paid_amount) * flt(frm.doc.source_exchange_rate));
 			// target exchange rate should always be same as source if both account currencies is same
 			if(frm.doc.paid_from_account_currency == frm.doc.paid_to_account_currency) {
 				frm.set_value("target_exchange_rate", frm.doc.source_exchange_rate);
 				frm.set_value("base_received_amount", frm.doc.base_paid_amount);
+			} else if (company_currency == frm.doc.paid_to_account_currency) {
+				frm.set_value("received_amount", frm.doc.base_paid_amount);
+				frm.set_value("base_received_amount", frm.doc.base_paid_amount);
 			}
 
-			frm.events.set_unallocated_amount(frm);
+			// set_unallocated_amount is called by below method,
+			// no need trigger separately
+			frm.events.set_total_allocated_amount(frm);
 		}
 
 		// Make read only if Accounts Settings doesn't allow stale rates
@@ -552,6 +565,7 @@
 
 	target_exchange_rate: function(frm) {
 		frm.set_paid_amount_based_on_received_amount = true;
+		let company_currency = frappe.get_doc(":Company", frm.doc.company).default_currency;
 
 		if (frm.doc.received_amount) {
 			frm.set_value("base_received_amount",
@@ -561,9 +575,14 @@
 					(frm.doc.paid_from_account_currency == frm.doc.paid_to_account_currency)) {
 				frm.set_value("source_exchange_rate", frm.doc.target_exchange_rate);
 				frm.set_value("base_paid_amount", frm.doc.base_received_amount);
+			} else if (company_currency == frm.doc.paid_from_account_currency) {
+				frm.set_value("paid_amount", frm.doc.base_received_amount);
+				frm.set_value("base_paid_amount", frm.doc.base_received_amount);
 			}
 
-			frm.events.set_unallocated_amount(frm);
+			// set_unallocated_amount is called by below method,
+			// no need trigger separately
+			frm.events.set_total_allocated_amount(frm);
 		}
 		frm.set_paid_amount_based_on_received_amount = false;
 
@@ -879,12 +898,18 @@
 	},
 
 	set_total_allocated_amount: function(frm) {
+		let exchange_rate = 1;
+		if (frm.doc.payment_type == "Receive") {
+			exchange_rate = frm.doc.source_exchange_rate;
+		} else if (frm.doc.payment_type == "Pay") {
+			exchange_rate = frm.doc.target_exchange_rate;
+		}
 		var total_allocated_amount = 0.0;
 		var base_total_allocated_amount = 0.0;
 		$.each(frm.doc.references || [], function(i, row) {
 			if (row.allocated_amount) {
 				total_allocated_amount += flt(row.allocated_amount);
-				base_total_allocated_amount += flt(flt(row.allocated_amount)*flt(row.exchange_rate),
+				base_total_allocated_amount += flt(flt(row.allocated_amount)*flt(exchange_rate),
 					precision("base_paid_amount"));
 			}
 		});
diff --git a/erpnext/accounts/doctype/payment_entry/payment_entry.py b/erpnext/accounts/doctype/payment_entry/payment_entry.py
index ac31e8a..e6403fd 100644
--- a/erpnext/accounts/doctype/payment_entry/payment_entry.py
+++ b/erpnext/accounts/doctype/payment_entry/payment_entry.py
@@ -98,7 +98,6 @@
 		if self.difference_amount:
 			frappe.throw(_("Difference Amount must be zero"))
 		self.make_gl_entries()
-		self.make_advance_gl_entries()
 		self.update_outstanding_amounts()
 		self.update_advance_paid()
 		self.update_payment_schedule()
@@ -149,10 +148,11 @@
 			"Repost Payment Ledger Items",
 			"Repost Accounting Ledger",
 			"Repost Accounting Ledger Items",
+			"Unreconcile Payments",
+			"Unreconcile Payment Entries",
 		)
 		super(PaymentEntry, self).on_cancel()
 		self.make_gl_entries(cancel=1)
-		self.make_advance_gl_entries(cancel=1)
 		self.update_outstanding_amounts()
 		self.update_advance_paid()
 		self.delink_advance_entry_references()
@@ -271,16 +271,18 @@
 
 				# if no payment template is used by invoice and has a custom term(no `payment_term`), then invoice outstanding will be in 'None' key
 				latest = latest.get(d.payment_term) or latest.get(None)
-
 				# The reference has already been fully paid
 				if not latest:
 					frappe.throw(
 						_("{0} {1} has already been fully paid.").format(_(d.reference_doctype), d.reference_name)
 					)
 				# The reference has already been partly paid
-				elif latest.outstanding_amount < latest.invoice_amount and flt(
-					d.outstanding_amount, d.precision("outstanding_amount")
-				) != flt(latest.outstanding_amount, d.precision("outstanding_amount")):
+				elif (
+					latest.outstanding_amount < latest.invoice_amount
+					and flt(d.outstanding_amount, d.precision("outstanding_amount"))
+					!= flt(latest.outstanding_amount, d.precision("outstanding_amount"))
+					and d.payment_term == ""
+				):
 					frappe.throw(
 						_(
 							"{0} {1} has already been partly paid. Please use the 'Get Outstanding Invoice' or the 'Get Outstanding Orders' button to get the latest outstanding amounts."
@@ -856,6 +858,11 @@
 				flt(d.allocated_amount) * flt(exchange_rate), self.precision("base_paid_amount")
 			)
 
+			# on rare case, when `exchange_rate` is unset, gain/loss amount is incorrectly calculated
+			# for base currency transactions
+			if d.exchange_rate is None:
+				d.exchange_rate = 1
+
 			allocated_amount_in_pe_exchange_rate = flt(
 				flt(d.allocated_amount) * flt(d.exchange_rate), self.precision("base_paid_amount")
 			)
@@ -999,14 +1006,14 @@
 		if self.payment_type == "Internal Transfer":
 			remarks = [
 				_("Amount {0} {1} transferred from {2} to {3}").format(
-					self.paid_from_account_currency, self.paid_amount, self.paid_from, self.paid_to
+					_(self.paid_from_account_currency), self.paid_amount, self.paid_from, self.paid_to
 				)
 			]
 		else:
 
 			remarks = [
 				_("Amount {0} {1} {2} {3}").format(
-					self.party_account_currency,
+					_(self.party_account_currency),
 					self.paid_amount if self.payment_type == "Receive" else self.received_amount,
 					_("received from") if self.payment_type == "Receive" else _("to"),
 					self.party,
@@ -1023,14 +1030,14 @@
 				if d.allocated_amount:
 					remarks.append(
 						_("Amount {0} {1} against {2} {3}").format(
-							self.party_account_currency, d.allocated_amount, d.reference_doctype, d.reference_name
+							_(self.party_account_currency), d.allocated_amount, d.reference_doctype, d.reference_name
 						)
 					)
 
 		for d in self.get("deductions"):
 			if d.amount:
 				remarks.append(
-					_("Amount {0} {1} deducted against {2}").format(self.company_currency, d.amount, d.account)
+					_("Amount {0} {1} deducted against {2}").format(_(self.company_currency), d.amount, d.account)
 				)
 
 		self.set("remarks", "\n".join(remarks))
@@ -1055,6 +1062,8 @@
 		else:
 			self.make_exchange_gain_loss_journal()
 
+		self.make_advance_gl_entries(cancel=cancel)
+
 	def add_party_gl_entries(self, gl_entries):
 		if self.party_account:
 			if self.payment_type == "Receive":
@@ -1123,7 +1132,7 @@
 		if self.book_advance_payments_in_separate_party_account:
 			gl_entries = []
 			for d in self.get("references"):
-				if d.reference_doctype in ("Sales Invoice", "Purchase Invoice"):
+				if d.reference_doctype in ("Sales Invoice", "Purchase Invoice", "Journal Entry"):
 					if not (against_voucher_type and against_voucher) or (
 						d.reference_doctype == against_voucher_type and d.reference_name == against_voucher
 					):
@@ -1145,8 +1154,25 @@
 					)
 
 				make_reverse_gl_entries(gl_entries=gl_entries, partial_cancel=True)
-			else:
-				make_gl_entries(gl_entries)
+				return
+
+			# same reference added to payment entry
+			for gl_entry in gl_entries.copy():
+				if frappe.db.exists(
+					"GL Entry",
+					{
+						"account": gl_entry.account,
+						"voucher_type": gl_entry.voucher_type,
+						"voucher_no": gl_entry.voucher_no,
+						"voucher_detail_no": gl_entry.voucher_detail_no,
+						"debit": gl_entry.debit,
+						"credit": gl_entry.credit,
+						"is_cancelled": 0,
+					},
+				):
+					gl_entries.remove(gl_entry)
+
+			make_gl_entries(gl_entries)
 
 	def make_invoice_liability_entry(self, gl_entries, invoice):
 		args_dict = {
@@ -1159,6 +1185,13 @@
 			"voucher_detail_no": invoice.name,
 		}
 
+		posting_date = frappe.db.get_value(
+			invoice.reference_doctype, invoice.reference_name, "posting_date"
+		)
+
+		if getdate(posting_date) < getdate(self.posting_date):
+			posting_date = self.posting_date
+
 		dr_or_cr = "credit" if invoice.reference_doctype == "Sales Invoice" else "debit"
 		args_dict["account"] = invoice.account
 		args_dict[dr_or_cr] = invoice.allocated_amount
@@ -1167,6 +1200,7 @@
 			{
 				"against_voucher_type": invoice.reference_doctype,
 				"against_voucher": invoice.reference_name,
+				"posting_date": posting_date,
 			}
 		)
 		gle = self.get_gl_dict(
@@ -1573,6 +1607,14 @@
 				fieldname, args.get(date_fields[0]), args.get(date_fields[1])
 			)
 			posting_and_due_date.append(ple[fieldname][args.get(date_fields[0]) : args.get(date_fields[1])])
+		elif args.get(date_fields[0]):
+			# if only from date is supplied
+			condition += " and {0} >= '{1}'".format(fieldname, args.get(date_fields[0]))
+			posting_and_due_date.append(ple[fieldname].gte(args.get(date_fields[0])))
+		elif args.get(date_fields[1]):
+			# if only to date is supplied
+			condition += " and {0} <= '{1}'".format(fieldname, args.get(date_fields[1]))
+			posting_and_due_date.append(ple[fieldname].lte(args.get(date_fields[1])))
 
 	if args.get("company"):
 		condition += " and company = {0}".format(frappe.db.escape(args.get("company")))
@@ -1711,11 +1753,10 @@
 										"voucher_type": d.voucher_type,
 										"posting_date": d.posting_date,
 										"invoice_amount": flt(d.invoice_amount),
-										"outstanding_amount": flt(d.outstanding_amount),
-										"payment_term_outstanding": payment_term_outstanding,
-										"allocated_amount": payment_term_outstanding
+										"outstanding_amount": payment_term_outstanding
 										if payment_term_outstanding
 										else d.outstanding_amount,
+										"payment_term_outstanding": payment_term_outstanding,
 										"payment_amount": payment_term.payment_amount,
 										"payment_term": payment_term.payment_term,
 										"account": d.account,
@@ -1993,10 +2034,15 @@
 		if not total_amount:
 			if party_account_currency == company_currency:
 				# for handling cases that don't have multi-currency (base field)
-				total_amount = ref_doc.get("base_grand_total") or ref_doc.get("grand_total")
+				total_amount = (
+					ref_doc.get("base_rounded_total")
+					or ref_doc.get("rounded_total")
+					or ref_doc.get("base_grand_total")
+					or ref_doc.get("grand_total")
+				)
 				exchange_rate = 1
 			else:
-				total_amount = ref_doc.get("grand_total")
+				total_amount = ref_doc.get("rounded_total") or ref_doc.get("grand_total")
 		if not exchange_rate:
 			# Get the exchange rate from the original ref doc
 			# or get it based on the posting date of the ref doc.
@@ -2295,7 +2341,7 @@
 			if bank_amount:
 				received_amount = bank_amount
 			else:
-				if company_currency != bank.account_currency:
+				if bank and company_currency != bank.account_currency:
 					received_amount = paid_amount / doc.get("conversion_rate", 1)
 				else:
 					received_amount = paid_amount * doc.get("conversion_rate", 1)
@@ -2304,7 +2350,7 @@
 			if bank_amount:
 				paid_amount = bank_amount
 			else:
-				if company_currency != bank.account_currency:
+				if bank and company_currency != bank.account_currency:
 					paid_amount = received_amount / doc.get("conversion_rate", 1)
 				else:
 					# if party account currency and bank currency is different then populate paid amount as well
diff --git a/erpnext/accounts/doctype/payment_entry/test_payment_entry.py b/erpnext/accounts/doctype/payment_entry/test_payment_entry.py
index c8bf664..edfec41 100644
--- a/erpnext/accounts/doctype/payment_entry/test_payment_entry.py
+++ b/erpnext/accounts/doctype/payment_entry/test_payment_entry.py
@@ -1244,6 +1244,24 @@
 		template.allocate_payment_based_on_payment_terms = 1
 		template.save()
 
+	def test_allocation_validation_for_sales_order(self):
+		so = make_sales_order(do_not_save=True)
+		so.items[0].rate = 99.55
+		so.save().submit()
+		self.assertGreater(so.rounded_total, 0.0)
+		pe = get_payment_entry("Sales Order", so.name, bank_account="_Test Cash - _TC")
+		pe.paid_from = "Debtors - _TC"
+		pe.paid_amount = 45.55
+		pe.references[0].allocated_amount = 45.55
+		pe.save().submit()
+		pe = get_payment_entry("Sales Order", so.name, bank_account="_Test Cash - _TC")
+		pe.paid_from = "Debtors - _TC"
+		# No validation error should be thrown here.
+		pe.save().submit()
+
+		so.reload()
+		self.assertEqual(so.advance_paid, so.rounded_total)
+
 
 def create_payment_entry(**args):
 	payment_entry = frappe.new_doc("Payment Entry")
diff --git a/erpnext/accounts/doctype/payment_reconciliation/payment_reconciliation.js b/erpnext/accounts/doctype/payment_reconciliation/payment_reconciliation.js
index 7b7ce7a..d9f00be 100644
--- a/erpnext/accounts/doctype/payment_reconciliation/payment_reconciliation.js
+++ b/erpnext/accounts/doctype/payment_reconciliation/payment_reconciliation.js
@@ -24,7 +24,8 @@
 				filters: {
 					"company": this.frm.doc.company,
 					"is_group": 0,
-					"account_type": frappe.boot.party_account_types[this.frm.doc.party_type]
+					"account_type": frappe.boot.party_account_types[this.frm.doc.party_type],
+					"root_type": this.frm.doc.party_type == 'Customer' ? "Asset" : "Liability"
 				}
 			};
 		});
diff --git a/erpnext/accounts/doctype/payment_reconciliation/payment_reconciliation.py b/erpnext/accounts/doctype/payment_reconciliation/payment_reconciliation.py
index 7ef5278..3285a52 100644
--- a/erpnext/accounts/doctype/payment_reconciliation/payment_reconciliation.py
+++ b/erpnext/accounts/doctype/payment_reconciliation/payment_reconciliation.py
@@ -19,7 +19,7 @@
 	get_outstanding_invoices,
 	reconcile_against_document,
 )
-from erpnext.controllers.accounts_controller import get_advance_payment_entries
+from erpnext.controllers.accounts_controller import get_advance_payment_entries_for_regional
 
 
 class PaymentReconciliation(Document):
@@ -78,7 +78,7 @@
 		if self.payment_name:
 			condition.update({"name": self.payment_name})
 
-		payment_entries = get_advance_payment_entries(
+		payment_entries = get_advance_payment_entries_for_regional(
 			self.party_type,
 			self.party,
 			party_account,
@@ -116,7 +116,7 @@
 				"Journal Entry" as reference_type, t1.name as reference_name,
 				t1.posting_date, t1.remark as remarks, t2.name as reference_row,
 				{dr_or_cr} as amount, t2.is_advance, t2.exchange_rate,
-				t2.account_currency as currency
+				t2.account_currency as currency, t2.cost_center as cost_center
 			from
 				`tabJournal Entry` t1, `tabJournal Entry Account` t2
 			where
@@ -209,6 +209,7 @@
 								"amount": -(inv.outstanding_in_account_currency),
 								"posting_date": inv.posting_date,
 								"currency": inv.currency,
+								"cost_center": inv.cost_center,
 							}
 						)
 					)
@@ -357,10 +358,12 @@
 				"allocated_amount": allocated_amount,
 				"difference_amount": pay.get("difference_amount"),
 				"currency": inv.get("currency"),
+				"cost_center": pay.get("cost_center"),
 			}
 		)
 
 	def reconcile_allocations(self, skip_ref_details_update_for_pe=False):
+		adjust_allocations_for_taxes(self)
 		dr_or_cr = (
 			"credit_in_account_currency"
 			if erpnext.get_party_account_type(self.party_type) == "Receivable"
@@ -431,6 +434,7 @@
 				"allocated_amount": flt(row.get("allocated_amount")),
 				"difference_amount": flt(row.get("difference_amount")),
 				"difference_account": row.get("difference_account"),
+				"cost_center": row.get("cost_center"),
 			}
 		)
 
@@ -603,7 +607,7 @@
 						inv.dr_or_cr: abs(inv.allocated_amount),
 						"reference_type": inv.against_voucher_type,
 						"reference_name": inv.against_voucher,
-						"cost_center": erpnext.get_default_cost_center(company),
+						"cost_center": inv.cost_center or erpnext.get_default_cost_center(company),
 						"exchange_rate": inv.exchange_rate,
 						"user_remark": f"{fmt_money(flt(inv.allocated_amount), currency=company_currency)} against {inv.against_voucher}",
 					},
@@ -618,7 +622,7 @@
 						),
 						"reference_type": inv.voucher_type,
 						"reference_name": inv.voucher_no,
-						"cost_center": erpnext.get_default_cost_center(company),
+						"cost_center": inv.cost_center or erpnext.get_default_cost_center(company),
 						"exchange_rate": inv.exchange_rate,
 						"user_remark": f"{fmt_money(flt(inv.allocated_amount), currency=company_currency)} from {inv.voucher_no}",
 					},
@@ -644,6 +648,7 @@
 
 			create_gain_loss_journal(
 				company,
+				today(),
 				inv.party_type,
 				inv.party,
 				inv.account,
@@ -657,4 +662,10 @@
 				inv.against_voucher_type,
 				inv.against_voucher,
 				None,
+				inv.cost_center,
 			)
+
+
+@erpnext.allow_regional
+def adjust_allocations_for_taxes(doc):
+	pass
diff --git a/erpnext/accounts/doctype/payment_reconciliation_allocation/payment_reconciliation_allocation.json b/erpnext/accounts/doctype/payment_reconciliation_allocation/payment_reconciliation_allocation.json
index 0f7e47a..ec718aa 100644
--- a/erpnext/accounts/doctype/payment_reconciliation_allocation/payment_reconciliation_allocation.json
+++ b/erpnext/accounts/doctype/payment_reconciliation_allocation/payment_reconciliation_allocation.json
@@ -22,7 +22,8 @@
   "column_break_7",
   "difference_account",
   "exchange_rate",
-  "currency"
+  "currency",
+  "cost_center"
  ],
  "fields": [
   {
@@ -144,11 +145,17 @@
    "fieldtype": "Float",
    "label": "Exchange Rate",
    "read_only": 1
+  },
+  {
+   "fieldname": "cost_center",
+   "fieldtype": "Link",
+   "label": "Cost Center",
+   "options": "Cost Center"
   }
  ],
  "istable": 1,
  "links": [],
- "modified": "2022-12-24 21:01:14.882747",
+ "modified": "2023-09-03 07:52:33.684217",
  "modified_by": "Administrator",
  "module": "Accounts",
  "name": "Payment Reconciliation Allocation",
diff --git a/erpnext/accounts/doctype/payment_reconciliation_payment/payment_reconciliation_payment.json b/erpnext/accounts/doctype/payment_reconciliation_payment/payment_reconciliation_payment.json
index d300ea9..17f3900 100644
--- a/erpnext/accounts/doctype/payment_reconciliation_payment/payment_reconciliation_payment.json
+++ b/erpnext/accounts/doctype/payment_reconciliation_payment/payment_reconciliation_payment.json
@@ -16,7 +16,8 @@
   "sec_break1",
   "remark",
   "currency",
-  "exchange_rate"
+  "exchange_rate",
+  "cost_center"
  ],
  "fields": [
   {
@@ -98,11 +99,17 @@
    "fieldtype": "Float",
    "hidden": 1,
    "label": "Exchange Rate"
+  },
+  {
+   "fieldname": "cost_center",
+   "fieldtype": "Link",
+   "label": "Cost Center",
+   "options": "Cost Center"
   }
  ],
  "istable": 1,
  "links": [],
- "modified": "2022-11-08 18:18:36.268760",
+ "modified": "2023-09-03 07:43:29.965353",
  "modified_by": "Administrator",
  "module": "Accounts",
  "name": "Payment Reconciliation Payment",
diff --git a/erpnext/accounts/doctype/payment_request/payment_request.json b/erpnext/accounts/doctype/payment_request/payment_request.json
index 381f3fb..66b5c4b 100644
--- a/erpnext/accounts/doctype/payment_request/payment_request.json
+++ b/erpnext/accounts/doctype/payment_request/payment_request.json
@@ -231,6 +231,28 @@
    "label": "SWIFT Number"
   },
   {
+   "collapsible": 1,
+   "fieldname": "accounting_dimensions_section",
+   "fieldtype": "Section Break",
+   "label": "Accounting Dimensions"
+  },
+  {
+   "fieldname": "cost_center",
+   "fieldtype": "Link",
+   "label": "Cost Center",
+   "options": "Cost Center"
+  },
+  {
+   "fieldname": "dimension_col_break",
+   "fieldtype": "Column Break"
+  },
+  {
+   "fieldname": "project",
+   "fieldtype": "Link",
+   "label": "Project",
+   "options": "Project"
+  },
+  {
    "depends_on": "eval: doc.payment_request_type == 'Inward'",
    "fieldname": "recipient_and_message",
    "fieldtype": "Section Break",
@@ -317,9 +339,10 @@
   },
   {
    "fieldname": "payment_url",
-   "fieldtype": "Small Text",
+   "fieldtype": "Data",
    "hidden": 1,
-   "label": "payment_url",
+   "length": 500,
+   "options": "URL",
    "read_only": 1
   },
   {
@@ -344,6 +367,14 @@
    "read_only": 1
   },
   {
+   "fetch_from": "payment_gateway_account.payment_channel",
+   "fieldname": "payment_channel",
+   "fieldtype": "Select",
+   "label": "Payment Channel",
+   "options": "\nEmail\nPhone",
+   "read_only": 1
+  },
+  {
    "fieldname": "payment_order",
    "fieldtype": "Link",
    "label": "Payment Order",
@@ -358,43 +389,13 @@
    "options": "Payment Request",
    "print_hide": 1,
    "read_only": 1
-  },
-  {
-   "fetch_from": "payment_gateway_account.payment_channel",
-   "fieldname": "payment_channel",
-   "fieldtype": "Select",
-   "label": "Payment Channel",
-   "options": "\nEmail\nPhone",
-   "read_only": 1
-  },
-  {
-   "collapsible": 1,
-   "fieldname": "accounting_dimensions_section",
-   "fieldtype": "Section Break",
-   "label": "Accounting Dimensions"
-  },
-  {
-   "fieldname": "cost_center",
-   "fieldtype": "Link",
-   "label": "Cost Center",
-   "options": "Cost Center"
-  },
-  {
-   "fieldname": "dimension_col_break",
-   "fieldtype": "Column Break"
-  },
-  {
-   "fieldname": "project",
-   "fieldtype": "Link",
-   "label": "Project",
-   "options": "Project"
   }
  ],
  "in_create": 1,
  "index_web_pages_for_search": 1,
  "is_submittable": 1,
  "links": [],
- "modified": "2022-12-21 16:56:40.115737",
+ "modified": "2023-09-27 09:51:42.277638",
  "modified_by": "Administrator",
  "module": "Accounts",
  "name": "Payment Request",
diff --git a/erpnext/accounts/doctype/payment_request/payment_request.py b/erpnext/accounts/doctype/payment_request/payment_request.py
index 11d6d5f..ce15bcf 100644
--- a/erpnext/accounts/doctype/payment_request/payment_request.py
+++ b/erpnext/accounts/doctype/payment_request/payment_request.py
@@ -20,7 +20,6 @@
 from erpnext.accounts.doctype.subscription_plan.subscription_plan import get_plan_rate
 from erpnext.accounts.party import get_party_account, get_party_bank_account
 from erpnext.accounts.utils import get_account_currency
-from erpnext.erpnext_integrations.stripe_integration import create_stripe_subscription
 from erpnext.utilities import payment_app_import_guard
 
 
@@ -249,7 +248,7 @@
 		if (
 			party_account_currency == ref_doc.company_currency and party_account_currency != self.currency
 		):
-			party_amount = ref_doc.base_grand_total
+			party_amount = ref_doc.get("base_rounded_total") or ref_doc.get("base_grand_total")
 		else:
 			party_amount = self.grand_total
 
@@ -393,6 +392,9 @@
 
 	def create_subscription(self, payment_provider, gateway_controller, data):
 		if payment_provider == "stripe":
+			with payment_app_import_guard():
+				from payments.payment_gateways.stripe_integration import create_stripe_subscription
+
 			return create_stripe_subscription(gateway_controller, data)
 
 
diff --git a/erpnext/accounts/doctype/period_closing_voucher/period_closing_voucher.json b/erpnext/accounts/doctype/period_closing_voucher/period_closing_voucher.json
index 54a76b3..624b5f8 100644
--- a/erpnext/accounts/doctype/period_closing_voucher/period_closing_voucher.json
+++ b/erpnext/accounts/doctype/period_closing_voucher/period_closing_voucher.json
@@ -8,6 +8,7 @@
   "transaction_date",
   "posting_date",
   "fiscal_year",
+  "year_start_date",
   "amended_from",
   "company",
   "column_break1",
@@ -100,16 +101,22 @@
    "fieldtype": "Text",
    "label": "Error Message",
    "read_only": 1
+  },
+  {
+   "fieldname": "year_start_date",
+   "fieldtype": "Date",
+   "label": "Year Start Date"
   }
  ],
  "icon": "fa fa-file-text",
  "idx": 1,
  "is_submittable": 1,
  "links": [],
- "modified": "2022-07-20 14:51:04.714154",
+ "modified": "2023-09-11 20:19:11.810533",
  "modified_by": "Administrator",
  "module": "Accounts",
  "name": "Period Closing Voucher",
+ "naming_rule": "Expression (old style)",
  "owner": "Administrator",
  "permissions": [
   {
@@ -144,5 +151,6 @@
  "search_fields": "posting_date, fiscal_year",
  "sort_field": "modified",
  "sort_order": "DESC",
+ "states": [],
  "title_field": "closing_account_head"
 }
\ No newline at end of file
diff --git a/erpnext/accounts/doctype/period_closing_voucher/period_closing_voucher.py b/erpnext/accounts/doctype/period_closing_voucher/period_closing_voucher.py
index 4947248..674db6c 100644
--- a/erpnext/accounts/doctype/period_closing_voucher/period_closing_voucher.py
+++ b/erpnext/accounts/doctype/period_closing_voucher/period_closing_voucher.py
@@ -33,7 +33,7 @@
 	def on_cancel(self):
 		self.validate_future_closing_vouchers()
 		self.db_set("gle_processing_status", "In Progress")
-		self.ignore_linked_doctypes = ("GL Entry", "Stock Ledger Entry")
+		self.ignore_linked_doctypes = ("GL Entry", "Stock Ledger Entry", "Payment Ledger Entry")
 		gle_count = frappe.db.count(
 			"GL Entry",
 			{"voucher_type": "Period Closing Voucher", "voucher_no": self.name, "is_cancelled": 0},
@@ -95,15 +95,23 @@
 
 		self.check_if_previous_year_closed()
 
-		pce = frappe.db.sql(
-			"""select name from `tabPeriod Closing Voucher`
-			where posting_date > %s and fiscal_year = %s and docstatus = 1 and company = %s""",
-			(self.posting_date, self.fiscal_year, self.company),
+		pcv = frappe.qb.DocType("Period Closing Voucher")
+		existing_entry = (
+			frappe.qb.from_(pcv)
+			.select(pcv.name)
+			.where(
+				(pcv.posting_date >= self.posting_date)
+				& (pcv.fiscal_year == self.fiscal_year)
+				& (pcv.docstatus == 1)
+				& (pcv.company == self.company)
+			)
+			.run()
 		)
-		if pce and pce[0][0]:
+
+		if existing_entry and existing_entry[0][0]:
 			frappe.throw(
 				_("Another Period Closing Entry {0} has been made after {1}").format(
-					pce[0][0], self.posting_date
+					existing_entry[0][0], self.posting_date
 				)
 			)
 
@@ -126,22 +134,31 @@
 	def make_gl_entries(self, get_opening_entries=False):
 		gl_entries = self.get_gl_entries()
 		closing_entries = self.get_grouped_gl_entries(get_opening_entries=get_opening_entries)
-		if len(gl_entries) > 5000:
+		if len(gl_entries + closing_entries) > 3000:
 			frappe.enqueue(
 				process_gl_entries,
 				gl_entries=gl_entries,
+				voucher_name=self.name,
+				timeout=3000,
+			)
+
+			frappe.enqueue(
+				process_closing_entries,
+				gl_entries=gl_entries,
 				closing_entries=closing_entries,
 				voucher_name=self.name,
 				company=self.company,
 				closing_date=self.posting_date,
-				queue="long",
+				timeout=3000,
 			)
+
 			frappe.msgprint(
 				_("The GL Entries will be processed in the background, it can take a few minutes."),
 				alert=True,
 			)
 		else:
-			process_gl_entries(gl_entries, closing_entries, self.name, self.company, self.posting_date)
+			process_gl_entries(gl_entries, self.name)
+			process_closing_entries(gl_entries, closing_entries, self.name, self.company, self.posting_date)
 
 	def get_grouped_gl_entries(self, get_opening_entries=False):
 		closing_entries = []
@@ -322,17 +339,12 @@
 		return query.run(as_dict=1)
 
 
-def process_gl_entries(gl_entries, closing_entries, voucher_name, company, closing_date):
-	from erpnext.accounts.doctype.account_closing_balance.account_closing_balance import (
-		make_closing_entries,
-	)
+def process_gl_entries(gl_entries, voucher_name):
 	from erpnext.accounts.general_ledger import make_gl_entries
 
 	try:
 		if gl_entries:
 			make_gl_entries(gl_entries, merge_entries=False)
-
-		make_closing_entries(gl_entries + closing_entries, voucher_name, company, closing_date)
 		frappe.db.set_value("Period Closing Voucher", voucher_name, "gle_processing_status", "Completed")
 	except Exception as e:
 		frappe.db.rollback()
@@ -340,6 +352,19 @@
 		frappe.db.set_value("Period Closing Voucher", voucher_name, "gle_processing_status", "Failed")
 
 
+def process_closing_entries(gl_entries, closing_entries, voucher_name, company, closing_date):
+	from erpnext.accounts.doctype.account_closing_balance.account_closing_balance import (
+		make_closing_entries,
+	)
+
+	try:
+		if gl_entries + closing_entries:
+			make_closing_entries(gl_entries + closing_entries, voucher_name, company, closing_date)
+	except Exception as e:
+		frappe.db.rollback()
+		frappe.log_error(e)
+
+
 def make_reverse_gl_entries(voucher_type, voucher_no):
 	from erpnext.accounts.general_ledger import make_reverse_gl_entries
 
diff --git a/erpnext/accounts/doctype/period_closing_voucher/test_period_closing_voucher.py b/erpnext/accounts/doctype/period_closing_voucher/test_period_closing_voucher.py
index 5d08e8d..1bd565e 100644
--- a/erpnext/accounts/doctype/period_closing_voucher/test_period_closing_voucher.py
+++ b/erpnext/accounts/doctype/period_closing_voucher/test_period_closing_voucher.py
@@ -10,7 +10,7 @@
 from erpnext.accounts.doctype.finance_book.test_finance_book import create_finance_book
 from erpnext.accounts.doctype.journal_entry.test_journal_entry import make_journal_entry
 from erpnext.accounts.doctype.sales_invoice.test_sales_invoice import create_sales_invoice
-from erpnext.accounts.utils import get_fiscal_year, now
+from erpnext.accounts.utils import get_fiscal_year
 
 
 class TestPeriodClosingVoucher(unittest.TestCase):
diff --git a/erpnext/accounts/doctype/pos_closing_entry/test_pos_closing_entry.py b/erpnext/accounts/doctype/pos_closing_entry/test_pos_closing_entry.py
index 93ba90a..62b342a 100644
--- a/erpnext/accounts/doctype/pos_closing_entry/test_pos_closing_entry.py
+++ b/erpnext/accounts/doctype/pos_closing_entry/test_pos_closing_entry.py
@@ -5,6 +5,10 @@
 
 import frappe
 
+from erpnext.accounts.doctype.accounting_dimension.test_accounting_dimension import (
+	create_dimension,
+	disable_dimension,
+)
 from erpnext.accounts.doctype.pos_closing_entry.pos_closing_entry import (
 	make_closing_entry_from_opening,
 )
@@ -140,6 +144,43 @@
 		pos_inv1.load_from_db()
 		self.assertEqual(pos_inv1.status, "Paid")
 
+	def test_pos_closing_for_required_accounting_dimension_in_pos_profile(self):
+		"""
+		test case to check whether we can create POS Closing Entry without mandatory accounting dimension
+		"""
+
+		create_dimension()
+		pos_profile = make_pos_profile(do_not_insert=1, do_not_set_accounting_dimension=1)
+
+		self.assertRaises(frappe.ValidationError, pos_profile.insert)
+
+		pos_profile.location = "Block 1"
+		pos_profile.insert()
+		self.assertTrue(frappe.db.exists("POS Profile", pos_profile.name))
+
+		test_user = init_user_and_profile(do_not_create_pos_profile=1)
+
+		opening_entry = create_opening_entry(pos_profile, test_user.name)
+		pos_inv1 = create_pos_invoice(rate=350, do_not_submit=1, pos_profile=pos_profile.name)
+		pos_inv1.append("payments", {"mode_of_payment": "Cash", "account": "Cash - _TC", "amount": 3500})
+		pos_inv1.submit()
+
+		# if in between a mandatory accounting dimension is added to the POS Profile then
+		accounting_dimension_department = frappe.get_doc("Accounting Dimension", {"name": "Department"})
+		accounting_dimension_department.dimension_defaults[0].mandatory_for_bs = 1
+		accounting_dimension_department.save()
+
+		pcv_doc = make_closing_entry_from_opening(opening_entry)
+		# will assert coz the new mandatory accounting dimension bank is not set in POS Profile
+		self.assertRaises(frappe.ValidationError, pcv_doc.submit)
+
+		accounting_dimension_department = frappe.get_doc(
+			"Accounting Dimension Detail", {"parent": "Department"}
+		)
+		accounting_dimension_department.mandatory_for_bs = 0
+		accounting_dimension_department.save()
+		disable_dimension()
+
 
 def init_user_and_profile(**args):
 	user = "test@example.com"
@@ -149,6 +190,9 @@
 	test_user.add_roles(*roles)
 	frappe.set_user(user)
 
+	if args.get("do_not_create_pos_profile"):
+		return test_user
+
 	pos_profile = make_pos_profile(**args)
 	pos_profile.append("applicable_for_users", {"default": 1, "user": user})
 
diff --git a/erpnext/accounts/doctype/pos_invoice/pos_invoice.py b/erpnext/accounts/doctype/pos_invoice/pos_invoice.py
index 842f159..e36e97b 100644
--- a/erpnext/accounts/doctype/pos_invoice/pos_invoice.py
+++ b/erpnext/accounts/doctype/pos_invoice/pos_invoice.py
@@ -414,7 +414,7 @@
 				selling_price_list = (
 					customer_price_list or customer_group_price_list or profile.get("selling_price_list")
 				)
-				if customer_currency != profile.get("currency"):
+				if customer_currency and customer_currency != profile.get("currency"):
 					self.set("currency", customer_currency)
 
 			else:
diff --git a/erpnext/accounts/doctype/pos_invoice_merge_log/pos_invoice_merge_log.py b/erpnext/accounts/doctype/pos_invoice_merge_log/pos_invoice_merge_log.py
index b587ce6..d42b1e4 100644
--- a/erpnext/accounts/doctype/pos_invoice_merge_log/pos_invoice_merge_log.py
+++ b/erpnext/accounts/doctype/pos_invoice_merge_log/pos_invoice_merge_log.py
@@ -12,6 +12,8 @@
 from frappe.utils.background_jobs import enqueue, is_job_enqueued
 from frappe.utils.scheduler import is_scheduler_inactive
 
+from erpnext.accounts.doctype.pos_profile.pos_profile import required_accounting_dimensions
+
 
 class POSInvoiceMergeLog(Document):
 	def validate(self):
@@ -163,7 +165,8 @@
 				for i in items:
 					if (
 						i.item_code == item.item_code
-						and not i.serial_and_batch_bundle
+						and not i.serial_no
+						and not i.batch_no
 						and i.uom == item.uom
 						and i.net_rate == item.net_rate
 						and i.warehouse == item.warehouse
@@ -238,6 +241,22 @@
 		invoice.disable_rounded_total = cint(
 			frappe.db.get_value("POS Profile", invoice.pos_profile, "disable_rounded_total")
 		)
+		accounting_dimensions = required_accounting_dimensions()
+		dimension_values = frappe.db.get_value(
+			"POS Profile", {"name": invoice.pos_profile}, accounting_dimensions, as_dict=1
+		)
+		for dimension in accounting_dimensions:
+			dimension_value = dimension_values.get(dimension)
+
+			if not dimension_value:
+				frappe.throw(
+					_("Please set Accounting Dimension {} in {}").format(
+						frappe.bold(frappe.unscrub(dimension)),
+						frappe.get_desk_link("POS Profile", invoice.pos_profile),
+					)
+				)
+
+			invoice.set(dimension, dimension_value)
 
 		if self.merge_invoices_based_on == "Customer Group":
 			invoice.flags.ignore_pos_profile = True
@@ -424,11 +443,9 @@
 				)
 				merge_log.customer = customer
 				merge_log.pos_closing_entry = closing_entry.get("name") if closing_entry else None
-
 				merge_log.set("pos_invoices", _invoices)
 				merge_log.save(ignore_permissions=True)
 				merge_log.submit()
-
 		if closing_entry:
 			closing_entry.set_status(update=True, status="Submitted")
 			closing_entry.db_set("error_message", "")
diff --git a/erpnext/accounts/doctype/pos_profile/pos_profile.js b/erpnext/accounts/doctype/pos_profile/pos_profile.js
index 0a89aee..ceaafaa 100755
--- a/erpnext/accounts/doctype/pos_profile/pos_profile.js
+++ b/erpnext/accounts/doctype/pos_profile/pos_profile.js
@@ -1,6 +1,5 @@
 // Copyright (c) 2015, Frappe Technologies Pvt. Ltd. and Contributors
 // License: GNU General Public License v3. See license.txt
-
 frappe.ui.form.on('POS Profile', {
 	setup: function(frm) {
 		frm.set_query("selling_price_list", function() {
@@ -140,6 +139,7 @@
 	company: function(frm) {
 		frm.trigger("toggle_display_account_head");
 		erpnext.accounts.dimensions.update_dimension(frm, frm.doctype);
+
 	},
 
 	toggle_display_account_head: function(frm) {
diff --git a/erpnext/accounts/doctype/pos_profile/pos_profile.py b/erpnext/accounts/doctype/pos_profile/pos_profile.py
index e8aee73..58be2d3 100644
--- a/erpnext/accounts/doctype/pos_profile/pos_profile.py
+++ b/erpnext/accounts/doctype/pos_profile/pos_profile.py
@@ -3,7 +3,7 @@
 
 
 import frappe
-from frappe import _, msgprint
+from frappe import _, msgprint, scrub, unscrub
 from frappe.model.document import Document
 from frappe.utils import get_link_to_form, now
 
@@ -14,6 +14,21 @@
 		self.validate_all_link_fields()
 		self.validate_duplicate_groups()
 		self.validate_payment_methods()
+		self.validate_accounting_dimensions()
+
+	def validate_accounting_dimensions(self):
+		acc_dim_names = required_accounting_dimensions()
+		for acc_dim in acc_dim_names:
+			if not self.get(acc_dim):
+				frappe.throw(
+					_(
+						"{0} is a mandatory Accounting Dimension. <br>"
+						"Please set a value for {0} in Accounting Dimensions section."
+					).format(
+						unscrub(frappe.bold(acc_dim)),
+					),
+					title=_("Mandatory Accounting Dimension"),
+				)
 
 	def validate_default_profile(self):
 		for row in self.applicable_for_users:
@@ -152,6 +167,24 @@
 	)
 
 
+def required_accounting_dimensions():
+
+	p = frappe.qb.DocType("Accounting Dimension")
+	c = frappe.qb.DocType("Accounting Dimension Detail")
+
+	acc_dim_doc = (
+		frappe.qb.from_(p)
+		.inner_join(c)
+		.on(p.name == c.parent)
+		.select(c.parent)
+		.where((c.mandatory_for_bs == 1) | (c.mandatory_for_pl == 1))
+		.where(p.disabled == 0)
+	).run(as_dict=1)
+
+	acc_dim_names = [scrub(d.parent) for d in acc_dim_doc]
+	return acc_dim_names
+
+
 @frappe.whitelist()
 @frappe.validate_and_sanitize_search_inputs
 def pos_profile_query(doctype, txt, searchfield, start, page_len, filters):
diff --git a/erpnext/accounts/doctype/pos_profile/test_pos_profile.py b/erpnext/accounts/doctype/pos_profile/test_pos_profile.py
index 788aa62..b468ad3 100644
--- a/erpnext/accounts/doctype/pos_profile/test_pos_profile.py
+++ b/erpnext/accounts/doctype/pos_profile/test_pos_profile.py
@@ -5,7 +5,10 @@
 
 import frappe
 
-from erpnext.accounts.doctype.pos_profile.pos_profile import get_child_nodes
+from erpnext.accounts.doctype.pos_profile.pos_profile import (
+	get_child_nodes,
+	required_accounting_dimensions,
+)
 from erpnext.stock.get_item_details import get_pos_profile
 
 test_dependencies = ["Item"]
@@ -118,6 +121,7 @@
 			"warehouse": args.warehouse or "_Test Warehouse - _TC",
 			"write_off_account": args.write_off_account or "_Test Write Off - _TC",
 			"write_off_cost_center": args.write_off_cost_center or "_Test Write Off Cost Center - _TC",
+			"location": "Block 1" if not args.do_not_set_accounting_dimension else None,
 		}
 	)
 
@@ -132,6 +136,7 @@
 	pos_profile.append("payments", {"mode_of_payment": "Cash", "default": 1})
 
 	if not frappe.db.exists("POS Profile", args.name or "_Test POS Profile"):
-		pos_profile.insert()
+		if not args.get("do_not_insert"):
+			pos_profile.insert()
 
 	return pos_profile
diff --git a/erpnext/accounts/doctype/process_payment_reconciliation/process_payment_reconciliation.py b/erpnext/accounts/doctype/process_payment_reconciliation/process_payment_reconciliation.py
index 3166030..eb8c16e 100644
--- a/erpnext/accounts/doctype/process_payment_reconciliation/process_payment_reconciliation.py
+++ b/erpnext/accounts/doctype/process_payment_reconciliation/process_payment_reconciliation.py
@@ -129,7 +129,7 @@
 			frappe.db.set_value("Process Payment Reconciliation", docname, "status", "Running")
 			job_name = f"start_processing_{docname}"
 			if not is_job_running(job_name):
-				job = frappe.enqueue(
+				frappe.enqueue(
 					method="erpnext.accounts.doctype.process_payment_reconciliation.process_payment_reconciliation.reconcile_based_on_filters",
 					queue="long",
 					is_async=True,
@@ -147,7 +147,7 @@
 			# Resume tasks for running doc
 			job_name = f"start_processing_{docname}"
 			if not is_job_running(job_name):
-				job = frappe.enqueue(
+				frappe.enqueue(
 					method="erpnext.accounts.doctype.process_payment_reconciliation.process_payment_reconciliation.reconcile_based_on_filters",
 					queue="long",
 					is_async=True,
@@ -224,7 +224,7 @@
 
 			job_name = f"process_{doc}_fetch_and_allocate"
 			if not is_job_running(job_name):
-				job = frappe.enqueue(
+				frappe.enqueue(
 					method="erpnext.accounts.doctype.process_payment_reconciliation.process_payment_reconciliation.fetch_and_allocate",
 					queue="long",
 					timeout="3600",
@@ -245,7 +245,7 @@
 			if not allocated:
 				job_name = f"process__{doc}_fetch_and_allocate"
 				if not is_job_running(job_name):
-					job = frappe.enqueue(
+					frappe.enqueue(
 						method="erpnext.accounts.doctype.process_payment_reconciliation.process_payment_reconciliation.fetch_and_allocate",
 						queue="long",
 						timeout="3600",
@@ -263,7 +263,7 @@
 				else:
 					reconcile_job_name = f"process_{doc}_reconcile"
 				if not is_job_running(reconcile_job_name):
-					job = frappe.enqueue(
+					frappe.enqueue(
 						method="erpnext.accounts.doctype.process_payment_reconciliation.process_payment_reconciliation.reconcile",
 						queue="long",
 						timeout="3600",
@@ -350,7 +350,7 @@
 					reconcile_job_name = f"process_{doc}_reconcile"
 
 				if not is_job_running(reconcile_job_name):
-					job = frappe.enqueue(
+					frappe.enqueue(
 						method="erpnext.accounts.doctype.process_payment_reconciliation.process_payment_reconciliation.reconcile",
 						queue="long",
 						timeout="3600",
@@ -462,7 +462,7 @@
 								reconcile_job_name = f"process_{doc}_reconcile"
 
 							if not is_job_running(reconcile_job_name):
-								job = frappe.enqueue(
+								frappe.enqueue(
 									method="erpnext.accounts.doctype.process_payment_reconciliation.process_payment_reconciliation.reconcile",
 									queue="long",
 									timeout="3600",
diff --git a/erpnext/accounts/doctype/process_statement_of_accounts/process_statement_of_accounts.json b/erpnext/accounts/doctype/process_statement_of_accounts/process_statement_of_accounts.json
index 8004659..a3a953f 100644
--- a/erpnext/accounts/doctype/process_statement_of_accounts/process_statement_of_accounts.json
+++ b/erpnext/accounts/doctype/process_statement_of_accounts/process_statement_of_accounts.json
@@ -51,6 +51,7 @@
   "column_break_21",
   "start_date",
   "section_break_33",
+  "pdf_name",
   "subject",
   "column_break_28",
   "cc_to",
@@ -275,7 +276,7 @@
    "fieldname": "help_text",
    "fieldtype": "HTML",
    "label": "Help Text",
-   "options": "<br>\n<h4>Note</h4>\n<ul>\n<li>\nYou can use <a href=\"https://jinja.palletsprojects.com/en/2.11.x/\" target=\"_blank\">Jinja tags</a> in <b>Subject</b> and <b>Body</b> fields for dynamic values.\n</li><li>\n    All fields in this doctype are available under the <b>doc</b> object and all fields for the customer to whom the mail will go to is available under the  <b>customer</b> object.\n</li></ul>\n<h4> Examples</h4>\n<!-- {% raw %} -->\n<ul>\n    <li><b>Subject</b>:<br><br><pre><code>Statement Of Accounts for {{ customer.name }}</code></pre><br></li>\n    <li><b>Body</b>: <br><br>\n<pre><code>Hello {{ customer.name }},<br>PFA your Statement Of Accounts from {{ doc.from_date }} to {{ doc.to_date }}.</code> </pre></li>\n</ul>\n<!-- {% endraw %} -->"
+   "options": "<br>\n<h4>Note</h4>\n<ul>\n<li>\nYou can use <a href=\"https://jinja.palletsprojects.com/en/2.11.x/\" target=\"_blank\">Jinja tags</a> in <b>Subject</b> and <b>Body</b> fields for dynamic values.\n</li><li>\n    All fields in this doctype are available under the <b>doc</b> object and all fields for the customer to whom the mail will go to is available under the  <b>customer</b> object.\n</li></ul>\n<h4> Examples</h4>\n<!-- {% raw %} -->\n<ul>\n    <li><b>Subject</b>:<br><br><pre><code>Statement Of Accounts for {{ customer.customer_name }}</code></pre><br></li>\n    <li><b>Body</b>: <br><br>\n<pre><code>Hello {{ customer.customer_name }},<br>PFA your Statement Of Accounts from {{ doc.from_date }} to {{ doc.to_date }}.</code> </pre></li>\n</ul>\n<!-- {% endraw %} -->"
   },
   {
    "fieldname": "subject",
@@ -370,10 +371,15 @@
    "fieldname": "based_on_payment_terms",
    "fieldtype": "Check",
    "label": "Based On Payment Terms"
+  },
+  {
+   "fieldname": "pdf_name",
+   "fieldtype": "Data",
+   "label": "PDF Name"
   }
  ],
  "links": [],
- "modified": "2023-06-23 10:13:15.051950",
+ "modified": "2023-08-28 12:59:53.071334",
  "modified_by": "Administrator",
  "module": "Accounts",
  "name": "Process Statement Of Accounts",
diff --git a/erpnext/accounts/doctype/process_statement_of_accounts/process_statement_of_accounts.py b/erpnext/accounts/doctype/process_statement_of_accounts/process_statement_of_accounts.py
index 6193c84..6c959ba 100644
--- a/erpnext/accounts/doctype/process_statement_of_accounts/process_statement_of_accounts.py
+++ b/erpnext/accounts/doctype/process_statement_of_accounts/process_statement_of_accounts.py
@@ -27,7 +27,13 @@
 		if not self.subject:
 			self.subject = "Statement Of Accounts for {{ customer.customer_name }}"
 		if not self.body:
-			self.body = "Hello {{ customer.name }},<br>PFA your Statement Of Accounts from {{ doc.from_date }} to {{ doc.to_date }}."
+			if self.report == "General Ledger":
+				body_str = " from {{ doc.from_date }} to {{ doc.to_date }}."
+			else:
+				body_str = " until {{ doc.posting_date }}."
+			self.body = "Hello {{ customer.customer_name }},<br>PFA your Statement Of Accounts" + body_str
+		if not self.pdf_name:
+			self.pdf_name = "{{ customer.customer_name }}"
 
 		validate_template(self.subject)
 		validate_template(self.body)
@@ -42,6 +48,20 @@
 
 
 def get_report_pdf(doc, consolidated=True):
+	statement_dict = get_statement_dict(doc)
+	if not bool(statement_dict):
+		return False
+	elif consolidated:
+		delimiter = '<div style="page-break-before: always;"></div>' if doc.include_break else ""
+		result = delimiter.join(list(statement_dict.values()))
+		return get_pdf(result, {"orientation": doc.orientation})
+	else:
+		for customer, statement_html in statement_dict.items():
+			statement_dict[customer] = get_pdf(statement_html, {"orientation": doc.orientation})
+		return statement_dict
+
+
+def get_statement_dict(doc, get_statement_dict=False):
 	statement_dict = {}
 	ageing = ""
 
@@ -60,31 +80,23 @@
 
 		if doc.report == "General Ledger":
 			filters.update(get_gl_filters(doc, entry, tax_id, presentation_currency))
-		else:
-			filters.update(get_ar_filters(doc, entry))
-
-		if doc.report == "General Ledger":
 			col, res = get_soa(filters)
 			for x in [0, -2, -1]:
 				res[x]["account"] = res[x]["account"].replace("'", "")
 			if len(res) == 3:
 				continue
 		else:
+			filters.update(get_ar_filters(doc, entry))
 			ar_res = get_ar_soa(filters)
 			col, res = ar_res[0], ar_res[1]
+			if not res:
+				continue
 
-		statement_dict[entry.customer] = get_html(doc, filters, entry, col, res, ageing)
+		statement_dict[entry.customer] = (
+			[res, ageing] if get_statement_dict else get_html(doc, filters, entry, col, res, ageing)
+		)
 
-	if not bool(statement_dict):
-		return False
-	elif consolidated:
-		delimiter = '<div style="page-break-before: always;"></div>' if doc.include_break else ""
-		result = delimiter.join(list(statement_dict.values()))
-		return get_pdf(result, {"orientation": doc.orientation})
-	else:
-		for customer, statement_html in statement_dict.items():
-			statement_dict[customer] = get_pdf(statement_html, {"orientation": doc.orientation})
-		return statement_dict
+	return statement_dict
 
 
 def set_ageing(doc, entry):
@@ -97,7 +109,8 @@
 			"range2": 60,
 			"range3": 90,
 			"range4": 120,
-			"customer": entry.customer,
+			"party_type": "Customer",
+			"party": [entry.customer],
 		}
 	)
 	col1, ageing = get_ageing(ageing_filters)
@@ -140,7 +153,9 @@
 def get_ar_filters(doc, entry):
 	return {
 		"report_date": doc.posting_date if doc.posting_date else None,
-		"customer": entry.customer,
+		"party_type": "Customer",
+		"party": [entry.customer],
+		"customer_name": entry.customer_name if entry.customer_name else None,
 		"payment_terms_template": doc.payment_terms_template if doc.payment_terms_template else None,
 		"sales_partner": doc.sales_partner if doc.sales_partner else None,
 		"sales_person": doc.sales_person if doc.sales_person else None,
@@ -366,18 +381,20 @@
 
 
 @frappe.whitelist()
-def send_emails(document_name, from_scheduler=False):
+def send_emails(document_name, from_scheduler=False, posting_date=None):
 	doc = frappe.get_doc("Process Statement Of Accounts", document_name)
 	report = get_report_pdf(doc, consolidated=False)
 
 	if report:
 		for customer, report_pdf in report.items():
-			attachments = [{"fname": customer + ".pdf", "fcontent": report_pdf}]
+			context = get_context(customer, doc)
+			filename = frappe.render_template(doc.pdf_name, context)
+			attachments = [{"fname": filename + ".pdf", "fcontent": report_pdf}]
 
 			recipients, cc = get_recipients_and_cc(customer, doc)
 			if not recipients:
 				continue
-			context = get_context(customer, doc)
+
 			subject = frappe.render_template(doc.subject, context)
 			message = frappe.render_template(doc.body, context)
 
@@ -396,7 +413,7 @@
 			)
 
 		if doc.enable_auto_email and from_scheduler:
-			new_to_date = getdate(today())
+			new_to_date = getdate(posting_date or today())
 			if doc.frequency == "Weekly":
 				new_to_date = add_days(new_to_date, 7)
 			else:
@@ -405,8 +422,11 @@
 			doc.add_comment(
 				"Comment", "Emails sent on: " + frappe.utils.format_datetime(frappe.utils.now())
 			)
-			doc.db_set("to_date", new_to_date, commit=True)
-			doc.db_set("from_date", new_from_date, commit=True)
+			if doc.report == "General Ledger":
+				doc.db_set("to_date", new_to_date, commit=True)
+				doc.db_set("from_date", new_from_date, commit=True)
+			else:
+				doc.db_set("posting_date", new_to_date, commit=True)
 		return True
 	else:
 		return False
@@ -416,7 +436,8 @@
 def send_auto_email():
 	selected = frappe.get_list(
 		"Process Statement Of Accounts",
-		filters={"to_date": format_date(today()), "enable_auto_email": 1},
+		filters={"enable_auto_email": 1},
+		or_filters={"to_date": format_date(today()), "posting_date": format_date(today())},
 	)
 	for entry in selected:
 		send_emails(entry.name, from_scheduler=True)
diff --git a/erpnext/accounts/doctype/process_statement_of_accounts/process_statement_of_accounts_accounts_receivable.html b/erpnext/accounts/doctype/process_statement_of_accounts/process_statement_of_accounts_accounts_receivable.html
index 259526f..647600a 100644
--- a/erpnext/accounts/doctype/process_statement_of_accounts/process_statement_of_accounts_accounts_receivable.html
+++ b/erpnext/accounts/doctype/process_statement_of_accounts/process_statement_of_accounts_accounts_receivable.html
@@ -8,9 +8,24 @@
 	}
 	</style>
 
+	<div id="header-html" class="hidden-pdf">
+		{% if letter_head.content %}
+		<div class="letter-head text-center">{{ letter_head.content }}</div>
+		<hr style="height:2px;border-width:0;color:black;background-color:black;">
+		{% endif %}
+	</div>
+	<div id="footer-html" class="visible-pdf">
+		{% if letter_head.footer %}
+		<div class="letter-head-footer">
+			<hr style="border-width:0;color:black;background-color:black;padding-bottom:2px;">
+			{{ letter_head.footer }}
+		</div>
+		{% endif %}
+	</div>
+
 	<h2 class="text-center" style="margin-top:0">{{ _(report.report_name) }}</h2>
 	<h4 class="text-center">
-		{{ filters.customer }}
+		{{ filters.customer_name }}
 	</h4>
 	<h6 class="text-center">
 		{% if (filters.tax_id) %}
@@ -341,4 +356,9 @@
 		</tbody>
 	</table>
 	{% endif %}
+	{% if terms_and_conditions %}
+	<div>
+		{{ terms_and_conditions }}
+	</div>
+	{% endif %}
 	<p class="text-right text-muted">{{ _("Printed On ") }}{{ frappe.utils.now() }}</p>
diff --git a/erpnext/accounts/doctype/process_statement_of_accounts/test_process_statement_of_accounts.py b/erpnext/accounts/doctype/process_statement_of_accounts/test_process_statement_of_accounts.py
index c281040..a3a74df 100644
--- a/erpnext/accounts/doctype/process_statement_of_accounts/test_process_statement_of_accounts.py
+++ b/erpnext/accounts/doctype/process_statement_of_accounts/test_process_statement_of_accounts.py
@@ -1,9 +1,110 @@
 # Copyright (c) 2020, Frappe Technologies Pvt. Ltd. and Contributors
 # See license.txt
 
-# import frappe
 import unittest
 
+import frappe
+from frappe.tests.utils import FrappeTestCase
+from frappe.utils import add_days, getdate, today
 
-class TestProcessStatementOfAccounts(unittest.TestCase):
-	pass
+from erpnext.accounts.doctype.process_statement_of_accounts.process_statement_of_accounts import (
+	get_statement_dict,
+	send_emails,
+)
+from erpnext.accounts.doctype.sales_invoice.test_sales_invoice import create_sales_invoice
+from erpnext.accounts.test.accounts_mixin import AccountsTestMixin
+
+
+class TestProcessStatementOfAccounts(AccountsTestMixin, FrappeTestCase):
+	def setUp(self):
+		self.create_company()
+		self.create_customer()
+		self.create_customer(customer_name="Other Customer")
+		self.clear_old_entries()
+		self.si = create_sales_invoice()
+		create_sales_invoice(customer="Other Customer")
+
+	def test_process_soa_for_gl(self):
+		"""Tests the utils for Statement of Accounts(General Ledger)"""
+		process_soa = create_process_soa(
+			name="_Test Process SOA for GL",
+			customers=[{"customer": "_Test Customer"}, {"customer": "Other Customer"}],
+		)
+		statement_dict = get_statement_dict(process_soa, get_statement_dict=True)
+
+		# Checks if the statements are filtered based on the Customer
+		self.assertIn("Other Customer", statement_dict)
+		self.assertIn("_Test Customer", statement_dict)
+
+		# Checks if the correct number of receivable entries exist
+		# 3 rows for opening and closing and 1 row for SI
+		receivable_entries = statement_dict["_Test Customer"][0]
+		self.assertEqual(len(receivable_entries), 4)
+
+		# Checks the amount for the receivable entry
+		self.assertEqual(receivable_entries[1].voucher_no, self.si.name)
+		self.assertEqual(receivable_entries[1].balance, 100)
+
+	def test_process_soa_for_ar(self):
+		"""Tests the utils for Statement of Accounts(Accounts Receivable)"""
+		process_soa = create_process_soa(name="_Test Process SOA for AR", report="Accounts Receivable")
+		statement_dict = get_statement_dict(process_soa, get_statement_dict=True)
+
+		# Checks if the statements are filtered based on the Customer
+		self.assertNotIn("Other Customer", statement_dict)
+		self.assertIn("_Test Customer", statement_dict)
+
+		# Checks if the correct number of receivable entries exist
+		receivable_entries = statement_dict["_Test Customer"][0]
+		self.assertEqual(len(receivable_entries), 1)
+
+		# Checks the amount for the receivable entry
+		self.assertEqual(receivable_entries[0].voucher_no, self.si.name)
+		self.assertEqual(receivable_entries[0].total_due, 100)
+
+		# Checks the ageing summary for AR
+		ageing_summary = statement_dict["_Test Customer"][1][0]
+		expected_summary = frappe._dict(
+			range1=100,
+			range2=0,
+			range3=0,
+			range4=0,
+			range5=0,
+		)
+		self.check_ageing_summary(ageing_summary, expected_summary)
+
+	def test_auto_email_for_process_soa_ar(self):
+		process_soa = create_process_soa(
+			name="_Test Process SOA", enable_auto_email=1, report="Accounts Receivable"
+		)
+		send_emails(process_soa.name, from_scheduler=True)
+		process_soa.load_from_db()
+		self.assertEqual(process_soa.posting_date, getdate(add_days(today(), 7)))
+
+	def check_ageing_summary(self, ageing, expected_ageing):
+		for age_range in expected_ageing:
+			self.assertEqual(expected_ageing[age_range], ageing.get(age_range))
+
+	def tearDown(self):
+		frappe.db.rollback()
+
+
+def create_process_soa(**args):
+	args = frappe._dict(args)
+	frappe.delete_doc_if_exists("Process Statement Of Accounts", args.name)
+	process_soa = frappe.new_doc("Process Statement Of Accounts")
+	soa_dict = frappe._dict(
+		name=args.name,
+		company=args.company or "_Test Company",
+		customers=args.customers or [{"customer": "_Test Customer"}],
+		enable_auto_email=1 if args.enable_auto_email else 0,
+		frequency=args.frequency or "Weekly",
+		report=args.report or "General Ledger",
+		from_date=args.from_date or getdate(today()),
+		to_date=args.to_date or getdate(today()),
+		posting_date=args.posting_date or getdate(today()),
+		include_ageing=1,
+	)
+	process_soa.update(soa_dict)
+	process_soa.save()
+	return process_soa
diff --git a/erpnext/crm/doctype/linkedin_settings/__init__.py b/erpnext/accounts/doctype/process_subscription/__init__.py
similarity index 100%
copy from erpnext/crm/doctype/linkedin_settings/__init__.py
copy to erpnext/accounts/doctype/process_subscription/__init__.py
diff --git a/erpnext/accounts/doctype/process_subscription/process_subscription.js b/erpnext/accounts/doctype/process_subscription/process_subscription.js
new file mode 100644
index 0000000..858c913
--- /dev/null
+++ b/erpnext/accounts/doctype/process_subscription/process_subscription.js
@@ -0,0 +1,8 @@
+// Copyright (c) 2023, Frappe Technologies Pvt. Ltd. and contributors
+// For license information, please see license.txt
+
+// frappe.ui.form.on("Process Subscription", {
+// 	refresh(frm) {
+
+// 	},
+// });
diff --git a/erpnext/accounts/doctype/process_subscription/process_subscription.json b/erpnext/accounts/doctype/process_subscription/process_subscription.json
new file mode 100644
index 0000000..502d002
--- /dev/null
+++ b/erpnext/accounts/doctype/process_subscription/process_subscription.json
@@ -0,0 +1,90 @@
+{
+ "actions": [],
+ "allow_rename": 1,
+ "creation": "2023-09-17 15:40:59.724177",
+ "default_view": "List",
+ "doctype": "DocType",
+ "editable_grid": 1,
+ "engine": "InnoDB",
+ "field_order": [
+  "posting_date",
+  "subscription",
+  "amended_from"
+ ],
+ "fields": [
+  {
+   "fieldname": "amended_from",
+   "fieldtype": "Link",
+   "label": "Amended From",
+   "no_copy": 1,
+   "options": "Process Subscription",
+   "print_hide": 1,
+   "read_only": 1
+  },
+  {
+   "fieldname": "posting_date",
+   "fieldtype": "Date",
+   "in_list_view": 1,
+   "label": "Posting Date",
+   "reqd": 1
+  },
+  {
+   "fieldname": "subscription",
+   "fieldtype": "Link",
+   "label": "Subscription",
+   "options": "Subscription"
+  }
+ ],
+ "index_web_pages_for_search": 1,
+ "is_submittable": 1,
+ "links": [],
+ "modified": "2023-09-17 17:33:37.974166",
+ "modified_by": "Administrator",
+ "module": "Accounts",
+ "name": "Process Subscription",
+ "owner": "Administrator",
+ "permissions": [
+  {
+   "create": 1,
+   "delete": 1,
+   "email": 1,
+   "export": 1,
+   "print": 1,
+   "read": 1,
+   "report": 1,
+   "role": "System Manager",
+   "share": 1,
+   "submit": 1,
+   "write": 1
+  },
+  {
+   "create": 1,
+   "delete": 1,
+   "email": 1,
+   "export": 1,
+   "print": 1,
+   "read": 1,
+   "report": 1,
+   "role": "Accounts Manager",
+   "share": 1,
+   "submit": 1,
+   "write": 1
+  },
+  {
+   "create": 1,
+   "delete": 1,
+   "email": 1,
+   "export": 1,
+   "print": 1,
+   "read": 1,
+   "report": 1,
+   "role": "Accounts User",
+   "share": 1,
+   "submit": 1,
+   "write": 1
+  }
+ ],
+ "sort_field": "modified",
+ "sort_order": "DESC",
+ "states": []
+}
\ No newline at end of file
diff --git a/erpnext/accounts/doctype/process_subscription/process_subscription.py b/erpnext/accounts/doctype/process_subscription/process_subscription.py
new file mode 100644
index 0000000..99269d6
--- /dev/null
+++ b/erpnext/accounts/doctype/process_subscription/process_subscription.py
@@ -0,0 +1,27 @@
+# Copyright (c) 2023, Frappe Technologies Pvt. Ltd. and contributors
+# For license information, please see license.txt
+
+from datetime import datetime
+from typing import Union
+
+import frappe
+from frappe.model.document import Document
+from frappe.utils import getdate
+
+from erpnext.accounts.doctype.subscription.subscription import process_all
+
+
+class ProcessSubscription(Document):
+	def on_submit(self):
+		process_all(subscription=self.subscription, posting_date=self.posting_date)
+
+
+def create_subscription_process(
+	subscription: str | None, posting_date: Union[str, datetime.date] | None
+):
+	"""Create a new Process Subscription document"""
+	doc = frappe.new_doc("Process Subscription")
+	doc.subscription = subscription
+	doc.posting_date = getdate(posting_date)
+	doc.insert(ignore_permissions=True)
+	doc.submit()
diff --git a/erpnext/accounts/doctype/process_subscription/test_process_subscription.py b/erpnext/accounts/doctype/process_subscription/test_process_subscription.py
new file mode 100644
index 0000000..723695f
--- /dev/null
+++ b/erpnext/accounts/doctype/process_subscription/test_process_subscription.py
@@ -0,0 +1,9 @@
+# Copyright (c) 2023, Frappe Technologies Pvt. Ltd. and Contributors
+# See license.txt
+
+# import frappe
+from frappe.tests.utils import FrappeTestCase
+
+
+class TestProcessSubscription(FrappeTestCase):
+	pass
diff --git a/erpnext/accounts/doctype/purchase_invoice/purchase_invoice.js b/erpnext/accounts/doctype/purchase_invoice/purchase_invoice.js
index efe9741..2eaa337 100644
--- a/erpnext/accounts/doctype/purchase_invoice/purchase_invoice.js
+++ b/erpnext/accounts/doctype/purchase_invoice/purchase_invoice.js
@@ -65,6 +65,25 @@
 			erpnext.accounts.ledger_preview.show_stock_ledger_preview(this.frm);
 		}
 
+		if (this.frm.doc.repost_required && this.frm.doc.docstatus===1) {
+			this.frm.set_intro(__("Accounting entries for this invoice need to be reposted. Please click on 'Repost' button to update."));
+			this.frm.add_custom_button(__('Repost Accounting Entries'),
+				() => {
+					this.frm.call({
+						doc: this.frm.doc,
+						method: 'repost_accounting_entries',
+						freeze: true,
+						freeze_message: __('Reposting...'),
+						callback: (r) => {
+							if (!r.exc) {
+								frappe.msgprint(__('Accounting Entries are reposted.'));
+								me.frm.refresh();
+							}
+						}
+					});
+				}).removeClass('btn-default').addClass('btn-warning');
+		}
+
 		if(!doc.is_return && doc.docstatus == 1 && doc.outstanding_amount != 0){
 			if(doc.on_hold) {
 				this.frm.add_custom_button(
@@ -161,6 +180,7 @@
 		}
 
 		this.frm.set_df_property("tax_withholding_category", "hidden", doc.apply_tds ? 0 : 1);
+		erpnext.accounts.unreconcile_payments.add_unreconcile_btn(me.frm);
 	}
 
 	unblock_invoice() {
@@ -459,6 +479,12 @@
 	}
 });
 
+cur_frm.set_query("wip_composite_asset", "items", function() {
+	return {
+		filters: {'is_composite_asset': 1, 'docstatus': 0 }
+	}
+});
+
 cur_frm.cscript.expense_account = function(doc, cdt, cdn){
 	var d = locals[cdt][cdn];
 	if(d.idx == 1 && d.expense_account){
diff --git a/erpnext/accounts/doctype/purchase_invoice/purchase_invoice.json b/erpnext/accounts/doctype/purchase_invoice/purchase_invoice.json
index 0599e19..e489882 100644
--- a/erpnext/accounts/doctype/purchase_invoice/purchase_invoice.json
+++ b/erpnext/accounts/doctype/purchase_invoice/purchase_invoice.json
@@ -166,6 +166,7 @@
   "against_expense_account",
   "column_break_63",
   "unrealized_profit_loss_account",
+  "repost_required",
   "subscription_section",
   "subscription",
   "auto_repeat",
@@ -191,8 +192,7 @@
   "inter_company_invoice_reference",
   "is_old_subcontracting_flow",
   "remarks",
-  "connections_tab",
-  "column_break_38"
+  "connections_tab"
  ],
  "fields": [
   {
@@ -990,6 +990,7 @@
    "print_hide": 1
   },
   {
+   "allow_on_submit": 1,
    "fieldname": "cash_bank_account",
    "fieldtype": "Link",
    "label": "Cash/Bank Account",
@@ -1053,6 +1054,7 @@
    "fieldtype": "Column Break"
   },
   {
+   "allow_on_submit": 1,
    "depends_on": "eval:flt(doc.write_off_amount)!=0",
    "fieldname": "write_off_account",
    "fieldtype": "Link",
@@ -1217,6 +1219,7 @@
    "read_only": 1
   },
   {
+   "allow_on_submit": 1,
    "default": "No",
    "fieldname": "is_opening",
    "fieldtype": "Select",
@@ -1349,6 +1352,7 @@
    "options": "Project"
   },
   {
+   "allow_on_submit": 1,
    "depends_on": "eval:doc.is_internal_supplier",
    "description": "Unrealized Profit/Loss account for intra-company transfers",
    "fieldname": "unrealized_profit_loss_account",
@@ -1381,6 +1385,7 @@
    "depends_on": "eval:doc.is_subcontracted",
    "fieldname": "supplier_warehouse",
    "fieldtype": "Link",
+   "ignore_user_permissions": 1,
    "label": "Supplier Warehouse",
    "no_copy": 1,
    "options": "Warehouse",
@@ -1505,10 +1510,6 @@
    "fieldtype": "Column Break"
   },
   {
-   "fieldname": "column_break_38",
-   "fieldtype": "Column Break"
-  },
-  {
    "fieldname": "column_break_50",
    "fieldtype": "Column Break"
   },
@@ -1578,13 +1579,22 @@
    "fieldname": "use_company_roundoff_cost_center",
    "fieldtype": "Check",
    "label": "Use Company Default Round Off Cost Center"
+  },
+  {
+   "default": "0",
+   "fieldname": "repost_required",
+   "fieldtype": "Check",
+   "hidden": 1,
+   "label": "Repost Required",
+   "options": "Account",
+   "read_only": 1
   }
  ],
  "icon": "fa fa-file-text",
  "idx": 204,
  "is_submittable": 1,
  "links": [],
- "modified": "2023-07-25 17:22:59.145031",
+ "modified": "2023-10-01 21:01:47.282533",
  "modified_by": "Administrator",
  "module": "Accounts",
  "name": "Purchase Invoice",
diff --git a/erpnext/accounts/doctype/purchase_invoice/purchase_invoice.py b/erpnext/accounts/doctype/purchase_invoice/purchase_invoice.py
index 9f1224d..2433268 100644
--- a/erpnext/accounts/doctype/purchase_invoice/purchase_invoice.py
+++ b/erpnext/accounts/doctype/purchase_invoice/purchase_invoice.py
@@ -11,6 +11,9 @@
 import erpnext
 from erpnext.accounts.deferred_revenue import validate_service_stop_date
 from erpnext.accounts.doctype.gl_entry.gl_entry import update_outstanding_amt
+from erpnext.accounts.doctype.repost_accounting_ledger.repost_accounting_ledger import (
+	validate_docs_for_deferred_accounting,
+)
 from erpnext.accounts.doctype.sales_invoice.sales_invoice import (
 	check_if_return_invoice_linked_with_payment_entry,
 	get_total_in_party_account_currency,
@@ -266,9 +269,7 @@
 			stock_not_billed_account = self.get_company_default("stock_received_but_not_billed")
 			stock_items = self.get_stock_items()
 
-		asset_items = [d.is_fixed_asset for d in self.items if d.is_fixed_asset]
-		if len(asset_items) > 0:
-			asset_received_but_not_billed = self.get_company_default("asset_received_but_not_billed")
+		asset_received_but_not_billed = None
 
 		if self.update_stock:
 			self.validate_item_code()
@@ -362,6 +363,8 @@
 					)
 				item.expense_account = asset_category_account
 			elif item.is_fixed_asset and item.pr_detail:
+				if not asset_received_but_not_billed:
+					asset_received_but_not_billed = self.get_company_default("asset_received_but_not_billed")
 				item.expense_account = asset_received_but_not_billed
 			elif not item.expense_account and for_validate:
 				throw(_("Expense account is mandatory for item {0}").format(item.item_code or item.item_name))
@@ -484,6 +487,11 @@
 						_("Stock cannot be updated against Purchase Receipt {0}").format(item.purchase_receipt)
 					)
 
+	def validate_for_repost(self):
+		self.validate_write_off_account()
+		self.validate_expense_account()
+		validate_docs_for_deferred_accounting([], [self.name])
+
 	def on_submit(self):
 		super(PurchaseInvoice, self).on_submit()
 
@@ -522,6 +530,19 @@
 
 		self.process_common_party_accounting()
 
+	def on_update_after_submit(self):
+		if hasattr(self, "repost_required"):
+			fields_to_check = [
+				"cash_bank_account",
+				"write_off_account",
+				"unrealized_profit_loss_account",
+			]
+			child_tables = {"items": ("expense_account",), "taxes": ("account_head",)}
+			self.needs_repost = self.check_if_fields_updated(fields_to_check, child_tables)
+			if self.needs_repost:
+				self.validate_for_repost()
+				self.db_set("repost_required", self.needs_repost)
+
 	def make_gl_entries(self, gl_entries=None, from_repost=False):
 		if not gl_entries:
 			gl_entries = self.get_gl_entries()
@@ -759,21 +780,22 @@
 
 					# Amount added through landed-cost-voucher
 					if landed_cost_entries:
-						for account, amount in landed_cost_entries[(item.item_code, item.name)].items():
-							gl_entries.append(
-								self.get_gl_dict(
-									{
-										"account": account,
-										"against": item.expense_account,
-										"cost_center": item.cost_center,
-										"remarks": self.get("remarks") or _("Accounting Entry for Stock"),
-										"credit": flt(amount["base_amount"]),
-										"credit_in_account_currency": flt(amount["amount"]),
-										"project": item.project or self.project,
-									},
-									item=item,
+						if (item.item_code, item.name) in landed_cost_entries:
+							for account, amount in landed_cost_entries[(item.item_code, item.name)].items():
+								gl_entries.append(
+									self.get_gl_dict(
+										{
+											"account": account,
+											"against": item.expense_account,
+											"cost_center": item.cost_center,
+											"remarks": self.get("remarks") or _("Accounting Entry for Stock"),
+											"credit": flt(amount["base_amount"]),
+											"credit_in_account_currency": flt(amount["amount"]),
+											"project": item.project or self.project,
+										},
+										item=item,
+									)
 								)
-							)
 
 					# sub-contracting warehouse
 					if flt(item.rm_supp_cost):
@@ -968,8 +990,9 @@
 						)
 
 	def get_asset_gl_entry(self, gl_entries):
-		arbnb_account = self.get_company_default("asset_received_but_not_billed")
-		eiiav_account = self.get_company_default("expenses_included_in_asset_valuation")
+		arbnb_account = None
+		eiiav_account = None
+		asset_eiiav_currency = None
 
 		for item in self.get("items"):
 			if item.is_fixed_asset:
@@ -981,6 +1004,8 @@
 					"Asset Received But Not Billed",
 					"Fixed Asset",
 				]:
+					if not arbnb_account:
+						arbnb_account = self.get_company_default("asset_received_but_not_billed")
 					item.expense_account = arbnb_account
 
 				if not self.update_stock:
@@ -1003,7 +1028,10 @@
 					)
 
 					if item.item_tax_amount:
-						asset_eiiav_currency = get_account_currency(eiiav_account)
+						if not eiiav_account or not asset_eiiav_currency:
+							eiiav_account = self.get_company_default("expenses_included_in_asset_valuation")
+							asset_eiiav_currency = get_account_currency(eiiav_account)
+
 						gl_entries.append(
 							self.get_gl_dict(
 								{
@@ -1046,7 +1074,10 @@
 					)
 
 					if item.item_tax_amount and not cint(erpnext.is_perpetual_inventory_enabled(self.company)):
-						asset_eiiav_currency = get_account_currency(eiiav_account)
+						if not eiiav_account or not asset_eiiav_currency:
+							eiiav_account = self.get_company_default("expenses_included_in_asset_valuation")
+							asset_eiiav_currency = get_account_currency(eiiav_account)
+
 						gl_entries.append(
 							self.get_gl_dict(
 								{
@@ -1066,47 +1097,46 @@
 							)
 						)
 
-					# When update stock is checked
 					# Assets are bought through this document then it will be linked to this document
-					if self.update_stock:
-						if flt(item.landed_cost_voucher_amount):
-							gl_entries.append(
-								self.get_gl_dict(
-									{
-										"account": eiiav_account,
-										"against": cwip_account,
-										"cost_center": item.cost_center,
-										"remarks": self.get("remarks") or _("Accounting Entry for Stock"),
-										"credit": flt(item.landed_cost_voucher_amount),
-										"project": item.project or self.project,
-									},
-									item=item,
-								)
-							)
+					if flt(item.landed_cost_voucher_amount):
+						if not eiiav_account:
+							eiiav_account = self.get_company_default("expenses_included_in_asset_valuation")
 
-							gl_entries.append(
-								self.get_gl_dict(
-									{
-										"account": cwip_account,
-										"against": eiiav_account,
-										"cost_center": item.cost_center,
-										"remarks": self.get("remarks") or _("Accounting Entry for Stock"),
-										"debit": flt(item.landed_cost_voucher_amount),
-										"project": item.project or self.project,
-									},
-									item=item,
-								)
+						gl_entries.append(
+							self.get_gl_dict(
+								{
+									"account": eiiav_account,
+									"against": cwip_account,
+									"cost_center": item.cost_center,
+									"remarks": self.get("remarks") or _("Accounting Entry for Stock"),
+									"credit": flt(item.landed_cost_voucher_amount),
+									"project": item.project or self.project,
+								},
+								item=item,
 							)
-
-						# update gross amount of assets bought through this document
-						assets = frappe.db.get_all(
-							"Asset", filters={"purchase_invoice": self.name, "item_code": item.item_code}
 						)
-						for asset in assets:
-							frappe.db.set_value("Asset", asset.name, "gross_purchase_amount", flt(item.valuation_rate))
-							frappe.db.set_value(
-								"Asset", asset.name, "purchase_receipt_amount", flt(item.valuation_rate)
+
+						gl_entries.append(
+							self.get_gl_dict(
+								{
+									"account": cwip_account,
+									"against": eiiav_account,
+									"cost_center": item.cost_center,
+									"remarks": self.get("remarks") or _("Accounting Entry for Stock"),
+									"debit": flt(item.landed_cost_voucher_amount),
+									"project": item.project or self.project,
+								},
+								item=item,
 							)
+						)
+
+					# update gross amount of assets bought through this document
+					assets = frappe.db.get_all(
+						"Asset", filters={"purchase_invoice": self.name, "item_code": item.item_code}
+					)
+					for asset in assets:
+						frappe.db.set_value("Asset", asset.name, "gross_purchase_amount", flt(item.valuation_rate))
+						frappe.db.set_value("Asset", asset.name, "purchase_receipt_amount", flt(item.valuation_rate))
 
 		return gl_entries
 
diff --git a/erpnext/accounts/doctype/purchase_invoice/test_purchase_invoice.py b/erpnext/accounts/doctype/purchase_invoice/test_purchase_invoice.py
index ce7ada3..e365d60 100644
--- a/erpnext/accounts/doctype/purchase_invoice/test_purchase_invoice.py
+++ b/erpnext/accounts/doctype/purchase_invoice/test_purchase_invoice.py
@@ -5,7 +5,7 @@
 import unittest
 
 import frappe
-from frappe.tests.utils import change_settings
+from frappe.tests.utils import FrappeTestCase, change_settings
 from frappe.utils import add_days, cint, flt, getdate, nowdate, today
 
 import erpnext
@@ -38,7 +38,7 @@
 test_ignore = ["Serial No"]
 
 
-class TestPurchaseInvoice(unittest.TestCase, StockTestMixin):
+class TestPurchaseInvoice(FrappeTestCase, StockTestMixin):
 	@classmethod
 	def setUpClass(self):
 		unlink_payment_on_cancel_of_invoice()
@@ -48,6 +48,9 @@
 	def tearDownClass(self):
 		unlink_payment_on_cancel_of_invoice(0)
 
+	def tearDown(self):
+		frappe.db.rollback()
+
 	def test_purchase_invoice_received_qty(self):
 		"""
 		1. Test if received qty is validated against accepted + rejected
@@ -422,6 +425,7 @@
 			self.assertEqual(tax.tax_amount, expected_values[i][1])
 			self.assertEqual(tax.total, expected_values[i][2])
 
+	@change_settings("Accounts Settings", {"unlink_payment_on_cancellation_of_invoice": 1})
 	def test_purchase_invoice_with_advance(self):
 		from erpnext.accounts.doctype.journal_entry.test_journal_entry import (
 			test_records as jv_test_records,
@@ -476,6 +480,7 @@
 			)
 		)
 
+	@change_settings("Accounts Settings", {"unlink_payment_on_cancellation_of_invoice": 1})
 	def test_invoice_with_advance_and_multi_payment_terms(self):
 		from erpnext.accounts.doctype.journal_entry.test_journal_entry import (
 			test_records as jv_test_records,
@@ -1164,7 +1169,7 @@
 
 		item = create_item("_Test Item for Deferred Accounting", is_purchase_item=True)
 		item.enable_deferred_expense = 1
-		item.deferred_expense_account = deferred_account
+		item.item_defaults[0].deferred_expense_account = deferred_account
 		item.save()
 
 		pi = make_purchase_invoice(item=item.name, qty=1, rate=100, do_not_save=True)
@@ -1220,6 +1225,7 @@
 		acc_settings.submit_journal_entriessubmit_journal_entries = 0
 		acc_settings.save()
 
+	@change_settings("Accounts Settings", {"unlink_payment_on_cancellation_of_invoice": 1})
 	def test_gain_loss_with_advance_entry(self):
 		unlink_enabled = frappe.db.get_value(
 			"Accounts Settings", "Accounts Settings", "unlink_payment_on_cancel_of_invoice"
@@ -1420,6 +1426,7 @@
 		)
 		frappe.db.set_value("Company", "_Test Company", "exchange_gain_loss_account", original_account)
 
+	@change_settings("Accounts Settings", {"unlink_payment_on_cancellation_of_invoice": 1})
 	def test_purchase_invoice_advance_taxes(self):
 		from erpnext.accounts.doctype.payment_entry.payment_entry import get_payment_entry
 
@@ -1744,7 +1751,6 @@
 
 		pi = make_purchase_invoice(
 			company="_Test Company",
-			customer="_Test Supplier",
 			do_not_save=True,
 			do_not_submit=True,
 			rate=1000,
@@ -1862,7 +1868,6 @@
 
 		pi = make_purchase_invoice(
 			company="_Test Company",
-			customer="_Test Supplier",
 			do_not_save=True,
 			do_not_submit=True,
 			rate=1000,
@@ -1892,6 +1897,58 @@
 		clear_dimension_defaults("Branch")
 		disable_dimension()
 
+	def test_repost_accounting_entries(self):
+		pi = make_purchase_invoice(
+			rate=1000,
+			price_list_rate=1000,
+			qty=1,
+		)
+		expected_gle = [
+			["_Test Account Cost for Goods Sold - _TC", 1000, 0.0, nowdate()],
+			["Creditors - _TC", 0.0, 1000, nowdate()],
+		]
+		check_gl_entries(self, pi.name, expected_gle, nowdate())
+
+		pi.items[0].expense_account = "Service - _TC"
+		pi.save()
+		pi.load_from_db()
+		self.assertTrue(pi.repost_required)
+		pi.repost_accounting_entries()
+
+		expected_gle = [
+			["Creditors - _TC", 0.0, 1000, nowdate()],
+			["Service - _TC", 1000, 0.0, nowdate()],
+		]
+		check_gl_entries(self, pi.name, expected_gle, nowdate())
+		pi.load_from_db()
+		self.assertFalse(pi.repost_required)
+
+	@change_settings("Buying Settings", {"supplier_group": None})
+	def test_purchase_invoice_without_supplier_group(self):
+		# Create a Supplier
+		test_supplier_name = "_Test Supplier Without Supplier Group"
+		if not frappe.db.exists("Supplier", test_supplier_name):
+			supplier = frappe.get_doc(
+				{
+					"doctype": "Supplier",
+					"supplier_name": test_supplier_name,
+				}
+			).insert(ignore_permissions=True)
+
+			self.assertEqual(supplier.supplier_group, None)
+
+		po = create_purchase_order(
+			supplier=test_supplier_name,
+			rate=3000,
+			item="_Test Non Stock Item",
+			posting_date="2021-09-15",
+		)
+
+		pi = make_purchase_invoice(supplier=test_supplier_name)
+
+		self.assertEqual(po.docstatus, 1)
+		self.assertEqual(pi.docstatus, 1)
+
 
 def set_advance_flag(company, flag, default_account):
 	frappe.db.set_value(
diff --git a/erpnext/accounts/doctype/purchase_invoice_item/purchase_invoice_item.json b/erpnext/accounts/doctype/purchase_invoice_item/purchase_invoice_item.json
index 81c7577..424e942 100644
--- a/erpnext/accounts/doctype/purchase_invoice_item/purchase_invoice_item.json
+++ b/erpnext/accounts/doctype/purchase_invoice_item/purchase_invoice_item.json
@@ -77,6 +77,7 @@
   "manufacturer_part_no",
   "accounting",
   "expense_account",
+  "wip_composite_asset",
   "col_break5",
   "is_fixed_asset",
   "asset_location",
@@ -473,6 +474,7 @@
    "label": "Accounting"
   },
   {
+   "allow_on_submit": 1,
    "fieldname": "expense_account",
    "fieldtype": "Link",
    "label": "Expense Head",
@@ -902,12 +904,18 @@
    "no_copy": 1,
    "options": "Serial and Batch Bundle",
    "print_hide": 1
+  },
+  {
+   "fieldname": "wip_composite_asset",
+   "fieldtype": "Link",
+   "label": "WIP Composite Asset",
+   "options": "Asset"
   }
  ],
  "idx": 1,
  "istable": 1,
  "links": [],
- "modified": "2023-07-26 12:54:53.178156",
+ "modified": "2023-10-03 21:01:01.824892",
  "modified_by": "Administrator",
  "module": "Accounts",
  "name": "Purchase Invoice Item",
diff --git a/erpnext/accounts/doctype/purchase_taxes_and_charges/purchase_taxes_and_charges.json b/erpnext/accounts/doctype/purchase_taxes_and_charges/purchase_taxes_and_charges.json
index d86abad..347cae0 100644
--- a/erpnext/accounts/doctype/purchase_taxes_and_charges/purchase_taxes_and_charges.json
+++ b/erpnext/accounts/doctype/purchase_taxes_and_charges/purchase_taxes_and_charges.json
@@ -86,6 +86,7 @@
    "fieldtype": "Column Break"
   },
   {
+   "allow_on_submit": 1,
    "columns": 2,
    "fieldname": "account_head",
    "fieldtype": "Link",
@@ -97,6 +98,7 @@
    "reqd": 1
   },
   {
+   "allow_on_submit": 1,
    "default": ":Company",
    "fieldname": "cost_center",
    "fieldtype": "Link",
diff --git a/erpnext/accounts/doctype/repost_accounting_ledger/repost_accounting_ledger.json b/erpnext/accounts/doctype/repost_accounting_ledger/repost_accounting_ledger.json
index 8d56c9b..5b7cd2b 100644
--- a/erpnext/accounts/doctype/repost_accounting_ledger/repost_accounting_ledger.json
+++ b/erpnext/accounts/doctype/repost_accounting_ledger/repost_accounting_ledger.json
@@ -55,7 +55,7 @@
  "index_web_pages_for_search": 1,
  "is_submittable": 1,
  "links": [],
- "modified": "2023-07-27 15:47:58.975034",
+ "modified": "2023-09-26 14:21:27.362567",
  "modified_by": "Administrator",
  "module": "Accounts",
  "name": "Repost Accounting Ledger",
@@ -77,5 +77,6 @@
  ],
  "sort_field": "modified",
  "sort_order": "DESC",
- "states": []
+ "states": [],
+ "track_changes": 1
 }
\ No newline at end of file
diff --git a/erpnext/accounts/doctype/repost_accounting_ledger/repost_accounting_ledger.py b/erpnext/accounts/doctype/repost_accounting_ledger/repost_accounting_ledger.py
index 4cf2ed2..dbb0971 100644
--- a/erpnext/accounts/doctype/repost_accounting_ledger/repost_accounting_ledger.py
+++ b/erpnext/accounts/doctype/repost_accounting_ledger/repost_accounting_ledger.py
@@ -21,29 +21,8 @@
 
 	def validate_for_deferred_accounting(self):
 		sales_docs = [x.voucher_no for x in self.vouchers if x.voucher_type == "Sales Invoice"]
-		docs_with_deferred_revenue = frappe.db.get_all(
-			"Sales Invoice Item",
-			filters={"parent": ["in", sales_docs], "docstatus": 1, "enable_deferred_revenue": True},
-			fields=["parent"],
-			as_list=1,
-		)
-
 		purchase_docs = [x.voucher_no for x in self.vouchers if x.voucher_type == "Purchase Invoice"]
-		docs_with_deferred_expense = frappe.db.get_all(
-			"Purchase Invoice Item",
-			filters={"parent": ["in", purchase_docs], "docstatus": 1, "enable_deferred_expense": 1},
-			fields=["parent"],
-			as_list=1,
-		)
-
-		if docs_with_deferred_revenue or docs_with_deferred_expense:
-			frappe.throw(
-				_("Documents: {0} have deferred revenue/expense enabled for them. Cannot repost.").format(
-					frappe.bold(
-						comma_and([x[0] for x in docs_with_deferred_expense + docs_with_deferred_revenue])
-					)
-				)
-			)
+		validate_docs_for_deferred_accounting(sales_docs, purchase_docs)
 
 	def validate_for_closed_fiscal_year(self):
 		if self.vouchers:
@@ -139,14 +118,17 @@
 		return rendered_page
 
 	def on_submit(self):
-		job_name = "repost_accounting_ledger_" + self.name
-		frappe.enqueue(
-			method="erpnext.accounts.doctype.repost_accounting_ledger.repost_accounting_ledger.start_repost",
-			account_repost_doc=self.name,
-			is_async=True,
-			job_name=job_name,
-		)
-		frappe.msgprint(_("Repost has started in the background"))
+		if len(self.vouchers) > 1:
+			job_name = "repost_accounting_ledger_" + self.name
+			frappe.enqueue(
+				method="erpnext.accounts.doctype.repost_accounting_ledger.repost_accounting_ledger.start_repost",
+				account_repost_doc=self.name,
+				is_async=True,
+				job_name=job_name,
+			)
+			frappe.msgprint(_("Repost has started in the background"))
+		else:
+			start_repost(self.name)
 
 
 @frappe.whitelist()
@@ -181,3 +163,26 @@
 					doc.make_gl_entries()
 
 				frappe.db.commit()
+
+
+def validate_docs_for_deferred_accounting(sales_docs, purchase_docs):
+	docs_with_deferred_revenue = frappe.db.get_all(
+		"Sales Invoice Item",
+		filters={"parent": ["in", sales_docs], "docstatus": 1, "enable_deferred_revenue": True},
+		fields=["parent"],
+		as_list=1,
+	)
+
+	docs_with_deferred_expense = frappe.db.get_all(
+		"Purchase Invoice Item",
+		filters={"parent": ["in", purchase_docs], "docstatus": 1, "enable_deferred_expense": 1},
+		fields=["parent"],
+		as_list=1,
+	)
+
+	if docs_with_deferred_revenue or docs_with_deferred_expense:
+		frappe.throw(
+			_("Documents: {0} have deferred revenue/expense enabled for them. Cannot repost.").format(
+				frappe.bold(comma_and([x[0] for x in docs_with_deferred_expense + docs_with_deferred_revenue]))
+			)
+		)
diff --git a/erpnext/accounts/doctype/repost_payment_ledger/repost_payment_ledger.json b/erpnext/accounts/doctype/repost_payment_ledger/repost_payment_ledger.json
index 5175fd1..ed8d395 100644
--- a/erpnext/accounts/doctype/repost_payment_ledger/repost_payment_ledger.json
+++ b/erpnext/accounts/doctype/repost_payment_ledger/repost_payment_ledger.json
@@ -99,7 +99,7 @@
  "index_web_pages_for_search": 1,
  "is_submittable": 1,
  "links": [],
- "modified": "2022-11-08 07:38:40.079038",
+ "modified": "2023-09-26 14:21:35.719727",
  "modified_by": "Administrator",
  "module": "Accounts",
  "name": "Repost Payment Ledger",
@@ -155,5 +155,6 @@
  ],
  "sort_field": "modified",
  "sort_order": "DESC",
- "states": []
+ "states": [],
+ "track_changes": 1
 }
\ No newline at end of file
diff --git a/erpnext/accounts/doctype/sales_invoice/sales_invoice.js b/erpnext/accounts/doctype/sales_invoice/sales_invoice.js
index 642e99c..d4d9239 100644
--- a/erpnext/accounts/doctype/sales_invoice/sales_invoice.js
+++ b/erpnext/accounts/doctype/sales_invoice/sales_invoice.js
@@ -37,7 +37,7 @@
 		super.onload();
 
 		this.frm.ignore_doctypes_on_cancel_all = ['POS Invoice', 'Timesheet', 'POS Invoice Merge Log',
-							  'POS Closing Entry', 'Journal Entry', 'Payment Entry', "Repost Payment Ledger", "Repost Accounting Ledger"];
+							  'POS Closing Entry', 'Journal Entry', 'Payment Entry', "Repost Payment Ledger", "Repost Accounting Ledger", "Unreconcile Payments", "Unreconcile Payment Entries"];
 
 		if(!this.frm.doc.__islocal && !this.frm.doc.customer && this.frm.doc.debit_to) {
 			// show debit_to in print format
@@ -183,8 +183,11 @@
 				}, __('Create'));
 			}
 		}
+
+		erpnext.accounts.unreconcile_payments.add_unreconcile_btn(me.frm);
 	}
 
+
 	make_maintenance_schedule() {
 		frappe.model.open_mapped_doc({
 			method: "erpnext.accounts.doctype.sales_invoice.sales_invoice.make_maintenance_schedule",
diff --git a/erpnext/accounts/doctype/sales_invoice/sales_invoice.py b/erpnext/accounts/doctype/sales_invoice/sales_invoice.py
index fba2fa7..f6d9c93 100644
--- a/erpnext/accounts/doctype/sales_invoice/sales_invoice.py
+++ b/erpnext/accounts/doctype/sales_invoice/sales_invoice.py
@@ -11,13 +11,13 @@
 
 import erpnext
 from erpnext.accounts.deferred_revenue import validate_service_stop_date
-from erpnext.accounts.doctype.accounting_dimension.accounting_dimension import (
-	get_accounting_dimensions,
-)
 from erpnext.accounts.doctype.loyalty_program.loyalty_program import (
 	get_loyalty_program_details_with_points,
 	validate_loyalty_points,
 )
+from erpnext.accounts.doctype.repost_accounting_ledger.repost_accounting_ledger import (
+	validate_docs_for_deferred_accounting,
+)
 from erpnext.accounts.doctype.tax_withholding_category.tax_withholding_category import (
 	get_party_tax_withholding_details,
 )
@@ -168,6 +168,12 @@
 		self.validate_account_for_change_amount()
 		self.validate_income_account()
 
+	def validate_for_repost(self):
+		self.validate_write_off_account()
+		self.validate_account_for_change_amount()
+		self.validate_income_account()
+		validate_docs_for_deferred_accounting([self.name], [])
+
 	def validate_fixed_asset(self):
 		for d in self.get("items"):
 			if d.is_fixed_asset and d.meta.get_field("asset") and d.asset:
@@ -388,6 +394,8 @@
 			"Repost Payment Ledger Items",
 			"Repost Accounting Ledger",
 			"Repost Accounting Ledger Items",
+			"Unreconcile Payments",
+			"Unreconcile Payment Entries",
 			"Payment Ledger Entry",
 			"Serial and Batch Bundle",
 		)
@@ -515,90 +523,22 @@
 
 	def on_update_after_submit(self):
 		if hasattr(self, "repost_required"):
-			needs_repost = 0
-
-			# Check if any field affecting accounting entry is altered
-			doc_before_update = self.get_doc_before_save()
-			accounting_dimensions = get_accounting_dimensions() + ["cost_center", "project"]
-
-			# Check if opening entry check updated
-			if doc_before_update.get("is_opening") != self.is_opening:
-				needs_repost = 1
-
-			if not needs_repost:
-				# Parent Level Accounts excluding party account
-				for field in (
-					"additional_discount_account",
-					"cash_bank_account",
-					"account_for_change_amount",
-					"write_off_account",
-					"loyalty_redemption_account",
-					"unrealized_profit_loss_account",
-				):
-					if doc_before_update.get(field) != self.get(field):
-						needs_repost = 1
-						break
-
-				# Check for parent accounting dimensions
-				for dimension in accounting_dimensions:
-					if doc_before_update.get(dimension) != self.get(dimension):
-						needs_repost = 1
-						break
-
-				# Check for child tables
-				if self.check_if_child_table_updated(
-					"items",
-					doc_before_update,
-					("income_account", "expense_account", "discount_account"),
-					accounting_dimensions,
-				):
-					needs_repost = 1
-
-				if self.check_if_child_table_updated(
-					"taxes", doc_before_update, ("account_head",), accounting_dimensions
-				):
-					needs_repost = 1
-
-			self.validate_accounts()
-
-			# validate if deferred revenue is enabled for any item
-			# Don't allow to update the invoice if deferred revenue is enabled
-			if needs_repost:
-				for item in self.get("items"):
-					if item.enable_deferred_revenue:
-						frappe.throw(
-							_(
-								"Deferred Revenue is enabled for item {0}. You cannot update the invoice after submission."
-							).format(item.item_code)
-						)
-
-			self.db_set("repost_required", needs_repost)
-
-	def check_if_child_table_updated(
-		self, child_table, doc_before_update, fields_to_check, accounting_dimensions
-	):
-		# Check if any field affecting accounting entry is altered
-		for index, item in enumerate(self.get(child_table)):
-			for field in fields_to_check:
-				if doc_before_update.get(child_table)[index].get(field) != item.get(field):
-					return True
-
-			for dimension in accounting_dimensions:
-				if doc_before_update.get(child_table)[index].get(dimension) != item.get(dimension):
-					return True
-
-		return False
-
-	@frappe.whitelist()
-	def repost_accounting_entries(self):
-		if self.repost_required:
-			self.docstatus = 2
-			self.make_gl_entries_on_cancel()
-			self.docstatus = 1
-			self.make_gl_entries()
-			self.db_set("repost_required", 0)
-		else:
-			frappe.throw(_("No updates pending for reposting"))
+			fields_to_check = [
+				"additional_discount_account",
+				"cash_bank_account",
+				"account_for_change_amount",
+				"write_off_account",
+				"loyalty_redemption_account",
+				"unrealized_profit_loss_account",
+			]
+			child_tables = {
+				"items": ("income_account", "expense_account", "discount_account"),
+				"taxes": ("account_head",),
+			}
+			self.needs_repost = self.check_if_fields_updated(fields_to_check, child_tables)
+			if self.needs_repost:
+				self.validate_for_repost()
+				self.db_set("repost_required", self.needs_repost)
 
 	def set_paid_amount(self):
 		paid_amount = 0.0
diff --git a/erpnext/accounts/doctype/sales_invoice/sales_invoice_dashboard.py b/erpnext/accounts/doctype/sales_invoice/sales_invoice_dashboard.py
index 6fdcf26..fd95c1f 100644
--- a/erpnext/accounts/doctype/sales_invoice/sales_invoice_dashboard.py
+++ b/erpnext/accounts/doctype/sales_invoice/sales_invoice_dashboard.py
@@ -15,9 +15,11 @@
 		},
 		"internal_links": {
 			"Sales Order": ["items", "sales_order"],
-			"Delivery Note": ["items", "delivery_note"],
 			"Timesheet": ["timesheets", "time_sheet"],
 		},
+		"internal_and_external_links": {
+			"Delivery Note": ["items", "delivery_note"],
+		},
 		"transactions": [
 			{
 				"label": _("Payment"),
diff --git a/erpnext/accounts/doctype/sales_invoice/test_sales_invoice.py b/erpnext/accounts/doctype/sales_invoice/test_sales_invoice.py
index 21b39d7..c1adffd 100644
--- a/erpnext/accounts/doctype/sales_invoice/test_sales_invoice.py
+++ b/erpnext/accounts/doctype/sales_invoice/test_sales_invoice.py
@@ -6,7 +6,7 @@
 
 import frappe
 from frappe.model.dynamic_links import get_dynamic_link_map
-from frappe.tests.utils import change_settings
+from frappe.tests.utils import FrappeTestCase, change_settings
 from frappe.utils import add_days, flt, getdate, nowdate, today
 
 import erpnext
@@ -26,6 +26,7 @@
 from erpnext.controllers.accounts_controller import update_invoice_status
 from erpnext.controllers.taxes_and_totals import get_itemised_tax_breakup_data
 from erpnext.exceptions import InvalidAccountCurrency, InvalidCurrency
+from erpnext.selling.doctype.customer.test_customer import get_customer_dict
 from erpnext.stock.doctype.delivery_note.delivery_note import make_sales_invoice
 from erpnext.stock.doctype.item.test_item import create_item
 from erpnext.stock.doctype.purchase_receipt.test_purchase_receipt import make_purchase_receipt
@@ -44,13 +45,17 @@
 from erpnext.stock.utils import get_incoming_rate, get_stock_balance
 
 
-class TestSalesInvoice(unittest.TestCase):
+class TestSalesInvoice(FrappeTestCase):
 	def setUp(self):
 		from erpnext.stock.doctype.stock_ledger_entry.test_stock_ledger_entry import create_items
 
 		create_items(["_Test Internal Transfer Item"], uoms=[{"uom": "Box", "conversion_factor": 10}])
 		create_internal_parties()
 		setup_accounts()
+		frappe.db.set_single_value("Accounts Settings", "acc_frozen_upto", None)
+
+	def tearDown(self):
+		frappe.db.rollback()
 
 	def make(self):
 		w = frappe.copy_doc(test_records[0])
@@ -178,6 +183,7 @@
 		self.assertRaises(frappe.LinkExistsError, si.cancel)
 		unlink_payment_on_cancel_of_invoice()
 
+	@change_settings("Accounts Settings", {"unlink_payment_on_cancellation_of_invoice": 1})
 	def test_payment_entry_unlink_against_standalone_credit_note(self):
 		from erpnext.accounts.doctype.payment_entry.test_payment_entry import get_payment_entry
 
@@ -1299,6 +1305,7 @@
 		dn.submit()
 		return dn
 
+	@change_settings("Accounts Settings", {"unlink_payment_on_cancellation_of_invoice": 1})
 	def test_sales_invoice_with_advance(self):
 		from erpnext.accounts.doctype.journal_entry.test_journal_entry import (
 			test_records as jv_test_records,
@@ -1801,6 +1808,10 @@
 		)
 
 	def test_outstanding_amount_after_advance_payment_entry_cancellation(self):
+		"""Test impact of advance PE submission/cancellation on SI and SO."""
+		from erpnext.selling.doctype.sales_order.test_sales_order import make_sales_order
+
+		sales_order = make_sales_order(item_code="138-CMS Shoe", qty=1, price_list_rate=500)
 		pe = frappe.get_doc(
 			{
 				"doctype": "Payment Entry",
@@ -1820,10 +1831,25 @@
 				"paid_to": "_Test Cash - _TC",
 			}
 		)
+		pe.append(
+			"references",
+			{
+				"reference_doctype": "Sales Order",
+				"reference_name": sales_order.name,
+				"total_amount": sales_order.grand_total,
+				"outstanding_amount": sales_order.grand_total,
+				"allocated_amount": 300,
+			},
+		)
 		pe.insert()
 		pe.submit()
 
+		sales_order.reload()
+		self.assertEqual(sales_order.advance_paid, 300)
+
 		si = frappe.copy_doc(test_records[0])
+		si.items[0].sales_order = sales_order.name
+		si.items[0].so_detail = sales_order.get("items")[0].name
 		si.is_pos = 0
 		si.append(
 			"advances",
@@ -1831,6 +1857,7 @@
 				"doctype": "Sales Invoice Advance",
 				"reference_type": "Payment Entry",
 				"reference_name": pe.name,
+				"reference_row": pe.references[0].name,
 				"advance_amount": 300,
 				"allocated_amount": 300,
 				"remarks": pe.remarks,
@@ -1839,7 +1866,13 @@
 		si.insert()
 		si.submit()
 
-		si.load_from_db()
+		si.reload()
+		pe.reload()
+		sales_order.reload()
+
+		# Check if SO is unlinked/replaced by SI in PE & if SO advance paid is 0
+		self.assertEqual(pe.references[0].reference_name, si.name)
+		self.assertEqual(sales_order.advance_paid, 0.0)
 
 		# check outstanding after advance allocation
 		self.assertEqual(
@@ -1847,11 +1880,9 @@
 			flt(si.rounded_total - si.total_advance, si.precision("outstanding_amount")),
 		)
 
-		# added to avoid Document has been modified exception
-		pe = frappe.get_doc("Payment Entry", pe.name)
 		pe.cancel()
+		si.reload()
 
-		si.load_from_db()
 		# check outstanding after advance cancellation
 		self.assertEqual(
 			flt(si.outstanding_amount),
@@ -2322,7 +2353,7 @@
 
 		item = create_item("_Test Item for Deferred Accounting")
 		item.enable_deferred_revenue = 1
-		item.deferred_revenue_account = deferred_account
+		item.item_defaults[0].deferred_revenue_account = deferred_account
 		item.no_of_months = 12
 		item.save()
 
@@ -2750,6 +2781,13 @@
 			company="_Test Company",
 		)
 
+		tds_payable_account = create_account(
+			account_name="TDS Payable",
+			account_type="Tax",
+			parent_account="Duties and Taxes - _TC",
+			company="_Test Company",
+		)
+
 		si = create_sales_invoice(parent_cost_center="Main - _TC", do_not_save=1)
 		si.apply_discount_on = "Grand Total"
 		si.additional_discount_account = additional_discount_account
@@ -3048,8 +3086,8 @@
 			si.commission_rate = commission_rate
 			self.assertRaises(frappe.ValidationError, si.save)
 
+	@change_settings("Accounts Settings", {"acc_frozen_upto": add_days(getdate(), 1)})
 	def test_sales_invoice_submission_post_account_freezing_date(self):
-		frappe.db.set_single_value("Accounts Settings", "acc_frozen_upto", add_days(getdate(), 1))
 		si = create_sales_invoice(do_not_save=True)
 		si.posting_date = add_days(getdate(), 1)
 		si.save()
@@ -3058,8 +3096,6 @@
 		si.posting_date = getdate()
 		si.submit()
 
-		frappe.db.set_single_value("Accounts Settings", "acc_frozen_upto", None)
-
 	def test_over_billing_case_against_delivery_note(self):
 		"""
 		Test a case where duplicating the item with qty = 1 in the invoice
@@ -3088,6 +3124,13 @@
 
 		frappe.db.set_single_value("Accounts Settings", "over_billing_allowance", over_billing_allowance)
 
+	@change_settings(
+		"Accounts Settings",
+		{
+			"book_deferred_entries_via_journal_entry": 1,
+			"submit_journal_entries": 1,
+		},
+	)
 	def test_multi_currency_deferred_revenue_via_journal_entry(self):
 		deferred_account = create_account(
 			account_name="Deferred Revenue",
@@ -3095,14 +3138,9 @@
 			company="_Test Company",
 		)
 
-		acc_settings = frappe.get_single("Accounts Settings")
-		acc_settings.book_deferred_entries_via_journal_entry = 1
-		acc_settings.submit_journal_entries = 1
-		acc_settings.save()
-
 		item = create_item("_Test Item for Deferred Accounting")
 		item.enable_deferred_expense = 1
-		item.deferred_revenue_account = deferred_account
+		item.item_defaults[0].deferred_revenue_account = deferred_account
 		item.save()
 
 		si = create_sales_invoice(
@@ -3165,13 +3203,6 @@
 			self.assertEqual(expected_gle[i][2], gle.debit)
 			self.assertEqual(getdate(expected_gle[i][3]), gle.posting_date)
 
-		acc_settings = frappe.get_single("Accounts Settings")
-		acc_settings.book_deferred_entries_via_journal_entry = 0
-		acc_settings.submit_journal_entries = 0
-		acc_settings.save()
-
-		frappe.db.set_single_value("Accounts Settings", "acc_frozen_upto", None)
-
 	def test_standalone_serial_no_return(self):
 		si = create_sales_invoice(
 			item_code="_Test Serialized Item With Series", update_stock=True, is_return=True, qty=-1
@@ -3376,6 +3407,24 @@
 
 		set_advance_flag(company="_Test Company", flag=0, default_account="")
 
+	@change_settings("Selling Settings", {"customer_group": None, "territory": None})
+	def test_sales_invoice_without_customer_group_and_territory(self):
+		# create a customer
+		if not frappe.db.exists("Customer", "_Test Simple Customer"):
+			customer_dict = get_customer_dict("_Test Simple Customer")
+			customer_dict.pop("customer_group")
+			customer_dict.pop("territory")
+			customer = frappe.get_doc(customer_dict).insert(ignore_permissions=True)
+
+			self.assertEqual(customer.customer_group, None)
+			self.assertEqual(customer.territory, None)
+
+		# create a sales invoice
+		si = create_sales_invoice(customer="_Test Simple Customer")
+		self.assertEqual(si.docstatus, 1)
+		self.assertEqual(si.customer_group, None)
+		self.assertEqual(si.territory, None)
+
 	@change_settings("Selling Settings", {"allow_negative_rates_for_items": 0})
 	def test_sales_return_negative_rate(self):
 		si = create_sales_invoice(is_return=1, qty=-2, rate=-10, do_not_save=True)
diff --git a/erpnext/accounts/doctype/sales_invoice_item/sales_invoice_item.json b/erpnext/accounts/doctype/sales_invoice_item/sales_invoice_item.json
index abeaab1..5d2764b 100644
--- a/erpnext/accounts/doctype/sales_invoice_item/sales_invoice_item.json
+++ b/erpnext/accounts/doctype/sales_invoice_item/sales_invoice_item.json
@@ -157,7 +157,6 @@
    "oldfieldname": "description",
    "oldfieldtype": "Text",
    "print_width": "200px",
-   "reqd": 1,
    "width": "200px"
   },
   {
@@ -912,4 +911,4 @@
  "sort_field": "modified",
  "sort_order": "DESC",
  "states": []
-}
\ No newline at end of file
+}
diff --git a/erpnext/accounts/doctype/subscription/subscription.json b/erpnext/accounts/doctype/subscription/subscription.json
index c15aa1e..187b7ab 100644
--- a/erpnext/accounts/doctype/subscription/subscription.json
+++ b/erpnext/accounts/doctype/subscription/subscription.json
@@ -24,8 +24,9 @@
   "current_invoice_start",
   "current_invoice_end",
   "days_until_due",
+  "generate_invoice_at",
+  "number_of_days",
   "cancel_at_period_end",
-  "generate_invoice_at_period_start",
   "sb_4",
   "plans",
   "sb_1",
@@ -86,12 +87,14 @@
    "fieldname": "current_invoice_start",
    "fieldtype": "Date",
    "label": "Current Invoice Start Date",
+   "no_copy": 1,
    "read_only": 1
   },
   {
    "fieldname": "current_invoice_end",
    "fieldtype": "Date",
    "label": "Current Invoice End Date",
+   "no_copy": 1,
    "read_only": 1
   },
   {
@@ -108,12 +111,6 @@
    "label": "Cancel At End Of Period"
   },
   {
-   "default": "0",
-   "fieldname": "generate_invoice_at_period_start",
-   "fieldtype": "Check",
-   "label": "Generate Invoice At Beginning Of Period"
-  },
-  {
    "allow_on_submit": 1,
    "fieldname": "sb_4",
    "fieldtype": "Section Break",
@@ -240,6 +237,21 @@
    "fieldname": "submit_invoice",
    "fieldtype": "Check",
    "label": "Submit Generated Invoices"
+  },
+  {
+   "default": "End of the current subscription period",
+   "fieldname": "generate_invoice_at",
+   "fieldtype": "Select",
+   "label": "Generate Invoice At",
+   "options": "End of the current subscription period\nBeginning of the current subscription period\nDays before the current subscription period",
+   "reqd": 1
+  },
+  {
+   "depends_on": "eval:doc.generate_invoice_at === \"Days before the current subscription period\"",
+   "fieldname": "number_of_days",
+   "fieldtype": "Int",
+   "label": "Number of Days",
+   "mandatory_depends_on": "eval:doc.generate_invoice_at === \"Days before the current subscription period\""
   }
  ],
  "index_web_pages_for_search": 1,
@@ -255,7 +267,7 @@
    "link_fieldname": "subscription"
   }
  ],
- "modified": "2022-02-18 23:24:57.185054",
+ "modified": "2023-09-18 17:48:21.900252",
  "modified_by": "Administrator",
  "module": "Accounts",
  "name": "Subscription",
diff --git a/erpnext/accounts/doctype/subscription/subscription.py b/erpnext/accounts/doctype/subscription/subscription.py
index bbcade1..3cf7d28 100644
--- a/erpnext/accounts/doctype/subscription/subscription.py
+++ b/erpnext/accounts/doctype/subscription/subscription.py
@@ -36,12 +36,15 @@
 	pass
 
 
+DateTimeLikeObject = Union[str, datetime.date]
+
+
 class Subscription(Document):
 	def before_insert(self):
 		# update start just before the subscription doc is created
 		self.update_subscription_period(self.start_date)
 
-	def update_subscription_period(self, date: Optional[Union[datetime.date, str]] = None):
+	def update_subscription_period(self, date: Optional["DateTimeLikeObject"] = None):
 		"""
 		Subscription period is the period to be billed. This method updates the
 		beginning of the billing period and end of the billing period.
@@ -52,14 +55,14 @@
 		self.current_invoice_start = self.get_current_invoice_start(date)
 		self.current_invoice_end = self.get_current_invoice_end(self.current_invoice_start)
 
-	def _get_subscription_period(self, date: Optional[Union[datetime.date, str]] = None):
+	def _get_subscription_period(self, date: Optional["DateTimeLikeObject"] = None):
 		_current_invoice_start = self.get_current_invoice_start(date)
 		_current_invoice_end = self.get_current_invoice_end(_current_invoice_start)
 
 		return _current_invoice_start, _current_invoice_end
 
 	def get_current_invoice_start(
-		self, date: Optional[Union[datetime.date, str]] = None
+		self, date: Optional["DateTimeLikeObject"] = None
 	) -> Union[datetime.date, str]:
 		"""
 		This returns the date of the beginning of the current billing period.
@@ -84,7 +87,7 @@
 		return _current_invoice_start
 
 	def get_current_invoice_end(
-		self, date: Optional[Union[datetime.date, str]] = None
+		self, date: Optional["DateTimeLikeObject"] = None
 	) -> Union[datetime.date, str]:
 		"""
 		This returns the date of the end of the current billing period.
@@ -179,30 +182,24 @@
 
 		return data
 
-	def set_subscription_status(self) -> None:
+	def set_subscription_status(self, posting_date: Optional["DateTimeLikeObject"] = None) -> None:
 		"""
 		Sets the status of the `Subscription`
 		"""
 		if self.is_trialling():
 			self.status = "Trialling"
 		elif (
-			self.status == "Active"
-			and self.end_date
-			and getdate(frappe.flags.current_date) > getdate(self.end_date)
+			self.status == "Active" and self.end_date and getdate(posting_date) > getdate(self.end_date)
 		):
 			self.status = "Completed"
 		elif self.is_past_grace_period():
 			self.status = self.get_status_for_past_grace_period()
-			self.cancelation_date = (
-				getdate(frappe.flags.current_date) if self.status == "Cancelled" else None
-			)
+			self.cancelation_date = getdate(posting_date) if self.status == "Cancelled" else None
 		elif self.current_invoice_is_past_due() and not self.is_past_grace_period():
 			self.status = "Past Due Date"
 		elif not self.has_outstanding_invoice() or self.is_new_subscription():
 			self.status = "Active"
 
-		self.save()
-
 	def is_trialling(self) -> bool:
 		"""
 		Returns `True` if the `Subscription` is in trial period.
@@ -210,7 +207,9 @@
 		return not self.period_has_passed(self.trial_period_end) and self.is_new_subscription()
 
 	@staticmethod
-	def period_has_passed(end_date: Union[str, datetime.date]) -> bool:
+	def period_has_passed(
+		end_date: Union[str, datetime.date], posting_date: Optional["DateTimeLikeObject"] = None
+	) -> bool:
 		"""
 		Returns true if the given `end_date` has passed
 		"""
@@ -218,7 +217,7 @@
 		if not end_date:
 			return True
 
-		return getdate(frappe.flags.current_date) > getdate(end_date)
+		return getdate(posting_date) > getdate(end_date)
 
 	def get_status_for_past_grace_period(self) -> str:
 		cancel_after_grace = cint(frappe.get_value("Subscription Settings", None, "cancel_after_grace"))
@@ -229,7 +228,7 @@
 
 		return status
 
-	def is_past_grace_period(self) -> bool:
+	def is_past_grace_period(self, posting_date: Optional["DateTimeLikeObject"] = None) -> bool:
 		"""
 		Returns `True` if the grace period for the `Subscription` has passed
 		"""
@@ -237,18 +236,18 @@
 			return
 
 		grace_period = cint(frappe.get_value("Subscription Settings", None, "grace_period"))
-		return getdate(frappe.flags.current_date) >= getdate(
-			add_days(self.current_invoice.due_date, grace_period)
-		)
+		return getdate(posting_date) >= getdate(add_days(self.current_invoice.due_date, grace_period))
 
-	def current_invoice_is_past_due(self) -> bool:
+	def current_invoice_is_past_due(
+		self, posting_date: Optional["DateTimeLikeObject"] = None
+	) -> bool:
 		"""
 		Returns `True` if the current generated invoice is overdue
 		"""
 		if not self.current_invoice or self.is_paid(self.current_invoice):
 			return False
 
-		return getdate(frappe.flags.current_date) >= getdate(self.current_invoice.due_date)
+		return getdate(posting_date) >= getdate(self.current_invoice.due_date)
 
 	@property
 	def invoice_document_type(self) -> str:
@@ -270,6 +269,9 @@
 		if not self.cost_center:
 			self.cost_center = get_default_cost_center(self.get("company"))
 
+		if self.is_new():
+			self.set_subscription_status()
+
 	def validate_trial_period(self) -> None:
 		"""
 		Runs sanity checks on trial period dates for the `Subscription`
@@ -305,10 +307,6 @@
 		if billing_info[0]["billing_interval"] != "Month":
 			frappe.throw(_("Billing Interval in Subscription Plan must be Month to follow calendar months"))
 
-	def after_insert(self) -> None:
-		# todo: deal with users who collect prepayments. Maybe a new Subscription Invoice doctype?
-		self.set_subscription_status()
-
 	def generate_invoice(
 		self,
 		from_date: Optional[Union[str, datetime.date]] = None,
@@ -344,7 +342,7 @@
 		invoice.set_posting_time = 1
 		invoice.posting_date = (
 			self.current_invoice_start
-			if self.generate_invoice_at_period_start
+			if self.generate_invoice_at == "Beginning of the current subscription period"
 			else self.current_invoice_end
 		)
 
@@ -438,7 +436,7 @@
 			prorate_factor = get_prorata_factor(
 				self.current_invoice_end,
 				self.current_invoice_start,
-				cint(self.generate_invoice_at_period_start),
+				cint(self.generate_invoice_at == "Beginning of the current subscription period"),
 			)
 
 		items = []
@@ -503,42 +501,45 @@
 		return items
 
 	@frappe.whitelist()
-	def process(self) -> bool:
+	def process(self, posting_date: Optional["DateTimeLikeObject"] = None) -> bool:
 		"""
 		To be called by task periodically. It checks the subscription and takes appropriate action
 		as need be. It calls either of these methods depending the `Subscription` status:
 		1. `process_for_active`
 		2. `process_for_past_due`
 		"""
-		if (
-			not self.is_current_invoice_generated(self.current_invoice_start, self.current_invoice_end)
-			and self.can_generate_new_invoice()
-		):
+		if not self.is_current_invoice_generated(
+			self.current_invoice_start, self.current_invoice_end
+		) and self.can_generate_new_invoice(posting_date):
 			self.generate_invoice()
 			self.update_subscription_period(add_days(self.current_invoice_end, 1))
 
 		if self.cancel_at_period_end and (
-			getdate(frappe.flags.current_date) >= getdate(self.current_invoice_end)
-			or getdate(frappe.flags.current_date) >= getdate(self.end_date)
+			getdate(posting_date) >= getdate(self.current_invoice_end)
+			or getdate(posting_date) >= getdate(self.end_date)
 		):
 			self.cancel_subscription()
 
-		self.set_subscription_status()
+		self.set_subscription_status(posting_date=posting_date)
 
 		self.save()
 
-	def can_generate_new_invoice(self) -> bool:
+	def can_generate_new_invoice(self, posting_date: Optional["DateTimeLikeObject"] = None) -> bool:
 		if self.cancelation_date:
 			return False
-		elif self.generate_invoice_at_period_start and (
-			getdate(frappe.flags.current_date) == getdate(self.current_invoice_start)
-			or self.is_new_subscription()
+
+		if self.has_outstanding_invoice() and not self.generate_new_invoices_past_due_date:
+			return False
+
+		if self.generate_invoice_at == "Beginning of the current subscription period" and (
+			getdate(posting_date) == getdate(self.current_invoice_start) or self.is_new_subscription()
 		):
 			return True
-		elif getdate(frappe.flags.current_date) == getdate(self.current_invoice_end):
-			if self.has_outstanding_invoice() and not self.generate_new_invoices_past_due_date:
-				return False
-
+		elif self.generate_invoice_at == "Days before the current subscription period" and (
+			getdate(posting_date) == getdate(add_days(self.current_invoice_start, -1 * self.number_of_days))
+		):
+			return True
+		elif getdate(posting_date) == getdate(self.current_invoice_end):
 			return True
 		else:
 			return False
@@ -628,7 +629,10 @@
 			frappe.throw(_("subscription is already cancelled."), InvoiceCancelled)
 
 		to_generate_invoice = (
-			True if self.status == "Active" and not self.generate_invoice_at_period_start else False
+			True
+			if self.status == "Active"
+			and not self.generate_invoice_at == "Beginning of the current subscription period"
+			else False
 		)
 		self.status = "Cancelled"
 		self.cancelation_date = nowdate()
@@ -639,7 +643,7 @@
 		self.save()
 
 	@frappe.whitelist()
-	def restart_subscription(self) -> None:
+	def restart_subscription(self, posting_date: Optional["DateTimeLikeObject"] = None) -> None:
 		"""
 		This sets the subscription as active. The subscription will be made to be like a new
 		subscription and the `Subscription` will lose all the history of generated invoices
@@ -650,7 +654,7 @@
 
 		self.status = "Active"
 		self.cancelation_date = None
-		self.update_subscription_period(frappe.flags.current_date or nowdate())
+		self.update_subscription_period(posting_date or nowdate())
 		self.save()
 
 
@@ -671,14 +675,21 @@
 	return diff / plan_days
 
 
-def process_all() -> None:
+def process_all(
+	subscription: str | None, posting_date: Optional["DateTimeLikeObject"] = None
+) -> None:
 	"""
 	Task to updates the status of all `Subscription` apart from those that are cancelled
 	"""
-	for subscription in frappe.get_all("Subscription", {"status": ("!=", "Cancelled")}, pluck="name"):
+	filters = {"status": ("!=", "Cancelled")}
+
+	if subscription:
+		filters["name"] = subscription
+
+	for subscription in frappe.get_all("Subscription", filters, pluck="name"):
 		try:
 			subscription = frappe.get_doc("Subscription", subscription)
-			subscription.process()
+			subscription.process(posting_date)
 			frappe.db.commit()
 		except frappe.ValidationError:
 			frappe.db.rollback()
diff --git a/erpnext/accounts/doctype/subscription/test_subscription.py b/erpnext/accounts/doctype/subscription/test_subscription.py
index 0bb171f..785fd04 100644
--- a/erpnext/accounts/doctype/subscription/test_subscription.py
+++ b/erpnext/accounts/doctype/subscription/test_subscription.py
@@ -4,10 +4,12 @@
 import unittest
 
 import frappe
+from frappe.tests.utils import FrappeTestCase
 from frappe.utils.data import (
 	add_days,
 	add_months,
 	add_to_date,
+	cint,
 	date_diff,
 	flt,
 	get_date_str,
@@ -20,99 +22,20 @@
 test_dependencies = ("UOM", "Item Group", "Item")
 
 
-def create_plan():
-	if not frappe.db.exists("Subscription Plan", "_Test Plan Name"):
-		plan = frappe.new_doc("Subscription Plan")
-		plan.plan_name = "_Test Plan Name"
-		plan.item = "_Test Non Stock Item"
-		plan.price_determination = "Fixed Rate"
-		plan.cost = 900
-		plan.billing_interval = "Month"
-		plan.billing_interval_count = 1
-		plan.insert()
-
-	if not frappe.db.exists("Subscription Plan", "_Test Plan Name 2"):
-		plan = frappe.new_doc("Subscription Plan")
-		plan.plan_name = "_Test Plan Name 2"
-		plan.item = "_Test Non Stock Item"
-		plan.price_determination = "Fixed Rate"
-		plan.cost = 1999
-		plan.billing_interval = "Month"
-		plan.billing_interval_count = 1
-		plan.insert()
-
-	if not frappe.db.exists("Subscription Plan", "_Test Plan Name 3"):
-		plan = frappe.new_doc("Subscription Plan")
-		plan.plan_name = "_Test Plan Name 3"
-		plan.item = "_Test Non Stock Item"
-		plan.price_determination = "Fixed Rate"
-		plan.cost = 1999
-		plan.billing_interval = "Day"
-		plan.billing_interval_count = 14
-		plan.insert()
-
-	# Defined a quarterly Subscription Plan
-	if not frappe.db.exists("Subscription Plan", "_Test Plan Name 4"):
-		plan = frappe.new_doc("Subscription Plan")
-		plan.plan_name = "_Test Plan Name 4"
-		plan.item = "_Test Non Stock Item"
-		plan.price_determination = "Monthly Rate"
-		plan.cost = 20000
-		plan.billing_interval = "Month"
-		plan.billing_interval_count = 3
-		plan.insert()
-
-	if not frappe.db.exists("Subscription Plan", "_Test Plan Multicurrency"):
-		plan = frappe.new_doc("Subscription Plan")
-		plan.plan_name = "_Test Plan Multicurrency"
-		plan.item = "_Test Non Stock Item"
-		plan.price_determination = "Fixed Rate"
-		plan.cost = 50
-		plan.currency = "USD"
-		plan.billing_interval = "Month"
-		plan.billing_interval_count = 1
-		plan.insert()
-
-
-def create_parties():
-	if not frappe.db.exists("Supplier", "_Test Supplier"):
-		supplier = frappe.new_doc("Supplier")
-		supplier.supplier_name = "_Test Supplier"
-		supplier.supplier_group = "All Supplier Groups"
-		supplier.insert()
-
-	if not frappe.db.exists("Customer", "_Test Subscription Customer"):
-		customer = frappe.new_doc("Customer")
-		customer.customer_name = "_Test Subscription Customer"
-		customer.billing_currency = "USD"
-		customer.append(
-			"accounts", {"company": "_Test Company", "account": "_Test Receivable USD - _TC"}
-		)
-		customer.insert()
-
-
-def reset_settings():
-	settings = frappe.get_single("Subscription Settings")
-	settings.grace_period = 0
-	settings.cancel_after_grace = 0
-	settings.save()
-
-
-class TestSubscription(unittest.TestCase):
+class TestSubscription(FrappeTestCase):
 	def setUp(self):
-		create_plan()
+		make_plans()
 		create_parties()
 		reset_settings()
+		frappe.db.set_single_value("Accounts Settings", "acc_frozen_upto", None)
+
+	def tearDown(self):
+		frappe.db.rollback()
 
 	def test_create_subscription_with_trial_with_correct_period(self):
-		subscription = frappe.new_doc("Subscription")
-		subscription.party_type = "Customer"
-		subscription.party = "_Test Customer"
-		subscription.trial_period_start = nowdate()
-		subscription.trial_period_end = add_months(nowdate(), 1)
-		subscription.append("plans", {"plan": "_Test Plan Name", "qty": 1})
-		subscription.save()
-
+		subscription = create_subscription(
+			trial_period_start=nowdate(), trial_period_end=add_months(nowdate(), 1)
+		)
 		self.assertEqual(subscription.trial_period_start, nowdate())
 		self.assertEqual(subscription.trial_period_end, add_months(nowdate(), 1))
 		self.assertEqual(
@@ -126,12 +49,7 @@
 		self.assertEqual(subscription.status, "Trialling")
 
 	def test_create_subscription_without_trial_with_correct_period(self):
-		subscription = frappe.new_doc("Subscription")
-		subscription.party_type = "Customer"
-		subscription.party = "_Test Customer"
-		subscription.append("plans", {"plan": "_Test Plan Name", "qty": 1})
-		subscription.save()
-
+		subscription = create_subscription()
 		self.assertEqual(subscription.trial_period_start, None)
 		self.assertEqual(subscription.trial_period_end, None)
 		self.assertEqual(subscription.current_invoice_start, nowdate())
@@ -141,55 +59,28 @@
 		self.assertEqual(subscription.status, "Active")
 
 	def test_create_subscription_trial_with_wrong_dates(self):
-		subscription = frappe.new_doc("Subscription")
-		subscription.party_type = "Customer"
-		subscription.party = "_Test Customer"
-		subscription.trial_period_end = nowdate()
-		subscription.trial_period_start = add_days(nowdate(), 30)
-		subscription.append("plans", {"plan": "_Test Plan Name", "qty": 1})
-
-		self.assertRaises(frappe.ValidationError, subscription.save)
-
-	def test_create_subscription_multi_with_different_billing_fails(self):
-		subscription = frappe.new_doc("Subscription")
-		subscription.party_type = "Customer"
-		subscription.party = "_Test Customer"
-		subscription.trial_period_end = nowdate()
-		subscription.trial_period_start = add_days(nowdate(), 30)
-		subscription.append("plans", {"plan": "_Test Plan Name", "qty": 1})
-		subscription.append("plans", {"plan": "_Test Plan Name 3", "qty": 1})
-
+		subscription = create_subscription(
+			trial_period_start=add_days(nowdate(), 30), trial_period_end=nowdate(), do_not_save=True
+		)
 		self.assertRaises(frappe.ValidationError, subscription.save)
 
 	def test_invoice_is_generated_at_end_of_billing_period(self):
-		subscription = frappe.new_doc("Subscription")
-		subscription.party_type = "Customer"
-		subscription.party = "_Test Customer"
-		subscription.start_date = "2018-01-01"
-		subscription.append("plans", {"plan": "_Test Plan Name", "qty": 1})
-		subscription.insert()
-
+		subscription = create_subscription(start_date="2018-01-01")
 		self.assertEqual(subscription.status, "Active")
 		self.assertEqual(subscription.current_invoice_start, "2018-01-01")
 		self.assertEqual(subscription.current_invoice_end, "2018-01-31")
-		frappe.flags.current_date = "2018-01-31"
-		subscription.process()
 
+		subscription.process(posting_date="2018-01-31")
 		self.assertEqual(len(subscription.invoices), 1)
 		self.assertEqual(subscription.current_invoice_start, "2018-02-01")
 		self.assertEqual(subscription.current_invoice_end, "2018-02-28")
 		self.assertEqual(subscription.status, "Unpaid")
 
 	def test_status_goes_back_to_active_after_invoice_is_paid(self):
-		subscription = frappe.new_doc("Subscription")
-		subscription.party_type = "Customer"
-		subscription.party = "_Test Customer"
-		subscription.append("plans", {"plan": "_Test Plan Name", "qty": 1})
-		subscription.start_date = "2018-01-01"
-		subscription.generate_invoice_at_period_start = True
-		subscription.insert()
-		frappe.flags.current_date = "2018-01-01"
-		subscription.process()  # generate first invoice
+		subscription = create_subscription(
+			start_date="2018-01-01", generate_invoice_at="Beginning of the current subscription period"
+		)
+		subscription.process(posting_date="2018-01-01")  # generate first invoice
 		self.assertEqual(len(subscription.invoices), 1)
 
 		# Status is unpaid as Days until Due is zero and grace period is Zero
@@ -213,18 +104,10 @@
 		settings.cancel_after_grace = 1
 		settings.save()
 
-		subscription = frappe.new_doc("Subscription")
-		subscription.party_type = "Customer"
-		subscription.party = "_Test Customer"
-		subscription.append("plans", {"plan": "_Test Plan Name", "qty": 1})
-		# subscription.generate_invoice_at_period_start = True
-		subscription.start_date = "2018-01-01"
-		subscription.insert()
-
+		subscription = create_subscription(start_date="2018-01-01")
 		self.assertEqual(subscription.status, "Active")
 
-		frappe.flags.current_date = "2018-01-31"
-		subscription.process()  # generate first invoice
+		subscription.process(posting_date="2018-01-31")  # generate first invoice
 		# This should change status to Cancelled since grace period is 0
 		# And is backdated subscription so subscription will be cancelled after processing
 		self.assertEqual(subscription.status, "Cancelled")
@@ -235,13 +118,8 @@
 		settings.cancel_after_grace = 0
 		settings.save()
 
-		subscription = frappe.new_doc("Subscription")
-		subscription.party_type = "Customer"
-		subscription.party = "_Test Customer"
-		subscription.append("plans", {"plan": "_Test Plan Name", "qty": 1})
-		subscription.start_date = "2018-01-01"
-		subscription.insert()
-		subscription.process()  # generate first invoice
+		subscription = create_subscription(start_date="2018-01-01")
+		subscription.process(posting_date="2018-01-31")  # generate first invoice
 
 		# Status is unpaid as Days until Due is zero and grace period is Zero
 		self.assertEqual(subscription.status, "Unpaid")
@@ -251,21 +129,9 @@
 
 	def test_subscription_invoice_days_until_due(self):
 		_date = add_months(nowdate(), -1)
-		subscription = frappe.new_doc("Subscription")
-		subscription.party_type = "Customer"
-		subscription.party = "_Test Customer"
-		subscription.days_until_due = 10
-		subscription.start_date = _date
-		subscription.append("plans", {"plan": "_Test Plan Name", "qty": 1})
-		subscription.insert()
+		subscription = create_subscription(start_date=_date, days_until_due=10)
 
-		frappe.flags.current_date = subscription.current_invoice_end
-
-		subscription.process()  # generate first invoice
-		self.assertEqual(len(subscription.invoices), 1)
-		self.assertEqual(subscription.status, "Active")
-
-		frappe.flags.current_date = add_days(subscription.current_invoice_end, 3)
+		subscription.process(posting_date=subscription.current_invoice_end)  # generate first invoice
 		self.assertEqual(len(subscription.invoices), 1)
 		self.assertEqual(subscription.status, "Active")
 
@@ -275,16 +141,9 @@
 		settings.grace_period = 1000
 		settings.save()
 
-		subscription = frappe.new_doc("Subscription")
-		subscription.party_type = "Customer"
-		subscription.party = "_Test Customer"
-		subscription.append("plans", {"plan": "_Test Plan Name", "qty": 1})
-		subscription.start_date = add_days(nowdate(), -1000)
-		subscription.insert()
+		subscription = create_subscription(start_date=add_days(nowdate(), -1000))
 
-		frappe.flags.current_date = subscription.current_invoice_end
-		subscription.process()  # generate first invoice
-
+		subscription.process(posting_date=subscription.current_invoice_end)  # generate first invoice
 		self.assertEqual(subscription.status, "Past Due Date")
 
 		subscription.process()
@@ -301,12 +160,7 @@
 		settings.save()
 
 	def test_subscription_remains_active_during_invoice_period(self):
-		subscription = frappe.new_doc("Subscription")
-		subscription.party_type = "Customer"
-		subscription.party = "_Test Customer"
-		subscription.append("plans", {"plan": "_Test Plan Name", "qty": 1})
-		subscription.save()
-		subscription.process()  # no changes expected
+		subscription = create_subscription()  # no changes expected
 
 		self.assertEqual(subscription.status, "Active")
 		self.assertEqual(subscription.current_invoice_start, nowdate())
@@ -325,12 +179,8 @@
 		self.assertEqual(subscription.current_invoice_end, add_to_date(nowdate(), months=1, days=-1))
 		self.assertEqual(len(subscription.invoices), 0)
 
-	def test_subscription_cancelation(self):
-		subscription = frappe.new_doc("Subscription")
-		subscription.party_type = "Customer"
-		subscription.party = "_Test Customer"
-		subscription.append("plans", {"plan": "_Test Plan Name", "qty": 1})
-		subscription.save()
+	def test_subscription_cancellation(self):
+		subscription = create_subscription()
 		subscription.cancel_subscription()
 
 		self.assertEqual(subscription.status, "Cancelled")
@@ -341,11 +191,7 @@
 		settings.prorate = 1
 		settings.save()
 
-		subscription = frappe.new_doc("Subscription")
-		subscription.party_type = "Customer"
-		subscription.party = "_Test Customer"
-		subscription.append("plans", {"plan": "_Test Plan Name", "qty": 1})
-		subscription.save()
+		subscription = create_subscription()
 
 		self.assertEqual(subscription.status, "Active")
 
@@ -365,7 +211,7 @@
 				get_prorata_factor(
 					subscription.current_invoice_end,
 					subscription.current_invoice_start,
-					subscription.generate_invoice_at_period_start,
+					cint(subscription.generate_invoice_at == "Beginning of the current subscription period"),
 				),
 				2,
 			),
@@ -383,11 +229,7 @@
 		settings.prorate = 0
 		settings.save()
 
-		subscription = frappe.new_doc("Subscription")
-		subscription.party_type = "Customer"
-		subscription.party = "_Test Customer"
-		subscription.append("plans", {"plan": "_Test Plan Name", "qty": 1})
-		subscription.save()
+		subscription = create_subscription()
 		subscription.cancel_subscription()
 		invoice = subscription.get_current_invoice()
 
@@ -402,11 +244,7 @@
 		settings.prorate = 1
 		settings.save()
 
-		subscription = frappe.new_doc("Subscription")
-		subscription.party_type = "Customer"
-		subscription.party = "_Test Customer"
-		subscription.append("plans", {"plan": "_Test Plan Name", "qty": 1})
-		subscription.save()
+		subscription = create_subscription()
 		subscription.cancel_subscription()
 
 		invoice = subscription.get_current_invoice()
@@ -421,18 +259,13 @@
 		settings.prorate = to_prorate
 		settings.save()
 
-	def test_subcription_cancellation_and_process(self):
+	def test_subscription_cancellation_and_process(self):
 		settings = frappe.get_single("Subscription Settings")
 		default_grace_period_action = settings.cancel_after_grace
 		settings.cancel_after_grace = 1
 		settings.save()
 
-		subscription = frappe.new_doc("Subscription")
-		subscription.party_type = "Customer"
-		subscription.party = "_Test Customer"
-		subscription.append("plans", {"plan": "_Test Plan Name", "qty": 1})
-		subscription.start_date = "2018-01-01"
-		subscription.insert()
+		subscription = create_subscription(start_date="2018-01-01")
 		subscription.process()  # generate first invoice
 
 		# Generate an invoice for the cancelled period
@@ -458,14 +291,8 @@
 		settings.cancel_after_grace = 0
 		settings.save()
 
-		subscription = frappe.new_doc("Subscription")
-		subscription.party_type = "Customer"
-		subscription.party = "_Test Customer"
-		subscription.append("plans", {"plan": "_Test Plan Name", "qty": 1})
-		subscription.start_date = "2018-01-01"
-		subscription.insert()
-		frappe.flags.current_date = "2018-01-31"
-		subscription.process()  # generate first invoice
+		subscription = create_subscription(start_date="2018-01-01")
+		subscription.process(posting_date="2018-01-31")  # generate first invoice
 
 		# Status is unpaid as Days until Due is zero and grace period is Zero
 		self.assertEqual(subscription.status, "Unpaid")
@@ -494,17 +321,10 @@
 		settings.cancel_after_grace = 0
 		settings.save()
 
-		subscription = frappe.new_doc("Subscription")
-		subscription.party_type = "Customer"
-		subscription.party = "_Test Customer"
-		subscription.append("plans", {"plan": "_Test Plan Name", "qty": 1})
-		subscription.start_date = "2018-01-01"
-		subscription.generate_invoice_at_period_start = True
-		subscription.insert()
-
-		frappe.flags.current_date = subscription.current_invoice_start
-
-		subscription.process()  # generate first invoice
+		subscription = create_subscription(
+			start_date="2018-01-01", generate_invoice_at="Beginning of the current subscription period"
+		)
+		subscription.process(subscription.current_invoice_start)  # generate first invoice
 		# This should change status to Unpaid since grace period is 0
 		self.assertEqual(subscription.status, "Unpaid")
 
@@ -516,29 +336,18 @@
 		self.assertEqual(subscription.status, "Active")
 
 		# A new invoice is generated
-		frappe.flags.current_date = subscription.current_invoice_start
-		subscription.process()
+		subscription.process(posting_date=subscription.current_invoice_start)
 		self.assertEqual(subscription.status, "Unpaid")
 
 		settings.cancel_after_grace = default_grace_period_action
 		settings.save()
 
 	def test_restart_active_subscription(self):
-		subscription = frappe.new_doc("Subscription")
-		subscription.party_type = "Customer"
-		subscription.party = "_Test Customer"
-		subscription.append("plans", {"plan": "_Test Plan Name", "qty": 1})
-		subscription.save()
-
+		subscription = create_subscription()
 		self.assertRaises(frappe.ValidationError, subscription.restart_subscription)
 
 	def test_subscription_invoice_discount_percentage(self):
-		subscription = frappe.new_doc("Subscription")
-		subscription.party_type = "Customer"
-		subscription.party = "_Test Customer"
-		subscription.additional_discount_percentage = 10
-		subscription.append("plans", {"plan": "_Test Plan Name", "qty": 1})
-		subscription.save()
+		subscription = create_subscription(additional_discount_percentage=10)
 		subscription.cancel_subscription()
 
 		invoice = subscription.get_current_invoice()
@@ -547,12 +356,7 @@
 		self.assertEqual(invoice.apply_discount_on, "Grand Total")
 
 	def test_subscription_invoice_discount_amount(self):
-		subscription = frappe.new_doc("Subscription")
-		subscription.party_type = "Customer"
-		subscription.party = "_Test Customer"
-		subscription.additional_discount_amount = 11
-		subscription.append("plans", {"plan": "_Test Plan Name", "qty": 1})
-		subscription.save()
+		subscription = create_subscription(additional_discount_amount=11)
 		subscription.cancel_subscription()
 
 		invoice = subscription.get_current_invoice()
@@ -563,18 +367,13 @@
 	def test_prepaid_subscriptions(self):
 		# Create a non pre-billed subscription, processing should not create
 		# invoices.
-		subscription = frappe.new_doc("Subscription")
-		subscription.party_type = "Customer"
-		subscription.party = "_Test Customer"
-		subscription.append("plans", {"plan": "_Test Plan Name", "qty": 1})
-		subscription.save()
+		subscription = create_subscription()
 		subscription.process()
-
 		self.assertEqual(len(subscription.invoices), 0)
 
 		# Change the subscription type to prebilled and process it.
 		# Prepaid invoice should be generated
-		subscription.generate_invoice_at_period_start = True
+		subscription.generate_invoice_at = "Beginning of the current subscription period"
 		subscription.save()
 		subscription.process()
 
@@ -586,12 +385,9 @@
 		settings.prorate = 1
 		settings.save()
 
-		subscription = frappe.new_doc("Subscription")
-		subscription.party_type = "Customer"
-		subscription.party = "_Test Customer"
-		subscription.generate_invoice_at_period_start = True
-		subscription.append("plans", {"plan": "_Test Plan Name", "qty": 1})
-		subscription.save()
+		subscription = create_subscription(
+			generate_invoice_at="Beginning of the current subscription period"
+		)
 		subscription.process()
 		subscription.cancel_subscription()
 
@@ -609,9 +405,10 @@
 
 	def test_subscription_with_follow_calendar_months(self):
 		subscription = frappe.new_doc("Subscription")
+		subscription.company = "_Test Company"
 		subscription.party_type = "Supplier"
 		subscription.party = "_Test Supplier"
-		subscription.generate_invoice_at_period_start = 1
+		subscription.generate_invoice_at = "Beginning of the current subscription period"
 		subscription.follow_calendar_months = 1
 
 		# select subscription start date as "2018-01-15"
@@ -625,39 +422,33 @@
 		self.assertEqual(get_date_str(subscription.current_invoice_end), "2018-03-31")
 
 	def test_subscription_generate_invoice_past_due(self):
-		subscription = frappe.new_doc("Subscription")
-		subscription.party_type = "Supplier"
-		subscription.party = "_Test Supplier"
-		subscription.generate_invoice_at_period_start = 1
-		subscription.generate_new_invoices_past_due_date = 1
-		# select subscription start date as "2018-01-15"
-		subscription.start_date = "2018-01-01"
-		subscription.append("plans", {"plan": "_Test Plan Name 4", "qty": 1})
-		subscription.save()
+		subscription = create_subscription(
+			start_date="2018-01-01",
+			party_type="Supplier",
+			party="_Test Supplier",
+			generate_invoice_at="Beginning of the current subscription period",
+			generate_new_invoices_past_due_date=1,
+			plans=[{"plan": "_Test Plan Name 4", "qty": 1}],
+		)
 
-		frappe.flags.current_date = "2018-01-01"
 		# Process subscription and create first invoice
 		# Subscription status will be unpaid since due date has already passed
-		subscription.process()
+		subscription.process(posting_date="2018-01-01")
 		self.assertEqual(len(subscription.invoices), 1)
 		self.assertEqual(subscription.status, "Unpaid")
 
 		# Now the Subscription is unpaid
 		# Even then new invoice should be created as we have enabled `generate_new_invoices_past_due_date` in
 		# subscription and the interval between the subscriptions is 3 months
-		frappe.flags.current_date = "2018-04-01"
-		subscription.process()
+		subscription.process(posting_date="2018-04-01")
 		self.assertEqual(len(subscription.invoices), 2)
 
 	def test_subscription_without_generate_invoice_past_due(self):
-		subscription = frappe.new_doc("Subscription")
-		subscription.party_type = "Supplier"
-		subscription.party = "_Test Supplier"
-		subscription.generate_invoice_at_period_start = 1
-		# select subscription start date as "2018-01-15"
-		subscription.start_date = "2018-01-01"
-		subscription.append("plans", {"plan": "_Test Plan Name 4", "qty": 1})
-		subscription.save()
+		subscription = create_subscription(
+			start_date="2018-01-01",
+			generate_invoice_at="Beginning of the current subscription period",
+			plans=[{"plan": "_Test Plan Name 4", "qty": 1}],
+		)
 
 		# Process subscription and create first invoice
 		# Subscription status will be unpaid since due date has already passed
@@ -668,16 +459,13 @@
 		subscription.process()
 		self.assertEqual(len(subscription.invoices), 1)
 
-	def test_multicurrency_subscription(self):
-		subscription = frappe.new_doc("Subscription")
-		subscription.party_type = "Customer"
-		subscription.party = "_Test Subscription Customer"
-		subscription.generate_invoice_at_period_start = 1
-		subscription.company = "_Test Company"
-		# select subscription start date as "2018-01-15"
-		subscription.start_date = "2018-01-01"
-		subscription.append("plans", {"plan": "_Test Plan Multicurrency", "qty": 1})
-		subscription.save()
+	def test_multi_currency_subscription(self):
+		subscription = create_subscription(
+			start_date="2018-01-01",
+			generate_invoice_at="Beginning of the current subscription period",
+			plans=[{"plan": "_Test Plan Multicurrency", "qty": 1}],
+			party="_Test Subscription Customer",
+		)
 
 		subscription.process()
 		self.assertEqual(len(subscription.invoices), 1)
@@ -689,42 +477,135 @@
 
 	def test_subscription_recovery(self):
 		"""Test if Subscription recovers when start/end date run out of sync with created invoices."""
-		subscription = frappe.new_doc("Subscription")
-		subscription.party_type = "Customer"
-		subscription.party = "_Test Subscription Customer"
-		subscription.company = "_Test Company"
-		subscription.start_date = "2021-12-01"
-		subscription.generate_new_invoices_past_due_date = 1
-		subscription.append("plans", {"plan": "_Test Plan Name", "qty": 1})
-		subscription.submit_invoice = 0
-		subscription.save()
+		subscription = create_subscription(
+			start_date="2021-01-01",
+			submit_invoice=0,
+			generate_new_invoices_past_due_date=1,
+			party="_Test Subscription Customer",
+		)
 
 		# create invoices for the first two moths
-		frappe.flags.current_date = "2021-12-31"
-		subscription.process()
+		subscription.process(posting_date="2021-01-31")
 
-		frappe.flags.current_date = "2022-01-31"
-		subscription.process()
+		subscription.process(posting_date="2021-02-28")
 
 		self.assertEqual(len(subscription.invoices), 2)
 		self.assertEqual(
 			getdate(frappe.db.get_value("Sales Invoice", subscription.invoices[0].name, "from_date")),
-			getdate("2021-12-01"),
+			getdate("2021-01-01"),
 		)
 		self.assertEqual(
 			getdate(frappe.db.get_value("Sales Invoice", subscription.invoices[1].name, "from_date")),
-			getdate("2022-01-01"),
+			getdate("2021-02-01"),
 		)
 
 		# recreate most recent invoice
-		subscription.process()
+		subscription.process(posting_date="2022-01-31")
 
 		self.assertEqual(len(subscription.invoices), 2)
 		self.assertEqual(
 			getdate(frappe.db.get_value("Sales Invoice", subscription.invoices[0].name, "from_date")),
-			getdate("2021-12-01"),
+			getdate("2021-01-01"),
 		)
 		self.assertEqual(
 			getdate(frappe.db.get_value("Sales Invoice", subscription.invoices[1].name, "from_date")),
-			getdate("2022-01-01"),
+			getdate("2021-02-01"),
 		)
+
+	def test_subscription_invoice_generation_before_days(self):
+		subscription = create_subscription(
+			start_date="2023-01-01",
+			generate_invoice_at="Days before the current subscription period",
+			number_of_days=10,
+			generate_new_invoices_past_due_date=1,
+		)
+
+		subscription.process(posting_date="2022-12-22")
+		self.assertEqual(len(subscription.invoices), 1)
+
+		subscription.process(posting_date="2023-01-22")
+		self.assertEqual(len(subscription.invoices), 2)
+
+
+def make_plans():
+	create_plan(plan_name="_Test Plan Name", cost=900)
+	create_plan(plan_name="_Test Plan Name 2", cost=1999)
+	create_plan(
+		plan_name="_Test Plan Name 3", cost=1999, billing_interval="Day", billing_interval_count=14
+	)
+	create_plan(
+		plan_name="_Test Plan Name 4", cost=20000, billing_interval="Month", billing_interval_count=3
+	)
+	create_plan(
+		plan_name="_Test Plan Multicurrency", cost=50, billing_interval="Month", currency="USD"
+	)
+
+
+def create_plan(**kwargs):
+	if not frappe.db.exists("Subscription Plan", kwargs.get("plan_name")):
+		plan = frappe.new_doc("Subscription Plan")
+		plan.plan_name = kwargs.get("plan_name") or "_Test Plan Name"
+		plan.item = kwargs.get("item") or "_Test Non Stock Item"
+		plan.price_determination = kwargs.get("price_determination") or "Fixed Rate"
+		plan.cost = kwargs.get("cost") or 1000
+		plan.billing_interval = kwargs.get("billing_interval") or "Month"
+		plan.billing_interval_count = kwargs.get("billing_interval_count") or 1
+		plan.currency = kwargs.get("currency")
+		plan.insert()
+
+
+def create_parties():
+	if not frappe.db.exists("Supplier", "_Test Supplier"):
+		supplier = frappe.new_doc("Supplier")
+		supplier.supplier_name = "_Test Supplier"
+		supplier.supplier_group = "All Supplier Groups"
+		supplier.insert()
+
+	if not frappe.db.exists("Customer", "_Test Subscription Customer"):
+		customer = frappe.new_doc("Customer")
+		customer.customer_name = "_Test Subscription Customer"
+		customer.billing_currency = "USD"
+		customer.append(
+			"accounts", {"company": "_Test Company", "account": "_Test Receivable USD - _TC"}
+		)
+		customer.insert()
+
+
+def reset_settings():
+	settings = frappe.get_single("Subscription Settings")
+	settings.grace_period = 0
+	settings.cancel_after_grace = 0
+	settings.save()
+
+
+def create_subscription(**kwargs):
+	subscription = frappe.new_doc("Subscription")
+	subscription.party_type = (kwargs.get("party_type") or "Customer",)
+	subscription.company = kwargs.get("company") or "_Test Company"
+	subscription.party = kwargs.get("party") or "_Test Customer"
+	subscription.trial_period_start = kwargs.get("trial_period_start")
+	subscription.trial_period_end = kwargs.get("trial_period_end")
+	subscription.start_date = kwargs.get("start_date")
+	subscription.generate_invoice_at = kwargs.get("generate_invoice_at")
+	subscription.additional_discount_percentage = kwargs.get("additional_discount_percentage")
+	subscription.additional_discount_amount = kwargs.get("additional_discount_amount")
+	subscription.follow_calendar_months = kwargs.get("follow_calendar_months")
+	subscription.generate_new_invoices_past_due_date = kwargs.get(
+		"generate_new_invoices_past_due_date"
+	)
+	subscription.submit_invoice = kwargs.get("submit_invoice")
+	subscription.days_until_due = kwargs.get("days_until_due")
+	subscription.number_of_days = kwargs.get("number_of_days")
+
+	if not kwargs.get("plans"):
+		subscription.append("plans", {"plan": "_Test Plan Name", "qty": 1})
+	else:
+		for plan in kwargs.get("plans"):
+			subscription.append("plans", plan)
+
+	if kwargs.get("do_not_save"):
+		return subscription
+
+	subscription.save()
+
+	return subscription
diff --git a/erpnext/accounts/doctype/subscription_plan/subscription_plan.py b/erpnext/accounts/doctype/subscription_plan/subscription_plan.py
index f3acdc5..75223c2 100644
--- a/erpnext/accounts/doctype/subscription_plan/subscription_plan.py
+++ b/erpnext/accounts/doctype/subscription_plan/subscription_plan.py
@@ -57,18 +57,17 @@
 		prorate = frappe.db.get_single_value("Subscription Settings", "prorate")
 
 		if prorate:
-			prorate_factor = flt(
-				date_diff(start_date, get_first_day(start_date))
-				/ date_diff(get_last_day(start_date), get_first_day(start_date)),
-				1,
-			)
-
-			prorate_factor += flt(
-				date_diff(get_last_day(end_date), end_date)
-				/ date_diff(get_last_day(end_date), get_first_day(end_date)),
-				1,
-			)
-
-			cost -= plan.cost * prorate_factor
-
+			cost -= plan.cost * get_prorate_factor(start_date, end_date)
 		return cost
+
+
+def get_prorate_factor(start_date, end_date):
+	total_days_to_skip = date_diff(start_date, get_first_day(start_date))
+	total_days_in_month = int(get_last_day(start_date).strftime("%d"))
+	prorate_factor = flt(total_days_to_skip / total_days_in_month)
+
+	total_days_to_skip = date_diff(get_last_day(end_date), end_date)
+	total_days_in_month = int(get_last_day(end_date).strftime("%d"))
+	prorate_factor += flt(total_days_to_skip / total_days_in_month)
+
+	return prorate_factor
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 954b4e7..de2f9e7 100644
--- a/erpnext/accounts/doctype/tax_withholding_category/tax_withholding_category.py
+++ b/erpnext/accounts/doctype/tax_withholding_category/tax_withholding_category.py
@@ -271,9 +271,9 @@
 						net_total, limit_consumed, ldc.certificate_limit, ldc.rate, tax_details
 					)
 				else:
-					tax_amount = net_total * tax_details.rate / 100 if net_total > 0 else 0
+					tax_amount = net_total * tax_details.rate / 100
 			else:
-				tax_amount = net_total * tax_details.rate / 100 if net_total > 0 else 0
+				tax_amount = net_total * tax_details.rate / 100
 
 			# once tds is deducted, not need to add vouchers in the invoice
 			voucher_wise_amount = {}
diff --git a/erpnext/crm/doctype/linkedin_settings/__init__.py b/erpnext/accounts/doctype/unreconcile_payment_entries/__init__.py
similarity index 100%
copy from erpnext/crm/doctype/linkedin_settings/__init__.py
copy to erpnext/accounts/doctype/unreconcile_payment_entries/__init__.py
diff --git a/erpnext/accounts/doctype/unreconcile_payment_entries/unreconcile_payment_entries.json b/erpnext/accounts/doctype/unreconcile_payment_entries/unreconcile_payment_entries.json
new file mode 100644
index 0000000..42da669
--- /dev/null
+++ b/erpnext/accounts/doctype/unreconcile_payment_entries/unreconcile_payment_entries.json
@@ -0,0 +1,83 @@
+{
+ "actions": [],
+ "allow_rename": 1,
+ "creation": "2023-08-22 10:28:10.196712",
+ "doctype": "DocType",
+ "editable_grid": 1,
+ "engine": "InnoDB",
+ "field_order": [
+  "account",
+  "party_type",
+  "party",
+  "reference_doctype",
+  "reference_name",
+  "allocated_amount",
+  "account_currency",
+  "unlinked"
+ ],
+ "fields": [
+  {
+   "fieldname": "reference_name",
+   "fieldtype": "Dynamic Link",
+   "in_list_view": 1,
+   "label": "Reference Name",
+   "options": "reference_doctype"
+  },
+  {
+   "fieldname": "allocated_amount",
+   "fieldtype": "Currency",
+   "in_list_view": 1,
+   "label": "Allocated Amount",
+   "options": "account_currency"
+  },
+  {
+   "default": "0",
+   "fieldname": "unlinked",
+   "fieldtype": "Check",
+   "in_list_view": 1,
+   "label": "Unlinked",
+   "read_only": 1
+  },
+  {
+   "fieldname": "reference_doctype",
+   "fieldtype": "Link",
+   "in_list_view": 1,
+   "label": "Reference Type",
+   "options": "DocType"
+  },
+  {
+   "fieldname": "account",
+   "fieldtype": "Data",
+   "label": "Account"
+  },
+  {
+   "fieldname": "party_type",
+   "fieldtype": "Data",
+   "label": "Party Type"
+  },
+  {
+   "fieldname": "party",
+   "fieldtype": "Data",
+   "label": "Party"
+  },
+  {
+   "fieldname": "account_currency",
+   "fieldtype": "Link",
+   "label": "Account Currency",
+   "options": "Currency",
+   "read_only": 1
+  }
+ ],
+ "index_web_pages_for_search": 1,
+ "istable": 1,
+ "links": [],
+ "modified": "2023-09-05 09:33:28.620149",
+ "modified_by": "Administrator",
+ "module": "Accounts",
+ "name": "Unreconcile Payment Entries",
+ "owner": "Administrator",
+ "permissions": [],
+ "sort_field": "modified",
+ "sort_order": "DESC",
+ "states": []
+}
\ No newline at end of file
diff --git a/erpnext/accounts/doctype/unreconcile_payment_entries/unreconcile_payment_entries.py b/erpnext/accounts/doctype/unreconcile_payment_entries/unreconcile_payment_entries.py
new file mode 100644
index 0000000..c41545c
--- /dev/null
+++ b/erpnext/accounts/doctype/unreconcile_payment_entries/unreconcile_payment_entries.py
@@ -0,0 +1,9 @@
+# Copyright (c) 2023, Frappe Technologies Pvt. Ltd. and contributors
+# For license information, please see license.txt
+
+# import frappe
+from frappe.model.document import Document
+
+
+class UnreconcilePaymentEntries(Document):
+	pass
diff --git a/erpnext/crm/doctype/linkedin_settings/__init__.py b/erpnext/accounts/doctype/unreconcile_payments/__init__.py
similarity index 100%
rename from erpnext/crm/doctype/linkedin_settings/__init__.py
rename to erpnext/accounts/doctype/unreconcile_payments/__init__.py
diff --git a/erpnext/accounts/doctype/unreconcile_payments/test_unreconcile_payments.py b/erpnext/accounts/doctype/unreconcile_payments/test_unreconcile_payments.py
new file mode 100644
index 0000000..78e04bf
--- /dev/null
+++ b/erpnext/accounts/doctype/unreconcile_payments/test_unreconcile_payments.py
@@ -0,0 +1,316 @@
+# Copyright (c) 2023, Frappe Technologies Pvt. Ltd. and Contributors
+# See license.txt
+
+import frappe
+from frappe.tests.utils import FrappeTestCase
+from frappe.utils import today
+
+from erpnext.accounts.doctype.payment_entry.test_payment_entry import create_payment_entry
+from erpnext.accounts.doctype.sales_invoice.test_sales_invoice import create_sales_invoice
+from erpnext.accounts.test.accounts_mixin import AccountsTestMixin
+
+
+class TestUnreconcilePayments(AccountsTestMixin, FrappeTestCase):
+	def setUp(self):
+		self.create_company()
+		self.create_customer()
+		self.create_usd_receivable_account()
+		self.create_item()
+		self.clear_old_entries()
+
+	def tearDown(self):
+		frappe.db.rollback()
+
+	def create_sales_invoice(self, do_not_submit=False):
+		si = create_sales_invoice(
+			item=self.item,
+			company=self.company,
+			customer=self.customer,
+			debit_to=self.debit_to,
+			posting_date=today(),
+			parent_cost_center=self.cost_center,
+			cost_center=self.cost_center,
+			rate=100,
+			price_list_rate=100,
+			do_not_submit=do_not_submit,
+		)
+		return si
+
+	def create_payment_entry(self):
+		pe = create_payment_entry(
+			company=self.company,
+			payment_type="Receive",
+			party_type="Customer",
+			party=self.customer,
+			paid_from=self.debit_to,
+			paid_to=self.cash,
+			paid_amount=200,
+			save=True,
+		)
+		return pe
+
+	def test_01_unreconcile_invoice(self):
+		si1 = self.create_sales_invoice()
+		si2 = self.create_sales_invoice()
+
+		pe = self.create_payment_entry()
+		pe.append(
+			"references",
+			{"reference_doctype": si1.doctype, "reference_name": si1.name, "allocated_amount": 100},
+		)
+		pe.append(
+			"references",
+			{"reference_doctype": si2.doctype, "reference_name": si2.name, "allocated_amount": 100},
+		)
+		# Allocation payment against both invoices
+		pe.save().submit()
+
+		# Assert outstanding
+		[doc.reload() for doc in [si1, si2, pe]]
+		self.assertEqual(si1.outstanding_amount, 0)
+		self.assertEqual(si2.outstanding_amount, 0)
+		self.assertEqual(pe.unallocated_amount, 0)
+
+		unreconcile = frappe.get_doc(
+			{
+				"doctype": "Unreconcile Payments",
+				"company": self.company,
+				"voucher_type": pe.doctype,
+				"voucher_no": pe.name,
+			}
+		)
+		unreconcile.add_references()
+		self.assertEqual(len(unreconcile.allocations), 2)
+		allocations = [x.reference_name for x in unreconcile.allocations]
+		self.assertEquals([si1.name, si2.name], allocations)
+		# unreconcile si1
+		for x in unreconcile.allocations:
+			if x.reference_name != si1.name:
+				unreconcile.remove(x)
+		unreconcile.save().submit()
+
+		# Assert outstanding
+		[doc.reload() for doc in [si1, si2, pe]]
+		self.assertEqual(si1.outstanding_amount, 100)
+		self.assertEqual(si2.outstanding_amount, 0)
+		self.assertEqual(len(pe.references), 1)
+		self.assertEqual(pe.unallocated_amount, 100)
+
+	def test_02_unreconcile_one_payment_from_multi_payments(self):
+		"""
+		Scenario: 2 payments, both split against 2 different invoices
+		Unreconcile only one payment from one invoice
+		"""
+		si1 = self.create_sales_invoice()
+		si2 = self.create_sales_invoice()
+		pe1 = self.create_payment_entry()
+		pe1.paid_amount = 100
+		# Allocate payment against both invoices
+		pe1.append(
+			"references",
+			{"reference_doctype": si1.doctype, "reference_name": si1.name, "allocated_amount": 50},
+		)
+		pe1.append(
+			"references",
+			{"reference_doctype": si2.doctype, "reference_name": si2.name, "allocated_amount": 50},
+		)
+		pe1.save().submit()
+
+		pe2 = self.create_payment_entry()
+		pe2.paid_amount = 100
+		# Allocate payment against both invoices
+		pe2.append(
+			"references",
+			{"reference_doctype": si1.doctype, "reference_name": si1.name, "allocated_amount": 50},
+		)
+		pe2.append(
+			"references",
+			{"reference_doctype": si2.doctype, "reference_name": si2.name, "allocated_amount": 50},
+		)
+		pe2.save().submit()
+
+		# Assert outstanding and unallocated
+		[doc.reload() for doc in [si1, si2, pe1, pe2]]
+		self.assertEqual(si1.outstanding_amount, 0.0)
+		self.assertEqual(si2.outstanding_amount, 0.0)
+		self.assertEqual(pe1.unallocated_amount, 0.0)
+		self.assertEqual(pe2.unallocated_amount, 0.0)
+
+		unreconcile = frappe.get_doc(
+			{
+				"doctype": "Unreconcile Payments",
+				"company": self.company,
+				"voucher_type": pe2.doctype,
+				"voucher_no": pe2.name,
+			}
+		)
+		unreconcile.add_references()
+		self.assertEqual(len(unreconcile.allocations), 2)
+		allocations = [x.reference_name for x in unreconcile.allocations]
+		self.assertEquals([si1.name, si2.name], allocations)
+		# unreconcile si1 from pe2
+		for x in unreconcile.allocations:
+			if x.reference_name != si1.name:
+				unreconcile.remove(x)
+		unreconcile.save().submit()
+
+		# Assert outstanding and unallocated
+		[doc.reload() for doc in [si1, si2, pe1, pe2]]
+		self.assertEqual(si1.outstanding_amount, 50)
+		self.assertEqual(si2.outstanding_amount, 0)
+		self.assertEqual(len(pe1.references), 2)
+		self.assertEqual(len(pe2.references), 1)
+		self.assertEqual(pe1.unallocated_amount, 0)
+		self.assertEqual(pe2.unallocated_amount, 50)
+
+	def test_03_unreconciliation_on_multi_currency_invoice(self):
+		self.create_customer("_Test MC Customer USD", "USD")
+		si1 = self.create_sales_invoice(do_not_submit=True)
+		si1.currency = "USD"
+		si1.debit_to = self.debtors_usd
+		si1.conversion_rate = 80
+		si1.save().submit()
+
+		si2 = self.create_sales_invoice(do_not_submit=True)
+		si2.currency = "USD"
+		si2.debit_to = self.debtors_usd
+		si2.conversion_rate = 80
+		si2.save().submit()
+
+		pe = self.create_payment_entry()
+		pe.paid_from = self.debtors_usd
+		pe.paid_from_account_currency = "USD"
+		pe.source_exchange_rate = 75
+		pe.received_amount = 75 * 200
+		pe.save()
+		# Allocate payment against both invoices
+		pe.append(
+			"references",
+			{"reference_doctype": si1.doctype, "reference_name": si1.name, "allocated_amount": 100},
+		)
+		pe.append(
+			"references",
+			{"reference_doctype": si2.doctype, "reference_name": si2.name, "allocated_amount": 100},
+		)
+		pe.save().submit()
+
+		unreconcile = frappe.get_doc(
+			{
+				"doctype": "Unreconcile Payments",
+				"company": self.company,
+				"voucher_type": pe.doctype,
+				"voucher_no": pe.name,
+			}
+		)
+		unreconcile.add_references()
+		self.assertEqual(len(unreconcile.allocations), 2)
+		allocations = [x.reference_name for x in unreconcile.allocations]
+		self.assertEquals([si1.name, si2.name], allocations)
+		# unreconcile si1 from pe
+		for x in unreconcile.allocations:
+			if x.reference_name != si1.name:
+				unreconcile.remove(x)
+		unreconcile.save().submit()
+
+		# Assert outstanding and unallocated
+		[doc.reload() for doc in [si1, si2, pe]]
+		self.assertEqual(si1.outstanding_amount, 100)
+		self.assertEqual(si2.outstanding_amount, 0)
+		self.assertEqual(len(pe.references), 1)
+		self.assertEqual(pe.unallocated_amount, 100)
+
+		# Exc gain/loss JE should've been cancelled as well
+		self.assertEqual(
+			frappe.db.count(
+				"Journal Entry Account",
+				filters={"reference_type": si1.doctype, "reference_name": si1.name, "docstatus": 1},
+			),
+			0,
+		)
+
+	def test_04_unreconciliation_on_multi_currency_invoice(self):
+		"""
+		2 payments split against 2 foreign currency invoices
+		"""
+		self.create_customer("_Test MC Customer USD", "USD")
+		si1 = self.create_sales_invoice(do_not_submit=True)
+		si1.currency = "USD"
+		si1.debit_to = self.debtors_usd
+		si1.conversion_rate = 80
+		si1.save().submit()
+
+		si2 = self.create_sales_invoice(do_not_submit=True)
+		si2.currency = "USD"
+		si2.debit_to = self.debtors_usd
+		si2.conversion_rate = 80
+		si2.save().submit()
+
+		pe1 = self.create_payment_entry()
+		pe1.paid_from = self.debtors_usd
+		pe1.paid_from_account_currency = "USD"
+		pe1.source_exchange_rate = 75
+		pe1.received_amount = 75 * 100
+		pe1.save()
+		# Allocate payment against both invoices
+		pe1.append(
+			"references",
+			{"reference_doctype": si1.doctype, "reference_name": si1.name, "allocated_amount": 50},
+		)
+		pe1.append(
+			"references",
+			{"reference_doctype": si2.doctype, "reference_name": si2.name, "allocated_amount": 50},
+		)
+		pe1.save().submit()
+
+		pe2 = self.create_payment_entry()
+		pe2.paid_from = self.debtors_usd
+		pe2.paid_from_account_currency = "USD"
+		pe2.source_exchange_rate = 75
+		pe2.received_amount = 75 * 100
+		pe2.save()
+		# Allocate payment against both invoices
+		pe2.append(
+			"references",
+			{"reference_doctype": si1.doctype, "reference_name": si1.name, "allocated_amount": 50},
+		)
+		pe2.append(
+			"references",
+			{"reference_doctype": si2.doctype, "reference_name": si2.name, "allocated_amount": 50},
+		)
+		pe2.save().submit()
+
+		unreconcile = frappe.get_doc(
+			{
+				"doctype": "Unreconcile Payments",
+				"company": self.company,
+				"voucher_type": pe2.doctype,
+				"voucher_no": pe2.name,
+			}
+		)
+		unreconcile.add_references()
+		self.assertEqual(len(unreconcile.allocations), 2)
+		allocations = [x.reference_name for x in unreconcile.allocations]
+		self.assertEquals([si1.name, si2.name], allocations)
+		# unreconcile si1 from pe2
+		for x in unreconcile.allocations:
+			if x.reference_name != si1.name:
+				unreconcile.remove(x)
+		unreconcile.save().submit()
+
+		# Assert outstanding and unallocated
+		[doc.reload() for doc in [si1, si2, pe1, pe2]]
+		self.assertEqual(si1.outstanding_amount, 50)
+		self.assertEqual(si2.outstanding_amount, 0)
+		self.assertEqual(len(pe1.references), 2)
+		self.assertEqual(len(pe2.references), 1)
+		self.assertEqual(pe1.unallocated_amount, 0)
+		self.assertEqual(pe2.unallocated_amount, 50)
+
+		# Exc gain/loss JE from PE1 should be available
+		self.assertEqual(
+			frappe.db.count(
+				"Journal Entry Account",
+				filters={"reference_type": si1.doctype, "reference_name": si1.name, "docstatus": 1},
+			),
+			1,
+		)
diff --git a/erpnext/accounts/doctype/unreconcile_payments/unreconcile_payments.js b/erpnext/accounts/doctype/unreconcile_payments/unreconcile_payments.js
new file mode 100644
index 0000000..c522567
--- /dev/null
+++ b/erpnext/accounts/doctype/unreconcile_payments/unreconcile_payments.js
@@ -0,0 +1,41 @@
+// Copyright (c) 2023, Frappe Technologies Pvt. Ltd. and contributors
+// For license information, please see license.txt
+
+frappe.ui.form.on("Unreconcile Payments", {
+	refresh(frm) {
+		frm.set_query("voucher_type", function() {
+			return {
+				filters: {
+					name: ["in", ["Payment Entry", "Journal Entry"]]
+				}
+			}
+		});
+
+
+		frm.set_query("voucher_no", function(doc) {
+			return {
+				filters: {
+					company: doc.company,
+					docstatus: 1
+				}
+			}
+		});
+
+	},
+	get_allocations: function(frm) {
+		frm.clear_table("allocations");
+		frappe.call({
+			method: "get_allocations_from_payment",
+			doc: frm.doc,
+			callback: function(r) {
+				if (r.message) {
+					r.message.forEach(x => {
+						frm.add_child("allocations", x)
+					})
+					frm.refresh_fields();
+				}
+			}
+		})
+
+	}
+});
diff --git a/erpnext/accounts/doctype/unreconcile_payments/unreconcile_payments.json b/erpnext/accounts/doctype/unreconcile_payments/unreconcile_payments.json
new file mode 100644
index 0000000..f29e61b
--- /dev/null
+++ b/erpnext/accounts/doctype/unreconcile_payments/unreconcile_payments.json
@@ -0,0 +1,93 @@
+{
+ "actions": [],
+ "allow_rename": 1,
+ "autoname": "format:UNREC-{#####}",
+ "creation": "2023-08-22 10:26:34.421423",
+ "default_view": "List",
+ "doctype": "DocType",
+ "editable_grid": 1,
+ "engine": "InnoDB",
+ "field_order": [
+  "company",
+  "voucher_type",
+  "voucher_no",
+  "get_allocations",
+  "allocations",
+  "amended_from"
+ ],
+ "fields": [
+  {
+   "fieldname": "amended_from",
+   "fieldtype": "Link",
+   "label": "Amended From",
+   "no_copy": 1,
+   "options": "Unreconcile Payments",
+   "print_hide": 1,
+   "read_only": 1
+  },
+  {
+   "fieldname": "company",
+   "fieldtype": "Link",
+   "label": "Company",
+   "options": "Company"
+  },
+  {
+   "fieldname": "voucher_type",
+   "fieldtype": "Link",
+   "label": "Voucher Type",
+   "options": "DocType"
+  },
+  {
+   "fieldname": "voucher_no",
+   "fieldtype": "Dynamic Link",
+   "label": "Voucher No",
+   "options": "voucher_type"
+  },
+  {
+   "fieldname": "get_allocations",
+   "fieldtype": "Button",
+   "label": "Get Allocations"
+  },
+  {
+   "fieldname": "allocations",
+   "fieldtype": "Table",
+   "label": "Allocations",
+   "options": "Unreconcile Payment Entries"
+  }
+ ],
+ "index_web_pages_for_search": 1,
+ "is_submittable": 1,
+ "links": [],
+ "modified": "2023-08-28 17:42:50.261377",
+ "modified_by": "Administrator",
+ "module": "Accounts",
+ "name": "Unreconcile Payments",
+ "naming_rule": "Expression",
+ "owner": "Administrator",
+ "permissions": [
+  {
+   "create": 1,
+   "delete": 1,
+   "read": 1,
+   "role": "Accounts Manager",
+   "select": 1,
+   "share": 1,
+   "submit": 1,
+   "write": 1
+  },
+  {
+   "create": 1,
+   "delete": 1,
+   "read": 1,
+   "role": "Accounts User",
+   "select": 1,
+   "share": 1,
+   "submit": 1,
+   "write": 1
+  }
+ ],
+ "sort_field": "modified",
+ "sort_order": "DESC",
+ "states": [],
+ "track_changes": 1
+}
\ No newline at end of file
diff --git a/erpnext/accounts/doctype/unreconcile_payments/unreconcile_payments.py b/erpnext/accounts/doctype/unreconcile_payments/unreconcile_payments.py
new file mode 100644
index 0000000..4f9fb50
--- /dev/null
+++ b/erpnext/accounts/doctype/unreconcile_payments/unreconcile_payments.py
@@ -0,0 +1,158 @@
+# Copyright (c) 2023, Frappe Technologies Pvt. Ltd. and contributors
+# For license information, please see license.txt
+
+import frappe
+from frappe import _, qb
+from frappe.model.document import Document
+from frappe.query_builder import Criterion
+from frappe.query_builder.functions import Abs, Sum
+from frappe.utils.data import comma_and
+
+from erpnext.accounts.utils import (
+	cancel_exchange_gain_loss_journal,
+	unlink_ref_doc_from_payment_entries,
+	update_voucher_outstanding,
+)
+
+
+class UnreconcilePayments(Document):
+	def validate(self):
+		self.supported_types = ["Payment Entry", "Journal Entry"]
+		if not self.voucher_type in self.supported_types:
+			frappe.throw(_("Only {0} are supported").format(comma_and(self.supported_types)))
+
+	@frappe.whitelist()
+	def get_allocations_from_payment(self):
+		allocated_references = []
+		ple = qb.DocType("Payment Ledger Entry")
+		allocated_references = (
+			qb.from_(ple)
+			.select(
+				ple.account,
+				ple.party_type,
+				ple.party,
+				ple.against_voucher_type.as_("reference_doctype"),
+				ple.against_voucher_no.as_("reference_name"),
+				Abs(Sum(ple.amount_in_account_currency)).as_("allocated_amount"),
+				ple.account_currency,
+			)
+			.where(
+				(ple.docstatus == 1)
+				& (ple.voucher_type == self.voucher_type)
+				& (ple.voucher_no == self.voucher_no)
+				& (ple.voucher_no != ple.against_voucher_no)
+			)
+			.groupby(ple.against_voucher_type, ple.against_voucher_no)
+			.run(as_dict=True)
+		)
+
+		return allocated_references
+
+	def add_references(self):
+		allocations = self.get_allocations_from_payment()
+
+		for alloc in allocations:
+			self.append("allocations", alloc)
+
+	def on_submit(self):
+		# todo: more granular unreconciliation
+		for alloc in self.allocations:
+			doc = frappe.get_doc(alloc.reference_doctype, alloc.reference_name)
+			unlink_ref_doc_from_payment_entries(doc, self.voucher_no)
+			cancel_exchange_gain_loss_journal(doc, self.voucher_type, self.voucher_no)
+			update_voucher_outstanding(
+				alloc.reference_doctype, alloc.reference_name, alloc.account, alloc.party_type, alloc.party
+			)
+			frappe.db.set_value("Unreconcile Payment Entries", alloc.name, "unlinked", True)
+
+
+@frappe.whitelist()
+def doc_has_references(doctype: str = None, docname: str = None):
+	if doctype in ["Sales Invoice", "Purchase Invoice"]:
+		return frappe.db.count(
+			"Payment Ledger Entry",
+			filters={"delinked": 0, "against_voucher_no": docname, "amount": ["<", 0]},
+		)
+	else:
+		return frappe.db.count(
+			"Payment Ledger Entry",
+			filters={"delinked": 0, "voucher_no": docname, "against_voucher_no": ["!=", docname]},
+		)
+
+
+@frappe.whitelist()
+def get_linked_payments_for_doc(
+	company: str = None, doctype: str = None, docname: str = None
+) -> list:
+	if company and doctype and docname:
+		_dt = doctype
+		_dn = docname
+		ple = qb.DocType("Payment Ledger Entry")
+		if _dt in ["Sales Invoice", "Purchase Invoice"]:
+			criteria = [
+				(ple.company == company),
+				(ple.delinked == 0),
+				(ple.against_voucher_no == _dn),
+				(ple.amount < 0),
+			]
+
+			res = (
+				qb.from_(ple)
+				.select(
+					ple.company,
+					ple.voucher_type,
+					ple.voucher_no,
+					Abs(Sum(ple.amount_in_account_currency)).as_("allocated_amount"),
+					ple.account_currency,
+				)
+				.where(Criterion.all(criteria))
+				.groupby(ple.voucher_no, ple.against_voucher_no)
+				.having(qb.Field("allocated_amount") > 0)
+				.run(as_dict=True)
+			)
+			return res
+		else:
+			criteria = [
+				(ple.company == company),
+				(ple.delinked == 0),
+				(ple.voucher_no == _dn),
+				(ple.against_voucher_no != _dn),
+			]
+
+			query = (
+				qb.from_(ple)
+				.select(
+					ple.company,
+					ple.against_voucher_type.as_("voucher_type"),
+					ple.against_voucher_no.as_("voucher_no"),
+					Abs(Sum(ple.amount_in_account_currency)).as_("allocated_amount"),
+					ple.account_currency,
+				)
+				.where(Criterion.all(criteria))
+				.groupby(ple.against_voucher_no)
+			)
+			res = query.run(as_dict=True)
+			return res
+	return []
+
+
+@frappe.whitelist()
+def create_unreconcile_doc_for_selection(selections=None):
+	if selections:
+		selections = frappe.json.loads(selections)
+		# assuming each row is a unique voucher
+		for row in selections:
+			unrecon = frappe.new_doc("Unreconcile Payments")
+			unrecon.company = row.get("company")
+			unrecon.voucher_type = row.get("voucher_type")
+			unrecon.voucher_no = row.get("voucher_no")
+			unrecon.add_references()
+
+			# remove unselected references
+			unrecon.allocations = [
+				x
+				for x in unrecon.allocations
+				if x.reference_doctype == row.get("against_voucher_type")
+				and x.reference_name == row.get("against_voucher_no")
+			]
+			unrecon.save().submit()
diff --git a/erpnext/accounts/general_ledger.py b/erpnext/accounts/general_ledger.py
index 3803836..d496778 100644
--- a/erpnext/accounts/general_ledger.py
+++ b/erpnext/accounts/general_ledger.py
@@ -539,6 +539,10 @@
 		"Company", company, ["round_off_account", "round_off_cost_center"]
 	) or [None, None]
 
+	# Use expense account as fallback
+	if not round_off_account:
+		round_off_account = frappe.get_cached_value("Company", company, "default_expense_account")
+
 	meta = frappe.get_meta(voucher_type)
 
 	# Give first preference to parent cost center for round off GLE
diff --git a/erpnext/accounts/party.py b/erpnext/accounts/party.py
index 8bd7b5a..b99bb83 100644
--- a/erpnext/accounts/party.py
+++ b/erpnext/accounts/party.py
@@ -409,7 +409,7 @@
 		if (account and account_currency != existing_gle_currency) or not account:
 			account = get_party_gle_account(party_type, party, company)
 
-	if include_advance and party_type in ["Customer", "Supplier"]:
+	if include_advance and party_type in ["Customer", "Supplier", "Student"]:
 		advance_account = get_party_advance_account(party_type, party, company)
 		if advance_account:
 			return [account, advance_account]
diff --git a/erpnext/accounts/report/accounts_payable/accounts_payable.js b/erpnext/accounts/report/accounts_payable/accounts_payable.js
index e1a30a4..9c73cbb 100644
--- a/erpnext/accounts/report/accounts_payable/accounts_payable.js
+++ b/erpnext/accounts/report/accounts_payable/accounts_payable.js
@@ -38,24 +38,6 @@
 			}
 		},
 		{
-			"fieldname": "supplier",
-			"label": __("Supplier"),
-			"fieldtype": "Link",
-			"options": "Supplier",
-			on_change: () => {
-				var supplier = frappe.query_report.get_filter_value('supplier');
-				if (supplier) {
-					frappe.db.get_value('Supplier', supplier, "tax_id", function(value) {
-						frappe.query_report.set_filter_value('tax_id', value["tax_id"]);
-					});
-				} else {
-					frappe.query_report.set_filter_value('tax_id', "");
-				}
-
-				frappe.query_report.refresh();
-			}
-		},
-		{
 			"fieldname": "party_account",
 			"label": __("Payable Account"),
 			"fieldtype": "Link",
@@ -113,10 +95,34 @@
 			"options": "Payment Terms Template"
 		},
 		{
+			"fieldname":"party_type",
+			"label": __("Party Type"),
+			"fieldtype": "Autocomplete",
+			options: get_party_type_options(),
+			on_change: function() {
+				frappe.query_report.set_filter_value('party', "");
+				frappe.query_report.toggle_filter_display('supplier_group', frappe.query_report.get_filter_value('party_type') !== "Supplier");
+			}
+		},
+		{
+			"fieldname":"party",
+			"label": __("Party"),
+			"fieldtype": "MultiSelectList",
+			get_data: function(txt) {
+				if (!frappe.query_report.filters) return;
+
+				let party_type = frappe.query_report.get_filter_value('party_type');
+				if (!party_type) return;
+
+				return frappe.db.get_link_options(party_type, txt);
+			},
+		},
+		{
 			"fieldname": "supplier_group",
 			"label": __("Supplier Group"),
 			"fieldtype": "Link",
-			"options": "Supplier Group"
+			"options": "Supplier Group",
+			"hidden": 1
 		},
 		{
 			"fieldname": "group_by_party",
@@ -134,12 +140,6 @@
 			"fieldtype": "Check",
 		},
 		{
-			"fieldname": "tax_id",
-			"label": __("Tax Id"),
-			"fieldtype": "Data",
-			"hidden": 1
-		},
-		{
 			"fieldname": "show_future_payments",
 			"label": __("Show Future Payments"),
 			"fieldtype": "Check",
@@ -164,3 +164,15 @@
 }
 
 erpnext.utils.add_dimensions('Accounts Payable', 9);
+
+function get_party_type_options() {
+	let options = [];
+	frappe.db.get_list(
+		"Party Type", {filters:{"account_type": "Payable"}, fields:['name']}
+	).then((res) => {
+		res.forEach((party_type) => {
+			options.push(party_type.name);
+		});
+	});
+	return options;
+}
\ No newline at end of file
diff --git a/erpnext/accounts/report/accounts_payable/test_accounts_payable.py b/erpnext/accounts/report/accounts_payable/test_accounts_payable.py
new file mode 100644
index 0000000..9f03d92
--- /dev/null
+++ b/erpnext/accounts/report/accounts_payable/test_accounts_payable.py
@@ -0,0 +1,67 @@
+import unittest
+
+import frappe
+from frappe.tests.utils import FrappeTestCase, change_settings
+from frappe.utils import add_days, flt, getdate, today
+
+from erpnext import get_default_cost_center
+from erpnext.accounts.doctype.payment_entry.payment_entry import get_payment_entry
+from erpnext.accounts.doctype.purchase_invoice.test_purchase_invoice import make_purchase_invoice
+from erpnext.accounts.doctype.sales_invoice.test_sales_invoice import create_sales_invoice
+from erpnext.accounts.report.accounts_payable.accounts_payable import execute
+from erpnext.accounts.test.accounts_mixin import AccountsTestMixin
+from erpnext.selling.doctype.sales_order.test_sales_order import make_sales_order
+
+
+class TestAccountsReceivable(AccountsTestMixin, FrappeTestCase):
+	def setUp(self):
+		self.create_company()
+		self.create_customer()
+		self.create_item()
+		self.create_supplier(currency="USD", supplier_name="Test Supplier2")
+		self.create_usd_payable_account()
+
+	def tearDown(self):
+		frappe.db.rollback()
+
+	def test_accounts_payable_for_foreign_currency_supplier(self):
+		pi = self.create_purchase_invoice(do_not_submit=True)
+		pi.currency = "USD"
+		pi.conversion_rate = 80
+		pi.credit_to = self.creditors_usd
+		pi = pi.save().submit()
+
+		filters = {
+			"company": self.company,
+			"party_type": "Supplier",
+			"party": [self.supplier],
+			"report_date": today(),
+			"range1": 30,
+			"range2": 60,
+			"range3": 90,
+			"range4": 120,
+		}
+
+		data = execute(filters)
+		self.assertEqual(data[1][0].get("outstanding"), 300)
+		self.assertEqual(data[1][0].get("currency"), "USD")
+
+	def create_purchase_invoice(self, do_not_submit=False):
+		frappe.set_user("Administrator")
+		pi = make_purchase_invoice(
+			item=self.item,
+			company=self.company,
+			supplier=self.supplier,
+			is_return=False,
+			update_stock=False,
+			posting_date=frappe.utils.datetime.date(2021, 5, 1),
+			do_not_save=1,
+			rate=300,
+			price_list_rate=300,
+			qty=1,
+		)
+
+		pi = pi.save()
+		if not do_not_submit:
+			pi = pi.submit()
+		return pi
diff --git a/erpnext/accounts/report/accounts_payable_summary/accounts_payable_summary.js b/erpnext/accounts/report/accounts_payable_summary/accounts_payable_summary.js
index ea20072..9e575e6 100644
--- a/erpnext/accounts/report/accounts_payable_summary/accounts_payable_summary.js
+++ b/erpnext/accounts/report/accounts_payable_summary/accounts_payable_summary.js
@@ -72,10 +72,27 @@
 			}
 		},
 		{
-			"fieldname":"supplier",
-			"label": __("Supplier"),
-			"fieldtype": "Link",
-			"options": "Supplier"
+			"fieldname":"party_type",
+			"label": __("Party Type"),
+			"fieldtype": "Autocomplete",
+			options: get_party_type_options(),
+			on_change: function() {
+				frappe.query_report.set_filter_value('party', "");
+				frappe.query_report.toggle_filter_display('supplier_group', frappe.query_report.get_filter_value('party_type') !== "Supplier");
+			}
+		},
+		{
+			"fieldname":"party",
+			"label": __("Party"),
+			"fieldtype": "MultiSelectList",
+			get_data: function(txt) {
+				if (!frappe.query_report.filters) return;
+
+				let party_type = frappe.query_report.get_filter_value('party_type');
+				if (!party_type) return;
+
+				return frappe.db.get_link_options(party_type, txt);
+			},
 		},
 		{
 			"fieldname":"payment_terms_template",
@@ -105,3 +122,15 @@
 }
 
 erpnext.utils.add_dimensions('Accounts Payable Summary', 9);
+
+function get_party_type_options() {
+	let options = [];
+	frappe.db.get_list(
+		"Party Type", {filters:{"account_type": "Payable"}, fields:['name']}
+	).then((res) => {
+		res.forEach((party_type) => {
+			options.push(party_type.name);
+		});
+	});
+	return options;
+}
\ No newline at end of file
diff --git a/erpnext/accounts/report/accounts_receivable/accounts_receivable.js b/erpnext/accounts/report/accounts_receivable/accounts_receivable.js
index 0b4e577..1073be0 100644
--- a/erpnext/accounts/report/accounts_receivable/accounts_receivable.js
+++ b/erpnext/accounts/report/accounts_receivable/accounts_receivable.js
@@ -1,6 +1,8 @@
 // Copyright (c) 2015, Frappe Technologies Pvt. Ltd. and Contributors
 // License: GNU General Public License v3. See license.txt
 
+frappe.provide("erpnext.utils");
+
 frappe.query_reports["Accounts Receivable"] = {
 	"filters": [
 		{
@@ -38,35 +40,29 @@
 			}
 		},
 		{
-			"fieldname": "customer",
-			"label": __("Customer"),
-			"fieldtype": "Link",
-			"options": "Customer",
-			on_change: () => {
-				var customer = frappe.query_report.get_filter_value('customer');
-				var company = frappe.query_report.get_filter_value('company');
-				if (customer) {
-					frappe.db.get_value('Customer', customer, ["tax_id", "customer_name", "payment_terms"], function(value) {
-						frappe.query_report.set_filter_value('tax_id', value["tax_id"]);
-						frappe.query_report.set_filter_value('customer_name', value["customer_name"]);
-						frappe.query_report.set_filter_value('payment_terms', value["payment_terms"]);
-					});
-
-					frappe.db.get_value('Customer Credit Limit', {'parent': customer, 'company': company},
-						["credit_limit"], function(value) {
-						if (value) {
-							frappe.query_report.set_filter_value('credit_limit', value["credit_limit"]);
-						}
-					}, "Customer");
-				} else {
-					frappe.query_report.set_filter_value('tax_id', "");
-					frappe.query_report.set_filter_value('customer_name', "");
-					frappe.query_report.set_filter_value('credit_limit', "");
-					frappe.query_report.set_filter_value('payment_terms', "");
-				}
+			"fieldname":"party_type",
+			"label": __("Party Type"),
+			"fieldtype": "Autocomplete",
+			options: get_party_type_options(),
+			on_change: function() {
+				frappe.query_report.set_filter_value('party', "");
+				frappe.query_report.toggle_filter_display('customer_group', frappe.query_report.get_filter_value('party_type') !== "Customer");
 			}
 		},
 		{
+			"fieldname":"party",
+			"label": __("Party"),
+			"fieldtype": "MultiSelectList",
+			get_data: function(txt) {
+				if (!frappe.query_report.filters) return;
+
+				let party_type = frappe.query_report.get_filter_value('party_type');
+				if (!party_type) return;
+
+				return frappe.db.get_link_options(party_type, txt);
+			},
+		},
+		{
 			"fieldname": "party_account",
 			"label": __("Receivable Account"),
 			"fieldtype": "Link",
@@ -173,33 +169,9 @@
 			"fieldtype": "Check",
 		},
 		{
-			"fieldname": "tax_id",
-			"label": __("Tax Id"),
-			"fieldtype": "Data",
-			"hidden": 1
-		},
-		{
 			"fieldname": "show_remarks",
 			"label": __("Show Remarks"),
 			"fieldtype": "Check",
-		},
-		{
-			"fieldname": "customer_name",
-			"label": __("Customer Name"),
-			"fieldtype": "Data",
-			"hidden": 1
-		},
-		{
-			"fieldname": "payment_terms",
-			"label": __("Payment Tems"),
-			"fieldtype": "Data",
-			"hidden": 1
-		},
-		{
-			"fieldname": "credit_limit",
-			"label": __("Credit Limit"),
-			"fieldtype": "Currency",
-			"hidden": 1
 		}
 	],
 
@@ -221,3 +193,16 @@
 }
 
 erpnext.utils.add_dimensions('Accounts Receivable', 9);
+
+
+function get_party_type_options() {
+	let options = [];
+	frappe.db.get_list(
+		"Party Type", {filters:{"account_type": "Receivable"}, fields:['name']}
+	).then((res) => {
+		res.forEach((party_type) => {
+			options.push(party_type.name);
+		});
+	});
+	return options;
+}
\ No newline at end of file
diff --git a/erpnext/accounts/report/accounts_receivable/accounts_receivable.py b/erpnext/accounts/report/accounts_receivable/accounts_receivable.py
index 751063a..e3b671f 100755
--- a/erpnext/accounts/report/accounts_receivable/accounts_receivable.py
+++ b/erpnext/accounts/report/accounts_receivable/accounts_receivable.py
@@ -211,11 +211,10 @@
 			return
 
 		# amount in "Party Currency", if its supplied. If not, amount in company currency
-		for party_type in self.party_type:
-			if self.filters.get(scrub(party_type)):
-				amount = ple.amount_in_account_currency
-			else:
-				amount = ple.amount
+		if self.filters.get("party_type") and self.filters.get("party"):
+			amount = ple.amount_in_account_currency
+		else:
+			amount = ple.amount
 		amount_in_account_currency = ple.amount_in_account_currency
 
 		# update voucher
@@ -426,10 +425,9 @@
 		# customer / supplier name
 		party_details = self.get_party_details(row.party) or {}
 		row.update(party_details)
-		for party_type in self.party_type:
-			if self.filters.get(scrub(party_type)):
-				row.currency = row.account_currency
-				break
+
+		if self.filters.get("party_type") and self.filters.get("party"):
+			row.currency = row.account_currency
 		else:
 			row.currency = self.company_currency
 
@@ -469,6 +467,10 @@
 		original_row = frappe._dict(row)
 		row.payment_terms = []
 
+		# Cr Note's don't have Payment Terms
+		if not payment_terms_details:
+			return
+
 		# Advance allocated during invoicing is not considered in payment terms
 		# Deduct that from paid amount pre allocation
 		row.paid -= flt(payment_terms_details[0].total_advance)
@@ -765,16 +767,14 @@
 	def prepare_conditions(self):
 		self.qb_selection_filter = []
 		self.or_filters = []
+
 		for party_type in self.party_type:
-			party_type_field = scrub(party_type)
-			self.or_filters.append(self.ple.party_type == party_type)
+			self.add_common_filters()
 
-			self.add_common_filters(party_type_field=party_type_field)
-
-			if party_type_field == "customer":
+			if self.account_type == "Receivable":
 				self.add_customer_filters()
 
-			elif party_type_field == "supplier":
+			elif self.account_type == "Payable":
 				self.add_supplier_filters()
 
 		if self.filters.cost_center:
@@ -790,15 +790,18 @@
 		]
 		self.qb_selection_filter.append(self.ple.cost_center.isin(cost_center_list))
 
-	def add_common_filters(self, party_type_field):
+	def add_common_filters(self):
 		if self.filters.company:
 			self.qb_selection_filter.append(self.ple.company == self.filters.company)
 
 		if self.filters.finance_book:
 			self.qb_selection_filter.append(self.ple.finance_book == self.filters.finance_book)
 
-		if self.filters.get(party_type_field):
-			self.qb_selection_filter.append(self.ple.party == self.filters.get(party_type_field))
+		if self.filters.get("party_type"):
+			self.qb_selection_filter.append(self.filters.party_type == self.ple.party_type)
+
+		if self.filters.get("party"):
+			self.qb_selection_filter.append(self.ple.party.isin(self.filters.party))
 
 		if self.filters.party_account:
 			self.qb_selection_filter.append(self.ple.account == self.filters.party_account)
@@ -960,6 +963,20 @@
 				fieldtype="Link",
 				options="Contact",
 			)
+		if self.filters.party_type == "Customer":
+			self.add_column(
+				_("Customer Name"),
+				fieldname="customer_name",
+				fieldtype="Link",
+				options="Customer",
+			)
+		elif self.filters.party_type == "Supplier":
+			self.add_column(
+				_("Supplier Name"),
+				fieldname="supplier_name",
+				fieldtype="Link",
+				options="Supplier",
+			)
 
 		self.add_column(label=_("Cost Center"), fieldname="cost_center", fieldtype="Data")
 		self.add_column(label=_("Voucher Type"), fieldname="voucher_type", fieldtype="Data")
diff --git a/erpnext/accounts/report/accounts_receivable/test_accounts_receivable.py b/erpnext/accounts/report/accounts_receivable/test_accounts_receivable.py
index 6f1889b..4307689 100644
--- a/erpnext/accounts/report/accounts_receivable/test_accounts_receivable.py
+++ b/erpnext/accounts/report/accounts_receivable/test_accounts_receivable.py
@@ -8,20 +8,17 @@
 from erpnext.accounts.doctype.payment_entry.payment_entry import get_payment_entry
 from erpnext.accounts.doctype.sales_invoice.test_sales_invoice import create_sales_invoice
 from erpnext.accounts.report.accounts_receivable.accounts_receivable import execute
+from erpnext.accounts.test.accounts_mixin import AccountsTestMixin
 from erpnext.selling.doctype.sales_order.test_sales_order import make_sales_order
 
 
-class TestAccountsReceivable(FrappeTestCase):
+class TestAccountsReceivable(AccountsTestMixin, FrappeTestCase):
 	def setUp(self):
-		frappe.db.sql("delete from `tabSales Invoice` where company='_Test Company 2'")
-		frappe.db.sql("delete from `tabSales Order` where company='_Test Company 2'")
-		frappe.db.sql("delete from `tabPayment Entry` where company='_Test Company 2'")
-		frappe.db.sql("delete from `tabGL Entry` where company='_Test Company 2'")
-		frappe.db.sql("delete from `tabPayment Ledger Entry` where company='_Test Company 2'")
-		frappe.db.sql("delete from `tabJournal Entry` where company='_Test Company 2'")
-		frappe.db.sql("delete from `tabExchange Rate Revaluation` where company='_Test Company 2'")
-
-		self.create_usd_account()
+		self.create_company()
+		self.create_customer()
+		self.create_item()
+		self.create_usd_receivable_account()
+		self.clear_old_entries()
 
 	def tearDown(self):
 		frappe.db.rollback()
@@ -49,29 +46,84 @@
 			debtors_usd.account_type = debtors.account_type
 			self.debtors_usd = debtors_usd.save().name
 
+	def create_sales_invoice(self, no_payment_schedule=False, do_not_submit=False):
+		frappe.set_user("Administrator")
+		si = create_sales_invoice(
+			item=self.item,
+			company=self.company,
+			customer=self.customer,
+			debit_to=self.debit_to,
+			posting_date=today(),
+			parent_cost_center=self.cost_center,
+			cost_center=self.cost_center,
+			rate=100,
+			price_list_rate=100,
+			do_not_save=1,
+		)
+		if not no_payment_schedule:
+			si.append(
+				"payment_schedule",
+				dict(due_date=getdate(add_days(today(), 30)), invoice_portion=30.00, payment_amount=30),
+			)
+			si.append(
+				"payment_schedule",
+				dict(due_date=getdate(add_days(today(), 60)), invoice_portion=50.00, payment_amount=50),
+			)
+			si.append(
+				"payment_schedule",
+				dict(due_date=getdate(add_days(today(), 90)), invoice_portion=20.00, payment_amount=20),
+			)
+		si = si.save()
+		if not do_not_submit:
+			si = si.submit()
+		return si
+
+	def create_payment_entry(self, docname):
+		pe = get_payment_entry("Sales Invoice", docname, bank_account=self.cash, party_amount=40)
+		pe.paid_from = self.debit_to
+		pe.insert()
+		pe.submit()
+
+	def create_credit_note(self, docname):
+		credit_note = create_sales_invoice(
+			company=self.company,
+			customer=self.customer,
+			item=self.item,
+			qty=-1,
+			debit_to=self.debit_to,
+			cost_center=self.cost_center,
+			is_return=1,
+			return_against=docname,
+		)
+
+		return credit_note
+
 	def test_accounts_receivable(self):
 		filters = {
-			"company": "_Test Company 2",
+			"company": self.company,
 			"based_on_payment_terms": 1,
 			"report_date": today(),
 			"range1": 30,
 			"range2": 60,
 			"range3": 90,
 			"range4": 120,
+			"show_remarks": True,
 		}
 
 		# check invoice grand total and invoiced column's value for 3 payment terms
-		name = make_sales_invoice().name
+		si = self.create_sales_invoice()
+		name = si.name
+
 		report = execute(filters)
 
-		expected_data = [[100, 30], [100, 50], [100, 20]]
+		expected_data = [[100, 30, "No Remarks"], [100, 50, "No Remarks"], [100, 20, "No Remarks"]]
 
 		for i in range(3):
 			row = report[1][i - 1]
-			self.assertEqual(expected_data[i - 1], [row.invoice_grand_total, row.invoiced])
+			self.assertEqual(expected_data[i - 1], [row.invoice_grand_total, row.invoiced, row.remarks])
 
 		# check invoice grand total, invoiced, paid and outstanding column's value after payment
-		make_payment(name)
+		self.create_payment_entry(si.name)
 		report = execute(filters)
 
 		expected_data_after_payment = [[100, 50, 10, 40], [100, 20, 0, 20]]
@@ -84,10 +136,10 @@
 			)
 
 		# check invoice grand total, invoiced, paid and outstanding column's value after credit note
-		make_credit_note(name)
+		self.create_credit_note(si.name)
 		report = execute(filters)
 
-		expected_data_after_credit_note = [100, 0, 0, 40, -40, "Debtors - _TC2"]
+		expected_data_after_credit_note = [100, 0, 0, 40, -40, self.debit_to]
 
 		row = report[1][0]
 		self.assertEqual(
@@ -108,21 +160,20 @@
 		"""
 
 		so = make_sales_order(
-			company="_Test Company 2",
-			customer="_Test Customer 2",
-			warehouse="Finished Goods - _TC2",
-			currency="EUR",
-			debit_to="Debtors - _TC2",
-			income_account="Sales - _TC2",
-			expense_account="Cost of Goods Sold - _TC2",
-			cost_center="Main - _TC2",
+			company=self.company,
+			customer=self.customer,
+			warehouse=self.warehouse,
+			debit_to=self.debit_to,
+			income_account=self.income_account,
+			expense_account=self.expense_account,
+			cost_center=self.cost_center,
 		)
 
 		pe = get_payment_entry(so.doctype, so.name)
 		pe = pe.save().submit()
 
 		filters = {
-			"company": "_Test Company 2",
+			"company": self.company,
 			"based_on_payment_terms": 0,
 			"report_date": today(),
 			"range1": 30,
@@ -147,34 +198,32 @@
 		)
 
 	@change_settings(
-		"Accounts Settings", {"allow_multi_currency_invoices_against_single_party_account": 1}
+		"Accounts Settings",
+		{"allow_multi_currency_invoices_against_single_party_account": 1, "allow_stale": 0},
 	)
 	def test_exchange_revaluation_for_party(self):
 		"""
-		Exchange Revaluation for party on Receivable/Payable shoule be included
+		Exchange Revaluation for party on Receivable/Payable should be included
 		"""
 
-		company = "_Test Company 2"
-		customer = "_Test Customer 2"
-
 		# Using Exchange Gain/Loss account for unrealized as well.
-		company_doc = frappe.get_doc("Company", company)
+		company_doc = frappe.get_doc("Company", self.company)
 		company_doc.unrealized_exchange_gain_loss_account = company_doc.exchange_gain_loss_account
 		company_doc.save()
 
-		si = make_sales_invoice(no_payment_schedule=True, do_not_submit=True)
+		si = self.create_sales_invoice(no_payment_schedule=True, do_not_submit=True)
 		si.currency = "USD"
-		si.conversion_rate = 0.90
+		si.conversion_rate = 80
 		si.debit_to = self.debtors_usd
 		si = si.save().submit()
 
 		# Exchange Revaluation
 		err = frappe.new_doc("Exchange Rate Revaluation")
-		err.company = company
+		err.company = self.company
 		err.posting_date = today()
 		accounts = err.get_accounts_data()
 		err.extend("accounts", accounts)
-		err.accounts[0].new_exchange_rate = 0.95
+		err.accounts[0].new_exchange_rate = 85
 		row = err.accounts[0]
 		row.new_balance_in_base_currency = flt(
 			row.new_exchange_rate * flt(row.balance_in_account_currency)
@@ -189,7 +238,7 @@
 		je = je.submit()
 
 		filters = {
-			"company": company,
+			"company": self.company,
 			"report_date": today(),
 			"range1": 30,
 			"range2": 60,
@@ -198,7 +247,7 @@
 		}
 		report = execute(filters)
 
-		expected_data_for_err = [0, -5, 0, 5]
+		expected_data_for_err = [0, -500, 0, 500]
 		row = [x for x in report[1] if x.voucher_type == je.doctype and x.voucher_no == je.name][0]
 		self.assertEqual(
 			expected_data_for_err,
@@ -214,46 +263,43 @@
 		"""
 		Payment against credit/debit note should be considered against the parent invoice
 		"""
-		company = "_Test Company 2"
-		customer = "_Test Customer 2"
 
-		si1 = make_sales_invoice()
+		si1 = self.create_sales_invoice()
 
-		pe = get_payment_entry("Sales Invoice", si1.name, bank_account="Cash - _TC2")
-		pe.paid_from = "Debtors - _TC2"
+		pe = get_payment_entry(si1.doctype, si1.name, bank_account=self.cash)
+		pe.paid_from = self.debit_to
 		pe.insert()
 		pe.submit()
 
-		cr_note = make_credit_note(si1.name)
+		cr_note = self.create_credit_note(si1.name)
 
-		si2 = make_sales_invoice()
+		si2 = self.create_sales_invoice()
 
 		# manually link cr_note with si2 using journal entry
 		je = frappe.new_doc("Journal Entry")
-		je.company = company
+		je.company = self.company
 		je.voucher_type = "Credit Note"
 		je.posting_date = today()
 
-		debit_account = "Debtors - _TC2"
 		debit_entry = {
-			"account": debit_account,
+			"account": self.debit_to,
 			"party_type": "Customer",
-			"party": customer,
+			"party": self.customer,
 			"debit": 100,
 			"debit_in_account_currency": 100,
 			"reference_type": cr_note.doctype,
 			"reference_name": cr_note.name,
-			"cost_center": "Main - _TC2",
+			"cost_center": self.cost_center,
 		}
 		credit_entry = {
-			"account": debit_account,
+			"account": self.debit_to,
 			"party_type": "Customer",
-			"party": customer,
+			"party": self.customer,
 			"credit": 100,
 			"credit_in_account_currency": 100,
 			"reference_type": si2.doctype,
 			"reference_name": si2.name,
-			"cost_center": "Main - _TC2",
+			"cost_center": self.cost_center,
 		}
 
 		je.append("accounts", debit_entry)
@@ -261,7 +307,7 @@
 		je = je.save().submit()
 
 		filters = {
-			"company": company,
+			"company": self.company,
 			"report_date": today(),
 			"range1": 30,
 			"range2": 60,
@@ -271,64 +317,329 @@
 		report = execute(filters)
 		self.assertEqual(report[1], [])
 
+	def test_group_by_party(self):
+		si1 = self.create_sales_invoice(do_not_submit=True)
+		si1.posting_date = add_days(today(), -1)
+		si1.save().submit()
+		si2 = self.create_sales_invoice(do_not_submit=True)
+		si2.items[0].rate = 85
+		si2.save().submit()
 
-def make_sales_invoice(no_payment_schedule=False, do_not_submit=False):
-	frappe.set_user("Administrator")
+		filters = {
+			"company": self.company,
+			"report_date": today(),
+			"range1": 30,
+			"range2": 60,
+			"range3": 90,
+			"range4": 120,
+			"group_by_party": True,
+		}
+		report = execute(filters)[1]
+		self.assertEqual(len(report), 5)
 
-	si = create_sales_invoice(
-		company="_Test Company 2",
-		customer="_Test Customer 2",
-		currency="EUR",
-		warehouse="Finished Goods - _TC2",
-		debit_to="Debtors - _TC2",
-		income_account="Sales - _TC2",
-		expense_account="Cost of Goods Sold - _TC2",
-		cost_center="Main - _TC2",
-		do_not_save=1,
-	)
+		# assert voucher rows
+		expected_voucher_rows = [
+			[100.0, 100.0, 100.0, 100.0],
+			[85.0, 85.0, 85.0, 85.0],
+		]
+		voucher_rows = []
+		for x in report[0:2]:
+			voucher_rows.append(
+				[x.invoiced, x.outstanding, x.invoiced_in_account_currency, x.outstanding_in_account_currency]
+			)
+		self.assertEqual(expected_voucher_rows, voucher_rows)
 
-	if not no_payment_schedule:
-		si.append(
-			"payment_schedule",
-			dict(due_date=getdate(add_days(today(), 30)), invoice_portion=30.00, payment_amount=30),
+		# assert total rows
+		expected_total_rows = [
+			[self.customer, 185.0, 185.0],  # party total
+			{},  # empty row for padding
+			["Total", 185.0, 185.0],  # grand total
+		]
+		party_total_row = report[2]
+		self.assertEqual(
+			expected_total_rows[0],
+			[
+				party_total_row.get("party"),
+				party_total_row.get("invoiced"),
+				party_total_row.get("outstanding"),
+			],
 		)
-		si.append(
-			"payment_schedule",
-			dict(due_date=getdate(add_days(today(), 60)), invoice_portion=50.00, payment_amount=50),
-		)
-		si.append(
-			"payment_schedule",
-			dict(due_date=getdate(add_days(today(), 90)), invoice_portion=20.00, payment_amount=20),
+		empty_row = report[3]
+		self.assertEqual(expected_total_rows[1], empty_row)
+		grand_total_row = report[4]
+		self.assertEqual(
+			expected_total_rows[2],
+			[
+				grand_total_row.get("party"),
+				grand_total_row.get("invoiced"),
+				grand_total_row.get("outstanding"),
+			],
 		)
 
-	si = si.save()
+	def test_future_payments(self):
+		si = self.create_sales_invoice()
+		pe = get_payment_entry(si.doctype, si.name)
+		pe.posting_date = add_days(today(), 1)
+		pe.paid_amount = 90.0
+		pe.references[0].allocated_amount = 90.0
+		pe.save().submit()
+		filters = {
+			"company": self.company,
+			"report_date": today(),
+			"range1": 30,
+			"range2": 60,
+			"range3": 90,
+			"range4": 120,
+			"show_future_payments": True,
+		}
+		report = execute(filters)[1]
+		self.assertEqual(len(report), 1)
 
-	if not do_not_submit:
-		si = si.submit()
+		expected_data = [100.0, 100.0, 10.0, 90.0]
 
-	return si
+		row = report[0]
+		self.assertEqual(
+			expected_data, [row.invoiced, row.outstanding, row.remaining_balance, row.future_amount]
+		)
 
+		pe.cancel()
+		# full payment in future date
+		pe = get_payment_entry(si.doctype, si.name)
+		pe.posting_date = add_days(today(), 1)
+		pe.save().submit()
+		report = execute(filters)[1]
+		self.assertEqual(len(report), 1)
+		expected_data = [100.0, 100.0, 0.0, 100.0]
+		row = report[0]
+		self.assertEqual(
+			expected_data, [row.invoiced, row.outstanding, row.remaining_balance, row.future_amount]
+		)
 
-def make_payment(docname):
-	pe = get_payment_entry("Sales Invoice", docname, bank_account="Cash - _TC2", party_amount=40)
-	pe.paid_from = "Debtors - _TC2"
-	pe.insert()
-	pe.submit()
+		pe.cancel()
+		# over payment in future date
+		pe = get_payment_entry(si.doctype, si.name)
+		pe.posting_date = add_days(today(), 1)
+		pe.paid_amount = 110
+		pe.save().submit()
+		report = execute(filters)[1]
+		self.assertEqual(len(report), 2)
+		expected_data = [[100.0, 0.0, 100.0, 0.0, 100.0], [0.0, 10.0, -10.0, -10.0, 0.0]]
+		for idx, row in enumerate(report):
+			self.assertEqual(
+				expected_data[idx],
+				[row.invoiced, row.paid, row.outstanding, row.remaining_balance, row.future_amount],
+			)
 
+	def test_sales_person(self):
+		sales_person = (
+			frappe.get_doc({"doctype": "Sales Person", "sales_person_name": "John Clark", "enabled": True})
+			.insert()
+			.submit()
+		)
+		si = self.create_sales_invoice(do_not_submit=True)
+		si.append("sales_team", {"sales_person": sales_person.name, "allocated_percentage": 100})
+		si.save().submit()
 
-def make_credit_note(docname):
-	credit_note = create_sales_invoice(
-		company="_Test Company 2",
-		customer="_Test Customer 2",
-		currency="EUR",
-		qty=-1,
-		warehouse="Finished Goods - _TC2",
-		debit_to="Debtors - _TC2",
-		income_account="Sales - _TC2",
-		expense_account="Cost of Goods Sold - _TC2",
-		cost_center="Main - _TC2",
-		is_return=1,
-		return_against=docname,
-	)
+		filters = {
+			"company": self.company,
+			"report_date": today(),
+			"range1": 30,
+			"range2": 60,
+			"range3": 90,
+			"range4": 120,
+			"sales_person": sales_person.name,
+			"show_sales_person": True,
+		}
+		report = execute(filters)[1]
+		self.assertEqual(len(report), 1)
 
-	return credit_note
+		expected_data = [100.0, 100.0, sales_person.name]
+
+		row = report[0]
+		self.assertEqual(expected_data, [row.invoiced, row.outstanding, row.sales_person])
+
+	def test_cost_center_filter(self):
+		si = self.create_sales_invoice()
+		filters = {
+			"company": self.company,
+			"report_date": today(),
+			"range1": 30,
+			"range2": 60,
+			"range3": 90,
+			"range4": 120,
+			"cost_center": self.cost_center,
+		}
+		report = execute(filters)[1]
+		self.assertEqual(len(report), 1)
+		expected_data = [100.0, 100.0, self.cost_center]
+		row = report[0]
+		self.assertEqual(expected_data, [row.invoiced, row.outstanding, row.cost_center])
+
+	def test_customer_group_filter(self):
+		si = self.create_sales_invoice()
+		cus_group = frappe.db.get_value("Customer", self.customer, "customer_group")
+		filters = {
+			"company": self.company,
+			"report_date": today(),
+			"range1": 30,
+			"range2": 60,
+			"range3": 90,
+			"range4": 120,
+			"customer_group": cus_group,
+		}
+		report = execute(filters)[1]
+		self.assertEqual(len(report), 1)
+		expected_data = [100.0, 100.0, cus_group]
+		row = report[0]
+		self.assertEqual(expected_data, [row.invoiced, row.outstanding, row.customer_group])
+
+		filters.update({"customer_group": "Individual"})
+		report = execute(filters)[1]
+		self.assertEqual(len(report), 0)
+
+	def test_party_account_filter(self):
+		si1 = self.create_sales_invoice()
+		self.customer2 = (
+			frappe.get_doc(
+				{
+					"doctype": "Customer",
+					"customer_name": "Jane Doe",
+					"type": "Individual",
+					"default_currency": "USD",
+				}
+			)
+			.insert()
+			.submit()
+		)
+
+		si2 = self.create_sales_invoice(do_not_submit=True)
+		si2.posting_date = add_days(today(), -1)
+		si2.customer = self.customer2
+		si2.currency = "USD"
+		si2.conversion_rate = 80
+		si2.debit_to = self.debtors_usd
+		si2.save().submit()
+
+		# Filter on company currency receivable account
+		filters = {
+			"company": self.company,
+			"report_date": today(),
+			"range1": 30,
+			"range2": 60,
+			"range3": 90,
+			"range4": 120,
+			"party_account": self.debit_to,
+		}
+		report = execute(filters)[1]
+		self.assertEqual(len(report), 1)
+		expected_data = [100.0, 100.0, self.debit_to, si1.currency]
+		row = report[0]
+		self.assertEqual(
+			expected_data, [row.invoiced, row.outstanding, row.party_account, row.account_currency]
+		)
+
+		# Filter on USD receivable account
+		filters.update({"party_account": self.debtors_usd})
+		report = execute(filters)[1]
+		self.assertEqual(len(report), 1)
+		expected_data = [8000.0, 8000.0, self.debtors_usd, si2.currency]
+		row = report[0]
+		self.assertEqual(
+			expected_data, [row.invoiced, row.outstanding, row.party_account, row.account_currency]
+		)
+
+		# without filter on party account
+		filters.pop("party_account")
+		report = execute(filters)[1]
+		self.assertEqual(len(report), 2)
+		expected_data = [
+			[8000.0, 8000.0, 100.0, 100.0, self.debtors_usd, si2.currency],
+			[100.0, 100.0, 100.0, 100.0, self.debit_to, si1.currency],
+		]
+		for idx, row in enumerate(report):
+			self.assertEqual(
+				expected_data[idx],
+				[
+					row.invoiced,
+					row.outstanding,
+					row.invoiced_in_account_currency,
+					row.outstanding_in_account_currency,
+					row.party_account,
+					row.account_currency,
+				],
+			)
+
+	def test_usd_customer_filter(self):
+		filters = {
+			"company": self.company,
+			"party_type": "Customer",
+			"party": [self.customer],
+			"report_date": today(),
+			"range1": 30,
+			"range2": 60,
+			"range3": 90,
+			"range4": 120,
+		}
+
+		si = self.create_sales_invoice(no_payment_schedule=True, do_not_submit=True)
+		si.currency = "USD"
+		si.conversion_rate = 80
+		si.debit_to = self.debtors_usd
+		si.save().submit()
+		name = si.name
+
+		# check invoice grand total and invoiced column's value for 3 payment terms
+		report = execute(filters)
+
+		expected = {
+			"voucher_type": si.doctype,
+			"voucher_no": si.name,
+			"party_account": self.debtors_usd,
+			"customer_name": self.customer,
+			"invoiced": 100.0,
+			"outstanding": 100.0,
+			"account_currency": "USD",
+		}
+		self.assertEqual(len(report[1]), 1)
+		report_output = report[1][0]
+		for field in expected:
+			with self.subTest(field=field):
+				self.assertEqual(report_output.get(field), expected.get(field))
+
+	def test_multi_select_party_filter(self):
+		self.customer1 = self.customer
+		self.create_customer("_Test Customer 2")
+		self.customer2 = self.customer
+		self.create_customer("_Test Customer 3")
+		self.customer3 = self.customer
+
+		filters = {
+			"company": self.company,
+			"party_type": "Customer",
+			"party": [self.customer1, self.customer3],
+			"report_date": today(),
+			"range1": 30,
+			"range2": 60,
+			"range3": 90,
+			"range4": 120,
+		}
+
+		si1 = self.create_sales_invoice(no_payment_schedule=True, do_not_submit=True)
+		si1.customer = self.customer1
+		si1.save().submit()
+
+		si2 = self.create_sales_invoice(no_payment_schedule=True, do_not_submit=True)
+		si2.customer = self.customer2
+		si2.save().submit()
+
+		si3 = self.create_sales_invoice(no_payment_schedule=True, do_not_submit=True)
+		si3.customer = self.customer3
+		si3.save().submit()
+
+		# check invoice grand total and invoiced column's value for 3 payment terms
+		report = execute(filters)
+
+		expected_output = {self.customer1, self.customer3}
+		self.assertEqual(len(report[1]), 2)
+		output_for = set([x.party for x in report[1]])
+		self.assertEqual(output_for, expected_output)
diff --git a/erpnext/accounts/report/accounts_receivable_summary/accounts_receivable_summary.js b/erpnext/accounts/report/accounts_receivable_summary/accounts_receivable_summary.js
index 715cd64..5ad10c7 100644
--- a/erpnext/accounts/report/accounts_receivable_summary/accounts_receivable_summary.js
+++ b/erpnext/accounts/report/accounts_receivable_summary/accounts_receivable_summary.js
@@ -72,10 +72,27 @@
 			}
 		},
 		{
-			"fieldname":"customer",
-			"label": __("Customer"),
-			"fieldtype": "Link",
-			"options": "Customer"
+			"fieldname":"party_type",
+			"label": __("Party Type"),
+			"fieldtype": "Autocomplete",
+			options: get_party_type_options(),
+			on_change: function() {
+				frappe.query_report.set_filter_value('party', "");
+				frappe.query_report.toggle_filter_display('customer_group', frappe.query_report.get_filter_value('party_type') !== "Customer");
+			}
+		},
+		{
+			"fieldname":"party",
+			"label": __("Party"),
+			"fieldtype": "MultiSelectList",
+			get_data: function(txt) {
+				if (!frappe.query_report.filters) return;
+
+				let party_type = frappe.query_report.get_filter_value('party_type');
+				if (!party_type) return;
+
+				return frappe.db.get_link_options(party_type, txt);
+			},
 		},
 		{
 			"fieldname":"customer_group",
@@ -133,3 +150,15 @@
 }
 
 erpnext.utils.add_dimensions('Accounts Receivable Summary', 9);
+
+function get_party_type_options() {
+	let options = [];
+	frappe.db.get_list(
+		"Party Type", {filters:{"account_type": "Receivable"}, fields:['name']}
+	).then((res) => {
+		res.forEach((party_type) => {
+			options.push(party_type.name);
+		});
+	});
+	return options;
+}
\ No newline at end of file
diff --git a/erpnext/accounts/report/accounts_receivable_summary/accounts_receivable_summary.py b/erpnext/accounts/report/accounts_receivable_summary/accounts_receivable_summary.py
index cffc878..60274cd 100644
--- a/erpnext/accounts/report/accounts_receivable_summary/accounts_receivable_summary.py
+++ b/erpnext/accounts/report/accounts_receivable_summary/accounts_receivable_summary.py
@@ -99,13 +99,11 @@
 
 			# Add all amount columns
 			for k in list(self.party_total[d.party]):
-				if k not in ["currency", "sales_person"]:
-
-					self.party_total[d.party][k] += d.get(k, 0.0)
+				if isinstance(self.party_total[d.party][k], float):
+					self.party_total[d.party][k] += d.get(k) or 0.0
 
 			# set territory, customer_group, sales person etc
 			self.set_party_details(d)
-			self.party_total[d.party].update({"party_type": d.party_type})
 
 	def init_party_total(self, row):
 		self.party_total.setdefault(
@@ -124,6 +122,7 @@
 					"total_due": 0.0,
 					"future_amount": 0.0,
 					"sales_person": [],
+					"party_type": row.party_type,
 				}
 			),
 		)
@@ -133,13 +132,12 @@
 
 		for key in ("territory", "customer_group", "supplier_group"):
 			if row.get(key):
-				self.party_total[row.party][key] = row.get(key)
-
+				self.party_total[row.party][key] = row.get(key, "")
 		if row.sales_person:
-			self.party_total[row.party].sales_person.append(row.sales_person)
+			self.party_total[row.party].sales_person.append(row.get("sales_person", ""))
 
 		if self.filters.sales_partner:
-			self.party_total[row.party]["default_sales_partner"] = row.get("default_sales_partner")
+			self.party_total[row.party]["default_sales_partner"] = row.get("default_sales_partner", "")
 
 	def get_columns(self):
 		self.columns = []
diff --git a/erpnext/accounts/report/asset_depreciations_and_balances/asset_depreciations_and_balances.py b/erpnext/accounts/report/asset_depreciations_and_balances/asset_depreciations_and_balances.py
index d67eee3..bdc8d85 100644
--- a/erpnext/accounts/report/asset_depreciations_and_balances/asset_depreciations_and_balances.py
+++ b/erpnext/accounts/report/asset_depreciations_and_balances/asset_depreciations_and_balances.py
@@ -58,6 +58,9 @@
 
 
 def get_asset_categories(filters):
+	condition = ""
+	if filters.get("asset_category"):
+		condition += " and asset_category = %(asset_category)s"
 	return frappe.db.sql(
 		"""
 		SELECT asset_category,
@@ -98,15 +101,25 @@
 								0
 						   end), 0) as cost_of_scrapped_asset
 		from `tabAsset`
-		where docstatus=1 and company=%(company)s and purchase_date <= %(to_date)s
+		where docstatus=1 and company=%(company)s and purchase_date <= %(to_date)s {}
 		group by asset_category
-	""",
-		{"to_date": filters.to_date, "from_date": filters.from_date, "company": filters.company},
+	""".format(
+			condition
+		),
+		{
+			"to_date": filters.to_date,
+			"from_date": filters.from_date,
+			"company": filters.company,
+			"asset_category": filters.get("asset_category"),
+		},
 		as_dict=1,
 	)
 
 
 def get_assets(filters):
+	condition = ""
+	if filters.get("asset_category"):
+		condition = " and a.asset_category = '{}'".format(filters.get("asset_category"))
 	return frappe.db.sql(
 		"""
 		SELECT results.asset_category,
@@ -138,7 +151,7 @@
 				aca.parent = a.asset_category and aca.company_name = %(company)s
 			join `tabCompany` company on
 				company.name = %(company)s
-			where a.docstatus=1 and a.company=%(company)s and a.purchase_date <= %(to_date)s and gle.debit != 0 and gle.is_cancelled = 0 and gle.account = ifnull(aca.depreciation_expense_account, company.depreciation_expense_account)
+			where a.docstatus=1 and a.company=%(company)s and a.purchase_date <= %(to_date)s and gle.debit != 0 and gle.is_cancelled = 0 and gle.account = ifnull(aca.depreciation_expense_account, company.depreciation_expense_account) {0}
 			group by a.asset_category
 			union
 			SELECT a.asset_category,
@@ -154,10 +167,12 @@
 							  end), 0) as depreciation_eliminated_during_the_period,
 				   0 as depreciation_amount_during_the_period
 			from `tabAsset` a
-			where a.docstatus=1 and a.company=%(company)s and a.purchase_date <= %(to_date)s
+			where a.docstatus=1 and a.company=%(company)s and a.purchase_date <= %(to_date)s {0}
 			group by a.asset_category) as results
 		group by results.asset_category
-		""",
+		""".format(
+			condition
+		),
 		{"to_date": filters.to_date, "from_date": filters.from_date, "company": filters.company},
 		as_dict=1,
 	)
diff --git a/erpnext/accounts/report/balance_sheet/balance_sheet.js b/erpnext/accounts/report/balance_sheet/balance_sheet.js
index c65b9e8..c2b57f7 100644
--- a/erpnext/accounts/report/balance_sheet/balance_sheet.js
+++ b/erpnext/accounts/report/balance_sheet/balance_sheet.js
@@ -1,26 +1,23 @@
 // Copyright (c) 2015, Frappe Technologies Pvt. Ltd. and Contributors
 // License: GNU General Public License v3. See license.txt
 
-frappe.require("assets/erpnext/js/financial_statements.js", function () {
-	frappe.query_reports["Balance Sheet"] = $.extend(
-		{},
-		erpnext.financial_statements
-	);
+frappe.query_reports["Balance Sheet"] = $.extend(
+	{},
+	erpnext.financial_statements
+);
 
-	erpnext.utils.add_dimensions("Balance Sheet", 10);
+erpnext.utils.add_dimensions("Balance Sheet", 10);
 
-	frappe.query_reports["Balance Sheet"]["filters"].push({
-		fieldname: "accumulated_values",
-		label: __("Accumulated Values"),
-		fieldtype: "Check",
-		default: 1,
-	});
-	console.log(frappe.query_reports["Balance Sheet"]["filters"]);
+frappe.query_reports["Balance Sheet"]["filters"].push({
+	fieldname: "accumulated_values",
+	label: __("Accumulated Values"),
+	fieldtype: "Check",
+	default: 1,
+});
 
-	frappe.query_reports["Balance Sheet"]["filters"].push({
-		fieldname: "include_default_book_entries",
-		label: __("Include Default Book Entries"),
-		fieldtype: "Check",
-		default: 1,
-	});
+frappe.query_reports["Balance Sheet"]["filters"].push({
+	fieldname: "include_default_book_entries",
+	label: __("Include Default Book Entries"),
+	fieldtype: "Check",
+	default: 1,
 });
diff --git a/erpnext/accounts/report/cash_flow/cash_flow.js b/erpnext/accounts/report/cash_flow/cash_flow.js
index a2c34c6..6b8ed27 100644
--- a/erpnext/accounts/report/cash_flow/cash_flow.js
+++ b/erpnext/accounts/report/cash_flow/cash_flow.js
@@ -1,24 +1,24 @@
 // Copyright (c) 2013, Frappe Technologies Pvt. Ltd. and contributors
 // For license information, please see license.txt
 
-frappe.require("assets/erpnext/js/financial_statements.js", function() {
-	frappe.query_reports["Cash Flow"] = $.extend({},
-		erpnext.financial_statements);
+frappe.query_reports["Cash Flow"] = $.extend(
+	{},
+	erpnext.financial_statements
+);
 
-	erpnext.utils.add_dimensions('Cash Flow', 10);
+erpnext.utils.add_dimensions('Cash Flow', 10);
 
-	// The last item in the array is the definition for Presentation Currency
-	// filter. It won't be used in cash flow for now so we pop it. Please take
-	// of this if you are working here.
+// The last item in the array is the definition for Presentation Currency
+// filter. It won't be used in cash flow for now so we pop it. Please take
+// of this if you are working here.
 
-	frappe.query_reports["Cash Flow"]["filters"].splice(8, 1);
+frappe.query_reports["Cash Flow"]["filters"].splice(8, 1);
 
-	frappe.query_reports["Cash Flow"]["filters"].push(
-		{
-			"fieldname": "include_default_book_entries",
-			"label": __("Include Default Book Entries"),
-			"fieldtype": "Check",
-			"default": 1
-		}
-	);
-});
+frappe.query_reports["Cash Flow"]["filters"].push(
+	{
+		"fieldname": "include_default_book_entries",
+		"label": __("Include Default Book Entries"),
+		"fieldtype": "Check",
+		"default": 1
+	}
+);
diff --git a/erpnext/accounts/report/consolidated_financial_statement/consolidated_financial_statement.js b/erpnext/accounts/report/consolidated_financial_statement/consolidated_financial_statement.js
index 1afa8d5..590408c 100644
--- a/erpnext/accounts/report/consolidated_financial_statement/consolidated_financial_statement.js
+++ b/erpnext/accounts/report/consolidated_financial_statement/consolidated_financial_statement.js
@@ -2,152 +2,150 @@
 // For license information, please see license.txt
 
 
-frappe.require("assets/erpnext/js/financial_statements.js", function() {
-	frappe.query_reports["Consolidated Financial Statement"] = {
-		"filters": [
-			{
-				"fieldname":"company",
-				"label": __("Company"),
-				"fieldtype": "Link",
-				"options": "Company",
-				"default": frappe.defaults.get_user_default("Company"),
-				"reqd": 1
-			},
-			{
-				"fieldname":"filter_based_on",
-				"label": __("Filter Based On"),
-				"fieldtype": "Select",
-				"options": ["Fiscal Year", "Date Range"],
-				"default": ["Fiscal Year"],
-				"reqd": 1,
-				on_change: function() {
-					let filter_based_on = frappe.query_report.get_filter_value('filter_based_on');
-					frappe.query_report.toggle_filter_display('from_fiscal_year', filter_based_on === 'Date Range');
-					frappe.query_report.toggle_filter_display('to_fiscal_year', filter_based_on === 'Date Range');
-					frappe.query_report.toggle_filter_display('period_start_date', filter_based_on === 'Fiscal Year');
-					frappe.query_report.toggle_filter_display('period_end_date', filter_based_on === 'Fiscal Year');
-
-					frappe.query_report.refresh();
-				}
-			},
-			{
-				"fieldname":"period_start_date",
-				"label": __("Start Date"),
-				"fieldtype": "Date",
-				"hidden": 1,
-				"reqd": 1
-			},
-			{
-				"fieldname":"period_end_date",
-				"label": __("End Date"),
-				"fieldtype": "Date",
-				"hidden": 1,
-				"reqd": 1
-			},
-			{
-				"fieldname":"from_fiscal_year",
-				"label": __("Start Year"),
-				"fieldtype": "Link",
-				"options": "Fiscal Year",
-				"default": erpnext.utils.get_fiscal_year(frappe.datetime.get_today()),
-				"reqd": 1,
-				on_change: () => {
-					frappe.model.with_doc("Fiscal Year", frappe.query_report.get_filter_value('from_fiscal_year'), function(r) {
-						let year_start_date = frappe.model.get_value("Fiscal Year", frappe.query_report.get_filter_value('from_fiscal_year'), "year_start_date");
-						frappe.query_report.set_filter_value({
-							period_start_date: year_start_date
-						});
-					});
-				}
-			},
-			{
-				"fieldname":"to_fiscal_year",
-				"label": __("End Year"),
-				"fieldtype": "Link",
-				"options": "Fiscal Year",
-				"default": erpnext.utils.get_fiscal_year(frappe.datetime.get_today()),
-				"reqd": 1,
-				on_change: () => {
-					frappe.model.with_doc("Fiscal Year", frappe.query_report.get_filter_value('to_fiscal_year'), function(r) {
-						let year_end_date = frappe.model.get_value("Fiscal Year", frappe.query_report.get_filter_value('to_fiscal_year'), "year_end_date");
-						frappe.query_report.set_filter_value({
-							period_end_date: year_end_date
-						});
-					});
-				}
-			},
-			{
-				"fieldname":"finance_book",
-				"label": __("Finance Book"),
-				"fieldtype": "Link",
-				"options": "Finance Book"
-			},
-			{
-				"fieldname":"report",
-				"label": __("Report"),
-				"fieldtype": "Select",
-				"options": ["Profit and Loss Statement", "Balance Sheet", "Cash Flow"],
-				"default": "Balance Sheet",
-				"reqd": 1
-			},
-			{
-				"fieldname": "presentation_currency",
-				"label": __("Currency"),
-				"fieldtype": "Select",
-				"options": erpnext.get_presentation_currency_list(),
-				"default": frappe.defaults.get_user_default("Currency")
-			},
-			{
-				"fieldname":"accumulated_in_group_company",
-				"label": __("Accumulated Values in Group Company"),
-				"fieldtype": "Check",
-				"default": 0
-			},
-			{
-				"fieldname": "include_default_book_entries",
-				"label": __("Include Default Book Entries"),
-				"fieldtype": "Check",
-				"default": 1
-			},
-			{
-				"fieldname": "show_zero_values",
-				"label": __("Show zero values"),
-				"fieldtype": "Check"
-			}
-		],
-		"formatter": function(value, row, column, data, default_formatter) {
-			if (data && column.fieldname=="account") {
-				value = data.account_name || value;
-
-				column.link_onclick =
-				"erpnext.financial_statements.open_general_ledger(" + JSON.stringify(data) + ")";
-				column.is_tree = true;
-			}
-
-			if (data && data.account && column.apply_currency_formatter) {
-				data.currency = erpnext.get_currency(column.company_name);
-			}
-
-			value = default_formatter(value, row, column, data);
-			if (!data.parent_account) {
-				value = $(`<span>${value}</span>`);
-
-				var $value = $(value).css("font-weight", "bold");
-
-				value = $value.wrap("<p></p>").parent().html();
-			}
-			return value;
+frappe.query_reports["Consolidated Financial Statement"] = {
+	"filters": [
+		{
+			"fieldname":"company",
+			"label": __("Company"),
+			"fieldtype": "Link",
+			"options": "Company",
+			"default": frappe.defaults.get_user_default("Company"),
+			"reqd": 1
 		},
-		onload: function() {
-			let fiscal_year = erpnext.utils.get_fiscal_year(frappe.datetime.get_today());
+		{
+			"fieldname":"filter_based_on",
+			"label": __("Filter Based On"),
+			"fieldtype": "Select",
+			"options": ["Fiscal Year", "Date Range"],
+			"default": ["Fiscal Year"],
+			"reqd": 1,
+			on_change: function() {
+				let filter_based_on = frappe.query_report.get_filter_value('filter_based_on');
+				frappe.query_report.toggle_filter_display('from_fiscal_year', filter_based_on === 'Date Range');
+				frappe.query_report.toggle_filter_display('to_fiscal_year', filter_based_on === 'Date Range');
+				frappe.query_report.toggle_filter_display('period_start_date', filter_based_on === 'Fiscal Year');
+				frappe.query_report.toggle_filter_display('period_end_date', filter_based_on === 'Fiscal Year');
 
-			frappe.model.with_doc("Fiscal Year", fiscal_year, function(r) {
-				var fy = frappe.model.get_doc("Fiscal Year", fiscal_year);
-				frappe.query_report.set_filter_value({
-					period_start_date: fy.year_start_date,
-					period_end_date: fy.year_end_date
+				frappe.query_report.refresh();
+			}
+		},
+		{
+			"fieldname":"period_start_date",
+			"label": __("Start Date"),
+			"fieldtype": "Date",
+			"hidden": 1,
+			"reqd": 1
+		},
+		{
+			"fieldname":"period_end_date",
+			"label": __("End Date"),
+			"fieldtype": "Date",
+			"hidden": 1,
+			"reqd": 1
+		},
+		{
+			"fieldname":"from_fiscal_year",
+			"label": __("Start Year"),
+			"fieldtype": "Link",
+			"options": "Fiscal Year",
+			"default": erpnext.utils.get_fiscal_year(frappe.datetime.get_today()),
+			"reqd": 1,
+			on_change: () => {
+				frappe.model.with_doc("Fiscal Year", frappe.query_report.get_filter_value('from_fiscal_year'), function(r) {
+					let year_start_date = frappe.model.get_value("Fiscal Year", frappe.query_report.get_filter_value('from_fiscal_year'), "year_start_date");
+					frappe.query_report.set_filter_value({
+						period_start_date: year_start_date
+					});
 				});
-			});
+			}
+		},
+		{
+			"fieldname":"to_fiscal_year",
+			"label": __("End Year"),
+			"fieldtype": "Link",
+			"options": "Fiscal Year",
+			"default": erpnext.utils.get_fiscal_year(frappe.datetime.get_today()),
+			"reqd": 1,
+			on_change: () => {
+				frappe.model.with_doc("Fiscal Year", frappe.query_report.get_filter_value('to_fiscal_year'), function(r) {
+					let year_end_date = frappe.model.get_value("Fiscal Year", frappe.query_report.get_filter_value('to_fiscal_year'), "year_end_date");
+					frappe.query_report.set_filter_value({
+						period_end_date: year_end_date
+					});
+				});
+			}
+		},
+		{
+			"fieldname":"finance_book",
+			"label": __("Finance Book"),
+			"fieldtype": "Link",
+			"options": "Finance Book"
+		},
+		{
+			"fieldname":"report",
+			"label": __("Report"),
+			"fieldtype": "Select",
+			"options": ["Profit and Loss Statement", "Balance Sheet", "Cash Flow"],
+			"default": "Balance Sheet",
+			"reqd": 1
+		},
+		{
+			"fieldname": "presentation_currency",
+			"label": __("Currency"),
+			"fieldtype": "Select",
+			"options": erpnext.get_presentation_currency_list(),
+			"default": frappe.defaults.get_user_default("Currency")
+		},
+		{
+			"fieldname":"accumulated_in_group_company",
+			"label": __("Accumulated Values in Group Company"),
+			"fieldtype": "Check",
+			"default": 0
+		},
+		{
+			"fieldname": "include_default_book_entries",
+			"label": __("Include Default Book Entries"),
+			"fieldtype": "Check",
+			"default": 1
+		},
+		{
+			"fieldname": "show_zero_values",
+			"label": __("Show zero values"),
+			"fieldtype": "Check"
 		}
+	],
+	"formatter": function(value, row, column, data, default_formatter) {
+		if (data && column.fieldname=="account") {
+			value = data.account_name || value;
+
+			column.link_onclick =
+				"erpnext.financial_statements.open_general_ledger(" + JSON.stringify(data) + ")";
+			column.is_tree = true;
+		}
+
+		if (data && data.account && column.apply_currency_formatter) {
+			data.currency = erpnext.get_currency(column.company_name);
+		}
+
+		value = default_formatter(value, row, column, data);
+		if (!data.parent_account) {
+			value = $(`<span>${value}</span>`);
+
+			var $value = $(value).css("font-weight", "bold");
+
+			value = $value.wrap("<p></p>").parent().html();
+		}
+		return value;
+	},
+	onload: function() {
+		let fiscal_year = erpnext.utils.get_fiscal_year(frappe.datetime.get_today());
+
+		frappe.model.with_doc("Fiscal Year", fiscal_year, function(r) {
+			var fy = frappe.model.get_doc("Fiscal Year", fiscal_year);
+			frappe.query_report.set_filter_value({
+				period_start_date: fy.year_start_date,
+				period_end_date: fy.year_end_date
+			});
+		});
 	}
-});
+}
diff --git a/erpnext/accounts/report/deferred_revenue_and_expense/test_deferred_revenue_and_expense.py b/erpnext/accounts/report/deferred_revenue_and_expense/test_deferred_revenue_and_expense.py
index 28d0c20..7b1a902 100644
--- a/erpnext/accounts/report/deferred_revenue_and_expense/test_deferred_revenue_and_expense.py
+++ b/erpnext/accounts/report/deferred_revenue_and_expense/test_deferred_revenue_and_expense.py
@@ -81,7 +81,7 @@
 		self.create_item("_Test Internet Subscription", 0, self.warehouse, self.company)
 		item = frappe.get_doc("Item", self.item)
 		item.enable_deferred_revenue = 1
-		item.deferred_revenue_account = self.deferred_revenue_account
+		item.item_defaults[0].deferred_revenue_account = self.deferred_revenue_account
 		item.no_of_months = 3
 		item.save()
 
@@ -150,7 +150,7 @@
 		self.create_item("_Test Office Desk", 0, self.warehouse, self.company)
 		item = frappe.get_doc("Item", self.item)
 		item.enable_deferred_expense = 1
-		item.deferred_expense_account = self.deferred_expense_account
+		item.item_defaults[0].deferred_expense_account = self.deferred_expense_account
 		item.no_of_months_exp = 3
 		item.save()
 
diff --git a/erpnext/accounts/report/dimension_wise_accounts_balance_report/dimension_wise_accounts_balance_report.js b/erpnext/accounts/report/dimension_wise_accounts_balance_report/dimension_wise_accounts_balance_report.js
index 79e5a09..51fa8c8 100644
--- a/erpnext/accounts/report/dimension_wise_accounts_balance_report/dimension_wise_accounts_balance_report.js
+++ b/erpnext/accounts/report/dimension_wise_accounts_balance_report/dimension_wise_accounts_balance_report.js
@@ -2,83 +2,81 @@
 // For license information, please see license.txt
 
 
-frappe.require("assets/erpnext/js/financial_statements.js", function() {
-	frappe.query_reports["Dimension-wise Accounts Balance Report"] = {
-		"filters": [
-			{
-				"fieldname": "company",
-				"label": __("Company"),
-				"fieldtype": "Link",
-				"options": "Company",
-				"default": frappe.defaults.get_user_default("Company"),
-				"reqd": 1
-			},
-			{
-				"fieldname": "fiscal_year",
-				"label": __("Fiscal Year"),
-				"fieldtype": "Link",
-				"options": "Fiscal Year",
-				"default": erpnext.utils.get_fiscal_year(frappe.datetime.get_today()),
-				"reqd": 1,
-				"on_change": function(query_report) {
-					var fiscal_year = query_report.get_values().fiscal_year;
-					if (!fiscal_year) {
-						return;
-					}
-					frappe.model.with_doc("Fiscal Year", fiscal_year, function(r) {
-						var fy = frappe.model.get_doc("Fiscal Year", fiscal_year);
-						frappe.query_report.set_filter_value({
-							from_date: fy.year_start_date,
-							to_date: fy.year_end_date
-						});
-					});
+frappe.query_reports["Dimension-wise Accounts Balance Report"] = {
+	"filters": [
+		{
+			"fieldname": "company",
+			"label": __("Company"),
+			"fieldtype": "Link",
+			"options": "Company",
+			"default": frappe.defaults.get_user_default("Company"),
+			"reqd": 1
+		},
+		{
+			"fieldname": "fiscal_year",
+			"label": __("Fiscal Year"),
+			"fieldtype": "Link",
+			"options": "Fiscal Year",
+			"default": erpnext.utils.get_fiscal_year(frappe.datetime.get_today()),
+			"reqd": 1,
+			"on_change": function(query_report) {
+				var fiscal_year = query_report.get_values().fiscal_year;
+				if (!fiscal_year) {
+					return;
 				}
-			},
-			{
-				"fieldname": "from_date",
-				"label": __("From Date"),
-				"fieldtype": "Date",
-				"default": erpnext.utils.get_fiscal_year(frappe.datetime.get_today(), true)[1],
-				"reqd": 1
-			},
-			{
-				"fieldname": "to_date",
-				"label": __("To Date"),
-				"fieldtype": "Date",
-				"default": erpnext.utils.get_fiscal_year(frappe.datetime.get_today(), true)[2],
-				"reqd": 1
-			},
-			{
-				"fieldname": "finance_book",
-				"label": __("Finance Book"),
-				"fieldtype": "Link",
-				"options": "Finance Book",
-			},
-			{
-				"fieldname": "dimension",
-				"label": __("Select Dimension"),
-				"fieldtype": "Select",
-				"default": "Cost Center",
-				"options": get_accounting_dimension_options(),
-				"reqd": 1,
-			},
-		],
-		"formatter": erpnext.financial_statements.formatter,
-		"tree": true,
-		"name_field": "account",
-		"parent_field": "parent_account",
-		"initial_depth": 3
-	}
+				frappe.model.with_doc("Fiscal Year", fiscal_year, function(r) {
+					var fy = frappe.model.get_doc("Fiscal Year", fiscal_year);
+					frappe.query_report.set_filter_value({
+						from_date: fy.year_start_date,
+						to_date: fy.year_end_date
+					});
+				});
+			}
+		},
+		{
+			"fieldname": "from_date",
+			"label": __("From Date"),
+			"fieldtype": "Date",
+			"default": erpnext.utils.get_fiscal_year(frappe.datetime.get_today(), true)[1],
+			"reqd": 1
+		},
+		{
+			"fieldname": "to_date",
+			"label": __("To Date"),
+			"fieldtype": "Date",
+			"default": erpnext.utils.get_fiscal_year(frappe.datetime.get_today(), true)[2],
+			"reqd": 1
+		},
+		{
+			"fieldname": "finance_book",
+			"label": __("Finance Book"),
+			"fieldtype": "Link",
+			"options": "Finance Book",
+		},
+		{
+			"fieldname": "dimension",
+			"label": __("Select Dimension"),
+			"fieldtype": "Select",
+			"default": "Cost Center",
+			"options": get_accounting_dimension_options(),
+			"reqd": 1,
+		},
+	],
+	"formatter": erpnext.financial_statements.formatter,
+	"tree": true,
+	"name_field": "account",
+	"parent_field": "parent_account",
+	"initial_depth": 3
+}
 
-});
 
 function get_accounting_dimension_options() {
 	let options =["Cost Center", "Project"];
 	frappe.db.get_list('Accounting Dimension',
-		{fields:['document_type']}).then((res) => {
-			res.forEach((dimension) => {
-				options.push(dimension.document_type);
-			});
-		});
+			   {fields:['document_type']}).then((res) => {
+				   res.forEach((dimension) => {
+					   options.push(dimension.document_type);
+				   });
+			   });
 	return options
 }
diff --git a/erpnext/accounts/report/general_and_payment_ledger_comparison/general_and_payment_ledger_comparison.py b/erpnext/accounts/report/general_and_payment_ledger_comparison/general_and_payment_ledger_comparison.py
index 553c137..099884a 100644
--- a/erpnext/accounts/report/general_and_payment_ledger_comparison/general_and_payment_ledger_comparison.py
+++ b/erpnext/accounts/report/general_and_payment_ledger_comparison/general_and_payment_ledger_comparison.py
@@ -133,15 +133,17 @@
 			self.gle_balances = set(val.gle) | self.gle_balances
 			self.ple_balances = set(val.ple) | self.ple_balances
 
-		self.diff1 = self.gle_balances.difference(self.ple_balances)
-		self.diff2 = self.ple_balances.difference(self.gle_balances)
+		self.variation_in_payment_ledger = self.gle_balances.difference(self.ple_balances)
+		self.variation_in_general_ledger = self.ple_balances.difference(self.gle_balances)
 		self.diff = frappe._dict({})
 
-		for x in self.diff1:
+		for x in self.variation_in_payment_ledger:
 			self.diff[(x[0], x[1], x[2], x[3])] = frappe._dict({"gl_balance": x[4]})
 
-		for x in self.diff2:
-			self.diff[(x[0], x[1], x[2], x[3])].update(frappe._dict({"pl_balance": x[4]}))
+		for x in self.variation_in_general_ledger:
+			self.diff.setdefault((x[0], x[1], x[2], x[3]), frappe._dict({"gl_balance": 0.0})).update(
+				frappe._dict({"pl_balance": x[4]})
+			)
 
 	def generate_data(self):
 		self.data = []
diff --git a/erpnext/accounts/report/general_ledger/general_ledger.py b/erpnext/accounts/report/general_ledger/general_ledger.py
index e05a4e7..79bfd78 100644
--- a/erpnext/accounts/report/general_ledger/general_ledger.py
+++ b/erpnext/accounts/report/general_ledger/general_ledger.py
@@ -279,20 +279,19 @@
 	if match_conditions:
 		conditions.append(match_conditions)
 
-	if filters.get("include_dimensions"):
-		accounting_dimensions = get_accounting_dimensions(as_list=False)
+	accounting_dimensions = get_accounting_dimensions(as_list=False)
 
-		if accounting_dimensions:
-			for dimension in accounting_dimensions:
-				if not dimension.disabled:
-					if filters.get(dimension.fieldname):
-						if frappe.get_cached_value("DocType", dimension.document_type, "is_tree"):
-							filters[dimension.fieldname] = get_dimension_with_children(
-								dimension.document_type, filters.get(dimension.fieldname)
-							)
-							conditions.append("{0} in %({0})s".format(dimension.fieldname))
-						else:
-							conditions.append("{0} in %({0})s".format(dimension.fieldname))
+	if accounting_dimensions:
+		for dimension in accounting_dimensions:
+			if not dimension.disabled:
+				if filters.get(dimension.fieldname):
+					if frappe.get_cached_value("DocType", dimension.document_type, "is_tree"):
+						filters[dimension.fieldname] = get_dimension_with_children(
+							dimension.document_type, filters.get(dimension.fieldname)
+						)
+						conditions.append("{0} in %({0})s".format(dimension.fieldname))
+					else:
+						conditions.append("{0} in %({0})s".format(dimension.fieldname))
 
 	return "and {}".format(" and ".join(conditions)) if conditions else ""
 
@@ -435,6 +434,7 @@
 
 	for gle in gl_entries:
 		group_by_value = gle.get(group_by)
+		gle.voucher_type = _(gle.voucher_type)
 
 		if gle.posting_date < from_date or (cstr(gle.is_opening) == "Yes" and not show_opening_entries):
 			if not group_by_voucher_consolidated:
diff --git a/erpnext/accounts/report/gross_and_net_profit_report/gross_and_net_profit_report.js b/erpnext/accounts/report/gross_and_net_profit_report/gross_and_net_profit_report.js
index f6b0b8c..40d4259 100644
--- a/erpnext/accounts/report/gross_and_net_profit_report/gross_and_net_profit_report.js
+++ b/erpnext/accounts/report/gross_and_net_profit_report/gross_and_net_profit_report.js
@@ -2,20 +2,15 @@
 // For license information, please see license.txt
 
 
-frappe.query_reports["Gross and Net Profit Report"] = {
-	"filters": [
+frappe.query_reports["Gross and Net Profit Report"] = $.extend(
+	{},
+	erpnext.financial_statements
+);
 
-	]
-}
-frappe.require("assets/erpnext/js/financial_statements.js", function() {
-	frappe.query_reports["Gross and Net Profit Report"] = $.extend({},
-		erpnext.financial_statements);
-
-	frappe.query_reports["Gross and Net Profit Report"]["filters"].push(
-		{
-			"fieldname": "accumulated_values",
-			"label": __("Accumulated Values"),
-			"fieldtype": "Check"
-		}
-	);
-});
+frappe.query_reports["Gross and Net Profit Report"]["filters"].push(
+	{
+		"fieldname": "accumulated_values",
+		"label": __("Accumulated Values"),
+		"fieldtype": "Check"
+	}
+);
diff --git a/erpnext/accounts/report/gross_profit/gross_profit.py b/erpnext/accounts/report/gross_profit/gross_profit.py
index 3324a73..38060bb 100644
--- a/erpnext/accounts/report/gross_profit/gross_profit.py
+++ b/erpnext/accounts/report/gross_profit/gross_profit.py
@@ -544,6 +544,8 @@
 						new_row.qty += flt(row.qty)
 						new_row.buying_amount += flt(row.buying_amount, self.currency_precision)
 						new_row.base_amount += flt(row.base_amount, self.currency_precision)
+						if self.filters.get("group_by") == "Sales Person":
+							new_row.allocated_amount += flt(row.allocated_amount, self.currency_precision)
 				new_row = self.set_average_rate(new_row)
 				self.grouped_data.append(new_row)
 
diff --git a/erpnext/accounts/report/item_wise_purchase_register/item_wise_purchase_register.js b/erpnext/accounts/report/item_wise_purchase_register/item_wise_purchase_register.js
index b709ab9..423cd6a 100644
--- a/erpnext/accounts/report/item_wise_purchase_register/item_wise_purchase_register.js
+++ b/erpnext/accounts/report/item_wise_purchase_register/item_wise_purchase_register.js
@@ -24,6 +24,12 @@
 			"options": "Item",
 		},
 		{
+			"fieldname": "item_group",
+			"label": __("Item Group"),
+			"fieldtype": "Link",
+			"options": "Item Group",
+		},
+		{
 			"fieldname":"supplier",
 			"label": __("Supplier"),
 			"fieldtype": "Link",
diff --git a/erpnext/accounts/report/item_wise_purchase_register/item_wise_purchase_register.py b/erpnext/accounts/report/item_wise_purchase_register/item_wise_purchase_register.py
index 8b929bf..ad196a9 100644
--- a/erpnext/accounts/report/item_wise_purchase_register/item_wise_purchase_register.py
+++ b/erpnext/accounts/report/item_wise_purchase_register/item_wise_purchase_register.py
@@ -287,12 +287,13 @@
 	conditions = ""
 
 	for opts in (
-		("company", " and company=%(company)s"),
+		("company", " and `tabPurchase Invoice`.company=%(company)s"),
 		("supplier", " and `tabPurchase Invoice`.supplier = %(supplier)s"),
 		("item_code", " and `tabPurchase Invoice Item`.item_code = %(item_code)s"),
 		("from_date", " and `tabPurchase Invoice`.posting_date>=%(from_date)s"),
 		("to_date", " and `tabPurchase Invoice`.posting_date<=%(to_date)s"),
 		("mode_of_payment", " and ifnull(mode_of_payment, '') = %(mode_of_payment)s"),
+		("item_group", " and ifnull(`tabPurchase Invoice Item`.item_group, '') = %(item_group)s"),
 	):
 		if filters.get(opts[0]):
 			conditions += opts[1]
diff --git a/erpnext/accounts/report/item_wise_sales_register/item_wise_sales_register.py b/erpnext/accounts/report/item_wise_sales_register/item_wise_sales_register.py
index 1e7ac33..ce22d75 100644
--- a/erpnext/accounts/report/item_wise_sales_register/item_wise_sales_register.py
+++ b/erpnext/accounts/report/item_wise_sales_register/item_wise_sales_register.py
@@ -332,7 +332,7 @@
 	conditions = ""
 
 	for opts in (
-		("company", " and company=%(company)s"),
+		("company", " and `tabSales Invoice`.company=%(company)s"),
 		("customer", " and `tabSales Invoice`.customer = %(customer)s"),
 		("item_code", " and `tabSales Invoice Item`.item_code = %(item_code)s"),
 		("from_date", " and `tabSales Invoice`.posting_date>=%(from_date)s"),
diff --git a/erpnext/accounts/report/profit_and_loss_statement/profit_and_loss_statement.js b/erpnext/accounts/report/profit_and_loss_statement/profit_and_loss_statement.js
index 9fe93b9..e5898bf 100644
--- a/erpnext/accounts/report/profit_and_loss_statement/profit_and_loss_statement.js
+++ b/erpnext/accounts/report/profit_and_loss_statement/profit_and_loss_statement.js
@@ -1,18 +1,16 @@
 // Copyright (c) 2015, Frappe Technologies Pvt. Ltd. and Contributors
 // License: GNU General Public License v3. See license.txt
 
-frappe.require("assets/erpnext/js/financial_statements.js", function () {
-	frappe.query_reports["Profit and Loss Statement"] = $.extend(
-		{},
-		erpnext.financial_statements
-	);
+frappe.query_reports["Profit and Loss Statement"] = $.extend(
+	{},
+	erpnext.financial_statements
+);
 
-	erpnext.utils.add_dimensions("Profit and Loss Statement", 10);
+erpnext.utils.add_dimensions("Profit and Loss Statement", 10);
 
-	frappe.query_reports["Profit and Loss Statement"]["filters"].push({
-		fieldname: "accumulated_values",
-		label: __("Accumulated Values"),
-		fieldtype: "Check",
-		default: 1,
-	});
+frappe.query_reports["Profit and Loss Statement"]["filters"].push({
+	fieldname: "accumulated_values",
+	label: __("Accumulated Values"),
+	fieldtype: "Check",
+	default: 1,
 });
diff --git a/erpnext/accounts/report/profitability_analysis/profitability_analysis.js b/erpnext/accounts/report/profitability_analysis/profitability_analysis.js
index c9accef..4a3d9bb 100644
--- a/erpnext/accounts/report/profitability_analysis/profitability_analysis.js
+++ b/erpnext/accounts/report/profitability_analysis/profitability_analysis.js
@@ -1,133 +1,131 @@
 // Copyright (c) 2016, Frappe Technologies Pvt. Ltd. and contributors
 // For license information, please see license.txt
 
-frappe.require("assets/erpnext/js/financial_statements.js", function() {
-	frappe.query_reports["Profitability Analysis"] = {
-		"filters": [
-			{
-				"fieldname": "company",
-				"label": __("Company"),
-				"fieldtype": "Link",
-				"options": "Company",
-				"default": frappe.defaults.get_user_default("Company"),
-				"reqd": 1
-			},
-			{
-				"fieldname": "based_on",
-				"label": __("Based On"),
-				"fieldtype": "Select",
-				"options": ["Cost Center", "Project", "Accounting Dimension"],
-				"default": "Cost Center",
-				"reqd": 1,
-				"on_change": function(query_report){
-					let based_on = query_report.get_values().based_on;
-					if(based_on!='Accounting Dimension'){
-						frappe.query_report.set_filter_value({
-							accounting_dimension: ''
-						});
-					}
-				}
-			},
-			{
-				"fieldname": "accounting_dimension",
-				"label": __("Accounting Dimension"),
-				"fieldtype": "Link",
-				"options": "Accounting Dimension",
-				"get_query": () =>{
-					return {
-						filters: {
-							"disabled": 0
-						}
-					}
-				}
-			},
-			{
-				"fieldname": "fiscal_year",
-				"label": __("Fiscal Year"),
-				"fieldtype": "Link",
-				"options": "Fiscal Year",
-				"default": erpnext.utils.get_fiscal_year(frappe.datetime.get_today()),
-				"reqd": 1,
-				"on_change": function(query_report) {
-					var fiscal_year = query_report.get_values().fiscal_year;
-					if (!fiscal_year) {
-						return;
-					}
-					frappe.model.with_doc("Fiscal Year", fiscal_year, function(r) {
-						var fy = frappe.model.get_doc("Fiscal Year", fiscal_year);
-						frappe.query_report.set_filter_value({
-							from_date: fy.year_start_date,
-							to_date: fy.year_end_date
-						});
+frappe.query_reports["Profitability Analysis"] = {
+	"filters": [
+		{
+			"fieldname": "company",
+			"label": __("Company"),
+			"fieldtype": "Link",
+			"options": "Company",
+			"default": frappe.defaults.get_user_default("Company"),
+			"reqd": 1
+		},
+		{
+			"fieldname": "based_on",
+			"label": __("Based On"),
+			"fieldtype": "Select",
+			"options": ["Cost Center", "Project", "Accounting Dimension"],
+			"default": "Cost Center",
+			"reqd": 1,
+			"on_change": function(query_report){
+				let based_on = query_report.get_values().based_on;
+				if(based_on!='Accounting Dimension'){
+					frappe.query_report.set_filter_value({
+						accounting_dimension: ''
 					});
 				}
-			},
-			{
-				"fieldname": "from_date",
-				"label": __("From Date"),
-				"fieldtype": "Date",
-				"default": erpnext.utils.get_fiscal_year(frappe.datetime.get_today(), true)[1],
-			},
-			{
-				"fieldname": "to_date",
-				"label": __("To Date"),
-				"fieldtype": "Date",
-				"default": erpnext.utils.get_fiscal_year(frappe.datetime.get_today(), true)[2],
-			},
-			{
-				"fieldname": "show_zero_values",
-				"label": __("Show zero values"),
-				"fieldtype": "Check"
 			}
-		],
-		"formatter": function(value, row, column, data, default_formatter) {
-			if (column.fieldname=="account") {
-				value = data.account_name;
-
-				column.link_onclick =
-					"frappe.query_reports['Profitability Analysis'].open_profit_and_loss_statement(" + JSON.stringify(data) + ")";
-				column.is_tree = true;
-			}
-
-			value = default_formatter(value, row, column, data);
-
-			if (!data.parent_account && data.based_on != 'project') {
-				value = $(`<span>${value}</span>`);
-				var $value = $(value).css("font-weight", "bold");
-				if (data.warn_if_negative && data[column.fieldname] < 0) {
-					$value.addClass("text-danger");
+		},
+		{
+			"fieldname": "accounting_dimension",
+			"label": __("Accounting Dimension"),
+			"fieldtype": "Link",
+			"options": "Accounting Dimension",
+			"get_query": () =>{
+				return {
+					filters: {
+						"disabled": 0
+					}
 				}
+			}
+		},
+		{
+			"fieldname": "fiscal_year",
+			"label": __("Fiscal Year"),
+			"fieldtype": "Link",
+			"options": "Fiscal Year",
+			"default": erpnext.utils.get_fiscal_year(frappe.datetime.get_today()),
+			"reqd": 1,
+			"on_change": function(query_report) {
+				var fiscal_year = query_report.get_values().fiscal_year;
+				if (!fiscal_year) {
+					return;
+				}
+				frappe.model.with_doc("Fiscal Year", fiscal_year, function(r) {
+					var fy = frappe.model.get_doc("Fiscal Year", fiscal_year);
+					frappe.query_report.set_filter_value({
+						from_date: fy.year_start_date,
+						to_date: fy.year_end_date
+					});
+				});
+			}
+		},
+		{
+			"fieldname": "from_date",
+			"label": __("From Date"),
+			"fieldtype": "Date",
+			"default": erpnext.utils.get_fiscal_year(frappe.datetime.get_today(), true)[1],
+		},
+		{
+			"fieldname": "to_date",
+			"label": __("To Date"),
+			"fieldtype": "Date",
+			"default": erpnext.utils.get_fiscal_year(frappe.datetime.get_today(), true)[2],
+		},
+		{
+			"fieldname": "show_zero_values",
+			"label": __("Show zero values"),
+			"fieldtype": "Check"
+		}
+	],
+	"formatter": function(value, row, column, data, default_formatter) {
+		if (column.fieldname=="account") {
+			value = data.account_name;
 
-				value = $value.wrap("<p></p>").parent().html();
+			column.link_onclick =
+				"frappe.query_reports['Profitability Analysis'].open_profit_and_loss_statement(" + JSON.stringify(data) + ")";
+			column.is_tree = true;
+		}
+
+		value = default_formatter(value, row, column, data);
+
+		if (!data.parent_account && data.based_on != 'project') {
+			value = $(`<span>${value}</span>`);
+			var $value = $(value).css("font-weight", "bold");
+			if (data.warn_if_negative && data[column.fieldname] < 0) {
+				$value.addClass("text-danger");
 			}
 
-			return value;
-		},
-		"open_profit_and_loss_statement": function(data) {
-			if (!data.account) return;
+			value = $value.wrap("<p></p>").parent().html();
+		}
 
-			frappe.route_options = {
-				"company": frappe.query_report.get_filter_value('company'),
-				"from_fiscal_year": data.fiscal_year,
-				"to_fiscal_year": data.fiscal_year
-			};
+		return value;
+	},
+	"open_profit_and_loss_statement": function(data) {
+		if (!data.account) return;
 
-			if(data.based_on == 'cost_center'){
-				frappe.route_options["cost_center"] = data.account
-			} else {
-				frappe.route_options["project"] = data.account
-			}
+		frappe.route_options = {
+			"company": frappe.query_report.get_filter_value('company'),
+			"from_fiscal_year": data.fiscal_year,
+			"to_fiscal_year": data.fiscal_year
+		};
 
-			frappe.set_route("query-report", "Profit and Loss Statement");
-		},
-		"tree": true,
-		"name_field": "account",
-		"parent_field": "parent_account",
-		"initial_depth": 3
-	}
+		if(data.based_on == 'Cost Center'){
+			frappe.route_options["cost_center"] = data.account
+		} else {
+			frappe.route_options["project"] = data.account
+		}
 
-	erpnext.dimension_filters.forEach((dimension) => {
-		frappe.query_reports["Profitability Analysis"].filters[1].options.push(dimension["document_type"]);
-	});
+		frappe.set_route("query-report", "Profit and Loss Statement");
+	},
+	"tree": true,
+	"name_field": "account",
+	"parent_field": "parent_account",
+	"initial_depth": 3
+}
 
+erpnext.dimension_filters.forEach((dimension) => {
+	frappe.query_reports["Profitability Analysis"].filters[1].options.push(dimension["document_type"]);
 });
+
diff --git a/erpnext/accounts/report/purchase_register/purchase_register.py b/erpnext/accounts/report/purchase_register/purchase_register.py
index c7b7e2f..162e5b5 100644
--- a/erpnext/accounts/report/purchase_register/purchase_register.py
+++ b/erpnext/accounts/report/purchase_register/purchase_register.py
@@ -10,8 +10,8 @@
 
 from erpnext.accounts.party import get_party_account
 from erpnext.accounts.report.utils import (
+	apply_common_conditions,
 	get_advance_taxes_and_charges,
-	get_conditions,
 	get_journal_entries,
 	get_opening_row,
 	get_party_details,
@@ -378,11 +378,8 @@
 
 def get_invoices(filters, additional_query_columns):
 	pi = frappe.qb.DocType("Purchase Invoice")
-	invoice_item = frappe.qb.DocType("Purchase Invoice Item")
 	query = (
 		frappe.qb.from_(pi)
-		.inner_join(invoice_item)
-		.on(pi.name == invoice_item.parent)
 		.select(
 			ConstantColumn("Purchase Invoice").as_("doctype"),
 			pi.name,
@@ -396,29 +393,46 @@
 			pi.remarks,
 			pi.base_net_total,
 			pi.base_grand_total,
+			pi.base_rounded_total,
 			pi.outstanding_amount,
 			pi.mode_of_payment,
 		)
 		.where((pi.docstatus == 1))
 		.orderby(pi.posting_date, pi.name, order=Order.desc)
 	)
+
 	if additional_query_columns:
 		for col in additional_query_columns:
 			query = query.select(col)
+
 	if filters.get("supplier"):
 		query = query.where(pi.supplier == filters.supplier)
-	query = get_conditions(
+
+	query = get_conditions(filters, query, "Purchase Invoice")
+
+	query = apply_common_conditions(
 		filters, query, doctype="Purchase Invoice", child_doctype="Purchase Invoice Item"
 	)
+
 	if filters.get("include_payments"):
 		party_account = get_party_account(
 			"Supplier", filters.get("supplier"), filters.get("company"), include_advance=True
 		)
 		query = query.where(pi.credit_to.isin(party_account))
+
 	invoices = query.run(as_dict=True)
 	return invoices
 
 
+def get_conditions(filters, query, doctype):
+	parent_doc = frappe.qb.DocType(doctype)
+
+	if filters.get("mode_of_payment"):
+		query = query.where(parent_doc.mode_of_payment == filters.mode_of_payment)
+
+	return query
+
+
 def get_payments(filters):
 	args = frappe._dict(
 		account="credit_to",
diff --git a/erpnext/accounts/report/sales_register/sales_register.py b/erpnext/accounts/report/sales_register/sales_register.py
index 35d8d16..0ba7186 100644
--- a/erpnext/accounts/report/sales_register/sales_register.py
+++ b/erpnext/accounts/report/sales_register/sales_register.py
@@ -11,8 +11,8 @@
 
 from erpnext.accounts.party import get_party_account
 from erpnext.accounts.report.utils import (
+	apply_common_conditions,
 	get_advance_taxes_and_charges,
-	get_conditions,
 	get_journal_entries,
 	get_opening_row,
 	get_party_details,
@@ -38,7 +38,7 @@
 	if filters.get("include_payments"):
 		invoice_list += get_payments(filters)
 
-	columns, income_accounts, tax_accounts, unrealized_profit_loss_accounts = get_columns(
+	columns, income_accounts, unrealized_profit_loss_accounts, tax_accounts = get_columns(
 		invoice_list, additional_table_columns, include_payments
 	)
 
@@ -415,14 +415,8 @@
 
 def get_invoices(filters, additional_query_columns):
 	si = frappe.qb.DocType("Sales Invoice")
-	invoice_item = frappe.qb.DocType("Sales Invoice Item")
-	invoice_payment = frappe.qb.DocType("Sales Invoice Payment")
 	query = (
 		frappe.qb.from_(si)
-		.inner_join(invoice_item)
-		.on(si.name == invoice_item.parent)
-		.left_join(invoice_payment)
-		.on(si.name == invoice_payment.parent)
 		.select(
 			ConstantColumn("Sales Invoice").as_("doctype"),
 			si.name,
@@ -447,18 +441,36 @@
 		.where((si.docstatus == 1))
 		.orderby(si.posting_date, si.name, order=Order.desc)
 	)
+
 	if additional_query_columns:
 		for col in additional_query_columns:
 			query = query.select(col)
+
 	if filters.get("customer"):
 		query = query.where(si.customer == filters.customer)
-	query = get_conditions(
+
+	query = get_conditions(filters, query, "Sales Invoice")
+	query = apply_common_conditions(
 		filters, query, doctype="Sales Invoice", child_doctype="Sales Invoice Item"
 	)
+
 	invoices = query.run(as_dict=True)
 	return invoices
 
 
+def get_conditions(filters, query, doctype):
+	parent_doc = frappe.qb.DocType(doctype)
+	if filters.get("owner"):
+		query = query.where(parent_doc.owner == filters.owner)
+
+	if filters.get("mode_of_payment"):
+		payment_doc = frappe.qb.DocType("Sales Invoice Payment")
+		query = query.inner_join(payment_doc).on(parent_doc.name == payment_doc.parent)
+		query = query.where(payment_doc.mode_of_payment == filters.mode_of_payment).distinct()
+
+	return query
+
+
 def get_payments(filters):
 	args = frappe._dict(
 		account="debit_to",
diff --git a/erpnext/accounts/report/tax_withholding_details/tax_withholding_details.py b/erpnext/accounts/report/tax_withholding_details/tax_withholding_details.py
index 7d16661..f2ec31c 100644
--- a/erpnext/accounts/report/tax_withholding_details/tax_withholding_details.py
+++ b/erpnext/accounts/report/tax_withholding_details/tax_withholding_details.py
@@ -68,7 +68,11 @@
 				tax_amount += entry.credit - entry.debit
 
 			if net_total_map.get(name):
-				total_amount, grand_total, base_total = net_total_map.get(name)
+				if voucher_type == "Journal Entry":
+					# back calcalute total amount from rate and tax_amount
+					total_amount = grand_total = base_total = tax_amount / (rate / 100)
+				else:
+					total_amount, grand_total, base_total = net_total_map.get(name)
 			else:
 				total_amount += entry.credit
 
@@ -257,7 +261,7 @@
 	}
 
 	party = frappe.get_all(filters.get("party_type"), pluck="name")
-	query_filters.update({"against": ("in", party)})
+	or_filters.update({"against": ("in", party), "voucher_type": "Journal Entry"})
 
 	if filters.get("party"):
 		del query_filters["account"]
@@ -294,7 +298,7 @@
 
 	if journal_entries:
 		journal_entry_party_map = get_journal_entry_party_map(journal_entries)
-		get_doc_info(journal_entries, "Journal Entry", tax_category_map)
+		get_doc_info(journal_entries, "Journal Entry", tax_category_map, net_total_map)
 
 	return (
 		tds_documents,
@@ -309,7 +313,11 @@
 	journal_entry_party_map = {}
 	for d in frappe.db.get_all(
 		"Journal Entry Account",
-		{"parent": ("in", journal_entries), "party_type": "Supplier", "party": ("is", "set")},
+		{
+			"parent": ("in", journal_entries),
+			"party_type": ("in", ("Supplier", "Customer")),
+			"party": ("is", "set"),
+		},
 		["parent", "party"],
 	):
 		if d.parent not in journal_entry_party_map:
@@ -320,41 +328,39 @@
 
 
 def get_doc_info(vouchers, doctype, tax_category_map, net_total_map=None):
-	if doctype == "Purchase Invoice":
-		fields = [
-			"name",
+	common_fields = ["name"]
+	fields_dict = {
+		"Purchase Invoice": [
 			"tax_withholding_category",
 			"base_tax_withholding_net_total",
 			"grand_total",
 			"base_total",
-		]
-	elif doctype == "Sales Invoice":
-		fields = ["name", "base_net_total", "grand_total", "base_total"]
-	elif doctype == "Payment Entry":
-		fields = [
-			"name",
+		],
+		"Sales Invoice": ["base_net_total", "grand_total", "base_total"],
+		"Payment Entry": [
 			"tax_withholding_category",
 			"paid_amount",
 			"paid_amount_after_tax",
 			"base_paid_amount",
-		]
-	else:
-		fields = ["name", "tax_withholding_category"]
+		],
+		"Journal Entry": ["tax_withholding_category", "total_amount"],
+	}
 
-	entries = frappe.get_all(doctype, filters={"name": ("in", vouchers)}, fields=fields)
+	entries = frappe.get_all(
+		doctype, filters={"name": ("in", vouchers)}, fields=common_fields + fields_dict[doctype]
+	)
 
 	for entry in entries:
 		tax_category_map.update({entry.name: entry.tax_withholding_category})
 		if doctype == "Purchase Invoice":
-			net_total_map.update(
-				{entry.name: [entry.base_tax_withholding_net_total, entry.grand_total, entry.base_total]}
-			)
+			value = [entry.base_tax_withholding_net_total, entry.grand_total, entry.base_total]
 		elif doctype == "Sales Invoice":
-			net_total_map.update({entry.name: [entry.base_net_total, entry.grand_total, entry.base_total]})
+			value = [entry.base_net_total, entry.grand_total, entry.base_total]
 		elif doctype == "Payment Entry":
-			net_total_map.update(
-				{entry.name: [entry.paid_amount, entry.paid_amount_after_tax, entry.base_paid_amount]}
-			)
+			value = [entry.paid_amount, entry.paid_amount_after_tax, entry.base_paid_amount]
+		else:
+			value = [entry.total_amount] * 3
+		net_total_map.update({entry.name: value})
 
 
 def get_tax_rate_map(filters):
diff --git a/erpnext/accounts/report/tax_withholding_details/test_tax_withholding_details.py b/erpnext/accounts/report/tax_withholding_details/test_tax_withholding_details.py
new file mode 100644
index 0000000..b3f6737
--- /dev/null
+++ b/erpnext/accounts/report/tax_withholding_details/test_tax_withholding_details.py
@@ -0,0 +1,111 @@
+# Copyright (c) 2023, Frappe Technologies Pvt. Ltd. and Contributors
+# MIT License. See license.txt
+
+import frappe
+from frappe.tests.utils import FrappeTestCase
+from frappe.utils import today
+
+from erpnext.accounts.doctype.cost_center.test_cost_center import create_cost_center
+from erpnext.accounts.doctype.payment_entry.test_payment_entry import create_payment_entry
+from erpnext.accounts.doctype.purchase_invoice.test_purchase_invoice import make_purchase_invoice
+from erpnext.accounts.doctype.sales_invoice.test_sales_invoice import create_sales_invoice
+from erpnext.accounts.doctype.tax_withholding_category.test_tax_withholding_category import (
+	create_tax_withholding_category,
+)
+from erpnext.accounts.report.tax_withholding_details.tax_withholding_details import execute
+from erpnext.accounts.test.accounts_mixin import AccountsTestMixin
+from erpnext.accounts.utils import get_fiscal_year
+
+
+class TestTdsPayableMonthly(AccountsTestMixin, FrappeTestCase):
+	def setUp(self):
+		self.create_company()
+		self.clear_old_entries()
+		create_tax_accounts()
+		create_tcs_category()
+
+	def test_tax_withholding_for_customers(self):
+		si = create_sales_invoice(rate=1000)
+		pe = create_tcs_payment_entry()
+		filters = frappe._dict(
+			company="_Test Company", party_type="Customer", from_date=today(), to_date=today()
+		)
+		result = execute(filters)[1]
+		expected_values = [
+			[pe.name, "TCS", 0.075, 2550, 0.53, 2550.53],
+			[si.name, "TCS", 0.075, 1000, 0.52, 1000.52],
+		]
+		self.check_expected_values(result, expected_values)
+
+	def check_expected_values(self, result, expected_values):
+		for i in range(len(result)):
+			voucher = frappe._dict(result[i])
+			voucher_expected_values = expected_values[i]
+			self.assertEqual(voucher.ref_no, voucher_expected_values[0])
+			self.assertEqual(voucher.section_code, voucher_expected_values[1])
+			self.assertEqual(voucher.rate, voucher_expected_values[2])
+			self.assertEqual(voucher.base_total, voucher_expected_values[3])
+			self.assertAlmostEqual(voucher.tax_amount, voucher_expected_values[4])
+			self.assertAlmostEqual(voucher.grand_total, voucher_expected_values[5])
+
+	def tearDown(self):
+		self.clear_old_entries()
+
+
+def create_tax_accounts():
+	account_names = ["TCS", "TDS"]
+	for account in account_names:
+		frappe.get_doc(
+			{
+				"doctype": "Account",
+				"company": "_Test Company",
+				"account_name": account,
+				"parent_account": "Duties and Taxes - _TC",
+				"report_type": "Balance Sheet",
+				"root_type": "Liability",
+			}
+		).insert(ignore_if_duplicate=True)
+
+
+def create_tcs_category():
+	fiscal_year = get_fiscal_year(today(), company="_Test Company")
+	from_date = fiscal_year[1]
+	to_date = fiscal_year[2]
+
+	tax_category = create_tax_withholding_category(
+		category_name="TCS",
+		rate=0.075,
+		from_date=from_date,
+		to_date=to_date,
+		account="TCS - _TC",
+		cumulative_threshold=300,
+	)
+
+	customer = frappe.get_doc("Customer", "_Test Customer")
+	customer.tax_withholding_category = "TCS"
+	customer.save()
+
+
+def create_tcs_payment_entry():
+	payment_entry = create_payment_entry(
+		payment_type="Receive",
+		party_type="Customer",
+		party="_Test Customer",
+		paid_from="Debtors - _TC",
+		paid_to="Cash - _TC",
+		paid_amount=2550,
+	)
+
+	payment_entry.append(
+		"taxes",
+		{
+			"account_head": "TCS - _TC",
+			"charge_type": "Actual",
+			"tax_amount": 0.53,
+			"add_deduct_tax": "Add",
+			"description": "Test",
+			"cost_center": "Main - _TC",
+		},
+	)
+	payment_entry.submit()
+	return payment_entry
diff --git a/erpnext/accounts/report/trial_balance/trial_balance.js b/erpnext/accounts/report/trial_balance/trial_balance.js
index ee6b4fe..edd40b6 100644
--- a/erpnext/accounts/report/trial_balance/trial_balance.js
+++ b/erpnext/accounts/report/trial_balance/trial_balance.js
@@ -1,112 +1,116 @@
 // Copyright (c) 2015, Frappe Technologies Pvt. Ltd. and Contributors
 // License: GNU General Public License v3. See license.txt
 
-frappe.require("assets/erpnext/js/financial_statements.js", function() {
-	frappe.query_reports["Trial Balance"] = {
-		"filters": [
-			{
-				"fieldname": "company",
-				"label": __("Company"),
-				"fieldtype": "Link",
-				"options": "Company",
-				"default": frappe.defaults.get_user_default("Company"),
-				"reqd": 1
-			},
-			{
-				"fieldname": "fiscal_year",
-				"label": __("Fiscal Year"),
-				"fieldtype": "Link",
-				"options": "Fiscal Year",
-				"default": erpnext.utils.get_fiscal_year(frappe.datetime.get_today()),
-				"reqd": 1,
-				"on_change": function(query_report) {
-					var fiscal_year = query_report.get_values().fiscal_year;
-					if (!fiscal_year) {
-						return;
-					}
-					frappe.model.with_doc("Fiscal Year", fiscal_year, function(r) {
-						var fy = frappe.model.get_doc("Fiscal Year", fiscal_year);
-						frappe.query_report.set_filter_value({
-							from_date: fy.year_start_date,
-							to_date: fy.year_end_date
-						});
+frappe.query_reports["Trial Balance"] = {
+	"filters": [
+		{
+			"fieldname": "company",
+			"label": __("Company"),
+			"fieldtype": "Link",
+			"options": "Company",
+			"default": frappe.defaults.get_user_default("Company"),
+			"reqd": 1
+		},
+		{
+			"fieldname": "fiscal_year",
+			"label": __("Fiscal Year"),
+			"fieldtype": "Link",
+			"options": "Fiscal Year",
+			"default": erpnext.utils.get_fiscal_year(frappe.datetime.get_today()),
+			"reqd": 1,
+			"on_change": function(query_report) {
+				var fiscal_year = query_report.get_values().fiscal_year;
+				if (!fiscal_year) {
+					return;
+				}
+				frappe.model.with_doc("Fiscal Year", fiscal_year, function(r) {
+					var fy = frappe.model.get_doc("Fiscal Year", fiscal_year);
+					frappe.query_report.set_filter_value({
+						from_date: fy.year_start_date,
+						to_date: fy.year_end_date
 					});
-				}
-			},
-			{
-				"fieldname": "from_date",
-				"label": __("From Date"),
-				"fieldtype": "Date",
-				"default": erpnext.utils.get_fiscal_year(frappe.datetime.get_today(), true)[1],
-			},
-			{
-				"fieldname": "to_date",
-				"label": __("To Date"),
-				"fieldtype": "Date",
-				"default": erpnext.utils.get_fiscal_year(frappe.datetime.get_today(), true)[2],
-			},
-			{
-				"fieldname": "cost_center",
-				"label": __("Cost Center"),
-				"fieldtype": "Link",
-				"options": "Cost Center",
-				"get_query": function() {
-					var company = frappe.query_report.get_filter_value('company');
-					return {
-						"doctype": "Cost Center",
-						"filters": {
-							"company": company,
-						}
+				});
+			}
+		},
+		{
+			"fieldname": "from_date",
+			"label": __("From Date"),
+			"fieldtype": "Date",
+			"default": erpnext.utils.get_fiscal_year(frappe.datetime.get_today(), true)[1],
+		},
+		{
+			"fieldname": "to_date",
+			"label": __("To Date"),
+			"fieldtype": "Date",
+			"default": erpnext.utils.get_fiscal_year(frappe.datetime.get_today(), true)[2],
+		},
+		{
+			"fieldname": "cost_center",
+			"label": __("Cost Center"),
+			"fieldtype": "Link",
+			"options": "Cost Center",
+			"get_query": function() {
+				var company = frappe.query_report.get_filter_value('company');
+				return {
+					"doctype": "Cost Center",
+					"filters": {
+						"company": company,
 					}
 				}
-			},
-			{
-				"fieldname": "project",
-				"label": __("Project"),
-				"fieldtype": "Link",
-				"options": "Project"
-			},
-			{
-				"fieldname": "finance_book",
-				"label": __("Finance Book"),
-				"fieldtype": "Link",
-				"options": "Finance Book",
-			},
-			{
-				"fieldname": "presentation_currency",
-				"label": __("Currency"),
-				"fieldtype": "Select",
-				"options": erpnext.get_presentation_currency_list()
-			},
-			{
-				"fieldname": "with_period_closing_entry",
-				"label": __("Period Closing Entry"),
-				"fieldtype": "Check",
-				"default": 1
-			},
-			{
-				"fieldname": "show_zero_values",
-				"label": __("Show zero values"),
-				"fieldtype": "Check"
-			},
-			{
-				"fieldname": "show_unclosed_fy_pl_balances",
-				"label": __("Show unclosed fiscal year's P&L balances"),
-				"fieldtype": "Check"
-			},
-			{
-				"fieldname": "include_default_book_entries",
-				"label": __("Include Default Book Entries"),
-				"fieldtype": "Check",
-				"default": 1
 			}
-		],
-		"formatter": erpnext.financial_statements.formatter,
-		"tree": true,
-		"name_field": "account",
-		"parent_field": "parent_account",
-		"initial_depth": 3
-	}
+		},
+		{
+			"fieldname": "project",
+			"label": __("Project"),
+			"fieldtype": "Link",
+			"options": "Project"
+		},
+		{
+			"fieldname": "finance_book",
+			"label": __("Finance Book"),
+			"fieldtype": "Link",
+			"options": "Finance Book",
+		},
+		{
+			"fieldname": "presentation_currency",
+			"label": __("Currency"),
+			"fieldtype": "Select",
+			"options": erpnext.get_presentation_currency_list()
+		},
+		{
+			"fieldname": "with_period_closing_entry",
+			"label": __("Period Closing Entry"),
+			"fieldtype": "Check",
+			"default": 1
+		},
+		{
+			"fieldname": "show_zero_values",
+			"label": __("Show zero values"),
+			"fieldtype": "Check"
+		},
+		{
+			"fieldname": "show_unclosed_fy_pl_balances",
+			"label": __("Show unclosed fiscal year's P&L balances"),
+			"fieldtype": "Check"
+		},
+		{
+			"fieldname": "include_default_book_entries",
+			"label": __("Include Default Book Entries"),
+			"fieldtype": "Check",
+			"default": 1
+		},
+		{
+			"fieldname": "show_net_values",
+			"label": __("Show net values in opening and closing columns"),
+			"fieldtype": "Check",
+			"default": 1
+		}
+	],
+	"formatter": erpnext.financial_statements.formatter,
+	"tree": true,
+	"name_field": "account",
+	"parent_field": "parent_account",
+	"initial_depth": 3
+}
 
-	erpnext.utils.add_dimensions('Trial Balance', 6);
-});
+erpnext.utils.add_dimensions('Trial Balance', 6);
diff --git a/erpnext/accounts/report/trial_balance/trial_balance.py b/erpnext/accounts/report/trial_balance/trial_balance.py
index 376571f..2a8aa0c 100644
--- a/erpnext/accounts/report/trial_balance/trial_balance.py
+++ b/erpnext/accounts/report/trial_balance/trial_balance.py
@@ -120,7 +120,9 @@
 		ignore_opening_entries=True,
 	)
 
-	calculate_values(accounts, gl_entries_by_account, opening_balances)
+	calculate_values(
+		accounts, gl_entries_by_account, opening_balances, filters.get("show_net_values")
+	)
 	accumulate_values_into_parents(accounts, accounts_by_name)
 
 	data = prepare_data(accounts, filters, parent_children_map, company_currency)
@@ -310,7 +312,7 @@
 	return gle
 
 
-def calculate_values(accounts, gl_entries_by_account, opening_balances):
+def calculate_values(accounts, gl_entries_by_account, opening_balances, show_net_values):
 	init = {
 		"opening_debit": 0.0,
 		"opening_credit": 0.0,
@@ -335,7 +337,8 @@
 		d["closing_debit"] = d["opening_debit"] + d["debit"]
 		d["closing_credit"] = d["opening_credit"] + d["credit"]
 
-		prepare_opening_closing(d)
+		if show_net_values:
+			prepare_opening_closing(d)
 
 
 def calculate_total_row(accounts, company_currency):
@@ -375,7 +378,7 @@
 
 	for d in accounts:
 		# Prepare opening closing for group account
-		if parent_children_map.get(d.account):
+		if parent_children_map.get(d.account) and filters.get("show_net_values"):
 			prepare_opening_closing(d)
 
 		has_value = False
diff --git a/erpnext/accounts/report/utils.py b/erpnext/accounts/report/utils.py
index 0753fff..9f96449 100644
--- a/erpnext/accounts/report/utils.py
+++ b/erpnext/accounts/report/utils.py
@@ -256,7 +256,8 @@
 		)
 		.orderby(je.posting_date, je.name, order=Order.desc)
 	)
-	query = get_conditions(filters, query, doctype="Journal Entry", payments=True)
+	query = apply_common_conditions(filters, query, doctype="Journal Entry", payments=True)
+
 	journal_entries = query.run(as_dict=True)
 	return journal_entries
 
@@ -284,28 +285,17 @@
 		)
 		.orderby(pe.posting_date, pe.name, order=Order.desc)
 	)
-	query = get_conditions(filters, query, doctype="Payment Entry", payments=True)
+	query = apply_common_conditions(filters, query, doctype="Payment Entry", payments=True)
 	payment_entries = query.run(as_dict=True)
 	return payment_entries
 
 
-def get_conditions(filters, query, doctype, child_doctype=None, payments=False):
+def apply_common_conditions(filters, query, doctype, child_doctype=None, payments=False):
 	parent_doc = frappe.qb.DocType(doctype)
 	if child_doctype:
 		child_doc = frappe.qb.DocType(child_doctype)
 
-	if parent_doc.get_table_name() == "tabSales Invoice":
-		if filters.get("owner"):
-			query = query.where(parent_doc.owner == filters.owner)
-		if filters.get("mode_of_payment"):
-			payment_doc = frappe.qb.DocType("Sales Invoice Payment")
-			query = query.where(payment_doc.mode_of_payment == filters.mode_of_payment)
-		if not payments:
-			if filters.get("brand"):
-				query = query.where(child_doc.brand == filters.brand)
-	else:
-		if filters.get("mode_of_payment"):
-			query = query.where(parent_doc.mode_of_payment == filters.mode_of_payment)
+	join_required = False
 
 	if filters.get("company"):
 		query = query.where(parent_doc.company == filters.company)
@@ -320,13 +310,26 @@
 	else:
 		if filters.get("cost_center"):
 			query = query.where(child_doc.cost_center == filters.cost_center)
+			join_required = True
 		if filters.get("warehouse"):
 			query = query.where(child_doc.warehouse == filters.warehouse)
+			join_required = True
 		if filters.get("item_group"):
 			query = query.where(child_doc.item_group == filters.item_group)
+			join_required = True
+
+	if not payments:
+		if filters.get("brand"):
+			query = query.where(child_doc.brand == filters.brand)
+			join_required = True
+
+	if join_required:
+		query = query.inner_join(child_doc).on(parent_doc.name == child_doc.parent)
+		query = query.distinct()
 
 	if parent_doc.get_table_name() != "tabJournal Entry":
 		query = filter_invoices_based_on_dimensions(filters, query, parent_doc)
+
 	return query
 
 
diff --git a/erpnext/accounts/test/accounts_mixin.py b/erpnext/accounts/test/accounts_mixin.py
index debfffd..d503f7b 100644
--- a/erpnext/accounts/test/accounts_mixin.py
+++ b/erpnext/accounts/test/accounts_mixin.py
@@ -60,7 +60,6 @@
 		self.income_account = "Sales - " + abbr
 		self.expense_account = "Cost of Goods Sold - " + abbr
 		self.debit_to = "Debtors - " + abbr
-		self.debit_usd = "Debtors USD - " + abbr
 		self.cash = "Cash - " + abbr
 		self.creditors = "Creditors - " + abbr
 		self.retained_earnings = "Retained Earnings - " + abbr
@@ -105,6 +104,50 @@
 				new_acc.save()
 				setattr(self, acc.attribute_name, new_acc.name)
 
+	def create_usd_receivable_account(self):
+		account_name = "Debtors USD"
+		if not frappe.db.get_value(
+			"Account", filters={"account_name": account_name, "company": self.company}
+		):
+			acc = frappe.new_doc("Account")
+			acc.account_name = account_name
+			acc.parent_account = "Accounts Receivable - " + self.company_abbr
+			acc.company = self.company
+			acc.account_currency = "USD"
+			acc.account_type = "Receivable"
+			acc.insert()
+		else:
+			name = frappe.db.get_value(
+				"Account",
+				filters={"account_name": account_name, "company": self.company},
+				fieldname="name",
+				pluck=True,
+			)
+			acc = frappe.get_doc("Account", name)
+		self.debtors_usd = acc.name
+
+	def create_usd_payable_account(self):
+		account_name = "Creditors USD"
+		if not frappe.db.get_value(
+			"Account", filters={"account_name": account_name, "company": self.company}
+		):
+			acc = frappe.new_doc("Account")
+			acc.account_name = account_name
+			acc.parent_account = "Accounts Payable - " + self.company_abbr
+			acc.company = self.company
+			acc.account_currency = "USD"
+			acc.account_type = "Payable"
+			acc.insert()
+		else:
+			name = frappe.db.get_value(
+				"Account",
+				filters={"account_name": account_name, "company": self.company},
+				fieldname="name",
+				pluck=True,
+			)
+			acc = frappe.get_doc("Account", name)
+		self.creditors_usd = acc.name
+
 	def clear_old_entries(self):
 		doctype_list = [
 			"GL Entry",
@@ -113,6 +156,10 @@
 			"Purchase Invoice",
 			"Payment Entry",
 			"Journal Entry",
+			"Sales Order",
+			"Exchange Rate Revaluation",
+			"Bank Account",
+			"Bank Transaction",
 		]
 		for doctype in doctype_list:
 			qb.from_(qb.DocType(doctype)).delete().where(qb.DocType(doctype).company == self.company).run()
diff --git a/erpnext/accounts/utils.py b/erpnext/accounts/utils.py
index 1aefeaa..555ed4f 100644
--- a/erpnext/accounts/utils.py
+++ b/erpnext/accounts/utils.py
@@ -474,10 +474,12 @@
 
 			# update ref in advance entry
 			if voucher_type == "Journal Entry":
-				update_reference_in_journal_entry(entry, doc, do_not_save=True)
+				referenced_row = update_reference_in_journal_entry(entry, doc, do_not_save=False)
 				# advance section in sales/purchase invoice and reconciliation tool,both pass on exchange gain/loss
 				# amount and account in args
-				doc.make_exchange_gain_loss_journal(args)
+				# referenced_row is used to deduplicate gain/loss journal
+				entry.update({"referenced_row": referenced_row})
+				doc.make_exchange_gain_loss_journal([entry])
 			else:
 				update_reference_in_payment_entry(
 					entry, doc, do_not_save=True, skip_ref_details_update_for_pe=skip_ref_details_update_for_pe
@@ -489,14 +491,13 @@
 		gl_map = doc.build_gl_map()
 		create_payment_ledger_entry(gl_map, update_outstanding="No", cancel=0, adv_adj=1)
 
-		if voucher_type == "Payment Entry":
-			doc.make_advance_gl_entries()
-
 		# Only update outstanding for newly linked vouchers
 		for entry in entries:
 			update_voucher_outstanding(
 				entry.against_voucher_type, entry.against_voucher, entry.account, entry.party_type, entry.party
 			)
+			if voucher_type == "Payment Entry":
+				doc.make_advance_gl_entries(entry.against_voucher_type, entry.against_voucher)
 
 		frappe.flags.ignore_party_validation = False
 
@@ -580,6 +581,10 @@
 	"""
 	jv_detail = journal_entry.get("accounts", {"name": d["voucher_detail_no"]})[0]
 
+	# Update Advance Paid in SO/PO since they might be getting unlinked
+	if jv_detail.get("reference_type") in ("Sales Order", "Purchase Order"):
+		frappe.get_doc(jv_detail.reference_type, jv_detail.reference_name).set_total_advance_paid()
+
 	if flt(d["unadjusted_amount"]) - flt(d["allocated_amount"]) != 0:
 		# adjust the unreconciled balance
 		amount_in_account_currency = flt(d["unadjusted_amount"]) - flt(d["allocated_amount"])
@@ -627,6 +632,8 @@
 	if not do_not_save:
 		journal_entry.save(ignore_permissions=True)
 
+	return new_row.name
+
 
 def update_reference_in_payment_entry(
 	d, payment_entry, do_not_save=False, skip_ref_details_update_for_pe=False
@@ -644,6 +651,13 @@
 
 	if d.voucher_detail_no:
 		existing_row = payment_entry.get("references", {"name": d["voucher_detail_no"]})[0]
+
+		# Update Advance Paid in SO/PO since they are getting unlinked
+		if existing_row.get("reference_doctype") in ("Sales Order", "Purchase Order"):
+			frappe.get_doc(
+				existing_row.reference_doctype, existing_row.reference_name
+			).set_total_advance_paid()
+
 		original_row = existing_row.as_dict().copy()
 		existing_row.update(reference_details)
 
@@ -671,7 +685,9 @@
 		payment_entry.save(ignore_permissions=True)
 
 
-def cancel_exchange_gain_loss_journal(parent_doc: dict | object) -> None:
+def cancel_exchange_gain_loss_journal(
+	parent_doc: dict | object, referenced_dt: str = None, referenced_dn: str = None
+) -> None:
 	"""
 	Cancel Exchange Gain/Loss for Sales/Purchase Invoice, if they have any.
 	"""
@@ -698,76 +714,147 @@
 				as_list=1,
 			)
 			for doc in gain_loss_journals:
-				frappe.get_doc("Journal Entry", doc[0]).cancel()
+				gain_loss_je = frappe.get_doc("Journal Entry", doc[0])
+				if referenced_dt and referenced_dn:
+					references = [(x.reference_type, x.reference_name) for x in gain_loss_je.accounts]
+					if (
+						len(references) == 2
+						and (referenced_dt, referenced_dn) in references
+						and (parent_doc.doctype, parent_doc.name) in references
+					):
+						# only cancel JE generated against parent_doc and referenced_dn
+						gain_loss_je.cancel()
+				else:
+					gain_loss_je.cancel()
 
 
-def unlink_ref_doc_from_payment_entries(ref_doc):
-	remove_ref_doc_link_from_jv(ref_doc.doctype, ref_doc.name)
-	remove_ref_doc_link_from_pe(ref_doc.doctype, ref_doc.name)
-
-	frappe.db.sql(
-		"""update `tabGL Entry`
-		set against_voucher_type=null, against_voucher=null,
-		modified=%s, modified_by=%s
-		where against_voucher_type=%s and against_voucher=%s
-		and voucher_no != ifnull(against_voucher, '')""",
-		(now(), frappe.session.user, ref_doc.doctype, ref_doc.name),
+def update_accounting_ledgers_after_reference_removal(
+	ref_type: str = None, ref_no: str = None, payment_name: str = None
+):
+	# General Ledger
+	gle = qb.DocType("GL Entry")
+	gle_update_query = (
+		qb.update(gle)
+		.set(gle.against_voucher_type, None)
+		.set(gle.against_voucher, None)
+		.set(gle.modified, now())
+		.set(gle.modified_by, frappe.session.user)
+		.where((gle.against_voucher_type == ref_type) & (gle.against_voucher == ref_no))
 	)
 
+	if payment_name:
+		gle_update_query = gle_update_query.where(gle.voucher_no == payment_name)
+	gle_update_query.run()
+
+	# Payment Ledger
 	ple = qb.DocType("Payment Ledger Entry")
+	ple_update_query = (
+		qb.update(ple)
+		.set(ple.against_voucher_type, ple.voucher_type)
+		.set(ple.against_voucher_no, ple.voucher_no)
+		.set(ple.modified, now())
+		.set(ple.modified_by, frappe.session.user)
+		.where(
+			(ple.against_voucher_type == ref_type)
+			& (ple.against_voucher_no == ref_no)
+			& (ple.delinked == 0)
+		)
+	)
 
-	qb.update(ple).set(ple.against_voucher_type, ple.voucher_type).set(
-		ple.against_voucher_no, ple.voucher_no
-	).set(ple.modified, now()).set(ple.modified_by, frappe.session.user).where(
-		(ple.against_voucher_type == ref_doc.doctype)
-		& (ple.against_voucher_no == ref_doc.name)
-		& (ple.delinked == 0)
-	).run()
+	if payment_name:
+		ple_update_query = ple_update_query.where(ple.voucher_no == payment_name)
+	ple_update_query.run()
 
+
+def remove_ref_from_advance_section(ref_doc: object = None):
+	# TODO: this might need some testing
 	if ref_doc.doctype in ("Sales Invoice", "Purchase Invoice"):
 		ref_doc.set("advances", [])
-
-		frappe.db.sql(
-			"""delete from `tab{0} Advance` where parent = %s""".format(ref_doc.doctype), ref_doc.name
-		)
+		adv_type = qb.DocType(f"{ref_doc.doctype} Advance")
+		qb.from_(adv_type).delete().where(adv_type.parent == ref_doc.name).run()
 
 
-def remove_ref_doc_link_from_jv(ref_type, ref_no):
-	linked_jv = frappe.db.sql_list(
-		"""select parent from `tabJournal Entry Account`
-		where reference_type=%s and reference_name=%s and docstatus < 2""",
-		(ref_type, ref_no),
+def unlink_ref_doc_from_payment_entries(ref_doc: object = None, payment_name: str = None):
+	remove_ref_doc_link_from_jv(ref_doc.doctype, ref_doc.name, payment_name)
+	remove_ref_doc_link_from_pe(ref_doc.doctype, ref_doc.name, payment_name)
+	update_accounting_ledgers_after_reference_removal(ref_doc.doctype, ref_doc.name, payment_name)
+	remove_ref_from_advance_section(ref_doc)
+
+
+def remove_ref_doc_link_from_jv(
+	ref_type: str = None, ref_no: str = None, payment_name: str = None
+):
+	jea = qb.DocType("Journal Entry Account")
+
+	linked_jv = (
+		qb.from_(jea)
+		.select(jea.parent)
+		.where((jea.reference_type == ref_type) & (jea.reference_name == ref_no) & (jea.docstatus.lt(2)))
+		.run(as_list=1)
 	)
+	linked_jv = convert_to_list(linked_jv)
+	# remove reference only from specified payment
+	linked_jv = [x for x in linked_jv if x == payment_name] if payment_name else linked_jv
 
 	if linked_jv:
-		frappe.db.sql(
-			"""update `tabJournal Entry Account`
-			set reference_type=null, reference_name = null,
-			modified=%s, modified_by=%s
-			where reference_type=%s and reference_name=%s
-			and docstatus < 2""",
-			(now(), frappe.session.user, ref_type, ref_no),
+		update_query = (
+			qb.update(jea)
+			.set(jea.reference_type, None)
+			.set(jea.reference_name, None)
+			.set(jea.modified, now())
+			.set(jea.modified_by, frappe.session.user)
+			.where((jea.reference_type == ref_type) & (jea.reference_name == ref_no))
 		)
 
+		if payment_name:
+			update_query = update_query.where(jea.parent == payment_name)
+
+		update_query.run()
+
 		frappe.msgprint(_("Journal Entries {0} are un-linked").format("\n".join(linked_jv)))
 
 
-def remove_ref_doc_link_from_pe(ref_type, ref_no):
-	linked_pe = frappe.db.sql_list(
-		"""select parent from `tabPayment Entry Reference`
-		where reference_doctype=%s and reference_name=%s and docstatus < 2""",
-		(ref_type, ref_no),
+def convert_to_list(result):
+	"""
+	Convert tuple to list
+	"""
+	return [x[0] for x in result]
+
+
+def remove_ref_doc_link_from_pe(
+	ref_type: str = None, ref_no: str = None, payment_name: str = None
+):
+	per = qb.DocType("Payment Entry Reference")
+	pay = qb.DocType("Payment Entry")
+
+	linked_pe = (
+		qb.from_(per)
+		.select(per.parent)
+		.where(
+			(per.reference_doctype == ref_type) & (per.reference_name == ref_no) & (per.docstatus.lt(2))
+		)
+		.run(as_list=1)
 	)
+	linked_pe = convert_to_list(linked_pe)
+	# remove reference only from specified payment
+	linked_pe = [x for x in linked_pe if x == payment_name] if payment_name else linked_pe
 
 	if linked_pe:
-		frappe.db.sql(
-			"""update `tabPayment Entry Reference`
-			set allocated_amount=0, modified=%s, modified_by=%s
-			where reference_doctype=%s and reference_name=%s
-			and docstatus < 2""",
-			(now(), frappe.session.user, ref_type, ref_no),
+		update_query = (
+			qb.update(per)
+			.set(per.allocated_amount, 0)
+			.set(per.modified, now())
+			.set(per.modified_by, frappe.session.user)
+			.where(
+				(per.docstatus.lt(2) & (per.reference_doctype == ref_type) & (per.reference_name == ref_no))
+			)
 		)
 
+		if payment_name:
+			update_query = update_query.where(per.parent == payment_name)
+
+		update_query.run()
+
 		for pe in linked_pe:
 			try:
 				pe_doc = frappe.get_doc("Payment Entry", pe)
@@ -781,19 +868,13 @@
 				msg += _("Please cancel payment entry manually first")
 				frappe.throw(msg, exc=PaymentEntryUnlinkError, title=_("Payment Unlink Error"))
 
-			frappe.db.sql(
-				"""update `tabPayment Entry` set total_allocated_amount=%s,
-				base_total_allocated_amount=%s, unallocated_amount=%s, modified=%s, modified_by=%s
-				where name=%s""",
-				(
-					pe_doc.total_allocated_amount,
-					pe_doc.base_total_allocated_amount,
-					pe_doc.unallocated_amount,
-					now(),
-					frappe.session.user,
-					pe,
-				),
-			)
+			qb.update(pay).set(pay.total_allocated_amount, pe_doc.total_allocated_amount).set(
+				pay.base_total_allocated_amount, pe_doc.base_total_allocated_amount
+			).set(pay.unallocated_amount, pe_doc.unallocated_amount).set(pay.modified, now()).set(
+				pay.modified_by, frappe.session.user
+			).where(
+				pay.name == pe
+			).run()
 
 		frappe.msgprint(_("Payment Entries {0} are un-linked").format("\n".join(linked_pe)))
 
@@ -1159,12 +1240,17 @@
 
 def parse_naming_series_variable(doc, variable):
 	if variable == "FY":
-		date = doc.get("posting_date") or doc.get("transaction_date") or getdate()
-		return get_fiscal_year(date=date, company=doc.get("company"))[0]
+		if doc:
+			date = doc.get("posting_date") or doc.get("transaction_date")
+			company = doc.get("company")
+		else:
+			date = getdate()
+			company = None
+		return get_fiscal_year(date=date, company=company)[0]
 
 
 @frappe.whitelist()
-def get_coa(doctype, parent, is_root, chart=None):
+def get_coa(doctype, parent, is_root=None, chart=None):
 	from erpnext.accounts.doctype.account.chart_of_accounts.chart_of_accounts import (
 		build_tree_from_json,
 	)
@@ -1750,6 +1836,7 @@
 				ple.posting_date,
 				ple.due_date,
 				ple.account_currency.as_("currency"),
+				ple.cost_center.as_("cost_center"),
 				Sum(ple.amount).as_("amount"),
 				Sum(ple.amount_in_account_currency).as_("amount_in_account_currency"),
 			)
@@ -1812,6 +1899,7 @@
 				).as_("paid_amount_in_account_currency"),
 				Table("vouchers").due_date,
 				Table("vouchers").currency,
+				Table("vouchers").cost_center.as_("cost_center"),
 			)
 			.where(Criterion.all(filter_on_outstanding_amount))
 		)
@@ -1882,6 +1970,7 @@
 
 def create_gain_loss_journal(
 	company,
+	posting_date,
 	party_type,
 	party,
 	party_account,
@@ -1895,12 +1984,14 @@
 	ref2_dt,
 	ref2_dn,
 	ref2_detail_no,
+	cost_center,
 ) -> str:
 	journal_entry = frappe.new_doc("Journal Entry")
 	journal_entry.voucher_type = "Exchange Gain Or Loss"
 	journal_entry.company = company
-	journal_entry.posting_date = nowdate()
+	journal_entry.posting_date = posting_date or nowdate()
 	journal_entry.multi_currency = 1
+	journal_entry.is_system_generated = True
 
 	party_account_currency = frappe.get_cached_value("Account", party_account, "account_currency")
 
@@ -1919,7 +2010,7 @@
 			"party": party,
 			"account_currency": party_account_currency,
 			"exchange_rate": 0,
-			"cost_center": erpnext.get_default_cost_center(company),
+			"cost_center": cost_center or erpnext.get_default_cost_center(company),
 			"reference_type": ref1_dt,
 			"reference_name": ref1_dn,
 			"reference_detail_no": ref1_detail_no,
@@ -1935,7 +2026,7 @@
 			"account": gain_loss_account,
 			"account_currency": gain_loss_account_currency,
 			"exchange_rate": 1,
-			"cost_center": erpnext.get_default_cost_center(company),
+			"cost_center": cost_center or erpnext.get_default_cost_center(company),
 			"reference_type": ref2_dt,
 			"reference_name": ref2_dn,
 			"reference_detail_no": ref2_detail_no,
diff --git a/erpnext/assets/doctype/asset/asset.js b/erpnext/assets/doctype/asset/asset.js
index 962292b..f0e4c82 100644
--- a/erpnext/assets/doctype/asset/asset.js
+++ b/erpnext/assets/doctype/asset/asset.js
@@ -148,6 +148,15 @@
 
 		if (frm.doc.docstatus == 0) {
 			frm.toggle_reqd("finance_books", frm.doc.calculate_depreciation);
+
+			if (frm.doc.is_composite_asset && !frm.doc.capitalized_in) {
+				$('.primary-action').prop('hidden', true);
+				$('.form-message').text('Capitalize this asset to confirm');
+
+				frm.add_custom_button(__("Capitalize Asset"), function() {
+					frm.trigger("create_asset_capitalization");
+				});
+			}
 		}
 	},
 
@@ -169,7 +178,7 @@
 			frm.set_df_property('purchase_invoice', 'read_only', 1);
 			frm.set_df_property('purchase_receipt', 'read_only', 1);
 		}
-		else if (frm.doc.is_existing_asset) {
+		else if (frm.doc.is_existing_asset || frm.doc.is_composite_asset) {
 			frm.toggle_reqd('purchase_receipt', 0);
 			frm.toggle_reqd('purchase_invoice', 0);
 		}
@@ -239,7 +248,7 @@
 
 		datatable.style.setStyle(`.dt-scrollable`, {'font-size': '0.75rem', 'margin-bottom': '1rem', 'margin-left': '0.35rem', 'margin-right': '0.35rem'});
 		datatable.style.setStyle(`.dt-header`, {'margin-left': '0.35rem', 'margin-right': '0.35rem'});
-		datatable.style.setStyle(`.dt-cell--header`, {'color': 'var(--text-muted)'});
+		datatable.style.setStyle(`.dt-cell--header .dt-cell__content`, {'color': 'var(--gray-600)', 'font-size': 'var(--text-sm)'});
 		datatable.style.setStyle(`.dt-cell`, {'color': 'var(--text-color)'});
 		datatable.style.setStyle(`.dt-cell--col-1`, {'text-align': 'center'});
 		datatable.style.setStyle(`.dt-cell--col-2`, {'font-weight': 600});
@@ -328,7 +337,7 @@
 
 
 	item_code: function(frm) {
-		if(frm.doc.item_code && frm.doc.calculate_depreciation) {
+		if(frm.doc.item_code && frm.doc.calculate_depreciation && frm.doc.gross_purchase_amount) {
 			frm.trigger('set_finance_book');
 		} else {
 			frm.set_value('finance_books', []);
@@ -340,7 +349,8 @@
 			method: "erpnext.assets.doctype.asset.asset.get_item_details",
 			args: {
 				item_code: frm.doc.item_code,
-				asset_category: frm.doc.asset_category
+				asset_category: frm.doc.asset_category,
+				gross_purchase_amount: frm.doc.gross_purchase_amount
 			},
 			callback: function(r, rt) {
 				if(r.message) {
@@ -352,7 +362,17 @@
 
 	is_existing_asset: function(frm) {
 		frm.trigger("toggle_reference_doc");
-		// frm.toggle_reqd("next_depreciation_date", (!frm.doc.is_existing_asset && frm.doc.calculate_depreciation));
+	},
+
+	is_composite_asset: function(frm) {
+		if(frm.doc.is_composite_asset) {
+			frm.set_value('gross_purchase_amount', 0);
+			frm.set_df_property('gross_purchase_amount', 'read_only', 1);
+		} else {
+			frm.set_df_property('gross_purchase_amount', 'read_only', 0);
+		}
+
+		frm.trigger("toggle_reference_doc");
 	},
 
 	make_sales_invoice: function(frm) {
@@ -402,6 +422,19 @@
 		});
 	},
 
+	create_asset_capitalization: function(frm) {
+		frappe.call({
+			args: {
+				"asset": frm.doc.name,
+			},
+			method: "erpnext.assets.doctype.asset.asset.create_asset_capitalization",
+			callback: function(r) {
+				var doclist = frappe.model.sync(r.message);
+				frappe.set_route("Form", doclist[0].doctype, doclist[0].name);
+			}
+		});
+	},
+
 	split_asset: function(frm) {
 		const title = __('Split Asset');
 
@@ -457,7 +490,7 @@
 
 	calculate_depreciation: function(frm) {
 		frm.toggle_reqd("finance_books", frm.doc.calculate_depreciation);
-		if (frm.doc.item_code && frm.doc.calculate_depreciation ) {
+		if (frm.doc.item_code && frm.doc.calculate_depreciation && frm.doc.gross_purchase_amount) {
 			frm.trigger("set_finance_book");
 		} else {
 			frm.set_value("finance_books", []);
@@ -465,9 +498,11 @@
 	},
 
 	gross_purchase_amount: function(frm) {
-		frm.doc.finance_books.forEach(d => {
-			frm.events.set_depreciation_rate(frm, d);
-		})
+		if (frm.doc.finance_books) {
+			frm.doc.finance_books.forEach(d => {
+				frm.events.set_depreciation_rate(frm, d);
+			})
+		}
 	},
 
 	purchase_receipt: (frm) => {
@@ -546,7 +581,21 @@
 				}
 			});
 		}
-	}
+	},
+
+	set_salvage_value_percentage_or_expected_value_after_useful_life: function(frm, row, salvage_value_percentage_changed, expected_value_after_useful_life_changed) {
+		if (expected_value_after_useful_life_changed) {
+			frappe.flags.from_set_salvage_value_percentage_or_expected_value_after_useful_life = true;
+			const new_salvage_value_percentage = flt((row.expected_value_after_useful_life * 100) / frm.doc.gross_purchase_amount, precision("salvage_value_percentage", row));
+			frappe.model.set_value(row.doctype, row.name, "salvage_value_percentage", new_salvage_value_percentage);
+			frappe.flags.from_set_salvage_value_percentage_or_expected_value_after_useful_life = false;
+		} else if (salvage_value_percentage_changed) {
+			frappe.flags.from_set_salvage_value_percentage_or_expected_value_after_useful_life = true;
+			const new_expected_value_after_useful_life = flt(frm.doc.gross_purchase_amount * (row.salvage_value_percentage / 100), precision('gross_purchase_amount'));
+			frappe.model.set_value(row.doctype, row.name, "expected_value_after_useful_life", new_expected_value_after_useful_life);
+			frappe.flags.from_set_salvage_value_percentage_or_expected_value_after_useful_life = false;
+		}
+	},
 });
 
 frappe.ui.form.on('Asset Finance Book', {
@@ -557,9 +606,19 @@
 
 	expected_value_after_useful_life: function(frm, cdt, cdn) {
 		const row = locals[cdt][cdn];
+		if (!frappe.flags.from_set_salvage_value_percentage_or_expected_value_after_useful_life) {
+			frm.events.set_salvage_value_percentage_or_expected_value_after_useful_life(frm, row, false, true);
+		}
 		frm.events.set_depreciation_rate(frm, row);
 	},
 
+	salvage_value_percentage: function(frm, cdt, cdn) {
+		const row = locals[cdt][cdn];
+		if (!frappe.flags.from_set_salvage_value_percentage_or_expected_value_after_useful_life) {
+			frm.events.set_salvage_value_percentage_or_expected_value_after_useful_life(frm, row, true, false);
+		}
+	},
+
 	frequency_of_depreciation: function(frm, cdt, cdn) {
 		const row = locals[cdt][cdn];
 		frm.events.set_depreciation_rate(frm, row);
diff --git a/erpnext/assets/doctype/asset/asset.json b/erpnext/assets/doctype/asset/asset.json
index befb524..c7d08e2 100644
--- a/erpnext/assets/doctype/asset/asset.json
+++ b/erpnext/assets/doctype/asset/asset.json
@@ -14,6 +14,7 @@
   "asset_owner",
   "asset_owner_company",
   "is_existing_asset",
+  "is_composite_asset",
   "supplier",
   "customer",
   "image",
@@ -72,7 +73,8 @@
   "purchase_receipt_amount",
   "default_finance_book",
   "depr_entry_posting_status",
-  "amended_from"
+  "amended_from",
+  "capitalized_in"
  ],
  "fields": [
   {
@@ -199,7 +201,7 @@
    "fieldtype": "Date",
    "label": "Purchase Date",
    "read_only": 1,
-   "read_only_depends_on": "eval:!doc.is_existing_asset",
+   "read_only_depends_on": "eval:!doc.is_existing_asset && !doc.is_composite_asset",
    "reqd": 1
   },
   {
@@ -237,10 +239,12 @@
    "default": "0",
    "fieldname": "calculate_depreciation",
    "fieldtype": "Check",
-   "label": "Calculate Depreciation"
+   "label": "Calculate Depreciation",
+   "read_only_depends_on": "eval:doc.is_composite_asset && !doc.gross_purchase_amount"
   },
   {
    "default": "0",
+   "depends_on": "eval:!doc.is_composite_asset",
    "fieldname": "is_existing_asset",
    "fieldtype": "Check",
    "label": "Is Existing Asset"
@@ -478,7 +482,7 @@
    "fieldname": "asset_quantity",
    "fieldtype": "Int",
    "label": "Asset Quantity",
-   "read_only_depends_on": "eval:!doc.is_existing_asset"
+   "read_only_depends_on": "eval:!doc.is_existing_asset && !doc.is_composite_asset"
   },
   {
    "fieldname": "depr_entry_posting_status",
@@ -507,6 +511,21 @@
    "fieldname": "is_fully_depreciated",
    "fieldtype": "Check",
    "label": "Is Fully Depreciated"
+  },
+  {
+   "default": "0",
+   "depends_on": "eval:!doc.is_existing_asset",
+   "fieldname": "is_composite_asset",
+   "fieldtype": "Check",
+   "label": "Is Composite Asset"
+  },
+  {
+   "fieldname": "capitalized_in",
+   "fieldtype": "Link",
+   "hidden": 1,
+   "label": "Capitalized In",
+   "options": "Asset Capitalization",
+   "read_only": 1
   }
  ],
  "idx": 72,
@@ -545,7 +564,7 @@
    "table_fieldname": "accounts"
   }
  ],
- "modified": "2023-07-28 20:12:44.819616",
+ "modified": "2023-10-03 23:28:26.732269",
  "modified_by": "Administrator",
  "module": "Assets",
  "name": "Asset",
diff --git a/erpnext/assets/doctype/asset/asset.py b/erpnext/assets/doctype/asset/asset.py
index ddb09c1..9d35634 100644
--- a/erpnext/assets/doctype/asset/asset.py
+++ b/erpnext/assets/doctype/asset/asset.py
@@ -46,6 +46,7 @@
 		self.validate_item()
 		self.validate_cost_center()
 		self.set_missing_values()
+		self.validate_finance_books()
 		if not self.split_from:
 			self.prepare_depreciation_data()
 			update_draft_asset_depr_schedules(self)
@@ -197,14 +198,37 @@
 			self.asset_category = frappe.get_cached_value("Item", self.item_code, "asset_category")
 
 		if self.item_code and not self.get("finance_books"):
-			finance_books = get_item_details(self.item_code, self.asset_category)
+			finance_books = get_item_details(
+				self.item_code, self.asset_category, self.gross_purchase_amount
+			)
 			self.set("finance_books", finance_books)
 
+	def validate_finance_books(self):
+		if not self.calculate_depreciation or len(self.finance_books) == 1:
+			return
+
+		finance_books = set()
+
+		for d in self.finance_books:
+			if d.finance_book in finance_books:
+				frappe.throw(
+					_("Row #{}: Please use a different Finance Book.").format(d.idx),
+					title=_("Duplicate Finance Book"),
+				)
+			else:
+				finance_books.add(d.finance_book)
+
+			if not d.finance_book:
+				frappe.throw(
+					_("Row #{}: Finance Book should not be empty since you're using multiple.").format(d.idx),
+					title=_("Missing Finance Book"),
+				)
+
 	def validate_asset_values(self):
 		if not self.asset_category:
 			self.asset_category = frappe.get_cached_value("Item", self.item_code, "asset_category")
 
-		if not flt(self.gross_purchase_amount):
+		if not flt(self.gross_purchase_amount) and not self.is_composite_asset:
 			frappe.throw(_("Gross Purchase Amount is mandatory"), frappe.MandatoryError)
 
 		if is_cwip_accounting_enabled(self.asset_category):
@@ -745,6 +769,15 @@
 
 
 @frappe.whitelist()
+def create_asset_capitalization(asset):
+	asset_capitalization = frappe.new_doc("Asset Capitalization")
+	asset_capitalization.update(
+		{"target_asset": asset, "capitalization_method": "Choose a WIP composite asset"}
+	)
+	return asset_capitalization
+
+
+@frappe.whitelist()
 def create_asset_value_adjustment(asset, asset_category, company):
 	asset_value_adjustment = frappe.new_doc("Asset Value Adjustment")
 	asset_value_adjustment.update(
@@ -775,7 +808,7 @@
 
 
 @frappe.whitelist()
-def get_item_details(item_code, asset_category):
+def get_item_details(item_code, asset_category, gross_purchase_amount):
 	asset_category_doc = frappe.get_doc("Asset Category", asset_category)
 	books = []
 	for d in asset_category_doc.finance_books:
@@ -785,7 +818,11 @@
 				"depreciation_method": d.depreciation_method,
 				"total_number_of_depreciations": d.total_number_of_depreciations,
 				"frequency_of_depreciation": d.frequency_of_depreciation,
-				"start_date": nowdate(),
+				"daily_depreciation": d.daily_depreciation,
+				"salvage_value_percentage": d.salvage_value_percentage,
+				"expected_value_after_useful_life": flt(gross_purchase_amount)
+				* flt(d.salvage_value_percentage / 100),
+				"depreciation_start_date": d.depreciation_start_date or nowdate(),
 			}
 		)
 
@@ -840,7 +877,7 @@
 	je.voucher_type = "Depreciation Entry"
 	je.naming_series = depreciation_series
 	je.company = asset.company
-	je.remark = _("Depreciation Entry against asset {0}").format(asset_name)
+	je.remark = ("Depreciation Entry against asset {0}").format(asset_name)
 
 	je.append(
 		"accounts",
diff --git a/erpnext/assets/doctype/asset/test_asset.py b/erpnext/assets/doctype/asset/test_asset.py
index 90eae2d..88ef69c 100644
--- a/erpnext/assets/doctype/asset/test_asset.py
+++ b/erpnext/assets/doctype/asset/test_asset.py
@@ -768,18 +768,18 @@
 		)
 
 		expected_schedules = [
-			["2023-01-31", 1019.18, 1019.18],
-			["2023-02-28", 920.55, 1939.73],
-			["2023-03-31", 1019.18, 2958.91],
-			["2023-04-30", 986.3, 3945.21],
-			["2023-05-31", 1019.18, 4964.39],
-			["2023-06-30", 986.3, 5950.69],
-			["2023-07-31", 1019.18, 6969.87],
-			["2023-08-31", 1019.18, 7989.05],
-			["2023-09-30", 986.3, 8975.35],
-			["2023-10-31", 1019.18, 9994.53],
-			["2023-11-30", 986.3, 10980.83],
-			["2023-12-31", 1019.17, 12000.0],
+			["2023-01-31", 1021.98, 1021.98],
+			["2023-02-28", 923.08, 1945.06],
+			["2023-03-31", 1021.98, 2967.04],
+			["2023-04-30", 989.01, 3956.05],
+			["2023-05-31", 1021.98, 4978.03],
+			["2023-06-30", 989.01, 5967.04],
+			["2023-07-31", 1021.98, 6989.02],
+			["2023-08-31", 1021.98, 8011.0],
+			["2023-09-30", 989.01, 9000.01],
+			["2023-10-31", 1021.98, 10021.99],
+			["2023-11-30", 989.01, 11011.0],
+			["2023-12-31", 989.0, 12000.0],
 		]
 
 		schedules = [
@@ -1744,6 +1744,7 @@
 			"location": args.location or "Test Location",
 			"asset_owner": args.asset_owner or "Company",
 			"is_existing_asset": args.is_existing_asset or 1,
+			"is_composite_asset": args.is_composite_asset or 0,
 			"asset_quantity": args.get("asset_quantity") or 1,
 			"depr_entry_posting_status": args.depr_entry_posting_status or "",
 		}
diff --git a/erpnext/assets/doctype/asset_activity/asset_activity.json b/erpnext/assets/doctype/asset_activity/asset_activity.json
index 476fb27..00992e2 100644
--- a/erpnext/assets/doctype/asset_activity/asset_activity.json
+++ b/erpnext/assets/doctype/asset_activity/asset_activity.json
@@ -75,13 +75,14 @@
  "in_create": 1,
  "index_web_pages_for_search": 1,
  "links": [],
- "modified": "2023-08-01 11:09:52.584482",
+ "modified": "2023-09-29 15:56:17.608643",
  "modified_by": "Administrator",
  "module": "Assets",
  "name": "Asset Activity",
  "owner": "Administrator",
  "permissions": [
   {
+   "delete": 1,
    "email": 1,
    "read": 1,
    "report": 1,
@@ -89,6 +90,7 @@
    "share": 1
   },
   {
+   "delete": 1,
    "email": 1,
    "read": 1,
    "report": 1,
@@ -96,6 +98,7 @@
    "share": 1
   },
   {
+   "delete": 1,
    "email": 1,
    "read": 1,
    "report": 1,
diff --git a/erpnext/assets/doctype/asset_capitalization/asset_capitalization.js b/erpnext/assets/doctype/asset_capitalization/asset_capitalization.js
index 6d55d77..be78d9e 100644
--- a/erpnext/assets/doctype/asset_capitalization/asset_capitalization.js
+++ b/erpnext/assets/doctype/asset_capitalization/asset_capitalization.js
@@ -16,9 +16,15 @@
 
 	refresh() {
 		this.show_general_ledger();
+
 		if ((this.frm.doc.stock_items && this.frm.doc.stock_items.length) || !this.frm.doc.target_is_fixed_asset) {
 			this.show_stock_ledger();
 		}
+
+		if (this.frm.doc.stock_items && !this.frm.doc.stock_items.length && this.frm.doc.target_asset && this.frm.doc.capitalization_method === "Choose a WIP composite asset") {
+			this.set_consumed_stock_items_tagged_to_wip_composite_asset(this.frm.doc.target_asset);
+			this.get_target_asset_details();
+		}
 	}
 
 	setup_queries() {
@@ -35,18 +41,9 @@
 		});
 
 		me.frm.set_query("target_asset", function() {
-			var filters = {};
-
-			if (me.frm.doc.target_item_code) {
-				filters['item_code'] = me.frm.doc.target_item_code;
-			}
-
-			filters['status'] = ["not in", ["Draft", "Scrapped", "Sold", "Capitalized", "Decapitalized"]];
-			filters['docstatus'] = 1;
-
 			return {
-				filters: filters
-			};
+				filters: {'is_composite_asset': 1, 'docstatus': 0 }
+			}
 		});
 
 		me.frm.set_query("asset", "asset_items", function() {
@@ -128,6 +125,39 @@
 		return this.get_target_item_details();
 	}
 
+	target_asset() {
+		if (this.frm.doc.target_asset && this.frm.doc.capitalization_method === "Choose a WIP composite asset") {
+			this.set_consumed_stock_items_tagged_to_wip_composite_asset(this.frm.doc.target_asset);
+			this.get_target_asset_details();
+		}
+	}
+
+	set_consumed_stock_items_tagged_to_wip_composite_asset(asset) {
+		var me = this;
+
+		if (asset) {
+			return me.frm.call({
+				method: "erpnext.assets.doctype.asset_capitalization.asset_capitalization.get_items_tagged_to_wip_composite_asset",
+				args: {
+					asset: asset,
+				},
+				callback: function (r) {
+					if (!r.exc && r.message) {
+						me.frm.clear_table("stock_items");
+
+						for (let item of r.message) {
+							me.frm.add_child("stock_items", item);
+						}
+
+						refresh_field("stock_items");
+
+						me.calculate_totals();
+					}
+				}
+			});
+		}
+	}
+
 	item_code(doc, cdt, cdn) {
 		var row = frappe.get_doc(cdt, cdn);
 		if (cdt === "Asset Capitalization Stock Item") {
@@ -242,6 +272,26 @@
 		}
 	}
 
+	get_target_asset_details() {
+		var me = this;
+
+		if (me.frm.doc.target_asset) {
+			return me.frm.call({
+				method: "erpnext.assets.doctype.asset_capitalization.asset_capitalization.get_target_asset_details",
+				child: me.frm.doc,
+				args: {
+					asset: me.frm.doc.target_asset,
+					company: me.frm.doc.company,
+				},
+				callback: function (r) {
+					if (!r.exc) {
+						me.frm.refresh_fields();
+					}
+				}
+			});
+		}
+	}
+
 	get_consumed_stock_item_details(row) {
 		var me = this;
 
diff --git a/erpnext/assets/doctype/asset_capitalization/asset_capitalization.json b/erpnext/assets/doctype/asset_capitalization/asset_capitalization.json
index 04b0c4e..9ddc442 100644
--- a/erpnext/assets/doctype/asset_capitalization/asset_capitalization.json
+++ b/erpnext/assets/doctype/asset_capitalization/asset_capitalization.json
@@ -8,24 +8,25 @@
  "engine": "InnoDB",
  "field_order": [
   "title",
+  "company",
   "naming_series",
   "entry_type",
-  "target_item_code",
-  "target_asset",
   "target_item_name",
   "target_is_fixed_asset",
   "target_has_batch_no",
   "target_has_serial_no",
   "column_break_9",
-  "target_asset_name",
+  "capitalization_method",
+  "target_item_code",
   "target_asset_location",
+  "target_asset",
+  "target_asset_name",
   "target_warehouse",
   "target_qty",
   "target_stock_uom",
   "target_batch_no",
   "target_serial_no",
   "column_break_5",
-  "company",
   "finance_book",
   "posting_date",
   "posting_time",
@@ -57,12 +58,13 @@
    "label": "Title"
   },
   {
+   "depends_on": "eval:(doc.target_item_code && !doc.__islocal && doc.capitalization_method !== 'Choose a WIP composite asset') || ((doc.entry_type=='Capitalization' && doc.capitalization_method=='Create a new composite asset') || doc.entry_type=='Decapitalization')",
    "fieldname": "target_item_code",
    "fieldtype": "Link",
    "in_standard_filter": 1,
    "label": "Target Item Code",
-   "options": "Item",
-   "reqd": 1
+   "mandatory_depends_on": "eval:(doc.entry_type=='Capitalization' && doc.capitalization_method=='Create a new composite asset') || doc.entry_type=='Decapitalization'",
+   "options": "Item"
   },
   {
    "depends_on": "eval:doc.target_item_code && doc.target_item_name != doc.target_item_code",
@@ -86,16 +88,18 @@
    "fieldtype": "Column Break"
   },
   {
+   "depends_on": "eval:(doc.target_asset && !doc.__islocal) || (doc.entry_type=='Capitalization' && doc.capitalization_method=='Choose a WIP composite asset')",
    "fieldname": "target_asset",
    "fieldtype": "Link",
    "in_standard_filter": 1,
    "label": "Target Asset",
+   "mandatory_depends_on": "eval:doc.entry_type=='Capitalization' && doc.capitalization_method=='Choose a WIP composite asset'",
    "no_copy": 1,
    "options": "Asset",
-   "read_only": 1
+   "read_only_depends_on": "eval:(doc.entry_type=='Decapitalization') || (doc.entry_type=='Capitalization' && doc.capitalization_method=='Create a new composite asset')"
   },
   {
-   "depends_on": "eval:doc.entry_type=='Capitalization'",
+   "depends_on": "eval:(doc.target_asset_name && !doc.__islocal) || (doc.target_asset && doc.entry_type=='Capitalization' && doc.capitalization_method=='Choose a WIP composite asset')",
    "fetch_from": "target_asset.asset_name",
    "fieldname": "target_asset_name",
    "fieldtype": "Data",
@@ -186,12 +190,14 @@
   },
   {
    "default": "1",
+   "depends_on": "eval:doc.entry_type=='Decapitalization'",
    "fieldname": "target_qty",
    "fieldtype": "Float",
    "label": "Target Qty",
    "read_only_depends_on": "eval:doc.entry_type=='Capitalization'"
   },
   {
+   "depends_on": "eval:doc.entry_type=='Decapitalization'",
    "fetch_from": "target_item_code.stock_uom",
    "fieldname": "target_stock_uom",
    "fieldtype": "Link",
@@ -331,18 +337,26 @@
    "read_only": 1
   },
   {
-   "depends_on": "eval:doc.entry_type=='Capitalization'",
+   "depends_on": "eval:doc.entry_type=='Capitalization' && doc.capitalization_method=='Create a new composite asset'",
    "fieldname": "target_asset_location",
    "fieldtype": "Link",
    "label": "Target Asset Location",
-   "mandatory_depends_on": "eval:doc.entry_type=='Capitalization'",
+   "mandatory_depends_on": "eval:doc.entry_type=='Capitalization' && doc.capitalization_method=='Create a new composite asset'",
    "options": "Location"
+  },
+  {
+   "depends_on": "eval:doc.entry_type=='Capitalization'",
+   "fieldname": "capitalization_method",
+   "fieldtype": "Select",
+   "label": "Capitalization Method",
+   "mandatory_depends_on": "eval:doc.entry_type=='Capitalization'",
+   "options": "\nCreate a new composite asset\nChoose a WIP composite asset"
   }
  ],
  "index_web_pages_for_search": 1,
  "is_submittable": 1,
  "links": [],
- "modified": "2023-06-22 14:17:07.995120",
+ "modified": "2023-10-03 22:55:59.461456",
  "modified_by": "Administrator",
  "module": "Assets",
  "name": "Asset Capitalization",
diff --git a/erpnext/assets/doctype/asset_capitalization/asset_capitalization.py b/erpnext/assets/doctype/asset_capitalization/asset_capitalization.py
index 0bf2fbb..0d6f6b4 100644
--- a/erpnext/assets/doctype/asset_capitalization/asset_capitalization.py
+++ b/erpnext/assets/doctype/asset_capitalization/asset_capitalization.py
@@ -53,6 +53,7 @@
 		self.validate_posting_time()
 		self.set_missing_values(for_validate=True)
 		self.validate_target_item()
+		self.validate_target_asset()
 		self.validate_consumed_stock_item()
 		self.validate_consumed_asset_item()
 		self.validate_service_item()
@@ -67,12 +68,12 @@
 
 	def before_submit(self):
 		self.validate_source_mandatory()
-		if self.entry_type == "Capitalization":
-			self.create_target_asset()
+		self.create_target_asset()
 
 	def on_submit(self):
 		self.update_stock_ledger()
 		self.make_gl_entries()
+		self.update_target_asset()
 
 	def on_cancel(self):
 		self.ignore_linked_doctypes = (
@@ -94,6 +95,11 @@
 			if self.meta.has_field(k) and (not self.get(k) or k in force_fields):
 				self.set(k, v)
 
+		target_asset_details = get_target_asset_details(self.target_asset, self.company)
+		for k, v in target_asset_details.items():
+			if self.meta.has_field(k) and (not self.get(k) or k in force_fields):
+				self.set(k, v)
+
 		for d in self.stock_items:
 			args = self.as_dict()
 			args.update(d.as_dict())
@@ -155,6 +161,33 @@
 
 		self.validate_item(target_item)
 
+	def validate_target_asset(self):
+		if self.target_asset:
+			target_asset = self.get_asset_for_validation(self.target_asset)
+
+			if not target_asset.is_composite_asset:
+				frappe.throw(_("Target Asset {0} needs to be composite asset").format(target_asset.name))
+
+			if target_asset.item_code != self.target_item_code:
+				frappe.throw(
+					_("Asset {0} does not belong to Item {1}").format(self.target_asset, self.target_item_code)
+				)
+
+			if target_asset.status in ("Scrapped", "Sold", "Capitalized", "Decapitalized"):
+				frappe.throw(
+					_("Target Asset {0} cannot be {1}").format(target_asset.name, target_asset.status)
+				)
+
+			if target_asset.docstatus == 1:
+				frappe.throw(_("Target Asset {0} cannot be submitted").format(target_asset.name))
+			elif target_asset.docstatus == 2:
+				frappe.throw(_("Target Asset {0} cannot be cancelled").format(target_asset.name))
+
+			if target_asset.company != self.company:
+				frappe.throw(
+					_("Target Asset {0} does not belong to company {1}").format(target_asset.name, self.company)
+				)
+
 	def validate_consumed_stock_item(self):
 		for d in self.stock_items:
 			if d.item_code:
@@ -179,7 +212,23 @@
 					)
 
 				asset = self.get_asset_for_validation(d.asset)
-				self.validate_asset(asset)
+
+				if asset.status in ("Draft", "Scrapped", "Sold", "Capitalized", "Decapitalized"):
+					frappe.throw(
+						_("Row #{0}: Consumed Asset {1} cannot be {2}").format(d.idx, asset.name, asset.status)
+					)
+
+				if asset.docstatus == 0:
+					frappe.throw(_("Row #{0}: Consumed Asset {1} cannot be Draft").format(d.idx, asset.name))
+				elif asset.docstatus == 2:
+					frappe.throw(_("Row #{0}: Consumed Asset {1} cannot be cancelled").format(d.idx, asset.name))
+
+				if asset.company != self.company:
+					frappe.throw(
+						_("Row #{0}: Consumed Asset {1} does not belong to company {2}").format(
+							d.idx, asset.name, self.company
+						)
+					)
 
 	def validate_service_item(self):
 		for d in self.service_items:
@@ -214,21 +263,12 @@
 
 	def get_asset_for_validation(self, asset):
 		return frappe.db.get_value(
-			"Asset", asset, ["name", "item_code", "company", "status", "docstatus"], as_dict=1
+			"Asset",
+			asset,
+			["name", "item_code", "company", "status", "docstatus", "is_composite_asset"],
+			as_dict=1,
 		)
 
-	def validate_asset(self, asset):
-		if asset.status in ("Draft", "Scrapped", "Sold", "Capitalized", "Decapitalized"):
-			frappe.throw(_("Asset {0} is {1}").format(asset.name, asset.status))
-
-		if asset.docstatus == 0:
-			frappe.throw(_("Asset {0} is Draft").format(asset.name))
-		if asset.docstatus == 2:
-			frappe.throw(_("Asset {0} is cancelled").format(asset.name))
-
-		if asset.company != self.company:
-			frappe.throw(_("Asset {0} does not belong to company {1}").format(asset.name, self.company))
-
 	@frappe.whitelist()
 	def set_warehouse_details(self):
 		for d in self.get("stock_items"):
@@ -404,14 +444,11 @@
 	def get_gl_entries_for_consumed_asset_items(
 		self, gl_entries, target_account, target_against, precision
 	):
-		self.are_all_asset_items_non_depreciable = True
-
 		# Consumed Assets
 		for item in self.asset_items:
 			asset = frappe.get_doc("Asset", item.asset)
 
 			if asset.calculate_depreciation:
-				self.are_all_asset_items_non_depreciable = False
 				notes = _(
 					"This schedule was created when Asset {0} was consumed through Asset Capitalization {1}."
 				).format(
@@ -498,16 +535,25 @@
 				)
 
 	def create_target_asset(self):
+		if (
+			self.entry_type != "Capitalization"
+			or self.capitalization_method != "Create a new composite asset"
+		):
+			return
+
 		total_target_asset_value = flt(self.total_value, self.precision("total_value"))
+
 		asset_doc = frappe.new_doc("Asset")
 		asset_doc.company = self.company
 		asset_doc.item_code = self.target_item_code
-		asset_doc.is_existing_asset = 1
+		asset_doc.is_composite_asset = 1
 		asset_doc.location = self.target_asset_location
 		asset_doc.available_for_use_date = self.posting_date
 		asset_doc.purchase_date = self.posting_date
 		asset_doc.gross_purchase_amount = total_target_asset_value
 		asset_doc.purchase_receipt_amount = total_target_asset_value
+		asset_doc.purchase_receipt_amount = total_target_asset_value
+		asset_doc.capitalized_in = self.name
 		asset_doc.flags.ignore_validate = True
 		asset_doc.flags.asset_created_via_asset_capitalization = True
 		asset_doc.insert()
@@ -531,6 +577,28 @@
 			).format(get_link_to_form("Asset", asset_doc.name))
 		)
 
+	def update_target_asset(self):
+		if (
+			self.entry_type != "Capitalization"
+			or self.capitalization_method != "Choose a WIP composite asset"
+		):
+			return
+
+		total_target_asset_value = flt(self.total_value, self.precision("total_value"))
+
+		asset_doc = frappe.get_doc("Asset", self.target_asset)
+		asset_doc.gross_purchase_amount = total_target_asset_value
+		asset_doc.purchase_receipt_amount = total_target_asset_value
+		asset_doc.capitalized_in = self.name
+		asset_doc.flags.ignore_validate = True
+		asset_doc.save()
+
+		frappe.msgprint(
+			_(
+				"Asset {0} has been updated. Please set the depreciation details if any and submit it."
+			).format(get_link_to_form("Asset", asset_doc.name))
+		)
+
 	def restore_consumed_asset_items(self):
 		for item in self.asset_items:
 			asset = frappe.get_doc("Asset", item.asset)
@@ -616,6 +684,33 @@
 
 
 @frappe.whitelist()
+def get_target_asset_details(asset=None, company=None):
+	out = frappe._dict()
+
+	# Get Asset Details
+	asset_details = frappe._dict()
+	if asset:
+		asset_details = frappe.db.get_value("Asset", asset, ["asset_name", "item_code"], as_dict=1)
+		if not asset_details:
+			frappe.throw(_("Asset {0} does not exist").format(asset))
+
+		# Re-set item code from Asset
+		out.target_item_code = asset_details.item_code
+
+	# Set Asset Details
+	out.asset_name = asset_details.asset_name
+
+	if asset_details.item_code:
+		out.target_fixed_asset_account = get_asset_category_account(
+			"fixed_asset_account", item=asset_details.item_code, company=company
+		)
+	else:
+		out.target_fixed_asset_account = None
+
+	return out
+
+
+@frappe.whitelist()
 def get_consumed_stock_item_details(args):
 	if isinstance(args, str):
 		args = json.loads(args)
@@ -763,3 +858,30 @@
 	)
 
 	return out
+
+
+@frappe.whitelist()
+def get_items_tagged_to_wip_composite_asset(asset):
+	fields = [
+		"item_code",
+		"item_name",
+		"batch_no",
+		"serial_no",
+		"stock_qty",
+		"stock_uom",
+		"warehouse",
+		"cost_center",
+		"qty",
+		"valuation_rate",
+		"amount",
+	]
+
+	pi_items = frappe.get_all(
+		"Purchase Invoice Item", filters={"wip_composite_asset": asset}, fields=fields
+	)
+
+	pr_items = frappe.get_all(
+		"Purchase Receipt Item", filters={"wip_composite_asset": asset}, fields=fields
+	)
+
+	return pi_items + pr_items
diff --git a/erpnext/assets/doctype/asset_capitalization/test_asset_capitalization.py b/erpnext/assets/doctype/asset_capitalization/test_asset_capitalization.py
index 6e0a685..ac7c90d 100644
--- a/erpnext/assets/doctype/asset_capitalization/test_asset_capitalization.py
+++ b/erpnext/assets/doctype/asset_capitalization/test_asset_capitalization.py
@@ -58,6 +58,7 @@
 		# Create and submit Asset Captitalization
 		asset_capitalization = create_asset_capitalization(
 			entry_type="Capitalization",
+			capitalization_method="Create a new composite asset",
 			target_item_code="Macbook Pro",
 			target_asset_location="Test Location",
 			stock_qty=stock_qty,
@@ -147,6 +148,7 @@
 		# Create and submit Asset Captitalization
 		asset_capitalization = create_asset_capitalization(
 			entry_type="Capitalization",
+			capitalization_method="Create a new composite asset",
 			target_item_code="Macbook Pro",
 			target_asset_location="Test Location",
 			stock_qty=stock_qty,
@@ -211,6 +213,77 @@
 		self.assertFalse(get_actual_gle_dict(asset_capitalization.name))
 		self.assertFalse(get_actual_sle_dict(asset_capitalization.name))
 
+	def test_capitalization_with_wip_composite_asset(self):
+		company = "_Test Company with perpetual inventory"
+		set_depreciation_settings_in_company(company=company)
+
+		stock_rate = 1000
+		stock_qty = 2
+		stock_amount = 2000
+
+		total_amount = 2000
+
+		wip_composite_asset = create_asset(
+			asset_name="Asset Capitalization WIP Composite Asset",
+			is_composite_asset=1,
+			warehouse="Stores - TCP1",
+			company=company,
+		)
+
+		# Create and submit Asset Captitalization
+		asset_capitalization = create_asset_capitalization(
+			entry_type="Capitalization",
+			capitalization_method="Choose a WIP composite asset",
+			target_asset=wip_composite_asset.name,
+			target_asset_location="Test Location",
+			stock_qty=stock_qty,
+			stock_rate=stock_rate,
+			service_expense_account="Expenses Included In Asset Valuation - TCP1",
+			company=company,
+			submit=1,
+		)
+
+		# Test Asset Capitalization values
+		self.assertEqual(asset_capitalization.entry_type, "Capitalization")
+		self.assertEqual(asset_capitalization.capitalization_method, "Choose a WIP composite asset")
+		self.assertEqual(asset_capitalization.target_qty, 1)
+
+		self.assertEqual(asset_capitalization.stock_items[0].valuation_rate, stock_rate)
+		self.assertEqual(asset_capitalization.stock_items[0].amount, stock_amount)
+		self.assertEqual(asset_capitalization.stock_items_total, stock_amount)
+
+		self.assertEqual(asset_capitalization.total_value, total_amount)
+		self.assertEqual(asset_capitalization.target_incoming_rate, total_amount)
+
+		# Test Target Asset values
+		target_asset = frappe.get_doc("Asset", asset_capitalization.target_asset)
+		self.assertEqual(target_asset.gross_purchase_amount, total_amount)
+		self.assertEqual(target_asset.purchase_receipt_amount, total_amount)
+
+		# Test General Ledger Entries
+		expected_gle = {
+			"_Test Fixed Asset - TCP1": 2000,
+			"_Test Warehouse - TCP1": -2000,
+		}
+		actual_gle = get_actual_gle_dict(asset_capitalization.name)
+
+		self.assertEqual(actual_gle, expected_gle)
+
+		# Test Stock Ledger Entries
+		expected_sle = {
+			("Capitalization Source Stock Item", "_Test Warehouse - TCP1"): {
+				"actual_qty": -stock_qty,
+				"stock_value_difference": -stock_amount,
+			}
+		}
+		actual_sle = get_actual_sle_dict(asset_capitalization.name)
+		self.assertEqual(actual_sle, expected_sle)
+
+		# Cancel Asset Capitalization and make test entries and status are reversed
+		asset_capitalization.cancel()
+		self.assertFalse(get_actual_gle_dict(asset_capitalization.name))
+		self.assertFalse(get_actual_sle_dict(asset_capitalization.name))
+
 	def test_decapitalization_with_depreciation(self):
 		# Variables
 		purchase_date = "2020-01-01"
@@ -347,6 +420,7 @@
 	asset_capitalization.update(
 		{
 			"entry_type": args.entry_type or "Capitalization",
+			"capitalization_method": args.capitalization_method or None,
 			"company": company,
 			"posting_date": args.posting_date or now.strftime("%Y-%m-%d"),
 			"posting_time": args.posting_time or now.strftime("%H:%M:%S.%f"),
diff --git a/erpnext/assets/doctype/asset_depreciation_schedule/asset_depreciation_schedule.py b/erpnext/assets/doctype/asset_depreciation_schedule/asset_depreciation_schedule.py
index 83350aa..7a88ffc 100644
--- a/erpnext/assets/doctype/asset_depreciation_schedule/asset_depreciation_schedule.py
+++ b/erpnext/assets/doctype/asset_depreciation_schedule/asset_depreciation_schedule.py
@@ -577,26 +577,41 @@
 			daily_depr_amount = (
 				flt(row.value_after_depreciation) - flt(row.expected_value_after_useful_life)
 			) / date_diff(
-				add_months(
-					row.depreciation_start_date,
-					flt(row.total_number_of_depreciations - asset.number_of_depreciations_booked)
-					* row.frequency_of_depreciation,
-				),
-				add_months(
-					row.depreciation_start_date,
-					flt(
-						row.total_number_of_depreciations
-						- asset.number_of_depreciations_booked
-						- number_of_pending_depreciations
+				get_last_day(
+					add_months(
+						row.depreciation_start_date,
+						flt(row.total_number_of_depreciations - asset.number_of_depreciations_booked - 1)
+						* row.frequency_of_depreciation,
 					)
-					* row.frequency_of_depreciation,
+				),
+				add_days(
+					get_last_day(
+						add_months(
+							row.depreciation_start_date,
+							flt(
+								row.total_number_of_depreciations
+								- asset.number_of_depreciations_booked
+								- number_of_pending_depreciations
+								- 1
+							)
+							* row.frequency_of_depreciation,
+						)
+					),
+					1,
 				),
 			)
-			to_date = add_months(row.depreciation_start_date, schedule_idx * row.frequency_of_depreciation)
-			from_date = add_months(
-				row.depreciation_start_date, (schedule_idx - 1) * row.frequency_of_depreciation
+
+			to_date = get_last_day(
+				add_months(row.depreciation_start_date, schedule_idx * row.frequency_of_depreciation)
 			)
-			return daily_depr_amount * date_diff(to_date, from_date)
+			from_date = add_days(
+				get_last_day(
+					add_months(row.depreciation_start_date, (schedule_idx - 1) * row.frequency_of_depreciation)
+				),
+				1,
+			)
+
+			return daily_depr_amount * (date_diff(to_date, from_date) + 1)
 		else:
 			return (
 				flt(row.value_after_depreciation) - flt(row.expected_value_after_useful_life)
@@ -609,18 +624,29 @@
 				- flt(asset.opening_accumulated_depreciation)
 				- flt(row.expected_value_after_useful_life)
 			) / date_diff(
-				add_months(
-					row.depreciation_start_date,
-					flt(row.total_number_of_depreciations - asset.number_of_depreciations_booked)
-					* row.frequency_of_depreciation,
+				get_last_day(
+					add_months(
+						row.depreciation_start_date,
+						flt(row.total_number_of_depreciations - asset.number_of_depreciations_booked - 1)
+						* row.frequency_of_depreciation,
+					)
 				),
-				row.depreciation_start_date,
+				add_days(
+					get_last_day(add_months(row.depreciation_start_date, -1 * row.frequency_of_depreciation)), 1
+				),
 			)
-			to_date = add_months(row.depreciation_start_date, schedule_idx * row.frequency_of_depreciation)
-			from_date = add_months(
-				row.depreciation_start_date, (schedule_idx - 1) * row.frequency_of_depreciation
+
+			to_date = get_last_day(
+				add_months(row.depreciation_start_date, schedule_idx * row.frequency_of_depreciation)
 			)
-			return daily_depr_amount * date_diff(to_date, from_date)
+			from_date = add_days(
+				get_last_day(
+					add_months(row.depreciation_start_date, (schedule_idx - 1) * row.frequency_of_depreciation)
+				),
+				1,
+			)
+
+			return daily_depr_amount * (date_diff(to_date, from_date) + 1)
 		else:
 			return (
 				flt(asset.gross_purchase_amount)
diff --git a/erpnext/assets/doctype/asset_finance_book/asset_finance_book.json b/erpnext/assets/doctype/asset_finance_book/asset_finance_book.json
index 4121302..2c27dc9 100644
--- a/erpnext/assets/doctype/asset_finance_book/asset_finance_book.json
+++ b/erpnext/assets/doctype/asset_finance_book/asset_finance_book.json
@@ -12,6 +12,7 @@
   "column_break_5",
   "frequency_of_depreciation",
   "depreciation_start_date",
+  "salvage_value_percentage",
   "expected_value_after_useful_life",
   "value_after_depreciation",
   "rate_of_depreciation"
@@ -91,12 +92,17 @@
    "fieldname": "daily_depreciation",
    "fieldtype": "Check",
    "label": "Daily Depreciation"
+  },
+  {
+   "fieldname": "salvage_value_percentage",
+   "fieldtype": "Percent",
+   "label": "Salvage Value Percentage"
   }
  ],
  "index_web_pages_for_search": 1,
  "istable": 1,
  "links": [],
- "modified": "2023-08-10 22:10:36.576199",
+ "modified": "2023-09-29 15:39:52.740594",
  "modified_by": "Administrator",
  "module": "Assets",
  "name": "Asset Finance Book",
diff --git a/erpnext/assets/doctype/asset_maintenance/asset_maintenance.py b/erpnext/assets/doctype/asset_maintenance/asset_maintenance.py
index 641d35f..125d4bf 100644
--- a/erpnext/assets/doctype/asset_maintenance/asset_maintenance.py
+++ b/erpnext/assets/doctype/asset_maintenance/asset_maintenance.py
@@ -79,14 +79,16 @@
 		next_due_date = add_days(start_date, 7)
 	if periodicity == "Monthly":
 		next_due_date = add_months(start_date, 1)
+	if periodicity == "Quarterly":
+		next_due_date = add_months(start_date, 3)
+	if periodicity == "Half-yearly":
+		next_due_date = add_months(start_date, 6)
 	if periodicity == "Yearly":
 		next_due_date = add_years(start_date, 1)
 	if periodicity == "2 Yearly":
 		next_due_date = add_years(start_date, 2)
 	if periodicity == "3 Yearly":
 		next_due_date = add_years(start_date, 3)
-	if periodicity == "Quarterly":
-		next_due_date = add_months(start_date, 3)
 	if end_date and (
 		(start_date and start_date >= end_date)
 		or (last_completion_date and last_completion_date >= end_date)
diff --git a/erpnext/assets/doctype/asset_maintenance_task/asset_maintenance_task.json b/erpnext/assets/doctype/asset_maintenance_task/asset_maintenance_task.json
index b7cb23e..80d90c6 100644
--- a/erpnext/assets/doctype/asset_maintenance_task/asset_maintenance_task.json
+++ b/erpnext/assets/doctype/asset_maintenance_task/asset_maintenance_task.json
@@ -71,7 +71,7 @@
    "fieldtype": "Select",
    "in_list_view": 1,
    "label": "Periodicity",
-   "options": "\nDaily\nWeekly\nMonthly\nQuarterly\nYearly\n2 Yearly\n3 Yearly",
+   "options": "\nDaily\nWeekly\nMonthly\nQuarterly\nHalf-yearly\nYearly\n2 Yearly\n3 Yearly",
    "reqd": 1
   },
   {
@@ -153,4 +153,4 @@
  "quick_entry": 1,
  "sort_field": "modified",
  "sort_order": "DESC"
-}
\ No newline at end of file
+}
diff --git a/erpnext/assets/doctype/asset_repair/asset_repair.js b/erpnext/assets/doctype/asset_repair/asset_repair.js
index dae993a..03afcb9 100644
--- a/erpnext/assets/doctype/asset_repair/asset_repair.js
+++ b/erpnext/assets/doctype/asset_repair/asset_repair.js
@@ -40,16 +40,6 @@
 				}
 			}
 		});
-
-		let sbb_field = frm.get_docfield('stock_items', 'serial_and_batch_bundle');
-		if (sbb_field) {
-			sbb_field.get_route_options_for_new_doc = (row) => {
-				return {
-					'item_code': row.doc.item_code,
-					'voucher_type': frm.doc.doctype,
-				}
-			};
-		}
 	},
 
 	refresh: function(frm) {
@@ -61,6 +51,16 @@
 				frappe.set_route("query-report", "General Ledger");
 			});
 		}
+
+		let sbb_field = frm.get_docfield('stock_items', 'serial_and_batch_bundle');
+		if (sbb_field) {
+			sbb_field.get_route_options_for_new_doc = (row) => {
+				return {
+					'item_code': row.doc.item_code,
+					'voucher_type': frm.doc.doctype,
+				}
+			};
+		}
 	},
 
 	repair_status: (frm) => {
diff --git a/erpnext/assets/doctype/asset_repair/asset_repair.py b/erpnext/assets/doctype/asset_repair/asset_repair.py
index 7e95cb2..9c2b8bc 100644
--- a/erpnext/assets/doctype/asset_repair/asset_repair.py
+++ b/erpnext/assets/doctype/asset_repair/asset_repair.py
@@ -177,7 +177,7 @@
 					"item_code": stock_item.item_code,
 					"qty": stock_item.consumed_quantity,
 					"basic_rate": stock_item.valuation_rate,
-					"serial_no": stock_item.serial_and_batch_bundle,
+					"serial_and_batch_bundle": stock_item.serial_and_batch_bundle,
 					"cost_center": self.cost_center,
 					"project": self.project,
 				},
diff --git a/erpnext/assets/doctype/location/location.json b/erpnext/assets/doctype/location/location.json
index f56fd05..9202fb9 100644
--- a/erpnext/assets/doctype/location/location.json
+++ b/erpnext/assets/doctype/location/location.json
@@ -39,6 +39,7 @@
   {
    "fieldname": "parent_location",
    "fieldtype": "Link",
+   "ignore_user_permissions": 1,
    "label": "Parent Location",
    "options": "Location",
    "search_index": 1
@@ -141,11 +142,11 @@
  ],
  "is_tree": 1,
  "links": [],
- "modified": "2020-05-08 16:11:11.375701",
+ "modified": "2023-08-29 12:49:33.290527",
  "modified_by": "Administrator",
  "module": "Assets",
  "name": "Location",
- "name_case": "Title Case",
+ "naming_rule": "By fieldname",
  "nsm_parent_field": "parent_location",
  "owner": "Administrator",
  "permissions": [
@@ -224,5 +225,6 @@
  "show_name_in_global_search": 1,
  "sort_field": "modified",
  "sort_order": "DESC",
+ "states": [],
  "track_changes": 1
 }
\ No newline at end of file
diff --git a/erpnext/assets/report/fixed_asset_register/fixed_asset_register.py b/erpnext/assets/report/fixed_asset_register/fixed_asset_register.py
index bf62a8f..383be97 100644
--- a/erpnext/assets/report/fixed_asset_register/fixed_asset_register.py
+++ b/erpnext/assets/report/fixed_asset_register/fixed_asset_register.py
@@ -156,6 +156,8 @@
 
 
 def prepare_chart_data(data, filters):
+	if not data:
+		return
 	labels_values_map = {}
 	if filters.filter_based_on not in ("Date Range", "Fiscal Year"):
 		filters_filter_based_on = "Date Range"
diff --git a/erpnext/buying/doctype/purchase_order/purchase_order.js b/erpnext/buying/doctype/purchase_order/purchase_order.js
index f6a1951..88faeee 100644
--- a/erpnext/buying/doctype/purchase_order/purchase_order.js
+++ b/erpnext/buying/doctype/purchase_order/purchase_order.js
@@ -118,6 +118,24 @@
 			frm.set_value("tax_withholding_category", frm.supplier_tds);
 		}
 	},
+
+	get_subcontracting_boms_for_finished_goods: function(fg_item) {
+		return frappe.call({
+			method:"erpnext.subcontracting.doctype.subcontracting_bom.subcontracting_bom.get_subcontracting_boms_for_finished_goods",
+			args: {
+				fg_items: fg_item
+			},
+		});
+	},
+
+	get_subcontracting_boms_for_service_item: function(service_item) {
+		return frappe.call({
+			method:"erpnext.subcontracting.doctype.subcontracting_bom.subcontracting_bom.get_subcontracting_boms_for_service_item",
+			args: {
+				service_item: service_item
+			},
+		});
+	},
 });
 
 frappe.ui.form.on("Purchase Order Item", {
@@ -132,15 +150,83 @@
 		}
 	},
 
-	qty: function(frm, cdt, cdn) {
+	item_code: async function(frm, cdt, cdn) {
 		if (frm.doc.is_subcontracted && !frm.doc.is_old_subcontracting_flow) {
 			var row = locals[cdt][cdn];
 
-			if (row.qty) {
-				row.fg_item_qty = row.qty;
+			if (row.item_code && !row.fg_item) {
+				var result = await frm.events.get_subcontracting_boms_for_service_item(row.item_code)
+
+				if (result.message && Object.keys(result.message).length) {
+					var finished_goods = Object.keys(result.message);
+
+					// Set FG if only one active Subcontracting BOM is found
+					if (finished_goods.length === 1) {
+						row.fg_item = result.message[finished_goods[0]].finished_good;
+						row.uom = result.message[finished_goods[0]].finished_good_uom;
+						refresh_field("items");
+					} else {
+						const dialog = new frappe.ui.Dialog({
+							title: __("Select Finished Good"),
+							size: "small",
+							fields: [
+								{
+									fieldname: "finished_good",
+									fieldtype: "Autocomplete",
+									label: __("Finished Good"),
+									options: finished_goods,
+								}
+							],
+							primary_action_label: __("Select"),
+							primary_action: () => {
+								var subcontracting_bom = result.message[dialog.get_value("finished_good")];
+
+								if (subcontracting_bom) {
+									row.fg_item = subcontracting_bom.finished_good;
+									row.uom = subcontracting_bom.finished_good_uom;
+									refresh_field("items");
+								}
+
+								dialog.hide();
+							},
+						});
+
+						dialog.show();
+					}
+				}
 			}
 		}
-	}
+	},
+
+	fg_item: async function(frm, cdt, cdn) {
+		if (frm.doc.is_subcontracted && !frm.doc.is_old_subcontracting_flow) {
+			var row = locals[cdt][cdn];
+
+			if (row.fg_item) {
+				var result = await frm.events.get_subcontracting_boms_for_finished_goods(row.fg_item)
+
+				if (result.message && Object.keys(result.message).length) {
+					frappe.model.set_value(cdt, cdn, "item_code", result.message.service_item);
+					frappe.model.set_value(cdt, cdn, "qty", flt(row.fg_item_qty) * flt(result.message.conversion_factor));
+					frappe.model.set_value(cdt, cdn, "uom", result.message.service_item_uom);
+				}
+			}
+		}
+	},
+
+	fg_item_qty: async function(frm, cdt, cdn) {
+		if (frm.doc.is_subcontracted && !frm.doc.is_old_subcontracting_flow) {
+			var row = locals[cdt][cdn];
+
+			if (row.fg_item) {
+				var result = await frm.events.get_subcontracting_boms_for_finished_goods(row.fg_item)
+
+				if (result.message && row.item_code == result.message.service_item && row.uom == result.message.service_item_uom) {
+					frappe.model.set_value(cdt, cdn, "qty", flt(row.fg_item_qty) * flt(result.message.conversion_factor));
+				}
+			}
+		}
+	},
 });
 
 erpnext.buying.PurchaseOrderController = class PurchaseOrderController extends erpnext.buying.BuyingController {
diff --git a/erpnext/buying/doctype/purchase_order/purchase_order.json b/erpnext/buying/doctype/purchase_order/purchase_order.json
index b242108..f74df66 100644
--- a/erpnext/buying/doctype/purchase_order/purchase_order.json
+++ b/erpnext/buying/doctype/purchase_order/purchase_order.json
@@ -477,6 +477,7 @@
    "depends_on": "eval:doc.is_subcontracted",
    "fieldname": "supplier_warehouse",
    "fieldtype": "Link",
+   "ignore_user_permissions": 1,
    "label": "Supplier Warehouse",
    "options": "Warehouse"
   },
@@ -1173,6 +1174,7 @@
    "depends_on": "is_internal_supplier",
    "fieldname": "set_from_warehouse",
    "fieldtype": "Link",
+   "ignore_user_permissions": 1,
    "label": "Set From Warehouse",
    "options": "Warehouse"
   },
@@ -1273,7 +1275,7 @@
  "idx": 105,
  "is_submittable": 1,
  "links": [],
- "modified": "2023-06-03 16:19:45.710444",
+ "modified": "2023-10-01 20:58:07.851037",
  "modified_by": "Administrator",
  "module": "Buying",
  "name": "Purchase Order",
diff --git a/erpnext/buying/doctype/purchase_order/purchase_order.py b/erpnext/buying/doctype/purchase_order/purchase_order.py
index 3576cd4..465fe96 100644
--- a/erpnext/buying/doctype/purchase_order/purchase_order.py
+++ b/erpnext/buying/doctype/purchase_order/purchase_order.py
@@ -28,6 +28,9 @@
 from erpnext.stock.doctype.item.item import get_item_defaults, get_last_purchase_details
 from erpnext.stock.stock_balance import get_ordered_qty, update_bin_qty
 from erpnext.stock.utils import get_bin
+from erpnext.subcontracting.doctype.subcontracting_bom.subcontracting_bom import (
+	get_subcontracting_boms_for_finished_goods,
+)
 
 form_grid_templates = {"items": "templates/form_grid/item_grid.html"}
 
@@ -451,6 +454,25 @@
 		else:
 			self.db_set("per_received", 0, update_modified=False)
 
+	def set_service_items_for_finished_goods(self):
+		if not self.is_subcontracted or self.is_old_subcontracting_flow:
+			return
+
+		finished_goods_without_service_item = {
+			d.fg_item for d in self.items if (not d.item_code and d.fg_item)
+		}
+
+		if subcontracting_boms := get_subcontracting_boms_for_finished_goods(
+			finished_goods_without_service_item
+		):
+			for item in self.items:
+				if not item.item_code and item.fg_item in subcontracting_boms:
+					subcontracting_bom = subcontracting_boms[item.fg_item]
+
+					item.item_code = subcontracting_bom.service_item
+					item.qty = flt(item.fg_item_qty) * flt(subcontracting_bom.conversion_factor)
+					item.uom = subcontracting_bom.service_item_uom
+
 	def can_update_items(self) -> bool:
 		result = True
 
diff --git a/erpnext/buying/doctype/purchase_order_item/purchase_order_item.json b/erpnext/buying/doctype/purchase_order_item/purchase_order_item.json
index c645b04..6b29984 100644
--- a/erpnext/buying/doctype/purchase_order_item/purchase_order_item.json
+++ b/erpnext/buying/doctype/purchase_order_item/purchase_order_item.json
@@ -7,13 +7,13 @@
  "editable_grid": 1,
  "engine": "InnoDB",
  "field_order": [
+  "fg_item",
+  "fg_item_qty",
   "item_code",
   "supplier_part_no",
   "item_name",
   "brand",
   "product_bundle",
-  "fg_item",
-  "fg_item_qty",
   "column_break_4",
   "schedule_date",
   "expected_delivery_date",
@@ -180,7 +180,6 @@
    "oldfieldname": "description",
    "oldfieldtype": "Small Text",
    "print_width": "300px",
-   "reqd": 1,
    "width": "300px"
   },
   {
@@ -862,7 +861,7 @@
    "depends_on": "eval:parent.is_subcontracted && !parent.is_old_subcontracting_flow",
    "fieldname": "fg_item",
    "fieldtype": "Link",
-   "label": "Finished Good Item",
+   "label": "Finished Good",
    "mandatory_depends_on": "eval:parent.is_subcontracted && !parent.is_old_subcontracting_flow",
    "options": "Item"
   },
@@ -871,13 +870,14 @@
    "depends_on": "eval:parent.is_subcontracted && !parent.is_old_subcontracting_flow",
    "fieldname": "fg_item_qty",
    "fieldtype": "Float",
-   "label": "Finished Good Item Qty",
+   "label": "Finished Good Qty",
    "mandatory_depends_on": "eval:parent.is_subcontracted && !parent.is_old_subcontracting_flow"
   },
   {
    "depends_on": "eval:parent.is_internal_supplier",
    "fieldname": "from_warehouse",
    "fieldtype": "Link",
+   "ignore_user_permissions": 1,
    "label": "From Warehouse",
    "options": "Warehouse"
   },
@@ -902,7 +902,7 @@
  "index_web_pages_for_search": 1,
  "istable": 1,
  "links": [],
- "modified": "2022-11-29 16:47:41.364387",
+ "modified": "2023-09-13 16:22:40.825092",
  "modified_by": "Administrator",
  "module": "Buying",
  "name": "Purchase Order Item",
@@ -915,4 +915,4 @@
  "sort_order": "DESC",
  "states": [],
  "track_changes": 1
-}
\ No newline at end of file
+}
diff --git a/erpnext/buying/doctype/request_for_quotation_item/request_for_quotation_item.json b/erpnext/buying/doctype/request_for_quotation_item/request_for_quotation_item.json
index e07f462..82fcfa2 100644
--- a/erpnext/buying/doctype/request_for_quotation_item/request_for_quotation_item.json
+++ b/erpnext/buying/doctype/request_for_quotation_item/request_for_quotation_item.json
@@ -84,7 +84,6 @@
    "oldfieldname": "description",
    "oldfieldtype": "Small Text",
    "print_width": "300px",
-   "reqd": 1,
    "width": "300px"
   },
   {
@@ -270,4 +269,4 @@
  "sort_field": "modified",
  "sort_order": "DESC",
  "track_changes": 1
-}
\ No newline at end of file
+}
diff --git a/erpnext/buying/doctype/supplier/supplier.js b/erpnext/buying/doctype/supplier/supplier.js
index 372ca56..70d2782 100644
--- a/erpnext/buying/doctype/supplier/supplier.js
+++ b/erpnext/buying/doctype/supplier/supplier.js
@@ -12,6 +12,7 @@
 			return {
 				filters: {
 					'account_type': 'Payable',
+					'root_type': 'Liability',
 					'company': d.company,
 					"is_group": 0
 				}
@@ -87,7 +88,7 @@
 			}, __("View"));
 
 			frm.add_custom_button(__('Accounts Payable'), function () {
-				frappe.set_route('query-report', 'Accounts Payable', { supplier: frm.doc.name });
+				frappe.set_route('query-report', 'Accounts Payable', { party_type: "Supplier", party: frm.doc.name });
 			}, __("View"));
 
 			frm.add_custom_button(__('Bank Account'), function () {
diff --git a/erpnext/buying/doctype/supplier/supplier.json b/erpnext/buying/doctype/supplier/supplier.json
index a07af71..f37db5f 100644
--- a/erpnext/buying/doctype/supplier/supplier.json
+++ b/erpnext/buying/doctype/supplier/supplier.json
@@ -45,12 +45,13 @@
   "column_break1",
   "contact_html",
   "primary_address_and_contact_detail_section",
-  "supplier_primary_contact",
-  "mobile_no",
-  "email_id",
   "column_break_44",
   "supplier_primary_address",
   "primary_address",
+  "column_break_mglr",
+  "supplier_primary_contact",
+  "mobile_no",
+  "email_id",
   "accounting_tab",
   "payment_terms",
   "default_accounts_section",
@@ -166,8 +167,7 @@
    "label": "Supplier Group",
    "oldfieldname": "supplier_type",
    "oldfieldtype": "Link",
-   "options": "Supplier Group",
-   "reqd": 1
+   "options": "Supplier Group"
   },
   {
    "default": "Company",
@@ -469,6 +469,10 @@
   {
    "fieldname": "column_break_1mqv",
    "fieldtype": "Column Break"
+  },
+  {
+   "fieldname": "column_break_mglr",
+   "fieldtype": "Column Break"
   }
  ],
  "icon": "fa fa-user",
@@ -481,7 +485,7 @@
    "link_fieldname": "party"
   }
  ],
- "modified": "2023-06-26 14:20:00.961554",
+ "modified": "2023-09-25 12:48:21.869563",
  "modified_by": "Administrator",
  "module": "Buying",
  "name": "Supplier",
diff --git a/erpnext/buying/doctype/supplier/test_supplier.py b/erpnext/buying/doctype/supplier/test_supplier.py
index 7be1d83..350a25f 100644
--- a/erpnext/buying/doctype/supplier/test_supplier.py
+++ b/erpnext/buying/doctype/supplier/test_supplier.py
@@ -206,11 +206,15 @@
 		{
 			"doctype": "Supplier",
 			"supplier_name": args.supplier_name,
-			"supplier_group": args.supplier_group or "Services",
+			"default_currency": args.default_currency,
 			"supplier_type": args.supplier_type or "Company",
 			"tax_withholding_category": args.tax_withholding_category,
 		}
-	).insert()
+	)
+	if not args.without_supplier_group:
+		doc.supplier_group = args.supplier_group or "Services"
+
+	doc.insert()
 
 	return doc
 
diff --git a/erpnext/buying/doctype/supplier_quotation_item/supplier_quotation_item.json b/erpnext/buying/doctype/supplier_quotation_item/supplier_quotation_item.json
index 638cde0..8d491fb 100644
--- a/erpnext/buying/doctype/supplier_quotation_item/supplier_quotation_item.json
+++ b/erpnext/buying/doctype/supplier_quotation_item/supplier_quotation_item.json
@@ -126,7 +126,6 @@
    "oldfieldname": "description",
    "oldfieldtype": "Small Text",
    "print_width": "300px",
-   "reqd": 1,
    "width": "300px"
   },
   {
@@ -569,4 +568,4 @@
  "sort_field": "modified",
  "sort_order": "DESC",
  "track_changes": 1
-}
\ No newline at end of file
+}
diff --git a/erpnext/buying/report/requested_items_to_order_and_receive/requested_items_to_order_and_receive.py b/erpnext/buying/report/requested_items_to_order_and_receive/requested_items_to_order_and_receive.py
index 21241e0..0718735 100644
--- a/erpnext/buying/report/requested_items_to_order_and_receive/requested_items_to_order_and_receive.py
+++ b/erpnext/buying/report/requested_items_to_order_and_receive/requested_items_to_order_and_receive.py
@@ -7,7 +7,7 @@
 import frappe
 from frappe import _
 from frappe.query_builder.functions import Coalesce, Sum
-from frappe.utils import date_diff, flt, getdate
+from frappe.utils import cint, date_diff, flt, getdate
 
 
 def execute(filters=None):
@@ -47,8 +47,10 @@
 			mr.transaction_date.as_("date"),
 			mr_item.schedule_date.as_("required_date"),
 			mr_item.item_code.as_("item_code"),
-			Sum(Coalesce(mr_item.stock_qty, 0)).as_("qty"),
-			Coalesce(mr_item.stock_uom, "").as_("uom"),
+			Sum(Coalesce(mr_item.qty, 0)).as_("qty"),
+			Sum(Coalesce(mr_item.stock_qty, 0)).as_("stock_qty"),
+			Coalesce(mr_item.uom, "").as_("uom"),
+			Coalesce(mr_item.stock_uom, "").as_("stock_uom"),
 			Sum(Coalesce(mr_item.ordered_qty, 0)).as_("ordered_qty"),
 			Sum(Coalesce(mr_item.received_qty, 0)).as_("received_qty"),
 			(Sum(Coalesce(mr_item.stock_qty, 0)) - Sum(Coalesce(mr_item.received_qty, 0))).as_(
@@ -96,7 +98,7 @@
 
 
 def update_qty_columns(row_to_update, data_row):
-	fields = ["qty", "ordered_qty", "received_qty", "qty_to_receive", "qty_to_order"]
+	fields = ["qty", "stock_qty", "ordered_qty", "received_qty", "qty_to_receive", "qty_to_order"]
 	for field in fields:
 		row_to_update[field] += flt(data_row[field])
 
@@ -104,16 +106,20 @@
 def prepare_data(data, filters):
 	"""Prepare consolidated Report data and Chart data"""
 	material_request_map, item_qty_map = {}, {}
+	precision = cint(frappe.db.get_default("float_precision")) or 2
 
 	for row in data:
 		# item wise map for charts
 		if not row["item_code"] in item_qty_map:
 			item_qty_map[row["item_code"]] = {
-				"qty": row["qty"],
-				"ordered_qty": row["ordered_qty"],
-				"received_qty": row["received_qty"],
-				"qty_to_receive": row["qty_to_receive"],
-				"qty_to_order": row["qty_to_order"],
+				"qty": flt(row["stock_qty"], precision),
+				"stock_qty": flt(row["stock_qty"], precision),
+				"stock_uom": row["stock_uom"],
+				"uom": row["uom"],
+				"ordered_qty": flt(row["ordered_qty"], precision),
+				"received_qty": flt(row["received_qty"], precision),
+				"qty_to_receive": flt(row["qty_to_receive"], precision),
+				"qty_to_order": flt(row["qty_to_order"], precision),
 			}
 		else:
 			item_entry = item_qty_map[row["item_code"]]
@@ -200,21 +206,34 @@
 				{"label": _("Item Name"), "fieldname": "item_name", "fieldtype": "Data", "width": 100},
 				{"label": _("Description"), "fieldname": "description", "fieldtype": "Data", "width": 200},
 				{
-					"label": _("Stock UOM"),
+					"label": _("UOM"),
 					"fieldname": "uom",
 					"fieldtype": "Data",
 					"width": 100,
 				},
+				{
+					"label": _("Stock UOM"),
+					"fieldname": "stock_uom",
+					"fieldtype": "Data",
+					"width": 100,
+				},
 			]
 		)
 
 	columns.extend(
 		[
 			{
-				"label": _("Stock Qty"),
+				"label": _("Qty"),
 				"fieldname": "qty",
 				"fieldtype": "Float",
-				"width": 120,
+				"width": 140,
+				"convertible": "qty",
+			},
+			{
+				"label": _("Qty in Stock UOM"),
+				"fieldname": "stock_qty",
+				"fieldtype": "Float",
+				"width": 140,
 				"convertible": "qty",
 			},
 			{
diff --git a/erpnext/buying/report/supplier_quotation_comparison/supplier_quotation_comparison.py b/erpnext/buying/report/supplier_quotation_comparison/supplier_quotation_comparison.py
index a728290..01ff28d 100644
--- a/erpnext/buying/report/supplier_quotation_comparison/supplier_quotation_comparison.py
+++ b/erpnext/buying/report/supplier_quotation_comparison/supplier_quotation_comparison.py
@@ -35,8 +35,12 @@
 			sq_item.parent,
 			sq_item.item_code,
 			sq_item.qty,
+			sq.currency,
 			sq_item.stock_qty,
 			sq_item.amount,
+			sq_item.base_rate,
+			sq_item.base_amount,
+			sq.price_list_currency,
 			sq_item.uom,
 			sq_item.stock_uom,
 			sq_item.request_for_quotation,
@@ -105,7 +109,11 @@
 			"qty": data.get("qty"),
 			"price": flt(data.get("amount") * exchange_rate, float_precision),
 			"uom": data.get("uom"),
+			"price_list_currency": data.get("price_list_currency"),
+			"currency": data.get("currency"),
 			"stock_uom": data.get("stock_uom"),
+			"base_amount": flt(data.get("base_amount"), float_precision),
+			"base_rate": flt(data.get("base_rate"), float_precision),
 			"request_for_quotation": data.get("request_for_quotation"),
 			"valid_till": data.get("valid_till"),
 			"lead_time_days": data.get("lead_time_days"),
@@ -183,6 +191,8 @@
 
 
 def get_columns(filters):
+	currency = frappe.get_cached_value("Company", filters.get("company"), "default_currency")
+
 	group_by_columns = [
 		{
 			"fieldname": "supplier_name",
@@ -204,10 +214,17 @@
 		{"fieldname": "uom", "label": _("UOM"), "fieldtype": "Link", "options": "UOM", "width": 90},
 		{"fieldname": "qty", "label": _("Quantity"), "fieldtype": "Float", "width": 80},
 		{
+			"fieldname": "currency",
+			"label": _("Currency"),
+			"fieldtype": "Link",
+			"options": "Currency",
+			"width": 110,
+		},
+		{
 			"fieldname": "price",
 			"label": _("Price"),
 			"fieldtype": "Currency",
-			"options": "Company:company:default_currency",
+			"options": "currency",
 			"width": 110,
 		},
 		{
@@ -221,10 +238,24 @@
 			"fieldname": "price_per_unit",
 			"label": _("Price per Unit (Stock UOM)"),
 			"fieldtype": "Currency",
-			"options": "Company:company:default_currency",
+			"options": "currency",
 			"width": 120,
 		},
 		{
+			"fieldname": "base_amount",
+			"label": _("Price ({0})").format(currency),
+			"fieldtype": "Currency",
+			"options": "price_list_currency",
+			"width": 180,
+		},
+		{
+			"fieldname": "base_rate",
+			"label": _("Price Per Unit ({0})").format(currency),
+			"fieldtype": "Currency",
+			"options": "price_list_currency",
+			"width": 180,
+		},
+		{
 			"fieldname": "quotation",
 			"label": _("Supplier Quotation"),
 			"fieldtype": "Link",
diff --git a/erpnext/controllers/accounts_controller.py b/erpnext/controllers/accounts_controller.py
index 955ebef..e170044 100644
--- a/erpnext/controllers/accounts_controller.py
+++ b/erpnext/controllers/accounts_controller.py
@@ -13,6 +13,7 @@
 	add_days,
 	add_months,
 	cint,
+	comma_and,
 	flt,
 	fmt_money,
 	formatdate,
@@ -169,7 +170,6 @@
 				self.validate_value("base_grand_total", ">=", 0)
 
 			validate_return(self)
-			self.set_total_in_words()
 
 		self.validate_all_documents_schedule()
 
@@ -182,6 +182,17 @@
 		self.validate_party_account_currency()
 
 		if self.doctype in ["Purchase Invoice", "Sales Invoice"]:
+			if invalid_advances := [
+				x for x in self.advances if not x.reference_type or not x.reference_name
+			]:
+				frappe.throw(
+					_(
+						"Rows: {0} in {1} section are Invalid. Reference Name should point to a valid Payment Entry or Journal Entry."
+					).format(
+						frappe.bold(comma_and([x.idx for x in invalid_advances])), frappe.bold(_("Advance Payments"))
+					)
+				)
+
 			pos_check_field = "is_pos" if self.doctype == "Sales Invoice" else "is_paid"
 			if cint(self.allocate_advances_automatically) and not cint(self.get(pos_check_field)):
 				self.set_advances()
@@ -201,22 +212,82 @@
 			# apply tax withholding only if checked and applicable
 			self.set_tax_withholding()
 
-		validate_regional(self)
-
-		validate_einvoice_fields(self)
+		with temporary_flag("company", self.company):
+			validate_regional(self)
+			validate_einvoice_fields(self)
 
 		if self.doctype != "Material Request" and not self.ignore_pricing_rule:
 			apply_pricing_rule_on_transaction(self)
 
+		self.set_total_in_words()
+
 	def before_cancel(self):
 		validate_einvoice_fields(self)
 
+	def _remove_references_in_unreconcile(self):
+		upe = frappe.qb.DocType("Unreconcile Payment Entries")
+		rows = (
+			frappe.qb.from_(upe)
+			.select(upe.name, upe.parent)
+			.where((upe.reference_doctype == self.doctype) & (upe.reference_name == self.name))
+			.run(as_dict=True)
+		)
+
+		if rows:
+			references_map = frappe._dict()
+			for x in rows:
+				references_map.setdefault(x.parent, []).append(x.name)
+
+			for doc, rows in references_map.items():
+				unreconcile_doc = frappe.get_doc("Unreconcile Payments", doc)
+				for row in rows:
+					unreconcile_doc.remove(unreconcile_doc.get("allocations", {"name": row})[0])
+
+				unreconcile_doc.flags.ignore_validate_update_after_submit = True
+				unreconcile_doc.flags.ignore_links = True
+				unreconcile_doc.save(ignore_permissions=True)
+
+		# delete docs upon parent doc deletion
+		unreconcile_docs = frappe.db.get_all("Unreconcile Payments", filters={"voucher_no": self.name})
+		for x in unreconcile_docs:
+			_doc = frappe.get_doc("Unreconcile Payments", x.name)
+			if _doc.docstatus == 1:
+				_doc.cancel()
+			_doc.delete()
+
+	def _remove_references_in_repost_doctypes(self):
+		repost_doctypes = ["Repost Payment Ledger Items", "Repost Accounting Ledger Items"]
+
+		for _doctype in repost_doctypes:
+			dt = frappe.qb.DocType(_doctype)
+			rows = (
+				frappe.qb.from_(dt)
+				.select(dt.name, dt.parent, dt.parenttype)
+				.where((dt.voucher_type == self.doctype) & (dt.voucher_no == self.name))
+				.run(as_dict=True)
+			)
+
+			if rows:
+				references_map = frappe._dict()
+				for x in rows:
+					references_map.setdefault((x.parenttype, x.parent), []).append(x.name)
+
+				for doc, rows in references_map.items():
+					repost_doc = frappe.get_doc(doc[0], doc[1])
+
+					for row in rows:
+						if _doctype == "Repost Payment Ledger Items":
+							repost_doc.remove(repost_doc.get("repost_vouchers", {"name": row})[0])
+						else:
+							repost_doc.remove(repost_doc.get("vouchers", {"name": row})[0])
+
+					repost_doc.flags.ignore_validate_update_after_submit = True
+					repost_doc.flags.ignore_links = True
+					repost_doc.save(ignore_permissions=True)
+
 	def on_trash(self):
-		# delete references in 'Repost Payment Ledger'
-		rpi = frappe.qb.DocType("Repost Payment Ledger Items")
-		frappe.qb.from_(rpi).delete().where(
-			(rpi.voucher_type == self.doctype) & (rpi.voucher_no == self.name)
-		).run()
+		self._remove_references_in_repost_doctypes()
+		self._remove_references_in_unreconcile()
 
 		# delete sl and gl entries on deletion of transaction
 		if frappe.db.get_single_value("Accounts Settings", "delete_linked_ledger_entries"):
@@ -935,7 +1006,7 @@
 			party_type, party, party_account, amount_field, order_doctype, order_list, include_unallocated
 		)
 
-		payment_entries = get_advance_payment_entries(
+		payment_entries = get_advance_payment_entries_for_regional(
 			party_type, party, party_account, order_doctype, order_list, include_unallocated
 		)
 
@@ -1023,6 +1094,44 @@
 				)
 			)
 
+	def gain_loss_journal_already_booked(
+		self,
+		gain_loss_account,
+		exc_gain_loss,
+		ref2_dt,
+		ref2_dn,
+		ref2_detail_no,
+	) -> bool:
+		"""
+		Check if gain/loss is booked
+		"""
+		if res := frappe.db.get_all(
+			"Journal Entry Account",
+			filters={
+				"docstatus": 1,
+				"account": gain_loss_account,
+				"reference_type": ref2_dt,  # this will be Journal Entry
+				"reference_name": ref2_dn,
+				"reference_detail_no": ref2_detail_no,
+			},
+			pluck="parent",
+		):
+			# deduplicate
+			res = list({x for x in res})
+			if exc_vouchers := frappe.db.get_all(
+				"Journal Entry",
+				filters={"name": ["in", res], "voucher_type": "Exchange Gain Or Loss"},
+				fields=["voucher_type", "total_debit", "total_credit"],
+			):
+				booked_voucher = exc_vouchers[0]
+				if (
+					booked_voucher.total_debit == exc_gain_loss
+					and booked_voucher.total_credit == exc_gain_loss
+					and booked_voucher.voucher_type == "Exchange Gain Or Loss"
+				):
+					return True
+		return False
+
 	def make_exchange_gain_loss_journal(self, args: dict = None) -> None:
 		"""
 		Make Exchange Gain/Loss journal for Invoices and Payments
@@ -1051,27 +1160,37 @@
 
 							reverse_dr_or_cr = "debit" if dr_or_cr == "credit" else "credit"
 
-							je = create_gain_loss_journal(
-								self.company,
-								arg.get("party_type"),
-								arg.get("party"),
-								party_account,
+							if not self.gain_loss_journal_already_booked(
 								gain_loss_account,
 								difference_amount,
-								dr_or_cr,
-								reverse_dr_or_cr,
-								arg.get("against_voucher_type"),
-								arg.get("against_voucher"),
-								arg.get("idx"),
 								self.doctype,
 								self.name,
-								arg.get("idx"),
-							)
-							frappe.msgprint(
-								_("Exchange Gain/Loss amount has been booked through {0}").format(
-									get_link_to_form("Journal Entry", je)
+								arg.get("referenced_row"),
+							):
+								posting_date = frappe.db.get_value(arg.voucher_type, arg.voucher_no, "posting_date")
+								je = create_gain_loss_journal(
+									self.company,
+									posting_date,
+									arg.get("party_type"),
+									arg.get("party"),
+									party_account,
+									gain_loss_account,
+									difference_amount,
+									dr_or_cr,
+									reverse_dr_or_cr,
+									arg.get("against_voucher_type"),
+									arg.get("against_voucher"),
+									arg.get("idx"),
+									self.doctype,
+									self.name,
+									arg.get("referenced_row"),
+									arg.get("cost_center"),
 								)
-							)
+								frappe.msgprint(
+									_("Exchange Gain/Loss amount has been booked through {0}").format(
+										get_link_to_form("Journal Entry", je)
+									)
+								)
 
 			if self.get("doctype") == "Payment Entry":
 				# For Payment Entry, exchange_gain_loss field in the `references` table is the trigger for journal creation
@@ -1131,6 +1250,7 @@
 
 						je = create_gain_loss_journal(
 							self.company,
+							self.posting_date,
 							self.party_type,
 							self.party,
 							party_account,
@@ -1144,6 +1264,7 @@
 							self.doctype,
 							self.name,
 							d.idx,
+							self.cost_center,
 						)
 						frappe.msgprint(
 							_("Exchange Gain/Loss amount has been booked through {0}").format(
@@ -1381,8 +1502,8 @@
 					{
 						"account": self.additional_discount_account,
 						"against": supplier_or_customer,
-						dr_or_cr: self.discount_amount,
-						"cost_center": self.cost_center,
+						dr_or_cr: self.base_discount_amount,
+						"cost_center": self.cost_center or erpnext.get_default_cost_center(self.company),
 					},
 					item=self,
 				)
@@ -1653,6 +1774,7 @@
 					and party_account_currency != self.company_currency
 					and self.currency != party_account_currency
 				):
+
 					frappe.throw(
 						_("Accounting Entry for {0}: {1} can only be made in currency: {2}").format(
 							party_type, party, party_account_currency
@@ -2101,6 +2223,45 @@
 				_("Select finance book for the item {0} at row {1}").format(item.item_code, item.idx)
 			)
 
+	def check_if_fields_updated(self, fields_to_check, child_tables):
+		# Check if any field affecting accounting entry is altered
+		doc_before_update = self.get_doc_before_save()
+		accounting_dimensions = get_accounting_dimensions() + ["cost_center", "project"]
+
+		# Check if opening entry check updated
+		needs_repost = doc_before_update.get("is_opening") != self.is_opening
+
+		if not needs_repost:
+			# Parent Level Accounts excluding party account
+			fields_to_check += accounting_dimensions
+			for field in fields_to_check:
+				if doc_before_update.get(field) != self.get(field):
+					needs_repost = 1
+					break
+
+			if not needs_repost:
+				# Check for child tables
+				for table in child_tables:
+					needs_repost = check_if_child_table_updated(
+						doc_before_update.get(table), self.get(table), child_tables[table]
+					)
+					if needs_repost:
+						break
+
+		return needs_repost
+
+	@frappe.whitelist()
+	def repost_accounting_entries(self):
+		if self.repost_required:
+			repost_ledger = frappe.new_doc("Repost Accounting Ledger")
+			repost_ledger.company = self.company
+			repost_ledger.append("vouchers", {"voucher_type": self.doctype, "voucher_no": self.name})
+			repost_ledger.insert()
+			repost_ledger.submit()
+			self.db_set("repost_required", 0)
+		else:
+			frappe.throw(_("No updates pending for reposting"))
+
 
 @frappe.whitelist()
 def get_tax_rate(account_head):
@@ -2325,6 +2486,11 @@
 	return list(journal_entries)
 
 
+@erpnext.allow_regional
+def get_advance_payment_entries_for_regional(*args, **kwargs):
+	return get_advance_payment_entries(*args, **kwargs)
+
+
 def get_advance_payment_entries(
 	party_type,
 	party,
@@ -2386,7 +2552,8 @@
 	limit,
 	condition,
 ):
-	payment_type = "Receive" if party_type == "Customer" else "Pay"
+	account_type = frappe.db.get_value("Party Type", party_type, "account_type")
+	payment_type = "Receive" if account_type == "Receivable" else "Pay"
 	payment_entry = frappe.qb.DocType("Payment Entry")
 
 	q = (
@@ -2403,7 +2570,7 @@
 		.where(payment_entry.docstatus == 1)
 	)
 
-	if party_type == "Customer":
+	if payment_type == "Receive":
 		q = q.select((payment_entry.paid_from_account_currency).as_("currency"))
 		q = q.select(payment_entry.paid_from)
 		q = q.where(payment_entry.paid_from.isin(party_account))
@@ -3095,7 +3262,26 @@
 
 		if has_reserved_stock(parent.doctype, parent.name):
 			cancel_stock_reservation_entries(parent.doctype, parent.name)
-			parent.create_stock_reservation_entries()
+
+			if parent.per_picked == 0:
+				parent.create_stock_reservation_entries()
+
+
+def check_if_child_table_updated(
+	child_table_before_update, child_table_after_update, fields_to_check
+):
+	accounting_dimensions = get_accounting_dimensions() + ["cost_center", "project"]
+	# Check if any field affecting accounting entry is altered
+	for index, item in enumerate(child_table_after_update):
+		for field in fields_to_check:
+			if child_table_before_update[index].get(field) != item.get(field):
+				return True
+
+		for dimension in accounting_dimensions:
+			if child_table_before_update[index].get(dimension) != item.get(dimension):
+				return True
+
+	return False
 
 
 @erpnext.allow_regional
diff --git a/erpnext/controllers/buying_controller.py b/erpnext/controllers/buying_controller.py
index b396b27..a76abe2 100644
--- a/erpnext/controllers/buying_controller.py
+++ b/erpnext/controllers/buying_controller.py
@@ -190,10 +190,13 @@
 		purchase_doc_field = (
 			"purchase_receipt" if self.doctype == "Purchase Receipt" else "purchase_invoice"
 		)
-		not_cancelled_asset = [
-			d.name
-			for d in frappe.db.get_all("Asset", {purchase_doc_field: self.return_against, "docstatus": 1})
-		]
+		not_cancelled_asset = []
+		if self.return_against:
+			not_cancelled_asset = [
+				d.name
+				for d in frappe.db.get_all("Asset", {purchase_doc_field: self.return_against, "docstatus": 1})
+			]
+
 		if self.is_return and len(not_cancelled_asset):
 			frappe.throw(
 				_(
@@ -415,6 +418,10 @@
 					item.bom = None
 
 	def set_qty_as_per_stock_uom(self):
+		allow_to_edit_stock_qty = frappe.db.get_single_value(
+			"Stock Settings", "allow_to_edit_stock_uom_qty_for_purchase"
+		)
+
 		for d in self.get("items"):
 			if d.meta.get_field("stock_qty"):
 				# Check if item code is present
@@ -429,6 +436,11 @@
 						d.conversion_factor, d.precision("conversion_factor")
 					)
 
+				if allow_to_edit_stock_qty:
+					d.stock_qty = flt(d.stock_qty, d.precision("stock_qty"))
+					if d.get("received_stock_qty"):
+						d.received_stock_qty = flt(d.received_stock_qty, d.precision("received_stock_qty"))
+
 	def validate_purchase_return(self):
 		for d in self.get("items"):
 			if self.is_return and flt(d.rejected_qty) != 0:
@@ -436,24 +448,6 @@
 
 			# validate rate with ref PR
 
-	def validate_rejected_warehouse(self):
-		for item in self.get("items"):
-			if flt(item.rejected_qty) and not item.rejected_warehouse:
-				if self.rejected_warehouse:
-					item.rejected_warehouse = self.rejected_warehouse
-
-				if not item.rejected_warehouse:
-					frappe.throw(
-						_("Row #{0}: Rejected Warehouse is mandatory for the rejected Item {1}").format(
-							item.idx, item.item_code
-						)
-					)
-
-			if item.get("rejected_warehouse") and (item.get("rejected_warehouse") == item.get("warehouse")):
-				frappe.throw(
-					_("Row #{0}: Accepted Warehouse and Rejected Warehouse cannot be same").format(item.idx)
-				)
-
 	# validate accepted and rejected qty
 	def validate_accepted_rejected_qty(self):
 		for d in self.get("items"):
diff --git a/erpnext/controllers/sales_and_purchase_return.py b/erpnext/controllers/sales_and_purchase_return.py
index 173e812..165e17b 100644
--- a/erpnext/controllers/sales_and_purchase_return.py
+++ b/erpnext/controllers/sales_and_purchase_return.py
@@ -345,6 +345,8 @@
 		elif doctype == "Purchase Invoice":
 			# look for Print Heading "Debit Note"
 			doc.select_print_heading = frappe.get_cached_value("Print Heading", _("Debit Note"))
+			if source.tax_withholding_category:
+				doc.set_onload("supplier_tds", source.tax_withholding_category)
 
 		for tax in doc.get("taxes") or []:
 			if tax.charge_type == "Actual":
diff --git a/erpnext/controllers/selling_controller.py b/erpnext/controllers/selling_controller.py
index 6f1a50d..418a56f 100644
--- a/erpnext/controllers/selling_controller.py
+++ b/erpnext/controllers/selling_controller.py
@@ -194,11 +194,17 @@
 					frappe.throw(_("Maximum discount for Item {0} is {1}%").format(d.item_code, discount))
 
 	def set_qty_as_per_stock_uom(self):
+		allow_to_edit_stock_qty = frappe.db.get_single_value(
+			"Stock Settings", "allow_to_edit_stock_uom_qty_for_sales"
+		)
+
 		for d in self.get("items"):
 			if d.meta.get_field("stock_qty"):
 				if not d.conversion_factor:
 					frappe.throw(_("Row {0}: Conversion Factor is mandatory").format(d.idx))
 				d.stock_qty = flt(d.qty) * flt(d.conversion_factor)
+				if allow_to_edit_stock_qty:
+					d.stock_qty = flt(d.stock_qty, d.precision("stock_qty"))
 
 	def validate_selling_price(self):
 		def throw_message(idx, item_name, rate, ref_rate_field):
@@ -282,7 +288,9 @@
 			last_valuation_rate_in_sales_uom = last_valuation_rate * (item.conversion_factor or 1)
 
 			if flt(item.base_net_rate) < flt(last_valuation_rate_in_sales_uom):
-				throw_message(item.idx, item.item_name, last_valuation_rate_in_sales_uom, "valuation rate")
+				throw_message(
+					item.idx, item.item_name, last_valuation_rate_in_sales_uom, "valuation rate (Moving Average)"
+				)
 
 	def get_item_list(self):
 		il = []
@@ -388,7 +396,7 @@
 		for d in self.get("items"):
 			if d.get(ref_fieldname):
 				status = frappe.db.get_value("Sales Order", d.get(ref_fieldname), "status")
-				if status in ("Closed", "On Hold"):
+				if status in ("Closed", "On Hold") and not self.is_return:
 					frappe.throw(_("Sales Order {0} is {1}").format(d.get(ref_fieldname), status))
 
 	def update_reserved_qty(self):
@@ -404,7 +412,9 @@
 			if so and so_item_rows:
 				sales_order = frappe.get_doc("Sales Order", so)
 
-				if sales_order.status in ["Closed", "Cancelled"]:
+				if (sales_order.status == "Closed" and not self.is_return) or sales_order.status in [
+					"Cancelled"
+				]:
 					frappe.throw(
 						_("{0} {1} is cancelled or closed").format(_("Sales Order"), so), frappe.InvalidStatusError
 					)
diff --git a/erpnext/controllers/stock_controller.py b/erpnext/controllers/stock_controller.py
index d669abe..ae54b80 100644
--- a/erpnext/controllers/stock_controller.py
+++ b/erpnext/controllers/stock_controller.py
@@ -599,6 +599,7 @@
 		inspection_fieldname_map = {
 			"Purchase Receipt": "inspection_required_before_purchase",
 			"Purchase Invoice": "inspection_required_before_purchase",
+			"Subcontracting Receipt": "inspection_required_before_purchase",
 			"Sales Invoice": "inspection_required_before_delivery",
 			"Delivery Note": "inspection_required_before_delivery",
 		}
diff --git a/erpnext/controllers/subcontracting_controller.py b/erpnext/controllers/subcontracting_controller.py
index 6633f4f..5fa66b1 100644
--- a/erpnext/controllers/subcontracting_controller.py
+++ b/erpnext/controllers/subcontracting_controller.py
@@ -55,6 +55,23 @@
 		else:
 			super(SubcontractingController, self).validate()
 
+	def validate_rejected_warehouse(self):
+		for item in self.get("items"):
+			if flt(item.rejected_qty) and not item.rejected_warehouse:
+				if self.rejected_warehouse:
+					item.rejected_warehouse = self.rejected_warehouse
+				else:
+					frappe.throw(
+						_("Row #{0}: Rejected Warehouse is mandatory for the rejected Item {1}").format(
+							item.idx, item.item_code
+						)
+					)
+
+			if item.get("rejected_warehouse") and (item.get("rejected_warehouse") == item.get("warehouse")):
+				frappe.throw(
+					_("Row #{0}: Accepted Warehouse and Rejected Warehouse cannot be same").format(item.idx)
+				)
+
 	def remove_empty_rows(self):
 		for key in ["service_items", "items", "supplied_items"]:
 			if self.get(key):
@@ -80,23 +97,27 @@
 			if not is_stock_item:
 				frappe.throw(_("Row {0}: Item {1} must be a stock item.").format(item.idx, item.item_name))
 
-			if not is_sub_contracted_item:
-				frappe.throw(
-					_("Row {0}: Item {1} must be a subcontracted item.").format(item.idx, item.item_name)
-				)
+			if not item.get("is_scrap_item"):
+				if not is_sub_contracted_item:
+					frappe.throw(
+						_("Row {0}: Item {1} must be a subcontracted item.").format(item.idx, item.item_name)
+					)
 
-			if item.bom:
-				bom = frappe.get_doc("BOM", item.bom)
-				if not bom.is_active:
-					frappe.throw(
-						_("Row {0}: Please select an active BOM for Item {1}.").format(item.idx, item.item_name)
-					)
-				if bom.item != item.item_code:
-					frappe.throw(
-						_("Row {0}: Please select an valid BOM for Item {1}.").format(item.idx, item.item_name)
-					)
+				if item.bom:
+					is_active, bom_item = frappe.get_value("BOM", item.bom, ["is_active", "item"])
+
+					if not is_active:
+						frappe.throw(
+							_("Row {0}: Please select an active BOM for Item {1}.").format(item.idx, item.item_name)
+						)
+					if bom_item != item.item_code:
+						frappe.throw(
+							_("Row {0}: Please select an valid BOM for Item {1}.").format(item.idx, item.item_name)
+						)
+				else:
+					frappe.throw(_("Row {0}: Please select a BOM for Item {1}.").format(item.idx, item.item_name))
 			else:
-				frappe.throw(_("Row {0}: Please select a BOM for Item {1}.").format(item.idx, item.item_name))
+				item.bom = None
 
 	def __get_data_before_save(self):
 		item_dict = {}
@@ -783,7 +804,7 @@
 						{
 							"item_code": item.rm_item_code,
 							"warehouse": self.supplier_warehouse,
-							"actual_qty": -1 * flt(item.consumed_qty),
+							"actual_qty": -1 * flt(item.consumed_qty, item.precision("consumed_qty")),
 							"dependant_sle_voucher_detail_no": item.reference_name,
 						},
 					)
@@ -874,19 +895,24 @@
 
 		if self.total_additional_costs:
 			if self.distribute_additional_costs_based_on == "Amount":
-				total_amt = sum(flt(item.amount) for item in self.get("items"))
+				total_amt = sum(
+					flt(item.amount) for item in self.get("items") if not item.get("is_scrap_item")
+				)
 				for item in self.items:
-					item.additional_cost_per_qty = (
-						(item.amount * self.total_additional_costs) / total_amt
-					) / item.qty
+					if not item.get("is_scrap_item"):
+						item.additional_cost_per_qty = (
+							(item.amount * self.total_additional_costs) / total_amt
+						) / item.qty
 			else:
-				total_qty = sum(flt(item.qty) for item in self.get("items"))
+				total_qty = sum(flt(item.qty) for item in self.get("items") if not item.get("is_scrap_item"))
 				additional_cost_per_qty = self.total_additional_costs / total_qty
 				for item in self.items:
-					item.additional_cost_per_qty = additional_cost_per_qty
+					if not item.get("is_scrap_item"):
+						item.additional_cost_per_qty = additional_cost_per_qty
 		else:
 			for item in self.items:
-				item.additional_cost_per_qty = 0
+				if not item.get("is_scrap_item"):
+					item.additional_cost_per_qty = 0
 
 	@frappe.whitelist()
 	def get_current_stock(self):
diff --git a/erpnext/controllers/taxes_and_totals.py b/erpnext/controllers/taxes_and_totals.py
index 62d4c53..95bf0e4 100644
--- a/erpnext/controllers/taxes_and_totals.py
+++ b/erpnext/controllers/taxes_and_totals.py
@@ -190,7 +190,9 @@
 
 				item.net_rate = item.rate
 
-				if not item.qty and self.doc.get("is_return"):
+				if (
+					not item.qty and self.doc.get("is_return") and self.doc.get("doctype") != "Purchase Receipt"
+				):
 					item.amount = flt(-1 * item.rate, item.precision("amount"))
 				elif not item.qty and self.doc.get("is_debit_note"):
 					item.amount = flt(item.rate, item.precision("amount"))
diff --git a/erpnext/controllers/tests/test_accounts_controller.py b/erpnext/controllers/tests/test_accounts_controller.py
index 0f8e133..391258f 100644
--- a/erpnext/controllers/tests/test_accounts_controller.py
+++ b/erpnext/controllers/tests/test_accounts_controller.py
@@ -55,6 +55,7 @@
 	10 series - Sales Invoice against Payment Entries
 	20 series - Sales Invoice against Journals
 	30 series - Sales Invoice against Credit Notes
+	40 series - Company default Cost center is unset
 	"""
 
 	def setUp(self):
@@ -941,6 +942,60 @@
 		self.assertEqual(exc_je_for_si, [])
 		self.assertEqual(exc_je_for_je, [])
 
+	def test_24_journal_against_multiple_invoices(self):
+		si1 = self.create_sales_invoice(qty=1, conversion_rate=80, rate=1)
+		si2 = self.create_sales_invoice(qty=1, conversion_rate=80, rate=1)
+
+		# Payment
+		je = self.create_journal_entry(
+			acc1=self.debit_usd,
+			acc1_exc_rate=75,
+			acc2=self.cash,
+			acc1_amount=-2,
+			acc2_amount=-150,
+			acc2_exc_rate=1,
+		)
+		je.accounts[0].party_type = "Customer"
+		je.accounts[0].party = self.customer
+		je = je.save().submit()
+
+		pr = self.create_payment_reconciliation()
+		pr.get_unreconciled_entries()
+		self.assertEqual(len(pr.invoices), 2)
+		self.assertEqual(len(pr.payments), 1)
+		invoices = [x.as_dict() for x in pr.invoices]
+		payments = [x.as_dict() for x in pr.payments]
+		pr.allocate_entries(frappe._dict({"invoices": invoices, "payments": payments}))
+		pr.reconcile()
+		self.assertEqual(len(pr.invoices), 0)
+		self.assertEqual(len(pr.payments), 0)
+
+		si1.reload()
+		si2.reload()
+
+		self.assertEqual(si1.outstanding_amount, 0)
+		self.assertEqual(si2.outstanding_amount, 0)
+		self.assert_ledger_outstanding(si1.doctype, si1.name, 0.0, 0.0)
+		self.assert_ledger_outstanding(si2.doctype, si2.name, 0.0, 0.0)
+
+		# Exchange Gain/Loss Journal should've been created
+		# remove payment JE from list
+		exc_je_for_si1 = [x for x in self.get_journals_for(si1.doctype, si1.name) if x.parent != je.name]
+		exc_je_for_si2 = [x for x in self.get_journals_for(si2.doctype, si2.name) if x.parent != je.name]
+		exc_je_for_je = [x for x in self.get_journals_for(je.doctype, je.name) if x.parent != je.name]
+		self.assertEqual(len(exc_je_for_si1), 1)
+		self.assertEqual(len(exc_je_for_si2), 1)
+		self.assertEqual(len(exc_je_for_je), 2)
+
+		si1.cancel()
+		# Gain/Loss JE of si1 should've been cancelled
+		exc_je_for_si1 = [x for x in self.get_journals_for(si1.doctype, si1.name) if x.parent != je.name]
+		exc_je_for_si2 = [x for x in self.get_journals_for(si2.doctype, si2.name) if x.parent != je.name]
+		exc_je_for_je = [x for x in self.get_journals_for(je.doctype, je.name) if x.parent != je.name]
+		self.assertEqual(len(exc_je_for_si1), 0)
+		self.assertEqual(len(exc_je_for_si2), 1)
+		self.assertEqual(len(exc_je_for_je), 1)
+
 	def test_30_cr_note_against_sales_invoice(self):
 		"""
 		Reconciling Cr Note against Sales Invoice, both having different exchange rates
@@ -997,3 +1052,139 @@
 		si.reload()
 		self.assertEqual(si.outstanding_amount, 1)
 		self.assert_ledger_outstanding(si.doctype, si.name, 80.0, 1.0)
+
+	def test_40_cost_center_from_payment_entry(self):
+		"""
+		Gain/Loss JE should inherit cost center from payment if company default is unset
+		"""
+		# remove default cost center
+		cc = frappe.db.get_value("Company", self.company, "cost_center")
+		frappe.db.set_value("Company", self.company, "cost_center", None)
+
+		rate_in_account_currency = 1
+		si = self.create_sales_invoice(qty=1, rate=rate_in_account_currency, do_not_submit=True)
+		si.cost_center = None
+		si.save().submit()
+
+		pe = get_payment_entry(si.doctype, si.name)
+		pe.source_exchange_rate = 75
+		pe.received_amount = 75
+		pe.cost_center = self.cost_center
+		pe = pe.save().submit()
+
+		# Exchange Gain/Loss Journal should've been created.
+		exc_je_for_si = self.get_journals_for(si.doctype, si.name)
+		exc_je_for_pe = self.get_journals_for(pe.doctype, pe.name)
+		self.assertNotEqual(exc_je_for_si, [])
+		self.assertEqual(len(exc_je_for_si), 1)
+		self.assertEqual(len(exc_je_for_pe), 1)
+		self.assertEqual(exc_je_for_si[0], exc_je_for_pe[0])
+
+		self.assertEqual(
+			[self.cost_center, self.cost_center],
+			frappe.db.get_all(
+				"Journal Entry Account", filters={"parent": exc_je_for_si[0].parent}, pluck="cost_center"
+			),
+		)
+		frappe.db.set_value("Company", self.company, "cost_center", cc)
+
+	def test_41_cost_center_from_journal_entry(self):
+		"""
+		Gain/Loss JE should inherit cost center from payment if company default is unset
+		"""
+		# remove default cost center
+		cc = frappe.db.get_value("Company", self.company, "cost_center")
+		frappe.db.set_value("Company", self.company, "cost_center", None)
+
+		rate_in_account_currency = 1
+		si = self.create_sales_invoice(qty=1, rate=rate_in_account_currency, do_not_submit=True)
+		si.cost_center = None
+		si.save().submit()
+
+		je = self.create_journal_entry(
+			acc1=self.debit_usd,
+			acc1_exc_rate=75,
+			acc2=self.cash,
+			acc1_amount=-1,
+			acc2_amount=-75,
+			acc2_exc_rate=1,
+		)
+		je.accounts[0].party_type = "Customer"
+		je.accounts[0].party = self.customer
+		je.accounts[0].cost_center = self.cost_center
+		je = je.save().submit()
+
+		# Reconcile
+		pr = self.create_payment_reconciliation()
+		pr.get_unreconciled_entries()
+		self.assertEqual(len(pr.invoices), 1)
+		self.assertEqual(len(pr.payments), 1)
+		invoices = [x.as_dict() for x in pr.invoices]
+		payments = [x.as_dict() for x in pr.payments]
+		pr.allocate_entries(frappe._dict({"invoices": invoices, "payments": payments}))
+		pr.reconcile()
+		self.assertEqual(len(pr.invoices), 0)
+		self.assertEqual(len(pr.payments), 0)
+
+		# Exchange Gain/Loss Journal should've been created.
+		exc_je_for_si = [x for x in self.get_journals_for(si.doctype, si.name) if x.parent != je.name]
+		exc_je_for_je = [x for x in self.get_journals_for(je.doctype, je.name) if x.parent != je.name]
+		self.assertNotEqual(exc_je_for_si, [])
+		self.assertEqual(len(exc_je_for_si), 1)
+		self.assertEqual(len(exc_je_for_je), 1)
+		self.assertEqual(exc_je_for_si[0], exc_je_for_je[0])
+
+		self.assertEqual(
+			[self.cost_center, self.cost_center],
+			frappe.db.get_all(
+				"Journal Entry Account", filters={"parent": exc_je_for_si[0].parent}, pluck="cost_center"
+			),
+		)
+		frappe.db.set_value("Company", self.company, "cost_center", cc)
+
+	def test_42_cost_center_from_cr_note(self):
+		"""
+		Gain/Loss JE should inherit cost center from payment if company default is unset
+		"""
+		# remove default cost center
+		cc = frappe.db.get_value("Company", self.company, "cost_center")
+		frappe.db.set_value("Company", self.company, "cost_center", None)
+
+		rate_in_account_currency = 1
+		si = self.create_sales_invoice(qty=1, rate=rate_in_account_currency, do_not_submit=True)
+		si.cost_center = None
+		si.save().submit()
+
+		cr_note = self.create_sales_invoice(qty=-1, conversion_rate=75, rate=1, do_not_save=True)
+		cr_note.cost_center = self.cost_center
+		cr_note.is_return = 1
+		cr_note.save().submit()
+
+		# Reconcile
+		pr = self.create_payment_reconciliation()
+		pr.get_unreconciled_entries()
+		self.assertEqual(len(pr.invoices), 1)
+		self.assertEqual(len(pr.payments), 1)
+		invoices = [x.as_dict() for x in pr.invoices]
+		payments = [x.as_dict() for x in pr.payments]
+		pr.allocate_entries(frappe._dict({"invoices": invoices, "payments": payments}))
+		pr.reconcile()
+		self.assertEqual(len(pr.invoices), 0)
+		self.assertEqual(len(pr.payments), 0)
+
+		# Exchange Gain/Loss Journal should've been created.
+		exc_je_for_si = self.get_journals_for(si.doctype, si.name)
+		exc_je_for_cr_note = self.get_journals_for(cr_note.doctype, cr_note.name)
+		self.assertNotEqual(exc_je_for_si, [])
+		self.assertEqual(len(exc_je_for_si), 2)
+		self.assertEqual(len(exc_je_for_cr_note), 2)
+		self.assertEqual(exc_je_for_si, exc_je_for_cr_note)
+
+		for x in exc_je_for_si + exc_je_for_cr_note:
+			with self.subTest(x=x):
+				self.assertEqual(
+					[self.cost_center, self.cost_center],
+					frappe.db.get_all("Journal Entry Account", filters={"parent": x.parent}, pluck="cost_center"),
+				)
+
+		frappe.db.set_value("Company", self.company, "cost_center", cc)
diff --git a/erpnext/crm/doctype/lead/lead.json b/erpnext/crm/doctype/lead/lead.json
index 0cb8824..dafbd9f 100644
--- a/erpnext/crm/doctype/lead/lead.json
+++ b/erpnext/crm/doctype/lead/lead.json
@@ -516,7 +516,7 @@
  "idx": 5,
  "image_field": "image",
  "links": [],
- "modified": "2023-04-14 18:20:05.044791",
+ "modified": "2023-08-28 22:28:00.104413",
  "modified_by": "Administrator",
  "module": "CRM",
  "name": "Lead",
@@ -527,7 +527,7 @@
    "permlevel": 1,
    "read": 1,
    "report": 1,
-   "role": "All"
+   "role": "Desk User"
   },
   {
    "create": 1,
@@ -583,4 +583,4 @@
  "states": [],
  "subject_field": "title",
  "title_field": "title"
-}
+}
\ No newline at end of file
diff --git a/erpnext/crm/doctype/lead/lead.py b/erpnext/crm/doctype/lead/lead.py
index 105c58d..e897ba4 100644
--- a/erpnext/crm/doctype/lead/lead.py
+++ b/erpnext/crm/doctype/lead/lead.py
@@ -379,7 +379,7 @@
 		}
 	)
 
-	set_address_details(out, lead, "Lead")
+	set_address_details(out, lead, "Lead", company=company)
 
 	taxes_and_charges = set_taxes(
 		None,
diff --git a/erpnext/crm/doctype/linkedin_settings/linkedin_settings.js b/erpnext/crm/doctype/linkedin_settings/linkedin_settings.js
deleted file mode 100644
index 7d6b395..0000000
--- a/erpnext/crm/doctype/linkedin_settings/linkedin_settings.js
+++ /dev/null
@@ -1,74 +0,0 @@
-// Copyright (c) 2020, Frappe Technologies Pvt. Ltd. and contributors
-// For license information, please see license.txt
-
-frappe.ui.form.on('LinkedIn Settings', {
-	onload: function(frm) {
-		if (frm.doc.session_status == 'Expired' && frm.doc.consumer_key && frm.doc.consumer_secret) {
-			frappe.confirm(
-				__('Session not valid. Do you want to login?'),
-				function(){
-					frm.trigger("login");
-				},
-				function(){
-					window.close();
-				}
-			);
-		}
-		frm.dashboard.set_headline(__("For more information, {0}.", [`<a target='_blank' href='https://docs.erpnext.com/docs/user/manual/en/CRM/linkedin-settings'>${__('click here')}</a>`]));
-	},
-	refresh: function(frm) {
-		if (frm.doc.session_status=="Expired"){
-			let msg = __("Session not active. Save document to login.");
-			frm.dashboard.set_headline_alert(
-				`<div class="row">
-					<div class="col-xs-12">
-						<span class="indicator whitespace-nowrap red"><span class="hidden-xs">${msg}</span></span>
-					</div>
-				</div>`
-			);
-		}
-
-		if (frm.doc.session_status=="Active"){
-			let d = new Date(frm.doc.modified);
-			d.setDate(d.getDate()+60);
-			let dn = new Date();
-			let days = d.getTime() - dn.getTime();
-			days = Math.floor(days/(1000 * 3600 * 24));
-			let msg,color;
-
-			if (days>0){
-				msg = __("Your session will be expire in {0} days.", [days]);
-				color = "green";
-			}
-			else {
-				msg = __("Session is expired. Save doc to login.");
-				color = "red";
-			}
-
-			frm.dashboard.set_headline_alert(
-				`<div class="row">
-					<div class="col-xs-12">
-						<span class="indicator whitespace-nowrap ${color}"><span class="hidden-xs">${msg}</span></span>
-					</div>
-				</div>`
-			);
-		}
-	},
-	login: function(frm) {
-		if (frm.doc.consumer_key && frm.doc.consumer_secret){
-			frappe.dom.freeze();
-			frappe.call({
-				doc: frm.doc,
-				method: "get_authorization_url",
-				callback : function(r) {
-					window.location.href = r.message;
-				}
-			}).fail(function() {
-				frappe.dom.unfreeze();
-			});
-		}
-	},
-	after_save: function(frm) {
-		frm.trigger("login");
-	}
-});
diff --git a/erpnext/crm/doctype/linkedin_settings/linkedin_settings.json b/erpnext/crm/doctype/linkedin_settings/linkedin_settings.json
deleted file mode 100644
index f882e36..0000000
--- a/erpnext/crm/doctype/linkedin_settings/linkedin_settings.json
+++ /dev/null
@@ -1,112 +0,0 @@
-{
- "actions": [],
- "creation": "2020-01-30 13:36:39.492931",
- "doctype": "DocType",
- "documentation": "https://docs.erpnext.com/docs/user/manual/en/CRM/linkedin-settings",
- "editable_grid": 1,
- "engine": "InnoDB",
- "field_order": [
-  "account_name",
-  "column_break_2",
-  "company_id",
-  "oauth_details",
-  "consumer_key",
-  "column_break_5",
-  "consumer_secret",
-  "user_details_section",
-  "access_token",
-  "person_urn",
-  "session_status"
- ],
- "fields": [
-  {
-   "fieldname": "account_name",
-   "fieldtype": "Data",
-   "label": "Account Name",
-   "read_only": 1
-  },
-  {
-   "fieldname": "oauth_details",
-   "fieldtype": "Section Break",
-   "label": "OAuth Credentials"
-  },
-  {
-   "fieldname": "consumer_key",
-   "fieldtype": "Data",
-   "in_list_view": 1,
-   "label": "Consumer Key",
-   "reqd": 1
-  },
-  {
-   "fieldname": "consumer_secret",
-   "fieldtype": "Password",
-   "in_list_view": 1,
-   "label": "Consumer Secret",
-   "reqd": 1
-  },
-  {
-   "fieldname": "access_token",
-   "fieldtype": "Data",
-   "hidden": 1,
-   "label": "Access Token",
-   "read_only": 1
-  },
-  {
-   "fieldname": "person_urn",
-   "fieldtype": "Data",
-   "hidden": 1,
-   "label": "Person URN",
-   "read_only": 1
-  },
-  {
-   "fieldname": "column_break_5",
-   "fieldtype": "Column Break"
-  },
-  {
-   "fieldname": "user_details_section",
-   "fieldtype": "Section Break",
-   "label": "User Details"
-  },
-  {
-   "fieldname": "session_status",
-   "fieldtype": "Select",
-   "hidden": 1,
-   "label": "Session Status",
-   "options": "Expired\nActive",
-   "read_only": 1
-  },
-  {
-   "fieldname": "column_break_2",
-   "fieldtype": "Column Break"
-  },
-  {
-   "fieldname": "company_id",
-   "fieldtype": "Data",
-   "label": "Company ID",
-   "reqd": 1
-  }
- ],
- "issingle": 1,
- "links": [],
- "modified": "2021-02-18 15:19:21.920725",
- "modified_by": "Administrator",
- "module": "CRM",
- "name": "LinkedIn Settings",
- "owner": "Administrator",
- "permissions": [
-  {
-   "create": 1,
-   "delete": 1,
-   "email": 1,
-   "print": 1,
-   "read": 1,
-   "role": "System Manager",
-   "share": 1,
-   "write": 1
-  }
- ],
- "quick_entry": 1,
- "sort_field": "modified",
- "sort_order": "DESC",
- "track_changes": 1
-}
\ No newline at end of file
diff --git a/erpnext/crm/doctype/linkedin_settings/linkedin_settings.py b/erpnext/crm/doctype/linkedin_settings/linkedin_settings.py
deleted file mode 100644
index 64b3a01..0000000
--- a/erpnext/crm/doctype/linkedin_settings/linkedin_settings.py
+++ /dev/null
@@ -1,208 +0,0 @@
-# Copyright (c) 2020, Frappe Technologies Pvt. Ltd. and contributors
-# For license information, please see license.txt
-
-
-from urllib.parse import urlencode
-
-import frappe
-import requests
-from frappe import _
-from frappe.model.document import Document
-from frappe.utils import get_url_to_form
-from frappe.utils.file_manager import get_file_path
-
-
-class LinkedInSettings(Document):
-	@frappe.whitelist()
-	def get_authorization_url(self):
-		params = urlencode(
-			{
-				"response_type": "code",
-				"client_id": self.consumer_key,
-				"redirect_uri": "{0}/api/method/erpnext.crm.doctype.linkedin_settings.linkedin_settings.callback?".format(
-					frappe.utils.get_url()
-				),
-				"scope": "r_emailaddress w_organization_social r_basicprofile r_liteprofile r_organization_social rw_organization_admin w_member_social",
-			}
-		)
-
-		url = "https://www.linkedin.com/oauth/v2/authorization?{}".format(params)
-
-		return url
-
-	def get_access_token(self, code):
-		url = "https://www.linkedin.com/oauth/v2/accessToken"
-		body = {
-			"grant_type": "authorization_code",
-			"code": code,
-			"client_id": self.consumer_key,
-			"client_secret": self.get_password(fieldname="consumer_secret"),
-			"redirect_uri": "{0}/api/method/erpnext.crm.doctype.linkedin_settings.linkedin_settings.callback?".format(
-				frappe.utils.get_url()
-			),
-		}
-		headers = {"Content-Type": "application/x-www-form-urlencoded"}
-
-		response = self.http_post(url=url, data=body, headers=headers)
-		response = frappe.parse_json(response.content.decode())
-		self.db_set("access_token", response["access_token"])
-
-	def get_member_profile(self):
-		response = requests.get(url="https://api.linkedin.com/v2/me", headers=self.get_headers())
-		response = frappe.parse_json(response.content.decode())
-
-		frappe.db.set_value(
-			self.doctype,
-			self.name,
-			{
-				"person_urn": response["id"],
-				"account_name": response["vanityName"],
-				"session_status": "Active",
-			},
-		)
-		frappe.local.response["type"] = "redirect"
-		frappe.local.response["location"] = get_url_to_form("LinkedIn Settings", "LinkedIn Settings")
-
-	def post(self, text, title, media=None):
-		if not media:
-			return self.post_text(text, title)
-		else:
-			media_id = self.upload_image(media)
-
-			if media_id:
-				return self.post_text(text, title, media_id=media_id)
-			else:
-				self.log_error("LinkedIn: Failed to upload media")
-
-	def upload_image(self, media):
-		media = get_file_path(media)
-		register_url = "https://api.linkedin.com/v2/assets?action=registerUpload"
-		body = {
-			"registerUploadRequest": {
-				"recipes": ["urn:li:digitalmediaRecipe:feedshare-image"],
-				"owner": "urn:li:organization:{0}".format(self.company_id),
-				"serviceRelationships": [
-					{"relationshipType": "OWNER", "identifier": "urn:li:userGeneratedContent"}
-				],
-			}
-		}
-		headers = self.get_headers()
-		response = self.http_post(url=register_url, body=body, headers=headers)
-
-		if response.status_code == 200:
-			response = response.json()
-			asset = response["value"]["asset"]
-			upload_url = response["value"]["uploadMechanism"][
-				"com.linkedin.digitalmedia.uploading.MediaUploadHttpRequest"
-			]["uploadUrl"]
-			headers["Content-Type"] = "image/jpeg"
-			response = self.http_post(upload_url, headers=headers, data=open(media, "rb"))
-			if response.status_code < 200 and response.status_code > 299:
-				frappe.throw(
-					_("Error While Uploading Image"),
-					title="{0} {1}".format(response.status_code, response.reason),
-				)
-				return None
-			return asset
-
-		return None
-
-	def post_text(self, text, title, media_id=None):
-		url = "https://api.linkedin.com/v2/shares"
-		headers = self.get_headers()
-		headers["X-Restli-Protocol-Version"] = "2.0.0"
-		headers["Content-Type"] = "application/json; charset=UTF-8"
-
-		body = {
-			"distribution": {"linkedInDistributionTarget": {}},
-			"owner": "urn:li:organization:{0}".format(self.company_id),
-			"subject": title,
-			"text": {"text": text},
-		}
-
-		reference_url = self.get_reference_url(text)
-		if reference_url:
-			body["content"] = {"contentEntities": [{"entityLocation": reference_url}]}
-
-		if media_id:
-			body["content"] = {"contentEntities": [{"entity": media_id}], "shareMediaCategory": "IMAGE"}
-
-		response = self.http_post(url=url, headers=headers, body=body)
-		return response
-
-	def http_post(self, url, headers=None, body=None, data=None):
-		try:
-			response = requests.post(url=url, json=body, data=data, headers=headers)
-			if response.status_code not in [201, 200]:
-				raise
-
-		except Exception as e:
-			self.api_error(response)
-
-		return response
-
-	def get_headers(self):
-		return {"Authorization": "Bearer {}".format(self.access_token)}
-
-	def get_reference_url(self, text):
-		import re
-
-		regex_url = r"http[s]?://(?:[a-zA-Z]|[0-9]|[$-_@.&+]|[!*\(\),]|(?:%[0-9a-fA-F][0-9a-fA-F]))+"
-		urls = re.findall(regex_url, text)
-		if urls:
-			return urls[0]
-
-	def delete_post(self, post_id):
-		try:
-			response = requests.delete(
-				url="https://api.linkedin.com/v2/shares/urn:li:share:{0}".format(post_id),
-				headers=self.get_headers(),
-			)
-			if response.status_code != 200:
-				raise
-		except Exception:
-			self.api_error(response)
-
-	def get_post(self, post_id):
-		url = "https://api.linkedin.com/v2/organizationalEntityShareStatistics?q=organizationalEntity&organizationalEntity=urn:li:organization:{0}&shares[0]=urn:li:share:{1}".format(
-			self.company_id, post_id
-		)
-
-		try:
-			response = requests.get(url=url, headers=self.get_headers())
-			if response.status_code != 200:
-				raise
-
-		except Exception:
-			self.api_error(response)
-
-		response = frappe.parse_json(response.content.decode())
-		if len(response.elements):
-			return response.elements[0]
-
-		return None
-
-	def api_error(self, response):
-		content = frappe.parse_json(response.content.decode())
-
-		if response.status_code == 401:
-			self.db_set("session_status", "Expired")
-			frappe.db.commit()
-			frappe.throw(content["message"], title=_("LinkedIn Error - Unauthorized"))
-		elif response.status_code == 403:
-			frappe.msgprint(_("You didn't have permission to access this API"))
-			frappe.throw(content["message"], title=_("LinkedIn Error - Access Denied"))
-		else:
-			frappe.throw(response.reason, title=response.status_code)
-
-
-@frappe.whitelist(allow_guest=True)
-def callback(code=None, error=None, error_description=None):
-	if not error:
-		linkedin_settings = frappe.get_doc("LinkedIn Settings")
-		linkedin_settings.get_access_token(code)
-		linkedin_settings.get_member_profile()
-		frappe.db.commit()
-	else:
-		frappe.local.response["type"] = "redirect"
-		frappe.local.response["location"] = get_url_to_form("LinkedIn Settings", "LinkedIn Settings")
diff --git a/erpnext/crm/doctype/linkedin_settings/test_linkedin_settings.py b/erpnext/crm/doctype/linkedin_settings/test_linkedin_settings.py
deleted file mode 100644
index 09732e4..0000000
--- a/erpnext/crm/doctype/linkedin_settings/test_linkedin_settings.py
+++ /dev/null
@@ -1,9 +0,0 @@
-# Copyright (c) 2020, Frappe Technologies Pvt. Ltd. and Contributors
-# See license.txt
-
-# import frappe
-import unittest
-
-
-class TestLinkedInSettings(unittest.TestCase):
-	pass
diff --git a/erpnext/crm/doctype/social_media_post/__init__.py b/erpnext/crm/doctype/social_media_post/__init__.py
deleted file mode 100644
index e69de29..0000000
--- a/erpnext/crm/doctype/social_media_post/__init__.py
+++ /dev/null
diff --git a/erpnext/crm/doctype/social_media_post/social_media_post.js b/erpnext/crm/doctype/social_media_post/social_media_post.js
deleted file mode 100644
index d4ac0ba..0000000
--- a/erpnext/crm/doctype/social_media_post/social_media_post.js
+++ /dev/null
@@ -1,139 +0,0 @@
-// Copyright (c) 2020, Frappe Technologies Pvt. Ltd. and contributors
-// For license information, please see license.txt
-frappe.ui.form.on('Social Media Post', {
-	validate: function(frm) {
-		if (frm.doc.twitter === 0 && frm.doc.linkedin === 0) {
-			frappe.throw(__("Select atleast one Social Media Platform to Share on."));
-		}
-		if (frm.doc.scheduled_time) {
-			let scheduled_time = new Date(frm.doc.scheduled_time);
-			let date_time = new Date();
-			if (scheduled_time.getTime() < date_time.getTime()) {
-				frappe.throw(__("Scheduled Time must be a future time."));
-			}
-		}
-		frm.trigger('validate_tweet_length');
-	},
-
-	text: function(frm) {
-		if (frm.doc.text) {
-			frm.set_df_property('text', 'description', `${frm.doc.text.length}/280`);
-			frm.refresh_field('text');
-			frm.trigger('validate_tweet_length');
-		}
-	},
-
-	validate_tweet_length: function(frm) {
-		if (frm.doc.text && frm.doc.text.length > 280) {
-			frappe.throw(__("Tweet length Must be less than 280."));
-		}
-	},
-
-	onload: function(frm) {
-		frm.trigger('make_dashboard');
-	},
-
-	make_dashboard: function(frm) {
-		if (frm.doc.post_status == "Posted") {
-			frappe.call({
-				doc: frm.doc,
-				method: 'get_post',
-				freeze: true,
-				callback: (r) => {
-					if (!r.message) {
-						return;
-					}
-
-					let datasets = [], colors = [];
-					if (r.message && r.message.twitter) {
-						colors.push('#1DA1F2');
-						datasets.push({
-							name: 'Twitter',
-							values: [r.message.twitter.favorite_count, r.message.twitter.retweet_count]
-						});
-					}
-					if (r.message && r.message.linkedin) {
-						colors.push('#0077b5');
-						datasets.push({
-							name: 'LinkedIn',
-							values: [r.message.linkedin.totalShareStatistics.likeCount, r.message.linkedin.totalShareStatistics.shareCount]
-						});
-					}
-
-					if (datasets.length) {
-						frm.dashboard.render_graph({
-							data: {
-								labels: ['Likes', 'Retweets/Shares'],
-								datasets: datasets
-							},
-
-							title: __("Post Metrics"),
-							type: 'bar',
-							height: 300,
-							colors: colors
-						});
-					}
-				}
-			});
-		}
-	},
-
-	refresh: function(frm) {
-		frm.trigger('text');
-
-		if (frm.doc.docstatus === 1) {
-			if (!['Posted', 'Deleted'].includes(frm.doc.post_status)) {
-				frm.trigger('add_post_btn');
-			}
-			if (frm.doc.post_status !='Deleted') {
-				frm.add_custom_button(__('Delete Post'), function() {
-					frappe.confirm(__('Are you sure want to delete the Post from Social Media platforms?'),
-						function() {
-							frappe.call({
-								doc: frm.doc,
-								method: 'delete_post',
-								freeze: true,
-								callback: () => {
-									frm.reload_doc();
-								}
-							});
-						}
-					);
-				});
-			}
-
-			if (frm.doc.post_status !='Deleted') {
-				let html='';
-				if (frm.doc.twitter) {
-					let color = frm.doc.twitter_post_id ? "green" : "red";
-					let status = frm.doc.twitter_post_id ? "Posted" : "Not Posted";
-					html += `<div class="col-xs-6">
-								<span class="indicator whitespace-nowrap ${color}"><span>Twitter : ${status} </span></span>
-							</div>` ;
-				}
-				if (frm.doc.linkedin) {
-					let color = frm.doc.linkedin_post_id ? "green" : "red";
-					let status = frm.doc.linkedin_post_id ? "Posted" : "Not Posted";
-					html += `<div class="col-xs-6">
-								<span class="indicator whitespace-nowrap ${color}"><span>LinkedIn : ${status} </span></span>
-							</div>` ;
-				}
-				html = `<div class="row">${html}</div>`;
-				frm.dashboard.set_headline_alert(html);
-			}
-		}
-	},
-
-	add_post_btn: function(frm) {
-		frm.add_custom_button(__('Post Now'), function() {
-			frappe.call({
-				doc: frm.doc,
-				method: 'post',
-				freeze: true,
-				callback: function() {
-					frm.reload_doc();
-				}
-			});
-		});
-	}
-});
diff --git a/erpnext/crm/doctype/social_media_post/social_media_post.json b/erpnext/crm/doctype/social_media_post/social_media_post.json
deleted file mode 100644
index 98e78f9..0000000
--- a/erpnext/crm/doctype/social_media_post/social_media_post.json
+++ /dev/null
@@ -1,208 +0,0 @@
-{
- "actions": [],
- "autoname": "format: CRM-SMP-{YYYY}-{MM}-{DD}-{###}",
- "creation": "2020-01-30 11:53:13.872864",
- "doctype": "DocType",
- "documentation": "https://docs.erpnext.com/docs/user/manual/en/CRM/social-media-post",
- "editable_grid": 1,
- "engine": "InnoDB",
- "field_order": [
-  "title",
-  "campaign_name",
-  "scheduled_time",
-  "post_status",
-  "column_break_6",
-  "twitter",
-  "linkedin",
-  "twitter_post_id",
-  "linkedin_post_id",
-  "content",
-  "text",
-  "column_break_14",
-  "tweet_preview",
-  "linkedin_section",
-  "linkedin_post",
-  "column_break_15",
-  "attachments_section",
-  "image",
-  "amended_from"
- ],
- "fields": [
-  {
-   "fieldname": "text",
-   "fieldtype": "Small Text",
-   "label": "Tweet",
-   "mandatory_depends_on": "eval:doc.twitter ==1"
-  },
-  {
-   "fieldname": "image",
-   "fieldtype": "Attach Image",
-   "label": "Image"
-  },
-  {
-   "default": "1",
-   "fieldname": "twitter",
-   "fieldtype": "Check",
-   "label": "Twitter"
-  },
-  {
-   "default": "1",
-   "fieldname": "linkedin",
-   "fieldtype": "Check",
-   "label": "LinkedIn"
-  },
-  {
-   "fieldname": "amended_from",
-   "fieldtype": "Link",
-   "label": "Amended From",
-   "no_copy": 1,
-   "options": "Social Media Post",
-   "print_hide": 1,
-   "read_only": 1
-  },
-  {
-   "depends_on": "eval:doc.twitter ==1",
-   "fieldname": "content",
-   "fieldtype": "Section Break",
-   "label": "Twitter"
-  },
-  {
-   "allow_on_submit": 1,
-   "fieldname": "post_status",
-   "fieldtype": "Select",
-   "label": "Post Status",
-   "no_copy": 1,
-   "options": "\nScheduled\nPosted\nCancelled\nDeleted\nError",
-   "read_only": 1
-  },
-  {
-   "allow_on_submit": 1,
-   "fieldname": "twitter_post_id",
-   "fieldtype": "Data",
-   "hidden": 1,
-   "label": "Twitter Post Id",
-   "no_copy": 1,
-   "read_only": 1
-  },
-  {
-   "allow_on_submit": 1,
-   "fieldname": "linkedin_post_id",
-   "fieldtype": "Data",
-   "hidden": 1,
-   "label": "LinkedIn Post Id",
-   "no_copy": 1,
-   "read_only": 1
-  },
-  {
-   "fieldname": "campaign_name",
-   "fieldtype": "Link",
-   "in_list_view": 1,
-   "label": "Campaign",
-   "options": "Campaign"
-  },
-  {
-   "fieldname": "column_break_6",
-   "fieldtype": "Column Break",
-   "label": "Share On"
-  },
-  {
-   "fieldname": "column_break_14",
-   "fieldtype": "Column Break"
-  },
-  {
-   "fieldname": "tweet_preview",
-   "fieldtype": "HTML"
-  },
-  {
-   "collapsible": 1,
-   "depends_on": "eval:doc.linkedin==1",
-   "fieldname": "linkedin_section",
-   "fieldtype": "Section Break",
-   "label": "LinkedIn"
-  },
-  {
-   "collapsible": 1,
-   "fieldname": "attachments_section",
-   "fieldtype": "Section Break",
-   "label": "Attachments"
-  },
-  {
-   "fieldname": "linkedin_post",
-   "fieldtype": "Text",
-   "label": "Post",
-   "mandatory_depends_on": "eval:doc.linkedin ==1"
-  },
-  {
-   "fieldname": "column_break_15",
-   "fieldtype": "Column Break"
-  },
-  {
-   "allow_on_submit": 1,
-   "fieldname": "scheduled_time",
-   "fieldtype": "Datetime",
-   "label": "Scheduled Time",
-   "read_only_depends_on": "eval:doc.post_status == \"Posted\""
-  },
-  {
-   "fieldname": "title",
-   "fieldtype": "Data",
-   "label": "Title",
-   "reqd": 1
-  }
- ],
- "is_submittable": 1,
- "links": [],
- "modified": "2021-04-14 14:24:59.821223",
- "modified_by": "Administrator",
- "module": "CRM",
- "name": "Social Media Post",
- "owner": "Administrator",
- "permissions": [
-  {
-   "cancel": 1,
-   "create": 1,
-   "delete": 1,
-   "email": 1,
-   "export": 1,
-   "print": 1,
-   "read": 1,
-   "report": 1,
-   "role": "System Manager",
-   "share": 1,
-   "submit": 1,
-   "write": 1
-  },
-  {
-   "cancel": 1,
-   "create": 1,
-   "delete": 1,
-   "email": 1,
-   "export": 1,
-   "print": 1,
-   "read": 1,
-   "report": 1,
-   "role": "Sales User",
-   "share": 1,
-   "submit": 1,
-   "write": 1
-  },
-  {
-   "cancel": 1,
-   "create": 1,
-   "delete": 1,
-   "email": 1,
-   "export": 1,
-   "print": 1,
-   "read": 1,
-   "report": 1,
-   "role": "Sales Manager",
-   "share": 1,
-   "submit": 1,
-   "write": 1
-  }
- ],
- "sort_field": "modified",
- "sort_order": "DESC",
- "title_field": "title",
- "track_changes": 1
-}
\ No newline at end of file
diff --git a/erpnext/crm/doctype/social_media_post/social_media_post.py b/erpnext/crm/doctype/social_media_post/social_media_post.py
deleted file mode 100644
index 3654d29..0000000
--- a/erpnext/crm/doctype/social_media_post/social_media_post.py
+++ /dev/null
@@ -1,89 +0,0 @@
-# Copyright (c) 2020, Frappe Technologies Pvt. Ltd. and contributors
-# For license information, please see license.txt
-
-
-import datetime
-
-import frappe
-from frappe import _
-from frappe.model.document import Document
-
-
-class SocialMediaPost(Document):
-	def validate(self):
-		if not self.twitter and not self.linkedin:
-			frappe.throw(_("Select atleast one Social Media Platform to Share on."))
-
-		if self.scheduled_time:
-			current_time = frappe.utils.now_datetime()
-			scheduled_time = frappe.utils.get_datetime(self.scheduled_time)
-			if scheduled_time < current_time:
-				frappe.throw(_("Scheduled Time must be a future time."))
-
-		if self.text and len(self.text) > 280:
-			frappe.throw(_("Tweet length must be less than 280."))
-
-	def submit(self):
-		if self.scheduled_time:
-			self.post_status = "Scheduled"
-		super(SocialMediaPost, self).submit()
-
-	def on_cancel(self):
-		self.db_set("post_status", "Cancelled")
-
-	@frappe.whitelist()
-	def delete_post(self):
-		if self.twitter and self.twitter_post_id:
-			twitter = frappe.get_doc("Twitter Settings")
-			twitter.delete_tweet(self.twitter_post_id)
-
-		if self.linkedin and self.linkedin_post_id:
-			linkedin = frappe.get_doc("LinkedIn Settings")
-			linkedin.delete_post(self.linkedin_post_id)
-
-		self.db_set("post_status", "Deleted")
-
-	@frappe.whitelist()
-	def get_post(self):
-		response = {}
-		if self.linkedin and self.linkedin_post_id:
-			linkedin = frappe.get_doc("LinkedIn Settings")
-			response["linkedin"] = linkedin.get_post(self.linkedin_post_id)
-		if self.twitter and self.twitter_post_id:
-			twitter = frappe.get_doc("Twitter Settings")
-			response["twitter"] = twitter.get_tweet(self.twitter_post_id)
-
-		return response
-
-	@frappe.whitelist()
-	def post(self):
-		try:
-			if self.twitter and not self.twitter_post_id:
-				twitter = frappe.get_doc("Twitter Settings")
-				twitter_post = twitter.post(self.text, self.image)
-				self.db_set("twitter_post_id", twitter_post.id)
-			if self.linkedin and not self.linkedin_post_id:
-				linkedin = frappe.get_doc("LinkedIn Settings")
-				linkedin_post = linkedin.post(self.linkedin_post, self.title, self.image)
-				self.db_set("linkedin_post_id", linkedin_post.headers["X-RestLi-Id"])
-			self.db_set("post_status", "Posted")
-
-		except Exception:
-			self.db_set("post_status", "Error")
-			self.log_error("Social posting failed")
-
-
-def process_scheduled_social_media_posts():
-	posts = frappe.get_all(
-		"Social Media Post",
-		filters={"post_status": "Scheduled", "docstatus": 1},
-		fields=["name", "scheduled_time"],
-	)
-	start = frappe.utils.now_datetime()
-	end = start + datetime.timedelta(minutes=10)
-	for post in posts:
-		if post.scheduled_time:
-			post_time = frappe.utils.get_datetime(post.scheduled_time)
-			if post_time > start and post_time <= end:
-				sm_post = frappe.get_doc("Social Media Post", post.name)
-				sm_post.post()
diff --git a/erpnext/crm/doctype/social_media_post/social_media_post_list.js b/erpnext/crm/doctype/social_media_post/social_media_post_list.js
deleted file mode 100644
index a8c8272..0000000
--- a/erpnext/crm/doctype/social_media_post/social_media_post_list.js
+++ /dev/null
@@ -1,11 +0,0 @@
-frappe.listview_settings['Social Media Post'] = {
-	add_fields: ["status", "post_status"],
-	get_indicator: function(doc) {
-		return [__(doc.post_status), {
-			"Scheduled": "orange",
-			"Posted": "green",
-			"Error": "red",
-			"Deleted": "red"
-		}[doc.post_status]];
-	}
-}
diff --git a/erpnext/crm/doctype/social_media_post/test_social_media_post.py b/erpnext/crm/doctype/social_media_post/test_social_media_post.py
deleted file mode 100644
index 7574476..0000000
--- a/erpnext/crm/doctype/social_media_post/test_social_media_post.py
+++ /dev/null
@@ -1,9 +0,0 @@
-# Copyright (c) 2020, Frappe Technologies Pvt. Ltd. and Contributors
-# See license.txt
-
-# import frappe
-import unittest
-
-
-class TestSocialMediaPost(unittest.TestCase):
-	pass
diff --git a/erpnext/crm/doctype/twitter_settings/__init__.py b/erpnext/crm/doctype/twitter_settings/__init__.py
deleted file mode 100644
index e69de29..0000000
--- a/erpnext/crm/doctype/twitter_settings/__init__.py
+++ /dev/null
diff --git a/erpnext/crm/doctype/twitter_settings/test_twitter_settings.py b/erpnext/crm/doctype/twitter_settings/test_twitter_settings.py
deleted file mode 100644
index 9dbce8f..0000000
--- a/erpnext/crm/doctype/twitter_settings/test_twitter_settings.py
+++ /dev/null
@@ -1,9 +0,0 @@
-# Copyright (c) 2020, Frappe Technologies Pvt. Ltd. and Contributors
-# See license.txt
-
-# import frappe
-import unittest
-
-
-class TestTwitterSettings(unittest.TestCase):
-	pass
diff --git a/erpnext/crm/doctype/twitter_settings/twitter_settings.js b/erpnext/crm/doctype/twitter_settings/twitter_settings.js
deleted file mode 100644
index c322092..0000000
--- a/erpnext/crm/doctype/twitter_settings/twitter_settings.js
+++ /dev/null
@@ -1,59 +0,0 @@
-// Copyright (c) 2020, Frappe Technologies Pvt. Ltd. and contributors
-// For license information, please see license.txt
-
-frappe.ui.form.on('Twitter Settings', {
-	onload: function(frm) {
-		if (frm.doc.session_status == 'Expired' && frm.doc.consumer_key && frm.doc.consumer_secret){
-			frappe.confirm(
-				__('Session not valid, Do you want to login?'),
-				function(){
-					frm.trigger("login");
-				},
-				function(){
-					window.close();
-				}
-			);
-		}
-		frm.dashboard.set_headline(__("For more information, {0}.", [`<a target='_blank' href='https://docs.erpnext.com/docs/user/manual/en/CRM/twitter-settings'>${__('click here')}</a>`]));
-	},
-	refresh: function(frm) {
-		let msg, color, flag=false;
-		if (frm.doc.session_status == "Active") {
-			msg = __("Session Active");
-			color = 'green';
-			flag = true;
-		}
-		else if(frm.doc.consumer_key && frm.doc.consumer_secret) {
-			msg = __("Session Not Active. Save doc to login.");
-			color = 'red';
-			flag = true;
-		}
-
-		if (flag) {
-			frm.dashboard.set_headline_alert(
-				`<div class="row">
-					<div class="col-xs-12">
-						<span class="indicator whitespace-nowrap ${color}"><span class="hidden-xs">${msg}</span></span>
-					</div>
-				</div>`
-			);
-		}
-	},
-	login: function(frm) {
-		if (frm.doc.consumer_key && frm.doc.consumer_secret){
-			frappe.dom.freeze();
-			frappe.call({
-				doc: frm.doc,
-				method: "get_authorize_url",
-				callback : function(r) {
-					window.location.href = r.message;
-				}
-			}).fail(function() {
-				frappe.dom.unfreeze();
-			});
-		}
-	},
-	after_save: function(frm) {
-		frm.trigger("login");
-	}
-});
diff --git a/erpnext/crm/doctype/twitter_settings/twitter_settings.json b/erpnext/crm/doctype/twitter_settings/twitter_settings.json
deleted file mode 100644
index 8d05877..0000000
--- a/erpnext/crm/doctype/twitter_settings/twitter_settings.json
+++ /dev/null
@@ -1,102 +0,0 @@
-{
- "actions": [],
- "creation": "2020-01-30 10:29:08.562108",
- "doctype": "DocType",
- "documentation": "https://docs.erpnext.com/docs/user/manual/en/CRM/twitter-settings",
- "editable_grid": 1,
- "engine": "InnoDB",
- "field_order": [
-  "account_name",
-  "profile_pic",
-  "oauth_details",
-  "consumer_key",
-  "column_break_5",
-  "consumer_secret",
-  "access_token",
-  "access_token_secret",
-  "session_status"
- ],
- "fields": [
-  {
-   "fieldname": "account_name",
-   "fieldtype": "Data",
-   "label": "Account Name",
-   "read_only": 1
-  },
-  {
-   "fieldname": "oauth_details",
-   "fieldtype": "Section Break",
-   "label": "OAuth Credentials"
-  },
-  {
-   "fieldname": "consumer_key",
-   "fieldtype": "Data",
-   "in_list_view": 1,
-   "label": "API Key",
-   "reqd": 1
-  },
-  {
-   "fieldname": "consumer_secret",
-   "fieldtype": "Password",
-   "in_list_view": 1,
-   "label": "API Secret Key",
-   "reqd": 1
-  },
-  {
-   "fieldname": "column_break_5",
-   "fieldtype": "Column Break"
-  },
-  {
-   "fieldname": "profile_pic",
-   "fieldtype": "Attach Image",
-   "hidden": 1,
-   "read_only": 1
-  },
-  {
-   "fieldname": "session_status",
-   "fieldtype": "Select",
-   "hidden": 1,
-   "label": "Session Status",
-   "options": "Expired\nActive",
-   "read_only": 1
-  },
-  {
-   "fieldname": "access_token",
-   "fieldtype": "Data",
-   "hidden": 1,
-   "label": "Access Token",
-   "read_only": 1
-  },
-  {
-   "fieldname": "access_token_secret",
-   "fieldtype": "Data",
-   "hidden": 1,
-   "label": "Access Token Secret",
-   "read_only": 1
-  }
- ],
- "image_field": "profile_pic",
- "issingle": 1,
- "links": [],
- "modified": "2021-02-18 15:18:07.900031",
- "modified_by": "Administrator",
- "module": "CRM",
- "name": "Twitter Settings",
- "owner": "Administrator",
- "permissions": [
-  {
-   "create": 1,
-   "delete": 1,
-   "email": 1,
-   "print": 1,
-   "read": 1,
-   "role": "System Manager",
-   "share": 1,
-   "write": 1
-  }
- ],
- "quick_entry": 1,
- "sort_field": "modified",
- "sort_order": "DESC",
- "track_changes": 1
-}
\ No newline at end of file
diff --git a/erpnext/crm/doctype/twitter_settings/twitter_settings.py b/erpnext/crm/doctype/twitter_settings/twitter_settings.py
deleted file mode 100644
index 442aa77..0000000
--- a/erpnext/crm/doctype/twitter_settings/twitter_settings.py
+++ /dev/null
@@ -1,141 +0,0 @@
-# Copyright (c) 2020, Frappe Technologies Pvt. Ltd. and contributors
-# For license information, please see license.txt
-
-
-import json
-
-import frappe
-import tweepy
-from frappe import _
-from frappe.model.document import Document
-from frappe.utils import get_url_to_form
-from frappe.utils.file_manager import get_file_path
-
-
-class TwitterSettings(Document):
-	@frappe.whitelist()
-	def get_authorize_url(self):
-		callback_url = (
-			"{0}/api/method/erpnext.crm.doctype.twitter_settings.twitter_settings.callback?".format(
-				frappe.utils.get_url()
-			)
-		)
-		auth = tweepy.OAuth1UserHandler(
-			self.consumer_key, self.get_password(fieldname="consumer_secret"), callback_url
-		)
-		try:
-			redirect_url = auth.get_authorization_url()
-			return redirect_url
-		except (tweepy.TweepyException, tweepy.HTTPException) as e:
-			frappe.msgprint(_("Error! Failed to get request token."))
-			frappe.throw(
-				_("Invalid {0} or {1}").format(frappe.bold("Consumer Key"), frappe.bold("Consumer Secret Key"))
-			)
-
-	def get_access_token(self, oauth_token, oauth_verifier):
-		auth = tweepy.OAuth1UserHandler(
-			self.consumer_key, self.get_password(fieldname="consumer_secret")
-		)
-		auth.request_token = {"oauth_token": oauth_token, "oauth_token_secret": oauth_verifier}
-
-		try:
-			auth.get_access_token(oauth_verifier)
-			self.access_token = auth.access_token
-			self.access_token_secret = auth.access_token_secret
-			api = self.get_api()
-			user = api.me()
-			profile_pic = (user._json["profile_image_url"]).replace("_normal", "")
-
-			frappe.db.set_value(
-				self.doctype,
-				self.name,
-				{
-					"access_token": auth.access_token,
-					"access_token_secret": auth.access_token_secret,
-					"account_name": user._json["screen_name"],
-					"profile_pic": profile_pic,
-					"session_status": "Active",
-				},
-			)
-
-			frappe.local.response["type"] = "redirect"
-			frappe.local.response["location"] = get_url_to_form("Twitter Settings", "Twitter Settings")
-		except (tweepy.TweepyException, tweepy.HTTPException) as e:
-			frappe.msgprint(_("Error! Failed to get access token."))
-			frappe.throw(_("Invalid Consumer Key or Consumer Secret Key"))
-
-	def get_api(self):
-		# authentication of consumer key and secret
-		auth = tweepy.OAuth1UserHandler(
-			self.consumer_key, self.get_password(fieldname="consumer_secret")
-		)
-		# authentication of access token and secret
-		auth.set_access_token(self.access_token, self.access_token_secret)
-
-		return tweepy.API(auth)
-
-	def post(self, text, media=None):
-		if not media:
-			return self.send_tweet(text)
-
-		if media:
-			media_id = self.upload_image(media)
-			return self.send_tweet(text, media_id)
-
-	def upload_image(self, media):
-		media = get_file_path(media)
-		api = self.get_api()
-		media = api.media_upload(media)
-
-		return media.media_id
-
-	def send_tweet(self, text, media_id=None):
-		api = self.get_api()
-		try:
-			if media_id:
-				response = api.update_status(status=text, media_ids=[media_id])
-			else:
-				response = api.update_status(status=text)
-
-			return response
-
-		except (tweepy.TweepyException, tweepy.HTTPException) as e:
-			self.api_error(e)
-
-	def delete_tweet(self, tweet_id):
-		api = self.get_api()
-		try:
-			api.destroy_status(tweet_id)
-		except (tweepy.TweepyException, tweepy.HTTPException) as e:
-			self.api_error(e)
-
-	def get_tweet(self, tweet_id):
-		api = self.get_api()
-		try:
-			response = api.get_status(tweet_id, trim_user=True, include_entities=True)
-		except (tweepy.TweepyException, tweepy.HTTPException) as e:
-			self.api_error(e)
-
-		return response._json
-
-	def api_error(self, e):
-		content = json.loads(e.response.content)
-		content = content["errors"][0]
-		if e.response.status_code == 401:
-			self.db_set("session_status", "Expired")
-			frappe.db.commit()
-		frappe.throw(
-			content["message"],
-			title=_("Twitter Error {0} : {1}").format(e.response.status_code, e.response.reason),
-		)
-
-
-@frappe.whitelist(allow_guest=True)
-def callback(oauth_token=None, oauth_verifier=None):
-	if oauth_token and oauth_verifier:
-		twitter_settings = frappe.get_single("Twitter Settings")
-		twitter_settings.get_access_token(oauth_token, oauth_verifier)
-		frappe.db.commit()
-	else:
-		frappe.local.response["type"] = "redirect"
-		frappe.local.response["location"] = get_url_to_form("Twitter Settings", "Twitter Settings")
diff --git a/erpnext/crm/report/lead_details/lead_details.py b/erpnext/crm/report/lead_details/lead_details.py
index 7b8c43b..98dfbec 100644
--- a/erpnext/crm/report/lead_details/lead_details.py
+++ b/erpnext/crm/report/lead_details/lead_details.py
@@ -4,6 +4,7 @@
 
 import frappe
 from frappe import _
+from frappe.query_builder.functions import Concat_ws, Date
 
 
 def execute(filters=None):
@@ -69,53 +70,41 @@
 
 
 def get_data(filters):
-	return frappe.db.sql(
-		"""
-		SELECT
-			`tabLead`.name,
-			`tabLead`.lead_name,
-			`tabLead`.status,
-			`tabLead`.lead_owner,
-			`tabLead`.territory,
-			`tabLead`.source,
-			`tabLead`.email_id,
-			`tabLead`.mobile_no,
-			`tabLead`.phone,
-			`tabLead`.owner,
-			`tabLead`.company,
-			concat_ws(', ',
-				trim(',' from `tabAddress`.address_line1),
-				trim(',' from tabAddress.address_line2)
-			) AS address,
-			`tabAddress`.state,
-			`tabAddress`.pincode,
-			`tabAddress`.country
-		FROM
-			`tabLead` left join `tabDynamic Link` on (
-			`tabLead`.name = `tabDynamic Link`.link_name and
-			`tabDynamic Link`.parenttype = 'Address')
-			left join `tabAddress` on (
-			`tabAddress`.name=`tabDynamic Link`.parent)
-		WHERE
-			company = %(company)s
-			AND DATE(`tabLead`.creation) BETWEEN %(from_date)s AND %(to_date)s
-			{conditions}
-		ORDER BY
-			`tabLead`.creation asc """.format(
-			conditions=get_conditions(filters)
-		),
-		filters,
-		as_dict=1,
+	lead = frappe.qb.DocType("Lead")
+	address = frappe.qb.DocType("Address")
+	dynamic_link = frappe.qb.DocType("Dynamic Link")
+
+	query = (
+		frappe.qb.from_(lead)
+		.left_join(dynamic_link)
+		.on((lead.name == dynamic_link.link_name) & (dynamic_link.parenttype == "Address"))
+		.left_join(address)
+		.on(address.name == dynamic_link.parent)
+		.select(
+			lead.name,
+			lead.lead_name,
+			lead.status,
+			lead.lead_owner,
+			lead.territory,
+			lead.source,
+			lead.email_id,
+			lead.mobile_no,
+			lead.phone,
+			lead.owner,
+			lead.company,
+			(Concat_ws(", ", address.address_line1, address.address_line2)).as_("address"),
+			address.state,
+			address.pincode,
+			address.country,
+		)
+		.where(lead.company == filters.company)
+		.where(Date(lead.creation).between(filters.from_date, filters.to_date))
 	)
 
-
-def get_conditions(filters):
-	conditions = []
-
 	if filters.get("territory"):
-		conditions.append(" and `tabLead`.territory=%(territory)s")
+		query = query.where(lead.territory == filters.get("territory"))
 
 	if filters.get("status"):
-		conditions.append(" and `tabLead`.status=%(status)s")
+		query = query.where(lead.status == filters.get("status"))
 
-	return " ".join(conditions) if conditions else ""
+	return query.run(as_dict=1)
diff --git a/erpnext/crm/workspace/crm/crm.json b/erpnext/crm/workspace/crm/crm.json
index b107df7..4b5b9af 100644
--- a/erpnext/crm/workspace/crm/crm.json
+++ b/erpnext/crm/workspace/crm/crm.json
@@ -125,131 +125,6 @@
   {
    "hidden": 0,
    "is_query_report": 0,
-   "label": "Campaign",
-   "link_count": 0,
-   "onboard": 0,
-   "type": "Card Break"
-  },
-  {
-   "dependencies": "",
-   "hidden": 0,
-   "is_query_report": 0,
-   "label": "Campaign",
-   "link_count": 0,
-   "link_to": "Campaign",
-   "link_type": "DocType",
-   "onboard": 0,
-   "type": "Link"
-  },
-  {
-   "dependencies": "",
-   "hidden": 0,
-   "is_query_report": 0,
-   "label": "Email Campaign",
-   "link_count": 0,
-   "link_to": "Email Campaign",
-   "link_type": "DocType",
-   "onboard": 0,
-   "type": "Link"
-  },
-  {
-   "dependencies": "",
-   "hidden": 0,
-   "is_query_report": 0,
-   "label": "Social Media Post",
-   "link_count": 0,
-   "link_to": "Social Media Post",
-   "link_type": "DocType",
-   "onboard": 0,
-   "type": "Link"
-  },
-  {
-   "dependencies": "",
-   "hidden": 0,
-   "is_query_report": 0,
-   "label": "SMS Center",
-   "link_count": 0,
-   "link_to": "SMS Center",
-   "link_type": "DocType",
-   "onboard": 0,
-   "type": "Link"
-  },
-  {
-   "dependencies": "",
-   "hidden": 0,
-   "is_query_report": 0,
-   "label": "SMS Log",
-   "link_count": 0,
-   "link_to": "SMS Log",
-   "link_type": "DocType",
-   "onboard": 0,
-   "type": "Link"
-  },
-  {
-   "dependencies": "",
-   "hidden": 0,
-   "is_query_report": 0,
-   "label": "Email Group",
-   "link_count": 0,
-   "link_to": "Email Group",
-   "link_type": "DocType",
-   "onboard": 0,
-   "type": "Link"
-  },
-  {
-   "hidden": 0,
-   "is_query_report": 0,
-   "label": "Settings",
-   "link_count": 0,
-   "onboard": 0,
-   "type": "Card Break"
-  },
-  {
-   "hidden": 0,
-   "is_query_report": 0,
-   "label": "CRM Settings",
-   "link_count": 0,
-   "link_to": "CRM Settings",
-   "link_type": "DocType",
-   "onboard": 0,
-   "type": "Link"
-  },
-  {
-   "dependencies": "",
-   "hidden": 0,
-   "is_query_report": 0,
-   "label": "SMS Settings",
-   "link_count": 0,
-   "link_to": "SMS Settings",
-   "link_type": "DocType",
-   "onboard": 0,
-   "type": "Link"
-  },
-  {
-   "dependencies": "",
-   "hidden": 0,
-   "is_query_report": 0,
-   "label": "Twitter Settings",
-   "link_count": 0,
-   "link_to": "Twitter Settings",
-   "link_type": "DocType",
-   "onboard": 0,
-   "type": "Link"
-  },
-  {
-   "dependencies": "",
-   "hidden": 0,
-   "is_query_report": 0,
-   "label": "LinkedIn Settings",
-   "link_count": 0,
-   "link_to": "LinkedIn Settings",
-   "link_type": "DocType",
-   "onboard": 0,
-   "type": "Link"
-  },
-  {
-   "hidden": 0,
-   "is_query_report": 0,
    "label": "Maintenance",
    "link_count": 0,
    "onboard": 0,
@@ -450,9 +325,101 @@
    "link_type": "DocType",
    "onboard": 0,
    "type": "Link"
+  },
+  {
+   "hidden": 0,
+   "is_query_report": 0,
+   "label": "Settings",
+   "link_count": 2,
+   "onboard": 0,
+   "type": "Card Break"
+  },
+  {
+   "hidden": 0,
+   "is_query_report": 0,
+   "label": "CRM Settings",
+   "link_count": 0,
+   "link_to": "CRM Settings",
+   "link_type": "DocType",
+   "onboard": 0,
+   "type": "Link"
+  },
+  {
+   "dependencies": "",
+   "hidden": 0,
+   "is_query_report": 0,
+   "label": "SMS Settings",
+   "link_count": 0,
+   "link_to": "SMS Settings",
+   "link_type": "DocType",
+   "onboard": 0,
+   "type": "Link"
+  },
+  {
+   "hidden": 0,
+   "is_query_report": 0,
+   "label": "Campaign",
+   "link_count": 5,
+   "onboard": 0,
+   "type": "Card Break"
+  },
+  {
+   "dependencies": "",
+   "hidden": 0,
+   "is_query_report": 0,
+   "label": "Campaign",
+   "link_count": 0,
+   "link_to": "Campaign",
+   "link_type": "DocType",
+   "onboard": 0,
+   "type": "Link"
+  },
+  {
+   "dependencies": "",
+   "hidden": 0,
+   "is_query_report": 0,
+   "label": "Email Campaign",
+   "link_count": 0,
+   "link_to": "Email Campaign",
+   "link_type": "DocType",
+   "onboard": 0,
+   "type": "Link"
+  },
+  {
+   "dependencies": "",
+   "hidden": 0,
+   "is_query_report": 0,
+   "label": "SMS Center",
+   "link_count": 0,
+   "link_to": "SMS Center",
+   "link_type": "DocType",
+   "onboard": 0,
+   "type": "Link"
+  },
+  {
+   "dependencies": "",
+   "hidden": 0,
+   "is_query_report": 0,
+   "label": "SMS Log",
+   "link_count": 0,
+   "link_to": "SMS Log",
+   "link_type": "DocType",
+   "onboard": 0,
+   "type": "Link"
+  },
+  {
+   "dependencies": "",
+   "hidden": 0,
+   "is_query_report": 0,
+   "label": "Email Group",
+   "link_count": 0,
+   "link_to": "Email Group",
+   "link_type": "DocType",
+   "onboard": 0,
+   "type": "Link"
   }
  ],
- "modified": "2023-05-26 16:49:04.298122",
+ "modified": "2023-09-14 12:11:03.968048",
  "modified_by": "Administrator",
  "module": "CRM",
  "name": "CRM",
@@ -463,7 +430,7 @@
  "quick_lists": [],
  "restrict_to_domain": "",
  "roles": [],
- "sequence_id": 10.0,
+ "sequence_id": 17.0,
  "shortcuts": [
   {
    "color": "Blue",
diff --git a/erpnext/e_commerce/doctype/website_item/test_website_item.py b/erpnext/e_commerce/doctype/website_item/test_website_item.py
index 43b2f67..2ba84c0 100644
--- a/erpnext/e_commerce/doctype/website_item/test_website_item.py
+++ b/erpnext/e_commerce/doctype/website_item/test_website_item.py
@@ -312,7 +312,7 @@
 		# check if stock details are fetched and item not in stock with warehouse set
 		data = get_product_info_for_website(item_code, skip_quotation_creation=True)
 		self.assertFalse(bool(data.product_info["in_stock"]))
-		self.assertEqual(data.product_info["stock_qty"][0][0], 0)
+		self.assertEqual(data.product_info["stock_qty"], 0)
 
 		# disable show stock availability
 		setup_e_commerce_settings({"show_stock_availability": 0})
@@ -355,7 +355,7 @@
 		# check if stock details are fetched and item is in stock with warehouse set
 		data = get_product_info_for_website(item_code, skip_quotation_creation=True)
 		self.assertTrue(bool(data.product_info["in_stock"]))
-		self.assertEqual(data.product_info["stock_qty"][0][0], 2)
+		self.assertEqual(data.product_info["stock_qty"], 2)
 
 		# unset warehouse
 		frappe.db.set_value("Website Item", {"item_code": item_code}, "website_warehouse", "")
@@ -364,7 +364,7 @@
 		# (even though it has stock in some warehouse)
 		data = get_product_info_for_website(item_code, skip_quotation_creation=True)
 		self.assertFalse(bool(data.product_info["in_stock"]))
-		self.assertFalse(bool(data.product_info["stock_qty"]))
+		self.assertFalse(data.product_info["stock_qty"])
 
 		# disable show stock availability
 		setup_e_commerce_settings({"show_stock_availability": 0})
diff --git a/erpnext/e_commerce/doctype/website_item/website_item.js b/erpnext/e_commerce/doctype/website_item/website_item.js
index 7b7193e..b6595cc 100644
--- a/erpnext/e_commerce/doctype/website_item/website_item.js
+++ b/erpnext/e_commerce/doctype/website_item/website_item.js
@@ -5,12 +5,6 @@
 	onload: (frm) => {
 		// should never check Private
 		frm.fields_dict["website_image"].df.is_private = 0;
-
-		frm.set_query("website_warehouse", () => {
-			return {
-				filters: {"is_group": 0}
-			};
-		});
 	},
 
 	refresh: (frm) => {
diff --git a/erpnext/e_commerce/doctype/website_item/website_item.json b/erpnext/e_commerce/doctype/website_item/website_item.json
index 6556eab..6f551a0 100644
--- a/erpnext/e_commerce/doctype/website_item/website_item.json
+++ b/erpnext/e_commerce/doctype/website_item/website_item.json
@@ -135,7 +135,7 @@
    "fieldtype": "Column Break"
   },
   {
-   "description": "Show Stock availability based on this warehouse.",
+   "description": "Show Stock availability based on this warehouse. If the parent warehouse is selected, then the system will display the consolidated available quantity of all child warehouses.",
    "fieldname": "website_warehouse",
    "fieldtype": "Link",
    "ignore_user_permissions": 1,
@@ -348,7 +348,7 @@
  "index_web_pages_for_search": 1,
  "links": [],
  "make_attachments_public": 1,
- "modified": "2022-09-30 04:01:52.090732",
+ "modified": "2023-09-12 14:19:22.822689",
  "modified_by": "Administrator",
  "module": "E-commerce",
  "name": "Website Item",
diff --git a/erpnext/e_commerce/product_data_engine/query.py b/erpnext/e_commerce/product_data_engine/query.py
index e6a595a..975f876 100644
--- a/erpnext/e_commerce/product_data_engine/query.py
+++ b/erpnext/e_commerce/product_data_engine/query.py
@@ -259,6 +259,10 @@
 			)
 
 	def get_stock_availability(self, item):
+		from erpnext.templates.pages.wishlist import (
+			get_stock_availability as get_stock_availability_from_template,
+		)
+
 		"""Modify item object and add stock details."""
 		item.in_stock = False
 		warehouse = item.get("website_warehouse")
@@ -274,11 +278,7 @@
 			else:
 				item.in_stock = True
 		elif warehouse:
-			# stock item and has warehouse
-			actual_qty = frappe.db.get_value(
-				"Bin", {"item_code": item.item_code, "warehouse": item.get("website_warehouse")}, "actual_qty"
-			)
-			item.in_stock = bool(flt(actual_qty))
+			item.in_stock = get_stock_availability_from_template(item.item_code, warehouse)
 
 	def get_cart_items(self):
 		customer = get_customer(silent=True)
diff --git a/erpnext/e_commerce/shopping_cart/cart.py b/erpnext/e_commerce/shopping_cart/cart.py
index 4c82393..7c7e169 100644
--- a/erpnext/e_commerce/shopping_cart/cart.py
+++ b/erpnext/e_commerce/shopping_cart/cart.py
@@ -111,8 +111,8 @@
 				item_stock = get_web_item_qty_in_stock(item.item_code, "website_warehouse")
 				if not cint(item_stock.in_stock):
 					throw(_("{0} Not in Stock").format(item.item_code))
-				if item.qty > item_stock.stock_qty[0][0]:
-					throw(_("Only {0} in Stock for item {1}").format(item_stock.stock_qty[0][0], item.item_code))
+				if item.qty > item_stock.stock_qty:
+					throw(_("Only {0} in Stock for item {1}").format(item_stock.stock_qty, item.item_code))
 
 	sales_order.flags.ignore_permissions = True
 	sales_order.insert()
@@ -150,6 +150,10 @@
 			empty_card = True
 
 	else:
+		warehouse = frappe.get_cached_value(
+			"Website Item", {"item_code": item_code}, "website_warehouse"
+		)
+
 		quotation_items = quotation.get("items", {"item_code": item_code})
 		if not quotation_items:
 			quotation.append(
@@ -159,11 +163,13 @@
 					"item_code": item_code,
 					"qty": qty,
 					"additional_notes": additional_notes,
+					"warehouse": warehouse,
 				},
 			)
 		else:
 			quotation_items[0].qty = qty
 			quotation_items[0].additional_notes = additional_notes
+			quotation_items[0].warehouse = warehouse
 
 	apply_cart_settings(quotation=quotation)
 
@@ -317,6 +323,10 @@
 				fields = fields[2:]
 
 		d.update(frappe.db.get_value("Website Item", {"item_code": item_code}, fields, as_dict=True))
+		website_warehouse = frappe.get_cached_value(
+			"Website Item", {"item_code": item_code}, "website_warehouse"
+		)
+		d.warehouse = website_warehouse
 
 	return doc
 
@@ -517,6 +527,8 @@
 			}
 		)
 
+		customer.append("portal_users", {"user": user})
+
 		if debtors_account:
 			customer.update({"accounts": [{"company": cart_settings.company, "account": debtors_account}]})
 
@@ -629,7 +641,6 @@
 	shipping_rules = get_shipping_rules(quotation)
 
 	if shipping_rules:
-		rule_label_map = frappe.db.get_values("Shipping Rule", shipping_rules, "label")
 		# we need this in sorted order as per the position of the rule in the settings page
 		return [[rule, rule] for rule in shipping_rules]
 
diff --git a/erpnext/e_commerce/shopping_cart/test_shopping_cart.py b/erpnext/e_commerce/shopping_cart/test_shopping_cart.py
index 951039d..8210f97 100644
--- a/erpnext/e_commerce/shopping_cart/test_shopping_cart.py
+++ b/erpnext/e_commerce/shopping_cart/test_shopping_cart.py
@@ -17,7 +17,6 @@
 	request_for_quotation,
 	update_cart,
 )
-from erpnext.tests.utils import create_test_contact_and_address
 
 
 class TestShoppingCart(unittest.TestCase):
@@ -28,7 +27,6 @@
 
 	def setUp(self):
 		frappe.set_user("Administrator")
-		create_test_contact_and_address()
 		self.enable_shopping_cart()
 		if not frappe.db.exists("Website Item", {"item_code": "_Test Item"}):
 			make_website_item(frappe.get_cached_doc("Item", "_Test Item"))
@@ -46,48 +44,57 @@
 		frappe.db.sql("delete from `tabTax Rule`")
 
 	def test_get_cart_new_user(self):
-		self.login_as_new_user()
-
+		self.login_as_customer(
+			"test_contact_two_customer@example.com", "_Test Contact 2 For _Test Customer"
+		)
+		create_address_and_contact(
+			address_title="_Test Address for Customer 2",
+			first_name="_Test Contact for Customer 2",
+			email="test_contact_two_customer@example.com",
+			customer="_Test Customer 2",
+		)
 		# test if lead is created and quotation with new lead is fetched
-		quotation = _get_cart_quotation()
+		customer = frappe.get_doc("Customer", "_Test Customer 2")
+		quotation = _get_cart_quotation(party=customer)
 		self.assertEqual(quotation.quotation_to, "Customer")
 		self.assertEqual(
 			quotation.contact_person,
-			frappe.db.get_value("Contact", dict(email_id="test_cart_user@example.com")),
+			frappe.db.get_value("Contact", dict(email_id="test_contact_two_customer@example.com")),
 		)
 		self.assertEqual(quotation.contact_email, frappe.session.user)
 
 		return quotation
 
-	def test_get_cart_customer(self):
-		def validate_quotation():
+	def test_get_cart_customer(self, customer="_Test Customer 2"):
+		def validate_quotation(customer_name):
 			# test if quotation with customer is fetched
-			quotation = _get_cart_quotation()
+			party = frappe.get_doc("Customer", customer_name)
+			quotation = _get_cart_quotation(party=party)
 			self.assertEqual(quotation.quotation_to, "Customer")
-			self.assertEqual(quotation.party_name, "_Test Customer")
+			self.assertEqual(quotation.party_name, customer_name)
 			self.assertEqual(quotation.contact_email, frappe.session.user)
 			return quotation
 
-		self.login_as_customer(
-			"test_contact_two_customer@example.com", "_Test Contact 2 For _Test Customer"
-		)
-		validate_quotation()
-
-		self.login_as_customer()
-		quotation = validate_quotation()
-
+		quotation = validate_quotation(customer)
 		return quotation
 
 	def test_add_to_cart(self):
-		self.login_as_customer()
-
+		self.login_as_customer(
+			"test_contact_two_customer@example.com", "_Test Contact 2 For _Test Customer"
+		)
+		create_address_and_contact(
+			address_title="_Test Address for Customer 2",
+			first_name="_Test Contact for Customer 2",
+			email="test_contact_two_customer@example.com",
+			customer="_Test Customer 2",
+		)
 		# clear existing quotations
 		self.clear_existing_quotations()
 
 		# add first item
 		update_cart("_Test Item", 1)
 
-		quotation = self.test_get_cart_customer()
+		quotation = self.test_get_cart_customer("_Test Customer 2")
 
 		self.assertEqual(quotation.get("items")[0].item_code, "_Test Item")
 		self.assertEqual(quotation.get("items")[0].qty, 1)
@@ -95,7 +102,7 @@
 
 		# add second item
 		update_cart("_Test Item 2", 1)
-		quotation = self.test_get_cart_customer()
+		quotation = self.test_get_cart_customer("_Test Customer 2")
 		self.assertEqual(quotation.get("items")[1].item_code, "_Test Item 2")
 		self.assertEqual(quotation.get("items")[1].qty, 1)
 		self.assertEqual(quotation.get("items")[1].amount, 20)
@@ -108,7 +115,7 @@
 
 		# update first item
 		update_cart("_Test Item", 5)
-		quotation = self.test_get_cart_customer()
+		quotation = self.test_get_cart_customer("_Test Customer 2")
 		self.assertEqual(quotation.get("items")[0].item_code, "_Test Item")
 		self.assertEqual(quotation.get("items")[0].qty, 5)
 		self.assertEqual(quotation.get("items")[0].amount, 50)
@@ -121,7 +128,7 @@
 
 		# remove first item
 		update_cart("_Test Item", 0)
-		quotation = self.test_get_cart_customer()
+		quotation = self.test_get_cart_customer("_Test Customer 2")
 
 		self.assertEqual(quotation.get("items")[0].item_code, "_Test Item 2")
 		self.assertEqual(quotation.get("items")[0].qty, 1)
@@ -132,7 +139,17 @@
 	@unittest.skip("Flaky in CI")
 	def test_tax_rule(self):
 		self.create_tax_rule()
-		self.login_as_customer()
+
+		self.login_as_customer(
+			"test_contact_two_customer@example.com", "_Test Contact 2 For _Test Customer"
+		)
+		create_address_and_contact(
+			address_title="_Test Address for Customer 2",
+			first_name="_Test Contact for Customer 2",
+			email="test_contact_two_customer@example.com",
+			customer="_Test Customer 2",
+		)
+
 		quotation = self.create_quotation()
 
 		from erpnext.accounts.party import set_taxes
@@ -320,7 +337,7 @@
 		if frappe.db.exists("User", email):
 			return
 
-		frappe.get_doc(
+		user = frappe.get_doc(
 			{
 				"doctype": "User",
 				"user_type": "Website User",
@@ -330,6 +347,40 @@
 			}
 		).insert(ignore_permissions=True)
 
+		user.add_roles("Customer")
+
+
+def create_address_and_contact(**kwargs):
+	if not frappe.db.get_value("Address", {"address_title": kwargs.get("address_title")}):
+		frappe.get_doc(
+			{
+				"doctype": "Address",
+				"address_title": kwargs.get("address_title"),
+				"address_type": kwargs.get("address_type") or "Office",
+				"address_line1": kwargs.get("address_line1") or "Station Road",
+				"city": kwargs.get("city") or "_Test City",
+				"state": kwargs.get("state") or "Test State",
+				"country": kwargs.get("country") or "India",
+				"links": [
+					{"link_doctype": "Customer", "link_name": kwargs.get("customer") or "_Test Customer"}
+				],
+			}
+		).insert()
+
+	if not frappe.db.get_value("Contact", {"first_name": kwargs.get("first_name")}):
+		contact = frappe.get_doc(
+			{
+				"doctype": "Contact",
+				"first_name": kwargs.get("first_name"),
+				"links": [
+					{"link_doctype": "Customer", "link_name": kwargs.get("customer") or "_Test Customer"}
+				],
+			}
+		)
+		contact.add_email(kwargs.get("email") or "test_contact_customer@example.com", is_primary=True)
+		contact.add_phone(kwargs.get("phone") or "+91 0000000000", is_primary_phone=True)
+		contact.insert()
+
 
 test_dependencies = [
 	"Sales Taxes and Charges Template",
diff --git a/erpnext/e_commerce/variant_selector/utils.py b/erpnext/e_commerce/variant_selector/utils.py
index 4466c45..88356f5 100644
--- a/erpnext/e_commerce/variant_selector/utils.py
+++ b/erpnext/e_commerce/variant_selector/utils.py
@@ -104,6 +104,8 @@
 
 @frappe.whitelist(allow_guest=True)
 def get_next_attribute_and_values(item_code, selected_attributes):
+	from erpnext.stock.doctype.warehouse.warehouse import get_child_warehouses
+
 	"""Find the count of Items that match the selected attributes.
 	Also, find the attribute values that are not applicable for further searching.
 	If less than equal to 10 items are found, return item_codes of those items.
@@ -168,7 +170,7 @@
 		product_info = None
 
 	product_id = ""
-	website_warehouse = ""
+	warehouse = ""
 	if exact_match or filtered_items:
 		if exact_match and len(exact_match) == 1:
 			product_id = exact_match[0]
@@ -176,16 +178,19 @@
 			product_id = list(filtered_items)[0]
 
 	if product_id:
-		website_warehouse = frappe.get_cached_value(
+		warehouse = frappe.get_cached_value(
 			"Website Item", {"item_code": product_id}, "website_warehouse"
 		)
 
 	available_qty = 0.0
-	if website_warehouse:
-		available_qty = flt(
-			frappe.db.get_value(
-				"Bin", {"item_code": product_id, "warehouse": website_warehouse}, "actual_qty"
-			)
+	if warehouse and frappe.get_cached_value("Warehouse", warehouse, "is_group") == 1:
+		warehouses = get_child_warehouses(warehouse)
+	else:
+		warehouses = [warehouse] if warehouse else []
+
+	for warehouse in warehouses:
+		available_qty += flt(
+			frappe.db.get_value("Bin", {"item_code": product_id, "warehouse": warehouse}, "actual_qty")
 		)
 
 	return {
diff --git a/erpnext/erpnext_integrations/connectors/__init__.py b/erpnext/erpnext_integrations/connectors/__init__.py
deleted file mode 100644
index e69de29..0000000
--- a/erpnext/erpnext_integrations/connectors/__init__.py
+++ /dev/null
diff --git a/erpnext/erpnext_integrations/connectors/woocommerce_connection.py b/erpnext/erpnext_integrations/connectors/woocommerce_connection.py
deleted file mode 100644
index 6d977e0..0000000
--- a/erpnext/erpnext_integrations/connectors/woocommerce_connection.py
+++ /dev/null
@@ -1,251 +0,0 @@
-import base64
-import hashlib
-import hmac
-import json
-
-import frappe
-from frappe import _
-from frappe.utils import cstr
-
-
-def verify_request():
-	woocommerce_settings = frappe.get_doc("Woocommerce Settings")
-	sig = base64.b64encode(
-		hmac.new(
-			woocommerce_settings.secret.encode("utf8"), frappe.request.data, hashlib.sha256
-		).digest()
-	)
-
-	if (
-		frappe.request.data
-		and not sig == frappe.get_request_header("X-Wc-Webhook-Signature", "").encode()
-	):
-		frappe.throw(_("Unverified Webhook Data"))
-	frappe.set_user(woocommerce_settings.creation_user)
-
-
-@frappe.whitelist(allow_guest=True)
-def order(*args, **kwargs):
-	try:
-		_order(*args, **kwargs)
-	except Exception:
-		error_message = (
-			frappe.get_traceback() + "\n\n Request Data: \n" + json.loads(frappe.request.data).__str__()
-		)
-		frappe.log_error("WooCommerce Error", error_message)
-		raise
-
-
-def _order(*args, **kwargs):
-	woocommerce_settings = frappe.get_doc("Woocommerce Settings")
-	if frappe.flags.woocomm_test_order_data:
-		order = frappe.flags.woocomm_test_order_data
-		event = "created"
-
-	elif frappe.request and frappe.request.data:
-		verify_request()
-		try:
-			order = json.loads(frappe.request.data)
-		except ValueError:
-			# woocommerce returns 'webhook_id=value' for the first request which is not JSON
-			order = frappe.request.data
-		event = frappe.get_request_header("X-Wc-Webhook-Event")
-
-	else:
-		return "success"
-
-	if event == "created":
-		sys_lang = frappe.get_single("System Settings").language or "en"
-		raw_billing_data = order.get("billing")
-		raw_shipping_data = order.get("shipping")
-		customer_name = raw_billing_data.get("first_name") + " " + raw_billing_data.get("last_name")
-		link_customer_and_address(raw_billing_data, raw_shipping_data, customer_name)
-		link_items(order.get("line_items"), woocommerce_settings, sys_lang)
-		create_sales_order(order, woocommerce_settings, customer_name, sys_lang)
-
-
-def link_customer_and_address(raw_billing_data, raw_shipping_data, customer_name):
-	customer_woo_com_email = raw_billing_data.get("email")
-	customer_exists = frappe.get_value("Customer", {"woocommerce_email": customer_woo_com_email})
-	if not customer_exists:
-		# Create Customer
-		customer = frappe.new_doc("Customer")
-	else:
-		# Edit Customer
-		customer = frappe.get_doc("Customer", {"woocommerce_email": customer_woo_com_email})
-		old_name = customer.customer_name
-
-	customer.customer_name = customer_name
-	customer.woocommerce_email = customer_woo_com_email
-	customer.flags.ignore_mandatory = True
-	customer.save()
-
-	if customer_exists:
-		frappe.rename_doc("Customer", old_name, customer_name)
-		for address_type in (
-			"Billing",
-			"Shipping",
-		):
-			try:
-				address = frappe.get_doc(
-					"Address", {"woocommerce_email": customer_woo_com_email, "address_type": address_type}
-				)
-				rename_address(address, customer)
-			except (
-				frappe.DoesNotExistError,
-				frappe.DuplicateEntryError,
-				frappe.ValidationError,
-			):
-				pass
-	else:
-		create_address(raw_billing_data, customer, "Billing")
-		create_address(raw_shipping_data, customer, "Shipping")
-		create_contact(raw_billing_data, customer)
-
-
-def create_contact(data, customer):
-	email = data.get("email", None)
-	phone = data.get("phone", None)
-
-	if not email and not phone:
-		return
-
-	contact = frappe.new_doc("Contact")
-	contact.first_name = data.get("first_name")
-	contact.last_name = data.get("last_name")
-	contact.is_primary_contact = 1
-	contact.is_billing_contact = 1
-
-	if phone:
-		contact.add_phone(phone, is_primary_mobile_no=1, is_primary_phone=1)
-
-	if email:
-		contact.add_email(email, is_primary=1)
-
-	contact.append("links", {"link_doctype": "Customer", "link_name": customer.name})
-
-	contact.flags.ignore_mandatory = True
-	contact.save()
-
-
-def create_address(raw_data, customer, address_type):
-	address = frappe.new_doc("Address")
-
-	address.address_line1 = raw_data.get("address_1", "Not Provided")
-	address.address_line2 = raw_data.get("address_2", "Not Provided")
-	address.city = raw_data.get("city", "Not Provided")
-	address.woocommerce_email = customer.woocommerce_email
-	address.address_type = address_type
-	address.country = frappe.get_value("Country", {"code": raw_data.get("country", "IN").lower()})
-	address.state = raw_data.get("state")
-	address.pincode = raw_data.get("postcode")
-	address.phone = raw_data.get("phone")
-	address.email_id = customer.woocommerce_email
-	address.append("links", {"link_doctype": "Customer", "link_name": customer.name})
-
-	address.flags.ignore_mandatory = True
-	address.save()
-
-
-def rename_address(address, customer):
-	old_address_title = address.name
-	new_address_title = customer.name + "-" + address.address_type
-	address.address_title = customer.customer_name
-	address.save()
-
-	frappe.rename_doc("Address", old_address_title, new_address_title)
-
-
-def link_items(items_list, woocommerce_settings, sys_lang):
-	for item_data in items_list:
-		item_woo_com_id = cstr(item_data.get("product_id"))
-
-		if not frappe.db.get_value("Item", {"woocommerce_id": item_woo_com_id}, "name"):
-			# Create Item
-			item = frappe.new_doc("Item")
-			item.item_code = _("woocommerce - {0}", sys_lang).format(item_woo_com_id)
-			item.stock_uom = woocommerce_settings.uom or _("Nos", sys_lang)
-			item.item_group = _("WooCommerce Products", sys_lang)
-
-			item.item_name = item_data.get("name")
-			item.woocommerce_id = item_woo_com_id
-			item.flags.ignore_mandatory = True
-			item.save()
-
-
-def create_sales_order(order, woocommerce_settings, customer_name, sys_lang):
-	new_sales_order = frappe.new_doc("Sales Order")
-	new_sales_order.customer = customer_name
-
-	new_sales_order.po_no = new_sales_order.woocommerce_id = order.get("id")
-	new_sales_order.naming_series = woocommerce_settings.sales_order_series or "SO-WOO-"
-
-	created_date = order.get("date_created").split("T")
-	new_sales_order.transaction_date = created_date[0]
-	delivery_after = woocommerce_settings.delivery_after_days or 7
-	new_sales_order.delivery_date = frappe.utils.add_days(created_date[0], delivery_after)
-
-	new_sales_order.company = woocommerce_settings.company
-
-	set_items_in_sales_order(new_sales_order, woocommerce_settings, order, sys_lang)
-	new_sales_order.flags.ignore_mandatory = True
-	new_sales_order.insert()
-	new_sales_order.submit()
-
-	frappe.db.commit()
-
-
-def set_items_in_sales_order(new_sales_order, woocommerce_settings, order, sys_lang):
-	company_abbr = frappe.db.get_value("Company", woocommerce_settings.company, "abbr")
-
-	default_warehouse = _("Stores - {0}", sys_lang).format(company_abbr)
-	if not frappe.db.exists("Warehouse", default_warehouse) and not woocommerce_settings.warehouse:
-		frappe.throw(_("Please set Warehouse in Woocommerce Settings"))
-
-	for item in order.get("line_items"):
-		woocomm_item_id = item.get("product_id")
-		found_item = frappe.get_doc("Item", {"woocommerce_id": cstr(woocomm_item_id)})
-
-		ordered_items_tax = item.get("total_tax")
-
-		new_sales_order.append(
-			"items",
-			{
-				"item_code": found_item.name,
-				"item_name": found_item.item_name,
-				"description": found_item.item_name,
-				"delivery_date": new_sales_order.delivery_date,
-				"uom": woocommerce_settings.uom or _("Nos", sys_lang),
-				"qty": item.get("quantity"),
-				"rate": item.get("price"),
-				"warehouse": woocommerce_settings.warehouse or default_warehouse,
-			},
-		)
-
-		add_tax_details(
-			new_sales_order, ordered_items_tax, "Ordered Item tax", woocommerce_settings.tax_account
-		)
-
-	# shipping_details = order.get("shipping_lines") # used for detailed order
-
-	add_tax_details(
-		new_sales_order, order.get("shipping_tax"), "Shipping Tax", woocommerce_settings.f_n_f_account
-	)
-	add_tax_details(
-		new_sales_order,
-		order.get("shipping_total"),
-		"Shipping Total",
-		woocommerce_settings.f_n_f_account,
-	)
-
-
-def add_tax_details(sales_order, price, desc, tax_account_head):
-	sales_order.append(
-		"taxes",
-		{
-			"charge_type": "Actual",
-			"account_head": tax_account_head,
-			"tax_amount": price,
-			"description": desc,
-		},
-	)
diff --git a/erpnext/erpnext_integrations/doctype/gocardless_mandate/__init__.py b/erpnext/erpnext_integrations/doctype/gocardless_mandate/__init__.py
deleted file mode 100644
index e69de29..0000000
--- a/erpnext/erpnext_integrations/doctype/gocardless_mandate/__init__.py
+++ /dev/null
diff --git a/erpnext/erpnext_integrations/doctype/gocardless_mandate/gocardless_mandate.js b/erpnext/erpnext_integrations/doctype/gocardless_mandate/gocardless_mandate.js
deleted file mode 100644
index 37f9f7b..0000000
--- a/erpnext/erpnext_integrations/doctype/gocardless_mandate/gocardless_mandate.js
+++ /dev/null
@@ -1,5 +0,0 @@
-// Copyright (c) 2018, Frappe Technologies and contributors
-// For license information, please see license.txt
-
-frappe.ui.form.on('GoCardless Mandate', {
-});
diff --git a/erpnext/erpnext_integrations/doctype/gocardless_mandate/gocardless_mandate.json b/erpnext/erpnext_integrations/doctype/gocardless_mandate/gocardless_mandate.json
deleted file mode 100644
index edf652c..0000000
--- a/erpnext/erpnext_integrations/doctype/gocardless_mandate/gocardless_mandate.json
+++ /dev/null
@@ -1,184 +0,0 @@
-{
- "allow_copy": 0,
- "allow_guest_to_view": 0,
- "allow_import": 0,
- "allow_rename": 0,
- "autoname": "field:mandate",
- "beta": 0,
- "creation": "2018-02-08 11:33:15.721919",
- "custom": 0,
- "docstatus": 0,
- "doctype": "DocType",
- "document_type": "",
- "editable_grid": 1,
- "engine": "InnoDB",
- "fields": [
-  {
-   "allow_bulk_edit": 0,
-   "allow_on_submit": 0,
-   "bold": 0,
-   "collapsible": 0,
-   "columns": 0,
-   "fieldname": "disabled",
-   "fieldtype": "Check",
-   "hidden": 0,
-   "ignore_user_permissions": 0,
-   "ignore_xss_filter": 0,
-   "in_filter": 0,
-   "in_global_search": 0,
-   "in_list_view": 0,
-   "in_standard_filter": 0,
-   "label": "Disabled",
-   "length": 0,
-   "no_copy": 0,
-   "permlevel": 0,
-   "precision": "",
-   "print_hide": 0,
-   "print_hide_if_no_value": 0,
-   "read_only": 0,
-   "remember_last_selected_value": 0,
-   "report_hide": 0,
-   "reqd": 0,
-   "search_index": 0,
-   "set_only_once": 0,
-   "unique": 0
-  },
-  {
-   "allow_bulk_edit": 0,
-   "allow_on_submit": 0,
-   "bold": 0,
-   "collapsible": 0,
-   "columns": 0,
-   "fieldname": "customer",
-   "fieldtype": "Link",
-   "hidden": 0,
-   "ignore_user_permissions": 0,
-   "ignore_xss_filter": 0,
-   "in_filter": 0,
-   "in_global_search": 0,
-   "in_list_view": 1,
-   "in_standard_filter": 0,
-   "label": "Customer",
-   "length": 0,
-   "no_copy": 0,
-   "options": "Customer",
-   "permlevel": 0,
-   "precision": "",
-   "print_hide": 0,
-   "print_hide_if_no_value": 0,
-   "read_only": 0,
-   "remember_last_selected_value": 0,
-   "report_hide": 0,
-   "reqd": 1,
-   "search_index": 0,
-   "set_only_once": 0,
-   "unique": 0
-  },
-  {
-   "allow_bulk_edit": 0,
-   "allow_on_submit": 0,
-   "bold": 0,
-   "collapsible": 0,
-   "columns": 0,
-   "fieldname": "mandate",
-   "fieldtype": "Data",
-   "hidden": 0,
-   "ignore_user_permissions": 0,
-   "ignore_xss_filter": 0,
-   "in_filter": 0,
-   "in_global_search": 0,
-   "in_list_view": 0,
-   "in_standard_filter": 0,
-   "label": "Mandate",
-   "length": 0,
-   "no_copy": 0,
-   "permlevel": 0,
-   "precision": "",
-   "print_hide": 0,
-   "print_hide_if_no_value": 0,
-   "read_only": 1,
-   "remember_last_selected_value": 0,
-   "report_hide": 0,
-   "reqd": 1,
-   "search_index": 0,
-   "set_only_once": 0,
-   "unique": 0
-  },
-  {
-   "allow_bulk_edit": 0,
-   "allow_on_submit": 0,
-   "bold": 0,
-   "collapsible": 0,
-   "columns": 0,
-   "fieldname": "gocardless_customer",
-   "fieldtype": "Data",
-   "hidden": 0,
-   "ignore_user_permissions": 0,
-   "ignore_xss_filter": 0,
-   "in_filter": 0,
-   "in_global_search": 0,
-   "in_list_view": 1,
-   "in_standard_filter": 0,
-   "label": "GoCardless Customer",
-   "length": 0,
-   "no_copy": 0,
-   "permlevel": 0,
-   "precision": "",
-   "print_hide": 0,
-   "print_hide_if_no_value": 0,
-   "read_only": 1,
-   "remember_last_selected_value": 0,
-   "report_hide": 0,
-   "reqd": 1,
-   "search_index": 0,
-   "set_only_once": 0,
-   "unique": 0
-  }
- ],
- "has_web_view": 0,
- "hide_heading": 0,
- "hide_toolbar": 0,
- "idx": 0,
- "image_view": 0,
- "in_create": 0,
- "is_submittable": 0,
- "issingle": 0,
- "istable": 0,
- "max_attachments": 0,
- "modified": "2018-02-11 12:28:03.183095",
- "modified_by": "Administrator",
- "module": "ERPNext Integrations",
- "name": "GoCardless Mandate",
- "name_case": "",
- "owner": "Administrator",
- "permissions": [
-  {
-   "amend": 0,
-   "apply_user_permissions": 0,
-   "cancel": 0,
-   "create": 1,
-   "delete": 1,
-   "email": 1,
-   "export": 1,
-   "if_owner": 0,
-   "import": 0,
-   "permlevel": 0,
-   "print": 1,
-   "read": 1,
-   "report": 1,
-   "role": "System Manager",
-   "set_user_permissions": 0,
-   "share": 1,
-   "submit": 0,
-   "write": 1
-  }
- ],
- "quick_entry": 1,
- "read_only": 0,
- "read_only_onload": 0,
- "show_name_in_global_search": 0,
- "sort_field": "modified",
- "sort_order": "DESC",
- "track_changes": 1,
- "track_seen": 0
-}
diff --git a/erpnext/erpnext_integrations/doctype/gocardless_mandate/gocardless_mandate.py b/erpnext/erpnext_integrations/doctype/gocardless_mandate/gocardless_mandate.py
deleted file mode 100644
index bceb3ca..0000000
--- a/erpnext/erpnext_integrations/doctype/gocardless_mandate/gocardless_mandate.py
+++ /dev/null
@@ -1,9 +0,0 @@
-# Copyright (c) 2018, Frappe Technologies and contributors
-# For license information, please see license.txt
-
-
-from frappe.model.document import Document
-
-
-class GoCardlessMandate(Document):
-	pass
diff --git a/erpnext/erpnext_integrations/doctype/gocardless_mandate/test_gocardless_mandate.py b/erpnext/erpnext_integrations/doctype/gocardless_mandate/test_gocardless_mandate.py
deleted file mode 100644
index 0c1952a..0000000
--- a/erpnext/erpnext_integrations/doctype/gocardless_mandate/test_gocardless_mandate.py
+++ /dev/null
@@ -1,8 +0,0 @@
-# Copyright (c) 2018, Frappe Technologies and Contributors
-# See license.txt
-
-import unittest
-
-
-class TestGoCardlessMandate(unittest.TestCase):
-	pass
diff --git a/erpnext/erpnext_integrations/doctype/gocardless_settings/__init__.py b/erpnext/erpnext_integrations/doctype/gocardless_settings/__init__.py
deleted file mode 100644
index 65be599..0000000
--- a/erpnext/erpnext_integrations/doctype/gocardless_settings/__init__.py
+++ /dev/null
@@ -1,89 +0,0 @@
-# Copyright (c) 2018, Frappe Technologies and contributors
-# For license information, please see license.txt
-
-
-import hashlib
-import hmac
-import json
-
-import frappe
-
-
-@frappe.whitelist(allow_guest=True)
-def webhooks():
-	r = frappe.request
-	if not r:
-		return
-
-	if not authenticate_signature(r):
-		raise frappe.AuthenticationError
-
-	gocardless_events = json.loads(r.get_data()) or []
-	for event in gocardless_events["events"]:
-		set_status(event)
-
-	return 200
-
-
-def set_status(event):
-	resource_type = event.get("resource_type", {})
-
-	if resource_type == "mandates":
-		set_mandate_status(event)
-
-
-def set_mandate_status(event):
-	mandates = []
-	if isinstance(event["links"], (list,)):
-		for link in event["links"]:
-			mandates.append(link["mandate"])
-	else:
-		mandates.append(event["links"]["mandate"])
-
-	if (
-		event["action"] == "pending_customer_approval"
-		or event["action"] == "pending_submission"
-		or event["action"] == "submitted"
-		or event["action"] == "active"
-	):
-		disabled = 0
-	else:
-		disabled = 1
-
-	for mandate in mandates:
-		frappe.db.set_value("GoCardless Mandate", mandate, "disabled", disabled)
-
-
-def authenticate_signature(r):
-	"""Returns True if the received signature matches the generated signature"""
-	received_signature = frappe.get_request_header("Webhook-Signature")
-
-	if not received_signature:
-		return False
-
-	for key in get_webhook_keys():
-		computed_signature = hmac.new(key.encode("utf-8"), r.get_data(), hashlib.sha256).hexdigest()
-		if hmac.compare_digest(str(received_signature), computed_signature):
-			return True
-
-	return False
-
-
-def get_webhook_keys():
-	def _get_webhook_keys():
-		webhook_keys = [
-			d.webhooks_secret
-			for d in frappe.get_all(
-				"GoCardless Settings",
-				fields=["webhooks_secret"],
-			)
-			if d.webhooks_secret
-		]
-
-		return webhook_keys
-
-	return frappe.cache().get_value("gocardless_webhooks_secret", _get_webhook_keys)
-
-
-def clear_cache():
-	frappe.cache().delete_value("gocardless_webhooks_secret")
diff --git a/erpnext/erpnext_integrations/doctype/gocardless_settings/gocardless_settings.js b/erpnext/erpnext_integrations/doctype/gocardless_settings/gocardless_settings.js
deleted file mode 100644
index 2411297..0000000
--- a/erpnext/erpnext_integrations/doctype/gocardless_settings/gocardless_settings.js
+++ /dev/null
@@ -1,8 +0,0 @@
-// Copyright (c) 2018, Frappe Technologies and contributors
-// For license information, please see license.txt
-
-frappe.ui.form.on('GoCardless Settings', {
-	refresh: function(frm) {
-		erpnext.utils.check_payments_app();
-	}
-});
diff --git a/erpnext/erpnext_integrations/doctype/gocardless_settings/gocardless_settings.json b/erpnext/erpnext_integrations/doctype/gocardless_settings/gocardless_settings.json
deleted file mode 100644
index cca3653..0000000
--- a/erpnext/erpnext_integrations/doctype/gocardless_settings/gocardless_settings.json
+++ /dev/null
@@ -1,211 +0,0 @@
-{
- "allow_copy": 0,
- "allow_guest_to_view": 0,
- "allow_import": 0,
- "allow_rename": 0,
- "autoname": "field:gateway_name",
- "beta": 0,
- "creation": "2018-02-06 16:11:10.028249",
- "custom": 0,
- "docstatus": 0,
- "doctype": "DocType",
- "document_type": "",
- "editable_grid": 1,
- "engine": "InnoDB",
- "fields": [
-  {
-   "allow_bulk_edit": 0,
-   "allow_on_submit": 0,
-   "bold": 0,
-   "collapsible": 0,
-   "columns": 0,
-   "fieldname": "gateway_name",
-   "fieldtype": "Data",
-   "hidden": 0,
-   "ignore_user_permissions": 0,
-   "ignore_xss_filter": 0,
-   "in_filter": 0,
-   "in_global_search": 0,
-   "in_list_view": 1,
-   "in_standard_filter": 0,
-   "label": "Payment Gateway Name",
-   "length": 0,
-   "no_copy": 0,
-   "permlevel": 0,
-   "precision": "",
-   "print_hide": 0,
-   "print_hide_if_no_value": 0,
-   "read_only": 0,
-   "remember_last_selected_value": 0,
-   "report_hide": 0,
-   "reqd": 1,
-   "search_index": 0,
-   "set_only_once": 0,
-   "unique": 0
-  },
-  {
-   "allow_bulk_edit": 0,
-   "allow_on_submit": 0,
-   "bold": 0,
-   "collapsible": 0,
-   "columns": 0,
-   "fieldname": "section_break_2",
-   "fieldtype": "Section Break",
-   "hidden": 0,
-   "ignore_user_permissions": 0,
-   "ignore_xss_filter": 0,
-   "in_filter": 0,
-   "in_global_search": 0,
-   "in_list_view": 0,
-   "in_standard_filter": 0,
-   "length": 0,
-   "no_copy": 0,
-   "permlevel": 0,
-   "precision": "",
-   "print_hide": 0,
-   "print_hide_if_no_value": 0,
-   "read_only": 0,
-   "remember_last_selected_value": 0,
-   "report_hide": 0,
-   "reqd": 0,
-   "search_index": 0,
-   "set_only_once": 0,
-   "unique": 0
-  },
-  {
-   "allow_bulk_edit": 0,
-   "allow_on_submit": 0,
-   "bold": 0,
-   "collapsible": 0,
-   "columns": 0,
-   "fieldname": "access_token",
-   "fieldtype": "Data",
-   "hidden": 0,
-   "ignore_user_permissions": 0,
-   "ignore_xss_filter": 0,
-   "in_filter": 0,
-   "in_global_search": 0,
-   "in_list_view": 1,
-   "in_standard_filter": 0,
-   "label": "Access Token",
-   "length": 0,
-   "no_copy": 0,
-   "permlevel": 0,
-   "precision": "",
-   "print_hide": 0,
-   "print_hide_if_no_value": 0,
-   "read_only": 0,
-   "remember_last_selected_value": 0,
-   "report_hide": 0,
-   "reqd": 1,
-   "search_index": 0,
-   "set_only_once": 0,
-   "unique": 0
-  },
-  {
-   "allow_bulk_edit": 0,
-   "allow_on_submit": 0,
-   "bold": 0,
-   "collapsible": 0,
-   "columns": 0,
-   "fieldname": "webhooks_secret",
-   "fieldtype": "Data",
-   "hidden": 0,
-   "ignore_user_permissions": 0,
-   "ignore_xss_filter": 0,
-   "in_filter": 0,
-   "in_global_search": 0,
-   "in_list_view": 0,
-   "in_standard_filter": 0,
-   "label": "Webhooks Secret",
-   "length": 0,
-   "no_copy": 0,
-   "permlevel": 0,
-   "precision": "",
-   "print_hide": 0,
-   "print_hide_if_no_value": 0,
-   "read_only": 0,
-   "remember_last_selected_value": 0,
-   "report_hide": 0,
-   "reqd": 0,
-   "search_index": 0,
-   "set_only_once": 0,
-   "unique": 0
-  },
-  {
-   "allow_bulk_edit": 0,
-   "allow_on_submit": 0,
-   "bold": 0,
-   "collapsible": 0,
-   "columns": 0,
-   "fieldname": "use_sandbox",
-   "fieldtype": "Check",
-   "hidden": 0,
-   "ignore_user_permissions": 0,
-   "ignore_xss_filter": 0,
-   "in_filter": 0,
-   "in_global_search": 0,
-   "in_list_view": 0,
-   "in_standard_filter": 0,
-   "label": "Use Sandbox",
-   "length": 0,
-   "no_copy": 0,
-   "permlevel": 0,
-   "precision": "",
-   "print_hide": 0,
-   "print_hide_if_no_value": 0,
-   "read_only": 0,
-   "remember_last_selected_value": 0,
-   "report_hide": 0,
-   "reqd": 0,
-   "search_index": 0,
-   "set_only_once": 0,
-   "unique": 0
-  }
- ],
- "has_web_view": 0,
- "hide_heading": 0,
- "hide_toolbar": 0,
- "idx": 0,
- "image_view": 0,
- "in_create": 0,
- "is_submittable": 0,
- "issingle": 0,
- "istable": 0,
- "max_attachments": 0,
- "modified": "2022-02-12 14:18:47.209114",
- "modified_by": "Administrator",
- "module": "ERPNext Integrations",
- "name": "GoCardless Settings",
- "name_case": "",
- "owner": "Administrator",
- "permissions": [
-  {
-   "amend": 0,
-   "apply_user_permissions": 0,
-   "cancel": 0,
-   "create": 1,
-   "delete": 1,
-   "email": 1,
-   "export": 1,
-   "if_owner": 0,
-   "import": 0,
-   "permlevel": 0,
-   "print": 1,
-   "read": 1,
-   "report": 1,
-   "role": "System Manager",
-   "set_user_permissions": 0,
-   "share": 1,
-   "submit": 0,
-   "write": 1
-  }
- ],
- "read_only": 0,
- "read_only_onload": 0,
- "show_name_in_global_search": 0,
- "sort_field": "modified",
- "sort_order": "DESC",
- "track_changes": 1,
- "track_seen": 0
-}
diff --git a/erpnext/erpnext_integrations/doctype/gocardless_settings/gocardless_settings.py b/erpnext/erpnext_integrations/doctype/gocardless_settings/gocardless_settings.py
deleted file mode 100644
index 4a29a6a..0000000
--- a/erpnext/erpnext_integrations/doctype/gocardless_settings/gocardless_settings.py
+++ /dev/null
@@ -1,220 +0,0 @@
-# Copyright (c) 2018, Frappe Technologies and contributors
-# For license information, please see license.txt
-
-
-from urllib.parse import urlencode
-
-import frappe
-import gocardless_pro
-from frappe import _
-from frappe.integrations.utils import create_request_log
-from frappe.model.document import Document
-from frappe.utils import call_hook_method, cint, flt, get_url
-
-from erpnext.utilities import payment_app_import_guard
-
-
-class GoCardlessSettings(Document):
-	supported_currencies = ["EUR", "DKK", "GBP", "SEK", "AUD", "NZD", "CAD", "USD"]
-
-	def validate(self):
-		self.initialize_client()
-
-	def initialize_client(self):
-		self.environment = self.get_environment()
-		try:
-			self.client = gocardless_pro.Client(
-				access_token=self.access_token, environment=self.environment
-			)
-			return self.client
-		except Exception as e:
-			frappe.throw(e)
-
-	def on_update(self):
-		with payment_app_import_guard():
-			from payments.utils import create_payment_gateway
-
-		create_payment_gateway(
-			"GoCardless-" + self.gateway_name, settings="GoCardLess Settings", controller=self.gateway_name
-		)
-		call_hook_method("payment_gateway_enabled", gateway="GoCardless-" + self.gateway_name)
-
-	def on_payment_request_submission(self, data):
-		if data.reference_doctype != "Fees":
-			customer_data = frappe.db.get_value(
-				data.reference_doctype, data.reference_name, ["company", "customer_name"], as_dict=1
-			)
-
-		data = {
-			"amount": flt(data.grand_total, data.precision("grand_total")),
-			"title": customer_data.company.encode("utf-8"),
-			"description": data.subject.encode("utf-8"),
-			"reference_doctype": data.doctype,
-			"reference_docname": data.name,
-			"payer_email": data.email_to or frappe.session.user,
-			"payer_name": customer_data.customer_name,
-			"order_id": data.name,
-			"currency": data.currency,
-		}
-
-		valid_mandate = self.check_mandate_validity(data)
-		if valid_mandate is not None:
-			data.update(valid_mandate)
-
-			self.create_payment_request(data)
-			return False
-		else:
-			return True
-
-	def check_mandate_validity(self, data):
-
-		if frappe.db.exists("GoCardless Mandate", dict(customer=data.get("payer_name"), disabled=0)):
-			registered_mandate = frappe.db.get_value(
-				"GoCardless Mandate", dict(customer=data.get("payer_name"), disabled=0), "mandate"
-			)
-			self.initialize_client()
-			mandate = self.client.mandates.get(registered_mandate)
-
-			if (
-				mandate.status == "pending_customer_approval"
-				or mandate.status == "pending_submission"
-				or mandate.status == "submitted"
-				or mandate.status == "active"
-			):
-				return {"mandate": registered_mandate}
-			else:
-				return None
-		else:
-			return None
-
-	def get_environment(self):
-		if self.use_sandbox:
-			return "sandbox"
-		else:
-			return "live"
-
-	def validate_transaction_currency(self, currency):
-		if currency not in self.supported_currencies:
-			frappe.throw(
-				_(
-					"Please select another payment method. Go Cardless does not support transactions in currency '{0}'"
-				).format(currency)
-			)
-
-	def get_payment_url(self, **kwargs):
-		return get_url("./integrations/gocardless_checkout?{0}".format(urlencode(kwargs)))
-
-	def create_payment_request(self, data):
-		self.data = frappe._dict(data)
-
-		try:
-			self.integration_request = create_request_log(self.data, "Host", "GoCardless")
-			return self.create_charge_on_gocardless()
-
-		except Exception:
-			frappe.log_error("Gocardless payment reqeust failed")
-			return {
-				"redirect_to": frappe.redirect_to_message(
-					_("Server Error"),
-					_(
-						"There seems to be an issue with the server's GoCardless configuration. Don't worry, in case of failure, the amount will get refunded to your account."
-					),
-				),
-				"status": 401,
-			}
-
-	def create_charge_on_gocardless(self):
-		redirect_to = self.data.get("redirect_to") or None
-		redirect_message = self.data.get("redirect_message") or None
-
-		reference_doc = frappe.get_doc(
-			self.data.get("reference_doctype"), self.data.get("reference_docname")
-		)
-		self.initialize_client()
-
-		try:
-			payment = self.client.payments.create(
-				params={
-					"amount": cint(reference_doc.grand_total * 100),
-					"currency": reference_doc.currency,
-					"links": {"mandate": self.data.get("mandate")},
-					"metadata": {
-						"reference_doctype": reference_doc.doctype,
-						"reference_document": reference_doc.name,
-					},
-				},
-				headers={
-					"Idempotency-Key": self.data.get("reference_docname"),
-				},
-			)
-
-			if (
-				payment.status == "pending_submission"
-				or payment.status == "pending_customer_approval"
-				or payment.status == "submitted"
-			):
-				self.integration_request.db_set("status", "Authorized", update_modified=False)
-				self.flags.status_changed_to = "Completed"
-				self.integration_request.db_set("output", payment.status, update_modified=False)
-
-			elif payment.status == "confirmed" or payment.status == "paid_out":
-				self.integration_request.db_set("status", "Completed", update_modified=False)
-				self.flags.status_changed_to = "Completed"
-				self.integration_request.db_set("output", payment.status, update_modified=False)
-
-			elif (
-				payment.status == "cancelled"
-				or payment.status == "customer_approval_denied"
-				or payment.status == "charged_back"
-			):
-				self.integration_request.db_set("status", "Cancelled", update_modified=False)
-				frappe.log_error("Gocardless payment cancelled")
-				self.integration_request.db_set("error", payment.status, update_modified=False)
-			else:
-				self.integration_request.db_set("status", "Failed", update_modified=False)
-				frappe.log_error("Gocardless payment failed")
-				self.integration_request.db_set("error", payment.status, update_modified=False)
-
-		except Exception as e:
-			frappe.log_error("GoCardless Payment Error")
-
-		if self.flags.status_changed_to == "Completed":
-			status = "Completed"
-			if "reference_doctype" in self.data and "reference_docname" in self.data:
-				custom_redirect_to = None
-				try:
-					custom_redirect_to = frappe.get_doc(
-						self.data.get("reference_doctype"), self.data.get("reference_docname")
-					).run_method("on_payment_authorized", self.flags.status_changed_to)
-				except Exception:
-					frappe.log_error("Gocardless redirect failed")
-
-				if custom_redirect_to:
-					redirect_to = custom_redirect_to
-
-			redirect_url = redirect_to
-		else:
-			status = "Error"
-			redirect_url = "payment-failed"
-
-			if redirect_message:
-				redirect_url += "&" + urlencode({"redirect_message": redirect_message})
-
-			redirect_url = get_url(redirect_url)
-
-		return {"redirect_to": redirect_url, "status": status}
-
-
-def get_gateway_controller(doc):
-	payment_request = frappe.get_doc("Payment Request", doc)
-	gateway_controller = frappe.db.get_value(
-		"Payment Gateway", payment_request.payment_gateway, "gateway_controller"
-	)
-	return gateway_controller
-
-
-def gocardless_initialization(doc):
-	gateway_controller = get_gateway_controller(doc)
-	settings = frappe.get_doc("GoCardless Settings", gateway_controller)
-	client = settings.initialize_client()
-	return client
diff --git a/erpnext/erpnext_integrations/doctype/gocardless_settings/test_gocardless_settings.py b/erpnext/erpnext_integrations/doctype/gocardless_settings/test_gocardless_settings.py
deleted file mode 100644
index 379afe5..0000000
--- a/erpnext/erpnext_integrations/doctype/gocardless_settings/test_gocardless_settings.py
+++ /dev/null
@@ -1,8 +0,0 @@
-# Copyright (c) 2018, Frappe Technologies and Contributors
-# See license.txt
-
-import unittest
-
-
-class TestGoCardlessSettings(unittest.TestCase):
-	pass
diff --git a/erpnext/erpnext_integrations/doctype/mpesa_settings/__init__.py b/erpnext/erpnext_integrations/doctype/mpesa_settings/__init__.py
deleted file mode 100644
index e69de29..0000000
--- a/erpnext/erpnext_integrations/doctype/mpesa_settings/__init__.py
+++ /dev/null
diff --git a/erpnext/erpnext_integrations/doctype/mpesa_settings/account_balance.html b/erpnext/erpnext_integrations/doctype/mpesa_settings/account_balance.html
deleted file mode 100644
index b74a718..0000000
--- a/erpnext/erpnext_integrations/doctype/mpesa_settings/account_balance.html
+++ /dev/null
@@ -1,28 +0,0 @@
-
-{% if not jQuery.isEmptyObject(data) %}
-<h5 style="margin-top: 20px;"> {{ __("Balance Details") }} </h5>
-<table class="table table-bordered small">
-	<thead>
-		<tr>
-			<th style="width: 20%">{{ __("Account Type") }}</th>
-			<th style="width: 20%" class="text-right">{{ __("Current Balance") }}</th>
-			<th style="width: 20%" class="text-right">{{ __("Available Balance") }}</th>
-			<th style="width: 20%" class="text-right">{{ __("Reserved Balance") }}</th>
-			<th style="width: 20%" class="text-right">{{ __("Uncleared Balance") }}</th>
-		</tr>
-	</thead>
-	<tbody>
-		{% for(const [key, value] of Object.entries(data)) { %}
-			<tr>
-				<td> {%= key %} </td>
-				<td class="text-right"> {%= value["current_balance"] %} </td>
-				<td class="text-right"> {%= value["available_balance"] %} </td>
-				<td class="text-right"> {%= value["reserved_balance"] %} </td>
-				<td class="text-right"> {%= value["uncleared_balance"] %} </td>
-			</tr>
-		{% } %}
-	</tbody>
-</table>
-{% else %}
-<p style="margin-top: 30px;"> Account Balance Information Not Available. </p>
-{% endif %}
diff --git a/erpnext/erpnext_integrations/doctype/mpesa_settings/mpesa_connector.py b/erpnext/erpnext_integrations/doctype/mpesa_settings/mpesa_connector.py
deleted file mode 100644
index a577e7f..0000000
--- a/erpnext/erpnext_integrations/doctype/mpesa_settings/mpesa_connector.py
+++ /dev/null
@@ -1,149 +0,0 @@
-import base64
-import datetime
-
-import requests
-from requests.auth import HTTPBasicAuth
-
-
-class MpesaConnector:
-	def __init__(
-		self,
-		env="sandbox",
-		app_key=None,
-		app_secret=None,
-		sandbox_url="https://sandbox.safaricom.co.ke",
-		live_url="https://api.safaricom.co.ke",
-	):
-		"""Setup configuration for Mpesa connector and generate new access token."""
-		self.env = env
-		self.app_key = app_key
-		self.app_secret = app_secret
-		if env == "sandbox":
-			self.base_url = sandbox_url
-		else:
-			self.base_url = live_url
-		self.authenticate()
-
-	def authenticate(self):
-		"""
-		This method is used to fetch the access token required by Mpesa.
-
-		Returns:
-		        access_token (str): This token is to be used with the Bearer header for further API calls to Mpesa.
-		"""
-		authenticate_uri = "/oauth/v1/generate?grant_type=client_credentials"
-		authenticate_url = "{0}{1}".format(self.base_url, authenticate_uri)
-		r = requests.get(authenticate_url, auth=HTTPBasicAuth(self.app_key, self.app_secret))
-		self.authentication_token = r.json()["access_token"]
-		return r.json()["access_token"]
-
-	def get_balance(
-		self,
-		initiator=None,
-		security_credential=None,
-		party_a=None,
-		identifier_type=None,
-		remarks=None,
-		queue_timeout_url=None,
-		result_url=None,
-	):
-		"""
-		This method uses Mpesa's Account Balance API to to enquire the balance on a M-Pesa BuyGoods (Till Number).
-
-		Args:
-		        initiator (str): Username used to authenticate the transaction.
-		        security_credential (str): Generate from developer portal.
-		        command_id (str): AccountBalance.
-		        party_a (int): Till number being queried.
-		        identifier_type (int): Type of organization receiving the transaction. (MSISDN/Till Number/Organization short code)
-		        remarks (str): Comments that are sent along with the transaction(maximum 100 characters).
-		        queue_timeout_url (str): The url that handles information of timed out transactions.
-		        result_url (str): The url that receives results from M-Pesa api call.
-
-		Returns:
-		        OriginatorConverstionID (str): The unique request ID for tracking a transaction.
-		        ConversationID (str): The unique request ID returned by mpesa for each request made
-		        ResponseDescription (str): Response Description message
-		"""
-
-		payload = {
-			"Initiator": initiator,
-			"SecurityCredential": security_credential,
-			"CommandID": "AccountBalance",
-			"PartyA": party_a,
-			"IdentifierType": identifier_type,
-			"Remarks": remarks,
-			"QueueTimeOutURL": queue_timeout_url,
-			"ResultURL": result_url,
-		}
-		headers = {
-			"Authorization": "Bearer {0}".format(self.authentication_token),
-			"Content-Type": "application/json",
-		}
-		saf_url = "{0}{1}".format(self.base_url, "/mpesa/accountbalance/v1/query")
-		r = requests.post(saf_url, headers=headers, json=payload)
-		return r.json()
-
-	def stk_push(
-		self,
-		business_shortcode=None,
-		passcode=None,
-		amount=None,
-		callback_url=None,
-		reference_code=None,
-		phone_number=None,
-		description=None,
-	):
-		"""
-		This method uses Mpesa's Express API to initiate online payment on behalf of a customer.
-
-		Args:
-		        business_shortcode (int): The short code of the organization.
-		        passcode (str): Get from developer portal
-		        amount (int): The amount being transacted
-		        callback_url (str): A CallBack URL is a valid secure URL that is used to receive notifications from M-Pesa API.
-		        reference_code(str): Account Reference: This is an Alpha-Numeric parameter that is defined by your system as an Identifier of the transaction for CustomerPayBillOnline transaction type.
-		        phone_number(int): The Mobile Number to receive the STK Pin Prompt.
-		        description(str): This is any additional information/comment that can be sent along with the request from your system. MAX 13 characters
-
-		Success Response:
-		        CustomerMessage(str): Messages that customers can understand.
-		        CheckoutRequestID(str): This is a global unique identifier of the processed checkout transaction request.
-		        ResponseDescription(str): Describes Success or failure
-		        MerchantRequestID(str): This is a global unique Identifier for any submitted payment request.
-		        ResponseCode(int): 0 means success all others are error codes. e.g.404.001.03
-
-		Error Reponse:
-		        requestId(str): This is a unique requestID for the payment request
-		        errorCode(str): This is a predefined code that indicates the reason for request failure.
-		        errorMessage(str): This is a predefined code that indicates the reason for request failure.
-		"""
-
-		time = (
-			str(datetime.datetime.now()).split(".")[0].replace("-", "").replace(" ", "").replace(":", "")
-		)
-		password = "{0}{1}{2}".format(str(business_shortcode), str(passcode), time)
-		encoded = base64.b64encode(bytes(password, encoding="utf8"))
-		payload = {
-			"BusinessShortCode": business_shortcode,
-			"Password": encoded.decode("utf-8"),
-			"Timestamp": time,
-			"Amount": amount,
-			"PartyA": int(phone_number),
-			"PartyB": reference_code,
-			"PhoneNumber": int(phone_number),
-			"CallBackURL": callback_url,
-			"AccountReference": reference_code,
-			"TransactionDesc": description,
-			"TransactionType": "CustomerPayBillOnline"
-			if self.env == "sandbox"
-			else "CustomerBuyGoodsOnline",
-		}
-		headers = {
-			"Authorization": "Bearer {0}".format(self.authentication_token),
-			"Content-Type": "application/json",
-		}
-
-		saf_url = "{0}{1}".format(self.base_url, "/mpesa/stkpush/v1/processrequest")
-		r = requests.post(saf_url, headers=headers, json=payload)
-		return r.json()
diff --git a/erpnext/erpnext_integrations/doctype/mpesa_settings/mpesa_custom_fields.py b/erpnext/erpnext_integrations/doctype/mpesa_settings/mpesa_custom_fields.py
deleted file mode 100644
index c92edc5..0000000
--- a/erpnext/erpnext_integrations/doctype/mpesa_settings/mpesa_custom_fields.py
+++ /dev/null
@@ -1,56 +0,0 @@
-import frappe
-from frappe.custom.doctype.custom_field.custom_field import create_custom_fields
-
-
-def create_custom_pos_fields():
-	"""Create custom fields corresponding to POS Settings and POS Invoice."""
-	pos_field = {
-		"POS Invoice": [
-			{
-				"fieldname": "request_for_payment",
-				"label": "Request for Payment",
-				"fieldtype": "Button",
-				"hidden": 1,
-				"insert_after": "contact_email",
-			},
-			{
-				"fieldname": "mpesa_receipt_number",
-				"label": "Mpesa Receipt Number",
-				"fieldtype": "Data",
-				"read_only": 1,
-				"insert_after": "company",
-			},
-		]
-	}
-	if not frappe.get_meta("POS Invoice").has_field("request_for_payment"):
-		create_custom_fields(pos_field)
-
-	record_dict = [
-		{
-			"doctype": "POS Field",
-			"fieldname": "contact_mobile",
-			"label": "Mobile No",
-			"fieldtype": "Data",
-			"options": "Phone",
-			"parenttype": "POS Settings",
-			"parent": "POS Settings",
-			"parentfield": "invoice_fields",
-		},
-		{
-			"doctype": "POS Field",
-			"fieldname": "request_for_payment",
-			"label": "Request for Payment",
-			"fieldtype": "Button",
-			"parenttype": "POS Settings",
-			"parent": "POS Settings",
-			"parentfield": "invoice_fields",
-		},
-	]
-	create_pos_settings(record_dict)
-
-
-def create_pos_settings(record_dict):
-	for record in record_dict:
-		if frappe.db.exists("POS Field", {"fieldname": record.get("fieldname")}):
-			continue
-		frappe.get_doc(record).insert()
diff --git a/erpnext/erpnext_integrations/doctype/mpesa_settings/mpesa_settings.js b/erpnext/erpnext_integrations/doctype/mpesa_settings/mpesa_settings.js
deleted file mode 100644
index 447d720..0000000
--- a/erpnext/erpnext_integrations/doctype/mpesa_settings/mpesa_settings.js
+++ /dev/null
@@ -1,39 +0,0 @@
-// Copyright (c) 2020, Frappe Technologies Pvt. Ltd. and contributors
-// For license information, please see license.txt
-
-frappe.ui.form.on('Mpesa Settings', {
-	onload_post_render: function(frm) {
-		frm.events.setup_account_balance_html(frm);
-	},
-
-	refresh: function(frm) {
-		erpnext.utils.check_payments_app();
-
-		frappe.realtime.on("refresh_mpesa_dashboard", function(){
-			frm.reload_doc();
-			frm.events.setup_account_balance_html(frm);
-		});
-	},
-
-	get_account_balance: function(frm) {
-		if (!frm.doc.initiator_name && !frm.doc.security_credential) {
-			frappe.throw(__("Please set the initiator name and the security credential"));
-		}
-		frappe.call({
-			method: "get_account_balance_info",
-			doc: frm.doc
-		});
-	},
-
-	setup_account_balance_html: function(frm) {
-		if (!frm.doc.account_balance) return;
-		$("div").remove(".form-dashboard-section.custom");
-		frm.dashboard.add_section(
-			frappe.render_template('account_balance', {
-				data: JSON.parse(frm.doc.account_balance)
-			})
-		);
-		frm.dashboard.show();
-	}
-
-});
diff --git a/erpnext/erpnext_integrations/doctype/mpesa_settings/mpesa_settings.json b/erpnext/erpnext_integrations/doctype/mpesa_settings/mpesa_settings.json
deleted file mode 100644
index 8f3b427..0000000
--- a/erpnext/erpnext_integrations/doctype/mpesa_settings/mpesa_settings.json
+++ /dev/null
@@ -1,152 +0,0 @@
-{
- "actions": [],
- "autoname": "field:payment_gateway_name",
- "creation": "2020-09-10 13:21:27.398088",
- "doctype": "DocType",
- "editable_grid": 1,
- "engine": "InnoDB",
- "field_order": [
-  "payment_gateway_name",
-  "consumer_key",
-  "consumer_secret",
-  "initiator_name",
-  "till_number",
-  "transaction_limit",
-  "sandbox",
-  "column_break_4",
-  "business_shortcode",
-  "online_passkey",
-  "security_credential",
-  "get_account_balance",
-  "account_balance"
- ],
- "fields": [
-  {
-   "fieldname": "payment_gateway_name",
-   "fieldtype": "Data",
-   "label": "Payment Gateway Name",
-   "reqd": 1,
-   "unique": 1
-  },
-  {
-   "fieldname": "consumer_key",
-   "fieldtype": "Data",
-   "in_list_view": 1,
-   "label": "Consumer Key",
-   "reqd": 1
-  },
-  {
-   "fieldname": "consumer_secret",
-   "fieldtype": "Password",
-   "in_list_view": 1,
-   "label": "Consumer Secret",
-   "reqd": 1
-  },
-  {
-   "fieldname": "till_number",
-   "fieldtype": "Data",
-   "in_list_view": 1,
-   "label": "Till Number",
-   "reqd": 1
-  },
-  {
-   "default": "0",
-   "fieldname": "sandbox",
-   "fieldtype": "Check",
-   "label": "Sandbox"
-  },
-  {
-   "fieldname": "column_break_4",
-   "fieldtype": "Column Break"
-  },
-  {
-   "fieldname": "online_passkey",
-   "fieldtype": "Password",
-   "label": " Online PassKey",
-   "reqd": 1
-  },
-  {
-   "fieldname": "initiator_name",
-   "fieldtype": "Data",
-   "label": "Initiator Name"
-  },
-  {
-   "fieldname": "security_credential",
-   "fieldtype": "Small Text",
-   "label": "Security Credential"
-  },
-  {
-   "fieldname": "account_balance",
-   "fieldtype": "Long Text",
-   "hidden": 1,
-   "label": "Account Balance",
-   "read_only": 1
-  },
-  {
-   "fieldname": "get_account_balance",
-   "fieldtype": "Button",
-   "label": "Get Account Balance"
-  },
-  {
-   "depends_on": "eval:(doc.sandbox==0)",
-   "fieldname": "business_shortcode",
-   "fieldtype": "Data",
-   "label": "Business Shortcode",
-   "mandatory_depends_on": "eval:(doc.sandbox==0)"
-  },
-  {
-   "default": "150000",
-   "fieldname": "transaction_limit",
-   "fieldtype": "Float",
-   "label": "Transaction Limit",
-   "non_negative": 1
-  }
- ],
- "links": [],
- "modified": "2021-03-02 17:35:14.084342",
- "modified_by": "Administrator",
- "module": "ERPNext Integrations",
- "name": "Mpesa Settings",
- "owner": "Administrator",
- "permissions": [
-  {
-   "create": 1,
-   "delete": 1,
-   "email": 1,
-   "export": 1,
-   "print": 1,
-   "read": 1,
-   "report": 1,
-   "role": "System Manager",
-   "share": 1,
-   "write": 1
-  },
-  {
-   "create": 1,
-   "delete": 1,
-   "email": 1,
-   "export": 1,
-   "print": 1,
-   "read": 1,
-   "report": 1,
-   "role": "Accounts Manager",
-   "share": 1,
-   "write": 1
-  },
-  {
-   "create": 1,
-   "delete": 1,
-   "email": 1,
-   "export": 1,
-   "print": 1,
-   "read": 1,
-   "report": 1,
-   "role": "Accounts User",
-   "share": 1,
-   "write": 1
-  }
- ],
- "sort_field": "modified",
- "sort_order": "DESC",
- "track_changes": 1
-}
\ No newline at end of file
diff --git a/erpnext/erpnext_integrations/doctype/mpesa_settings/mpesa_settings.py b/erpnext/erpnext_integrations/doctype/mpesa_settings/mpesa_settings.py
deleted file mode 100644
index a298e11..0000000
--- a/erpnext/erpnext_integrations/doctype/mpesa_settings/mpesa_settings.py
+++ /dev/null
@@ -1,354 +0,0 @@
-# Copyright (c) 2020, Frappe Technologies and contributors
-# For license information, please see license.txt
-
-
-from json import dumps, loads
-
-import frappe
-from frappe import _
-from frappe.integrations.utils import create_request_log
-from frappe.model.document import Document
-from frappe.utils import call_hook_method, fmt_money, get_request_site_address
-
-from erpnext.erpnext_integrations.doctype.mpesa_settings.mpesa_connector import MpesaConnector
-from erpnext.erpnext_integrations.doctype.mpesa_settings.mpesa_custom_fields import (
-	create_custom_pos_fields,
-)
-from erpnext.erpnext_integrations.utils import create_mode_of_payment
-from erpnext.utilities import payment_app_import_guard
-
-
-class MpesaSettings(Document):
-	supported_currencies = ["KES"]
-
-	def validate_transaction_currency(self, currency):
-		if currency not in self.supported_currencies:
-			frappe.throw(
-				_(
-					"Please select another payment method. Mpesa does not support transactions in currency '{0}'"
-				).format(currency)
-			)
-
-	def on_update(self):
-		with payment_app_import_guard():
-			from payments.utils import create_payment_gateway
-
-		create_custom_pos_fields()
-		create_payment_gateway(
-			"Mpesa-" + self.payment_gateway_name,
-			settings="Mpesa Settings",
-			controller=self.payment_gateway_name,
-		)
-		call_hook_method(
-			"payment_gateway_enabled", gateway="Mpesa-" + self.payment_gateway_name, payment_channel="Phone"
-		)
-
-		# required to fetch the bank account details from the payment gateway account
-		frappe.db.commit()
-		create_mode_of_payment("Mpesa-" + self.payment_gateway_name, payment_type="Phone")
-
-	def request_for_payment(self, **kwargs):
-		args = frappe._dict(kwargs)
-		request_amounts = self.split_request_amount_according_to_transaction_limit(args)
-
-		for i, amount in enumerate(request_amounts):
-			args.request_amount = amount
-			if frappe.flags.in_test:
-				from erpnext.erpnext_integrations.doctype.mpesa_settings.test_mpesa_settings import (
-					get_payment_request_response_payload,
-				)
-
-				response = frappe._dict(get_payment_request_response_payload(amount))
-			else:
-				response = frappe._dict(generate_stk_push(**args))
-
-			self.handle_api_response("CheckoutRequestID", args, response)
-
-	def split_request_amount_according_to_transaction_limit(self, args):
-		request_amount = args.request_amount
-		if request_amount > self.transaction_limit:
-			# make multiple requests
-			request_amounts = []
-			requests_to_be_made = frappe.utils.ceil(
-				request_amount / self.transaction_limit
-			)  # 480/150 = ceil(3.2) = 4
-			for i in range(requests_to_be_made):
-				amount = self.transaction_limit
-				if i == requests_to_be_made - 1:
-					amount = request_amount - (
-						self.transaction_limit * i
-					)  # for 4th request, 480 - (150 * 3) = 30
-				request_amounts.append(amount)
-		else:
-			request_amounts = [request_amount]
-
-		return request_amounts
-
-	@frappe.whitelist()
-	def get_account_balance_info(self):
-		payload = dict(
-			reference_doctype="Mpesa Settings", reference_docname=self.name, doc_details=vars(self)
-		)
-
-		if frappe.flags.in_test:
-			from erpnext.erpnext_integrations.doctype.mpesa_settings.test_mpesa_settings import (
-				get_test_account_balance_response,
-			)
-
-			response = frappe._dict(get_test_account_balance_response())
-		else:
-			response = frappe._dict(get_account_balance(payload))
-
-		self.handle_api_response("ConversationID", payload, response)
-
-	def handle_api_response(self, global_id, request_dict, response):
-		"""Response received from API calls returns a global identifier for each transaction, this code is returned during the callback."""
-		# check error response
-		if getattr(response, "requestId"):
-			req_name = getattr(response, "requestId")
-			error = response
-		else:
-			# global checkout id used as request name
-			req_name = getattr(response, global_id)
-			error = None
-
-		if not frappe.db.exists("Integration Request", req_name):
-			create_request_log(request_dict, "Host", "Mpesa", req_name, error)
-
-		if error:
-			frappe.throw(_(getattr(response, "errorMessage")), title=_("Transaction Error"))
-
-
-def generate_stk_push(**kwargs):
-	"""Generate stk push by making a API call to the stk push API."""
-	args = frappe._dict(kwargs)
-	try:
-		callback_url = (
-			get_request_site_address(True)
-			+ "/api/method/erpnext.erpnext_integrations.doctype.mpesa_settings.mpesa_settings.verify_transaction"
-		)
-
-		mpesa_settings = frappe.get_doc("Mpesa Settings", args.payment_gateway[6:])
-		env = "production" if not mpesa_settings.sandbox else "sandbox"
-		# for sandbox, business shortcode is same as till number
-		business_shortcode = (
-			mpesa_settings.business_shortcode if env == "production" else mpesa_settings.till_number
-		)
-
-		connector = MpesaConnector(
-			env=env,
-			app_key=mpesa_settings.consumer_key,
-			app_secret=mpesa_settings.get_password("consumer_secret"),
-		)
-
-		mobile_number = sanitize_mobile_number(args.sender)
-
-		response = connector.stk_push(
-			business_shortcode=business_shortcode,
-			amount=args.request_amount,
-			passcode=mpesa_settings.get_password("online_passkey"),
-			callback_url=callback_url,
-			reference_code=mpesa_settings.till_number,
-			phone_number=mobile_number,
-			description="POS Payment",
-		)
-
-		return response
-
-	except Exception:
-		frappe.log_error("Mpesa Express Transaction Error")
-		frappe.throw(
-			_("Issue detected with Mpesa configuration, check the error logs for more details"),
-			title=_("Mpesa Express Error"),
-		)
-
-
-def sanitize_mobile_number(number):
-	"""Add country code and strip leading zeroes from the phone number."""
-	return "254" + str(number).lstrip("0")
-
-
-@frappe.whitelist(allow_guest=True)
-def verify_transaction(**kwargs):
-	"""Verify the transaction result received via callback from stk."""
-	transaction_response = frappe._dict(kwargs["Body"]["stkCallback"])
-
-	checkout_id = getattr(transaction_response, "CheckoutRequestID", "")
-	if not isinstance(checkout_id, str):
-		frappe.throw(_("Invalid Checkout Request ID"))
-
-	integration_request = frappe.get_doc("Integration Request", checkout_id)
-	transaction_data = frappe._dict(loads(integration_request.data))
-	total_paid = 0  # for multiple integration request made against a pos invoice
-	success = False  # for reporting successfull callback to point of sale ui
-
-	if transaction_response["ResultCode"] == 0:
-		if integration_request.reference_doctype and integration_request.reference_docname:
-			try:
-				item_response = transaction_response["CallbackMetadata"]["Item"]
-				amount = fetch_param_value(item_response, "Amount", "Name")
-				mpesa_receipt = fetch_param_value(item_response, "MpesaReceiptNumber", "Name")
-				pr = frappe.get_doc(
-					integration_request.reference_doctype, integration_request.reference_docname
-				)
-
-				mpesa_receipts, completed_payments = get_completed_integration_requests_info(
-					integration_request.reference_doctype, integration_request.reference_docname, checkout_id
-				)
-
-				total_paid = amount + sum(completed_payments)
-				mpesa_receipts = ", ".join(mpesa_receipts + [mpesa_receipt])
-
-				if total_paid >= pr.grand_total:
-					pr.run_method("on_payment_authorized", "Completed")
-					success = True
-
-				frappe.db.set_value("POS Invoice", pr.reference_name, "mpesa_receipt_number", mpesa_receipts)
-				integration_request.handle_success(transaction_response)
-			except Exception:
-				integration_request.handle_failure(transaction_response)
-				frappe.log_error("Mpesa: Failed to verify transaction")
-
-	else:
-		integration_request.handle_failure(transaction_response)
-
-	frappe.publish_realtime(
-		event="process_phone_payment",
-		doctype="POS Invoice",
-		docname=transaction_data.payment_reference,
-		user=integration_request.owner,
-		message={
-			"amount": total_paid,
-			"success": success,
-			"failure_message": transaction_response["ResultDesc"]
-			if transaction_response["ResultCode"] != 0
-			else "",
-		},
-	)
-
-
-def get_completed_integration_requests_info(reference_doctype, reference_docname, checkout_id):
-	output_of_other_completed_requests = frappe.get_all(
-		"Integration Request",
-		filters={
-			"name": ["!=", checkout_id],
-			"reference_doctype": reference_doctype,
-			"reference_docname": reference_docname,
-			"status": "Completed",
-		},
-		pluck="output",
-	)
-
-	mpesa_receipts, completed_payments = [], []
-
-	for out in output_of_other_completed_requests:
-		out = frappe._dict(loads(out))
-		item_response = out["CallbackMetadata"]["Item"]
-		completed_amount = fetch_param_value(item_response, "Amount", "Name")
-		completed_mpesa_receipt = fetch_param_value(item_response, "MpesaReceiptNumber", "Name")
-		completed_payments.append(completed_amount)
-		mpesa_receipts.append(completed_mpesa_receipt)
-
-	return mpesa_receipts, completed_payments
-
-
-def get_account_balance(request_payload):
-	"""Call account balance API to send the request to the Mpesa Servers."""
-	try:
-		mpesa_settings = frappe.get_doc("Mpesa Settings", request_payload.get("reference_docname"))
-		env = "production" if not mpesa_settings.sandbox else "sandbox"
-		connector = MpesaConnector(
-			env=env,
-			app_key=mpesa_settings.consumer_key,
-			app_secret=mpesa_settings.get_password("consumer_secret"),
-		)
-
-		callback_url = (
-			get_request_site_address(True)
-			+ "/api/method/erpnext.erpnext_integrations.doctype.mpesa_settings.mpesa_settings.process_balance_info"
-		)
-
-		response = connector.get_balance(
-			mpesa_settings.initiator_name,
-			mpesa_settings.security_credential,
-			mpesa_settings.till_number,
-			4,
-			mpesa_settings.name,
-			callback_url,
-			callback_url,
-		)
-		return response
-	except Exception:
-		frappe.log_error("Mpesa: Failed to get account balance")
-		frappe.throw(_("Please check your configuration and try again"), title=_("Error"))
-
-
-@frappe.whitelist(allow_guest=True)
-def process_balance_info(**kwargs):
-	"""Process and store account balance information received via callback from the account balance API call."""
-	account_balance_response = frappe._dict(kwargs["Result"])
-
-	conversation_id = getattr(account_balance_response, "ConversationID", "")
-	if not isinstance(conversation_id, str):
-		frappe.throw(_("Invalid Conversation ID"))
-
-	request = frappe.get_doc("Integration Request", conversation_id)
-
-	if request.status == "Completed":
-		return
-
-	transaction_data = frappe._dict(loads(request.data))
-
-	if account_balance_response["ResultCode"] == 0:
-		try:
-			result_params = account_balance_response["ResultParameters"]["ResultParameter"]
-
-			balance_info = fetch_param_value(result_params, "AccountBalance", "Key")
-			balance_info = format_string_to_json(balance_info)
-
-			ref_doc = frappe.get_doc(transaction_data.reference_doctype, transaction_data.reference_docname)
-			ref_doc.db_set("account_balance", balance_info)
-
-			request.handle_success(account_balance_response)
-			frappe.publish_realtime(
-				"refresh_mpesa_dashboard",
-				doctype="Mpesa Settings",
-				docname=transaction_data.reference_docname,
-				user=transaction_data.owner,
-			)
-		except Exception:
-			request.handle_failure(account_balance_response)
-			frappe.log_error(
-				title="Mpesa Account Balance Processing Error", message=account_balance_response
-			)
-	else:
-		request.handle_failure(account_balance_response)
-
-
-def format_string_to_json(balance_info):
-	"""
-	Format string to json.
-
-	e.g: '''Working Account|KES|481000.00|481000.00|0.00|0.00'''
-	=> {'Working Account': {'current_balance': '481000.00',
-	        'available_balance': '481000.00',
-	        'reserved_balance': '0.00',
-	        'uncleared_balance': '0.00'}}
-	"""
-	balance_dict = frappe._dict()
-	for account_info in balance_info.split("&"):
-		account_info = account_info.split("|")
-		balance_dict[account_info[0]] = dict(
-			current_balance=fmt_money(account_info[2], currency="KES"),
-			available_balance=fmt_money(account_info[3], currency="KES"),
-			reserved_balance=fmt_money(account_info[4], currency="KES"),
-			uncleared_balance=fmt_money(account_info[5], currency="KES"),
-		)
-	return dumps(balance_dict)
-
-
-def fetch_param_value(response, key, key_field):
-	"""Fetch the specified key from list of dictionary. Key is identified via the key field."""
-	for param in response:
-		if param[key_field] == key:
-			return param["Value"]
diff --git a/erpnext/erpnext_integrations/doctype/mpesa_settings/test_mpesa_settings.py b/erpnext/erpnext_integrations/doctype/mpesa_settings/test_mpesa_settings.py
deleted file mode 100644
index b526624..0000000
--- a/erpnext/erpnext_integrations/doctype/mpesa_settings/test_mpesa_settings.py
+++ /dev/null
@@ -1,361 +0,0 @@
-# Copyright (c) 2020, Frappe Technologies Pvt. Ltd. and Contributors
-# See license.txt
-
-import unittest
-from json import dumps
-
-import frappe
-
-from erpnext.accounts.doctype.pos_invoice.test_pos_invoice import create_pos_invoice
-from erpnext.erpnext_integrations.doctype.mpesa_settings.mpesa_settings import (
-	process_balance_info,
-	verify_transaction,
-)
-from erpnext.erpnext_integrations.utils import create_mode_of_payment
-
-
-class TestMpesaSettings(unittest.TestCase):
-	def setUp(self):
-		# create payment gateway in setup
-		create_mpesa_settings(payment_gateway_name="_Test")
-		create_mpesa_settings(payment_gateway_name="_Account Balance")
-		create_mpesa_settings(payment_gateway_name="Payment")
-
-	def tearDown(self):
-		frappe.db.sql("delete from `tabMpesa Settings`")
-		frappe.db.sql("delete from `tabIntegration Request` where integration_request_service = 'Mpesa'")
-
-	def test_creation_of_payment_gateway(self):
-		mode_of_payment = create_mode_of_payment("Mpesa-_Test", payment_type="Phone")
-		self.assertTrue(frappe.db.exists("Payment Gateway Account", {"payment_gateway": "Mpesa-_Test"}))
-		self.assertTrue(mode_of_payment.name)
-		self.assertEqual(mode_of_payment.type, "Phone")
-
-	def test_processing_of_account_balance(self):
-		mpesa_doc = create_mpesa_settings(payment_gateway_name="_Account Balance")
-		mpesa_doc.get_account_balance_info()
-
-		callback_response = get_account_balance_callback_payload()
-		process_balance_info(**callback_response)
-		integration_request = frappe.get_doc("Integration Request", "AG_20200927_00007cdb1f9fb6494315")
-
-		# test integration request creation and successful update of the status on receiving callback response
-		self.assertTrue(integration_request)
-		self.assertEqual(integration_request.status, "Completed")
-
-		# test formatting of account balance received as string to json with appropriate currency symbol
-		mpesa_doc.reload()
-		self.assertEqual(
-			mpesa_doc.account_balance,
-			dumps(
-				{
-					"Working Account": {
-						"current_balance": "Sh 481,000.00",
-						"available_balance": "Sh 481,000.00",
-						"reserved_balance": "Sh 0.00",
-						"uncleared_balance": "Sh 0.00",
-					}
-				}
-			),
-		)
-
-		integration_request.delete()
-
-	def test_processing_of_callback_payload(self):
-		mpesa_account = frappe.db.get_value(
-			"Payment Gateway Account", {"payment_gateway": "Mpesa-Payment"}, "payment_account"
-		)
-		frappe.db.set_value("Account", mpesa_account, "account_currency", "KES")
-		frappe.db.set_value("Customer", "_Test Customer", "default_currency", "KES")
-
-		pos_invoice = create_pos_invoice(do_not_submit=1)
-		pos_invoice.append(
-			"payments", {"mode_of_payment": "Mpesa-Payment", "account": mpesa_account, "amount": 500}
-		)
-		pos_invoice.contact_mobile = "093456543894"
-		pos_invoice.currency = "KES"
-		pos_invoice.save()
-
-		pr = pos_invoice.create_payment_request()
-		# test payment request creation
-		self.assertEqual(pr.payment_gateway, "Mpesa-Payment")
-
-		# submitting payment request creates integration requests with random id
-		integration_req_ids = frappe.get_all(
-			"Integration Request",
-			filters={
-				"reference_doctype": pr.doctype,
-				"reference_docname": pr.name,
-			},
-			pluck="name",
-		)
-
-		callback_response = get_payment_callback_payload(
-			Amount=500, CheckoutRequestID=integration_req_ids[0]
-		)
-		verify_transaction(**callback_response)
-		# test creation of integration request
-		integration_request = frappe.get_doc("Integration Request", integration_req_ids[0])
-
-		# test integration request creation and successful update of the status on receiving callback response
-		self.assertTrue(integration_request)
-		self.assertEqual(integration_request.status, "Completed")
-
-		pos_invoice.reload()
-		integration_request.reload()
-		self.assertEqual(pos_invoice.mpesa_receipt_number, "LGR7OWQX0R")
-		self.assertEqual(integration_request.status, "Completed")
-
-		frappe.db.set_value("Customer", "_Test Customer", "default_currency", "")
-		integration_request.delete()
-		pr.reload()
-		pr.cancel()
-		pr.delete()
-		pos_invoice.delete()
-
-	def test_processing_of_multiple_callback_payload(self):
-		mpesa_account = frappe.db.get_value(
-			"Payment Gateway Account", {"payment_gateway": "Mpesa-Payment"}, "payment_account"
-		)
-		frappe.db.set_value("Account", mpesa_account, "account_currency", "KES")
-		frappe.db.set_value("Mpesa Settings", "Payment", "transaction_limit", "500")
-		frappe.db.set_value("Customer", "_Test Customer", "default_currency", "KES")
-
-		pos_invoice = create_pos_invoice(do_not_submit=1)
-		pos_invoice.append(
-			"payments", {"mode_of_payment": "Mpesa-Payment", "account": mpesa_account, "amount": 1000}
-		)
-		pos_invoice.contact_mobile = "093456543894"
-		pos_invoice.currency = "KES"
-		pos_invoice.save()
-
-		pr = pos_invoice.create_payment_request()
-		# test payment request creation
-		self.assertEqual(pr.payment_gateway, "Mpesa-Payment")
-
-		# submitting payment request creates integration requests with random id
-		integration_req_ids = frappe.get_all(
-			"Integration Request",
-			filters={
-				"reference_doctype": pr.doctype,
-				"reference_docname": pr.name,
-			},
-			pluck="name",
-		)
-
-		# create random receipt nos and send it as response to callback handler
-		mpesa_receipt_numbers = [frappe.utils.random_string(5) for d in integration_req_ids]
-
-		integration_requests = []
-		for i in range(len(integration_req_ids)):
-			callback_response = get_payment_callback_payload(
-				Amount=500,
-				CheckoutRequestID=integration_req_ids[i],
-				MpesaReceiptNumber=mpesa_receipt_numbers[i],
-			)
-			# handle response manually
-			verify_transaction(**callback_response)
-			# test completion of integration request
-			integration_request = frappe.get_doc("Integration Request", integration_req_ids[i])
-			self.assertEqual(integration_request.status, "Completed")
-			integration_requests.append(integration_request)
-
-		# check receipt number once all the integration requests are completed
-		pos_invoice.reload()
-		self.assertEqual(pos_invoice.mpesa_receipt_number, ", ".join(mpesa_receipt_numbers))
-
-		frappe.db.set_value("Customer", "_Test Customer", "default_currency", "")
-		[d.delete() for d in integration_requests]
-		pr.reload()
-		pr.cancel()
-		pr.delete()
-		pos_invoice.delete()
-
-	def test_processing_of_only_one_succes_callback_payload(self):
-		mpesa_account = frappe.db.get_value(
-			"Payment Gateway Account", {"payment_gateway": "Mpesa-Payment"}, "payment_account"
-		)
-		frappe.db.set_value("Account", mpesa_account, "account_currency", "KES")
-		frappe.db.set_value("Mpesa Settings", "Payment", "transaction_limit", "500")
-		frappe.db.set_value("Customer", "_Test Customer", "default_currency", "KES")
-
-		pos_invoice = create_pos_invoice(do_not_submit=1)
-		pos_invoice.append(
-			"payments", {"mode_of_payment": "Mpesa-Payment", "account": mpesa_account, "amount": 1000}
-		)
-		pos_invoice.contact_mobile = "093456543894"
-		pos_invoice.currency = "KES"
-		pos_invoice.save()
-
-		pr = pos_invoice.create_payment_request()
-		# test payment request creation
-		self.assertEqual(pr.payment_gateway, "Mpesa-Payment")
-
-		# submitting payment request creates integration requests with random id
-		integration_req_ids = frappe.get_all(
-			"Integration Request",
-			filters={
-				"reference_doctype": pr.doctype,
-				"reference_docname": pr.name,
-			},
-			pluck="name",
-		)
-
-		# create random receipt nos and send it as response to callback handler
-		mpesa_receipt_numbers = [frappe.utils.random_string(5) for d in integration_req_ids]
-
-		callback_response = get_payment_callback_payload(
-			Amount=500,
-			CheckoutRequestID=integration_req_ids[0],
-			MpesaReceiptNumber=mpesa_receipt_numbers[0],
-		)
-		# handle response manually
-		verify_transaction(**callback_response)
-		# test completion of integration request
-		integration_request = frappe.get_doc("Integration Request", integration_req_ids[0])
-		self.assertEqual(integration_request.status, "Completed")
-
-		# now one request is completed
-		# second integration request fails
-		# now retrying payment request should make only one integration request again
-		pr = pos_invoice.create_payment_request()
-		new_integration_req_ids = frappe.get_all(
-			"Integration Request",
-			filters={
-				"reference_doctype": pr.doctype,
-				"reference_docname": pr.name,
-				"name": ["not in", integration_req_ids],
-			},
-			pluck="name",
-		)
-
-		self.assertEqual(len(new_integration_req_ids), 1)
-
-		frappe.db.set_value("Customer", "_Test Customer", "default_currency", "")
-		frappe.db.sql("delete from `tabIntegration Request` where integration_request_service = 'Mpesa'")
-		pr.reload()
-		pr.cancel()
-		pr.delete()
-		pos_invoice.delete()
-
-
-def create_mpesa_settings(payment_gateway_name="Express"):
-	if frappe.db.exists("Mpesa Settings", payment_gateway_name):
-		return frappe.get_doc("Mpesa Settings", payment_gateway_name)
-
-	doc = frappe.get_doc(
-		dict(  # nosec
-			doctype="Mpesa Settings",
-			sandbox=1,
-			payment_gateway_name=payment_gateway_name,
-			consumer_key="5sMu9LVI1oS3oBGPJfh3JyvLHwZOdTKn",
-			consumer_secret="VI1oS3oBGPJfh3JyvLHw",
-			online_passkey="LVI1oS3oBGPJfh3JyvLHwZOd",
-			till_number="174379",
-		)
-	)
-
-	doc.insert(ignore_permissions=True)
-	return doc
-
-
-def get_test_account_balance_response():
-	"""Response received after calling the account balance API."""
-	return {
-		"ResultType": 0,
-		"ResultCode": 0,
-		"ResultDesc": "The service request has been accepted successfully.",
-		"OriginatorConversationID": "10816-694520-2",
-		"ConversationID": "AG_20200927_00007cdb1f9fb6494315",
-		"TransactionID": "LGR0000000",
-		"ResultParameters": {
-			"ResultParameter": [
-				{"Key": "ReceiptNo", "Value": "LGR919G2AV"},
-				{"Key": "Conversation ID", "Value": "AG_20170727_00004492b1b6d0078fbe"},
-				{"Key": "FinalisedTime", "Value": 20170727101415},
-				{"Key": "Amount", "Value": 10},
-				{"Key": "TransactionStatus", "Value": "Completed"},
-				{"Key": "ReasonType", "Value": "Salary Payment via API"},
-				{"Key": "TransactionReason"},
-				{"Key": "DebitPartyCharges", "Value": "Fee For B2C Payment|KES|33.00"},
-				{"Key": "DebitAccountType", "Value": "Utility Account"},
-				{"Key": "InitiatedTime", "Value": 20170727101415},
-				{"Key": "Originator Conversation ID", "Value": "19455-773836-1"},
-				{"Key": "CreditPartyName", "Value": "254708374149 - John Doe"},
-				{"Key": "DebitPartyName", "Value": "600134 - Safaricom157"},
-			]
-		},
-		"ReferenceData": {"ReferenceItem": {"Key": "Occasion", "Value": "aaaa"}},
-	}
-
-
-def get_payment_request_response_payload(Amount=500):
-	"""Response received after successfully calling the stk push process request API."""
-
-	CheckoutRequestID = frappe.utils.random_string(10)
-
-	return {
-		"MerchantRequestID": "8071-27184008-1",
-		"CheckoutRequestID": CheckoutRequestID,
-		"ResultCode": 0,
-		"ResultDesc": "The service request is processed successfully.",
-		"CallbackMetadata": {
-			"Item": [
-				{"Name": "Amount", "Value": Amount},
-				{"Name": "MpesaReceiptNumber", "Value": "LGR7OWQX0R"},
-				{"Name": "TransactionDate", "Value": 20201006113336},
-				{"Name": "PhoneNumber", "Value": 254723575670},
-			]
-		},
-	}
-
-
-def get_payment_callback_payload(
-	Amount=500, CheckoutRequestID="ws_CO_061020201133231972", MpesaReceiptNumber="LGR7OWQX0R"
-):
-	"""Response received from the server as callback after calling the stkpush process request API."""
-	return {
-		"Body": {
-			"stkCallback": {
-				"MerchantRequestID": "19465-780693-1",
-				"CheckoutRequestID": CheckoutRequestID,
-				"ResultCode": 0,
-				"ResultDesc": "The service request is processed successfully.",
-				"CallbackMetadata": {
-					"Item": [
-						{"Name": "Amount", "Value": Amount},
-						{"Name": "MpesaReceiptNumber", "Value": MpesaReceiptNumber},
-						{"Name": "Balance"},
-						{"Name": "TransactionDate", "Value": 20170727154800},
-						{"Name": "PhoneNumber", "Value": 254721566839},
-					]
-				},
-			}
-		}
-	}
-
-
-def get_account_balance_callback_payload():
-	"""Response received from the server as callback after calling the account balance API."""
-	return {
-		"Result": {
-			"ResultType": 0,
-			"ResultCode": 0,
-			"ResultDesc": "The service request is processed successfully.",
-			"OriginatorConversationID": "16470-170099139-1",
-			"ConversationID": "AG_20200927_00007cdb1f9fb6494315",
-			"TransactionID": "OIR0000000",
-			"ResultParameters": {
-				"ResultParameter": [
-					{"Key": "AccountBalance", "Value": "Working Account|KES|481000.00|481000.00|0.00|0.00"},
-					{"Key": "BOCompletedTime", "Value": 20200927234123},
-				]
-			},
-			"ReferenceData": {
-				"ReferenceItem": {
-					"Key": "QueueTimeoutURL",
-					"Value": "https://internalsandbox.safaricom.co.ke/mpesa/abresults/v1/submit",
-				}
-			},
-		}
-	}
diff --git a/erpnext/erpnext_integrations/doctype/plaid_settings/test_plaid_settings.py b/erpnext/erpnext_integrations/doctype/plaid_settings/test_plaid_settings.py
index 86e1b31..6716853 100644
--- a/erpnext/erpnext_integrations/doctype/plaid_settings/test_plaid_settings.py
+++ b/erpnext/erpnext_integrations/doctype/plaid_settings/test_plaid_settings.py
@@ -43,40 +43,6 @@
 		add_account_subtype("loan")
 		self.assertEqual(frappe.get_doc("Bank Account Subtype", "loan").name, "loan")
 
-	def test_default_bank_account(self):
-		if not frappe.db.exists("Bank", "Citi"):
-			frappe.get_doc({"doctype": "Bank", "bank_name": "Citi"}).insert()
-
-		bank_accounts = {
-			"account": {
-				"subtype": "checking",
-				"mask": "0000",
-				"type": "depository",
-				"id": "6GbM6RRQgdfy3lAqGz4JUnpmR948WZFg8DjQK",
-				"name": "Plaid Checking",
-			},
-			"account_id": "6GbM6RRQgdfy3lAqGz4JUnpmR948WZFg8DjQK",
-			"link_session_id": "db673d75-61aa-442a-864f-9b3f174f3725",
-			"accounts": [
-				{
-					"type": "depository",
-					"subtype": "checking",
-					"mask": "0000",
-					"id": "6GbM6RRQgdfy3lAqGz4JUnpmR948WZFg8DjQK",
-					"name": "Plaid Checking",
-				}
-			],
-			"institution": {"institution_id": "ins_6", "name": "Citi"},
-		}
-
-		bank = json.dumps(frappe.get_doc("Bank", "Citi").as_dict(), default=json_handler)
-		company = frappe.db.get_single_value("Global Defaults", "default_company")
-		frappe.db.set_value("Company", company, "default_bank_account", None)
-
-		self.assertRaises(
-			frappe.ValidationError, add_bank_accounts, response=bank_accounts, bank=bank, company=company
-		)
-
 	def test_new_transaction(self):
 		if not frappe.db.exists("Bank", "Citi"):
 			frappe.get_doc({"doctype": "Bank", "bank_name": "Citi"}).insert()
diff --git a/erpnext/erpnext_integrations/doctype/woocommerce_settings/__init__.py b/erpnext/erpnext_integrations/doctype/woocommerce_settings/__init__.py
deleted file mode 100644
index e69de29..0000000
--- a/erpnext/erpnext_integrations/doctype/woocommerce_settings/__init__.py
+++ /dev/null
diff --git a/erpnext/erpnext_integrations/doctype/woocommerce_settings/test_woocommerce_settings.py b/erpnext/erpnext_integrations/doctype/woocommerce_settings/test_woocommerce_settings.py
deleted file mode 100644
index 9945823..0000000
--- a/erpnext/erpnext_integrations/doctype/woocommerce_settings/test_woocommerce_settings.py
+++ /dev/null
@@ -1,8 +0,0 @@
-# Copyright (c) 2018, Frappe Technologies Pvt. Ltd. and Contributors
-# See license.txt
-
-import unittest
-
-
-class TestWoocommerceSettings(unittest.TestCase):
-	pass
diff --git a/erpnext/erpnext_integrations/doctype/woocommerce_settings/woocommerce_settings.js b/erpnext/erpnext_integrations/doctype/woocommerce_settings/woocommerce_settings.js
deleted file mode 100644
index d7a3d36..0000000
--- a/erpnext/erpnext_integrations/doctype/woocommerce_settings/woocommerce_settings.js
+++ /dev/null
@@ -1,56 +0,0 @@
-// Copyright (c) 2018, Frappe Technologies Pvt. Ltd. and contributors
-// For license information, please see license.txt
-
-frappe.ui.form.on('Woocommerce Settings', {
-	refresh (frm) {
-		frm.trigger("add_button_generate_secret");
-		frm.trigger("check_enabled");
-		frm.set_query("tax_account", ()=>{
-			return {
-				"filters": {
-					"company": frappe.defaults.get_default("company"),
-					"is_group": 0
-				}
-			};
-		});
-	},
-
-	enable_sync (frm) {
-		frm.trigger("check_enabled");
-	},
-
-	add_button_generate_secret(frm) {
-		frm.add_custom_button(__('Generate Secret'), () => {
-			frappe.confirm(
-				__("Apps using current key won't be able to access, are you sure?"),
-				() => {
-					frappe.call({
-						type:"POST",
-						method:"erpnext.erpnext_integrations.doctype.woocommerce_settings.woocommerce_settings.generate_secret",
-					}).done(() => {
-						frm.reload_doc();
-					}).fail(() => {
-						frappe.msgprint(__("Could not generate Secret"));
-					});
-				}
-			);
-		});
-	},
-
-	check_enabled (frm) {
-		frm.set_df_property("woocommerce_server_url", "reqd", frm.doc.enable_sync);
-		frm.set_df_property("api_consumer_key", "reqd", frm.doc.enable_sync);
-		frm.set_df_property("api_consumer_secret", "reqd", frm.doc.enable_sync);
-	}
-});
-
-frappe.ui.form.on("Woocommerce Settings", "onload", function () {
-	frappe.call({
-		method: "erpnext.erpnext_integrations.doctype.woocommerce_settings.woocommerce_settings.get_series",
-		callback: function (r) {
-			$.each(r.message, function (key, value) {
-				set_field_options(key, value);
-			});
-		}
-	});
-});
diff --git a/erpnext/erpnext_integrations/doctype/woocommerce_settings/woocommerce_settings.json b/erpnext/erpnext_integrations/doctype/woocommerce_settings/woocommerce_settings.json
deleted file mode 100644
index 956ae09..0000000
--- a/erpnext/erpnext_integrations/doctype/woocommerce_settings/woocommerce_settings.json
+++ /dev/null
@@ -1,175 +0,0 @@
-{
- "creation": "2018-02-12 15:10:05.495713",
- "doctype": "DocType",
- "editable_grid": 1,
- "engine": "InnoDB",
- "field_order": [
-  "enable_sync",
-  "sb_00",
-  "woocommerce_server_url",
-  "secret",
-  "cb_00",
-  "api_consumer_key",
-  "api_consumer_secret",
-  "sb_accounting_details",
-  "tax_account",
-  "column_break_10",
-  "f_n_f_account",
-  "defaults_section",
-  "creation_user",
-  "warehouse",
-  "sales_order_series",
-  "column_break_14",
-  "company",
-  "delivery_after_days",
-  "uom",
-  "endpoints",
-  "endpoint"
- ],
- "fields": [
-  {
-   "default": "0",
-   "fieldname": "enable_sync",
-   "fieldtype": "Check",
-   "label": "Enable Sync"
-  },
-  {
-   "fieldname": "sb_00",
-   "fieldtype": "Section Break"
-  },
-  {
-   "fieldname": "woocommerce_server_url",
-   "fieldtype": "Data",
-   "in_list_view": 1,
-   "label": "Woocommerce Server URL"
-  },
-  {
-   "fieldname": "secret",
-   "fieldtype": "Code",
-   "label": "Secret",
-   "read_only": 1
-  },
-  {
-   "fieldname": "cb_00",
-   "fieldtype": "Column Break"
-  },
-  {
-   "fieldname": "api_consumer_key",
-   "fieldtype": "Data",
-   "in_list_view": 1,
-   "label": "API consumer key"
-  },
-  {
-   "fieldname": "api_consumer_secret",
-   "fieldtype": "Data",
-   "in_list_view": 1,
-   "label": "API consumer secret"
-  },
-  {
-   "fieldname": "sb_accounting_details",
-   "fieldtype": "Section Break",
-   "label": "Accounting Details"
-  },
-  {
-   "fieldname": "tax_account",
-   "fieldtype": "Link",
-   "label": "Tax Account",
-   "options": "Account",
-   "reqd": 1
-  },
-  {
-   "fieldname": "column_break_10",
-   "fieldtype": "Column Break"
-  },
-  {
-   "fieldname": "f_n_f_account",
-   "fieldtype": "Link",
-   "label": "Freight and Forwarding Account",
-   "options": "Account",
-   "reqd": 1
-  },
-  {
-   "fieldname": "defaults_section",
-   "fieldtype": "Section Break",
-   "label": "Defaults"
-  },
-  {
-   "description": "The user that will be used to create Customers, Items and Sales Orders. This user should have the relevant permissions.",
-   "fieldname": "creation_user",
-   "fieldtype": "Link",
-   "label": "Creation User",
-   "options": "User",
-   "reqd": 1
-  },
-  {
-   "description": "This warehouse will be used to create Sales Orders. The fallback warehouse is \"Stores\".",
-   "fieldname": "warehouse",
-   "fieldtype": "Link",
-   "label": "Warehouse",
-   "options": "Warehouse"
-  },
-  {
-   "fieldname": "column_break_14",
-   "fieldtype": "Column Break"
-  },
-  {
-   "description": "The fallback series is \"SO-WOO-\".",
-   "fieldname": "sales_order_series",
-   "fieldtype": "Select",
-   "label": "Sales Order Series"
-  },
-  {
-   "description": "This is the default UOM used for items and Sales orders. The fallback UOM is \"Nos\".",
-   "fieldname": "uom",
-   "fieldtype": "Link",
-   "label": "UOM",
-   "options": "UOM"
-  },
-  {
-   "fieldname": "endpoints",
-   "fieldtype": "Section Break",
-   "label": "Endpoints"
-  },
-  {
-   "fieldname": "endpoint",
-   "fieldtype": "Code",
-   "label": "Endpoint",
-   "read_only": 1
-  },
-  {
-   "description": "This company will be used to create Sales Orders.",
-   "fieldname": "company",
-   "fieldtype": "Link",
-   "label": "Company",
-   "options": "Company",
-   "reqd": 1
-  },
-  {
-   "description": "This is the default offset (days) for the Delivery Date in Sales Orders. The fallback offset is 7 days from the order placement date.",
-   "fieldname": "delivery_after_days",
-   "fieldtype": "Int",
-   "label": "Delivery After (Days)"
-  }
- ],
- "issingle": 1,
- "modified": "2019-11-04 00:45:21.232096",
- "modified_by": "Administrator",
- "module": "ERPNext Integrations",
- "name": "Woocommerce Settings",
- "owner": "Administrator",
- "permissions": [
-  {
-   "create": 1,
-   "email": 1,
-   "print": 1,
-   "read": 1,
-   "role": "System Manager",
-   "share": 1,
-   "write": 1
-  }
- ],
- "quick_entry": 1,
- "sort_field": "modified",
- "sort_order": "DESC",
- "track_changes": 1
-}
\ No newline at end of file
diff --git a/erpnext/erpnext_integrations/doctype/woocommerce_settings/woocommerce_settings.py b/erpnext/erpnext_integrations/doctype/woocommerce_settings/woocommerce_settings.py
deleted file mode 100644
index 4aa98aa..0000000
--- a/erpnext/erpnext_integrations/doctype/woocommerce_settings/woocommerce_settings.py
+++ /dev/null
@@ -1,87 +0,0 @@
-# Copyright (c) 2018, Frappe Technologies Pvt. Ltd. and contributors
-# For license information, please see license.txt
-
-
-from urllib.parse import urlparse
-
-import frappe
-from frappe import _
-from frappe.custom.doctype.custom_field.custom_field import create_custom_fields
-from frappe.model.document import Document
-from frappe.utils.nestedset import get_root_of
-
-
-class WoocommerceSettings(Document):
-	def validate(self):
-		self.validate_settings()
-		self.create_delete_custom_fields()
-		self.create_webhook_url()
-
-	def create_delete_custom_fields(self):
-		if self.enable_sync:
-			create_custom_fields(
-				{
-					("Customer", "Sales Order", "Item", "Address"): dict(
-						fieldname="woocommerce_id",
-						label="Woocommerce ID",
-						fieldtype="Data",
-						read_only=1,
-						print_hide=1,
-					),
-					("Customer", "Address"): dict(
-						fieldname="woocommerce_email",
-						label="Woocommerce Email",
-						fieldtype="Data",
-						read_only=1,
-						print_hide=1,
-					),
-				}
-			)
-
-			if not frappe.get_value("Item Group", {"name": _("WooCommerce Products")}):
-				item_group = frappe.new_doc("Item Group")
-				item_group.item_group_name = _("WooCommerce Products")
-				item_group.parent_item_group = get_root_of("Item Group")
-				item_group.insert()
-
-	def validate_settings(self):
-		if self.enable_sync:
-			if not self.secret:
-				self.set("secret", frappe.generate_hash())
-
-			if not self.woocommerce_server_url:
-				frappe.throw(_("Please enter Woocommerce Server URL"))
-
-			if not self.api_consumer_key:
-				frappe.throw(_("Please enter API Consumer Key"))
-
-			if not self.api_consumer_secret:
-				frappe.throw(_("Please enter API Consumer Secret"))
-
-	def create_webhook_url(self):
-		endpoint = "/api/method/erpnext.erpnext_integrations.connectors.woocommerce_connection.order"
-
-		try:
-			url = frappe.request.url
-		except RuntimeError:
-			# for CI Test to work
-			url = "http://localhost:8000"
-
-		server_url = "{uri.scheme}://{uri.netloc}".format(uri=urlparse(url))
-
-		delivery_url = server_url + endpoint
-		self.endpoint = delivery_url
-
-
-@frappe.whitelist()
-def generate_secret():
-	woocommerce_settings = frappe.get_doc("Woocommerce Settings")
-	woocommerce_settings.secret = frappe.generate_hash()
-	woocommerce_settings.save()
-
-
-@frappe.whitelist()
-def get_series():
-	return {
-		"sales_order_series": frappe.get_meta("Sales Order").get_options("naming_series") or "SO-WOO-",
-	}
diff --git a/erpnext/erpnext_integrations/stripe_integration.py b/erpnext/erpnext_integrations/stripe_integration.py
deleted file mode 100644
index 634e5c2..0000000
--- a/erpnext/erpnext_integrations/stripe_integration.py
+++ /dev/null
@@ -1,70 +0,0 @@
-# Copyright (c) 2018, Frappe Technologies Pvt. Ltd. and contributors
-# For license information, please see license.txt
-
-import frappe
-from frappe import _
-from frappe.integrations.utils import create_request_log
-
-from erpnext.utilities import payment_app_import_guard
-
-
-def create_stripe_subscription(gateway_controller, data):
-	with payment_app_import_guard():
-		import stripe
-
-	stripe_settings = frappe.get_doc("Stripe Settings", gateway_controller)
-	stripe_settings.data = frappe._dict(data)
-
-	stripe.api_key = stripe_settings.get_password(fieldname="secret_key", raise_exception=False)
-	stripe.default_http_client = stripe.http_client.RequestsClient()
-
-	try:
-		stripe_settings.integration_request = create_request_log(stripe_settings.data, "Host", "Stripe")
-		stripe_settings.payment_plans = frappe.get_doc(
-			"Payment Request", stripe_settings.data.reference_docname
-		).subscription_plans
-		return create_subscription_on_stripe(stripe_settings)
-
-	except Exception:
-		stripe_settings.log_error("Unable to create Stripe subscription")
-		return {
-			"redirect_to": frappe.redirect_to_message(
-				_("Server Error"),
-				_(
-					"It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account."
-				),
-			),
-			"status": 401,
-		}
-
-
-def create_subscription_on_stripe(stripe_settings):
-	with payment_app_import_guard():
-		import stripe
-
-	items = []
-	for payment_plan in stripe_settings.payment_plans:
-		plan = frappe.db.get_value("Subscription Plan", payment_plan.plan, "product_price_id")
-		items.append({"price": plan, "quantity": payment_plan.qty})
-
-	try:
-		customer = stripe.Customer.create(
-			source=stripe_settings.data.stripe_token_id,
-			description=stripe_settings.data.payer_name,
-			email=stripe_settings.data.payer_email,
-		)
-
-		subscription = stripe.Subscription.create(customer=customer, items=items)
-
-		if subscription.status == "active":
-			stripe_settings.integration_request.db_set("status", "Completed", update_modified=False)
-			stripe_settings.flags.status_changed_to = "Completed"
-
-		else:
-			stripe_settings.integration_request.db_set("status", "Failed", update_modified=False)
-			frappe.log_error(f"Stripe Subscription ID {subscription.id}: Payment failed")
-	except Exception:
-		stripe_settings.integration_request.db_set("status", "Failed", update_modified=False)
-		stripe_settings.log_error("Unable to create Stripe subscription")
-
-	return stripe_settings.finalize_request()
diff --git a/erpnext/erpnext_integrations/utils.py b/erpnext/erpnext_integrations/utils.py
index 981486e..8984f1b 100644
--- a/erpnext/erpnext_integrations/utils.py
+++ b/erpnext/erpnext_integrations/utils.py
@@ -6,8 +6,6 @@
 import frappe
 from frappe import _
 
-from erpnext import get_default_company
-
 
 def validate_webhooks_request(doctype, hmac_key, secret_key="secret"):
 	def innerfn(fn):
@@ -47,35 +45,6 @@
 	return server_url
 
 
-def create_mode_of_payment(gateway, payment_type="General"):
-	payment_gateway_account = frappe.db.get_value(
-		"Payment Gateway Account", {"payment_gateway": gateway}, ["payment_account"]
-	)
-
-	mode_of_payment = frappe.db.exists("Mode of Payment", gateway)
-	if not mode_of_payment and payment_gateway_account:
-		mode_of_payment = frappe.get_doc(
-			{
-				"doctype": "Mode of Payment",
-				"mode_of_payment": gateway,
-				"enabled": 1,
-				"type": payment_type,
-				"accounts": [
-					{
-						"doctype": "Mode of Payment Account",
-						"company": get_default_company(),
-						"default_account": payment_gateway_account,
-					}
-				],
-			}
-		)
-		mode_of_payment.insert(ignore_permissions=True)
-
-		return mode_of_payment
-	elif mode_of_payment:
-		return frappe.get_doc("Mode of Payment", mode_of_payment)
-
-
 def get_tracking_url(carrier, tracking_number):
 	# Return the formatted Tracking URL.
 	tracking_url = ""
diff --git a/erpnext/erpnext_integrations/workspace/erpnext_integrations/erpnext_integrations.json b/erpnext/erpnext_integrations/workspace/erpnext_integrations/erpnext_integrations.json
index 5c4be6f..510317f 100644
--- a/erpnext/erpnext_integrations/workspace/erpnext_integrations/erpnext_integrations.json
+++ b/erpnext/erpnext_integrations/workspace/erpnext_integrations/erpnext_integrations.json
@@ -1,6 +1,6 @@
 {
  "charts": [],
- "content": "[{\"id\":\"e88ADOJ7WC\",\"type\":\"header\",\"data\":{\"text\":\"<span class=\\\"h4\\\"><b>Integrations</b></span>\",\"col\":12}},{\"id\":\"G0tyx9WOfm\",\"type\":\"card\",\"data\":{\"card_name\":\"Backup\",\"col\":4}},{\"id\":\"nu4oSjH5Rd\",\"type\":\"card\",\"data\":{\"card_name\":\"Authentication\",\"col\":4}},{\"id\":\"nG8cdkpzoc\",\"type\":\"card\",\"data\":{\"card_name\":\"Google Services\",\"col\":4}},{\"id\":\"4hwuQn6E95\",\"type\":\"card\",\"data\":{\"card_name\":\"Communication Channels\",\"col\":4}},{\"id\":\"sEGAzTJRmq\",\"type\":\"card\",\"data\":{\"card_name\":\"Payments\",\"col\":4}},{\"id\":\"ZC6xu-cLBR\",\"type\":\"card\",\"data\":{\"card_name\":\"Settings\",\"col\":4}}]",
+ "content": "[{\"id\":\"e88ADOJ7WC\",\"type\":\"header\",\"data\":{\"text\":\"<span class=\\\"h4\\\"><b>Integrations</b></span>\",\"col\":12}},{\"id\":\"pZEYOOCdB0\",\"type\":\"shortcut\",\"data\":{\"shortcut_name\":\"Browse Apps\",\"col\":3}},{\"id\":\"St7AHbhVOr\",\"type\":\"spacer\",\"data\":{\"col\":12}},{\"id\":\"nu4oSjH5Rd\",\"type\":\"card\",\"data\":{\"card_name\":\"Authentication\",\"col\":4}},{\"id\":\"G0tyx9WOfm\",\"type\":\"card\",\"data\":{\"card_name\":\"Backup\",\"col\":4}},{\"id\":\"nG8cdkpzoc\",\"type\":\"card\",\"data\":{\"card_name\":\"Google Services\",\"col\":4}},{\"id\":\"4hwuQn6E95\",\"type\":\"card\",\"data\":{\"card_name\":\"Communication Channels\",\"col\":4}},{\"id\":\"sEGAzTJRmq\",\"type\":\"card\",\"data\":{\"card_name\":\"Payments\",\"col\":4}}]",
  "creation": "2020-08-20 19:30:48.138801",
  "custom_blocks": [],
  "docstatus": 0,
@@ -221,27 +221,9 @@
    "link_type": "DocType",
    "onboard": 0,
    "type": "Link"
-  },
-  {
-   "hidden": 0,
-   "is_query_report": 0,
-   "label": "Settings",
-   "link_count": 2,
-   "onboard": 0,
-   "type": "Card Break"
-  },
-  {
-   "hidden": 0,
-   "is_query_report": 0,
-   "label": "Woocommerce Settings",
-   "link_count": 0,
-   "link_to": "Woocommerce Settings",
-   "link_type": "DocType",
-   "onboard": 0,
-   "type": "Link"
   }
  ],
- "modified": "2023-05-24 14:47:26.984717",
+ "modified": "2023-08-29 15:48:59.010704",
  "modified_by": "Administrator",
  "module": "ERPNext Integrations",
  "name": "ERPNext Integrations",
@@ -253,6 +235,14 @@
  "restrict_to_domain": "",
  "roles": [],
  "sequence_id": 21.0,
- "shortcuts": [],
+ "shortcuts": [
+  {
+   "color": "Grey",
+   "doc_view": "List",
+   "label": "Browse Apps",
+   "type": "URL",
+   "url": "https://frappecloud.com/marketplace"
+  }
+ ],
  "title": "ERPNext Integrations"
 }
\ No newline at end of file
diff --git a/erpnext/hooks.py b/erpnext/hooks.py
index 7eaa146..2155699 100644
--- a/erpnext/hooks.py
+++ b/erpnext/hooks.py
@@ -198,7 +198,7 @@
 ]
 
 standard_portal_menu_items = [
-	{"title": "Projects", "route": "/project", "reference_doctype": "Project"},
+	{"title": "Projects", "route": "/project", "reference_doctype": "Project", "role": "Customer"},
 	{
 		"title": "Request for Quotations",
 		"route": "/rfq",
@@ -290,6 +290,7 @@
 	"Delivery Note": "erpnext.controllers.website_list_for_contact.has_website_permission",
 	"Issue": "erpnext.support.doctype.issue.issue.has_website_permission",
 	"Timesheet": "erpnext.controllers.website_list_for_contact.has_website_permission",
+	"Project": "erpnext.controllers.website_list_for_contact.has_website_permission",
 }
 
 before_tests = "erpnext.setup.utils.before_tests"
@@ -422,9 +423,6 @@
 			"erpnext.stock.reorder_item.reorder_item",
 		],
 	},
-	"all": [
-		"erpnext.crm.doctype.social_media_post.social_media_post.process_scheduled_social_media_posts",
-	],
 	"hourly": [
 		"erpnext.erpnext_integrations.doctype.plaid_settings.plaid_settings.automatic_synchronization",
 		"erpnext.projects.doctype.project.project.project_status_update_reminder",
@@ -432,7 +430,7 @@
 		"erpnext.projects.doctype.project.project.collect_project_status",
 	],
 	"hourly_long": [
-		"erpnext.accounts.doctype.subscription.subscription.process_all",
+		"erpnext.accounts.doctype.process_subscription.process_subscription.create_subscription_process",
 		"erpnext.stock.doctype.repost_item_valuation.repost_item_valuation.repost_entries",
 		"erpnext.bulk_transaction.doctype.bulk_transaction_log.bulk_transaction_log.retry_failing_transaction",
 	],
@@ -557,8 +555,6 @@
 	"erpnext.accounts.doctype.bank_reconciliation_tool.bank_reconciliation_tool.get_matching_queries"
 )
 
-get_matching_vouchers_for_bank_reconciliation = "erpnext.accounts.doctype.bank_reconciliation_tool.bank_reconciliation_tool.get_matching_vouchers_for_bank_reconciliation"
-
 get_amounts_not_reflected_in_system_for_bank_reconciliation_statement = "erpnext.accounts.report.bank_reconciliation_statement.bank_reconciliation_statement.get_amounts_not_reflected_in_system_for_bank_reconciliation_statement"
 
 get_payment_entries_for_bank_clearance = (
diff --git a/erpnext/manufacturing/doctype/bom/bom.json b/erpnext/manufacturing/doctype/bom/bom.json
index d024022..e8d3542 100644
--- a/erpnext/manufacturing/doctype/bom/bom.json
+++ b/erpnext/manufacturing/doctype/bom/bom.json
@@ -78,6 +78,10 @@
   "show_items",
   "show_operations",
   "web_long_description",
+  "reference_section",
+  "bom_creator",
+  "bom_creator_item",
+  "column_break_oxbz",
   "amended_from",
   "connections_tab"
  ],
@@ -233,7 +237,7 @@
    "fieldname": "rm_cost_as_per",
    "fieldtype": "Select",
    "label": "Rate Of Materials Based On",
-   "options": "Valuation Rate\nLast Purchase Rate\nPrice List"
+   "options": "Valuation Rate\nLast Purchase Rate\nPrice List\nManual"
   },
   {
    "allow_on_submit": 1,
@@ -599,6 +603,32 @@
    "fieldname": "operating_cost_per_bom_quantity",
    "fieldtype": "Currency",
    "label": "Operating Cost Per BOM Quantity"
+  },
+  {
+   "fieldname": "reference_section",
+   "fieldtype": "Section Break",
+   "label": "Reference"
+  },
+  {
+   "fieldname": "bom_creator",
+   "fieldtype": "Link",
+   "label": "BOM Creator",
+   "no_copy": 1,
+   "options": "BOM Creator",
+   "print_hide": 1,
+   "read_only": 1
+  },
+  {
+   "fieldname": "bom_creator_item",
+   "fieldtype": "Data",
+   "label": "BOM Creator Item",
+   "no_copy": 1,
+   "print_hide": 1,
+   "read_only": 1
+  },
+  {
+   "fieldname": "column_break_oxbz",
+   "fieldtype": "Column Break"
   }
  ],
  "icon": "fa fa-sitemap",
@@ -606,7 +636,7 @@
  "image_field": "image",
  "is_submittable": 1,
  "links": [],
- "modified": "2023-04-06 12:47:58.514795",
+ "modified": "2023-08-07 11:38:08.152294",
  "modified_by": "Administrator",
  "module": "Manufacturing",
  "name": "BOM",
diff --git a/erpnext/manufacturing/doctype/bom/bom.py b/erpnext/manufacturing/doctype/bom/bom.py
index 8058a5f..0231668 100644
--- a/erpnext/manufacturing/doctype/bom/bom.py
+++ b/erpnext/manufacturing/doctype/bom/bom.py
@@ -206,6 +206,7 @@
 
 	def on_submit(self):
 		self.manage_default_bom()
+		self.update_bom_creator_status()
 
 	def on_cancel(self):
 		self.db_set("is_active", 0)
@@ -214,6 +215,23 @@
 		# check if used in any other bom
 		self.validate_bom_links()
 		self.manage_default_bom()
+		self.update_bom_creator_status()
+
+	def update_bom_creator_status(self):
+		if not self.bom_creator:
+			return
+
+		if self.bom_creator_item:
+			frappe.db.set_value(
+				"BOM Creator Item",
+				self.bom_creator_item,
+				"bom_created",
+				1 if self.docstatus == 1 else 0,
+				update_modified=False,
+			)
+
+		doc = frappe.get_doc("BOM Creator", self.bom_creator)
+		doc.set_status(save=True)
 
 	def on_update_after_submit(self):
 		self.validate_bom_links()
@@ -662,18 +680,19 @@
 
 		for d in self.get("items"):
 			old_rate = d.rate
-			d.rate = self.get_rm_rate(
-				{
-					"company": self.company,
-					"item_code": d.item_code,
-					"bom_no": d.bom_no,
-					"qty": d.qty,
-					"uom": d.uom,
-					"stock_uom": d.stock_uom,
-					"conversion_factor": d.conversion_factor,
-					"sourced_by_supplier": d.sourced_by_supplier,
-				}
-			)
+			if self.rm_cost_as_per != "Manual":
+				d.rate = self.get_rm_rate(
+					{
+						"company": self.company,
+						"item_code": d.item_code,
+						"bom_no": d.bom_no,
+						"qty": d.qty,
+						"uom": d.uom,
+						"stock_uom": d.stock_uom,
+						"conversion_factor": d.conversion_factor,
+						"sourced_by_supplier": d.sourced_by_supplier,
+					}
+				)
 
 			d.base_rate = flt(d.rate) * flt(self.conversion_rate)
 			d.amount = flt(d.rate, d.precision("rate")) * flt(d.qty, d.precision("qty"))
@@ -964,7 +983,12 @@
 			.as_("valuation_rate")
 		)
 		.where((bin_table.item_code == item_code) & (wh_table.company == company))
-	).run(as_dict=True)[0]
+	)
+
+	if data.get("set_rate_based_on_warehouse") and data.get("warehouse"):
+		item_valuation = item_valuation.where(bin_table.warehouse == data.get("warehouse"))
+
+	item_valuation = item_valuation.run(as_dict=True)[0]
 
 	valuation_rate = item_valuation.get("valuation_rate")
 
diff --git a/erpnext/crm/doctype/linkedin_settings/__init__.py b/erpnext/manufacturing/doctype/bom_creator/__init__.py
similarity index 100%
copy from erpnext/crm/doctype/linkedin_settings/__init__.py
copy to erpnext/manufacturing/doctype/bom_creator/__init__.py
diff --git a/erpnext/manufacturing/doctype/bom_creator/bom_creator.js b/erpnext/manufacturing/doctype/bom_creator/bom_creator.js
new file mode 100644
index 0000000..0cf2b51
--- /dev/null
+++ b/erpnext/manufacturing/doctype/bom_creator/bom_creator.js
@@ -0,0 +1,214 @@
+// Copyright (c) 2023, Frappe Technologies Pvt. Ltd. and contributors
+// For license information, please see license.txt
+frappe.provide("erpnext.bom");
+
+frappe.ui.form.on("BOM Creator", {
+	setup(frm) {
+		frm.trigger("set_queries");
+	},
+
+	setup_bom_creator(frm) {
+		frm.dashboard.clear_comment();
+
+		if (!frm.is_new()) {
+			if ((!frappe.bom_configurator
+				|| frappe.bom_configurator.bom_configurator !== frm.doc.name)) {
+				frm.trigger("build_tree");
+			}
+		} else {
+			let $parent = $(frm.fields_dict["bom_creator"].wrapper);
+			$parent.empty();
+			frm.trigger("make_new_entry");
+		}
+	},
+
+	build_tree(frm) {
+		let $parent = $(frm.fields_dict["bom_creator"].wrapper);
+		$parent.empty();
+		frm.toggle_enable("item_code", false);
+
+		frappe.require('bom_configurator.bundle.js').then(() => {
+			frappe.bom_configurator = new frappe.ui.BOMConfigurator({
+				wrapper: $parent,
+				page: $parent,
+				frm: frm,
+				bom_configurator: frm.doc.name,
+			});
+		});
+	},
+
+	make_new_entry(frm) {
+		let dialog = new frappe.ui.Dialog({
+			title: __("Multi-level BOM Creator"),
+			fields: [
+				{
+					label: __("Name"),
+					fieldtype: "Data",
+					fieldname: "name",
+					reqd: 1
+				},
+				{ fieldtype: "Column Break" },
+				{
+					label: __("Company"),
+					fieldtype: "Link",
+					fieldname: "company",
+					options: "Company",
+					reqd: 1,
+					default: frappe.defaults.get_user_default("Company"),
+				},
+				{ fieldtype: "Section Break" },
+				{
+					label: __("Item Code (Final Product)"),
+					fieldtype: "Link",
+					fieldname: "item_code",
+					options: "Item",
+					reqd: 1
+				},
+				{ fieldtype: "Column Break" },
+				{
+					label: __("Quantity"),
+					fieldtype: "Float",
+					fieldname: "qty",
+					reqd: 1,
+					default: 1.0
+				},
+				{ fieldtype: "Section Break" },
+				{
+					label: __("Currency"),
+					fieldtype: "Link",
+					fieldname: "currency",
+					options: "Currency",
+					reqd: 1,
+					default: frappe.defaults.get_global_default("currency")
+				},
+				{ fieldtype: "Column Break" },
+				{
+					label: __("Conversion Rate"),
+					fieldtype: "Float",
+					fieldname: "conversion_rate",
+					reqd: 1,
+					default: 1.0
+				},
+			],
+			primary_action_label: __("Create"),
+			primary_action: (values) => {
+				values.doctype = frm.doc.doctype;
+				frappe.db
+					.insert(values)
+					.then((doc) => {
+						frappe.set_route("Form", doc.doctype, doc.name);
+					});
+			}
+		})
+
+		dialog.show();
+	},
+
+	set_queries(frm) {
+		frm.set_query("bom_no", "items", function(doc, cdt, cdn) {
+			let item = frappe.get_doc(cdt, cdn);
+			return {
+				filters: {
+					item: item.item_code,
+				}
+			}
+		});
+	},
+
+	refresh(frm) {
+		frm.trigger("setup_bom_creator");
+		frm.trigger("set_root_item");
+		frm.trigger("add_custom_buttons");
+	},
+
+	set_root_item(frm) {
+		if (frm.is_new() && frm.doc.items?.length) {
+			frappe.model.set_value(frm.doc.items[0].doctype,
+				frm.doc.items[0].name, "is_root", 1);
+		}
+	},
+
+	add_custom_buttons(frm) {
+		if (!frm.is_new()) {
+			frm.add_custom_button(__("Rebuild Tree"), () => {
+				frm.trigger("build_tree");
+			});
+		}
+
+		if (frm.doc.docstatus === 1 && frm.doc.status !== "Completed") {
+			frm.add_custom_button(__("Create Multi-level BOM"), () => {
+				frm.trigger("create_multi_level_bom");
+			});
+		}
+	},
+
+	create_multi_level_bom(frm) {
+		frm.call({
+			method: "enqueue_create_boms",
+			doc: frm.doc,
+		})
+	}
+});
+
+frappe.ui.form.on("BOM Creator Item", {
+	item_code(frm, cdt, cdn) {
+		let item = frappe.get_doc(cdt, cdn);
+		if (item.item_code && item.is_root) {
+			frappe.model.set_value(cdt, cdn, "fg_item", item.item_code);
+		}
+	},
+
+	do_not_explode(frm, cdt, cdn) {
+		let item = frappe.get_doc(cdt, cdn);
+		if (!item.do_not_explode) {
+			frm.call({
+				method: "get_default_bom",
+				doc: frm.doc,
+				args: {
+					item_code: item.item_code
+				},
+				callback(r) {
+					if (r.message) {
+						frappe.model.set_value(cdt, cdn, "bom_no", r.message);
+					}
+				}
+			})
+		} else {
+			frappe.model.set_value(cdt, cdn, "bom_no", "");
+		}
+	}
+});
+
+
+erpnext.bom.BomConfigurator = class BomConfigurator extends erpnext.TransactionController {
+	conversion_rate(doc) {
+		if(this.frm.doc.currency === this.get_company_currency()) {
+			this.frm.set_value("conversion_rate", 1.0);
+		} else {
+			erpnext.bom.update_cost(doc);
+		}
+	}
+
+	buying_price_list(doc) {
+		this.apply_price_list();
+	}
+
+	plc_conversion_rate(doc) {
+		if (!this.in_apply_price_list) {
+			this.apply_price_list(null, true);
+		}
+	}
+
+	conversion_factor(doc, cdt, cdn) {
+		if (frappe.meta.get_docfield(cdt, "stock_qty", cdn)) {
+			var item = frappe.get_doc(cdt, cdn);
+			frappe.model.round_floats_in(item, ["qty", "conversion_factor"]);
+			item.stock_qty = flt(item.qty * item.conversion_factor, precision("stock_qty", item));
+			refresh_field("stock_qty", item.name, item.parentfield);
+			this.toggle_conversion_factor(item);
+			this.frm.events.update_cost(this.frm);
+		}
+	}
+};
+
+extend_cscript(cur_frm.cscript, new erpnext.bom.BomConfigurator({frm: cur_frm}));
\ No newline at end of file
diff --git a/erpnext/manufacturing/doctype/bom_creator/bom_creator.json b/erpnext/manufacturing/doctype/bom_creator/bom_creator.json
new file mode 100644
index 0000000..fb4c6c5
--- /dev/null
+++ b/erpnext/manufacturing/doctype/bom_creator/bom_creator.json
@@ -0,0 +1,330 @@
+{
+ "actions": [],
+ "allow_import": 1,
+ "autoname": "prompt",
+ "creation": "2023-07-18 14:56:34.477800",
+ "default_view": "List",
+ "doctype": "DocType",
+ "document_type": "Setup",
+ "engine": "InnoDB",
+ "field_order": [
+  "tab_2_tab",
+  "bom_creator",
+  "details_tab",
+  "section_break_ylsl",
+  "item_code",
+  "item_name",
+  "item_group",
+  "column_break_ikj7",
+  "qty",
+  "project",
+  "uom",
+  "raw_materials_tab",
+  "currency_detail",
+  "rm_cost_as_per",
+  "set_rate_based_on_warehouse",
+  "buying_price_list",
+  "price_list_currency",
+  "plc_conversion_rate",
+  "column_break_ivyw",
+  "currency",
+  "conversion_rate",
+  "section_break_zcfg",
+  "default_warehouse",
+  "column_break_tzot",
+  "company",
+  "materials_section",
+  "items",
+  "costing_detail",
+  "raw_material_cost",
+  "remarks_tab",
+  "remarks",
+  "section_break_yixm",
+  "status",
+  "column_break_irab",
+  "error_log",
+  "connections_tab",
+  "amended_from"
+ ],
+ "fields": [
+  {
+   "fieldname": "company",
+   "fieldtype": "Link",
+   "label": "Company",
+   "options": "Company",
+   "remember_last_selected_value": 1,
+   "reqd": 1
+  },
+  {
+   "fieldname": "currency_detail",
+   "fieldtype": "Section Break",
+   "label": "Costing"
+  },
+  {
+   "allow_on_submit": 1,
+   "default": "Valuation Rate",
+   "fieldname": "rm_cost_as_per",
+   "fieldtype": "Select",
+   "label": "Rate Of Materials Based On",
+   "options": "Valuation Rate\nLast Purchase Rate\nPrice List\nManual",
+   "reqd": 1
+  },
+  {
+   "allow_on_submit": 1,
+   "depends_on": "eval:doc.rm_cost_as_per===\"Price List\"",
+   "fieldname": "buying_price_list",
+   "fieldtype": "Link",
+   "label": "Price List",
+   "options": "Price List"
+  },
+  {
+   "allow_on_submit": 1,
+   "depends_on": "eval:doc.rm_cost_as_per=='Price List'",
+   "fieldname": "price_list_currency",
+   "fieldtype": "Link",
+   "label": "Price List Currency",
+   "options": "Currency",
+   "print_hide": 1,
+   "read_only": 1
+  },
+  {
+   "allow_on_submit": 1,
+   "depends_on": "eval:doc.rm_cost_as_per=='Price List'",
+   "fieldname": "plc_conversion_rate",
+   "fieldtype": "Float",
+   "label": "Price List Exchange Rate"
+  },
+  {
+   "fieldname": "column_break_ivyw",
+   "fieldtype": "Column Break"
+  },
+  {
+   "fieldname": "currency",
+   "fieldtype": "Link",
+   "in_list_view": 1,
+   "label": "Currency",
+   "options": "Currency",
+   "reqd": 1
+  },
+  {
+   "default": "1",
+   "fieldname": "conversion_rate",
+   "fieldtype": "Float",
+   "label": "Conversion Rate",
+   "precision": "9"
+  },
+  {
+   "fieldname": "materials_section",
+   "fieldtype": "Section Break",
+   "oldfieldtype": "Section Break"
+  },
+  {
+   "allow_bulk_edit": 1,
+   "fieldname": "items",
+   "fieldtype": "Table",
+   "label": "Items",
+   "oldfieldname": "bom_materials",
+   "oldfieldtype": "Table",
+   "options": "BOM Creator Item"
+  },
+  {
+   "fieldname": "costing_detail",
+   "fieldtype": "Section Break",
+   "label": "Costing Details"
+  },
+  {
+   "fieldname": "raw_material_cost",
+   "fieldtype": "Currency",
+   "in_list_view": 1,
+   "label": "Total Cost",
+   "no_copy": 1,
+   "options": "currency",
+   "read_only": 1
+  },
+  {
+   "fieldname": "remarks",
+   "fieldtype": "Text Editor",
+   "label": "Remarks"
+  },
+  {
+   "fieldname": "column_break_ikj7",
+   "fieldtype": "Column Break"
+  },
+  {
+   "fieldname": "project",
+   "fieldtype": "Link",
+   "label": "Project",
+   "options": "Project"
+  },
+  {
+   "fieldname": "item_code",
+   "fieldtype": "Link",
+   "in_list_view": 1,
+   "in_standard_filter": 1,
+   "label": "Finished Good",
+   "options": "Item",
+   "reqd": 1
+  },
+  {
+   "fieldname": "qty",
+   "fieldtype": "Float",
+   "label": "Quantity",
+   "reqd": 1
+  },
+  {
+   "fetch_from": "item_code.item_name",
+   "fieldname": "item_name",
+   "fieldtype": "Data",
+   "label": "Item Name"
+  },
+  {
+   "fetch_from": "item_code.stock_uom",
+   "fieldname": "uom",
+   "fieldtype": "Link",
+   "label": "UOM",
+   "options": "UOM"
+  },
+  {
+   "fieldname": "tab_2_tab",
+   "fieldtype": "Tab Break",
+   "label": "BOM Tree"
+  },
+  {
+   "fieldname": "details_tab",
+   "fieldtype": "Tab Break",
+   "label": "Final Product"
+  },
+  {
+   "fieldname": "raw_materials_tab",
+   "fieldtype": "Tab Break",
+   "label": "Sub Assemblies & Raw Materials"
+  },
+  {
+   "fieldname": "remarks_tab",
+   "fieldtype": "Tab Break",
+   "label": "Remarks"
+  },
+  {
+   "fieldname": "connections_tab",
+   "fieldtype": "Tab Break",
+   "label": "Connections",
+   "show_dashboard": 1
+  },
+  {
+   "fetch_from": "item_code.item_group",
+   "fieldname": "item_group",
+   "fieldtype": "Link",
+   "label": "Item Group",
+   "options": "Item Group"
+  },
+  {
+   "fieldname": "amended_from",
+   "fieldtype": "Link",
+   "label": "Amended From",
+   "no_copy": 1,
+   "options": "BOM Creator",
+   "print_hide": 1,
+   "read_only": 1
+  },
+  {
+   "fieldname": "section_break_zcfg",
+   "fieldtype": "Section Break",
+   "label": "Warehouse"
+  },
+  {
+   "fieldname": "column_break_tzot",
+   "fieldtype": "Column Break"
+  },
+  {
+   "fieldname": "default_warehouse",
+   "fieldtype": "Link",
+   "label": "Default Source Warehouse",
+   "options": "Warehouse"
+  },
+  {
+   "fieldname": "bom_creator",
+   "fieldtype": "HTML"
+  },
+  {
+   "fieldname": "section_break_ylsl",
+   "fieldtype": "Section Break"
+  },
+  {
+   "default": "0",
+   "depends_on": "eval:doc.rm_cost_as_per === \"Valuation Rate\"",
+   "fieldname": "set_rate_based_on_warehouse",
+   "fieldtype": "Check",
+   "label": "Set Valuation Rate Based on Source Warehouse"
+  },
+  {
+   "fieldname": "section_break_yixm",
+   "fieldtype": "Section Break"
+  },
+  {
+   "default": "Draft",
+   "fieldname": "status",
+   "fieldtype": "Select",
+   "label": "Status",
+   "no_copy": 1,
+   "options": "Draft\nSubmitted\nIn Progress\nCompleted\nFailed\nCancelled",
+   "read_only": 1
+  },
+  {
+   "fieldname": "column_break_irab",
+   "fieldtype": "Column Break"
+  },
+  {
+   "fieldname": "error_log",
+   "fieldtype": "Text",
+   "label": "Error Log",
+   "read_only": 1
+  }
+ ],
+ "icon": "fa fa-sitemap",
+ "is_submittable": 1,
+ "links": [
+  {
+   "link_doctype": "BOM",
+   "link_fieldname": "bom_creator"
+  }
+ ],
+ "modified": "2023-08-07 15:45:06.176313",
+ "modified_by": "Administrator",
+ "module": "Manufacturing",
+ "name": "BOM Creator",
+ "naming_rule": "Set by user",
+ "owner": "Administrator",
+ "permissions": [
+  {
+   "cancel": 1,
+   "create": 1,
+   "delete": 1,
+   "email": 1,
+   "print": 1,
+   "read": 1,
+   "report": 1,
+   "role": "Manufacturing Manager",
+   "share": 1,
+   "submit": 1,
+   "write": 1
+  },
+  {
+   "cancel": 1,
+   "create": 1,
+   "delete": 1,
+   "email": 1,
+   "print": 1,
+   "read": 1,
+   "report": 1,
+   "role": "Manufacturing User",
+   "share": 1,
+   "submit": 1,
+   "write": 1
+  }
+ ],
+ "show_name_in_global_search": 1,
+ "sort_field": "modified",
+ "sort_order": "DESC",
+ "states": [],
+ "track_changes": 1
+}
\ No newline at end of file
diff --git a/erpnext/manufacturing/doctype/bom_creator/bom_creator.py b/erpnext/manufacturing/doctype/bom_creator/bom_creator.py
new file mode 100644
index 0000000..058caa3
--- /dev/null
+++ b/erpnext/manufacturing/doctype/bom_creator/bom_creator.py
@@ -0,0 +1,437 @@
+# Copyright (c) 2023, Frappe Technologies Pvt. Ltd. and contributors
+# For license information, please see license.txt
+
+from collections import OrderedDict
+
+import frappe
+from frappe import _
+from frappe.model.document import Document
+from frappe.utils import flt
+
+from erpnext.manufacturing.doctype.bom.bom import get_bom_item_rate
+
+BOM_FIELDS = [
+	"company",
+	"rm_cost_as_per",
+	"project",
+	"currency",
+	"conversion_rate",
+	"buying_price_list",
+]
+
+BOM_ITEM_FIELDS = [
+	"item_code",
+	"qty",
+	"uom",
+	"rate",
+	"stock_qty",
+	"stock_uom",
+	"conversion_factor",
+	"do_not_explode",
+]
+
+
+class BOMCreator(Document):
+	def before_save(self):
+		self.set_status()
+		self.set_is_expandable()
+		self.set_conversion_factor()
+		self.set_reference_id()
+		self.set_rate_for_items()
+
+	def validate(self):
+		self.validate_items()
+
+	def validate_items(self):
+		for row in self.items:
+			if row.is_expandable and row.item_code == self.item_code:
+				frappe.throw(_("Item {0} cannot be added as a sub-assembly of itself").format(row.item_code))
+
+	def set_status(self, save=False):
+		self.status = {
+			0: "Draft",
+			1: "Submitted",
+			2: "Cancelled",
+		}[self.docstatus]
+
+		self.set_status_completed()
+		if save:
+			self.db_set("status", self.status)
+
+	def set_status_completed(self):
+		if self.docstatus != 1:
+			return
+
+		has_completed = True
+		for row in self.items:
+			if row.is_expandable and not row.bom_created:
+				has_completed = False
+				break
+
+		if not frappe.get_cached_value(
+			"BOM", {"bom_creator": self.name, "item": self.item_code}, "name"
+		):
+			has_completed = False
+
+		if has_completed:
+			self.status = "Completed"
+
+	def on_cancel(self):
+		self.set_status(True)
+
+	def set_conversion_factor(self):
+		for row in self.items:
+			row.conversion_factor = 1.0
+
+	def before_submit(self):
+		self.validate_fields()
+		self.set_status()
+
+	def set_reference_id(self):
+		parent_reference = {row.idx: row.name for row in self.items}
+
+		for row in self.items:
+			if row.fg_reference_id:
+				continue
+
+			if row.parent_row_no:
+				row.fg_reference_id = parent_reference.get(row.parent_row_no)
+
+	@frappe.whitelist()
+	def add_boms(self):
+		self.submit()
+
+	def set_rate_for_items(self):
+		if self.rm_cost_as_per == "Manual":
+			return
+
+		amount = self.get_raw_material_cost()
+		self.raw_material_cost = amount
+
+	def get_raw_material_cost(self, fg_reference_id=None, amount=0):
+		if not fg_reference_id:
+			fg_reference_id = self.name
+
+		for row in self.items:
+			if row.fg_reference_id != fg_reference_id:
+				continue
+
+			if not row.is_expandable:
+				row.rate = get_bom_item_rate(
+					{
+						"company": self.company,
+						"item_code": row.item_code,
+						"bom_no": "",
+						"qty": row.qty,
+						"uom": row.uom,
+						"stock_uom": row.stock_uom,
+						"conversion_factor": row.conversion_factor,
+						"sourced_by_supplier": row.sourced_by_supplier,
+					},
+					self,
+				)
+
+				row.amount = flt(row.rate) * flt(row.qty)
+
+			else:
+				row.amount = 0.0
+				row.amount = self.get_raw_material_cost(row.name, row.amount)
+				row.rate = flt(row.amount) / (flt(row.qty) * flt(row.conversion_factor))
+
+			amount += flt(row.amount)
+
+		return amount
+
+	def set_is_expandable(self):
+		fg_items = [row.fg_item for row in self.items if row.fg_item != self.item_code]
+		for row in self.items:
+			row.is_expandable = 0
+			if row.item_code in fg_items:
+				row.is_expandable = 1
+
+	def validate_fields(self):
+		fields = {
+			"items": "Items",
+		}
+
+		for field, label in fields.items():
+			if not self.get(field):
+				frappe.throw(_("Please set {0} in BOM Creator {1}").format(label, self.name))
+
+	def on_submit(self):
+		self.enqueue_create_boms()
+
+	@frappe.whitelist()
+	def enqueue_create_boms(self):
+		frappe.enqueue(
+			self.create_boms,
+			queue="short",
+			timeout=600,
+			is_async=True,
+		)
+
+		frappe.msgprint(
+			_("BOMs creation has been enqueued, kindly check the status after some time"), alert=True
+		)
+
+	def create_boms(self):
+		"""
+		Sample data structure of production_item_wise_rm
+		production_item_wise_rm = {
+		        (fg_item_code, name): {
+		                "items": [],
+		                "bom_no": "",
+		                "fg_item_data": {}
+		        }
+		}
+		"""
+
+		self.db_set("status", "In Progress")
+		production_item_wise_rm = OrderedDict({})
+		production_item_wise_rm.setdefault(
+			(self.item_code, self.name), frappe._dict({"items": [], "bom_no": "", "fg_item_data": self})
+		)
+
+		for row in self.items:
+			if row.is_expandable:
+				if (row.item_code, row.name) not in production_item_wise_rm:
+					production_item_wise_rm.setdefault(
+						(row.item_code, row.name), frappe._dict({"items": [], "bom_no": "", "fg_item_data": row})
+					)
+
+			production_item_wise_rm[(row.fg_item, row.fg_reference_id)]["items"].append(row)
+
+		reverse_tree = OrderedDict(reversed(list(production_item_wise_rm.items())))
+
+		try:
+			for d in reverse_tree:
+				fg_item_data = production_item_wise_rm.get(d).fg_item_data
+				self.create_bom(fg_item_data, production_item_wise_rm)
+
+			frappe.msgprint(_("BOMs created successfully"))
+		except Exception:
+			traceback = frappe.get_traceback()
+			self.db_set(
+				{
+					"status": "Failed",
+					"error_log": traceback,
+				}
+			)
+
+			frappe.msgprint(_("BOMs creation failed"))
+
+	def create_bom(self, row, production_item_wise_rm):
+		bom_creator_item = row.name if row.name != self.name else ""
+		if frappe.db.exists(
+			"BOM",
+			{
+				"bom_creator": self.name,
+				"item": row.item_code,
+				"bom_creator_item": bom_creator_item,
+				"docstatus": 1,
+			},
+		):
+			return
+
+		bom = frappe.new_doc("BOM")
+		bom.update(
+			{
+				"item": row.item_code,
+				"bom_type": "Production",
+				"quantity": row.qty,
+				"allow_alternative_item": 1,
+				"bom_creator": self.name,
+				"bom_creator_item": bom_creator_item,
+				"rm_cost_as_per": "Manual",
+			}
+		)
+
+		for field in BOM_FIELDS:
+			if self.get(field):
+				bom.set(field, self.get(field))
+
+		for item in production_item_wise_rm[(row.item_code, row.name)]["items"]:
+			bom_no = ""
+			item.do_not_explode = 1
+			if (item.item_code, item.name) in production_item_wise_rm:
+				bom_no = production_item_wise_rm.get((item.item_code, item.name)).bom_no
+				item.do_not_explode = 0
+
+			item_args = {}
+			for field in BOM_ITEM_FIELDS:
+				item_args[field] = item.get(field)
+
+			item_args.update(
+				{
+					"bom_no": bom_no,
+					"allow_alternative_item": 1,
+					"allow_scrap_items": 1,
+					"include_item_in_manufacturing": 1,
+				}
+			)
+
+			bom.append("items", item_args)
+
+		bom.save(ignore_permissions=True)
+		bom.submit()
+
+		production_item_wise_rm[(row.item_code, row.name)].bom_no = bom.name
+
+	@frappe.whitelist()
+	def get_default_bom(self, item_code) -> str:
+		return frappe.get_cached_value("Item", item_code, "default_bom")
+
+
+@frappe.whitelist()
+def get_children(doctype=None, parent=None, **kwargs):
+	if isinstance(kwargs, str):
+		kwargs = frappe.parse_json(kwargs)
+
+	if isinstance(kwargs, dict):
+		kwargs = frappe._dict(kwargs)
+
+	fields = [
+		"item_code as value",
+		"is_expandable as expandable",
+		"parent as parent_id",
+		"qty",
+		"idx",
+		"'BOM Creator Item' as doctype",
+		"name",
+		"uom",
+		"rate",
+		"amount",
+	]
+
+	query_filters = {
+		"fg_item": parent,
+		"parent": kwargs.parent_id,
+	}
+
+	if kwargs.name:
+		query_filters["name"] = kwargs.name
+
+	return frappe.get_all("BOM Creator Item", fields=fields, filters=query_filters, order_by="idx")
+
+
+@frappe.whitelist()
+def add_item(**kwargs):
+	if isinstance(kwargs, str):
+		kwargs = frappe.parse_json(kwargs)
+
+	if isinstance(kwargs, dict):
+		kwargs = frappe._dict(kwargs)
+
+	doc = frappe.get_doc("BOM Creator", kwargs.parent)
+	item_info = get_item_details(kwargs.item_code)
+	kwargs.update(
+		{
+			"uom": item_info.stock_uom,
+			"stock_uom": item_info.stock_uom,
+			"conversion_factor": 1,
+		}
+	)
+
+	doc.append("items", kwargs)
+	doc.save()
+
+	return doc
+
+
+@frappe.whitelist()
+def add_sub_assembly(**kwargs):
+	if isinstance(kwargs, str):
+		kwargs = frappe.parse_json(kwargs)
+
+	if isinstance(kwargs, dict):
+		kwargs = frappe._dict(kwargs)
+
+	doc = frappe.get_doc("BOM Creator", kwargs.parent)
+	bom_item = frappe.parse_json(kwargs.bom_item)
+
+	name = kwargs.fg_reference_id
+	parent_row_no = ""
+	if not kwargs.convert_to_sub_assembly:
+		item_info = get_item_details(bom_item.item_code)
+		item_row = doc.append(
+			"items",
+			{
+				"item_code": bom_item.item_code,
+				"qty": bom_item.qty,
+				"uom": item_info.stock_uom,
+				"fg_item": kwargs.fg_item,
+				"conversion_factor": 1,
+				"fg_reference_id": name,
+				"stock_qty": bom_item.qty,
+				"fg_reference_id": name,
+				"do_not_explode": 1,
+				"is_expandable": 1,
+				"stock_uom": item_info.stock_uom,
+			},
+		)
+
+		parent_row_no = item_row.idx
+		name = ""
+
+	for row in bom_item.get("items"):
+		row = frappe._dict(row)
+		item_info = get_item_details(row.item_code)
+		doc.append(
+			"items",
+			{
+				"item_code": row.item_code,
+				"qty": row.qty,
+				"fg_item": bom_item.item_code,
+				"uom": item_info.stock_uom,
+				"fg_reference_id": name,
+				"parent_row_no": parent_row_no,
+				"conversion_factor": 1,
+				"do_not_explode": 1,
+				"stock_qty": row.qty,
+				"stock_uom": item_info.stock_uom,
+			},
+		)
+
+	doc.save()
+
+	return doc
+
+
+def get_item_details(item_code):
+	return frappe.get_cached_value(
+		"Item", item_code, ["item_name", "description", "image", "stock_uom", "default_bom"], as_dict=1
+	)
+
+
+@frappe.whitelist()
+def delete_node(**kwargs):
+	if isinstance(kwargs, str):
+		kwargs = frappe.parse_json(kwargs)
+
+	if isinstance(kwargs, dict):
+		kwargs = frappe._dict(kwargs)
+
+	items = get_children(parent=kwargs.fg_item, parent_id=kwargs.parent)
+	if kwargs.docname:
+		frappe.delete_doc("BOM Creator Item", kwargs.docname)
+
+	for item in items:
+		frappe.delete_doc("BOM Creator Item", item.name)
+		if item.expandable:
+			delete_node(fg_item=item.value, parent=item.parent_id)
+
+	doc = frappe.get_doc("BOM Creator", kwargs.parent)
+	doc.set_rate_for_items()
+	doc.save()
+
+	return doc
+
+
+@frappe.whitelist()
+def edit_qty(doctype, docname, qty, parent):
+	frappe.db.set_value(doctype, docname, "qty", qty)
+	doc = frappe.get_doc("BOM Creator", parent)
+	doc.set_rate_for_items()
+	doc.save()
+
+	return doc
diff --git a/erpnext/manufacturing/doctype/bom_creator/bom_creator_list.js b/erpnext/manufacturing/doctype/bom_creator/bom_creator_list.js
new file mode 100644
index 0000000..423b721
--- /dev/null
+++ b/erpnext/manufacturing/doctype/bom_creator/bom_creator_list.js
@@ -0,0 +1,18 @@
+frappe.listview_settings['BOM Creator'] = {
+	add_fields: ["status"],
+	get_indicator: function (doc) {
+		if (doc.status === "Draft") {
+			return [__("Draft"), "red", "status,=,Draft"];
+		} else if (doc.status === "In Progress") {
+			return [__("In Progress"), "orange", "status,=,In Progress"];
+		} else if (doc.status === "Completed") {
+			return [__("Completed"), "green", "status,=,Completed"];
+		} else if (doc.status === "Cancelled") {
+			return [__("Cancelled"), "red", "status,=,Cancelled"];
+		} else if (doc.status === "Failed") {
+			return [__("Failed"), "red", "status,=,Failed"];
+		} else if (doc.status === "Submitted") {
+			return [__("Submitted"), "blue", "status,=,Submitted"];
+		}
+	},
+};
diff --git a/erpnext/manufacturing/doctype/bom_creator/test_bom_creator.py b/erpnext/manufacturing/doctype/bom_creator/test_bom_creator.py
new file mode 100644
index 0000000..ee5886c
--- /dev/null
+++ b/erpnext/manufacturing/doctype/bom_creator/test_bom_creator.py
@@ -0,0 +1,307 @@
+# Copyright (c) 2023, Frappe Technologies Pvt. Ltd. and Contributors
+# See license.txt
+
+import random
+
+import frappe
+from frappe.tests.utils import FrappeTestCase
+
+from erpnext.manufacturing.doctype.bom_creator.bom_creator import (
+	add_item,
+	add_sub_assembly,
+	delete_node,
+	edit_qty,
+)
+from erpnext.stock.doctype.item.test_item import make_item
+
+
+class TestBOMCreator(FrappeTestCase):
+	def setUp(self) -> None:
+		create_items()
+
+	def test_bom_sub_assembly(self):
+		final_product = "Bicycle"
+		make_item(
+			final_product,
+			{
+				"item_group": "Raw Material",
+				"stock_uom": "Nos",
+			},
+		)
+
+		doc = make_bom_creator(
+			name="Bicycle BOM with Sub Assembly",
+			company="_Test Company",
+			item_code=final_product,
+			qty=1,
+			rm_cosy_as_per="Valuation Rate",
+			currency="INR",
+			plc_conversion_rate=1,
+			conversion_rate=1,
+		)
+
+		add_sub_assembly(
+			parent=doc.name,
+			fg_item=final_product,
+			fg_reference_id=doc.name,
+			bom_item={
+				"item_code": "Frame Assembly",
+				"qty": 1,
+				"items": [
+					{
+						"item_code": "Frame",
+						"qty": 1,
+					},
+					{
+						"item_code": "Fork",
+						"qty": 1,
+					},
+				],
+			},
+		)
+
+		doc.reload()
+		self.assertEqual(doc.items[0].item_code, "Frame Assembly")
+
+		fg_valuation_rate = 0
+		for row in doc.items:
+			if not row.is_expandable:
+				fg_valuation_rate += row.amount
+				self.assertEqual(row.fg_item, "Frame Assembly")
+				self.assertEqual(row.fg_reference_id, doc.items[0].name)
+
+		self.assertEqual(doc.items[0].amount, fg_valuation_rate)
+
+	def test_bom_raw_material(self):
+		final_product = "Bicycle"
+		make_item(
+			final_product,
+			{
+				"item_group": "Raw Material",
+				"stock_uom": "Nos",
+			},
+		)
+
+		doc = make_bom_creator(
+			name="Bicycle BOM with Raw Material",
+			company="_Test Company",
+			item_code=final_product,
+			qty=1,
+			rm_cosy_as_per="Valuation Rate",
+			currency="INR",
+			plc_conversion_rate=1,
+			conversion_rate=1,
+		)
+
+		add_item(
+			parent=doc.name,
+			fg_item=final_product,
+			fg_reference_id=doc.name,
+			item_code="Pedal Assembly",
+			qty=2,
+		)
+
+		doc.reload()
+		self.assertEqual(doc.items[0].item_code, "Pedal Assembly")
+		self.assertEqual(doc.items[0].qty, 2)
+
+		fg_valuation_rate = 0
+		for row in doc.items:
+			if not row.is_expandable:
+				fg_valuation_rate += row.amount
+				self.assertEqual(row.fg_item, "Bicycle")
+				self.assertEqual(row.fg_reference_id, doc.name)
+
+		self.assertEqual(doc.raw_material_cost, fg_valuation_rate)
+
+	def test_convert_to_sub_assembly(self):
+		final_product = "Bicycle"
+		make_item(
+			final_product,
+			{
+				"item_group": "Raw Material",
+				"stock_uom": "Nos",
+			},
+		)
+
+		doc = make_bom_creator(
+			name="Bicycle BOM",
+			company="_Test Company",
+			item_code=final_product,
+			qty=1,
+			rm_cosy_as_per="Valuation Rate",
+			currency="INR",
+			plc_conversion_rate=1,
+			conversion_rate=1,
+		)
+
+		add_item(
+			parent=doc.name,
+			fg_item=final_product,
+			fg_reference_id=doc.name,
+			item_code="Pedal Assembly",
+			qty=2,
+		)
+
+		doc.reload()
+		self.assertEqual(doc.items[0].is_expandable, 0)
+
+		add_sub_assembly(
+			convert_to_sub_assembly=1,
+			parent=doc.name,
+			fg_item=final_product,
+			fg_reference_id=doc.items[0].name,
+			bom_item={
+				"item_code": "Pedal Assembly",
+				"qty": 2,
+				"items": [
+					{
+						"item_code": "Pedal Body",
+						"qty": 2,
+					},
+					{
+						"item_code": "Pedal Axle",
+						"qty": 2,
+					},
+				],
+			},
+		)
+
+		doc.reload()
+		self.assertEqual(doc.items[0].is_expandable, 1)
+
+		fg_valuation_rate = 0
+		for row in doc.items:
+			if not row.is_expandable:
+				fg_valuation_rate += row.amount
+				self.assertEqual(row.fg_item, "Pedal Assembly")
+				self.assertEqual(row.qty, 2.0)
+				self.assertEqual(row.fg_reference_id, doc.items[0].name)
+
+		self.assertEqual(doc.raw_material_cost, fg_valuation_rate)
+
+	def test_make_boms_from_bom_creator(self):
+		final_product = "Bicycle Test"
+		make_item(
+			final_product,
+			{
+				"item_group": "Raw Material",
+				"stock_uom": "Nos",
+			},
+		)
+
+		doc = make_bom_creator(
+			name="Bicycle BOM Test",
+			company="_Test Company",
+			item_code=final_product,
+			qty=1,
+			rm_cosy_as_per="Valuation Rate",
+			currency="INR",
+			plc_conversion_rate=1,
+			conversion_rate=1,
+		)
+
+		add_item(
+			parent=doc.name,
+			fg_item=final_product,
+			fg_reference_id=doc.name,
+			item_code="Pedal Assembly",
+			qty=2,
+		)
+
+		doc.reload()
+		self.assertEqual(doc.items[0].is_expandable, 0)
+
+		add_sub_assembly(
+			convert_to_sub_assembly=1,
+			parent=doc.name,
+			fg_item=final_product,
+			fg_reference_id=doc.items[0].name,
+			bom_item={
+				"item_code": "Pedal Assembly",
+				"qty": 2,
+				"items": [
+					{
+						"item_code": "Pedal Body",
+						"qty": 2,
+					},
+					{
+						"item_code": "Pedal Axle",
+						"qty": 2,
+					},
+				],
+			},
+		)
+
+		doc.reload()
+		self.assertEqual(doc.items[0].is_expandable, 1)
+
+		doc.submit()
+		doc.create_boms()
+		doc.reload()
+
+		data = frappe.get_all("BOM", filters={"bom_creator": doc.name, "docstatus": 1})
+		self.assertEqual(len(data), 2)
+
+		doc.create_boms()
+		data = frappe.get_all("BOM", filters={"bom_creator": doc.name, "docstatus": 1})
+		self.assertEqual(len(data), 2)
+
+
+def create_items():
+	raw_materials = [
+		"Frame",
+		"Fork",
+		"Rim",
+		"Spokes",
+		"Hub",
+		"Tube",
+		"Tire",
+		"Pedal Body",
+		"Pedal Axle",
+		"Ball Bearings",
+		"Chain Links",
+		"Chain Pins",
+		"Seat",
+		"Seat Post",
+		"Seat Clamp",
+	]
+
+	for item in raw_materials:
+		valuation_rate = random.choice([100, 200, 300, 500, 333, 222, 44, 20, 10])
+		make_item(
+			item,
+			{
+				"item_group": "Raw Material",
+				"stock_uom": "Nos",
+				"valuation_rate": valuation_rate,
+			},
+		)
+
+	sub_assemblies = [
+		"Frame Assembly",
+		"Wheel Assembly",
+		"Pedal Assembly",
+		"Chain Assembly",
+		"Seat Assembly",
+	]
+
+	for item in sub_assemblies:
+		make_item(
+			item,
+			{
+				"item_group": "Raw Material",
+				"stock_uom": "Nos",
+			},
+		)
+
+
+def make_bom_creator(**kwargs):
+	if isinstance(kwargs, str) or isinstance(kwargs, dict):
+		kwargs = frappe.parse_json(kwargs)
+
+	doc = frappe.new_doc("BOM Creator")
+	doc.update(kwargs)
+	doc.save()
+
+	return doc
diff --git a/erpnext/crm/doctype/linkedin_settings/__init__.py b/erpnext/manufacturing/doctype/bom_creator_item/__init__.py
similarity index 100%
copy from erpnext/crm/doctype/linkedin_settings/__init__.py
copy to erpnext/manufacturing/doctype/bom_creator_item/__init__.py
diff --git a/erpnext/manufacturing/doctype/bom_creator_item/bom_creator_item.json b/erpnext/manufacturing/doctype/bom_creator_item/bom_creator_item.json
new file mode 100644
index 0000000..fdb5d3a
--- /dev/null
+++ b/erpnext/manufacturing/doctype/bom_creator_item/bom_creator_item.json
@@ -0,0 +1,243 @@
+{
+ "actions": [],
+ "allow_rename": 1,
+ "creation": "2023-07-18 14:35:50.307386",
+ "doctype": "DocType",
+ "editable_grid": 1,
+ "engine": "InnoDB",
+ "field_order": [
+  "item_code",
+  "item_name",
+  "item_group",
+  "column_break_f63f",
+  "fg_item",
+  "source_warehouse",
+  "is_expandable",
+  "sourced_by_supplier",
+  "bom_created",
+  "description_section",
+  "description",
+  "quantity_and_rate_section",
+  "qty",
+  "rate",
+  "uom",
+  "column_break_bgnb",
+  "stock_qty",
+  "conversion_factor",
+  "stock_uom",
+  "amount_section",
+  "amount",
+  "column_break_yuca",
+  "base_rate",
+  "base_amount",
+  "section_break_wtld",
+  "do_not_explode",
+  "parent_row_no",
+  "fg_reference_id",
+  "column_break_sulm",
+  "instruction"
+ ],
+ "fields": [
+  {
+   "columns": 2,
+   "fieldname": "item_code",
+   "fieldtype": "Link",
+   "in_list_view": 1,
+   "label": "Item Code",
+   "options": "Item",
+   "reqd": 1
+  },
+  {
+   "fetch_from": "item_code.item_name",
+   "fetch_if_empty": 1,
+   "fieldname": "item_name",
+   "fieldtype": "Data",
+   "label": "Item Name"
+  },
+  {
+   "fetch_from": "item_code.item_group",
+   "fieldname": "item_group",
+   "fieldtype": "Link",
+   "label": "Item Group",
+   "options": "Item Group"
+  },
+  {
+   "fieldname": "column_break_f63f",
+   "fieldtype": "Column Break"
+  },
+  {
+   "columns": 2,
+   "fieldname": "fg_item",
+   "fieldtype": "Link",
+   "in_list_view": 1,
+   "label": "FG Item",
+   "options": "Item",
+   "reqd": 1
+  },
+  {
+   "fieldname": "source_warehouse",
+   "fieldtype": "Link",
+   "in_list_view": 1,
+   "label": "Source Warehouse",
+   "options": "Warehouse"
+  },
+  {
+   "default": "0",
+   "fieldname": "is_expandable",
+   "fieldtype": "Check",
+   "label": "Is Expandable",
+   "read_only": 1
+  },
+  {
+   "collapsible": 1,
+   "fieldname": "description_section",
+   "fieldtype": "Section Break",
+   "label": "Description"
+  },
+  {
+   "fetch_from": "item_code.description",
+   "fetch_if_empty": 1,
+   "fieldname": "description",
+   "fieldtype": "Small Text"
+  },
+  {
+   "fieldname": "quantity_and_rate_section",
+   "fieldtype": "Section Break",
+   "label": "Quantity and Rate"
+  },
+  {
+   "columns": 1,
+   "fieldname": "qty",
+   "fieldtype": "Float",
+   "in_list_view": 1,
+   "label": "Qty"
+  },
+  {
+   "columns": 2,
+   "fieldname": "rate",
+   "fieldtype": "Currency",
+   "in_list_view": 1,
+   "label": "Rate"
+  },
+  {
+   "columns": 1,
+   "fieldname": "uom",
+   "fieldtype": "Link",
+   "in_list_view": 1,
+   "label": "UOM",
+   "options": "UOM"
+  },
+  {
+   "fieldname": "column_break_bgnb",
+   "fieldtype": "Column Break"
+  },
+  {
+   "fieldname": "stock_qty",
+   "fieldtype": "Float",
+   "label": "Stock Qty",
+   "read_only": 1
+  },
+  {
+   "fieldname": "conversion_factor",
+   "fieldtype": "Float",
+   "label": "Conversion Factor"
+  },
+  {
+   "fetch_from": "item_code.stock_uom",
+   "fieldname": "stock_uom",
+   "fieldtype": "Link",
+   "label": "Stock UOM",
+   "no_copy": 1,
+   "options": "UOM",
+   "read_only": 1
+  },
+  {
+   "fieldname": "amount_section",
+   "fieldtype": "Section Break",
+   "label": "Amount"
+  },
+  {
+   "fieldname": "amount",
+   "fieldtype": "Currency",
+   "label": "Amount",
+   "read_only": 1
+  },
+  {
+   "fieldname": "column_break_yuca",
+   "fieldtype": "Column Break"
+  },
+  {
+   "default": "1",
+   "fieldname": "do_not_explode",
+   "fieldtype": "Check",
+   "hidden": 1,
+   "label": "Do Not Explode"
+  },
+  {
+   "fieldname": "instruction",
+   "fieldtype": "Small Text",
+   "label": "Instruction"
+  },
+  {
+   "fieldname": "base_amount",
+   "fieldtype": "Currency",
+   "hidden": 1,
+   "label": "Base Amount"
+  },
+  {
+   "fieldname": "base_rate",
+   "fieldtype": "Currency",
+   "hidden": 1,
+   "label": "Base Rate"
+  },
+  {
+   "default": "0",
+   "fieldname": "sourced_by_supplier",
+   "fieldtype": "Check",
+   "label": "Sourced by Supplier"
+  },
+  {
+   "fieldname": "section_break_wtld",
+   "fieldtype": "Section Break"
+  },
+  {
+   "fieldname": "fg_reference_id",
+   "fieldtype": "Data",
+   "label": "FG Reference",
+   "no_copy": 1,
+   "read_only": 1
+  },
+  {
+   "fieldname": "column_break_sulm",
+   "fieldtype": "Column Break"
+  },
+  {
+   "fieldname": "parent_row_no",
+   "fieldtype": "Data",
+   "label": "Parent Row No",
+   "no_copy": 1,
+   "print_hide": 1
+  },
+  {
+   "default": "0",
+   "fieldname": "bom_created",
+   "fieldtype": "Check",
+   "hidden": 1,
+   "label": "BOM Created",
+   "no_copy": 1,
+   "print_hide": 1
+  }
+ ],
+ "index_web_pages_for_search": 1,
+ "istable": 1,
+ "links": [],
+ "modified": "2023-08-07 11:52:30.492233",
+ "modified_by": "Administrator",
+ "module": "Manufacturing",
+ "name": "BOM Creator Item",
+ "owner": "Administrator",
+ "permissions": [],
+ "sort_field": "modified",
+ "sort_order": "DESC",
+ "states": []
+}
\ No newline at end of file
diff --git a/erpnext/manufacturing/doctype/bom_creator_item/bom_creator_item.py b/erpnext/manufacturing/doctype/bom_creator_item/bom_creator_item.py
new file mode 100644
index 0000000..350c918
--- /dev/null
+++ b/erpnext/manufacturing/doctype/bom_creator_item/bom_creator_item.py
@@ -0,0 +1,9 @@
+# Copyright (c) 2023, Frappe Technologies Pvt. Ltd. and contributors
+# For license information, please see license.txt
+
+# import frappe
+from frappe.model.document import Document
+
+
+class BOMCreatorItem(Document):
+	pass
diff --git a/erpnext/manufacturing/doctype/job_card/job_card.js b/erpnext/manufacturing/doctype/job_card/job_card.js
index f1e6094..6621275 100644
--- a/erpnext/manufacturing/doctype/job_card/job_card.js
+++ b/erpnext/manufacturing/doctype/job_card/job_card.js
@@ -23,17 +23,6 @@
 			}
 		});
 
-		let sbb_field = frm.get_docfield('serial_and_batch_bundle');
-		if (sbb_field) {
-			sbb_field.get_route_options_for_new_doc = () => {
-				return {
-					'item_code': frm.doc.production_item,
-					'warehouse': frm.doc.wip_warehouse,
-					'voucher_type': frm.doc.doctype,
-				}
-			};
-		}
-
 		frm.set_indicator_formatter('sub_operation',
 			function(doc) {
 				if (doc.status == "Pending") {
@@ -124,6 +113,17 @@
 				}
 			});
 		}
+
+		let sbb_field = frm.get_docfield('serial_and_batch_bundle');
+		if (sbb_field) {
+			sbb_field.get_route_options_for_new_doc = () => {
+				return {
+					'item_code': frm.doc.production_item,
+					'warehouse': frm.doc.wip_warehouse,
+					'voucher_type': frm.doc.doctype,
+				}
+			};
+		}
 	},
 
 	setup_quality_inspection: function(frm) {
diff --git a/erpnext/manufacturing/doctype/material_request_plan_item/material_request_plan_item.json b/erpnext/manufacturing/doctype/material_request_plan_item/material_request_plan_item.json
index 09bf1d8..d07bf0f 100644
--- a/erpnext/manufacturing/doctype/material_request_plan_item/material_request_plan_item.json
+++ b/erpnext/manufacturing/doctype/material_request_plan_item/material_request_plan_item.json
@@ -10,22 +10,25 @@
   "warehouse",
   "item_name",
   "material_request_type",
-  "actual_qty",
-  "ordered_qty",
+  "quantity",
   "required_bom_qty",
   "column_break_4",
-  "quantity",
+  "schedule_date",
   "uom",
   "conversion_factor",
-  "projected_qty",
-  "reserved_qty_for_production",
-  "safety_stock",
   "item_details",
   "description",
   "min_order_qty",
   "section_break_8",
   "sales_order",
-  "requested_qty"
+  "bin_qty_section",
+  "actual_qty",
+  "requested_qty",
+  "reserved_qty_for_production",
+  "column_break_yhelv",
+  "ordered_qty",
+  "projected_qty",
+  "safety_stock"
  ],
  "fields": [
   {
@@ -65,7 +68,7 @@
    "fieldtype": "Column Break"
   },
   {
-   "columns": 1,
+   "columns": 2,
    "fieldname": "quantity",
    "fieldtype": "Float",
    "in_list_view": 1,
@@ -80,12 +83,12 @@
    "read_only": 1
   },
   {
-   "columns": 2,
+   "columns": 1,
    "default": "0",
    "fieldname": "actual_qty",
    "fieldtype": "Float",
    "in_list_view": 1,
-   "label": "Available Qty",
+   "label": "Qty In Stock",
    "no_copy": 1,
    "read_only": 1
   },
@@ -176,11 +179,27 @@
    "fieldtype": "Float",
    "label": "Conversion Factor",
    "read_only": 1
+  },
+  {
+   "columns": 1,
+   "fieldname": "schedule_date",
+   "fieldtype": "Date",
+   "in_list_view": 1,
+   "label": "Required By"
+  },
+  {
+   "fieldname": "bin_qty_section",
+   "fieldtype": "Section Break",
+   "label": "BIN Qty"
+  },
+  {
+   "fieldname": "column_break_yhelv",
+   "fieldtype": "Column Break"
   }
  ],
  "istable": 1,
  "links": [],
- "modified": "2023-05-03 12:43:29.895754",
+ "modified": "2023-09-12 12:09:08.358326",
  "modified_by": "Administrator",
  "module": "Manufacturing",
  "name": "Material Request Plan Item",
diff --git a/erpnext/manufacturing/doctype/production_plan/production_plan.js b/erpnext/manufacturing/doctype/production_plan/production_plan.js
index 46c554c..72438dd 100644
--- a/erpnext/manufacturing/doctype/production_plan/production_plan.js
+++ b/erpnext/manufacturing/doctype/production_plan/production_plan.js
@@ -476,6 +476,15 @@
 				}
 			})
 		}
+	},
+
+	material_request_type(frm, cdt, cdn) {
+		let row = locals[cdt][cdn];
+
+		if (row.from_warehouse &&
+			row.material_request_type !== "Material Transfer") {
+				frappe.model.set_value(cdt, cdn, 'from_warehouse', '');
+		}
 	}
 });
 
diff --git a/erpnext/manufacturing/doctype/production_plan/production_plan.json b/erpnext/manufacturing/doctype/production_plan/production_plan.json
index 0d0fd5e..4a00416 100644
--- a/erpnext/manufacturing/doctype/production_plan/production_plan.json
+++ b/erpnext/manufacturing/doctype/production_plan/production_plan.json
@@ -228,7 +228,7 @@
   },
   {
    "default": "0",
-   "description": "If enabled, the system won't create material requests for the available items.",
+   "description": "If enabled, the system will create material requests even if the stock exists in the 'Raw Materials Warehouse'.",
    "fieldname": "ignore_existing_ordered_qty",
    "fieldtype": "Check",
    "label": "Ignore Available Stock"
@@ -422,7 +422,7 @@
  "index_web_pages_for_search": 1,
  "is_submittable": 1,
  "links": [],
- "modified": "2023-07-28 13:37:43.926686",
+ "modified": "2023-09-29 11:41:03.246059",
  "modified_by": "Administrator",
  "module": "Manufacturing",
  "name": "Production Plan",
diff --git a/erpnext/manufacturing/doctype/production_plan/production_plan.py b/erpnext/manufacturing/doctype/production_plan/production_plan.py
index 131f438..ddd9375 100644
--- a/erpnext/manufacturing/doctype/production_plan/production_plan.py
+++ b/erpnext/manufacturing/doctype/production_plan/production_plan.py
@@ -40,6 +40,12 @@
 		self._rename_temporary_references()
 		validate_uom_is_integer(self, "stock_uom", "planned_qty")
 		self.validate_sales_orders()
+		self.validate_material_request_type()
+
+	def validate_material_request_type(self):
+		for row in self.get("mr_items"):
+			if row.from_warehouse and row.material_request_type != "Material Transfer":
+				row.from_warehouse = ""
 
 	@frappe.whitelist()
 	def validate_sales_orders(self, sales_order=None):
@@ -53,7 +59,7 @@
 		data = sales_order_query(filters={"company": self.company, "sales_orders": sales_orders})
 
 		title = _("Production Plan Already Submitted")
-		if not data:
+		if not data and sales_orders:
 			msg = _("No items are available in the sales order {0} for production").format(sales_orders[0])
 			if len(sales_orders) > 1:
 				sales_orders = ", ".join(sales_orders)
@@ -673,6 +679,7 @@
 
 				po.append("items", po_data)
 
+			po.set_service_items_for_finished_goods()
 			po.set_missing_values()
 			po.flags.ignore_mandatory = True
 			po.flags.ignore_validate = True
@@ -725,7 +732,7 @@
 
 			# key for Sales Order:Material Request Type:Customer
 			key = "{}:{}:{}".format(item.sales_order, material_request_type, item_doc.customer or "")
-			schedule_date = add_days(nowdate(), cint(item_doc.lead_time_days))
+			schedule_date = item.schedule_date or add_days(nowdate(), cint(item_doc.lead_time_days))
 
 			if not key in material_request_map:
 				# make a new MR for the combination
@@ -749,7 +756,9 @@
 				"items",
 				{
 					"item_code": item.item_code,
-					"from_warehouse": item.from_warehouse,
+					"from_warehouse": item.from_warehouse
+					if material_request_type == "Material Transfer"
+					else None,
 					"qty": item.quantity,
 					"schedule_date": schedule_date,
 					"warehouse": item.warehouse,
@@ -1500,6 +1509,10 @@
 def get_materials_from_other_locations(item, warehouses, new_mr_items, company):
 	from erpnext.stock.doctype.pick_list.pick_list import get_available_item_locations
 
+	stock_uom, purchase_uom = frappe.db.get_value(
+		"Item", item.get("item_code"), ["stock_uom", "purchase_uom"]
+	)
+
 	locations = get_available_item_locations(
 		item.get("item_code"), warehouses, item.get("quantity"), company, ignore_validation=True
 	)
@@ -1510,6 +1523,10 @@
 		if required_qty <= 0:
 			return
 
+		conversion_factor = 1.0
+		if purchase_uom != stock_uom and purchase_uom == item["uom"]:
+			conversion_factor = get_uom_conversion_factor(item["item_code"], item["uom"])
+
 		new_dict = copy.deepcopy(item)
 		quantity = required_qty if d.get("qty") > required_qty else d.get("qty")
 
@@ -1522,25 +1539,14 @@
 			}
 		)
 
-		required_qty -= quantity
+		required_qty -= quantity / conversion_factor
 		new_mr_items.append(new_dict)
 
 	# raise purchase request for remaining qty
-	if required_qty:
-		stock_uom, purchase_uom = frappe.db.get_value(
-			"Item", item["item_code"], ["stock_uom", "purchase_uom"]
-		)
 
-		if purchase_uom != stock_uom and purchase_uom == item["uom"]:
-			conversion_factor = get_uom_conversion_factor(item["item_code"], item["uom"])
-			if not (conversion_factor or frappe.flags.show_qty_in_stock_uom):
-				frappe.throw(
-					_("UOM Conversion factor ({0} -> {1}) not found for item: {2}").format(
-						purchase_uom, stock_uom, item["item_code"]
-					)
-				)
-
-			required_qty = required_qty / conversion_factor
+	precision = frappe.get_precision("Material Request Plan Item", "quantity")
+	if flt(required_qty, precision) > 0:
+		required_qty = required_qty
 
 		if frappe.db.get_value("UOM", purchase_uom, "must_be_whole_number"):
 			required_qty = ceil(required_qty)
@@ -1611,18 +1617,25 @@
 	table = frappe.qb.DocType("Production Plan")
 	child = frappe.qb.DocType("Material Request Plan Item")
 
+	non_completed_production_plans = get_non_completed_production_plans()
+
 	query = (
 		frappe.qb.from_(table)
 		.inner_join(child)
 		.on(table.name == child.parent)
-		.select(Sum(child.quantity * IfNull(child.conversion_factor, 1.0)))
+		.select(Sum(child.required_bom_qty))
 		.where(
 			(table.docstatus == 1)
 			& (child.item_code == item_code)
 			& (child.warehouse == warehouse)
 			& (table.status.notin(["Completed", "Closed"]))
 		)
-	).run()
+	)
+
+	if non_completed_production_plans:
+		query = query.where(table.name.isin(non_completed_production_plans))
+
+	query = query.run()
 
 	if not query:
 		return 0.0
@@ -1630,7 +1643,9 @@
 	reserved_qty_for_production_plan = flt(query[0][0])
 
 	reserved_qty_for_production = flt(
-		get_reserved_qty_for_production(item_code, warehouse, check_production_plan=True)
+		get_reserved_qty_for_production(
+			item_code, warehouse, non_completed_production_plans, check_production_plan=True
+		)
 	)
 
 	if reserved_qty_for_production > reserved_qty_for_production_plan:
@@ -1639,6 +1654,25 @@
 	return reserved_qty_for_production_plan - reserved_qty_for_production
 
 
+def get_non_completed_production_plans():
+	table = frappe.qb.DocType("Production Plan")
+	child = frappe.qb.DocType("Production Plan Item")
+
+	query = (
+		frappe.qb.from_(table)
+		.inner_join(child)
+		.on(table.name == child.parent)
+		.select(table.name)
+		.where(
+			(table.docstatus == 1)
+			& (table.status.notin(["Completed", "Closed"]))
+			& (child.planned_qty > child.ordered_qty)
+		)
+	).run(as_dict=True)
+
+	return list(set([d.name for d in query]))
+
+
 def get_raw_materials_of_sub_assembly_items(
 	item_details, company, bom_no, include_non_stock_items, sub_assembly_items, planned_qty=1
 ):
diff --git a/erpnext/manufacturing/doctype/production_plan/test_production_plan.py b/erpnext/manufacturing/doctype/production_plan/test_production_plan.py
index 2871a29..6ab9232 100644
--- a/erpnext/manufacturing/doctype/production_plan/test_production_plan.py
+++ b/erpnext/manufacturing/doctype/production_plan/test_production_plan.py
@@ -2,11 +2,12 @@
 # See license.txt
 import frappe
 from frappe.tests.utils import FrappeTestCase
-from frappe.utils import add_to_date, flt, now_datetime, nowdate
+from frappe.utils import add_to_date, flt, getdate, now_datetime, nowdate
 
 from erpnext.controllers.item_variant import create_variant
 from erpnext.manufacturing.doctype.production_plan.production_plan import (
 	get_items_for_material_requests,
+	get_non_completed_production_plans,
 	get_sales_orders,
 	get_warehouse_list,
 )
@@ -58,6 +59,9 @@
 		pln = create_production_plan(item_code="Test Production Item 1")
 		self.assertTrue(len(pln.mr_items), 2)
 
+		for row in pln.mr_items:
+			row.schedule_date = add_to_date(nowdate(), days=10)
+
 		pln.make_material_request()
 		pln.reload()
 		self.assertTrue(pln.status, "Material Requested")
@@ -71,6 +75,13 @@
 
 		self.assertTrue(len(material_requests), 2)
 
+		for row in material_requests:
+			mr_schedule_date = getdate(frappe.db.get_value("Material Request", row[0], "schedule_date"))
+
+			expected_date = getdate(add_to_date(nowdate(), days=10))
+
+			self.assertEqual(mr_schedule_date, expected_date)
+
 		pln.make_work_order()
 		work_orders = frappe.get_all(
 			"Work Order", fields=["name"], filters={"production_plan": pln.name}, as_list=1
@@ -412,11 +423,15 @@
 
 	def test_production_plan_for_subcontracting_po(self):
 		from erpnext.manufacturing.doctype.bom.test_bom import create_nested_bom
+		from erpnext.subcontracting.doctype.subcontracting_bom.test_subcontracting_bom import (
+			create_subcontracting_bom,
+		)
 
-		bom_tree_1 = {"Test Laptop 1": {"Test Motherboard 1": {"Test Motherboard Wires 1": {}}}}
+		fg_item = "Test Motherboard 1"
+		bom_tree_1 = {"Test Laptop 1": {fg_item: {"Test Motherboard Wires 1": {}}}}
 		create_nested_bom(bom_tree_1, prefix="")
 
-		item_doc = frappe.get_doc("Item", "Test Motherboard 1")
+		item_doc = frappe.get_doc("Item", fg_item)
 		company = "_Test Company"
 
 		item_doc.is_sub_contracted_item = 1
@@ -429,6 +444,12 @@
 
 		item_doc.save()
 
+		service_item = make_item(properties={"is_stock_item": 0}).name
+		create_subcontracting_bom(
+			finished_good=fg_item,
+			service_item=service_item,
+		)
+
 		plan = create_production_plan(
 			item_code="Test Laptop 1", planned_qty=10, use_multi_level_bom=1, do_not_submit=True
 		)
@@ -445,7 +466,8 @@
 		self.assertEqual(po_doc.items[0].qty, 10.0)
 		self.assertEqual(po_doc.items[0].fg_item_qty, 10.0)
 		self.assertEqual(po_doc.items[0].fg_item_qty, 10.0)
-		self.assertEqual(po_doc.items[0].fg_item, "Test Motherboard 1")
+		self.assertEqual(po_doc.items[0].fg_item, fg_item)
+		self.assertEqual(po_doc.items[0].item_code, service_item)
 
 	def test_production_plan_combine_subassembly(self):
 		"""
@@ -1029,6 +1051,102 @@
 
 		self.assertEqual(after_qty, before_qty)
 
+	def test_resered_qty_for_production_plan_for_work_order(self):
+		from erpnext.stock.utils import get_or_make_bin
+
+		bin_name = get_or_make_bin("Raw Material Item 1", "_Test Warehouse - _TC")
+		before_qty = flt(frappe.db.get_value("Bin", bin_name, "reserved_qty_for_production_plan"))
+
+		pln = create_production_plan(item_code="Test Production Item 1")
+
+		bin_name = get_or_make_bin("Raw Material Item 1", "_Test Warehouse - _TC")
+		after_qty = flt(frappe.db.get_value("Bin", bin_name, "reserved_qty_for_production_plan"))
+
+		self.assertEqual(after_qty - before_qty, 1)
+
+		pln.make_work_order()
+
+		work_orders = []
+		for row in frappe.get_all("Work Order", filters={"production_plan": pln.name}, fields=["name"]):
+			wo_doc = frappe.get_doc("Work Order", row.name)
+			wo_doc.source_warehouse = "_Test Warehouse - _TC"
+			wo_doc.wip_warehouse = "_Test Warehouse 1 - _TC"
+			wo_doc.fg_warehouse = "_Test Warehouse - _TC"
+			for d in wo_doc.required_items:
+				d.source_warehouse = "_Test Warehouse - _TC"
+				make_stock_entry(
+					item_code=d.item_code,
+					qty=d.required_qty,
+					rate=100,
+					target="_Test Warehouse - _TC",
+				)
+
+			wo_doc.submit()
+			work_orders.append(wo_doc)
+
+		bin_name = get_or_make_bin("Raw Material Item 1", "_Test Warehouse - _TC")
+		after_qty = flt(frappe.db.get_value("Bin", bin_name, "reserved_qty_for_production_plan"))
+
+		self.assertEqual(after_qty, before_qty)
+
+		rm_work_order = None
+		for wo_doc in work_orders:
+			for d in wo_doc.required_items:
+				if d.item_code == "Raw Material Item 1":
+					rm_work_order = wo_doc
+					break
+
+		if rm_work_order:
+			s = frappe.get_doc(make_se_from_wo(rm_work_order.name, "Material Transfer for Manufacture", 1))
+			s.submit()
+			bin_name = get_or_make_bin("Raw Material Item 1", "_Test Warehouse - _TC")
+			after_qty = flt(frappe.db.get_value("Bin", bin_name, "reserved_qty_for_production_plan"))
+
+			self.assertEqual(after_qty, before_qty)
+
+	def test_resered_qty_for_production_plan_for_less_rm_qty(self):
+		from erpnext.stock.utils import get_or_make_bin
+
+		bin_name = get_or_make_bin("Raw Material Item 1", "_Test Warehouse - _TC")
+		before_qty = flt(frappe.db.get_value("Bin", bin_name, "reserved_qty_for_production_plan"))
+
+		pln = create_production_plan(item_code="Test Production Item 1", planned_qty=10)
+
+		bin_name = get_or_make_bin("Raw Material Item 1", "_Test Warehouse - _TC")
+		after_qty = flt(frappe.db.get_value("Bin", bin_name, "reserved_qty_for_production_plan"))
+
+		self.assertEqual(after_qty - before_qty, 10)
+
+		pln.make_work_order()
+
+		plans = []
+		for row in frappe.get_all("Work Order", filters={"production_plan": pln.name}, fields=["name"]):
+			wo_doc = frappe.get_doc("Work Order", row.name)
+			wo_doc.source_warehouse = "_Test Warehouse - _TC"
+			wo_doc.wip_warehouse = "_Test Warehouse 1 - _TC"
+			wo_doc.fg_warehouse = "_Test Warehouse - _TC"
+			for d in wo_doc.required_items:
+				d.source_warehouse = "_Test Warehouse - _TC"
+				d.required_qty -= 5
+				make_stock_entry(
+					item_code=d.item_code,
+					qty=d.required_qty,
+					rate=100,
+					target="_Test Warehouse - _TC",
+				)
+
+			wo_doc.submit()
+			plans.append(pln.name)
+
+		bin_name = get_or_make_bin("Raw Material Item 1", "_Test Warehouse - _TC")
+		after_qty = flt(frappe.db.get_value("Bin", bin_name, "reserved_qty_for_production_plan"))
+
+		self.assertEqual(after_qty, before_qty)
+
+		completed_plans = get_non_completed_production_plans()
+		for plan in plans:
+			self.assertFalse(plan in completed_plans)
+
 	def test_resered_qty_for_production_plan_for_material_requests_with_multi_UOM(self):
 		from erpnext.stock.utils import get_or_make_bin
 
@@ -1077,6 +1195,41 @@
 		)
 		self.assertEqual(reserved_qty_after_mr, before_qty)
 
+	def test_from_warehouse_for_purchase_material_request(self):
+		from erpnext.stock.doctype.warehouse.test_warehouse import create_warehouse
+		from erpnext.stock.utils import get_or_make_bin
+
+		create_item("RM-TEST-123 For Purchase", valuation_rate=100)
+		bin_name = get_or_make_bin("RM-TEST-123 For Purchase", "_Test Warehouse - _TC")
+		t_warehouse = create_warehouse("_Test Store - _TC")
+		make_stock_entry(
+			item_code="Raw Material Item 1",
+			qty=5,
+			rate=100,
+			target=t_warehouse,
+		)
+
+		plan = create_production_plan(item_code="Test Production Item 1", do_not_save=1)
+		mr_items = get_items_for_material_requests(
+			plan.as_dict(), warehouses=[{"warehouse": t_warehouse}]
+		)
+
+		for d in mr_items:
+			plan.append("mr_items", d)
+
+		plan.save()
+
+		for row in plan.mr_items:
+			if row.material_request_type == "Material Transfer":
+				self.assertEqual(row.from_warehouse, t_warehouse)
+
+			row.material_request_type = "Purchase"
+
+		plan.save()
+
+		for row in plan.mr_items:
+			self.assertFalse(row.from_warehouse)
+
 	def test_skip_available_qty_for_sub_assembly_items(self):
 		from erpnext.manufacturing.doctype.bom.test_bom import create_nested_bom
 
@@ -1121,6 +1274,64 @@
 			if row.item_code == "SubAssembly2 For SUB Test":
 				self.assertEqual(row.quantity, 10)
 
+	def test_transfer_and_purchase_mrp_for_purchase_uom(self):
+		from erpnext.manufacturing.doctype.bom.test_bom import create_nested_bom
+		from erpnext.stock.doctype.warehouse.test_warehouse import create_warehouse
+
+		bom_tree = {
+			"Test FG Item INK PEN": {
+				"Test RM Item INK": {},
+			}
+		}
+
+		parent_bom = create_nested_bom(bom_tree, prefix="")
+		if not frappe.db.exists("UOM Conversion Detail", {"parent": "Test RM Item INK", "uom": "Kg"}):
+			doc = frappe.get_doc("Item", "Test RM Item INK")
+			doc.purchase_uom = "Kg"
+			doc.append("uoms", {"uom": "Kg", "conversion_factor": 0.5})
+			doc.save()
+
+		wh1 = create_warehouse("PNE Warehouse", company="_Test Company")
+		wh2 = create_warehouse("MBE Warehouse", company="_Test Company")
+		mrp_warhouse = create_warehouse("MRPBE Warehouse", company="_Test Company")
+
+		make_stock_entry(
+			item_code="Test RM Item INK",
+			qty=2,
+			rate=100,
+			target=wh1,
+		)
+
+		make_stock_entry(
+			item_code="Test RM Item INK",
+			qty=2,
+			rate=100,
+			target=wh2,
+		)
+
+		plan = create_production_plan(
+			item_code=parent_bom.item,
+			planned_qty=10,
+			do_not_submit=1,
+			warehouse="_Test Warehouse - _TC",
+		)
+
+		plan.for_warehouse = mrp_warhouse
+
+		items = get_items_for_material_requests(
+			plan.as_dict(), warehouses=[{"warehouse": wh1}, {"warehouse": wh2}]
+		)
+
+		for row in items:
+			row = frappe._dict(row)
+			if row.material_request_type == "Material Transfer":
+				self.assertTrue(row.from_warehouse in [wh1, wh2])
+				self.assertEqual(row.quantity, 2)
+
+			if row.material_request_type == "Purchase":
+				self.assertTrue(row.warehouse == mrp_warhouse)
+				self.assertEqual(row.quantity, 12)
+
 
 def create_production_plan(**args):
 	"""
diff --git a/erpnext/manufacturing/doctype/work_order/work_order.py b/erpnext/manufacturing/doctype/work_order/work_order.py
index 5ad79f9..f9fddcb 100644
--- a/erpnext/manufacturing/doctype/work_order/work_order.py
+++ b/erpnext/manufacturing/doctype/work_order/work_order.py
@@ -358,10 +358,10 @@
 		else:
 			self.update_work_order_qty_in_so()
 
+		self.update_ordered_qty()
 		self.update_reserved_qty_for_production()
 		self.update_completed_qty_in_material_request()
 		self.update_planned_qty()
-		self.update_ordered_qty()
 		self.create_job_card()
 
 	def on_cancel(self):
@@ -1513,37 +1513,47 @@
 
 
 def get_reserved_qty_for_production(
-	item_code: str, warehouse: str, check_production_plan: bool = False
+	item_code: str,
+	warehouse: str,
+	non_completed_production_plans: list = None,
+	check_production_plan: bool = False,
 ) -> float:
 	"""Get total reserved quantity for any item in specified warehouse"""
 	wo = frappe.qb.DocType("Work Order")
 	wo_item = frappe.qb.DocType("Work Order Item")
 
+	if check_production_plan:
+		qty_field = wo_item.required_qty
+	else:
+		qty_field = Case()
+		qty_field = qty_field.when(wo.skip_transfer == 0, wo_item.required_qty - wo_item.transferred_qty)
+		qty_field = qty_field.else_(wo_item.required_qty - wo_item.consumed_qty)
+
 	query = (
 		frappe.qb.from_(wo)
 		.from_(wo_item)
-		.select(
-			Sum(
-				Case()
-				.when(wo.skip_transfer == 0, wo_item.required_qty - wo_item.transferred_qty)
-				.else_(wo_item.required_qty - wo_item.consumed_qty)
-			)
-		)
+		.select(Sum(qty_field))
 		.where(
 			(wo_item.item_code == item_code)
 			& (wo_item.parent == wo.name)
 			& (wo.docstatus == 1)
 			& (wo_item.source_warehouse == warehouse)
-			& (wo.status.notin(["Stopped", "Completed", "Closed"]))
-			& (
-				(wo_item.required_qty > wo_item.transferred_qty)
-				| (wo_item.required_qty > wo_item.consumed_qty)
-			)
 		)
 	)
 
 	if check_production_plan:
 		query = query.where(wo.production_plan.isnotnull())
+	else:
+		query = query.where(
+			(wo.status.notin(["Stopped", "Completed", "Closed"]))
+			& (
+				(wo_item.required_qty > wo_item.transferred_qty)
+				| (wo_item.required_qty > wo_item.consumed_qty)
+			)
+		)
+
+	if non_completed_production_plans:
+		query = query.where(wo.production_plan.isin(non_completed_production_plans))
 
 	return query.run()[0][0] or 0.0
 
diff --git a/erpnext/manufacturing/workspace/manufacturing/manufacturing.json b/erpnext/manufacturing/workspace/manufacturing/manufacturing.json
index 518ae14..8e07850 100644
--- a/erpnext/manufacturing/workspace/manufacturing/manufacturing.json
+++ b/erpnext/manufacturing/workspace/manufacturing/manufacturing.json
@@ -1,6 +1,6 @@
 {
  "charts": [],
- "content": "[{\"id\":\"csBCiDglCE\",\"type\":\"header\",\"data\":{\"text\":\"<span class=\\\"h4\\\"><b>Your Shortcuts</b></span>\",\"col\":12}},{\"id\":\"xit0dg7KvY\",\"type\":\"shortcut\",\"data\":{\"shortcut_name\":\"BOM\",\"col\":3}},{\"id\":\"LRhGV9GAov\",\"type\":\"shortcut\",\"data\":{\"shortcut_name\":\"Production Plan\",\"col\":3}},{\"id\":\"69KKosI6Hg\",\"type\":\"shortcut\",\"data\":{\"shortcut_name\":\"Work Order\",\"col\":3}},{\"id\":\"PwndxuIpB3\",\"type\":\"shortcut\",\"data\":{\"shortcut_name\":\"Job Card\",\"col\":3}},{\"id\":\"OaiDqTT03Y\",\"type\":\"shortcut\",\"data\":{\"shortcut_name\":\"Forecasting\",\"col\":3}},{\"id\":\"OtMcArFRa5\",\"type\":\"shortcut\",\"data\":{\"shortcut_name\":\"BOM Stock Report\",\"col\":3}},{\"id\":\"76yYsI5imF\",\"type\":\"shortcut\",\"data\":{\"shortcut_name\":\"Production Planning Report\",\"col\":3}},{\"id\":\"PIQJYZOMnD\",\"type\":\"shortcut\",\"data\":{\"shortcut_name\":\"Learn Manufacturing\",\"col\":3}},{\"id\":\"bN_6tHS-Ct\",\"type\":\"spacer\",\"data\":{\"col\":12}},{\"id\":\"yVEFZMqVwd\",\"type\":\"header\",\"data\":{\"text\":\"<span class=\\\"h4\\\"><b>Reports &amp; Masters</b></span>\",\"col\":12}},{\"id\":\"rwrmsTI58-\",\"type\":\"card\",\"data\":{\"card_name\":\"Production\",\"col\":4}},{\"id\":\"6dnsyX-siZ\",\"type\":\"card\",\"data\":{\"card_name\":\"Bill of Materials\",\"col\":4}},{\"id\":\"CIq-v5f5KC\",\"type\":\"card\",\"data\":{\"card_name\":\"Reports\",\"col\":4}},{\"id\":\"8RRiQeYr0G\",\"type\":\"card\",\"data\":{\"card_name\":\"Tools\",\"col\":4}},{\"id\":\"Pu8z7-82rT\",\"type\":\"card\",\"data\":{\"card_name\":\"Settings\",\"col\":4}}]",
+ "content": "[{\"id\":\"csBCiDglCE\",\"type\":\"header\",\"data\":{\"text\":\"<span class=\\\"h4\\\"><b>Your Shortcuts</b></span>\",\"col\":12}},{\"id\":\"YHCQG3wAGv\",\"type\":\"shortcut\",\"data\":{\"shortcut_name\":\"BOM Creator\",\"col\":3}},{\"id\":\"xit0dg7KvY\",\"type\":\"shortcut\",\"data\":{\"shortcut_name\":\"BOM\",\"col\":3}},{\"id\":\"LRhGV9GAov\",\"type\":\"shortcut\",\"data\":{\"shortcut_name\":\"Production Plan\",\"col\":3}},{\"id\":\"69KKosI6Hg\",\"type\":\"shortcut\",\"data\":{\"shortcut_name\":\"Work Order\",\"col\":3}},{\"id\":\"PwndxuIpB3\",\"type\":\"shortcut\",\"data\":{\"shortcut_name\":\"Job Card\",\"col\":3}},{\"id\":\"OaiDqTT03Y\",\"type\":\"shortcut\",\"data\":{\"shortcut_name\":\"Forecasting\",\"col\":3}},{\"id\":\"OtMcArFRa5\",\"type\":\"shortcut\",\"data\":{\"shortcut_name\":\"BOM Stock Report\",\"col\":3}},{\"id\":\"76yYsI5imF\",\"type\":\"shortcut\",\"data\":{\"shortcut_name\":\"Production Planning Report\",\"col\":3}},{\"id\":\"PIQJYZOMnD\",\"type\":\"shortcut\",\"data\":{\"shortcut_name\":\"Learn Manufacturing\",\"col\":3}},{\"id\":\"bN_6tHS-Ct\",\"type\":\"spacer\",\"data\":{\"col\":12}},{\"id\":\"yVEFZMqVwd\",\"type\":\"header\",\"data\":{\"text\":\"<span class=\\\"h4\\\"><b>Reports &amp; Masters</b></span>\",\"col\":12}},{\"id\":\"rwrmsTI58-\",\"type\":\"card\",\"data\":{\"card_name\":\"Production\",\"col\":4}},{\"id\":\"6dnsyX-siZ\",\"type\":\"card\",\"data\":{\"card_name\":\"Bill of Materials\",\"col\":4}},{\"id\":\"CIq-v5f5KC\",\"type\":\"card\",\"data\":{\"card_name\":\"Reports\",\"col\":4}},{\"id\":\"8RRiQeYr0G\",\"type\":\"card\",\"data\":{\"card_name\":\"Tools\",\"col\":4}},{\"id\":\"Pu8z7-82rT\",\"type\":\"card\",\"data\":{\"card_name\":\"Settings\",\"col\":4}}]",
  "creation": "2020-03-02 17:11:37.032604",
  "custom_blocks": [],
  "docstatus": 0,
@@ -316,7 +316,7 @@
    "type": "Link"
   }
  ],
- "modified": "2023-07-04 14:40:47.281125",
+ "modified": "2023-08-08 22:28:39.633891",
  "modified_by": "Administrator",
  "module": "Manufacturing",
  "name": "Manufacturing",
@@ -339,6 +339,13 @@
   {
    "color": "Grey",
    "doc_view": "List",
+   "label": "BOM Creator",
+   "link_to": "BOM Creator",
+   "type": "DocType"
+  },
+  {
+   "color": "Grey",
+   "doc_view": "List",
    "label": "BOM",
    "link_to": "BOM",
    "stats_filter": "{\"is_active\":[\"=\",1]}",
diff --git a/erpnext/patches.txt b/erpnext/patches.txt
index a25c7c2..8f2d076 100644
--- a/erpnext/patches.txt
+++ b/erpnext/patches.txt
@@ -339,5 +339,11 @@
 erpnext.patches.v15_0.remove_exotel_integration
 erpnext.patches.v14_0.single_to_multi_dunning
 execute:frappe.db.set_single_value('Selling Settings', 'allow_negative_rates_for_items', 0)
+erpnext.patches.v15_0.correct_asset_value_if_je_with_workflow
+erpnext.patches.v15_0.delete_woocommerce_settings_doctype
+erpnext.patches.v14_0.migrate_deferred_accounts_to_item_defaults
+erpnext.patches.v14_0.update_invoicing_period_in_subscription
+execute:frappe.delete_doc("Page", "welcome-to-erpnext")
+erpnext.patches.v15_0.delete_payment_gateway_doctypes
 # below migration patch should always run last
 erpnext.patches.v14_0.migrate_gl_to_payment_ledger
diff --git a/erpnext/patches/v14_0/delete_education_doctypes.py b/erpnext/patches/v14_0/delete_education_doctypes.py
index 76b2300..aeeda70 100644
--- a/erpnext/patches/v14_0/delete_education_doctypes.py
+++ b/erpnext/patches/v14_0/delete_education_doctypes.py
@@ -43,9 +43,21 @@
 		frappe.delete_doc("Number Card", card, ignore_missing=True, force=True)
 
 	doctypes = frappe.get_all("DocType", {"module": "education", "custom": 0}, pluck="name")
+
 	for doctype in doctypes:
 		frappe.delete_doc("DocType", doctype, ignore_missing=True)
 
+	titles = [
+		"Fees",
+		"Student Admission",
+		"Grant Application",
+		"Chapter",
+		"Certification Application",
+	]
+	items = frappe.get_all("Portal Menu Item", filters=[["title", "in", titles]], pluck="name")
+	for item in items:
+		frappe.delete_doc("Portal Menu Item", item, ignore_missing=True, force=True)
+
 	frappe.delete_doc("Module Def", "Education", ignore_missing=True, force=True)
 
 	click.secho(
diff --git a/erpnext/patches/v14_0/delete_healthcare_doctypes.py b/erpnext/patches/v14_0/delete_healthcare_doctypes.py
index 2c699e4..896a440 100644
--- a/erpnext/patches/v14_0/delete_healthcare_doctypes.py
+++ b/erpnext/patches/v14_0/delete_healthcare_doctypes.py
@@ -41,7 +41,7 @@
 	for card in cards:
 		frappe.delete_doc("Number Card", card, ignore_missing=True, force=True)
 
-	titles = ["Lab Test", "Prescription", "Patient Appointment"]
+	titles = ["Lab Test", "Prescription", "Patient Appointment", "Patient"]
 	items = frappe.get_all("Portal Menu Item", filters=[["title", "in", titles]], pluck="name")
 	for item in items:
 		frappe.delete_doc("Portal Menu Item", item, ignore_missing=True, force=True)
diff --git a/erpnext/patches/v14_0/migrate_deferred_accounts_to_item_defaults.py b/erpnext/patches/v14_0/migrate_deferred_accounts_to_item_defaults.py
new file mode 100644
index 0000000..44b830b
--- /dev/null
+++ b/erpnext/patches/v14_0/migrate_deferred_accounts_to_item_defaults.py
@@ -0,0 +1,39 @@
+import frappe
+
+
+def execute():
+	try:
+		item_dict = get_deferred_accounts()
+		add_to_item_defaults(item_dict)
+	except Exception:
+		frappe.db.rollback()
+		frappe.log_error("Failed to migrate deferred accounts in Item Defaults.")
+
+
+def get_deferred_accounts():
+	item = frappe.qb.DocType("Item")
+	return (
+		frappe.qb.from_(item)
+		.select(item.name, item.deferred_expense_account, item.deferred_revenue_account)
+		.where((item.enable_deferred_expense == 1) | (item.enable_deferred_revenue == 1))
+		.run(as_dict=True)
+	)
+
+
+def add_to_item_defaults(item_dict):
+	for item in item_dict:
+		add_company_wise_item_default(item, "deferred_expense_account")
+		add_company_wise_item_default(item, "deferred_revenue_account")
+
+
+def add_company_wise_item_default(item, account_type):
+	company = frappe.get_cached_value("Account", item[account_type], "company")
+	if company and item[account_type]:
+		item_defaults = frappe.get_cached_value("Item", item["name"], "item_defaults")
+		for item_row in item_defaults:
+			if item_row.company == company:
+				frappe.set_value("Item Default", item_row.name, account_type, item[account_type])
+				break
+		else:
+			item_defaults.append({"company": company, account_type: item[account_type]})
+			frappe.set_value("Item", item["name"], "item_defaults", item_defaults)
diff --git a/erpnext/patches/v14_0/update_invoicing_period_in_subscription.py b/erpnext/patches/v14_0/update_invoicing_period_in_subscription.py
new file mode 100644
index 0000000..2879e57
--- /dev/null
+++ b/erpnext/patches/v14_0/update_invoicing_period_in_subscription.py
@@ -0,0 +1,8 @@
+import frappe
+
+
+def execute():
+	subscription = frappe.qb.DocType("Subscription")
+	frappe.qb.update(subscription).set(
+		subscription.generate_invoice_at, "Beginning of the currency subscription period"
+	).where(subscription.generate_invoice_at_period_start == 1).run()
diff --git a/erpnext/patches/v15_0/correct_asset_value_if_je_with_workflow.py b/erpnext/patches/v15_0/correct_asset_value_if_je_with_workflow.py
new file mode 100644
index 0000000..aededa2
--- /dev/null
+++ b/erpnext/patches/v15_0/correct_asset_value_if_je_with_workflow.py
@@ -0,0 +1,119 @@
+import frappe
+from frappe.model.workflow import get_workflow_name
+from frappe.query_builder.functions import IfNull, Sum
+
+
+def execute():
+	active_je_workflow = get_workflow_name("Journal Entry")
+	if not active_je_workflow:
+		return
+
+	correct_value_for_assets_with_manual_depr_entries()
+
+	finance_books = frappe.db.get_all("Finance Book", pluck="name")
+
+	if finance_books:
+		for fb_name in finance_books:
+			correct_value_for_assets_with_auto_depr(fb_name)
+
+	correct_value_for_assets_with_auto_depr()
+
+
+def correct_value_for_assets_with_manual_depr_entries():
+	asset = frappe.qb.DocType("Asset")
+	gle = frappe.qb.DocType("GL Entry")
+	aca = frappe.qb.DocType("Asset Category Account")
+	company = frappe.qb.DocType("Company")
+
+	asset_details_and_depr_amount_map = (
+		frappe.qb.from_(gle)
+		.join(asset)
+		.on(gle.against_voucher == asset.name)
+		.join(aca)
+		.on((aca.parent == asset.asset_category) & (aca.company_name == asset.company))
+		.join(company)
+		.on(company.name == asset.company)
+		.select(
+			asset.name.as_("asset_name"),
+			asset.gross_purchase_amount.as_("gross_purchase_amount"),
+			asset.opening_accumulated_depreciation.as_("opening_accumulated_depreciation"),
+			Sum(gle.debit).as_("depr_amount"),
+		)
+		.where(
+			gle.account == IfNull(aca.depreciation_expense_account, company.depreciation_expense_account)
+		)
+		.where(gle.debit != 0)
+		.where(gle.is_cancelled == 0)
+		.where(asset.docstatus == 1)
+		.where(asset.calculate_depreciation == 0)
+		.groupby(asset.name)
+	)
+
+	frappe.qb.update(asset).join(asset_details_and_depr_amount_map).on(
+		asset_details_and_depr_amount_map.asset_name == asset.name
+	).set(
+		asset.value_after_depreciation,
+		asset_details_and_depr_amount_map.gross_purchase_amount
+		- asset_details_and_depr_amount_map.opening_accumulated_depreciation
+		- asset_details_and_depr_amount_map.depr_amount,
+	).run()
+
+
+def correct_value_for_assets_with_auto_depr(fb_name=None):
+	asset = frappe.qb.DocType("Asset")
+	gle = frappe.qb.DocType("GL Entry")
+	aca = frappe.qb.DocType("Asset Category Account")
+	company = frappe.qb.DocType("Company")
+	afb = frappe.qb.DocType("Asset Finance Book")
+
+	asset_details_and_depr_amount_map = (
+		frappe.qb.from_(gle)
+		.join(asset)
+		.on(gle.against_voucher == asset.name)
+		.join(aca)
+		.on((aca.parent == asset.asset_category) & (aca.company_name == asset.company))
+		.join(company)
+		.on(company.name == asset.company)
+		.select(
+			asset.name.as_("asset_name"),
+			asset.gross_purchase_amount.as_("gross_purchase_amount"),
+			asset.opening_accumulated_depreciation.as_("opening_accumulated_depreciation"),
+			Sum(gle.debit).as_("depr_amount"),
+		)
+		.where(
+			gle.account == IfNull(aca.depreciation_expense_account, company.depreciation_expense_account)
+		)
+		.where(gle.debit != 0)
+		.where(gle.is_cancelled == 0)
+		.where(asset.docstatus == 1)
+		.where(asset.calculate_depreciation == 1)
+		.groupby(asset.name)
+	)
+
+	if fb_name:
+		asset_details_and_depr_amount_map = asset_details_and_depr_amount_map.where(
+			gle.finance_book == fb_name
+		)
+	else:
+		asset_details_and_depr_amount_map = asset_details_and_depr_amount_map.where(
+			(gle.finance_book.isin([""])) | (gle.finance_book.isnull())
+		)
+
+	query = (
+		frappe.qb.update(afb)
+		.join(asset_details_and_depr_amount_map)
+		.on(asset_details_and_depr_amount_map.asset_name == afb.parent)
+		.set(
+			afb.value_after_depreciation,
+			asset_details_and_depr_amount_map.gross_purchase_amount
+			- asset_details_and_depr_amount_map.opening_accumulated_depreciation
+			- asset_details_and_depr_amount_map.depr_amount,
+		)
+	)
+
+	if fb_name:
+		query = query.where(afb.finance_book == fb_name)
+	else:
+		query = query.where((afb.finance_book.isin([""])) | (afb.finance_book.isnull()))
+
+	query.run()
diff --git a/erpnext/patches/v15_0/delete_payment_gateway_doctypes.py b/erpnext/patches/v15_0/delete_payment_gateway_doctypes.py
new file mode 100644
index 0000000..959b065
--- /dev/null
+++ b/erpnext/patches/v15_0/delete_payment_gateway_doctypes.py
@@ -0,0 +1,6 @@
+import frappe
+
+
+def execute():
+	for dt in ("GoCardless Settings", "GoCardless Mandate", "Mpesa Settings"):
+		frappe.delete_doc("DocType", dt, ignore_missing=True)
diff --git a/erpnext/patches/v15_0/delete_woocommerce_settings_doctype.py b/erpnext/patches/v15_0/delete_woocommerce_settings_doctype.py
new file mode 100644
index 0000000..fb92ca5
--- /dev/null
+++ b/erpnext/patches/v15_0/delete_woocommerce_settings_doctype.py
@@ -0,0 +1,5 @@
+import frappe
+
+
+def execute():
+	frappe.delete_doc("DocType", "Woocommerce Settings", ignore_missing=True)
diff --git a/erpnext/projects/doctype/project/project.json b/erpnext/projects/doctype/project/project.json
index 502ee57..715b09c 100644
--- a/erpnext/projects/doctype/project/project.json
+++ b/erpnext/projects/doctype/project/project.json
@@ -453,7 +453,7 @@
  "index_web_pages_for_search": 1,
  "links": [],
  "max_attachments": 4,
- "modified": "2023-06-28 18:57:11.603497",
+ "modified": "2023-08-28 22:27:28.370849",
  "modified_by": "Administrator",
  "module": "Projects",
  "name": "Project",
@@ -475,7 +475,7 @@
    "permlevel": 1,
    "read": 1,
    "report": 1,
-   "role": "All"
+   "role": "Desk User"
   },
   {
    "create": 1,
diff --git a/erpnext/projects/doctype/project/project.py b/erpnext/projects/doctype/project/project.py
index 7d80ac1..e9aed1a 100644
--- a/erpnext/projects/doctype/project/project.py
+++ b/erpnext/projects/doctype/project/project.py
@@ -10,9 +10,11 @@
 from frappe.query_builder import Interval
 from frappe.query_builder.functions import Count, CurDate, Date, UnixTimestamp
 from frappe.utils import add_days, flt, get_datetime, get_time, get_url, nowtime, today
+from frappe.utils.user import is_website_user
 
 from erpnext import get_default_company
 from erpnext.controllers.queries import get_filters_cond
+from erpnext.controllers.website_list_for_contact import get_customers_suppliers
 from erpnext.setup.doctype.holiday_list.holiday_list import is_holiday
 
 
@@ -68,6 +70,7 @@
 				tmp_task_details.append(template_task_details)
 				task = self.create_task_from_template(template_task_details)
 				project_tasks.append(task)
+
 			self.dependency_mapping(tmp_task_details, project_tasks)
 
 	def create_task_from_template(self, task_details):
@@ -85,6 +88,7 @@
 				issue=task_details.issue,
 				is_group=task_details.is_group,
 				color=task_details.color,
+				template_task=task_details.name,
 			)
 		).insert()
 
@@ -104,32 +108,29 @@
 		return date
 
 	def dependency_mapping(self, template_tasks, project_tasks):
-		for template_task in template_tasks:
-			project_task = list(filter(lambda x: x.subject == template_task.subject, project_tasks))[0]
-			project_task = frappe.get_doc("Task", project_task.name)
+		for project_task in project_tasks:
+			template_task = frappe.get_doc("Task", project_task.template_task)
+
 			self.check_depends_on_value(template_task, project_task, project_tasks)
 			self.check_for_parent_tasks(template_task, project_task, project_tasks)
 
 	def check_depends_on_value(self, template_task, project_task, project_tasks):
 		if template_task.get("depends_on") and not project_task.get("depends_on"):
+			project_template_map = {pt.template_task: pt for pt in project_tasks}
+
 			for child_task in template_task.get("depends_on"):
-				child_task_subject = frappe.db.get_value("Task", child_task.task, "subject")
-				corresponding_project_task = list(
-					filter(lambda x: x.subject == child_task_subject, project_tasks)
-				)
-				if len(corresponding_project_task):
-					project_task.append("depends_on", {"task": corresponding_project_task[0].name})
+				if project_template_map and project_template_map.get(child_task.task):
+					project_task.reload()  # reload, as it might have been updated in the previous iteration
+					project_task.append("depends_on", {"task": project_template_map.get(child_task.task).name})
 					project_task.save()
 
 	def check_for_parent_tasks(self, template_task, project_task, project_tasks):
 		if template_task.get("parent_task") and not project_task.get("parent_task"):
-			parent_task_subject = frappe.db.get_value("Task", template_task.get("parent_task"), "subject")
-			corresponding_project_task = list(
-				filter(lambda x: x.subject == parent_task_subject, project_tasks)
-			)
-			if len(corresponding_project_task):
-				project_task.parent_task = corresponding_project_task[0].name
-				project_task.save()
+			for pt in project_tasks:
+				if pt.template_task == template_task.parent_task:
+					project_task.parent_task = pt.name
+					project_task.save()
+					break
 
 	def is_row_updated(self, row, existing_task_data, fields):
 		if self.get("__islocal") or not existing_task_data:
@@ -318,9 +319,20 @@
 def get_project_list(
 	doctype, txt, filters, limit_start, limit_page_length=20, order_by="modified"
 ):
+	user = frappe.session.user
+	customers, suppliers = get_customers_suppliers("Project", frappe.session.user)
+
+	ignore_permissions = False
+	if is_website_user():
+		if not filters:
+			filters = []
+
+		if customers:
+			filters.append([doctype, "customer", "in", customers])
+
+		ignore_permissions = True
+
 	meta = frappe.get_meta(doctype)
-	if not filters:
-		filters = []
 
 	fields = "distinct *"
 
@@ -351,18 +363,26 @@
 		limit_start=limit_start,
 		limit_page_length=limit_page_length,
 		order_by=order_by,
+		ignore_permissions=ignore_permissions,
 	)
 
 
 def get_list_context(context=None):
-	return {
-		"show_sidebar": True,
-		"show_search": True,
-		"no_breadcrumbs": True,
-		"title": _("Projects"),
-		"get_list": get_project_list,
-		"row_template": "templates/includes/projects/project_row.html",
-	}
+	from erpnext.controllers.website_list_for_contact import get_list_context
+
+	list_context = get_list_context(context)
+	list_context.update(
+		{
+			"show_sidebar": True,
+			"show_search": True,
+			"no_breadcrumbs": True,
+			"title": _("Projects"),
+			"get_list": get_project_list,
+			"row_template": "templates/includes/projects/project_row.html",
+		}
+	)
+
+	return list_context
 
 
 @frappe.whitelist()
diff --git a/erpnext/projects/doctype/project/test_project.py b/erpnext/projects/doctype/project/test_project.py
index 8a599ce..e49fecd 100644
--- a/erpnext/projects/doctype/project/test_project.py
+++ b/erpnext/projects/doctype/project/test_project.py
@@ -1,9 +1,8 @@
 # Copyright (c) 2015, Frappe Technologies Pvt. Ltd. and Contributors
 # License: GNU General Public License v3. See license.txt
 
-import unittest
-
 import frappe
+from frappe.tests.utils import FrappeTestCase
 from frappe.utils import add_days, getdate, nowdate
 
 from erpnext.projects.doctype.project_template.test_project_template import make_project_template
@@ -15,7 +14,7 @@
 test_ignore = ["Sales Order"]
 
 
-class TestProject(unittest.TestCase):
+class TestProject(FrappeTestCase):
 	def test_project_with_template_having_no_parent_and_depend_tasks(self):
 		project_name = "Test Project with Template - No Parent and Dependend Tasks"
 		frappe.db.sql(""" delete from tabTask where project = %s """, project_name)
@@ -155,6 +154,50 @@
 		so.reload()
 		self.assertFalse(so.project)
 
+	def test_project_with_template_tasks_having_common_name(self):
+		# Step - 1: Create Template Parent Tasks
+		template_parent_task1 = create_task(subject="Parent Task - 1", is_template=1, is_group=1)
+		template_parent_task2 = create_task(subject="Parent Task - 2", is_template=1, is_group=1)
+		template_parent_task3 = create_task(subject="Parent Task - 1", is_template=1, is_group=1)
+
+		# Step - 2: Create Template Child Tasks
+		template_task1 = create_task(
+			subject="Task - 1", is_template=1, parent_task=template_parent_task1.name
+		)
+		template_task2 = create_task(
+			subject="Task - 2", is_template=1, parent_task=template_parent_task2.name
+		)
+		template_task3 = create_task(
+			subject="Task - 1", is_template=1, parent_task=template_parent_task3.name
+		)
+
+		# Step - 3: Create Project Template
+		template_tasks = [
+			template_parent_task1,
+			template_task1,
+			template_parent_task2,
+			template_task2,
+			template_parent_task3,
+			template_task3,
+		]
+		project_template = make_project_template(
+			"Project template with common Task Subject", template_tasks
+		)
+
+		# Step - 4: Create Project against the Project Template
+		project = get_project("Project with common Task Subject", project_template)
+		project_tasks = frappe.get_all(
+			"Task", {"project": project.name}, ["subject", "parent_task", "is_group"]
+		)
+
+		# Test - 1: No. of Project Tasks should be equal to No. of Template Tasks
+		self.assertEquals(len(project_tasks), len(template_tasks))
+
+		# Test - 2: All child Project Tasks should have Parent Task linked
+		for pt in project_tasks:
+			if not pt.is_group:
+				self.assertIsNotNone(pt.parent_task)
+
 
 def get_project(name, template):
 
diff --git a/erpnext/projects/doctype/task/task.json b/erpnext/projects/doctype/task/task.json
index 62ec9e0..25a5455 100644
--- a/erpnext/projects/doctype/task/task.json
+++ b/erpnext/projects/doctype/task/task.json
@@ -52,7 +52,8 @@
   "company",
   "lft",
   "rgt",
-  "old_parent"
+  "old_parent",
+  "template_task"
  ],
  "fields": [
   {
@@ -382,6 +383,12 @@
    "fieldtype": "Date",
    "label": "Completed On",
    "mandatory_depends_on": "eval: doc.status == \"Completed\""
+  },
+  {
+   "fieldname": "template_task",
+   "fieldtype": "Data",
+   "hidden": 1,
+   "label": "Template Task"
   }
  ],
  "icon": "fa fa-check",
@@ -389,7 +396,7 @@
  "is_tree": 1,
  "links": [],
  "max_attachments": 5,
- "modified": "2023-04-17 21:06:50.174418",
+ "modified": "2023-09-28 13:52:05.861175",
  "modified_by": "Administrator",
  "module": "Projects",
  "name": "Task",
diff --git a/erpnext/projects/doctype/task_depends_on/task_depends_on.json b/erpnext/projects/doctype/task_depends_on/task_depends_on.json
index dbbe9d3..5102986 100644
--- a/erpnext/projects/doctype/task_depends_on/task_depends_on.json
+++ b/erpnext/projects/doctype/task_depends_on/task_depends_on.json
@@ -1,156 +1,52 @@
 {
- "allow_copy": 0, 
- "allow_import": 0, 
- "allow_rename": 0, 
- "beta": 0, 
- "creation": "2015-04-29 04:52:48.868079", 
- "custom": 0, 
- "docstatus": 0, 
- "doctype": "DocType", 
- "document_type": "", 
- "editable_grid": 1, 
+ "actions": [],
+ "creation": "2015-04-29 04:52:48.868079",
+ "doctype": "DocType",
+ "editable_grid": 1,
+ "engine": "InnoDB",
+ "field_order": [
+  "task",
+  "column_break_2",
+  "subject",
+  "project"
+ ],
  "fields": [
   {
-   "allow_on_submit": 0, 
-   "bold": 0, 
-   "collapsible": 0, 
-   "columns": 0, 
-   "fieldname": "task", 
-   "fieldtype": "Link", 
-   "hidden": 0, 
-   "ignore_user_permissions": 0, 
-   "ignore_xss_filter": 0, 
-   "in_filter": 0, 
-   "in_global_search": 0, 
-   "in_list_view": 1, 
-   "in_standard_filter": 0, 
-   "label": "Task", 
-   "length": 0, 
-   "no_copy": 0, 
-   "options": "Task", 
-   "permlevel": 0, 
-   "precision": "", 
-   "print_hide": 0, 
-   "print_hide_if_no_value": 0, 
-   "read_only": 0, 
-   "remember_last_selected_value": 0, 
-   "report_hide": 0, 
-   "reqd": 0, 
-   "search_index": 0, 
-   "set_only_once": 0, 
-   "unique": 0
-  }, 
+   "fieldname": "task",
+   "fieldtype": "Link",
+   "in_list_view": 1,
+   "label": "Task",
+   "options": "Task"
+  },
   {
-   "allow_on_submit": 0, 
-   "bold": 0, 
-   "collapsible": 0, 
-   "columns": 0, 
-   "fieldname": "column_break_2", 
-   "fieldtype": "Column Break", 
-   "hidden": 0, 
-   "ignore_user_permissions": 0, 
-   "ignore_xss_filter": 0, 
-   "in_filter": 0, 
-   "in_global_search": 0, 
-   "in_list_view": 0, 
-   "in_standard_filter": 0, 
-   "length": 0, 
-   "no_copy": 0, 
-   "permlevel": 0, 
-   "precision": "", 
-   "print_hide": 0, 
-   "print_hide_if_no_value": 0, 
-   "read_only": 0, 
-   "remember_last_selected_value": 0, 
-   "report_hide": 0, 
-   "reqd": 0, 
-   "search_index": 0, 
-   "set_only_once": 0, 
-   "unique": 0
-  }, 
+   "fieldname": "column_break_2",
+   "fieldtype": "Column Break"
+  },
   {
-   "allow_on_submit": 0, 
-   "bold": 0, 
-   "collapsible": 0, 
-   "columns": 0, 
-   "fieldname": "subject", 
-   "fieldtype": "Text", 
-   "hidden": 0, 
-   "ignore_user_permissions": 0, 
-   "ignore_xss_filter": 0, 
-   "in_filter": 0, 
-   "in_global_search": 0, 
-   "in_list_view": 1, 
-   "in_standard_filter": 0, 
-   "label": "Subject", 
-   "length": 0, 
-   "no_copy": 0, 
-   "options": "", 
-   "permlevel": 0, 
-   "precision": "", 
-   "print_hide": 0, 
-   "print_hide_if_no_value": 0, 
-   "read_only": 1, 
-   "remember_last_selected_value": 0, 
-   "report_hide": 0, 
-   "reqd": 0, 
-   "search_index": 0, 
-   "set_only_once": 0, 
-   "unique": 0
-  }, 
+   "fetch_from": "task.subject",
+   "fieldname": "subject",
+   "fieldtype": "Text",
+   "in_list_view": 1,
+   "label": "Subject",
+   "read_only": 1
+  },
   {
-   "allow_on_submit": 0, 
-   "bold": 0, 
-   "collapsible": 0, 
-   "columns": 0, 
-   "fieldname": "project", 
-   "fieldtype": "Text", 
-   "hidden": 0, 
-   "ignore_user_permissions": 0, 
-   "ignore_xss_filter": 0, 
-   "in_filter": 0, 
-   "in_global_search": 0, 
-   "in_list_view": 0, 
-   "in_standard_filter": 0, 
-   "label": "Project", 
-   "length": 0, 
-   "no_copy": 0, 
-   "permlevel": 0, 
-   "precision": "", 
-   "print_hide": 0, 
-   "print_hide_if_no_value": 0, 
-   "read_only": 1, 
-   "remember_last_selected_value": 0, 
-   "report_hide": 0, 
-   "reqd": 0, 
-   "search_index": 0, 
-   "set_only_once": 0, 
-   "unique": 0
+   "fetch_from": "task.project",
+   "fieldname": "project",
+   "fieldtype": "Text",
+   "label": "Project",
+   "read_only": 1
   }
- ], 
- "hide_heading": 0, 
- "hide_toolbar": 0, 
- "idx": 0, 
- "image_view": 0, 
- "in_create": 0, 
-
- "is_submittable": 0, 
- "issingle": 0, 
- "istable": 1, 
- "max_attachments": 0, 
- "modified": "2017-02-24 04:56:04.862502", 
- "modified_by": "Administrator", 
- "module": "Projects", 
- "name": "Task Depends On", 
- "name_case": "", 
- "owner": "Administrator", 
- "permissions": [], 
- "quick_entry": 0, 
- "read_only": 0, 
- "read_only_onload": 0, 
- "show_name_in_global_search": 0, 
- "sort_field": "modified", 
- "sort_order": "DESC", 
- "track_changes": 0, 
- "track_seen": 0
+ ],
+ "istable": 1,
+ "links": [],
+ "modified": "2023-10-09 11:34:14.335853",
+ "modified_by": "Administrator",
+ "module": "Projects",
+ "name": "Task Depends On",
+ "owner": "Administrator",
+ "permissions": [],
+ "sort_field": "modified",
+ "sort_order": "DESC",
+ "states": []
 }
\ No newline at end of file
diff --git a/erpnext/public/js/bank_reconciliation_tool/dialog_manager.js b/erpnext/public/js/bank_reconciliation_tool/dialog_manager.js
index 52fa8ab..1f47347 100644
--- a/erpnext/public/js/bank_reconciliation_tool/dialog_manager.js
+++ b/erpnext/public/js/bank_reconciliation_tool/dialog_manager.js
@@ -134,12 +134,12 @@
 
 	format_row(row) {
 		return [
-			row[1], // Document Type
-			row[2], // Document Name
-			row[5] || row[8], // Reference Date
-			format_currency(row[3], row[9]), // Remaining
-			row[4], // Reference Number
-			row[6], // Party
+			row["doctype"],
+			row["name"],
+			row["reference_date"] || row["posting_date"],
+			format_currency(row["paid_amount"], row["currency"]),
+			row["reference_no"],
+			row["party"],
 		];
 	}
 
diff --git a/erpnext/public/js/bom_configurator/bom_configurator.bundle.js b/erpnext/public/js/bom_configurator/bom_configurator.bundle.js
new file mode 100644
index 0000000..582b487
--- /dev/null
+++ b/erpnext/public/js/bom_configurator/bom_configurator.bundle.js
@@ -0,0 +1,412 @@
+class BOMConfigurator {
+	constructor({ wrapper, page, frm, bom_configurator }) {
+		this.$wrapper = $(wrapper);
+		this.page = page;
+		this.bom_configurator = bom_configurator;
+		this.frm = frm;
+
+		this.make();
+		this.prepare_layout();
+		this.bind_events();
+	}
+
+	add_boms() {
+		this.frm.call({
+			method: "add_boms",
+			freeze: true,
+			doc: this.frm.doc,
+		});
+	}
+
+	make() {
+		let options = {
+			...this.tree_options(),
+			...this.tree_methods(),
+		};
+
+		frappe.views.trees["BOM Configurator"] = new frappe.views.TreeView(options);
+		this.tree_view = frappe.views.trees["BOM Configurator"];
+	}
+
+	bind_events() {
+		frappe.views.trees["BOM Configurator"].events = {
+			frm: this.frm,
+			add_item: this.add_item,
+			add_sub_assembly: this.add_sub_assembly,
+			get_sub_assembly_modal_fields: this.get_sub_assembly_modal_fields,
+			convert_to_sub_assembly: this.convert_to_sub_assembly,
+			delete_node: this.delete_node,
+			edit_qty: this.edit_qty,
+			load_tree: this.load_tree,
+			set_default_qty: this.set_default_qty,
+		}
+	}
+
+	tree_options() {
+		return {
+			parent: this.$wrapper.get(0),
+			body: this.$wrapper.get(0),
+			doctype: 'BOM Configurator',
+			page: this.page,
+			expandable: true,
+			title: __("Configure Product Assembly"),
+			breadcrumb: "Manufacturing",
+			get_tree_nodes: "erpnext.manufacturing.doctype.bom_creator.bom_creator.get_children",
+			root_label: this.frm.doc.item_code,
+			disable_add_node: true,
+			get_tree_root: false,
+			show_expand_all: false,
+			extend_toolbar: false,
+			do_not_make_page: true,
+			do_not_setup_menu: true,
+		}
+	}
+
+	tree_methods() {
+		let frm_obj = this;
+		let view = frappe.views.trees["BOM Configurator"];
+
+		return {
+			onload: function(me) {
+				me.args["parent_id"] = frm_obj.frm.doc.name;
+				me.args["parent"] = frm_obj.frm.doc.item_code;
+				me.parent = frm_obj.$wrapper.get(0);
+				me.body = frm_obj.$wrapper.get(0);
+				me.make_tree();
+			},
+			onrender(node) {
+				const qty = node.data.qty || frm_obj.frm.doc.qty;
+				const uom = node.data.uom || frm_obj.frm.doc.uom;
+				const docname = node.data.name || frm_obj.frm.doc.name;
+				let amount = node.data.amount;
+				if (node.data.value === frm_obj.frm.doc.item_code) {
+					amount = frm_obj.frm.doc.raw_material_cost;
+				}
+
+				amount = frappe.format(amount, { fieldtype: "Currency", currency: frm_obj.frm.doc.currency });
+
+				$(`
+					<div class="pill small pull-right bom-qty-pill"
+						style="background-color: var(--bg-white);
+							color: var(--text-on-gray);
+							font-weight:450;
+							margin-right: 40px;
+							display: inline-flex;
+							min-width: 128px;
+							border: 1px solid var(--bg-gray);
+						">
+							<div style="padding-right:5px" data-bom-qty-docname="${docname}">${qty} ${uom}</div>
+							<div class="fg-item-amt" style="padding-left:12px; border-left:1px solid var(--bg-gray)">
+								${amount}
+							</div>
+					</div>
+
+				`).insertBefore(node.$ul);
+			},
+			toolbar: this.frm?.doc.docstatus === 0 ? [
+				{
+					label:__(frappe.utils.icon('edit', 'sm') + " Qty"),
+					click: function(node) {
+						let view = frappe.views.trees["BOM Configurator"];
+						view.events.edit_qty(node, view);
+					},
+					btnClass: "hidden-xs"
+				},
+				{
+					label:__(frappe.utils.icon('add', 'sm') + " Raw Material"),
+					click: function(node) {
+						let view = frappe.views.trees["BOM Configurator"];
+						view.events.add_item(node, view);
+					},
+					condition: function(node) {
+						return node.expandable;
+					},
+					btnClass: "hidden-xs"
+				},
+				{
+					label:__(frappe.utils.icon('add', 'sm') + " Sub Assembly"),
+					click: function(node) {
+						let view = frappe.views.trees["BOM Configurator"];
+						view.events.add_sub_assembly(node, view);
+					},
+					condition: function(node) {
+						return node.expandable;
+					},
+					btnClass: "hidden-xs"
+				},
+				{
+					label:__("Expand All"),
+					click: function(node) {
+						let view = frappe.views.trees["BOM Configurator"];
+
+						if (!node.expanded) {
+							view.tree.load_children(node, true);
+							$(node.parent[0]).find(".tree-children").show();
+							node.$toolbar.find(".expand-all-btn").html("Collapse All");
+						} else {
+							node.$tree_link.trigger("click");
+							node.$toolbar.find(".expand-all-btn").html("Expand All");
+						}
+					},
+					condition: function(node) {
+						return node.expandable && node.is_root;
+					},
+					btnClass: "hidden-xs expand-all-btn"
+				},
+				{
+					label:__(frappe.utils.icon('move', 'sm') + " Sub Assembly"),
+					click: function(node) {
+						let view = frappe.views.trees["BOM Configurator"];
+						view.events.convert_to_sub_assembly(node, view);
+					},
+					condition: function(node) {
+						return !node.expandable;
+					},
+					btnClass: "hidden-xs"
+				},
+				{
+					label:__(frappe.utils.icon('delete', 'sm') + __(" Item")),
+					click: function(node) {
+						let view = frappe.views.trees["BOM Configurator"];
+						view.events.delete_node(node, view);
+					},
+					condition: function(node) {
+						return !node.is_root;
+					},
+					btnClass: "hidden-xs"
+				},
+			] : [{
+				label:__("Expand All"),
+				click: function(node) {
+					let view = frappe.views.trees["BOM Configurator"];
+
+					if (!node.expanded) {
+						view.tree.load_children(node, true);
+						$(node.parent[0]).find(".tree-children").show();
+						node.$toolbar.find(".expand-all-btn").html("Collapse All");
+					} else {
+						node.$tree_link.trigger("click");
+						node.$toolbar.find(".expand-all-btn").html("Expand All");
+					}
+				},
+				condition: function(node) {
+					return node.expandable && node.is_root;
+				},
+				btnClass: "hidden-xs expand-all-btn"
+			}],
+		}
+	}
+
+	add_item(node, view) {
+		frappe.prompt([
+			{ label: __("Item"), fieldname: "item_code", fieldtype: "Link", options: "Item", reqd: 1 },
+			{ label: __("Qty"), fieldname: "qty", default: 1.0, fieldtype: "Float", reqd: 1 },
+		],
+		(data) => {
+			if (!node.data.parent_id) {
+				node.data.parent_id = this.frm.doc.name;
+			}
+
+			frappe.call({
+				method: "erpnext.manufacturing.doctype.bom_creator.bom_creator.add_item",
+				args: {
+					parent: node.data.parent_id,
+					fg_item: node.data.value,
+					item_code: data.item_code,
+					fg_reference_id: node.data.name || this.frm.doc.name,
+					qty: data.qty,
+				},
+				callback: (r) => {
+					view.events.load_tree(r, node);
+				}
+			});
+		},
+		__("Add Item"),
+		__("Add"));
+	}
+
+	add_sub_assembly(node, view) {
+		let dialog = new frappe.ui.Dialog({
+			fields: view.events.get_sub_assembly_modal_fields(),
+			title: __("Add Sub Assembly"),
+		});
+
+		dialog.show();
+		view.events.set_default_qty(dialog);
+
+		dialog.set_primary_action(__("Add"), () => {
+			let bom_item = dialog.get_values();
+
+			if (!node.data?.parent_id) {
+				node.data.parent_id = this.frm.doc.name;
+			}
+
+			frappe.call({
+				method: "erpnext.manufacturing.doctype.bom_creator.bom_creator.add_sub_assembly",
+				args: {
+					parent: node.data.parent_id,
+					fg_item: node.data.value,
+					fg_reference_id: node.data.name || this.frm.doc.name,
+					bom_item: bom_item,
+				},
+				callback: (r) => {
+					view.events.load_tree(r, node);
+				}
+			});
+
+			dialog.hide();
+		});
+
+	}
+
+	get_sub_assembly_modal_fields(read_only=false) {
+		return [
+			{ label: __("Sub Assembly Item"), fieldname: "item_code", fieldtype: "Link", options: "Item", reqd: 1, read_only: read_only },
+			{ fieldtype: "Column Break" },
+			{ label: __("Qty"), fieldname: "qty", default: 1.0, fieldtype: "Float", reqd: 1, read_only: read_only },
+			{ fieldtype: "Section Break" },
+			{ label: __("Raw Materials"), fieldname: "items", fieldtype: "Table", reqd: 1,
+				fields: [
+					{ label: __("Item"), fieldname: "item_code", fieldtype: "Link", options: "Item", reqd: 1, in_list_view: 1 },
+					{ label: __("Qty"), fieldname: "qty", default: 1.0, fieldtype: "Float", reqd: 1, in_list_view: 1 },
+				]
+			},
+		]
+	}
+
+	convert_to_sub_assembly(node, view) {
+		let dialog = new frappe.ui.Dialog({
+			fields: view.events.get_sub_assembly_modal_fields(true),
+			title: __("Add Sub Assembly"),
+		});
+
+		dialog.set_values({
+			item_code: node.data.value,
+			qty: node.data.qty,
+		});
+
+		dialog.show();
+		view.events.set_default_qty(dialog);
+
+		dialog.set_primary_action(__("Add"), () => {
+			let bom_item = dialog.get_values();
+
+			frappe.call({
+				method: "erpnext.manufacturing.doctype.bom_creator.bom_creator.add_sub_assembly",
+				args: {
+					parent: node.data.parent_id,
+					fg_item: node.data.value,
+					bom_item: bom_item,
+					fg_reference_id: node.data.name || this.frm.doc.name,
+					convert_to_sub_assembly: true,
+				},
+				callback: (r) => {
+					node.expandable = true;
+					view.events.load_tree(r, node);
+				}
+			});
+
+			dialog.hide();
+		});
+	}
+
+	set_default_qty(dialog) {
+		dialog.fields_dict.items.grid.fields_map.item_code.onchange = function (event) {
+			if (event) {
+				let name = $(event.currentTarget).closest('.grid-row').attr("data-name")
+				let item_row = dialog.fields_dict.items.grid.grid_rows_by_docname[name].doc;
+				item_row.qty = 1;
+				dialog.fields_dict.items.grid.refresh()
+			}
+		}
+	}
+
+	delete_node(node, view) {
+		frappe.confirm(__("Are you sure you want to delete this Item?"), () => {
+			frappe.call({
+				method: "erpnext.manufacturing.doctype.bom_creator.bom_creator.delete_node",
+				args: {
+					parent: node.data.parent_id,
+					fg_item: node.data.value,
+					doctype: node.data.doctype,
+					docname: node.data.name,
+				},
+				callback: (r) => {
+					view.events.load_tree(r, node.parent_node);
+				}
+			});
+		});
+	}
+
+	edit_qty(node, view) {
+		let qty = node.data.qty || this.frm.doc.qty;
+		frappe.prompt([
+			{ label: __("Qty"), fieldname: "qty", default: qty, fieldtype: "Float", reqd: 1 },
+		],
+		(data) => {
+			let doctype = node.data.doctype || this.frm.doc.doctype;
+			let docname = node.data.name || this.frm.doc.name;
+
+			frappe.call({
+				method: "erpnext.manufacturing.doctype.bom_creator.bom_creator.edit_qty",
+				args: {
+					doctype: doctype,
+					docname: docname,
+					qty: data.qty,
+					parent: node.data.parent_id,
+				},
+				callback: (r) => {
+					node.data.qty = data.qty;
+					let uom = node.data.uom || this.frm.doc.uom;
+					$(node.parent.get(0)).find(`[data-bom-qty-docname='${docname}']`).html(data.qty + " " + uom);
+					view.events.load_tree(r, node);
+				}
+			});
+		},
+		__("Edit Qty"),
+		__("Update"));
+	}
+
+	prepare_layout() {
+		let main_div = $(this.page)[0];
+
+		main_div.style.marginBottom = "15px";
+		$(main_div).find(".tree-children")[0].style.minHeight = "370px";
+		$(main_div).find(".tree-children")[0].style.maxHeight = "370px";
+		$(main_div).find(".tree-children")[0].style.overflowY = "auto";
+	}
+
+	load_tree(response, node) {
+		let item_row = "";
+		let parent_dom = ""
+		let total_amount = response.message.raw_material_cost;
+
+		frappe.views.trees["BOM Configurator"].tree.load_children(node);
+
+		while (node) {
+			item_row = response.message.items.filter(item => item.name === node.data.name);
+
+			if (item_row?.length) {
+				node.data.amount = item_row[0].amount;
+				total_amount = node.data.amount
+			} else {
+				total_amount = response.message.raw_material_cost;
+			}
+
+			parent_dom = $(node.parent.get(0));
+			total_amount = frappe.format(
+				total_amount, {
+					fieldtype: "Currency",
+					currency: this.frm.doc.currency
+				}
+			);
+
+			$($(parent_dom).find(".fg-item-amt")[0]).html(total_amount);
+			node = node.parent_node;
+
+		}
+
+	}
+}
+
+frappe.ui.BOMConfigurator = BOMConfigurator;
\ No newline at end of file
diff --git a/erpnext/public/js/controllers/accounts.js b/erpnext/public/js/controllers/accounts.js
index a2e4bda..3545521 100644
--- a/erpnext/public/js/controllers/accounts.js
+++ b/erpnext/public/js/controllers/accounts.js
@@ -116,7 +116,7 @@
 			account_head: function(frm, cdt, cdn) {
 				let d = locals[cdt][cdn];
 
-				if (doc.docstatus == 1) {
+				if (d.docstatus == 1) {
 					// Should not trigger any changes on change post submit
 					return;
 				}
diff --git a/erpnext/public/js/controllers/buying.js b/erpnext/public/js/controllers/buying.js
index 54f0aad..0860d9c 100644
--- a/erpnext/public/js/controllers/buying.js
+++ b/erpnext/public/js/controllers/buying.js
@@ -9,6 +9,7 @@
 		erpnext.buying.BuyingController = class BuyingController extends erpnext.TransactionController {
 			setup() {
 				super.setup();
+				this.toggle_enable_for_stock_uom("allow_to_edit_stock_uom_qty_for_purchase");
 				this.frm.email_field = "contact_email";
 			}
 
diff --git a/erpnext/public/js/controllers/taxes_and_totals.js b/erpnext/public/js/controllers/taxes_and_totals.js
index eeb09cb..70b70c3 100644
--- a/erpnext/public/js/controllers/taxes_and_totals.js
+++ b/erpnext/public/js/controllers/taxes_and_totals.js
@@ -135,7 +135,15 @@
 				}
 				else {
 					// allow for '0' qty on Credit/Debit notes
-					let qty = item.qty || (me.frm.doc.is_debit_note ? 1 : -1);
+					let qty = flt(item.qty);
+					if (!qty) {
+						qty = (me.frm.doc.is_debit_note ? 1 : -1);
+						if (me.frm.doc.doctype !== "Purchase Receipt" && me.frm.doc.is_return === 1) {
+							// In case of Purchase Receipt, qty can be 0 if all items are rejected
+							qty = flt(item.qty);
+						}
+					}
+
 					item.net_amount = item.amount = flt(item.rate * qty, precision("amount", item));
 				}
 
diff --git a/erpnext/public/js/controllers/transaction.js b/erpnext/public/js/controllers/transaction.js
index 59d2b15..b0a9e40 100644
--- a/erpnext/public/js/controllers/transaction.js
+++ b/erpnext/public/js/controllers/transaction.js
@@ -134,15 +134,6 @@
 					}
 				}
 			});
-
-			let sbb_field = this.frm.get_docfield('items', 'serial_and_batch_bundle');
-			if (sbb_field) {
-				sbb_field.get_route_options_for_new_doc = (row) => {
-					return {
-						'item_code': row.doc.item_code,
-					}
-				};
-			}
 		}
 
 		if(
@@ -207,15 +198,6 @@
 			});
 		}
 
-		let batch_no_field = this.frm.get_docfield("items", "batch_no");
-		if (batch_no_field) {
-			batch_no_field.get_route_options_for_new_doc = function(row) {
-				return {
-					"item": row.doc.item_code
-				}
-			};
-		}
-
 		if (this.frm.fields_dict["items"].grid.get_field('blanket_order')) {
 			this.frm.set_query("blanket_order", "items", function(doc, cdt, cdn) {
 				var item = locals[cdt][cdn];
@@ -242,6 +224,14 @@
 		}
 
 	}
+
+	toggle_enable_for_stock_uom(field) {
+		frappe.db.get_single_value('Stock Settings', field)
+		.then(value => {
+			this.frm.fields_dict["items"].grid.toggle_enable("stock_qty", value);
+		});
+	}
+
 	onload() {
 		var me = this;
 
@@ -268,6 +258,28 @@
 				}
 			]);
 		}
+
+		if(this.frm.fields_dict['items'].grid.get_field('serial_and_batch_bundle')) {
+			let sbb_field = this.frm.get_docfield('items', 'serial_and_batch_bundle');
+			if (sbb_field) {
+				sbb_field.get_route_options_for_new_doc = (row) => {
+					return {
+						'item_code': row.doc.item_code,
+					}
+				};
+			}
+		}
+
+		if(this.frm.fields_dict['items'].grid.get_field('batch_no')) {
+			let batch_no_field = this.frm.get_docfield('items', 'batch_no');
+			if (batch_no_field) {
+				batch_no_field.get_route_options_for_new_doc = function(row) {
+					return {
+						'item': row.doc.item_code
+					}
+				};
+			}
+		}
 	}
 
 	is_return() {
@@ -277,7 +289,7 @@
 	}
 
 	setup_quality_inspection() {
-		if(!in_list(["Delivery Note", "Sales Invoice", "Purchase Receipt", "Purchase Invoice"], this.frm.doc.doctype)) {
+		if(!in_list(["Delivery Note", "Sales Invoice", "Purchase Receipt", "Purchase Invoice", "Subcontracting Receipt"], this.frm.doc.doctype)) {
 			return;
 		}
 
@@ -289,7 +301,7 @@
 			this.frm.page.set_inner_btn_group_as_primary(__('Create'));
 		}
 
-		const inspection_type = in_list(["Purchase Receipt", "Purchase Invoice"], this.frm.doc.doctype)
+		const inspection_type = in_list(["Purchase Receipt", "Purchase Invoice", "Subcontracting Receipt"], this.frm.doc.doctype)
 			? "Incoming" : "Outgoing";
 
 		let quality_inspection_field = this.frm.get_docfield("items", "quality_inspection");
@@ -358,7 +370,6 @@
 	}
 
 	refresh() {
-
 		erpnext.toggle_naming_series();
 		erpnext.hide_company();
 		this.set_dynamic_labels();
@@ -702,7 +713,13 @@
 	}
 
 	on_submit() {
-		refresh_field("items");
+		this.refresh_serial_batch_bundle_field();
+	}
+
+	refresh_serial_batch_bundle_field() {
+		frappe.route_hooks.after_submit = (frm_obj) => {
+			frm_obj.reload_doc();
+		}
 	}
 
 	update_qty(cdt, cdn) {
@@ -1182,6 +1199,16 @@
 		]);
 	}
 
+	stock_qty(doc, cdt, cdn) {
+		let item = frappe.get_doc(cdt, cdn);
+		item.conversion_factor = 1.0;
+		if (item.stock_qty) {
+			item.conversion_factor = flt(item.stock_qty) / flt(item.qty);
+		}
+
+		refresh_field("conversion_factor", item.name, item.parentfield);
+	}
+
 	calculate_stock_uom_rate(doc, cdt, cdn) {
 		let item = frappe.get_doc(cdt, cdn);
 		item.stock_uom_rate = flt(item.rate)/flt(item.conversion_factor);
@@ -2067,6 +2094,7 @@
 		const me = this;
 		const dialog = new frappe.ui.Dialog({
 			title: __("Select Items for Quality Inspection"),
+			size: "extra-large",
 			fields: fields,
 			primary_action: function () {
 				const data = dialog.get_values();
diff --git a/erpnext/public/js/erpnext.bundle.js b/erpnext/public/js/erpnext.bundle.js
index 966a9e1..dee9a06 100644
--- a/erpnext/public/js/erpnext.bundle.js
+++ b/erpnext/public/js/erpnext.bundle.js
@@ -16,7 +16,8 @@
 import "./utils/supplier_quick_entry";
 import "./call_popup/call_popup";
 import "./utils/dimension_tree_filter";
-import "./utils/ledger_preview.js"
+import "./utils/ledger_preview.js";
+import "./utils/unreconcile.js";
 import "./utils/barcode_scanner";
 import "./telephony";
 import "./templates/call_link.html";
@@ -29,5 +30,6 @@
 import "./utils/sales_common.js";
 import "./controllers/buying.js";
 import "./utils/demo.js";
+import "./financial_statements.js";
 
 // import { sum } from 'frappe/public/utils/util.js'
diff --git a/erpnext/public/js/financial_statements.js b/erpnext/public/js/financial_statements.js
index 959cf50..907a775 100644
--- a/erpnext/public/js/financial_statements.js
+++ b/erpnext/public/js/financial_statements.js
@@ -6,8 +6,10 @@
 		if (data && column.fieldname=="account") {
 			value = data.account_name || value;
 
-			column.link_onclick =
-				"erpnext.financial_statements.open_general_ledger(" + JSON.stringify(data) + ")";
+			if (data.account) {
+				column.link_onclick =
+					"erpnext.financial_statements.open_general_ledger(" + JSON.stringify(data) + ")";
+			}
 			column.is_tree = true;
 		}
 
diff --git a/erpnext/public/js/help_links.js b/erpnext/public/js/help_links.js
index 1c3f43e..6742761 100644
--- a/erpnext/public/js/help_links.js
+++ b/erpnext/public/js/help_links.js
@@ -5,7 +5,7 @@
 frappe.help.help_links["Form/Rename Tool"] = [
 	{
 		label: "Bulk Rename",
-		url: docsUrl + "user/manual/en/using-erpnext/articles/bulk-rename",
+		url: docsUrl + "user/manual/en/transactions-bulk-rename",
 	},
 ];
 
@@ -14,201 +14,174 @@
 frappe.help.help_links["List/User"] = [
 	{
 		label: "New User",
-		url:
-			docsUrl +
-			"user/manual/en/setting-up/users-and-permissions/adding-users",
+		url: docsUrl + "user/manual/en/adding-users",
 	},
 	{
 		label: "Rename User",
-		url: docsUrl + "user/manual/en/setting-up/articles/rename-user",
+		url: docsUrl + "user/manual/en/renaming-documents",
 	},
 ];
 
 frappe.help.help_links["permission-manager"] = [
 	{
-		label: "Role Permissions Manager",
-		url:
-			docsUrl +
-			"user/manual/en/setting-up/users-and-permissions/role-based-permissions",
+		label: "Role Based Permissions",
+		url: docsUrl + "user/manual/en/role-based-permissions",
 	},
 	{
 		label: "Managing Perm Level in Permissions Manager",
-		url: docsUrl + "user/manual/en/setting-up/articles/managing-perm-level",
+		url: docsUrl + "user/manual/en/managing-perm-level",
 	},
 	{
 		label: "User Permissions",
-		url:
-			docsUrl +
-			"user/manual/en/setting-up/users-and-permissions/user-permissions",
+		url: docsUrl + "user/manual/en/user-permissions",
 	},
 	{
 		label: "Sharing",
-		url:
-			docsUrl + "user/manual/en/setting-up/users-and-permissions/sharing",
+		url: docsUrl + "user/manual/en/sharing",
 	},
 	{
 		label: "Password",
-		url: docsUrl + "user/manual/en/setting-up/articles/change-password",
+		url: docsUrl + "user/manual/en/change-password",
 	},
 ];
 
 frappe.help.help_links["Form/System Settings"] = [
 	{
 		label: "System Settings",
-		url: docsUrl + "user/manual/en/setting-up/settings/system-settings",
+		url: docsUrl + "user/manual/en/system-settings",
 	},
 ];
 
 frappe.help.help_links["Form/Data Import"] = [
 	{
 		label: "Importing and Exporting Data",
-		url: docsUrl + "user/manual/en/setting-up/data/data-import",
-	},
-	{
-		label: "Overwriting Data from Data Import Tool",
-		url:
-			docsUrl +
-			"user/manual/en/setting-up/articles/overwriting-data-from-data-import-tool",
+		url: docsUrl + "user/manual/en/data-import",
 	},
 ];
 
 frappe.help.help_links["List/Data Import"] = [
 	{
 		label: "Importing and Exporting Data",
-		url: docsUrl + "user/manual/en/setting-up/data/data-import",
-	},
-	{
-		label: "Overwriting Data from Data Import Tool",
-		url:
-			docsUrl +
-			"user/manual/en/setting-up/articles/overwriting-data-from-data-import-tool",
+		url: docsUrl + "user/manual/en/data-import",
 	},
 ];
 
 frappe.help.help_links["module_setup"] = [
 	{
 		label: "Role Permissions Manager",
-		url:
-			docsUrl +
-			"user/manual/en/setting-up/users-and-permissions/role-based-permissions",
+		url: docsUrl + "user/manual/en/role-based-permissions",
 	},
 ];
 
-frappe.help.help_links["Form/Naming Series"] = [
+frappe.help.help_links["Form/Document Naming Settings"] = [
 	{
 		label: "Naming Series",
-		url: docsUrl + "user/manual/en/setting-up/settings/naming-series",
-	},
-	{
-		label: "Setting the Current Value for Naming Series",
-		url:
-			docsUrl +
-			"user/manual/en/setting-up/articles/naming-series-current-value",
+		url: docsUrl + "user/manual/en/document-naming-settings",
 	},
 ];
 
 frappe.help.help_links["Form/Global Defaults"] = [
 	{
 		label: "Global Settings",
-		url: docsUrl + "user/manual/en/setting-up/settings/global-defaults",
+		url: docsUrl + "user/manual/en/global-defaults",
 	},
 ];
 
 frappe.help.help_links["List/Print Heading"] = [
 	{
 		label: "Print Heading",
-		url: docsUrl + "user/manual/en/setting-up/print/print-headings",
+		url: docsUrl + "user/manual/en/print-headings",
 	},
 ];
 
 frappe.help.help_links["Form/Print Heading"] = [
 	{
 		label: "Print Heading",
-		url: docsUrl + "user/manual/en/setting-up/print/print-headings",
+		url: docsUrl + "user/manual/en/print-headings",
 	},
 ];
 
 frappe.help.help_links["List/Letter Head"] = [
 	{
 		label: "Letter Head",
-		url: docsUrl + "user/manual/en/setting-up/print/letter-head",
+		url: docsUrl + "user/manual/en/letter-head",
 	},
 ];
 
 frappe.help.help_links["List/Address Template"] = [
 	{
 		label: "Address Template",
-		url: docsUrl + "user/manual/en/setting-up/print/address-template",
+		url: docsUrl + "user/manual/en/address-template",
 	},
 ];
 
 frappe.help.help_links["List/Terms and Conditions"] = [
 	{
 		label: "Terms and Conditions",
-		url: docsUrl + "user/manual/en/setting-up/print/terms-and-conditions",
+		url: docsUrl + "user/manual/en/terms-and-conditions",
 	},
 ];
 
 frappe.help.help_links["List/Cheque Print Template"] = [
 	{
 		label: "Cheque Print Template",
-		url: docsUrl + "user/manual/en/setting-up/print/cheque-print-template",
+		url: docsUrl + "user/manual/en/cheque-print-template",
 	},
 ];
 
 frappe.help.help_links["List/Email Account"] = [
 	{
 		label: "Email Account",
-		url: docsUrl + "user/manual/en/setting-up/email/email-account",
+		url: docsUrl + "user/manual/en/email-account",
 	},
 ];
 
 frappe.help.help_links["List/Notification"] = [
 	{
 		label: "Notification",
-		url: docsUrl + "user/manual/en/setting-up/notifications",
+		url: docsUrl + "user/manual/en/notifications",
 	},
 ];
 
 frappe.help.help_links["Form/Notification"] = [
 	{
 		label: "Notification",
-		url: docsUrl + "user/manual/en/setting-up/notifications",
+		url: docsUrl + "user/manual/en/notifications",
 	},
 ];
 
 frappe.help.help_links["Form/Email Digest"] = [
 	{
 		label: "Email Digest",
-		url: docsUrl + "user/manual/en/setting-up/email/email-digest",
+		url: docsUrl + "user/manual/en/email-digest",
 	},
 ];
 
 frappe.help.help_links["Form/Email Digest"] = [
 	{
 		label: "Email Digest",
-		url: docsUrl + "user/manual/en/setting-up/email/email-digest",
+		url: docsUrl + "user/manual/en/email-digest",
 	},
 ];
 
 frappe.help.help_links["List/Auto Email Report"] = [
 	{
 		label: "Auto Email Reports",
-		url: docsUrl + "user/manual/en/setting-up/email/auto-email-reports",
+		url: docsUrl + "user/manual/en/auto-email-reports",
 	},
 ];
 
 frappe.help.help_links["Form/Print Settings"] = [
 	{
 		label: "Print Settings",
-		url: docsUrl + "user/manual/en/setting-up/print/print-settings",
+		url: docsUrl + "user/manual/en/print-settings",
 	},
 ];
 
 frappe.help.help_links["print-format-builder"] = [
 	{
 		label: "Print Format Builder",
-		url: docsUrl + "user/manual/en/setting-up/print/print-format-builder",
+		url: docsUrl + "user/manual/en/print-format-builder",
 	},
 ];
 
@@ -217,171 +190,160 @@
 frappe.help.help_links["Form/PayPal Settings"] = [
 	{
 		label: "PayPal Settings",
-		url:
-			docsUrl +
-			"user/manual/en/erpnext_integration/paypal-integration",
+		url: docsUrl + "user/manual/en/paypal-integration",
 	},
 ];
 
 frappe.help.help_links["Form/Razorpay Settings"] = [
 	{
 		label: "Razorpay Settings",
-		url:
-			docsUrl +
-			"user/manual/en/erpnext_integration/razorpay-integration",
+		url: docsUrl + "user/manual/en/razorpay-integration",
 	},
 ];
 
 frappe.help.help_links["Form/Dropbox Settings"] = [
 	{
 		label: "Dropbox Settings",
-		url: docsUrl + "user/manual/en/erpnext_integration/dropbox-backup",
+		url: docsUrl + "user/manual/en/dropbox-backup",
 	},
 ];
 
 frappe.help.help_links["Form/LDAP Settings"] = [
 	{
 		label: "LDAP Settings",
-		url:
-			docsUrl + "user/manual/en/erpnext_integration/ldap-integration",
+		url: docsUrl + "user/manual/en/ldap-integration",
 	},
 ];
 
 frappe.help.help_links["Form/Stripe Settings"] = [
 	{
 		label: "Stripe Settings",
-		url:
-			docsUrl +
-			"user/manual/en/erpnext_integration/stripe-integration",
+		url: docsUrl + "user/manual/en/stripe-integration",
 	},
 ];
 
 //Sales
 
 frappe.help.help_links["Form/Quotation"] = [
-	{ label: "Quotation", url: docsUrl + "user/manual/en/selling/quotation" },
+	{ label: "Quotation", url: docsUrl + "user/manual/en/quotation" },
 	{
 		label: "Applying Discount",
-		url: docsUrl + "user/manual/en/selling/articles/applying-discount",
+		url: docsUrl + "user/manual/en/applying-discount",
 	},
 	{
 		label: "Sales Person",
-		url:
-			docsUrl +
-			"user/manual/en/selling/articles/sales-persons-in-the-sales-transactions",
+		url: docsUrl + "user/manual/en/sales-persons-in-the-sales-transactions",
 	},
 	{
 		label: "Applying Margin",
-		url: docsUrl + "user/manual/en/selling/articles/adding-margin",
+		url: docsUrl + "user/manual/en/adding-margin",
 	},
 ];
 
 frappe.help.help_links["List/Customer"] = [
-	{ label: "Customer", url: docsUrl + "user/manual/en/CRM/customer" },
+	{ label: "Customer", url: docsUrl + "user/manual/en/customer" },
 	{
 		label: "Credit Limit",
-		url: docsUrl + "user/manual/en/accounts/credit-limit",
+		url: docsUrl + "user/manual/en/credit-limit",
 	},
 ];
 
 frappe.help.help_links["Form/Customer"] = [
-	{ label: "Customer", url: docsUrl + "user/manual/en/CRM/customer" },
+	{ label: "Customer", url: docsUrl + "user/manual/en/customer" },
 	{
 		label: "Credit Limit",
-		url: docsUrl + "user/manual/en/accounts/credit-limit",
+		url: docsUrl + "user/manual/en/credit-limit",
 	},
 ];
 
 frappe.help.help_links["List/Sales Taxes and Charges Template"] = [
 	{
 		label: "Setting Up Taxes",
-		url: docsUrl + "user/manual/en/setting-up/setting-up-taxes",
+		url: docsUrl + "user/manual/en/setting-up-taxes",
 	},
 ];
 
 frappe.help.help_links["Form/Sales Taxes and Charges Template"] = [
 	{
 		label: "Setting Up Taxes",
-		url: docsUrl + "user/manual/en/setting-up/setting-up-taxes",
+		url: docsUrl + "user/manual/en/setting-up-taxes",
 	},
 ];
 
 frappe.help.help_links["List/Sales Order"] = [
 	{
 		label: "Sales Order",
-		url: docsUrl + "user/manual/en/selling/sales-order",
+		url: docsUrl + "user/manual/en/sales-order",
 	},
 	{
 		label: "Recurring Sales Order",
-		url: docsUrl + "user/manual/en/accounts/articles/recurring-orders-and-invoices",
+		url: docsUrl + "user/manual/en/auto-repeat",
 	},
 	{
 		label: "Applying Discount",
-		url: docsUrl + "user/manual/en/selling/articles/applying-discount",
+		url: docsUrl + "user/manual/en/applying-discount",
 	},
 ];
 
 frappe.help.help_links["Form/Sales Order"] = [
 	{
 		label: "Sales Order",
-		url: docsUrl + "user/manual/en/selling/sales-order",
+		url: docsUrl + "user/manual/en/sales-order",
 	},
 	{
 		label: "Recurring Sales Order",
-		url: docsUrl + "user/manual/en/accounts/articles/recurring-orders-and-invoices",
+		url: docsUrl + "user/manual/en/auto-repeat",
 	},
 	{
 		label: "Applying Discount",
-		url: docsUrl + "user/manual/en/selling/articles/applying-discount",
+		url: docsUrl + "user/manual/en/applying-discount",
 	},
 	{
 		label: "Drop Shipping",
-		url: docsUrl + "user/manual/en/selling/articles/drop-shipping",
+		url: docsUrl + "user/manual/en/drop-shipping",
 	},
 	{
 		label: "Sales Person",
-		url:
-			docsUrl +
-			"user/manual/en/selling/articles/sales-persons-in-the-sales-transactions",
+		url: docsUrl + "user/manual/en/sales-persons-in-the-sales-transactions",
 	},
 	{
 		label: "Close Sales Order",
-		url: docsUrl + "user/manual/en/selling/articles/close-sales-order",
+		url: docsUrl + "user/manual/en/close-sales-order",
 	},
 	{
 		label: "Applying Margin",
-		url: docsUrl + "user/manual/en/selling/articles/adding-margin",
+		url: docsUrl + "user/manual/en/adding-margin",
 	},
 ];
 
 frappe.help.help_links["Form/Product Bundle"] = [
 	{
 		label: "Product Bundle",
-		url: docsUrl + "user/manual/en/selling/product-bundle",
+		url: docsUrl + "user/manual/en/product-bundle",
 	},
 ];
 
 frappe.help.help_links["Form/Selling Settings"] = [
 	{
 		label: "Selling Settings",
-		url: docsUrl + "user/manual/en/selling/selling-settings",
+		url: docsUrl + "user/manual/en/selling-settings",
 	},
 ];
 
 //Buying
 
 frappe.help.help_links["List/Supplier"] = [
-	{ label: "Supplier", url: docsUrl + "user/manual/en/buying/supplier" },
+	{ label: "Supplier", url: docsUrl + "user/manual/en/supplier" },
 ];
 
 frappe.help.help_links["Form/Supplier"] = [
-	{ label: "Supplier", url: docsUrl + "user/manual/en/buying/supplier" },
+	{ label: "Supplier", url: docsUrl + "user/manual/en/supplier" },
 ];
 
 frappe.help.help_links["Form/Request for Quotation"] = [
 	{
 		label: "Request for Quotation",
-		url: docsUrl + "user/manual/en/buying/request-for-quotation",
+		url: docsUrl + "user/manual/en/request-for-quotation",
 	},
 	{
 		label: "RFQ Video",
@@ -392,113 +354,105 @@
 frappe.help.help_links["Form/Supplier Quotation"] = [
 	{
 		label: "Supplier Quotation",
-		url: docsUrl + "user/manual/en/buying/supplier-quotation",
+		url: docsUrl + "user/manual/en/supplier-quotation",
 	},
 ];
 
 frappe.help.help_links["Form/Buying Settings"] = [
 	{
 		label: "Buying Settings",
-		url: docsUrl + "user/manual/en/buying/setup/buying-settings",
+		url: docsUrl + "user/manual/en/buying-settings",
 	},
 ];
 
 frappe.help.help_links["List/Purchase Order"] = [
 	{
 		label: "Purchase Order",
-		url: docsUrl + "user/manual/en/buying/purchase-order",
+		url: docsUrl + "user/manual/en/purchase-order",
 	},
 	{
 		label: "Recurring Purchase Order",
-		url: docsUrl + "user/manual/en/accounts/articles/recurring-orders-and-invoices",
+		url: docsUrl + "user/manual/en/auto-repeat",
 	},
 ];
 
 frappe.help.help_links["Form/Purchase Order"] = [
 	{
 		label: "Purchase Order",
-		url: docsUrl + "user/manual/en/buying/purchase-order",
+		url: docsUrl + "user/manual/en/purchase-order",
 	},
 	{
 		label: "Item UoM",
-		url:
-			docsUrl +
-			"user/manual/en/buying/articles/purchasing-in-different-unit",
+		url: docsUrl + "user/manual/en/purchasing-in-different-unit",
 	},
 	{
 		label: "Supplier Item Code",
-		url:
-			docsUrl +
-			"user/manual/en/buying/articles/maintaining-suppliers-part-no-in-item",
+		url: docsUrl + "user/manual/en/maintaining-suppliers-part-no-in-item",
 	},
 	{
 		label: "Recurring Purchase Order",
-		url: docsUrl + "user/manual/en/accounts/articles/recurring-orders-and-invoices",
+		url: docsUrl + "user/manual/en/auto-repeat",
 	},
 	{
 		label: "Subcontracting",
-		url: docsUrl + "user/manual/en/manufacturing/subcontracting",
+		url: docsUrl + "user/manual/en/subcontracting",
 	},
 ];
 
 frappe.help.help_links["List/Purchase Taxes and Charges Template"] = [
 	{
 		label: "Setting Up Taxes",
-		url: docsUrl + "user/manual/en/setting-up/setting-up-taxes",
+		url: docsUrl + "user/manual/en/setting-up-taxes",
 	},
 ];
 
 frappe.help.help_links["List/Price List"] = [
 	{
 		label: "Price List",
-		url: docsUrl + "user/manual/en/stock/price-lists",
+		url: docsUrl + "user/manual/en/price-lists",
 	},
 ];
 
 frappe.help.help_links["List/Authorization Rule"] = [
 	{
 		label: "Authorization Rule",
-		url: docsUrl + "user/manual/en/customize-erpnext/authorization-rule",
+		url: docsUrl + "user/manual/en/authorization-rule",
 	},
 ];
 
 frappe.help.help_links["Form/SMS Settings"] = [
 	{
 		label: "SMS Settings",
-		url: docsUrl + "user/manual/en/setting-up/sms-setting",
+		url: docsUrl + "user/manual/en/sms-setting",
 	},
 ];
 
 frappe.help.help_links["List/Stock Reconciliation"] = [
 	{
 		label: "Stock Reconciliation",
-		url:
-			docsUrl +
-			"user/manual/en/stock/stock-reconciliation",
+		url: docsUrl + "user/manual/en/stock-reconciliation",
 	},
 ];
 
 frappe.help.help_links["Tree/Territory"] = [
 	{
 		label: "Territory",
-		url: docsUrl + "user/manual/en/selling/territory",
+		url: docsUrl + "user/manual/en/territory",
 	},
 ];
 
 frappe.help.help_links["List/Workflow"] = [
-	{ label: "Workflow", url: docsUrl + "user/manual/en/setting-up/workflows" },
+	{ label: "Workflow", url: docsUrl + "user/manual/en/workflows" },
 ];
 
 frappe.help.help_links["List/Company"] = [
 	{
 		label: "Company",
-		url: docsUrl + "user/manual/en/setting-up/company-setup",
+		url: docsUrl + "user/manual/en/company-setup",
 	},
 	{
 		label: "Delete All Related Transactions for a Company",
-		url:
-			docsUrl +
-			"user/manual/en/setting-up/articles/delete-a-company-and-all-related-transactions",
+		url: docsUrl + "user/manual/en/delete_company_transactions",
 	},
 ];
 
@@ -507,116 +461,114 @@
 frappe.help.help_links["Tree/Account"] = [
 	{
 		label: "Chart of Accounts",
-		url: docsUrl + "user/manual/en/accounts/chart-of-accounts",
+		url: docsUrl + "user/manual/en/chart-of-accounts",
 	},
 	{
 		label: "Managing Tree Mastes",
-		url:
-			docsUrl +
-			"user/manual/en/setting-up/articles/managing-tree-structure-masters",
+		url: docsUrl + "user/manual/en/managing-tree-structure-masters",
 	},
 ];
 
 frappe.help.help_links["Form/Sales Invoice"] = [
 	{
 		label: "Sales Invoice",
-		url: docsUrl + "user/manual/en/accounts/sales-invoice",
+		url: docsUrl + "user/manual/en/sales-invoice",
 	},
 	{
 		label: "Accounts Opening Balance",
-		url: docsUrl + "user/manual/en/accounts/opening-balance",
+		url: docsUrl + "user/manual/en/opening-balance",
 	},
 	{
 		label: "Sales Return",
-		url: docsUrl + "user/manual/en/stock/sales-return",
+		url: docsUrl + "user/manual/en/sales-return",
 	},
 	{
 		label: "Recurring Sales Invoice",
-		url: docsUrl + "user/manual/en/accounts/articles/recurring-orders-and-invoices",
+		url: docsUrl + "user/manual/en/auto-repeat",
 	},
 ];
 
 frappe.help.help_links["List/Sales Invoice"] = [
 	{
 		label: "Sales Invoice",
-		url: docsUrl + "user/manual/en/accounts/sales-invoice",
+		url: docsUrl + "user/manual/en/sales-invoice",
 	},
 	{
 		label: "Accounts Opening Balance",
-		url: docsUrl + "user/manual/en/accounts/opening-balances",
+		url: docsUrl + "user/manual/en/opening-balance",
 	},
 	{
 		label: "Sales Return",
-		url: docsUrl + "user/manual/en/stock/sales-return",
+		url: docsUrl + "user/manual/en/sales-return",
 	},
 	{
 		label: "Recurring Sales Invoice",
-		url: docsUrl + "user/manual/en/accounts/articles/recurring-orders-and-invoices",
+		url: docsUrl + "user/manual/en/auto-repeat",
 	},
 ];
 
 frappe.help.help_links["point-of-sale"] = [
 	{
 		label: "Point of Sale Invoice",
-		url: docsUrl + "user/manual/en/accounts/point-of-sales",
+		url: docsUrl + "user/manual/en/point-of-sales",
 	},
 ];
 
 frappe.help.help_links["List/POS Profile"] = [
 	{
 		label: "Point of Sale Profile",
-		url: docsUrl + "user/manual/en/accounts/pos-profile",
+		url: docsUrl + "user/manual/en/pos-profile",
 	},
 ];
 
 frappe.help.help_links["Form/POS Profile"] = [
 	{
 		label: "POS Profile",
-		url: docsUrl + "user/manual/en/accounts/pos-profile",
+		url: docsUrl + "user/manual/en/pos-profile",
 	},
 ];
 
 frappe.help.help_links["List/Purchase Invoice"] = [
 	{
 		label: "Purchase Invoice",
-		url: docsUrl + "user/manual/en/accounts/purchase-invoice",
+		url: docsUrl + "user/manual/en/purchase-invoice",
 	},
 	{
 		label: "Accounts Opening Balance",
-		url: docsUrl + "user/manual/en/accounts/opening-balance",
+		url: docsUrl + "user/manual/en/opening-balance",
 	},
 	{
 		label: "Recurring Purchase Invoice",
-		url: docsUrl + "user/manual/en/accounts/articles/recurring-orders-and-invoices",
+		url: docsUrl + "user/manual/en/auto-repeat",
 	},
 ];
 
 frappe.help.help_links["List/Journal Entry"] = [
 	{
 		label: "Journal Entry",
-		url: docsUrl + "user/manual/en/accounts/journal-entry",
+		url: docsUrl + "user/manual/en/journal-entry",
 	},
 	{
 		label: "Advance Payment Entry",
-		url: docsUrl + "user/manual/en/accounts/advance-payment-entry",
+		url: docsUrl + "user/manual/en/advance-payment-entry",
 	},
 	{
 		label: "Accounts Opening Balance",
-		url: docsUrl + "user/manual/en/accounts/opening-balance",
+		url: docsUrl + "user/manual/en/opening-balance",
 	},
 ];
 
 frappe.help.help_links["List/Payment Entry"] = [
 	{
 		label: "Payment Entry",
-		url: docsUrl + "user/manual/en/accounts/payment-entry",
+		url: docsUrl + "user/manual/en/payment-entry",
 	},
 ];
 
 frappe.help.help_links["List/Payment Request"] = [
 	{
 		label: "Payment Request",
-		url: docsUrl + "user/manual/en/accounts/payment-request",
+		url: docsUrl + "user/manual/en/payment-request",
 	},
 ];
 
@@ -630,30 +582,29 @@
 frappe.help.help_links["List/Asset Category"] = [
 	{
 		label: "Asset Category",
-		url: docsUrl + "user/manual/en/asset/asset-category",
+		url: docsUrl + "user/manual/en/asset-category",
 	},
 ];
 
 frappe.help.help_links["Tree/Cost Center"] = [
-	{ label: "Budgeting", url: docsUrl + "user/manual/en/accounts/budgeting" },
+	{ label: "Budgeting", url: docsUrl + "user/manual/en/budgeting" },
 ];
 
 //Stock
 
 frappe.help.help_links["List/Item"] = [
-	{ label: "Item", url: docsUrl + "user/manual/en/stock/item" },
+	{ label: "Item", url: docsUrl + "user/manual/en/item" },
 	{
 		label: "Item Price",
-		url: docsUrl + "user/manual/en/stock/item-price",
+		url: docsUrl + "user/manual/en/item-price",
 	},
 	{
 		label: "Barcode",
-		url:
-			docsUrl + "user/manual/en/stock/articles/track-items-using-barcode",
+		url: docsUrl + "user/manual/en/track-items-using-barcode",
 	},
 	{
 		label: "Item Wise Taxation",
-		url: docsUrl + "user/manual/en/accounts/item-tax-template",
+		url: docsUrl + "user/manual/en/item-tax-template",
 	},
 	{
 		label: "Managing Fixed Assets",
@@ -661,34 +612,33 @@
 	},
 	{
 		label: "Item Codification",
-		url: docsUrl + "user/manual/en/stock/articles/item-codification",
+		url: docsUrl + "user/manual/en/item-codification",
 	},
 	{
 		label: "Item Variants",
-		url: docsUrl + "user/manual/en/stock/item-variants",
+		url: docsUrl + "user/manual/en/item-variants",
 	},
 	{
 		label: "Item Valuation",
 		url:
 			docsUrl +
-			"user/manual/en/stock/articles/calculation-of-valuation-rate-in-fifo-and-moving-average",
+			"user/manual/en/calculation-of-valuation-rate-in-fifo-and-moving-average",
 	},
 ];
 
 frappe.help.help_links["Form/Item"] = [
-	{ label: "Item", url: docsUrl + "user/manual/en/stock/item" },
+	{ label: "Item", url: docsUrl + "user/manual/en/item" },
 	{
 		label: "Item Price",
-		url: docsUrl + "user/manual/en/stock/item-price",
+		url: docsUrl + "user/manual/en/item-price",
 	},
 	{
 		label: "Barcode",
-		url:
-			docsUrl + "user/manual/en/stock/articles/track-items-using-barcode",
+		url: docsUrl + "user/manual/en/track-items-using-barcode",
 	},
 	{
 		label: "Item Wise Taxation",
-		url: docsUrl + "user/manual/en/accounts/item-tax-template",
+		url: docsUrl + "user/manual/en/item-tax-template",
 	},
 	{
 		label: "Managing Fixed Assets",
@@ -696,240 +646,226 @@
 	},
 	{
 		label: "Item Codification",
-		url: docsUrl + "user/manual/en/stock/articles/item-codification",
+		url: docsUrl + "user/manual/en/item-codification",
 	},
 	{
 		label: "Item Variants",
-		url: docsUrl + "user/manual/en/stock/item-variants",
+		url: docsUrl + "user/manual/en/item-variants",
 	},
 	{
 		label: "Item Valuation",
-		url:
-			docsUrl +
-			"user/manual/en/stock/item/item-valuation-fifo-and-moving-average",
+		url: docsUrl + "user/manual/en/item-valuation-transactions",
 	},
 ];
 
 frappe.help.help_links["List/Purchase Receipt"] = [
 	{
 		label: "Purchase Receipt",
-		url: docsUrl + "user/manual/en/stock/purchase-receipt",
+		url: docsUrl + "user/manual/en/purchase-receipt",
 	},
 	{
 		label: "Barcode",
-		url:
-			docsUrl + "user/manual/en/stock/articles/track-items-using-barcode",
+		url: docsUrl + "user/manual/en/track-items-using-barcode",
 	},
 ];
 
 frappe.help.help_links["List/Delivery Note"] = [
 	{
 		label: "Delivery Note",
-		url: docsUrl + "user/manual/en/stock/delivery-note",
+		url: docsUrl + "user/manual/en/delivery-note",
 	},
 	{
 		label: "Barcode",
-		url:
-			docsUrl + "user/manual/en/stock/articles/track-items-using-barcode",
+		url: docsUrl + "user/manual/en/track-items-using-barcode",
 	},
 	{
 		label: "Sales Return",
-		url: docsUrl + "user/manual/en/stock/sales-return",
+		url: docsUrl + "user/manual/en/sales-return",
 	},
 ];
 
 frappe.help.help_links["Form/Delivery Note"] = [
 	{
 		label: "Delivery Note",
-		url: docsUrl + "user/manual/en/stock/delivery-note",
+		url: docsUrl + "user/manual/en/delivery-note",
 	},
 	{
 		label: "Sales Return",
-		url: docsUrl + "user/manual/en/stock/sales-return",
+		url: docsUrl + "user/manual/en/sales-return",
 	},
 	{
 		label: "Barcode",
-		url:
-			docsUrl + "user/manual/en/stock/articles/track-items-using-barcode",
+		url: docsUrl + "user/manual/en/track-items-using-barcode",
 	},
 ];
 
 frappe.help.help_links["List/Installation Note"] = [
 	{
 		label: "Installation Note",
-		url: docsUrl + "user/manual/en/stock/installation-note",
+		url: docsUrl + "user/manual/en/installation-note",
 	},
 ];
 
 frappe.help.help_links["List/Budget"] = [
-	{ label: "Budgeting", url: docsUrl + "user/manual/en/accounts/budgeting" },
+	{ label: "Budgeting", url: docsUrl + "user/manual/en/budgeting" },
 ];
 
 frappe.help.help_links["List/Material Request"] = [
 	{
 		label: "Material Request",
-		url: docsUrl + "user/manual/en/stock/material-request",
+		url: docsUrl + "user/manual/en/material-request",
 	},
 	{
 		label: "Auto-creation of Material Request",
-		url:
-			docsUrl +
-			"user/manual/en/stock/articles/auto-creation-of-material-request",
+		url: docsUrl + "user/manual/en/auto-creation-of-material-request",
 	},
 ];
 
 frappe.help.help_links["Form/Material Request"] = [
 	{
 		label: "Material Request",
-		url: docsUrl + "user/manual/en/stock/material-request",
+		url: docsUrl + "user/manual/en/material-request",
 	},
 	{
 		label: "Auto-creation of Material Request",
-		url:
-			docsUrl +
-			"user/manual/en/stock/articles/auto-creation-of-material-request",
+		url: docsUrl + "user/manual/en/auto-creation-of-material-request",
 	},
 ];
 
 frappe.help.help_links["Form/Stock Entry"] = [
-	{ label: "Stock Entry", url: docsUrl + "user/manual/en/stock/stock-entry" },
+	{ label: "Stock Entry", url: docsUrl + "user/manual/en/stock-entry" },
 	{
 		label: "Stock Entry Types",
-		url: docsUrl + "user/manual/en/stock/articles/stock-entry-purpose",
+		url: docsUrl + "user/manual/en/stock-entry-purpose",
 	},
 	{
 		label: "Repack Entry",
-		url: docsUrl + "user/manual/en/stock/articles/repack-entry",
+		url: docsUrl + "user/manual/en/repack-entry",
 	},
 	{
 		label: "Opening Stock",
-		url: docsUrl + "user/manual/en/stock/opening-stock",
+		url: docsUrl + "user/manual/en/opening-stock",
 	},
 	{
 		label: "Subcontracting",
-		url: docsUrl + "user/manual/en/manufacturing/subcontracting",
+		url: docsUrl + "user/manual/en/subcontracting",
 	},
 ];
 
 frappe.help.help_links["List/Stock Entry"] = [
-	{ label: "Stock Entry", url: docsUrl + "user/manual/en/stock/stock-entry" },
+	{ label: "Stock Entry", url: docsUrl + "user/manual/en/stock-entry" },
 ];
 
 frappe.help.help_links["Tree/Warehouse"] = [
-	{ label: "Warehouse", url: docsUrl + "user/manual/en/stock/warehouse" },
+	{ label: "Warehouse", url: docsUrl + "user/manual/en/warehouse" },
 ];
 
 frappe.help.help_links["List/Serial No"] = [
-	{ label: "Serial No", url: docsUrl + "user/manual/en/stock/serial-no" },
+	{ label: "Serial No", url: docsUrl + "user/manual/en/serial-no" },
 ];
 
 frappe.help.help_links["Form/Serial No"] = [
-	{ label: "Serial No", url: docsUrl + "user/manual/en/stock/serial-no" },
+	{ label: "Serial No", url: docsUrl + "user/manual/en/serial-no" },
 ];
 
 frappe.help.help_links["List/Batch"] = [
-	{ label: "Batch", url: docsUrl + "user/manual/en/stock/batch" },
+	{ label: "Batch", url: docsUrl + "user/manual/en/batch" },
 ];
 
 frappe.help.help_links["Form/Batch"] = [
-	{ label: "Batch", url: docsUrl + "user/manual/en/stock/batch" },
+	{ label: "Batch", url: docsUrl + "user/manual/en/batch" },
 ];
 
 frappe.help.help_links["Form/Packing Slip"] = [
 	{
 		label: "Packing Slip",
-		url: docsUrl + "user/manual/en/stock/packing-slip",
+		url: docsUrl + "user/manual/en/packing-slip",
 	},
 ];
 
 frappe.help.help_links["Form/Quality Inspection"] = [
 	{
 		label: "Quality Inspection",
-		url: docsUrl + "user/manual/en/stock/quality-inspection",
+		url: docsUrl + "user/manual/en/quality-inspection",
 	},
 ];
 
 frappe.help.help_links["Form/Landed Cost Voucher"] = [
 	{
 		label: "Landed Cost Voucher",
-		url: docsUrl + "user/manual/en/stock/landed-cost-voucher",
+		url: docsUrl + "user/manual/en/landed-cost-voucher",
 	},
 ];
 
 frappe.help.help_links["Tree/Item Group"] = [
 	{
 		label: "Item Group",
-		url: docsUrl + "user/manual/en/stock/item-group",
+		url: docsUrl + "user/manual/en/item-group",
 	},
 ];
 
 frappe.help.help_links["Form/Item Attribute"] = [
 	{
 		label: "Item Attribute",
-		url: docsUrl + "user/manual/en/stock/item-attribute",
+		url: docsUrl + "user/manual/en/item-attribute",
 	},
 ];
 
 frappe.help.help_links["Form/UOM"] = [
 	{
 		label: "Fractions in UOM",
-		url:
-			docsUrl + "user/manual/en/stock/articles/managing-fractions-in-uom",
+		url: docsUrl + "user/manual/en/managing-fractions-in-uom",
 	},
 ];
 
 frappe.help.help_links["Form/Stock Reconciliation"] = [
 	{
 		label: "Opening Stock Entry",
-		url: docsUrl + "user/manual/en/stock/stock-reconciliation",
+		url: docsUrl + "user/manual/en/stock-reconciliation",
 	},
 ];
 
 //CRM
 
 frappe.help.help_links["Form/Lead"] = [
-	{ label: "Lead", url: docsUrl + "user/manual/en/CRM/lead" },
+	{ label: "Lead", url: docsUrl + "user/manual/en/lead" },
 ];
 
 frappe.help.help_links["Form/Opportunity"] = [
-	{ label: "Opportunity", url: docsUrl + "user/manual/en/CRM/opportunity" },
+	{ label: "Opportunity", url: docsUrl + "user/manual/en/opportunity" },
 ];
 
 frappe.help.help_links["Form/Address"] = [
-	{ label: "Address", url: docsUrl + "user/manual/en/CRM/address" },
+	{ label: "Address", url: docsUrl + "user/manual/en/address" },
 ];
 
 frappe.help.help_links["Form/Contact"] = [
-	{ label: "Contact", url: docsUrl + "user/manual/en/CRM/contact" },
+	{ label: "Contact", url: docsUrl + "user/manual/en/contact" },
 ];
 
 frappe.help.help_links["Form/Newsletter"] = [
-	{ label: "Newsletter", url: docsUrl + "user/manual/en/CRM/newsletter" },
+	{ label: "Newsletter", url: docsUrl + "user/manual/en/newsletter" },
 ];
 
 frappe.help.help_links["Form/Campaign"] = [
-	{ label: "Campaign", url: docsUrl + "user/manual/en/CRM/campaign" },
+	{ label: "Campaign", url: docsUrl + "user/manual/en/campaign" },
 ];
 
 frappe.help.help_links["Tree/Sales Person"] = [
 	{
 		label: "Sales Person",
-		url: docsUrl + "user/manual/en/CRM/sales-person",
+		url: docsUrl + "user/manual/en/sales-person",
 	},
 ];
 
 frappe.help.help_links["Form/Sales Person"] = [
 	{
 		label: "Sales Person Target",
-		url:
-			docsUrl +
-			"user/manual/en/selling/sales-person-target-allocation",
+		url: docsUrl + "user/manual/en/sales-person-target-allocation",
 	},
 	{
 		label: "Sales Person in Transactions",
-		url:
-			docsUrl +
-			"user/manual/en/selling/articles/sales-persons-in-the-sales-transactions",
+		url: docsUrl + "user/manual/en/sales-persons-in-the-sales-transactions",
 	},
 ];
 
@@ -938,41 +874,39 @@
 frappe.help.help_links["Form/BOM"] = [
 	{
 		label: "Bill of Material",
-		url: docsUrl + "user/manual/en/manufacturing/bill-of-materials",
+		url: docsUrl + "user/manual/en/bill-of-materials",
 	},
 	{
 		label: "Nested BOM Structure",
-		url:
-			docsUrl +
-			"user/manual/en/manufacturing/articles/managing-multi-level-bom",
+		url: docsUrl + "user/manual/en/managing-multi-level-bom",
 	},
 ];
 
 frappe.help.help_links["Form/Work Order"] = [
 	{
 		label: "Work Order",
-		url: docsUrl + "user/manual/en/manufacturing/work-order",
+		url: docsUrl + "user/manual/en/work-order",
 	},
 ];
 
 frappe.help.help_links["Form/Workstation"] = [
 	{
 		label: "Workstation",
-		url: docsUrl + "user/manual/en/manufacturing/workstation",
+		url: docsUrl + "user/manual/en/workstation",
 	},
 ];
 
 frappe.help.help_links["Form/Operation"] = [
 	{
 		label: "Operation",
-		url: docsUrl + "user/manual/en/manufacturing/operation",
+		url: docsUrl + "user/manual/en/operation",
 	},
 ];
 
 frappe.help.help_links["Form/BOM Update Tool"] = [
 	{
 		label: "BOM Update Tool",
-		url: docsUrl + "user/manual/en/manufacturing/bom-update-tool",
+		url: docsUrl + "user/manual/en/bom-update-tool",
 	},
 ];
 
@@ -981,24 +915,24 @@
 frappe.help.help_links["Form/Customize Form"] = [
 	{
 		label: "Custom Field",
-		url: docsUrl + "user/manual/en/customize-erpnext/custom-field",
+		url: docsUrl + "user/manual/en/custom-field",
 	},
 	{
 		label: "Customize Field",
-		url: docsUrl + "user/manual/en/customize-erpnext/customize-form",
+		url: docsUrl + "user/manual/en/customize-form",
 	},
 ];
 
 frappe.help.help_links["List/Custom Field"] = [
 	{
 		label: "Custom Field",
-		url: docsUrl + "user/manual/en/customize-erpnext/custom-field",
+		url: docsUrl + "user/manual/en/custom-field",
 	},
 ];
 
 frappe.help.help_links["Form/Custom Field"] = [
 	{
 		label: "Custom Field",
-		url: docsUrl + "user/manual/en/customize-erpnext/custom-field",
+		url: docsUrl + "user/manual/en/custom-field",
 	},
 ];
diff --git a/erpnext/public/js/setup_wizard.js b/erpnext/public/js/setup_wizard.js
index ba200ef..3cbec3e 100644
--- a/erpnext/public/js/setup_wizard.js
+++ b/erpnext/public/js/setup_wizard.js
@@ -45,7 +45,8 @@
 				fieldname: 'setup_demo',
 				label: __('Generate Demo Data for Exploration'),
 				fieldtype: 'Check',
-				description: 'If checked, we will create demo data for you to explore the system. This demo data can be erased later.'},
+				description: __('If checked, we will create demo data for you to explore the system. This demo data can be erased later.')
+			},
 		],
 
 		onload: function (slide) {
diff --git a/erpnext/public/js/utils.js b/erpnext/public/js/utils.js
index c11d123..d435711 100755
--- a/erpnext/public/js/utils.js
+++ b/erpnext/public/js/utils.js
@@ -114,6 +114,10 @@
 	},
 
 	view_serial_batch_nos: function(frm) {
+		if (!frm.doc?.items) {
+			return;
+		}
+
 		let bundle_ids = frm.doc.items.filter(d => d.serial_and_batch_bundle);
 
 		if (bundle_ids?.length) {
@@ -567,6 +571,7 @@
 	const cannot_add_row = (typeof opts.cannot_add_row === 'undefined') ? true : opts.cannot_add_row;
 	const child_docname = (typeof opts.cannot_add_row === 'undefined') ? "items" : opts.child_docname;
 	const child_meta = frappe.get_meta(`${frm.doc.doctype} Item`);
+	const has_reserved_stock = opts.has_reserved_stock ? true : false;
 	const get_precision = (fieldname) => child_meta.fields.find(f => f.fieldname == fieldname).precision;
 
 	this.data = frm.doc[opts.child_docname].map((d) => {
@@ -730,6 +735,17 @@
 			},
 		],
 		primary_action: function() {
+			if (frm.doctype == "Sales Order" && has_reserved_stock) {
+				this.hide();
+				frappe.confirm(
+					__('The reserved stock will be released when you update items. Are you certain you wish to proceed?'),
+					() => this.update_items(),
+				)
+			} else {
+				this.update_items();
+			}
+		},
+		update_items: function() {
 			const trans_items = this.get_values()["trans_items"].filter((item) => !!item.item_code);
 			frappe.call({
 				method: 'erpnext.controllers.accounts_controller.update_child_qty_rate',
@@ -753,6 +769,9 @@
 	dialog.show();
 }
 
+
+
+
 erpnext.utils.map_current_doc = function(opts) {
 	function _map() {
 		if($.isArray(cur_frm.doc.items) && cur_frm.doc.items.length > 0) {
@@ -819,6 +838,8 @@
 				"target_doc": cur_frm.doc,
 				"args": opts.args
 			},
+			freeze: true,
+			freeze_message: __("Mapping {0} ...", [opts.source_doctype]),
 			callback: function(r) {
 				if(!r.exc) {
 					var doc = frappe.model.sync(r.message);
@@ -1079,4 +1100,4 @@
 	$btn.on("click", function() {
 		context.show_serial_batch_selector(grid_row.frm, grid_row.doc, "", "", true);
 	});
-}
\ No newline at end of file
+}
diff --git a/erpnext/public/js/utils/demo.js b/erpnext/public/js/utils/demo.js
index 3ebc5ef..ef83cf6 100644
--- a/erpnext/public/js/utils/demo.js
+++ b/erpnext/public/js/utils/demo.js
@@ -1,91 +1,34 @@
+frappe.provide("erpnext.demo");
+
 $(document).on("toolbar_setup", function () {
 	if (frappe.boot.sysdefaults.demo_company) {
-		render_clear_demo_button();
+		render_clear_demo_action();
 	}
-
-	// for first load after setup.
-	frappe.realtime.on("demo_data_complete", () => {
-		render_clear_demo_button();
-	});
 });
 
-function render_clear_demo_button() {
-	let wait_for_onboaring_tours = setInterval(() => {
-		if ($("#driver-page-overlay").length || $("#show-dialog").length) {
-			return;
-		}
-		setup_clear_demo_button();
-		clearInterval(wait_for_onboaring_tours);
-	}, 2000);
-}
-
-function setup_clear_demo_button() {
-	let message_string = __(
-		"Demo data is present on the system, erase data before starting real usage."
+function render_clear_demo_action() {
+	let demo_action = $(
+		`<a class="dropdown-item" onclick="return erpnext.demo.clear_demo()">
+			${__("Clear Demo Data")}
+		</a>`
 	);
-	let $floatingBar = $(`
-		<div class="flex justify-content-center" style="width: 100%;">
-			<div class="flex justify-content-center flex-col shadow rounded p-2"
-					style="
-						background-color: #e0f2fe;
-						position: fixed;
-						bottom: 20px;
-						z-index: 1;">
-			<p style="margin: auto 0; padding-left: 10px; margin-right: 20px; font-size: 15px;">
-					${message_string}
-				</p>
-				<button id="clear-demo" type="button"
-					class="
-						px-4
-						py-2
-						border
-						border-transparent
-						text-white
-					"
-					style="
-						margin: auto 0;
-						height: fit-content;
-						background-color: #007bff;
-						border-radius: 5px;
-						margin-right: 10px
-					"
-				>
-					Clear Demo Data
-				</button>
 
-	 			<a type="button" id="dismiss-demo-banner" class="text-muted" style="align-self: center">
-					<svg class="icon" style="">
-						<use class="" href="#icon-close"></use>
-					</svg>
-				</a>
-			</div>
-		</div>
-	`);
-
-	$("footer").append($floatingBar);
-
-	$("#clear-demo").on("click", function () {
-		frappe.confirm(
-			__("Are you sure you want to clear all demo data?"),
-			() => {
-				frappe.call({
-					method: "erpnext.setup.demo.clear_demo_data",
-					freeze: true,
-					freeze_message: __("Clearing Demo Data..."),
-					callback: function (r) {
-						frappe.ui.toolbar.clear_cache();
-						frappe.show_alert({
-							message: __("Demo data cleared"),
-							indicator: "green",
-						});
-						$("footer").remove($floatingBar);
-					},
-				});
-			}
-		);
-	});
-
-	$("#dismiss-demo-banner").on("click", function () {
-		$floatingBar.remove();
-	});
+	demo_action.appendTo($("#toolbar-user"));
 }
+
+erpnext.demo.clear_demo = function () {
+	frappe.confirm(__("Are you sure you want to clear all demo data?"), () => {
+		frappe.call({
+			method: "erpnext.setup.demo.clear_demo_data",
+			freeze: true,
+			freeze_message: __("Clearing Demo Data..."),
+			callback: function (r) {
+				frappe.ui.toolbar.clear_cache();
+				frappe.show_alert({
+					message: __("Demo data cleared"),
+					indicator: "green",
+				});
+			},
+		});
+	});
+};
diff --git a/erpnext/public/js/utils/sales_common.js b/erpnext/public/js/utils/sales_common.js
index 89dcaa6..1d6daa5 100644
--- a/erpnext/public/js/utils/sales_common.js
+++ b/erpnext/public/js/utils/sales_common.js
@@ -8,6 +8,7 @@
 		erpnext.selling.SellingController = class SellingController extends erpnext.TransactionController {
 			setup() {
 				super.setup();
+				this.toggle_enable_for_stock_uom("allow_to_edit_stock_uom_qty_for_sales");
 				this.frm.email_field = "contact_email";
 			}
 
diff --git a/erpnext/public/js/utils/unreconcile.js b/erpnext/public/js/utils/unreconcile.js
new file mode 100644
index 0000000..fa00ed2
--- /dev/null
+++ b/erpnext/public/js/utils/unreconcile.js
@@ -0,0 +1,127 @@
+frappe.provide('erpnext.accounts');
+
+erpnext.accounts.unreconcile_payments = {
+	add_unreconcile_btn(frm) {
+		if (frm.doc.docstatus == 1) {
+			if(((frm.doc.doctype == "Journal Entry") && (frm.doc.voucher_type != "Journal Entry"))
+			   || !["Purchase Invoice", "Sales Invoice", "Journal Entry", "Payment Entry"].includes(frm.doc.doctype)
+			  ) {
+				return;
+			}
+
+			frappe.call({
+				"method": "erpnext.accounts.doctype.unreconcile_payments.unreconcile_payments.doc_has_references",
+				"args": {
+					"doctype": frm.doc.doctype,
+					"docname": frm.doc.name
+				},
+				callback: function(r) {
+					if (r.message) {
+						frm.add_custom_button(__("UnReconcile"), function() {
+							erpnext.accounts.unreconcile_payments.build_unreconcile_dialog(frm);
+						}, __('Actions'));
+					}
+				}
+			});
+		}
+	},
+
+	build_selection_map(frm, selections) {
+		// assuming each row is an individual voucher
+		// pass this to server side method that creates unreconcile doc for each row
+		let selection_map = [];
+		if (['Sales Invoice', 'Purchase Invoice'].includes(frm.doc.doctype)) {
+			selection_map = selections.map(function(elem) {
+				return {
+					company: elem.company,
+					voucher_type: elem.voucher_type,
+					voucher_no: elem.voucher_no,
+					against_voucher_type: frm.doc.doctype,
+					against_voucher_no: frm.doc.name
+				};
+			});
+		} else if (['Payment Entry', 'Journal Entry'].includes(frm.doc.doctype)) {
+			selection_map = selections.map(function(elem) {
+				return {
+					company: elem.company,
+					voucher_type: frm.doc.doctype,
+					voucher_no: frm.doc.name,
+					against_voucher_type: elem.voucher_type,
+					against_voucher_no: elem.voucher_no,
+				};
+			});
+		}
+		return selection_map;
+	},
+
+	build_unreconcile_dialog(frm) {
+		if (['Sales Invoice', 'Purchase Invoice', 'Payment Entry', 'Journal Entry'].includes(frm.doc.doctype)) {
+			let child_table_fields = [
+				{ label: __("Voucher Type"), fieldname: "voucher_type", fieldtype: "Dynamic Link", options: "DocType", in_list_view: 1, read_only: 1},
+				{ label: __("Voucher No"), fieldname: "voucher_no", fieldtype: "Link", options: "voucher_type", in_list_view: 1, read_only: 1 },
+				{ label: __("Allocated Amount"), fieldname: "allocated_amount", fieldtype: "Currency", in_list_view: 1, read_only: 1 , options: "account_currency"},
+				{ label: __("Currency"), fieldname: "account_currency", fieldtype: "Currency", read_only: 1},
+			]
+			let unreconcile_dialog_fields = [
+				{
+					label: __('Allocations'),
+					fieldname: 'allocations',
+					fieldtype: 'Table',
+					read_only: 1,
+					fields: child_table_fields,
+				},
+			];
+
+			// get linked payments
+			frappe.call({
+				"method": "erpnext.accounts.doctype.unreconcile_payments.unreconcile_payments.get_linked_payments_for_doc",
+				"args": {
+					"company": frm.doc.company,
+					"doctype": frm.doc.doctype,
+					"docname": frm.doc.name
+				},
+				callback: function(r) {
+					if (r.message) {
+						// populate child table with allocations
+						unreconcile_dialog_fields[0].data = r.message;
+						unreconcile_dialog_fields[0].get_data = function(){ return r.message};
+
+						let d = new frappe.ui.Dialog({
+							title: 'UnReconcile Allocations',
+							fields: unreconcile_dialog_fields,
+							size: 'large',
+							cannot_add_rows: true,
+							primary_action_label: 'UnReconcile',
+							primary_action(values) {
+
+								let selected_allocations = values.allocations.filter(x=>x.__checked);
+								if (selected_allocations.length > 0) {
+									let selection_map = erpnext.accounts.unreconcile_payments.build_selection_map(frm, selected_allocations);
+									erpnext.accounts.unreconcile_payments.create_unreconcile_docs(selection_map);
+									d.hide();
+
+								} else {
+									frappe.msgprint("No Selection");
+								}
+							}
+						});
+
+						d.show();
+					}
+				}
+			});
+		}
+	},
+
+	create_unreconcile_docs(selection_map) {
+		frappe.call({
+			"method": "erpnext.accounts.doctype.unreconcile_payments.unreconcile_payments.create_unreconcile_doc_for_selection",
+			"args": {
+				"selections": selection_map
+			},
+		});
+	}
+
+
+
+}
diff --git a/erpnext/quality_management/doctype/quality_action/quality_action.json b/erpnext/quality_management/doctype/quality_action/quality_action.json
index 0cc2a98..f0b33b9 100644
--- a/erpnext/quality_management/doctype/quality_action/quality_action.json
+++ b/erpnext/quality_management/doctype/quality_action/quality_action.json
@@ -91,7 +91,7 @@
  ],
  "index_web_pages_for_search": 1,
  "links": [],
- "modified": "2020-10-27 16:21:59.533937",
+ "modified": "2023-08-28 22:33:14.358143",
  "modified_by": "Administrator",
  "module": "Quality Management",
  "name": "Quality Action",
@@ -117,12 +117,13 @@
    "print": 1,
    "read": 1,
    "report": 1,
-   "role": "All",
+   "role": "Desk User",
    "share": 1,
    "write": 1
   }
  ],
  "sort_field": "modified",
  "sort_order": "DESC",
+ "states": [],
  "track_changes": 1
 }
\ No newline at end of file
diff --git a/erpnext/quality_management/doctype/quality_feedback/quality_feedback.json b/erpnext/quality_management/doctype/quality_feedback/quality_feedback.json
index f3bd0dd..5fe6375 100644
--- a/erpnext/quality_management/doctype/quality_feedback/quality_feedback.json
+++ b/erpnext/quality_management/doctype/quality_feedback/quality_feedback.json
@@ -61,7 +61,7 @@
    "link_fieldname": "feedback"
   }
  ],
- "modified": "2020-10-27 16:20:10.918544",
+ "modified": "2023-08-28 22:21:36.144820",
  "modified_by": "Administrator",
  "module": "Quality Management",
  "name": "Quality Feedback",
@@ -87,12 +87,13 @@
    "print": 1,
    "read": 1,
    "report": 1,
-   "role": "All",
+   "role": "Desk User",
    "share": 1,
    "write": 1
   }
  ],
  "sort_field": "modified",
  "sort_order": "DESC",
+ "states": [],
  "track_changes": 1
 }
\ No newline at end of file
diff --git a/erpnext/quality_management/doctype/quality_goal/quality_goal.json b/erpnext/quality_management/doctype/quality_goal/quality_goal.json
index 2680255..f2b6ebc 100644
--- a/erpnext/quality_management/doctype/quality_goal/quality_goal.json
+++ b/erpnext/quality_management/doctype/quality_goal/quality_goal.json
@@ -76,7 +76,7 @@
    "link_fieldname": "goal"
   }
  ],
- "modified": "2020-10-27 15:57:59.368605",
+ "modified": "2023-08-28 22:33:27.718899",
  "modified_by": "Administrator",
  "module": "Quality Management",
  "name": "Quality Goal",
@@ -102,12 +102,13 @@
    "print": 1,
    "read": 1,
    "report": 1,
-   "role": "All",
+   "role": "Desk User",
    "share": 1,
    "write": 1
   }
  ],
  "sort_field": "modified",
  "sort_order": "DESC",
+ "states": [],
  "track_changes": 1
 }
\ No newline at end of file
diff --git a/erpnext/quality_management/doctype/quality_meeting/quality_meeting.json b/erpnext/quality_management/doctype/quality_meeting/quality_meeting.json
index e2125c3..7ab28d8 100644
--- a/erpnext/quality_management/doctype/quality_meeting/quality_meeting.json
+++ b/erpnext/quality_management/doctype/quality_meeting/quality_meeting.json
@@ -48,7 +48,7 @@
  ],
  "index_web_pages_for_search": 1,
  "links": [],
- "modified": "2021-02-27 16:36:45.657883",
+ "modified": "2023-08-28 22:33:57.447634",
  "modified_by": "Administrator",
  "module": "Quality Management",
  "name": "Quality Meeting",
@@ -74,7 +74,7 @@
    "print": 1,
    "read": 1,
    "report": 1,
-   "role": "All",
+   "role": "Desk User",
    "share": 1,
    "write": 1
   }
@@ -82,5 +82,6 @@
  "quick_entry": 1,
  "sort_field": "modified",
  "sort_order": "DESC",
+ "states": [],
  "track_changes": 1
-}
+}
\ No newline at end of file
diff --git a/erpnext/quality_management/doctype/quality_procedure/quality_procedure.json b/erpnext/quality_management/doctype/quality_procedure/quality_procedure.json
index f588f9a..fd5a595 100644
--- a/erpnext/quality_management/doctype/quality_procedure/quality_procedure.json
+++ b/erpnext/quality_management/doctype/quality_procedure/quality_procedure.json
@@ -23,6 +23,7 @@
   {
    "fieldname": "parent_quality_procedure",
    "fieldtype": "Link",
+   "ignore_user_permissions": 1,
    "label": "Parent Procedure",
    "options": "Quality Procedure"
   },
@@ -115,7 +116,7 @@
    "link_fieldname": "procedure"
   }
  ],
- "modified": "2020-10-26 15:25:39.316088",
+ "modified": "2023-08-28 22:33:36.483420",
  "modified_by": "Administrator",
  "module": "Quality Management",
  "name": "Quality Procedure",
@@ -142,12 +143,13 @@
    "print": 1,
    "read": 1,
    "report": 1,
-   "role": "All",
+   "role": "Desk User",
    "share": 1,
    "write": 1
   }
  ],
  "sort_field": "modified",
  "sort_order": "DESC",
+ "states": [],
  "track_changes": 1
 }
\ No newline at end of file
diff --git a/erpnext/quality_management/doctype/quality_review/quality_review.json b/erpnext/quality_management/doctype/quality_review/quality_review.json
index 31ad341..f38e8a5 100644
--- a/erpnext/quality_management/doctype/quality_review/quality_review.json
+++ b/erpnext/quality_management/doctype/quality_review/quality_review.json
@@ -84,7 +84,7 @@
    "link_fieldname": "review"
   }
  ],
- "modified": "2020-10-21 12:56:47.046172",
+ "modified": "2023-08-28 22:33:22.472980",
  "modified_by": "Administrator",
  "module": "Quality Management",
  "name": "Quality Review",
@@ -110,7 +110,7 @@
    "print": 1,
    "read": 1,
    "report": 1,
-   "role": "All",
+   "role": "Desk User",
    "share": 1,
    "write": 1
   },
@@ -129,6 +129,7 @@
  ],
  "sort_field": "modified",
  "sort_order": "DESC",
+ "states": [],
  "title_field": "goal",
  "track_changes": 1
 }
\ No newline at end of file
diff --git a/erpnext/regional/__init__.py b/erpnext/regional/__init__.py
index ec2db81..bd5d540 100644
--- a/erpnext/regional/__init__.py
+++ b/erpnext/regional/__init__.py
@@ -10,7 +10,7 @@
 
 def check_deletion_permission(doc, method):
 	region = get_region(doc.company)
-	if region in ["Nepal", "France"] and doc.docstatus != 0:
+	if region in ["Nepal"] and doc.docstatus != 0:
 		frappe.throw(_("Deletion is not permitted for country {0}").format(region))
 
 
@@ -20,7 +20,7 @@
 	Called on submit of Sales Invoice and Payment Entry.
 	"""
 	region = get_region()
-	if region not in ["France", "Germany"]:
+	if region not in ["Germany"]:
 		return
 
 	data = str(doc.as_dict())
diff --git a/erpnext/regional/address_template/templates/france.html b/erpnext/regional/address_template/templates/france.html
deleted file mode 100644
index 752331e..0000000
--- a/erpnext/regional/address_template/templates/france.html
+++ /dev/null
@@ -1,5 +0,0 @@
-{% if address_line1 %}{{ address_line1 }}{% endif -%}
-{% if address_line2 %}<br>{{ address_line2 }}{% endif -%}
-{% if pincode %}<br>{{ pincode }}{% endif -%}
-{% if city %} {{ city }}{% endif -%}
-{% if country %}<br>{{ country }}{% endif -%}
diff --git a/erpnext/regional/france/setup.py b/erpnext/regional/france/setup.py
deleted file mode 100644
index da772d6..0000000
--- a/erpnext/regional/france/setup.py
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright (c) 2018, Frappe Technologies Pvt. Ltd. and Contributors
-# License: GNU General Public License v3. See license.txt
-
-
-import frappe
-from frappe.custom.doctype.custom_field.custom_field import create_custom_fields
-
-
-def setup(company=None, patch=True):
-	make_custom_fields()
-	add_custom_roles_for_reports()
-
-
-def make_custom_fields():
-	custom_fields = {
-		"Company": [
-			dict(fieldname="siren_number", label="SIREN Number", fieldtype="Data", insert_after="website")
-		]
-	}
-
-	create_custom_fields(custom_fields)
-
-
-def add_custom_roles_for_reports():
-	report_name = "Fichier des Ecritures Comptables [FEC]"
-
-	if not frappe.db.get_value("Custom Role", dict(report=report_name)):
-		frappe.get_doc(
-			dict(doctype="Custom Role", report=report_name, roles=[dict(role="Accounts Manager")])
-		).insert()
diff --git a/erpnext/regional/france/utils.py b/erpnext/regional/france/utils.py
deleted file mode 100644
index 65dfd2d..0000000
--- a/erpnext/regional/france/utils.py
+++ /dev/null
@@ -1,8 +0,0 @@
-# Copyright (c) 2018, Frappe Technologies and contributors
-# For license information, please see license.txt
-
-
-# don't remove this function it is used in tests
-def test_method():
-	"""test function"""
-	return "overridden"
diff --git "a/erpnext/regional/report/fichier_des_ecritures_comptables_\133fec\135/__init__.py" "b/erpnext/regional/report/fichier_des_ecritures_comptables_\133fec\135/__init__.py"
deleted file mode 100644
index e69de29..0000000
--- "a/erpnext/regional/report/fichier_des_ecritures_comptables_\133fec\135/__init__.py"
+++ /dev/null
diff --git "a/erpnext/regional/report/fichier_des_ecritures_comptables_\133fec\135/fichier_des_ecritures_comptables_\133fec\135.js" "b/erpnext/regional/report/fichier_des_ecritures_comptables_\133fec\135/fichier_des_ecritures_comptables_\133fec\135.js"
deleted file mode 100644
index b85b58f..0000000
--- "a/erpnext/regional/report/fichier_des_ecritures_comptables_\133fec\135/fichier_des_ecritures_comptables_\133fec\135.js"
+++ /dev/null
@@ -1,97 +0,0 @@
-// Copyright (c) 2018, Frappe Technologies Pvt. Ltd. and contributors
-// For license information, please see license.txt
-
-frappe.query_reports["Fichier des Ecritures Comptables [FEC]"] = {
-	"filters": [
-		{
-			"fieldname": "company",
-			"label": __("Company"),
-			"fieldtype": "Link",
-			"options": "Company",
-			"default": frappe.defaults.get_user_default("Company"),
-			"reqd": 1
-		},
-		{
-			"fieldname": "fiscal_year",
-			"label": __("Fiscal Year"),
-			"fieldtype": "Link",
-			"options": "Fiscal Year",
-			"default": erpnext.utils.get_fiscal_year(frappe.datetime.get_today()),
-			"reqd": 1
-		}
-	],
-	onload: function(query_report) {
-		query_report.page.add_inner_button(__("Export"), function() {
-			fec_export(query_report);
-		});
-
-		query_report.add_make_chart_button = function() {
-			//
-		};
-
-		query_report.export_report = function() {
-			fec_export(query_report);
-		};
-	}
-};
-
-let fec_export = function(query_report) {
-	const fiscal_year = query_report.get_values().fiscal_year;
-	const company = query_report.get_values().company;
-
-	frappe.db.get_value("Company", company, "siren_number", (value) => {
-		const company_data = value.siren_number;
-		if (company_data === null || company_data === undefined) {
-			frappe.msgprint(__("Please register the SIREN number in the company information file"));
-		} else {
-			frappe.db.get_value("Fiscal Year", fiscal_year, "year_end_date", (r) => {
-				const fy = r.year_end_date;
-				const title = company_data + "FEC" + moment(fy).format('YYYYMMDD');
-				const column_row = query_report.columns.map(col => col.label);
-				const column_data = query_report.get_data_for_csv(false);
-				const result = [column_row].concat(column_data);
-				downloadify(result, null, title);
-			});
-
-		}
-	});
-};
-
-let downloadify = function(data, roles, title) {
-	if (roles && roles.length && !has_common(roles, roles)) {
-		frappe.msgprint(__("Export not allowed. You need {0} role to export.", [frappe.utils.comma_or(roles)]));
-		return;
-	}
-
-	const filename = title + ".txt";
-	let csv_data = to_tab_csv(data);
-	const a = document.createElement('a');
-
-	if ("download" in a) {
-		// Used Blob object, because it can handle large files
-		let blob_object = new Blob([csv_data], {
-			type: 'text/csv;charset=UTF-8'
-		});
-		a.href = URL.createObjectURL(blob_object);
-		a.download = filename;
-
-	} else {
-		// use old method
-		a.href = 'data:attachment/csv,' + encodeURIComponent(csv_data);
-		a.download = filename;
-		a.target = "_blank";
-	}
-
-	document.body.appendChild(a);
-	a.click();
-
-	document.body.removeChild(a);
-};
-
-let to_tab_csv = function(data) {
-	let res = [];
-	$.each(data, function(i, row) {
-		res.push(row.join("\t"));
-	});
-	return res.join("\n");
-};
diff --git "a/erpnext/regional/report/fichier_des_ecritures_comptables_\133fec\135/fichier_des_ecritures_comptables_\133fec\135.json" "b/erpnext/regional/report/fichier_des_ecritures_comptables_\133fec\135/fichier_des_ecritures_comptables_\133fec\135.json"
deleted file mode 100644
index 9b48e11..0000000
--- "a/erpnext/regional/report/fichier_des_ecritures_comptables_\133fec\135/fichier_des_ecritures_comptables_\133fec\135.json"
+++ /dev/null
@@ -1,19 +0,0 @@
-{
- "add_total_row": 0, 
- "apply_user_permissions": 0, 
- "creation": "2018-01-10 15:10:16.650129", 
- "disabled": 0, 
- "docstatus": 0, 
- "doctype": "Report", 
- "idx": 0, 
- "is_standard": "Yes", 
- "modified": "2018-01-11 10:27:25.595485", 
- "modified_by": "Administrator", 
- "module": "Regional", 
- "name": "Fichier des Ecritures Comptables [FEC]", 
- "owner": "Administrator", 
- "ref_doctype": "GL Entry", 
- "report_name": "Fichier des Ecritures Comptables [FEC]", 
- "report_type": "Script Report", 
- "roles": []
-}
\ No newline at end of file
diff --git "a/erpnext/regional/report/fichier_des_ecritures_comptables_\133fec\135/fichier_des_ecritures_comptables_\133fec\135.py" "b/erpnext/regional/report/fichier_des_ecritures_comptables_\133fec\135/fichier_des_ecritures_comptables_\133fec\135.py"
deleted file mode 100644
index 6717989..0000000
--- "a/erpnext/regional/report/fichier_des_ecritures_comptables_\133fec\135/fichier_des_ecritures_comptables_\133fec\135.py"
+++ /dev/null
@@ -1,339 +0,0 @@
-# Copyright (c) 2018, Frappe Technologies Pvt. Ltd. and contributors
-# For license information, please see license.txt
-
-import re
-
-import frappe
-from frappe import _
-from frappe.utils import format_datetime
-
-COLUMNS = [
-	{
-		"label": "JournalCode",
-		"fieldname": "JournalCode",
-		"fieldtype": "Data",
-		"width": 90,
-	},
-	{
-		"label": "JournalLib",
-		"fieldname": "JournalLib",
-		"fieldtype": "Data",
-		"width": 90,
-	},
-	{
-		"label": "EcritureNum",
-		"fieldname": "EcritureNum",
-		"fieldtype": "Data",
-		"width": 90,
-	},
-	{
-		"label": "EcritureDate",
-		"fieldname": "EcritureDate",
-		"fieldtype": "Data",
-		"width": 90,
-	},
-	{
-		"label": "CompteNum",
-		"fieldname": "CompteNum",
-		"fieldtype": "Link",
-		"options": "Account",
-		"width": 100,
-	},
-	{
-		"label": "CompteLib",
-		"fieldname": "CompteLib",
-		"fieldtype": "Link",
-		"options": "Account",
-		"width": 200,
-	},
-	{
-		"label": "CompAuxNum",
-		"fieldname": "CompAuxNum",
-		"fieldtype": "Data",
-		"width": 90,
-	},
-	{
-		"label": "CompAuxLib",
-		"fieldname": "CompAuxLib",
-		"fieldtype": "Data",
-		"width": 90,
-	},
-	{
-		"label": "PieceRef",
-		"fieldname": "PieceRef",
-		"fieldtype": "Data",
-		"width": 90,
-	},
-	{
-		"label": "PieceDate",
-		"fieldname": "PieceDate",
-		"fieldtype": "Data",
-		"width": 90,
-	},
-	{
-		"label": "EcritureLib",
-		"fieldname": "EcritureLib",
-		"fieldtype": "Data",
-		"width": 90,
-	},
-	{
-		"label": "Debit",
-		"fieldname": "Debit",
-		"fieldtype": "Data",
-		"width": 90,
-	},
-	{
-		"label": "Credit",
-		"fieldname": "Credit",
-		"fieldtype": "Data",
-		"width": 90,
-	},
-	{
-		"label": "EcritureLet",
-		"fieldname": "EcritureLet",
-		"fieldtype": "Data",
-		"width": 90,
-	},
-	{
-		"label": "DateLet",
-		"fieldname": "DateLet",
-		"fieldtype": "Data",
-		"width": 90,
-	},
-	{
-		"label": "ValidDate",
-		"fieldname": "ValidDate",
-		"fieldtype": "Data",
-		"width": 90,
-	},
-	{
-		"label": "Montantdevise",
-		"fieldname": "Montantdevise",
-		"fieldtype": "Data",
-		"width": 90,
-	},
-	{
-		"label": "Idevise",
-		"fieldname": "Idevise",
-		"fieldtype": "Data",
-		"width": 90,
-	},
-]
-
-
-def execute(filters=None):
-	validate_filters(filters)
-	return COLUMNS, get_result(
-		company=filters["company"],
-		fiscal_year=filters["fiscal_year"],
-	)
-
-
-def validate_filters(filters):
-	if not filters.get("company"):
-		frappe.throw(_("{0} is mandatory").format(_("Company")))
-
-	if not filters.get("fiscal_year"):
-		frappe.throw(_("{0} is mandatory").format(_("Fiscal Year")))
-
-
-def get_gl_entries(company, fiscal_year):
-	gle = frappe.qb.DocType("GL Entry")
-	sales_invoice = frappe.qb.DocType("Sales Invoice")
-	purchase_invoice = frappe.qb.DocType("Purchase Invoice")
-	journal_entry = frappe.qb.DocType("Journal Entry")
-	payment_entry = frappe.qb.DocType("Payment Entry")
-	customer = frappe.qb.DocType("Customer")
-	supplier = frappe.qb.DocType("Supplier")
-	employee = frappe.qb.DocType("Employee")
-
-	debit = frappe.query_builder.functions.Sum(gle.debit).as_("debit")
-	credit = frappe.query_builder.functions.Sum(gle.credit).as_("credit")
-	debit_currency = frappe.query_builder.functions.Sum(gle.debit_in_account_currency).as_(
-		"debitCurr"
-	)
-	credit_currency = frappe.query_builder.functions.Sum(gle.credit_in_account_currency).as_(
-		"creditCurr"
-	)
-
-	query = (
-		frappe.qb.from_(gle)
-		.left_join(sales_invoice)
-		.on(gle.voucher_no == sales_invoice.name)
-		.left_join(purchase_invoice)
-		.on(gle.voucher_no == purchase_invoice.name)
-		.left_join(journal_entry)
-		.on(gle.voucher_no == journal_entry.name)
-		.left_join(payment_entry)
-		.on(gle.voucher_no == payment_entry.name)
-		.left_join(customer)
-		.on(gle.party == customer.name)
-		.left_join(supplier)
-		.on(gle.party == supplier.name)
-		.left_join(employee)
-		.on(gle.party == employee.name)
-		.select(
-			gle.posting_date.as_("GlPostDate"),
-			gle.name.as_("GlName"),
-			gle.account,
-			gle.transaction_date,
-			debit,
-			credit,
-			debit_currency,
-			credit_currency,
-			gle.voucher_type,
-			gle.voucher_no,
-			gle.against_voucher_type,
-			gle.against_voucher,
-			gle.account_currency,
-			gle.against,
-			gle.party_type,
-			gle.party,
-			sales_invoice.name.as_("InvName"),
-			sales_invoice.title.as_("InvTitle"),
-			sales_invoice.posting_date.as_("InvPostDate"),
-			purchase_invoice.name.as_("PurName"),
-			purchase_invoice.title.as_("PurTitle"),
-			purchase_invoice.posting_date.as_("PurPostDate"),
-			journal_entry.cheque_no.as_("JnlRef"),
-			journal_entry.posting_date.as_("JnlPostDate"),
-			journal_entry.title.as_("JnlTitle"),
-			payment_entry.name.as_("PayName"),
-			payment_entry.posting_date.as_("PayPostDate"),
-			payment_entry.title.as_("PayTitle"),
-			customer.customer_name,
-			customer.name.as_("cusName"),
-			supplier.supplier_name,
-			supplier.name.as_("supName"),
-			employee.employee_name,
-			employee.name.as_("empName"),
-		)
-		.where((gle.company == company) & (gle.fiscal_year == fiscal_year))
-		.groupby(gle.voucher_type, gle.voucher_no, gle.account)
-		.orderby(gle.posting_date, gle.voucher_no)
-	)
-
-	return query.run(as_dict=True)
-
-
-def get_result(company, fiscal_year):
-	data = get_gl_entries(company, fiscal_year)
-
-	result = []
-
-	company_currency = frappe.get_cached_value("Company", company, "default_currency")
-	accounts = frappe.get_all(
-		"Account", filters={"Company": company}, fields=["name", "account_number"]
-	)
-
-	for d in data:
-		JournalCode = re.split("-|/|[0-9]", d.get("voucher_no"))[0]
-
-		if d.get("voucher_no").startswith("{0}-".format(JournalCode)) or d.get("voucher_no").startswith(
-			"{0}/".format(JournalCode)
-		):
-			EcritureNum = re.split("-|/", d.get("voucher_no"))[1]
-		else:
-			EcritureNum = re.search(r"{0}(\d+)".format(JournalCode), d.get("voucher_no"), re.IGNORECASE)[1]
-
-		EcritureDate = format_datetime(d.get("GlPostDate"), "yyyyMMdd")
-
-		account_number = [
-			account.account_number for account in accounts if account.name == d.get("account")
-		]
-		if account_number[0] is not None:
-			CompteNum = account_number[0]
-		else:
-			frappe.throw(
-				_(
-					"Account number for account {0} is not available.<br> Please setup your Chart of Accounts correctly."
-				).format(d.get("account"))
-			)
-
-		if d.get("party_type") == "Customer":
-			CompAuxNum = d.get("cusName")
-			CompAuxLib = d.get("customer_name")
-
-		elif d.get("party_type") == "Supplier":
-			CompAuxNum = d.get("supName")
-			CompAuxLib = d.get("supplier_name")
-
-		elif d.get("party_type") == "Employee":
-			CompAuxNum = d.get("empName")
-			CompAuxLib = d.get("employee_name")
-
-		elif d.get("party_type") == "Student":
-			CompAuxNum = d.get("stuName")
-			CompAuxLib = d.get("student_name")
-
-		elif d.get("party_type") == "Member":
-			CompAuxNum = d.get("memName")
-			CompAuxLib = d.get("member_name")
-
-		else:
-			CompAuxNum = ""
-			CompAuxLib = ""
-
-		ValidDate = format_datetime(d.get("GlPostDate"), "yyyyMMdd")
-
-		PieceRef = d.get("voucher_no") or "Sans Reference"
-
-		# EcritureLib is the reference title unless it is an opening entry
-		if d.get("is_opening") == "Yes":
-			EcritureLib = _("Opening Entry Journal")
-		if d.get("voucher_type") == "Sales Invoice":
-			EcritureLib = d.get("InvTitle")
-		elif d.get("voucher_type") == "Purchase Invoice":
-			EcritureLib = d.get("PurTitle")
-		elif d.get("voucher_type") == "Journal Entry":
-			EcritureLib = d.get("JnlTitle")
-		elif d.get("voucher_type") == "Payment Entry":
-			EcritureLib = d.get("PayTitle")
-		else:
-			EcritureLib = d.get("voucher_type")
-
-		PieceDate = format_datetime(d.get("GlPostDate"), "yyyyMMdd")
-
-		debit = "{:.2f}".format(d.get("debit")).replace(".", ",")
-
-		credit = "{:.2f}".format(d.get("credit")).replace(".", ",")
-
-		Idevise = d.get("account_currency")
-
-		if Idevise != company_currency:
-			Montantdevise = (
-				"{:.2f}".format(d.get("debitCurr")).replace(".", ",")
-				if d.get("debitCurr") != 0
-				else "{:.2f}".format(d.get("creditCurr")).replace(".", ",")
-			)
-		else:
-			Montantdevise = (
-				"{:.2f}".format(d.get("debit")).replace(".", ",")
-				if d.get("debit") != 0
-				else "{:.2f}".format(d.get("credit")).replace(".", ",")
-			)
-
-		row = [
-			JournalCode,
-			d.get("voucher_type"),
-			EcritureNum,
-			EcritureDate,
-			CompteNum,
-			d.get("account"),
-			CompAuxNum,
-			CompAuxLib,
-			PieceRef,
-			PieceDate,
-			EcritureLib,
-			debit,
-			credit,
-			"",
-			"",
-			ValidDate,
-			Montantdevise,
-			Idevise,
-		]
-
-		result.append(row)
-
-	return result
diff --git a/erpnext/selling/doctype/customer/customer.js b/erpnext/selling/doctype/customer/customer.js
index 60f0941..42932ad 100644
--- a/erpnext/selling/doctype/customer/customer.js
+++ b/erpnext/selling/doctype/customer/customer.js
@@ -23,6 +23,7 @@
 			let d  = locals[cdt][cdn];
 			let filters = {
 				'account_type': 'Receivable',
+				'root_type': 'Asset',
 				'company': d.company,
 				"is_group": 0
 			};
@@ -137,7 +138,7 @@
 			// custom buttons
 
 			frm.add_custom_button(__('Accounts Receivable'), function () {
-				frappe.set_route('query-report', 'Accounts Receivable', {customer:frm.doc.name});
+				frappe.set_route('query-report', 'Accounts Receivable', { party_type: "Customer", party: frm.doc.name });
 			}, __('View'));
 
 			frm.add_custom_button(__('Accounting Ledger'), function () {
diff --git a/erpnext/selling/doctype/customer/customer.json b/erpnext/selling/doctype/customer/customer.json
index be8f62f..40cab9f 100644
--- a/erpnext/selling/doctype/customer/customer.json
+++ b/erpnext/selling/doctype/customer/customer.json
@@ -48,12 +48,13 @@
   "column_break1",
   "contact_html",
   "primary_address_and_contact_detail",
-  "customer_primary_contact",
-  "mobile_no",
-  "email_id",
   "column_break_26",
   "customer_primary_address",
   "primary_address",
+  "column_break_nwor",
+  "customer_primary_contact",
+  "mobile_no",
+  "email_id",
   "tax_tab",
   "taxation_section",
   "tax_id",
@@ -180,7 +181,6 @@
    "oldfieldname": "customer_group",
    "oldfieldtype": "Link",
    "options": "Customer Group",
-   "reqd": 1,
    "search_index": 1
   },
   {
@@ -192,8 +192,7 @@
    "oldfieldname": "territory",
    "oldfieldtype": "Link",
    "options": "Territory",
-   "print_hide": 1,
-   "reqd": 1
+   "print_hide": 1
   },
   {
    "fieldname": "tax_id",
@@ -339,12 +338,12 @@
    "label": "Default Accounts"
   },
   {
-    "description": "Mention if non-standard Receivable account",
-    "fieldname": "accounts",
-    "fieldtype": "Table",
-    "label": "Accounts",
-    "options": "Party Account"
-   },
+   "description": "Mention if non-standard Receivable account",
+   "fieldname": "accounts",
+   "fieldtype": "Table",
+   "label": "Accounts",
+   "options": "Party Account"
+  },
   {
    "fieldname": "credit_limit_section",
    "fieldtype": "Section Break",
@@ -568,6 +567,10 @@
    "fieldtype": "Table",
    "label": "Customer Portal Users",
    "options": "Portal User"
+  },
+  {
+   "fieldname": "column_break_nwor",
+   "fieldtype": "Column Break"
   }
  ],
  "icon": "fa fa-user",
@@ -581,7 +584,7 @@
    "link_fieldname": "party"
   }
  ],
- "modified": "2023-06-22 13:21:10.678382",
+ "modified": "2023-09-21 12:23:20.706020",
  "modified_by": "Administrator",
  "module": "Selling",
  "name": "Customer",
diff --git a/erpnext/selling/doctype/customer/customer.py b/erpnext/selling/doctype/customer/customer.py
index 555db59..a7a1aa2 100644
--- a/erpnext/selling/doctype/customer/customer.py
+++ b/erpnext/selling/doctype/customer/customer.py
@@ -17,11 +17,7 @@
 from frappe.utils import cint, cstr, flt, get_formatted_email, today
 from frappe.utils.user import get_users_with_role
 
-from erpnext.accounts.party import (  # noqa
-	get_dashboard_info,
-	get_timeline_data,
-	validate_party_accounts,
-)
+from erpnext.accounts.party import get_dashboard_info, validate_party_accounts  # noqa
 from erpnext.controllers.website_list_for_contact import add_role_for_portal_user
 from erpnext.utilities.transaction_base import TransactionBase
 
diff --git a/erpnext/selling/doctype/installation_note/installation_note.js b/erpnext/selling/doctype/installation_note/installation_note.js
index dd6f8a8..8128c77 100644
--- a/erpnext/selling/doctype/installation_note/installation_note.js
+++ b/erpnext/selling/doctype/installation_note/installation_note.js
@@ -18,6 +18,14 @@
 				}
 			}
 		});
+	},
+	onload: function(frm) {
+		if(!frm.doc.status) {
+			frm.set_value({ status:'Draft'});
+		}
+		if(frm.doc.__islocal) {
+			frm.set_value({inst_date: frappe.datetime.get_today()});
+		}
 
 		let sbb_field = frm.get_docfield('items', 'serial_and_batch_bundle');
 		if (sbb_field) {
@@ -29,14 +37,6 @@
 			};
 		}
 	},
-	onload: function(frm) {
-		if(!frm.doc.status) {
-			frm.set_value({ status:'Draft'});
-		}
-		if(frm.doc.__islocal) {
-			frm.set_value({inst_date: frappe.datetime.get_today()});
-		}
-	},
 	customer: function(frm) {
 		erpnext.utils.get_party_details(frm);
 	},
diff --git a/erpnext/selling/doctype/quotation/quotation.js b/erpnext/selling/doctype/quotation/quotation.js
index d18f70a..1bc8d68 100644
--- a/erpnext/selling/doctype/quotation/quotation.js
+++ b/erpnext/selling/doctype/quotation/quotation.js
@@ -48,6 +48,11 @@
 				}
 			}
 		});
+	},
+
+	refresh: function(frm) {
+		frm.trigger("set_label");
+		frm.trigger("set_dynamic_field_label");
 
 		let sbb_field = frm.get_docfield('packed_items', 'serial_and_batch_bundle');
 		if (sbb_field) {
@@ -61,11 +66,6 @@
 		}
 	},
 
-	refresh: function(frm) {
-		frm.trigger("set_label");
-		frm.trigger("set_dynamic_field_label");
-	},
-
 	quotation_to: function(frm) {
 		frm.trigger("set_label");
 		frm.trigger("toggle_reqd_lead_customer");
diff --git a/erpnext/selling/doctype/quotation_item/quotation_item.json b/erpnext/selling/doctype/quotation_item/quotation_item.json
index f2aabc5..5016f1f 100644
--- a/erpnext/selling/doctype/quotation_item/quotation_item.json
+++ b/erpnext/selling/doctype/quotation_item/quotation_item.json
@@ -132,7 +132,6 @@
    "oldfieldname": "description",
    "oldfieldtype": "Small Text",
    "print_width": "300px",
-   "reqd": 1,
    "width": "300px"
   },
   {
@@ -235,6 +234,7 @@
   },
   {
    "collapsible": 1,
+   "collapsible_depends_on": "eval: doc.margin_type || doc.discount_amount",
    "fieldname": "discount_and_margin",
    "fieldtype": "Section Break",
    "label": "Discount and Margin"
@@ -666,7 +666,7 @@
  "idx": 1,
  "istable": 1,
  "links": [],
- "modified": "2023-02-06 11:00:07.042364",
+ "modified": "2023-09-26 13:42:11.410294",
  "modified_by": "Administrator",
  "module": "Selling",
  "name": "Quotation Item",
@@ -676,4 +676,4 @@
  "sort_order": "DESC",
  "states": [],
  "track_changes": 1
-}
\ No newline at end of file
+}
diff --git a/erpnext/selling/doctype/sales_order/sales_order.js b/erpnext/selling/doctype/sales_order/sales_order.js
index 27163db..ba8bc33 100644
--- a/erpnext/selling/doctype/sales_order/sales_order.js
+++ b/erpnext/selling/doctype/sales_order/sales_order.js
@@ -59,19 +59,27 @@
 						child_docname: "items",
 						child_doctype: "Sales Order Detail",
 						cannot_add_row: false,
+						has_reserved_stock: frm.doc.__onload && frm.doc.__onload.has_reserved_stock
 					})
 				});
 
-				// Stock Reservation > Reserve button will be only visible if the SO has unreserved stock.
-				if (frm.doc.__onload && frm.doc.__onload.has_unreserved_stock) {
+				// Stock Reservation > Reserve button should only be visible if the SO has unreserved stock and no Pick List is created against the SO.
+				if (frm.doc.__onload && frm.doc.__onload.has_unreserved_stock && flt(frm.doc.per_picked) === 0) {
 					frm.add_custom_button(__('Reserve'), () => frm.events.create_stock_reservation_entries(frm), __('Stock Reservation'));
 				}
 			}
 
-			// Stock Reservation > Unreserve button will be only visible if the SO has reserved stock.
+			// Stock Reservation > Unreserve button will be only visible if the SO has un-delivered reserved stock.
 			if (frm.doc.__onload && frm.doc.__onload.has_reserved_stock) {
 				frm.add_custom_button(__('Unreserve'), () => frm.events.cancel_stock_reservation_entries(frm), __('Stock Reservation'));
 			}
+
+			frm.doc.items.forEach(item => {
+				if (flt(item.stock_reserved_qty) > 0) {
+					frm.add_custom_button(__('Reserved Stock'), () => frm.events.show_reserved_stock(frm), __('Stock Reservation'));
+					return;
+				}
+			});
 		}
 
 		if (frm.doc.docstatus === 0) {
@@ -82,7 +90,7 @@
 			if (frm.is_new()) {
 				frappe.db.get_single_value("Stock Settings", "enable_stock_reservation").then((value) => {
 					if (value) {
-						frappe.db.get_single_value("Stock Settings", "reserve_stock_on_sales_order_submission").then((value) => {
+						frappe.db.get_single_value("Stock Settings", "auto_reserve_stock_for_sales_order").then((value) => {
 							// If `Reserve Stock on Sales Order Submission` is enabled in Stock Settings, set Reserve Stock to 1 else 0.
 							frm.set_value("reserve_stock", value ? 1 : 0);
 						})
@@ -94,6 +102,11 @@
 				})
 			}
 		}
+
+		// Hide `Reserve Stock` field description in submitted or cancelled Sales Order.
+		if (frm.doc.docstatus > 0) {
+			frm.set_df_property("reserve_stock", "description", null);
+		}
 	},
 
 	get_items_from_internal_purchase_order(frm) {
@@ -171,76 +184,115 @@
 	},
 
 	create_stock_reservation_entries(frm) {
-		let items_data = [];
-
-		const dialog = frappe.prompt({fieldname: 'items', fieldtype: 'Table', label: __('Items to Reserve'),
+		const dialog = new frappe.ui.Dialog({
+			title: __("Stock Reservation"),
+			size: "large",
 			fields: [
 				{
-					fieldtype: 'Data',
-					fieldname: 'name',
-					label: __('Name'),
-					reqd: 1,
-					read_only: 1,
-				},
-				{
-					fieldtype: 'Link',
-					fieldname: 'item_code',
-					label: __('Item Code'),
-					options: 'Item',
-					reqd: 1,
-					read_only: 1,
-					in_list_view: 1,
-				},
-				{
-					fieldtype: 'Link',
-					fieldname: 'warehouse',
-					label: __('Warehouse'),
-					options: 'Warehouse',
-					reqd: 1,
-					in_list_view: 1,
-					get_query: function () {
+					fieldname: "set_warehouse",
+					fieldtype: "Link",
+					label: __("Set Warehouse"),
+					options: "Warehouse",
+					default: frm.doc.set_warehouse,
+					get_query: () => {
 						return {
 							filters: [
 								["Warehouse", "is_group", "!=", 1]
 							]
 						};
 					},
-				},
-				{
-					fieldtype: 'Float',
-					fieldname: 'qty_to_reserve',
-					label: __('Qty'),
-					reqd: 1,
-					in_list_view: 1
-				}
-			],
-			data: items_data,
-			in_place_edit: true,
-			get_data: function() {
-				return items_data;
-			}
-		}, function(data) {
-			if (data.items.length > 0) {
-				frappe.call({
-					doc: frm.doc,
-					method: 'create_stock_reservation_entries',
-					args: {
-						items_details: data.items,
-						notify: true
+					onchange: () => {
+						if (dialog.get_value("set_warehouse")) {
+							dialog.fields_dict.items.df.data.forEach((row) => {
+								row.warehouse = dialog.get_value("set_warehouse");
+							});
+							dialog.fields_dict.items.grid.refresh();
+						}
 					},
-					freeze: true,
-					freeze_message: __('Reserving Stock...'),
-					callback: (r) => {
-						frm.doc.__onload.has_unreserved_stock = false;
-						frm.reload_doc();
-					}
-				});
-			}
-		}, __("Stock Reservation"), __("Reserve Stock"));
+				},
+				{fieldtype: "Column Break"},
+				{fieldtype: "Section Break"},
+				{
+					fieldname: "items",
+					fieldtype: "Table",
+					label: __("Items to Reserve"),
+					allow_bulk_edit: false,
+					cannot_add_rows: true,
+					cannot_delete_rows: true,
+					data: [],
+					fields: [
+						{
+							fieldname: "name",
+							fieldtype: "Data",
+							label: __("Name"),
+							reqd: 1,
+							read_only: 1,
+						},
+						{
+							fieldname: "item_code",
+							fieldtype: "Link",
+							label: __("Item Code"),
+							options: "Item",
+							reqd: 1,
+							read_only: 1,
+							in_list_view: 1,
+						},
+						{
+							fieldname: "warehouse",
+							fieldtype: "Link",
+							label: __("Warehouse"),
+							options: "Warehouse",
+							reqd: 1,
+							in_list_view: 1,
+							get_query: () => {
+								return {
+									filters: [
+										["Warehouse", "is_group", "!=", 1]
+									]
+								};
+							},
+						},
+						{
+							fieldname: "qty_to_reserve",
+							fieldtype: "Float",
+							label: __("Qty"),
+							reqd: 1,
+							in_list_view: 1
+						}
+					],
+				},
+			],
+			primary_action_label: __("Reserve Stock"),
+			primary_action: () => {
+				var data = {items: dialog.fields_dict.items.grid.get_selected_children()};
+
+				if (data.items && data.items.length > 0) {
+					frappe.call({
+						doc: frm.doc,
+						method: "create_stock_reservation_entries",
+						args: {
+							items_details: data.items,
+							notify: true
+						},
+						freeze: true,
+						freeze_message: __("Reserving Stock..."),
+						callback: (r) => {
+							frm.doc.__onload.has_unreserved_stock = false;
+							frm.reload_doc();
+						}
+					});
+				}
+				else {
+					frappe.msgprint(__("Please select items to reserve."));
+				}
+
+				dialog.hide();
+			},
+		});
 
 		frm.doc.items.forEach(item => {
 			if (item.reserve_stock) {
-				let unreserved_qty = (flt(item.stock_qty) - (flt(item.delivered_qty) * flt(item.conversion_factor)) - flt(item.stock_reserved_qty))
+				let unreserved_qty = (flt(item.stock_qty) - (item.stock_reserved_qty ? flt(item.stock_reserved_qty) : (flt(item.delivered_qty) * flt(item.conversion_factor))))
 
 				if (unreserved_qty > 0) {
 					dialog.fields_dict.items.df.data.push({
@@ -254,22 +306,127 @@
 		});
 
 		dialog.fields_dict.items.grid.refresh();
+		dialog.show();
 	},
 
 	cancel_stock_reservation_entries(frm) {
+		const dialog = new frappe.ui.Dialog({
+			title: __("Stock Unreservation"),
+			size: "large",
+			fields: [
+				{
+					fieldname: "sr_entries",
+					fieldtype: "Table",
+					label: __("Reserved Stock"),
+					allow_bulk_edit: false,
+					cannot_add_rows: true,
+					cannot_delete_rows: true,
+					in_place_edit: true,
+					data: [],
+					fields: [
+						{
+							fieldname: "name",
+							fieldtype: "Link",
+							label: __("SRE"),
+							options: "Stock Reservation Entry",
+							reqd: 1,
+							read_only: 1,
+							in_list_view: 1,
+						},
+						{
+							fieldname: "item_code",
+							fieldtype: "Link",
+							label: __("Item Code"),
+							options: "Item",
+							reqd: 1,
+							read_only: 1,
+							in_list_view: 1,
+						},
+						{
+							fieldname: "warehouse",
+							fieldtype: "Link",
+							label: __("Warehouse"),
+							options: "Warehouse",
+							reqd: 1,
+							read_only: 1,
+							in_list_view: 1,
+						},
+						{
+							fieldname: "qty",
+							fieldtype: "Float",
+							label: __("Qty"),
+							reqd: 1,
+							read_only: 1,
+							in_list_view: 1
+						}
+					]
+				}
+			],
+			primary_action_label: __("Unreserve Stock"),
+			primary_action: () => {
+				var data = {sr_entries: dialog.fields_dict.sr_entries.grid.get_selected_children()};
+
+				if (data.sr_entries && data.sr_entries.length > 0) {
+					frappe.call({
+						doc: frm.doc,
+						method: "cancel_stock_reservation_entries",
+						args: {
+							sre_list: data.sr_entries,
+						},
+						freeze: true,
+						freeze_message: __('Unreserving Stock...'),
+						callback: (r) => {
+							frm.doc.__onload.has_reserved_stock = false;
+							frm.reload_doc();
+						}
+					});
+				}
+				else {
+					frappe.msgprint(__("Please select items to unreserve."));
+				}
+
+				dialog.hide();
+			},
+		});
+
 		frappe.call({
-			method: 'erpnext.stock.doctype.stock_reservation_entry.stock_reservation_entry.cancel_stock_reservation_entries',
+			method: 'erpnext.stock.doctype.stock_reservation_entry.stock_reservation_entry.get_stock_reservation_entries_for_voucher',
 			args: {
 				voucher_type: frm.doctype,
-				voucher_no: frm.docname
+				voucher_no: frm.docname,
 			},
-			freeze: true,
-			freeze_message: __('Unreserving Stock...'),
 			callback: (r) => {
-				frm.doc.__onload.has_reserved_stock = false;
-				frm.reload_doc();
+				if (!r.exc && r.message) {
+					r.message.forEach(sre => {
+						if (flt(sre.reserved_qty) > flt(sre.delivered_qty)) {
+							dialog.fields_dict.sr_entries.df.data.push({
+								'name': sre.name,
+								'item_code': sre.item_code,
+								'warehouse': sre.warehouse,
+								'qty': (flt(sre.reserved_qty) - flt(sre.delivered_qty))
+							});
+						}
+					});
+				}
 			}
-		})
+		}).then(r => {
+			dialog.fields_dict.sr_entries.grid.refresh();
+			dialog.show();
+		});
+	},
+
+	show_reserved_stock(frm) {
+		// Get the latest modified date from the items table.
+		var to_date = moment(new Date(Math.max(...frm.doc.items.map(e => new Date(e.modified))))).format('YYYY-MM-DD');
+
+		frappe.route_options = {
+			company: frm.doc.company,
+			from_date: frm.doc.transaction_date,
+			to_date: to_date,
+			voucher_type: frm.doc.doctype,
+			voucher_no: frm.doc.name,
+		}
+		frappe.set_route("query-report", "Reserved Stock");
 	}
 });
 
@@ -335,8 +492,11 @@
 						}
 					}
 
-					if (flt(doc.per_picked, 2) < 100 && flt(doc.per_delivered, 2) < 100) {
-						this.frm.add_custom_button(__('Pick List'), () => this.create_pick_list(), __('Create'));
+					if (!doc.__onload || !doc.__onload.has_reserved_stock) {
+						// Don't show the `Reserve` button if the Sales Order has Picked Items.
+						if (flt(doc.per_picked, 2) < 100 && flt(doc.per_delivered, 2) < 100) {
+							this.frm.add_custom_button(__('Pick List'), () => this.create_pick_list(), __('Create'));
+						}
 					}
 
 					const order_is_a_sale = ["Sales", "Shopping Cart"].indexOf(doc.order_type) !== -1;
@@ -346,7 +506,7 @@
 
 					// delivery note
 					if(flt(doc.per_delivered, 2) < 100 && (order_is_a_sale || order_is_a_custom_sale) && allow_delivery) {
-						this.frm.add_custom_button(__('Delivery Note'), () => this.make_delivery_note_based_on_delivery_date(), __('Create'));
+						this.frm.add_custom_button(__('Delivery Note'), () => this.make_delivery_note_based_on_delivery_date(true), __('Create'));
 						this.frm.add_custom_button(__('Work Order'), () => this.make_work_order(), __('Create'));
 					}
 
@@ -639,7 +799,7 @@
 		d.show();
 	}
 
-	make_delivery_note_based_on_delivery_date() {
+	make_delivery_note_based_on_delivery_date(for_reserved_stock=false) {
 		var me = this;
 
 		var delivery_dates = this.frm.doc.items.map(i => i.delivery_date);
@@ -681,22 +841,25 @@
 
 				if(!dates) return;
 
-				me.make_delivery_note(dates);
+				me.make_delivery_note(dates, for_reserved_stock);
 				dialog.hide();
 			});
 			dialog.show();
 		} else {
-			this.make_delivery_note();
+			this.make_delivery_note([], for_reserved_stock);
 		}
 	}
 
-	make_delivery_note(delivery_dates) {
+	make_delivery_note(delivery_dates, for_reserved_stock=false) {
 		frappe.model.open_mapped_doc({
 			method: "erpnext.selling.doctype.sales_order.sales_order.make_delivery_note",
 			frm: this.frm,
 			args: {
-				delivery_dates
-			}
+				delivery_dates,
+				for_reserved_stock: for_reserved_stock
+			},
+			freeze: true,
+			freeze_message: __("Creating Delivery Note ...")
 		})
 	}
 
diff --git a/erpnext/selling/doctype/sales_order/sales_order.json b/erpnext/selling/doctype/sales_order/sales_order.json
index f65969e..a74084d 100644
--- a/erpnext/selling/doctype/sales_order/sales_order.json
+++ b/erpnext/selling/doctype/sales_order/sales_order.json
@@ -1027,7 +1027,6 @@
    "length": 240,
    "oldfieldname": "in_words_export",
    "oldfieldtype": "Data",
-   "print_hide": 1,
    "read_only": 1,
    "width": "200px"
   },
@@ -1635,6 +1634,7 @@
    "description": "If checked, Stock Reservation Entries will be created on <b>Submit</b>",
    "fieldname": "reserve_stock",
    "fieldtype": "Check",
+   "hidden": 1,
    "label": "Reserve Stock",
    "no_copy": 1,
    "print_hide": 1,
@@ -1645,7 +1645,7 @@
  "idx": 105,
  "is_submittable": 1,
  "links": [],
- "modified": "2023-06-03 16:16:23.411247",
+ "modified": "2023-07-24 08:59:11.599875",
  "modified_by": "Administrator",
  "module": "Selling",
  "name": "Sales Order",
diff --git a/erpnext/selling/doctype/sales_order/sales_order.py b/erpnext/selling/doctype/sales_order/sales_order.py
index cc141ff..aae0fee 100755
--- a/erpnext/selling/doctype/sales_order/sales_order.py
+++ b/erpnext/selling/doctype/sales_order/sales_order.py
@@ -31,7 +31,6 @@
 from erpnext.setup.doctype.item_group.item_group import get_item_group_defaults
 from erpnext.stock.doctype.item.item import get_item_defaults
 from erpnext.stock.doctype.stock_reservation_entry.stock_reservation_entry import (
-	cancel_stock_reservation_entries,
 	get_sre_reserved_qty_details_for_voucher,
 	has_reserved_stock,
 )
@@ -283,7 +282,7 @@
 		self.db_set("status", "Cancelled")
 
 		self.update_blanket_order()
-		cancel_stock_reservation_entries("Sales Order", self.name)
+		self.cancel_stock_reservation_entries()
 
 		unlink_inter_company_doc(self.doctype, self.name, self.inter_company_order_reference)
 		if self.coupon_code:
@@ -535,138 +534,26 @@
 		return False
 
 	@frappe.whitelist()
-	def create_stock_reservation_entries(self, items_details=None, notify=True):
+	def create_stock_reservation_entries(self, items_details=None, notify=True) -> None:
 		"""Creates Stock Reservation Entries for Sales Order Items."""
 
 		from erpnext.stock.doctype.stock_reservation_entry.stock_reservation_entry import (
-			get_available_qty_to_reserve,
-			validate_stock_reservation_settings,
+			create_stock_reservation_entries_for_so_items as create_stock_reservation_entries,
 		)
 
-		validate_stock_reservation_settings(self)
+		create_stock_reservation_entries(so=self, items_details=items_details, notify=notify)
 
-		allow_partial_reservation = frappe.db.get_single_value(
-			"Stock Settings", "allow_partial_reservation"
+	@frappe.whitelist()
+	def cancel_stock_reservation_entries(self, sre_list=None, notify=True) -> None:
+		"""Cancel Stock Reservation Entries for Sales Order Items."""
+
+		from erpnext.stock.doctype.stock_reservation_entry.stock_reservation_entry import (
+			cancel_stock_reservation_entries,
 		)
 
-		items = []
-		if items_details:
-			for item in items_details:
-				so_item = frappe.get_doc("Sales Order Item", item["name"])
-				so_item.reserve_stock = 1
-				so_item.warehouse = item["warehouse"]
-				so_item.qty_to_reserve = flt(item["qty_to_reserve"]) * flt(so_item.conversion_factor)
-				items.append(so_item)
-
-		sre_count = 0
-		reserved_qty_details = get_sre_reserved_qty_details_for_voucher("Sales Order", self.name)
-		for item in items or self.get("items"):
-			# Skip if `Reserved Stock` is not checked for the item.
-			if not item.get("reserve_stock"):
-				continue
-
-			# Skip if Non-Stock Item.
-			if not frappe.get_cached_value("Item", item.item_code, "is_stock_item"):
-				frappe.msgprint(
-					_("Row #{0}: Stock cannot be reserved for a non-stock Item {1}").format(
-						item.idx, frappe.bold(item.item_code)
-					),
-					title=_("Stock Reservation"),
-					indicator="yellow",
-				)
-				item.db_set("reserve_stock", 0)
-				continue
-
-			# Skip if Group Warehouse.
-			if frappe.get_cached_value("Warehouse", item.warehouse, "is_group"):
-				frappe.msgprint(
-					_("Row #{0}: Stock cannot be reserved in group warehouse {1}.").format(
-						item.idx, frappe.bold(item.warehouse)
-					),
-					title=_("Stock Reservation"),
-					indicator="yellow",
-				)
-				continue
-
-			unreserved_qty = get_unreserved_qty(item, reserved_qty_details)
-
-			# Stock is already reserved for the item, notify the user and skip the item.
-			if unreserved_qty <= 0:
-				frappe.msgprint(
-					_("Row #{0}: Stock is already reserved for the Item {1}.").format(
-						item.idx, frappe.bold(item.item_code)
-					),
-					title=_("Stock Reservation"),
-					indicator="yellow",
-				)
-				continue
-
-			available_qty_to_reserve = get_available_qty_to_reserve(item.item_code, item.warehouse)
-
-			# No stock available to reserve, notify the user and skip the item.
-			if available_qty_to_reserve <= 0:
-				frappe.msgprint(
-					_("Row #{0}: No available stock to reserve for the Item {1} in Warehouse {2}.").format(
-						item.idx, frappe.bold(item.item_code), frappe.bold(item.warehouse)
-					),
-					title=_("Stock Reservation"),
-					indicator="orange",
-				)
-				continue
-
-			# The quantity which can be reserved.
-			qty_to_be_reserved = min(unreserved_qty, available_qty_to_reserve)
-
-			if hasattr(item, "qty_to_reserve"):
-				if item.qty_to_reserve <= 0:
-					frappe.msgprint(
-						_("Row #{0}: Quantity to reserve for the Item {1} should be greater than 0.").format(
-							item.idx, frappe.bold(item.item_code)
-						),
-						title=_("Stock Reservation"),
-						indicator="orange",
-					)
-					continue
-				else:
-					qty_to_be_reserved = min(qty_to_be_reserved, item.qty_to_reserve)
-
-			# Partial Reservation
-			if qty_to_be_reserved < unreserved_qty:
-				if not item.get("qty_to_reserve") or qty_to_be_reserved < flt(item.get("qty_to_reserve")):
-					frappe.msgprint(
-						_("Row #{0}: Only {1} available to reserve for the Item {2}").format(
-							item.idx,
-							frappe.bold(str(qty_to_be_reserved / item.conversion_factor) + " " + item.uom),
-							frappe.bold(item.item_code),
-						),
-						title=_("Stock Reservation"),
-						indicator="orange",
-					)
-
-				# Skip the item if `Partial Reservation` is disabled in the Stock Settings.
-				if not allow_partial_reservation:
-					continue
-
-			# Create and Submit Stock Reservation Entry
-			sre = frappe.new_doc("Stock Reservation Entry")
-			sre.item_code = item.item_code
-			sre.warehouse = item.warehouse
-			sre.voucher_type = self.doctype
-			sre.voucher_no = self.name
-			sre.voucher_detail_no = item.name
-			sre.available_qty = available_qty_to_reserve
-			sre.voucher_qty = item.stock_qty
-			sre.reserved_qty = qty_to_be_reserved
-			sre.company = self.company
-			sre.stock_uom = item.stock_uom
-			sre.project = self.project
-			sre.save()
-			sre.submit()
-
-			sre_count += 1
-
-		if sre_count and notify:
-			frappe.msgprint(_("Stock Reservation Entries Created"), alert=True, indicator="green")
+		cancel_stock_reservation_entries(
+			voucher_type=self.doctype, voucher_no=self.name, sre_list=sre_list, notify=notify
+		)
 
 
 def get_unreserved_qty(item: object, reserved_qty_details: dict) -> float:
@@ -813,8 +700,31 @@
 
 
 @frappe.whitelist()
-def make_delivery_note(source_name, target_doc=None, skip_item_mapping=False):
+def make_delivery_note(source_name, target_doc=None, kwargs=None):
 	from erpnext.stock.doctype.packed_item.packed_item import make_packing_list
+	from erpnext.stock.doctype.stock_reservation_entry.stock_reservation_entry import (
+		get_sre_details_for_voucher,
+		get_sre_reserved_qty_details_for_voucher,
+		get_ssb_bundle_for_voucher,
+	)
+
+	if not kwargs:
+		kwargs = {
+			"for_reserved_stock": frappe.flags.args and frappe.flags.args.for_reserved_stock,
+			"skip_item_mapping": frappe.flags.args and frappe.flags.args.skip_item_mapping,
+		}
+
+	kwargs = frappe._dict(kwargs)
+
+	sre_details = {}
+	if kwargs.for_reserved_stock:
+		sre_details = get_sre_reserved_qty_details_for_voucher("Sales Order", source_name)
+
+	mapper = {
+		"Sales Order": {"doctype": "Delivery Note", "validation": {"docstatus": ["=", 1]}},
+		"Sales Taxes and Charges": {"doctype": "Sales Taxes and Charges", "add_if_empty": True},
+		"Sales Team": {"doctype": "Sales Team", "add_if_empty": True},
+	}
 
 	def set_missing_values(source, target):
 		target.run_method("set_missing_values")
@@ -832,6 +742,18 @@
 
 		make_packing_list(target)
 
+	def condition(doc):
+		if doc.name in sre_details:
+			del sre_details[doc.name]
+			return False
+
+		# make_mapped_doc sets js `args` into `frappe.flags.args`
+		if frappe.flags.args and frappe.flags.args.delivery_dates:
+			if cstr(doc.delivery_date) not in frappe.flags.args.delivery_dates:
+				return False
+
+		return abs(doc.delivered_qty) < abs(doc.qty) and doc.delivered_by_supplier != 1
+
 	def update_item(source, target, source_parent):
 		target.base_amount = (flt(source.qty) - flt(source.delivered_qty)) * flt(source.base_rate)
 		target.amount = (flt(source.qty) - flt(source.delivered_qty)) * flt(source.rate)
@@ -847,21 +769,7 @@
 				or item_group.get("buying_cost_center")
 			)
 
-	mapper = {
-		"Sales Order": {"doctype": "Delivery Note", "validation": {"docstatus": ["=", 1]}},
-		"Sales Taxes and Charges": {"doctype": "Sales Taxes and Charges", "add_if_empty": True},
-		"Sales Team": {"doctype": "Sales Team", "add_if_empty": True},
-	}
-
-	if not skip_item_mapping:
-
-		def condition(doc):
-			# make_mapped_doc sets js `args` into `frappe.flags.args`
-			if frappe.flags.args and frappe.flags.args.delivery_dates:
-				if cstr(doc.delivery_date) not in frappe.flags.args.delivery_dates:
-					return False
-			return abs(doc.delivered_qty) < abs(doc.qty) and doc.delivered_by_supplier != 1
-
+	if not kwargs.skip_item_mapping:
 		mapper["Sales Order Item"] = {
 			"doctype": "Delivery Note Item",
 			"field_map": {
@@ -869,11 +777,56 @@
 				"name": "so_detail",
 				"parent": "against_sales_order",
 			},
-			"postprocess": update_item,
 			"condition": condition,
+			"postprocess": update_item,
 		}
 
-	target_doc = get_mapped_doc("Sales Order", source_name, mapper, target_doc, set_missing_values)
+	so = frappe.get_doc("Sales Order", source_name)
+	target_doc = get_mapped_doc("Sales Order", so.name, mapper, target_doc)
+
+	if not kwargs.skip_item_mapping and kwargs.for_reserved_stock:
+		sre_list = get_sre_details_for_voucher("Sales Order", source_name)
+
+		if sre_list:
+
+			def update_dn_item(source, target, source_parent):
+				update_item(source, target, so)
+
+			so_items = {d.name: d for d in so.items if d.stock_reserved_qty}
+
+			for sre in sre_list:
+				if not condition(so_items[sre.voucher_detail_no]):
+					continue
+
+				dn_item = get_mapped_doc(
+					"Sales Order Item",
+					sre.voucher_detail_no,
+					{
+						"Sales Order Item": {
+							"doctype": "Delivery Note Item",
+							"field_map": {
+								"rate": "rate",
+								"name": "so_detail",
+								"parent": "against_sales_order",
+							},
+							"postprocess": update_dn_item,
+						}
+					},
+				)
+
+				dn_item.qty = flt(sre.reserved_qty) * flt(dn_item.get("conversion_factor", 1))
+
+				if sre.reservation_based_on == "Serial and Batch" and (sre.has_serial_no or sre.has_batch_no):
+					dn_item.serial_and_batch_bundle = get_ssb_bundle_for_voucher(sre)
+
+				target_doc.append("items", dn_item)
+			else:
+				# Correct rows index.
+				for idx, item in enumerate(target_doc.items):
+					item.idx = idx + 1
+
+	# Should be called after mapping items.
+	set_missing_values(so, target_doc)
 	target_doc.set_onload("ignore_price_list", True)
 
 	return target_doc
@@ -1436,6 +1389,16 @@
 def create_pick_list(source_name, target_doc=None):
 	from erpnext.stock.doctype.packed_item.packed_item import is_product_bundle
 
+	def validate_sales_order():
+		so = frappe.get_doc("Sales Order", source_name)
+		for item in so.items:
+			if item.stock_reserved_qty > 0:
+				frappe.throw(
+					_(
+						"Cannot create a pick list for Sales Order {0} because it has reserved stock. Please unreserve the stock in order to create a pick list."
+					).format(frappe.bold(source_name))
+				)
+
 	def update_item_quantity(source, target, source_parent) -> None:
 		picked_qty = flt(source.picked_qty) / (flt(source.conversion_factor) or 1)
 		qty_to_be_picked = flt(source.qty) - max(picked_qty, flt(source.delivered_qty))
@@ -1459,6 +1422,9 @@
 			and not is_product_bundle(item.item_code)
 		)
 
+	# Don't allow a Pick List to be created against a Sales Order that has reserved stock.
+	validate_sales_order()
+
 	doc = get_mapped_doc(
 		"Sales Order",
 		source_name,
diff --git a/erpnext/selling/doctype/sales_order/test_sales_order.py b/erpnext/selling/doctype/sales_order/test_sales_order.py
index 954393f..83689a2 100644
--- a/erpnext/selling/doctype/sales_order/test_sales_order.py
+++ b/erpnext/selling/doctype/sales_order/test_sales_order.py
@@ -1789,147 +1789,6 @@
 		self.assertEqual(pe.references[1].reference_name, so.name)
 		self.assertEqual(pe.references[1].allocated_amount, 300)
 
-	@change_settings(
-		"Stock Settings",
-		{
-			"enable_stock_reservation": 1,
-			"auto_create_serial_and_batch_bundle_for_outward": 1,
-			"pick_serial_and_batch_based_on": "FIFO",
-		},
-	)
-	def test_stock_reservation_against_sales_order(self) -> None:
-		from random import randint, uniform
-
-		from erpnext.stock.doctype.stock_reservation_entry.stock_reservation_entry import (
-			cancel_stock_reservation_entries,
-			get_sre_reserved_qty_details_for_voucher,
-			get_stock_reservation_entries_for_voucher,
-			has_reserved_stock,
-		)
-		from erpnext.stock.doctype.stock_reservation_entry.test_stock_reservation_entry import (
-			create_items,
-			create_material_receipt,
-		)
-
-		items_details, warehouse = create_items(), "_Test Warehouse - _TC"
-		se = create_material_receipt(items_details, warehouse, qty=10)
-
-		item_list = []
-		for item_code, properties in items_details.items():
-			stock_uom = properties.stock_uom
-			item_list.append(
-				{
-					"item_code": item_code,
-					"warehouse": warehouse,
-					"qty": flt(uniform(11, 100), 0 if stock_uom == "Nos" else 3),
-					"uom": stock_uom,
-					"rate": randint(10, 200),
-				}
-			)
-
-		so = make_sales_order(
-			item_list=item_list,
-			warehouse="_Test Warehouse - _TC",
-		)
-
-		# Test - 1: Stock should not be reserved if the Available Qty to Reserve is less than the Ordered Qty and Partial Reservation is disabled in Stock Settings.
-		with change_settings("Stock Settings", {"allow_partial_reservation": 0}):
-			so.create_stock_reservation_entries()
-			self.assertFalse(has_reserved_stock("Sales Order", so.name))
-
-		# Test - 2: Stock should be Partially Reserved if the Partial Reservation is enabled in Stock Settings.
-		with change_settings("Stock Settings", {"allow_partial_reservation": 1}):
-			so.create_stock_reservation_entries()
-			so.load_from_db()
-			self.assertTrue(has_reserved_stock("Sales Order", so.name))
-
-			for item in so.items:
-				sre_details = get_stock_reservation_entries_for_voucher(
-					"Sales Order", so.name, item.name, fields=["reserved_qty", "status"]
-				)
-				self.assertEqual(item.stock_reserved_qty, sre_details[0].reserved_qty)
-				self.assertEqual(sre_details[0].status, "Partially Reserved")
-
-			se.cancel()
-
-			# Test - 3: Stock should be fully Reserved if the Available Qty to Reserve is greater than the Un-reserved Qty.
-			create_material_receipt(items_details, warehouse, qty=110)
-			so.create_stock_reservation_entries()
-			so.load_from_db()
-
-			reserved_qty_details = get_sre_reserved_qty_details_for_voucher("Sales Order", so.name)
-			for item in so.items:
-				reserved_qty = reserved_qty_details[item.name]
-				self.assertEqual(item.stock_reserved_qty, reserved_qty)
-				self.assertEqual(item.stock_qty, item.stock_reserved_qty)
-
-			# Test - 4: Stock should get unreserved on cancellation of Stock Reservation Entries.
-			cancel_stock_reservation_entries("Sales Order", so.name)
-			so.load_from_db()
-			self.assertFalse(has_reserved_stock("Sales Order", so.name))
-
-			for item in so.items:
-				self.assertEqual(item.stock_reserved_qty, 0)
-
-			# Test - 5: Re-reserve the stock.
-			so.create_stock_reservation_entries()
-			self.assertTrue(has_reserved_stock("Sales Order", so.name))
-
-			# Test - 6: Stock should get unreserved on cancellation of Sales Order.
-			so.cancel()
-			so.load_from_db()
-			self.assertFalse(has_reserved_stock("Sales Order", so.name))
-
-			for item in so.items:
-				self.assertEqual(item.stock_reserved_qty, 0)
-
-			# Create Sales Order and Reserve Stock.
-			so = make_sales_order(
-				item_list=item_list,
-				warehouse="_Test Warehouse - _TC",
-			)
-			so.create_stock_reservation_entries()
-
-			# Test - 7: Partial Delivery against Sales Order.
-			dn1 = make_delivery_note(so.name)
-
-			for item in dn1.items:
-				item.qty = flt(uniform(1, 10), 0 if item.stock_uom == "Nos" else 3)
-
-			dn1.save()
-			dn1.submit()
-
-			for item in so.items:
-				sre_details = get_stock_reservation_entries_for_voucher(
-					"Sales Order", so.name, item.name, fields=["delivered_qty", "status"]
-				)
-				self.assertGreater(sre_details[0].delivered_qty, 0)
-				self.assertEqual(sre_details[0].status, "Partially Delivered")
-
-			# Test - 8: Over Delivery against Sales Order, SRE Delivered Qty should not be greater than the SRE Reserved Qty.
-			with change_settings("Stock Settings", {"over_delivery_receipt_allowance": 100}):
-				dn2 = make_delivery_note(so.name)
-
-				for item in dn2.items:
-					item.qty += flt(uniform(1, 10), 0 if item.stock_uom == "Nos" else 3)
-
-				dn2.save()
-				dn2.submit()
-
-			for item in so.items:
-				sre_details = frappe.db.get_all(
-					"Stock Reservation Entry",
-					filters={
-						"voucher_type": "Sales Order",
-						"voucher_no": so.name,
-						"voucher_detail_no": item.name,
-					},
-					fields=["reserved_qty", "delivered_qty"],
-				)
-
-				for sre_detail in sre_details:
-					self.assertEqual(sre_detail.reserved_qty, sre_detail.delivered_qty)
-
 	def test_delivered_item_material_request(self):
 		"SO -> MR (Manufacture) -> WO. Test if WO Qty is updated in SO."
 		from erpnext.manufacturing.doctype.work_order.work_order import (
@@ -2030,6 +1889,61 @@
 		self.assertEqual(len(dn.packed_items), 1)
 		self.assertEqual(dn.items[0].item_code, "_Test Product Bundle Item Partial 2")
 
+	@change_settings("Selling Settings", {"editable_bundle_item_rates": 1})
+	def test_expired_rate_for_packed_item(self):
+		bundle = "_Test Product Bundle 1"
+		packed_item = "_Packed Item 1"
+
+		# test Update Items with product bundle
+		for product_bundle in [bundle]:
+			if not frappe.db.exists("Item", product_bundle):
+				bundle_item = make_item(product_bundle, {"is_stock_item": 0})
+				bundle_item.append(
+					"item_defaults", {"company": "_Test Company", "default_warehouse": "_Test Warehouse - _TC"}
+				)
+				bundle_item.save(ignore_permissions=True)
+
+		for product_bundle in [packed_item]:
+			if not frappe.db.exists("Item", product_bundle):
+				make_item(product_bundle, {"is_stock_item": 0, "stock_uom": "Nos"})
+
+		make_product_bundle(bundle, [packed_item], 1)
+
+		for scenario in [
+			{"valid_upto": add_days(nowdate(), -1), "expected_rate": 0.0},
+			{"valid_upto": add_days(nowdate(), 1), "expected_rate": 111.0},
+		]:
+			with self.subTest(scenario=scenario):
+				frappe.get_doc(
+					{
+						"doctype": "Item Price",
+						"item_code": packed_item,
+						"selling": 1,
+						"price_list": "_Test Price List",
+						"valid_from": add_days(nowdate(), -1),
+						"valid_upto": scenario.get("valid_upto"),
+						"price_list_rate": 111,
+					}
+				).save()
+
+				so = frappe.new_doc("Sales Order")
+				so.transaction_date = nowdate()
+				so.delivery_date = nowdate()
+				so.set_warehouse = ""
+				so.company = "_Test Company"
+				so.customer = "_Test Customer"
+				so.currency = "INR"
+				so.selling_price_list = "_Test Price List"
+				so.append("items", {"item_code": bundle, "qty": 1})
+				so.save()
+
+				self.assertEqual(len(so.items), 1)
+				self.assertEqual(len(so.packed_items), 1)
+				self.assertEqual(so.items[0].item_code, bundle)
+				self.assertEqual(so.packed_items[0].item_code, packed_item)
+				self.assertEqual(so.items[0].rate, scenario.get("expected_rate"))
+				self.assertEqual(so.packed_items[0].rate, scenario.get("expected_rate"))
+
 
 def automatically_fetch_payment_terms(enable=1):
 	accounts_settings = frappe.get_doc("Accounts Settings")
diff --git a/erpnext/selling/doctype/sales_order_item/sales_order_item.json b/erpnext/selling/doctype/sales_order_item/sales_order_item.json
index 07565c3..e6f7456 100644
--- a/erpnext/selling/doctype/sales_order_item/sales_order_item.json
+++ b/erpnext/selling/doctype/sales_order_item/sales_order_item.json
@@ -162,7 +162,6 @@
    "oldfieldname": "description",
    "oldfieldtype": "Small Text",
    "print_width": "300px",
-   "reqd": 1,
    "width": "300px"
   },
   {
@@ -906,4 +905,4 @@
  "sort_order": "DESC",
  "states": [],
  "track_changes": 1
-}
\ No newline at end of file
+}
diff --git a/erpnext/selling/page/point_of_sale/pos_past_order_summary.js b/erpnext/selling/page/point_of_sale/pos_past_order_summary.js
index be75bd6..d341d23 100644
--- a/erpnext/selling/page/point_of_sale/pos_past_order_summary.js
+++ b/erpnext/selling/page/point_of_sale/pos_past_order_summary.js
@@ -48,8 +48,8 @@
 		const email_dialog = new frappe.ui.Dialog({
 			title: 'Email Receipt',
 			fields: [
-				{fieldname: 'email_id', fieldtype: 'Data', options: 'Email', label: 'Email ID'},
-				// {fieldname:'remarks', fieldtype:'Text', label:'Remarks (if any)'}
+				{fieldname: 'email_id', fieldtype: 'Data', options: 'Email', label: 'Email ID', reqd: 1},
+				{fieldname:'content', fieldtype:'Small Text', label:'Message (if any)'}
 			],
 			primary_action: () => {
 				this.send_email();
@@ -243,6 +243,7 @@
 	send_email() {
 		const frm = this.events.get_frm();
 		const recipients = this.email_dialog.get_values().email_id;
+		const content = this.email_dialog.get_values().content;
 		const doc = this.doc || frm.doc;
 		const print_format = frm.pos_print_format;
 
@@ -251,6 +252,7 @@
 			args: {
 				recipients: recipients,
 				subject: __(frm.meta.name) + ': ' + doc.name,
+				content: content ? content : __(frm.meta.name) + ': ' + doc.name,
 				doctype: doc.doctype,
 				name: doc.name,
 				send_email: 1,
diff --git a/erpnext/setup/demo_data/customer.json b/erpnext/setup/demo_data/customer.json
index 1b47906..5e77e78 100644
--- a/erpnext/setup/demo_data/customer.json
+++ b/erpnext/setup/demo_data/customer.json
@@ -2,19 +2,16 @@
     {
         "doctype": "Customer",
         "customer_group": "Demo Customer Group",
-        "territory": "All Territories",
         "customer_name": "Grant Plastics Ltd."
     },
     {
         "doctype": "Customer",
         "customer_group": "Demo Customer Group",
-        "territory": "All Territories",
         "customer_name": "West View Software Ltd."
     },
     {
         "doctype": "Customer",
         "customer_group": "Demo Customer Group",
-        "territory": "All Territories",
         "customer_name": "Palmer Productions Ltd."
     }
-]
\ No newline at end of file
+]
diff --git a/erpnext/setup/doctype/authorization_control/authorization_control.py b/erpnext/setup/doctype/authorization_control/authorization_control.py
index 5e77c6f..fd5a201 100644
--- a/erpnext/setup/doctype/authorization_control/authorization_control.py
+++ b/erpnext/setup/doctype/authorization_control/authorization_control.py
@@ -10,7 +10,7 @@
 
 
 class AuthorizationControl(TransactionBase):
-	def get_appr_user_role(self, det, doctype_name, total, based_on, condition, item, company):
+	def get_appr_user_role(self, det, doctype_name, total, based_on, condition, master_name, company):
 		amt_list, appr_users, appr_roles = [], [], []
 		users, roles = "", ""
 		if det:
@@ -47,11 +47,11 @@
 				frappe.msgprint(_("Not authroized since {0} exceeds limits").format(_(based_on)))
 				frappe.throw(_("Can be approved by {0}").format(comma_or(appr_roles + appr_users)))
 
-	def validate_auth_rule(self, doctype_name, total, based_on, cond, company, item=""):
+	def validate_auth_rule(self, doctype_name, total, based_on, cond, company, master_name=""):
 		chk = 1
 		add_cond1, add_cond2 = "", ""
-		if based_on == "Itemwise Discount":
-			add_cond1 += " and master_name = " + frappe.db.escape(cstr(item))
+		if based_on in ["Itemwise Discount", "Item Group wise Discount"]:
+			add_cond1 += " and master_name = " + frappe.db.escape(cstr(master_name))
 			itemwise_exists = frappe.db.sql(
 				"""select value from `tabAuthorization Rule`
 				where transaction = %s and value <= %s
@@ -71,11 +71,11 @@
 
 			if itemwise_exists:
 				self.get_appr_user_role(
-					itemwise_exists, doctype_name, total, based_on, cond + add_cond1, item, company
+					itemwise_exists, doctype_name, total, based_on, cond + add_cond1, master_name, company
 				)
 				chk = 0
 		if chk == 1:
-			if based_on == "Itemwise Discount":
+			if based_on in ["Itemwise Discount", "Item Group wise Discount"]:
 				add_cond2 += " and ifnull(master_name,'') = ''"
 
 			appr = frappe.db.sql(
@@ -95,7 +95,9 @@
 					(doctype_name, total, based_on),
 				)
 
-			self.get_appr_user_role(appr, doctype_name, total, based_on, cond + add_cond2, item, company)
+			self.get_appr_user_role(
+				appr, doctype_name, total, based_on, cond + add_cond2, master_name, company
+			)
 
 	def bifurcate_based_on_type(self, doctype_name, total, av_dis, based_on, doc_obj, val, company):
 		add_cond = ""
@@ -123,6 +125,12 @@
 					self.validate_auth_rule(
 						doctype_name, t.discount_percentage, based_on, add_cond, company, t.item_code
 					)
+		elif based_on == "Item Group wise Discount":
+			if doc_obj:
+				for t in doc_obj.get("items"):
+					self.validate_auth_rule(
+						doctype_name, t.discount_percentage, based_on, add_cond, company, t.item_group
+					)
 		else:
 			self.validate_auth_rule(doctype_name, auth_value, based_on, add_cond, company)
 
@@ -148,6 +156,7 @@
 			"Average Discount",
 			"Customerwise Discount",
 			"Itemwise Discount",
+			"Item Group wise Discount",
 		]
 
 		# Check for authorization set for individual user
@@ -166,7 +175,7 @@
 
 		# Remove user specific rules from global authorization rules
 		for r in based_on:
-			if r in final_based_on and r != "Itemwise Discount":
+			if r in final_based_on and not r in ["Itemwise Discount", "Item Group wise Discount"]:
 				final_based_on.remove(r)
 
 		# Check for authorization set on particular roles
@@ -194,7 +203,7 @@
 
 		# Remove role specific rules from global authorization rules
 		for r in based_on:
-			if r in final_based_on and r != "Itemwise Discount":
+			if r in final_based_on and not r in ["Itemwise Discount", "Item Group wise Discount"]:
 				final_based_on.remove(r)
 
 		# Check for global authorization
diff --git a/erpnext/setup/doctype/authorization_rule/authorization_rule.js b/erpnext/setup/doctype/authorization_rule/authorization_rule.js
index 3f6afca..f00ed3e 100644
--- a/erpnext/setup/doctype/authorization_rule/authorization_rule.js
+++ b/erpnext/setup/doctype/authorization_rule/authorization_rule.js
@@ -12,6 +12,9 @@
 		} else if(frm.doc.based_on==="Itemwise Discount") {
 			unhide_field("master_name");
 			frm.set_value("customer_or_item", "Item");
+		} else if(frm.doc.based_on==="Item Group wise Discount") {
+			unhide_field("master_name");
+			frm.set_value("customer_or_item", "Item Group");
 		} else {
 			frm.set_value("customer_or_item", "");
 			frm.set_value("master_name", "");
@@ -81,6 +84,13 @@
 			doctype: "Item",
 			query: "erpnext.controllers.queries.item_query"
 		}
+	else if (doc.based_on==="Item Group wise Discount")
+		return {
+			doctype: "Item Group",
+			filters: {
+				"is_group": 0
+			}
+		}
 	else
 		return {
 			filters: [
diff --git a/erpnext/setup/doctype/authorization_rule/authorization_rule.json b/erpnext/setup/doctype/authorization_rule/authorization_rule.json
index d3b8887..d750c7b 100644
--- a/erpnext/setup/doctype/authorization_rule/authorization_rule.json
+++ b/erpnext/setup/doctype/authorization_rule/authorization_rule.json
@@ -46,7 +46,7 @@
    "label": "Based On",
    "oldfieldname": "based_on",
    "oldfieldtype": "Select",
-   "options": "\nGrand Total\nAverage Discount\nCustomerwise Discount\nItemwise Discount\nNot Applicable",
+   "options": "\nGrand Total\nAverage Discount\nCustomerwise Discount\nItemwise Discount\nItem Group wise Discount\nNot Applicable",
    "reqd": 1
   },
   {
@@ -54,14 +54,14 @@
    "fieldtype": "Select",
    "hidden": 1,
    "label": "Customer or Item",
-   "options": "Customer\nItem",
+   "options": "Customer\nItem\nItem Group",
    "read_only": 1
   },
   {
    "fieldname": "master_name",
    "fieldtype": "Dynamic Link",
    "in_list_view": 1,
-   "label": "Customer / Item Name",
+   "label": "Customer / Item / Item Group",
    "oldfieldname": "master_name",
    "oldfieldtype": "Link",
    "options": "customer_or_item"
@@ -162,7 +162,7 @@
  "icon": "fa fa-shield",
  "idx": 1,
  "links": [],
- "modified": "2022-07-01 11:19:45.643991",
+ "modified": "2023-09-11 10:29:02.863193",
  "modified_by": "Administrator",
  "module": "Setup",
  "name": "Authorization Rule",
diff --git a/erpnext/setup/doctype/authorization_rule/authorization_rule.py b/erpnext/setup/doctype/authorization_rule/authorization_rule.py
index 44bd826..9e64e55 100644
--- a/erpnext/setup/doctype/authorization_rule/authorization_rule.py
+++ b/erpnext/setup/doctype/authorization_rule/authorization_rule.py
@@ -47,6 +47,7 @@
 			"Average Discount",
 			"Customerwise Discount",
 			"Itemwise Discount",
+			"Item Group wise Discount",
 		]:
 			frappe.throw(
 				_("Cannot set authorization on basis of Discount for {0}").format(self.transaction)
@@ -55,8 +56,6 @@
 			frappe.throw(_("Discount must be less than 100"))
 		elif self.based_on == "Customerwise Discount" and not self.master_name:
 			frappe.throw(_("Customer required for 'Customerwise Discount'"))
-		else:
-			self.based_on = "Not Applicable"
 
 	def validate(self):
 		self.check_duplicate_entry()
diff --git a/erpnext/setup/doctype/company/company.js b/erpnext/setup/doctype/company/company.js
index fa207ec..4973dab 100644
--- a/erpnext/setup/doctype/company/company.js
+++ b/erpnext/setup/doctype/company/company.js
@@ -200,8 +200,8 @@
 	$.each([
 		["default_bank_account", {"account_type": "Bank"}],
 		["default_cash_account", {"account_type": "Cash"}],
-		["default_receivable_account", {"account_type": "Receivable"}],
-		["default_payable_account", {"account_type": "Payable"}],
+		["default_receivable_account", { "root_type": "Asset", "account_type": "Receivable" }],
+		["default_payable_account", { "root_type": "Liability", "account_type": "Payable" }],
 		["default_expense_account", {"root_type": "Expense"}],
 		["default_income_account", {"root_type": "Income"}],
 		["round_off_account", {"root_type": "Expense"}],
diff --git a/erpnext/setup/doctype/company/company.json b/erpnext/setup/doctype/company/company.json
index ed2852e..24d7da4 100644
--- a/erpnext/setup/doctype/company/company.json
+++ b/erpnext/setup/doctype/company/company.json
@@ -33,22 +33,17 @@
   "fax",
   "website",
   "address_html",
+  "registration_info",
+  "registration_details",
+  "lft",
+  "rgt",
+  "old_parent",
+  "accounts_tab",
   "section_break_28",
   "create_chart_of_accounts_based_on",
   "existing_company",
   "column_break_26",
   "chart_of_accounts",
-  "charts_section",
-  "sales_settings",
-  "default_buying_terms",
-  "sales_monthly_history",
-  "monthly_sales_target",
-  "total_monthly_sales",
-  "column_break_goals",
-  "default_selling_terms",
-  "default_warehouse_for_sales_return",
-  "credit_limit",
-  "transactions_annual_history",
   "default_settings",
   "default_bank_account",
   "default_cash_account",
@@ -75,16 +70,12 @@
   "column_break_fwcf",
   "default_advance_received_account",
   "default_advance_paid_account",
-  "auto_accounting_for_stock_settings",
-  "enable_perpetual_inventory",
-  "enable_provisional_accounting_for_non_stock_items",
-  "default_inventory_account",
-  "stock_adjustment_account",
-  "default_in_transit_warehouse",
-  "column_break_32",
-  "stock_received_but_not_billed",
-  "default_provisional_account",
-  "expenses_included_in_valuation",
+  "exchange_rate_revaluation_settings_section",
+  "auto_exchange_rate_revaluation",
+  "auto_err_frequency",
+  "submit_err_jv",
+  "budget_detail",
+  "exception_budget_approver_role",
   "fixed_asset_defaults",
   "accumulated_depreciation_account",
   "depreciation_expense_account",
@@ -95,17 +86,29 @@
   "depreciation_cost_center",
   "capital_work_in_progress_account",
   "asset_received_but_not_billed",
-  "exchange_rate_revaluation_settings_section",
-  "auto_exchange_rate_revaluation",
-  "auto_err_frequency",
-  "submit_err_jv",
-  "budget_detail",
-  "exception_budget_approver_role",
-  "registration_info",
-  "registration_details",
-  "lft",
-  "rgt",
-  "old_parent"
+  "buying_and_selling_tab",
+  "sales_settings",
+  "default_buying_terms",
+  "sales_monthly_history",
+  "monthly_sales_target",
+  "total_monthly_sales",
+  "column_break_goals",
+  "default_selling_terms",
+  "default_warehouse_for_sales_return",
+  "credit_limit",
+  "transactions_annual_history",
+  "stock_tab",
+  "auto_accounting_for_stock_settings",
+  "enable_perpetual_inventory",
+  "enable_provisional_accounting_for_non_stock_items",
+  "default_inventory_account",
+  "stock_adjustment_account",
+  "default_in_transit_warehouse",
+  "column_break_32",
+  "stock_received_but_not_billed",
+  "default_provisional_account",
+  "expenses_included_in_valuation",
+  "dashboard_tab"
  ],
  "fields": [
   {
@@ -212,11 +215,6 @@
    "read_only": 1
   },
   {
-   "fieldname": "charts_section",
-   "fieldtype": "Section Break",
-   "label": "Default Values"
-  },
-  {
    "fieldname": "default_currency",
    "fieldtype": "Link",
    "ignore_user_permissions": 1,
@@ -535,7 +533,6 @@
    "options": "Account"
   },
   {
-   "collapsible": 1,
    "fieldname": "budget_detail",
    "fieldtype": "Section Break",
    "label": "Budget Detail"
@@ -680,7 +677,6 @@
    "fieldtype": "Column Break"
   },
   {
-   "collapsible": 1,
    "fieldname": "fixed_asset_defaults",
    "fieldtype": "Section Break",
    "label": "Fixed Asset Defaults"
@@ -758,6 +754,27 @@
    "fieldname": "submit_err_jv",
    "fieldtype": "Check",
    "label": "Submit ERR Journals?"
+  },
+  {
+   "fieldname": "accounts_tab",
+   "fieldtype": "Tab Break",
+   "label": "Accounts"
+  },
+  {
+   "fieldname": "buying_and_selling_tab",
+   "fieldtype": "Tab Break",
+   "label": "Buying and Selling"
+  },
+  {
+   "fieldname": "stock_tab",
+   "fieldtype": "Tab Break",
+   "label": "Stock"
+  },
+  {
+   "fieldname": "dashboard_tab",
+   "fieldtype": "Tab Break",
+   "label": "Dashboard",
+   "show_dashboard": 1
   }
  ],
  "icon": "fa fa-building",
@@ -765,7 +782,7 @@
  "image_field": "company_logo",
  "is_tree": 1,
  "links": [],
- "modified": "2023-07-07 05:41:41.537256",
+ "modified": "2023-09-10 21:53:13.860791",
  "modified_by": "Administrator",
  "module": "Setup",
  "name": "Company",
diff --git a/erpnext/setup/doctype/company/company.py b/erpnext/setup/doctype/company/company.py
index fcdf245..b05696a 100644
--- a/erpnext/setup/doctype/company/company.py
+++ b/erpnext/setup/doctype/company/company.py
@@ -403,14 +403,20 @@
 				self._set_default_account(default_account, default_accounts.get(default_account))
 
 		if not self.default_income_account:
-			income_account = frappe.db.get_value(
-				"Account", {"account_name": _("Sales"), "company": self.name, "is_group": 0}
+			income_account = frappe.db.get_all(
+				"Account",
+				filters={"company": self.name, "is_group": 0},
+				or_filters={
+					"account_name": ("in", [_("Sales"), _("Sales Account")]),
+					"account_type": "Income Account",
+				},
+				pluck="name",
 			)
 
-			if not income_account:
-				income_account = frappe.db.get_value(
-					"Account", {"account_name": _("Sales Account"), "company": self.name}
-				)
+			if income_account:
+				income_account = income_account[0]
+			else:
+				income_account = None
 
 			self.db_set("default_income_account", income_account)
 
diff --git a/erpnext/setup/doctype/currency_exchange/test_currency_exchange.py b/erpnext/setup/doctype/currency_exchange/test_currency_exchange.py
index 3b48c2b..8477984 100644
--- a/erpnext/setup/doctype/currency_exchange/test_currency_exchange.py
+++ b/erpnext/setup/doctype/currency_exchange/test_currency_exchange.py
@@ -121,6 +121,7 @@
 		# Update Currency Exchange Rate
 		settings = frappe.get_single("Currency Exchange Settings")
 		settings.service_provider = "exchangerate.host"
+		settings.access_key = "12345667890"
 		settings.save()
 
 		# Update exchange
diff --git a/erpnext/setup/doctype/customer_group/customer_group.js b/erpnext/setup/doctype/customer_group/customer_group.js
index 49a90f9..3c81b02 100644
--- a/erpnext/setup/doctype/customer_group/customer_group.js
+++ b/erpnext/setup/doctype/customer_group/customer_group.js
@@ -30,6 +30,7 @@
 		frm.set_query('account', 'accounts', function (doc, cdt, cdn) {
 			return {
 				filters: {
+					'root_type': 'Asset',
 					"account_type": 'Receivable',
 					"company": locals[cdt][cdn].company,
 					"is_group": 0
diff --git a/erpnext/setup/doctype/department/department.json b/erpnext/setup/doctype/department/department.json
index 5a16bae..99deca5 100644
--- a/erpnext/setup/doctype/department/department.json
+++ b/erpnext/setup/doctype/department/department.json
@@ -25,18 +25,15 @@
    "label": "Department",
    "oldfieldname": "department_name",
    "oldfieldtype": "Data",
-   "reqd": 1,
-   "show_days": 1,
-   "show_seconds": 1
+   "reqd": 1
   },
   {
    "fieldname": "parent_department",
    "fieldtype": "Link",
+   "ignore_user_permissions": 1,
    "in_list_view": 1,
    "label": "Parent Department",
-   "options": "Department",
-   "show_days": 1,
-   "show_seconds": 1
+   "options": "Department"
   },
   {
    "fieldname": "company",
@@ -44,9 +41,7 @@
    "in_standard_filter": 1,
    "label": "Company",
    "options": "Company",
-   "reqd": 1,
-   "show_days": 1,
-   "show_seconds": 1
+   "reqd": 1
   },
   {
    "bold": 1,
@@ -54,17 +49,13 @@
    "fieldname": "is_group",
    "fieldtype": "Check",
    "in_list_view": 1,
-   "label": "Is Group",
-   "show_days": 1,
-   "show_seconds": 1
+   "label": "Is Group"
   },
   {
    "default": "0",
    "fieldname": "disabled",
    "fieldtype": "Check",
-   "label": "Disabled",
-   "show_days": 1,
-   "show_seconds": 1
+   "label": "Disabled"
   },
   {
    "fieldname": "lft",
@@ -72,9 +63,7 @@
    "hidden": 1,
    "label": "lft",
    "print_hide": 1,
-   "read_only": 1,
-   "show_days": 1,
-   "show_seconds": 1
+   "read_only": 1
   },
   {
    "fieldname": "rgt",
@@ -82,9 +71,7 @@
    "hidden": 1,
    "label": "rgt",
    "print_hide": 1,
-   "read_only": 1,
-   "show_days": 1,
-   "show_seconds": 1
+   "read_only": 1
   },
   {
    "fieldname": "old_parent",
@@ -92,22 +79,18 @@
    "hidden": 1,
    "ignore_user_permissions": 1,
    "label": "Old Parent",
-   "print_hide": 1,
-   "show_days": 1,
-   "show_seconds": 1
+   "print_hide": 1
   },
   {
    "fieldname": "column_break_3",
-   "fieldtype": "Column Break",
-   "show_days": 1,
-   "show_seconds": 1
+   "fieldtype": "Column Break"
   }
  ],
  "icon": "fa fa-sitemap",
  "idx": 1,
  "is_tree": 1,
  "links": [],
- "modified": "2020-06-10 12:28:00.563272",
+ "modified": "2023-08-28 17:26:46.826501",
  "modified_by": "Administrator",
  "module": "Setup",
  "name": "Department",
@@ -147,12 +130,12 @@
    "read": 1,
    "report": 1,
    "role": "HR Manager",
-   "set_user_permissions": 1,
    "share": 1,
    "write": 1
   }
  ],
  "show_name_in_global_search": 1,
  "sort_field": "modified",
- "sort_order": "ASC"
+ "sort_order": "ASC",
+ "states": []
 }
\ No newline at end of file
diff --git a/erpnext/setup/doctype/employee/employee.json b/erpnext/setup/doctype/employee/employee.json
index 6cb4292..1143ccb 100644
--- a/erpnext/setup/doctype/employee/employee.json
+++ b/erpnext/setup/doctype/employee/employee.json
@@ -616,6 +616,7 @@
    "fieldname": "relieving_date",
    "fieldtype": "Date",
    "label": "Relieving Date",
+   "no_copy": 1,
    "mandatory_depends_on": "eval:doc.status == \"Left\"",
    "oldfieldname": "relieving_date",
    "oldfieldtype": "Date"
@@ -822,7 +823,7 @@
  "idx": 24,
  "image_field": "image",
  "links": [],
- "modified": "2023-03-30 15:57:05.174592",
+ "modified": "2023-10-04 10:57:05.174592",
  "modified_by": "Administrator",
  "module": "Setup",
  "name": "Employee",
@@ -870,4 +871,4 @@
  "sort_order": "DESC",
  "states": [],
  "title_field": "employee_name"
-}
\ No newline at end of file
+}
diff --git a/erpnext/setup/doctype/employee/test_employee.py b/erpnext/setup/doctype/employee/test_employee.py
index 071c336..5a693c5 100644
--- a/erpnext/setup/doctype/employee/test_employee.py
+++ b/erpnext/setup/doctype/employee/test_employee.py
@@ -66,5 +66,8 @@
 		employee.insert()
 		return employee.name
 	else:
-		frappe.db.set_value("Employee", {"employee_name": user}, "status", "Active")
-		return frappe.get_value("Employee", {"employee_name": user}, "name")
+		employee = frappe.get_doc("Employee", {"employee_name": user})
+		employee.update(kwargs)
+		employee.status = "Active"
+		employee.save()
+		return employee.name
diff --git a/erpnext/setup/doctype/holiday_list/holiday_list.py b/erpnext/setup/doctype/holiday_list/holiday_list.py
index 526bc2b..df5b407 100644
--- a/erpnext/setup/doctype/holiday_list/holiday_list.py
+++ b/erpnext/setup/doctype/holiday_list/holiday_list.py
@@ -19,6 +19,7 @@
 	def validate(self):
 		self.validate_days()
 		self.total_holidays = len(self.holidays)
+		self.validate_dupliacte_date()
 
 	@frappe.whitelist()
 	def get_weekly_off_dates(self):
@@ -124,6 +125,14 @@
 	def clear_table(self):
 		self.set("holidays", [])
 
+	def validate_dupliacte_date(self):
+		unique_dates = []
+		for row in self.holidays:
+			if row.holiday_date in unique_dates:
+				frappe.throw(_("Holiday Date {0} added multiple times").format(frappe.bold(row.holiday_date)))
+
+			unique_dates.append(row.holiday_date)
+
 
 @frappe.whitelist()
 def get_events(start, end, filters=None):
diff --git a/erpnext/setup/doctype/item_group/item_group.json b/erpnext/setup/doctype/item_group/item_group.json
index 2986087..e0f5090 100644
--- a/erpnext/setup/doctype/item_group/item_group.json
+++ b/erpnext/setup/doctype/item_group/item_group.json
@@ -233,7 +233,7 @@
  "is_tree": 1,
  "links": [],
  "max_attachments": 3,
- "modified": "2023-01-05 12:21:30.458628",
+ "modified": "2023-08-28 22:27:48.382985",
  "modified_by": "Administrator",
  "module": "Setup",
  "name": "Item Group",
@@ -266,7 +266,6 @@
    "read": 1,
    "report": 1,
    "role": "Item Manager",
-   "set_user_permissions": 1,
    "share": 1,
    "write": 1
   },
@@ -296,7 +295,7 @@
    "export": 1,
    "print": 1,
    "report": 1,
-   "role": "All",
+   "role": "Desk User",
    "select": 1,
    "share": 1
   }
diff --git a/erpnext/setup/doctype/print_heading/print_heading.json b/erpnext/setup/doctype/print_heading/print_heading.json
index dc07f0c..1083583 100644
--- a/erpnext/setup/doctype/print_heading/print_heading.json
+++ b/erpnext/setup/doctype/print_heading/print_heading.json
@@ -1,131 +1,68 @@
 {
- "allow_copy": 0, 
- "allow_import": 1, 
- "allow_rename": 1, 
- "autoname": "field:print_heading", 
- "beta": 0, 
- "creation": "2013-01-10 16:34:24", 
- "custom": 0, 
- "docstatus": 0, 
- "doctype": "DocType", 
- "document_type": "Setup", 
- "editable_grid": 0, 
+ "actions": [],
+ "allow_import": 1,
+ "allow_rename": 1,
+ "autoname": "field:print_heading",
+ "creation": "2013-01-10 16:34:24",
+ "doctype": "DocType",
+ "document_type": "Setup",
+ "engine": "InnoDB",
+ "field_order": [
+  "print_heading",
+  "description"
+ ],
  "fields": [
   {
-   "allow_on_submit": 1, 
-   "bold": 0, 
-   "collapsible": 0, 
-   "fieldname": "print_heading", 
-   "fieldtype": "Data", 
-   "hidden": 0, 
-   "ignore_user_permissions": 0, 
-   "ignore_xss_filter": 0, 
-   "in_filter": 1, 
-   "in_list_view": 1, 
-   "label": "Print Heading", 
-   "length": 0, 
-   "no_copy": 0, 
-   "oldfieldname": "print_heading", 
-   "oldfieldtype": "Data", 
-   "permlevel": 0, 
-   "print_hide": 0, 
-   "print_hide_if_no_value": 0, 
-   "read_only": 0, 
-   "report_hide": 0, 
-   "reqd": 1, 
-   "search_index": 0, 
-   "set_only_once": 0, 
-   "unique": 0
-  }, 
+   "allow_on_submit": 1,
+   "fieldname": "print_heading",
+   "fieldtype": "Data",
+   "in_filter": 1,
+   "in_list_view": 1,
+   "label": "Print Heading",
+   "oldfieldname": "print_heading",
+   "oldfieldtype": "Data",
+   "reqd": 1,
+   "unique": 1
+  },
   {
-   "allow_on_submit": 0, 
-   "bold": 0, 
-   "collapsible": 0, 
-   "fieldname": "description", 
-   "fieldtype": "Small Text", 
-   "hidden": 0, 
-   "ignore_user_permissions": 0, 
-   "ignore_xss_filter": 0, 
-   "in_filter": 0, 
-   "in_list_view": 1, 
-   "label": "Description", 
-   "length": 0, 
-   "no_copy": 0, 
-   "oldfieldname": "description", 
-   "oldfieldtype": "Small Text", 
-   "permlevel": 0, 
-   "print_hide": 0, 
-   "print_hide_if_no_value": 0, 
-   "read_only": 0, 
-   "report_hide": 0, 
-   "reqd": 0, 
-   "search_index": 0, 
-   "set_only_once": 0, 
-   "unique": 0, 
+   "fieldname": "description",
+   "fieldtype": "Small Text",
+   "in_list_view": 1,
+   "label": "Description",
+   "oldfieldname": "description",
+   "oldfieldtype": "Small Text",
    "width": "300px"
   }
- ], 
- "hide_heading": 0, 
- "hide_toolbar": 0, 
- "icon": "fa fa-font", 
- "idx": 1, 
- "image_view": 0, 
- "in_create": 0, 
-
- "is_submittable": 0, 
- "issingle": 0, 
- "istable": 0, 
- "max_attachments": 0, 
- "modified": "2016-07-25 05:24:25.628101", 
- "modified_by": "Administrator", 
- "module": "Setup", 
- "name": "Print Heading", 
- "owner": "Administrator", 
+ ],
+ "icon": "fa fa-font",
+ "idx": 1,
+ "links": [],
+ "modified": "2023-08-28 22:17:42.041255",
+ "modified_by": "Administrator",
+ "module": "Setup",
+ "name": "Print Heading",
+ "naming_rule": "By fieldname",
+ "owner": "Administrator",
  "permissions": [
   {
-   "amend": 0, 
-   "apply_user_permissions": 0, 
-   "cancel": 0, 
-   "create": 1, 
-   "delete": 1, 
-   "email": 1, 
-   "export": 0, 
-   "if_owner": 0, 
-   "import": 0, 
-   "permlevel": 0, 
-   "print": 1, 
-   "read": 1, 
-   "report": 1, 
-   "role": "System Manager", 
-   "set_user_permissions": 0, 
-   "share": 1, 
-   "submit": 0, 
+   "create": 1,
+   "delete": 1,
+   "email": 1,
+   "print": 1,
+   "read": 1,
+   "report": 1,
+   "role": "System Manager",
+   "share": 1,
    "write": 1
-  }, 
+  },
   {
-   "amend": 0, 
-   "apply_user_permissions": 0, 
-   "cancel": 0, 
-   "create": 0, 
-   "delete": 0, 
-   "email": 0, 
-   "export": 0, 
-   "if_owner": 0, 
-   "import": 0, 
-   "permlevel": 0, 
-   "print": 0, 
-   "read": 1, 
-   "report": 0, 
-   "role": "All", 
-   "set_user_permissions": 0, 
-   "share": 0, 
-   "submit": 0, 
-   "write": 0
+   "read": 1,
+   "role": "Desk User"
   }
- ], 
- "quick_entry": 1, 
- "read_only": 0, 
- "read_only_onload": 0, 
- "search_fields": "print_heading", 
- "track_seen": 0
+ ],
+ "quick_entry": 1,
+ "search_fields": "print_heading",
+ "sort_field": "modified",
+ "sort_order": "DESC",
+ "states": []
 }
\ No newline at end of file
diff --git a/erpnext/setup/doctype/supplier_group/supplier_group.js b/erpnext/setup/doctype/supplier_group/supplier_group.js
index b2acfd7..3362929 100644
--- a/erpnext/setup/doctype/supplier_group/supplier_group.js
+++ b/erpnext/setup/doctype/supplier_group/supplier_group.js
@@ -30,6 +30,7 @@
 		frm.set_query('account', 'accounts', function (doc, cdt, cdn) {
 			return {
 				filters: {
+					'root_type': 'Liability',
 					'account_type': 'Payable',
 					'company': locals[cdt][cdn].company,
 					"is_group": 0
diff --git a/erpnext/setup/page/welcome_to_erpnext/welcome_to_erpnext.css b/erpnext/setup/page/welcome_to_erpnext/welcome_to_erpnext.css
deleted file mode 100644
index 1fbb459..0000000
--- a/erpnext/setup/page/welcome_to_erpnext/welcome_to_erpnext.css
+++ /dev/null
@@ -1,13 +0,0 @@
-#page-welcome-to-erpnext ul li {
-	margin: 7px 0px;
-}
-
-#page-welcome-to-erpnext .video-placeholder-image {
-	width: 100%;
-	cursor: pointer;
-}
-
-#page-welcome-to-erpnext .youtube-icon {
-	width: 10%;
-	cursor: pointer;
-}
diff --git a/erpnext/setup/page/welcome_to_erpnext/welcome_to_erpnext.html b/erpnext/setup/page/welcome_to_erpnext/welcome_to_erpnext.html
deleted file mode 100644
index 7166ba3..0000000
--- a/erpnext/setup/page/welcome_to_erpnext/welcome_to_erpnext.html
+++ /dev/null
@@ -1,30 +0,0 @@
-<div class="container welcome-to-erpnext text-center" style="padding: 30px 0px;">
-	<div class="row">
-		<div class="col-md-8 col-md-push-2 col-sm-12">
-			<h1>{%= __("Welcome to ERPNext") %}</h1>
-			<p class="text-muted">
-				{%= __("To get the best out of ERPNext, we recommend that you take some time and watch these help videos.") %}
-				<br><br>
-			</p>
-
-			<div class="embed-responsive embed-responsive-16by9">
-				<div class="video-placeholder embed-responsive-item">
-					<img class="video-placeholder-image"
-						src="/assets/erpnext/images/erpnext-video-placeholder.jpg">
-					<img class="centered youtube-icon"
-						src="/assets/erpnext/images/YouTube-icon-full_color.png">
-				</div>
-			</div>
-
-			<br>
-			<hr>
-			<h3>{%= __("Next Steps") %}</h3>
-			<ul class="list-unstyled">
-				<li><a class="text-muted" href="#">{%= __("Go to the Desktop and start using ERPNext") %}</a></li>
-				<li><a class="text-muted" href="https://erpnext.com/docs/user" target="_blank">{%= __("Read the ERPNext Manual") %}</a></li>
-				<li><a class="text-muted" href="https://discuss.erpnext.com" target="_blank">{%= __("Community Forum") %}</a></li>
-			</ul>
-
-		</div>
-	</div>
-</div>
diff --git a/erpnext/setup/page/welcome_to_erpnext/welcome_to_erpnext.js b/erpnext/setup/page/welcome_to_erpnext/welcome_to_erpnext.js
deleted file mode 100644
index f072b8d..0000000
--- a/erpnext/setup/page/welcome_to_erpnext/welcome_to_erpnext.js
+++ /dev/null
@@ -1,20 +0,0 @@
-frappe.pages['welcome-to-erpnext'].on_page_load = function(wrapper) {
-	var parent = $('<div class="welcome-to-erpnext"></div>').appendTo(wrapper);
-
-	parent.html(frappe.render_template("welcome_to_erpnext", {}));
-
-	parent.find(".video-placeholder").on("click", function() {
-		window.erpnext_welcome_video_started = true;
-		parent.find(".video-placeholder").addClass("hidden");
-		parent.find(".embed-responsive").append('<iframe class="embed-responsive-item video-playlist" src="https://www.youtube.com/embed/videoseries?list=PL3lFfCEoMxvxDHtYyQFJeUYkWzQpXwFM9&color=white&autoplay=1&enablejsapi=1" allowfullscreen></iframe>')
-	});
-
-	// pause video on page change
-	$(document).on("page-change", function() {
-		if (window.erpnext_welcome_video_started && parent) {
-			parent.find(".video-playlist").each(function() {
-				this.contentWindow.postMessage('{"event":"command","func":"' + 'pauseVideo' + '","args":""}', '*');
-			});
-		}
-	});
-}
diff --git a/erpnext/setup/page/welcome_to_erpnext/welcome_to_erpnext.json b/erpnext/setup/page/welcome_to_erpnext/welcome_to_erpnext.json
deleted file mode 100644
index 0f532aa..0000000
--- a/erpnext/setup/page/welcome_to_erpnext/welcome_to_erpnext.json
+++ /dev/null
@@ -1,17 +0,0 @@
-{
- "content": null, 
- "creation": "2015-10-28 16:27:02.197707", 
- "docstatus": 0, 
- "doctype": "Page", 
- "modified": "2015-10-28 16:27:02.197707", 
- "modified_by": "Administrator", 
- "module": "Setup", 
- "name": "welcome-to-erpnext", 
- "owner": "Administrator", 
- "page_name": "welcome-to-erpnext", 
- "roles": [], 
- "script": null, 
- "standard": "Yes", 
- "style": null, 
- "title": "Welcome to ERPNext"
-}
\ No newline at end of file
diff --git a/erpnext/setup/setup_wizard/data/country_wise_tax.json b/erpnext/setup/setup_wizard/data/country_wise_tax.json
index 3532d6b..a746ebe 100644
--- a/erpnext/setup/setup_wizard/data/country_wise_tax.json
+++ b/erpnext/setup/setup_wizard/data/country_wise_tax.json
@@ -157,9 +157,14 @@
 	},
 
 	"Botswana": {
-		"Botswana Tax": {
+		"Botswana Tax 14%": {
 			"account_name": "VAT",
-			"tax_rate": 12.00
+			"tax_rate": 14.00
+		},
+		"Botswana Tax 12%": {
+			"account_name": "VAT",
+			"tax_rate": 12.00,
+			"default": 1
 		}
 	},
 
diff --git a/erpnext/stock/dashboard/item_dashboard.py b/erpnext/stock/dashboard/item_dashboard.py
index 8fbb56c..e638268 100644
--- a/erpnext/stock/dashboard/item_dashboard.py
+++ b/erpnext/stock/dashboard/item_dashboard.py
@@ -2,6 +2,10 @@
 from frappe.model.db_query import DatabaseQuery
 from frappe.utils import cint, flt
 
+from erpnext.stock.doctype.stock_reservation_entry.stock_reservation_entry import (
+	get_sre_reserved_qty_for_items_and_warehouses as get_reserved_stock_details,
+)
+
 
 @frappe.whitelist()
 def get_data(
@@ -57,6 +61,10 @@
 		limit_page_length=21,
 	)
 
+	item_code_list = [item_code] if item_code else [i.item_code for i in items]
+	warehouse_list = [warehouse] if warehouse else [i.warehouse for i in items]
+
+	sre_reserved_stock_details = get_reserved_stock_details(item_code_list, warehouse_list)
 	precision = cint(frappe.db.get_single_value("System Settings", "float_precision"))
 
 	for item in items:
@@ -70,6 +78,8 @@
 				"reserved_qty_for_production": flt(item.reserved_qty_for_production, precision),
 				"reserved_qty_for_sub_contract": flt(item.reserved_qty_for_sub_contract, precision),
 				"actual_qty": flt(item.actual_qty, precision),
+				"reserved_stock": flt(sre_reserved_stock_details.get((item.item_code, item.warehouse))),
 			}
 		)
+
 	return items
diff --git a/erpnext/stock/dashboard/item_dashboard_list.html b/erpnext/stock/dashboard/item_dashboard_list.html
index 0c10be4..3b26191 100644
--- a/erpnext/stock/dashboard/item_dashboard_list.html
+++ b/erpnext/stock/dashboard/item_dashboard_list.html
@@ -12,7 +12,10 @@
 					</a>
 				{% endif %}
 			</div>
-			<div class="col-sm-4">
+			<div class="col-sm-1" style="margin-top: 8px;" title="{{ __("Reserved Stock") }}">
+				<a data-name="{{ d.reserved_stock }}">{{ d.reserved_stock }}</a>
+			</div>
+			<div class="col-sm-3">
 				<span class="inline-graph">
 					<span class="inline-graph-half" title="{{ __("Reserved Qty") }}">
 						<span class="inline-graph-count">{{ d.total_reserved }}</span>
diff --git a/erpnext/stock/doctype/batch/batch.js b/erpnext/stock/doctype/batch/batch.js
index 3b07e4e..7bf7a1f 100644
--- a/erpnext/stock/doctype/batch/batch.js
+++ b/erpnext/stock/doctype/batch/batch.js
@@ -41,7 +41,7 @@
 		if(!frm.is_new()) {
 			frappe.call({
 				method: 'erpnext.stock.doctype.batch.batch.get_batch_qty',
-				args: {batch_no: frm.doc.name},
+				args: {batch_no: frm.doc.name, item_code: frm.doc.item},
 				callback: (r) => {
 					if(!r.message) {
 						return;
diff --git a/erpnext/stock/doctype/delivery_note/delivery_note.js b/erpnext/stock/doctype/delivery_note/delivery_note.js
index 7ef1c9b..ec68549 100644
--- a/erpnext/stock/doctype/delivery_note/delivery_note.js
+++ b/erpnext/stock/doctype/delivery_note/delivery_note.js
@@ -150,6 +150,9 @@
 						}
 						erpnext.utils.map_current_doc({
 							method: "erpnext.selling.doctype.sales_order.sales_order.make_delivery_note",
+							args: {
+								for_reserved_stock: 1
+							},
 							source_doctype: "Sales Order",
 							target: me.frm,
 							setters: {
diff --git a/erpnext/stock/doctype/delivery_note/delivery_note.json b/erpnext/stock/doctype/delivery_note/delivery_note.json
index 6a9e241..e0d4919 100644
--- a/erpnext/stock/doctype/delivery_note/delivery_note.json
+++ b/erpnext/stock/doctype/delivery_note/delivery_note.json
@@ -1253,6 +1253,7 @@
    "depends_on": "eval: doc.is_internal_customer",
    "fieldname": "set_target_warehouse",
    "fieldtype": "Link",
+   "ignore_user_permissions": 1,
    "in_standard_filter": 1,
    "label": "Set Target Warehouse",
    "no_copy": 1,
@@ -1400,7 +1401,7 @@
  "idx": 146,
  "is_submittable": 1,
  "links": [],
- "modified": "2023-06-16 14:58:55.066602",
+ "modified": "2023-09-04 14:15:28.363184",
  "modified_by": "Administrator",
  "module": "Stock",
  "name": "Delivery Note",
diff --git a/erpnext/stock/doctype/delivery_note/delivery_note.py b/erpnext/stock/doctype/delivery_note/delivery_note.py
index ea20a26..190575e 100644
--- a/erpnext/stock/doctype/delivery_note/delivery_note.py
+++ b/erpnext/stock/doctype/delivery_note/delivery_note.py
@@ -279,6 +279,8 @@
 		self.update_prevdoc_status()
 		self.update_billing_status()
 
+		self.update_stock_reservation_entries()
+
 		# Updating stock ledger should always be called after updating prevdoc status,
 		# because updating reserved qty in bin depends upon updated delivered qty in SO
 		self.update_stock_ledger()
@@ -297,55 +299,141 @@
 	def update_stock_reservation_entries(self) -> None:
 		"""Updates Delivered Qty in Stock Reservation Entries."""
 
-		# Don't update Delivered Qty on Return or Cancellation.
-		if self.is_return or self._action == "cancel":
+		# Don't update Delivered Qty on Return.
+		if self.is_return:
 			return
 
-		for item in self.get("items"):
-			# Skip if `Sales Order` or `Sales Order Item` reference is not set.
-			if not item.against_sales_order or not item.so_detail:
-				continue
+		if self._action == "submit":
+			for item in self.get("items"):
+				# Skip if `Sales Order` or `Sales Order Item` reference is not set.
+				if not item.against_sales_order or not item.so_detail:
+					continue
 
-			sre_list = frappe.db.get_all(
-				"Stock Reservation Entry",
-				{
-					"docstatus": 1,
-					"voucher_type": "Sales Order",
-					"voucher_no": item.against_sales_order,
-					"voucher_detail_no": item.so_detail,
-					"warehouse": item.warehouse,
-					"status": ["not in", ["Delivered", "Cancelled"]],
-				},
-				order_by="creation",
-			)
+				sre_list = frappe.db.get_all(
+					"Stock Reservation Entry",
+					{
+						"docstatus": 1,
+						"voucher_type": "Sales Order",
+						"voucher_no": item.against_sales_order,
+						"voucher_detail_no": item.so_detail,
+						"warehouse": item.warehouse,
+						"status": ["not in", ["Delivered", "Cancelled"]],
+					},
+					order_by="creation",
+				)
 
-			# Skip if no Stock Reservation Entries.
-			if not sre_list:
-				continue
+				# Skip if no Stock Reservation Entries.
+				if not sre_list:
+					continue
 
-			available_qty_to_deliver = item.stock_qty
-			for sre in sre_list:
-				if available_qty_to_deliver <= 0:
-					break
+				qty_to_deliver = item.stock_qty
+				for sre in sre_list:
+					if qty_to_deliver <= 0:
+						break
 
-				sre_doc = frappe.get_doc("Stock Reservation Entry", sre)
+					sre_doc = frappe.get_doc("Stock Reservation Entry", sre)
 
-				# `Delivered Qty` should be less than or equal to `Reserved Qty`.
-				qty_to_be_deliver = min(sre_doc.reserved_qty - sre_doc.delivered_qty, available_qty_to_deliver)
+					qty_can_be_deliver = 0
+					if sre_doc.reservation_based_on == "Serial and Batch":
+						sbb = frappe.get_doc("Serial and Batch Bundle", item.serial_and_batch_bundle)
+						if sre_doc.has_serial_no:
+							delivered_serial_nos = [d.serial_no for d in sbb.entries]
+							for entry in sre_doc.sb_entries:
+								if entry.serial_no in delivered_serial_nos:
+									entry.delivered_qty = 1  # Qty will always be 0 or 1 for Serial No.
+									entry.db_update()
+									qty_can_be_deliver += 1
+									delivered_serial_nos.remove(entry.serial_no)
+						else:
+							delivered_batch_qty = {d.batch_no: -1 * d.qty for d in sbb.entries}
+							for entry in sre_doc.sb_entries:
+								if entry.batch_no in delivered_batch_qty:
+									delivered_qty = min(
+										(entry.qty - entry.delivered_qty), delivered_batch_qty[entry.batch_no]
+									)
+									entry.delivered_qty += delivered_qty
+									entry.db_update()
+									qty_can_be_deliver += delivered_qty
+									delivered_batch_qty[entry.batch_no] -= delivered_qty
+					else:
+						# `Delivered Qty` should be less than or equal to `Reserved Qty`.
+						qty_can_be_deliver = min((sre_doc.reserved_qty - sre_doc.delivered_qty), qty_to_deliver)
 
-				sre_doc.delivered_qty += qty_to_be_deliver
-				sre_doc.db_update()
+					sre_doc.delivered_qty += qty_can_be_deliver
+					sre_doc.db_update()
 
-				# Update Stock Reservation Entry `Status` based on `Delivered Qty`.
-				sre_doc.update_status()
+					# Update Stock Reservation Entry `Status` based on `Delivered Qty`.
+					sre_doc.update_status()
 
-				available_qty_to_deliver -= qty_to_be_deliver
+					qty_to_deliver -= qty_can_be_deliver
+
+		if self._action == "cancel":
+			for item in self.get("items"):
+				# Skip if `Sales Order` or `Sales Order Item` reference is not set.
+				if not item.against_sales_order or not item.so_detail:
+					continue
+
+				sre_list = frappe.db.get_all(
+					"Stock Reservation Entry",
+					{
+						"docstatus": 1,
+						"voucher_type": "Sales Order",
+						"voucher_no": item.against_sales_order,
+						"voucher_detail_no": item.so_detail,
+						"warehouse": item.warehouse,
+						"status": ["in", ["Partially Delivered", "Delivered"]],
+					},
+					order_by="creation",
+				)
+
+				# Skip if no Stock Reservation Entries.
+				if not sre_list:
+					continue
+
+				qty_to_undelivered = item.stock_qty
+				for sre in sre_list:
+					if qty_to_undelivered <= 0:
+						break
+
+					sre_doc = frappe.get_doc("Stock Reservation Entry", sre)
+
+					qty_can_be_undelivered = 0
+					if sre_doc.reservation_based_on == "Serial and Batch":
+						sbb = frappe.get_doc("Serial and Batch Bundle", item.serial_and_batch_bundle)
+						if sre_doc.has_serial_no:
+							serial_nos_to_undelivered = [d.serial_no for d in sbb.entries]
+							for entry in sre_doc.sb_entries:
+								if entry.serial_no in serial_nos_to_undelivered:
+									entry.delivered_qty = 0  # Qty will always be 0 or 1 for Serial No.
+									entry.db_update()
+									qty_can_be_undelivered += 1
+									serial_nos_to_undelivered.remove(entry.serial_no)
+						else:
+							batch_qty_to_undelivered = {d.batch_no: -1 * d.qty for d in sbb.entries}
+							for entry in sre_doc.sb_entries:
+								if entry.batch_no in batch_qty_to_undelivered:
+									undelivered_qty = min(entry.delivered_qty, batch_qty_to_undelivered[entry.batch_no])
+									entry.delivered_qty -= undelivered_qty
+									entry.db_update()
+									qty_can_be_undelivered += undelivered_qty
+									batch_qty_to_undelivered[entry.batch_no] -= undelivered_qty
+					else:
+						# `Qty to Undelivered` should be less than or equal to `Delivered Qty`.
+						qty_can_be_undelivered = min(sre_doc.delivered_qty, qty_to_undelivered)
+
+					sre_doc.delivered_qty -= qty_can_be_undelivered
+					sre_doc.db_update()
+
+					# Update Stock Reservation Entry `Status` based on `Delivered Qty`.
+					sre_doc.update_status()
+
+					qty_to_undelivered -= qty_can_be_undelivered
 
 	def validate_against_stock_reservation_entries(self):
 		"""Validates if Stock Reservation Entries are available for the Sales Order Item reference."""
 
 		from erpnext.stock.doctype.stock_reservation_entry.stock_reservation_entry import (
-			get_sre_reserved_qty_details_for_voucher_detail_no,
+			get_sre_reserved_warehouses_for_voucher,
 		)
 
 		# Don't validate if Return
@@ -357,26 +445,30 @@
 			if not item.against_sales_order or not item.so_detail:
 				continue
 
-			sre_data = get_sre_reserved_qty_details_for_voucher_detail_no(
+			reserved_warehouses = get_sre_reserved_warehouses_for_voucher(
 				"Sales Order", item.against_sales_order, item.so_detail
 			)
 
 			# Skip if stock is not reserved.
-			if not sre_data:
+			if not reserved_warehouses:
 				continue
 
 			# Set `Warehouse` from SRE if not set.
 			if not item.warehouse:
-				item.warehouse = sre_data[0]
+				item.warehouse = reserved_warehouses[0]
 			else:
-				# Throw if `Warehouse` is different from SRE.
-				if item.warehouse != sre_data[0]:
-					frappe.throw(
-						_("Row #{0}: Stock is reserved for Item {1} in Warehouse {2}.").format(
-							item.idx, frappe.bold(item.item_code), frappe.bold(sre_data[0])
+				# Throw if `Warehouse` not in Reserved Warehouses.
+				if item.warehouse not in reserved_warehouses:
+					msg = _("Row #{0}: Stock is reserved for item {1} in warehouse {2}.").format(
+						item.idx,
+						frappe.bold(item.item_code),
+						frappe.bold(reserved_warehouses[0])
+						if len(reserved_warehouses) == 1
+						else _("{0} and {1}").format(
+							frappe.bold(", ".join(reserved_warehouses[:-1])), frappe.bold(reserved_warehouses[-1])
 						),
-						title=_("Stock Reservation Warehouse Mismatch"),
 					)
+					frappe.throw(msg, title=_("Stock Reservation Warehouse Mismatch"))
 
 	def check_credit_limit(self):
 		from erpnext.selling.doctype.customer.customer import check_credit_limit
diff --git a/erpnext/stock/doctype/delivery_note/delivery_note_dashboard.py b/erpnext/stock/doctype/delivery_note/delivery_note_dashboard.py
index e66c233..d4a574d 100644
--- a/erpnext/stock/doctype/delivery_note/delivery_note_dashboard.py
+++ b/erpnext/stock/doctype/delivery_note/delivery_note_dashboard.py
@@ -11,10 +11,12 @@
 		},
 		"internal_links": {
 			"Sales Order": ["items", "against_sales_order"],
-			"Sales Invoice": ["items", "against_sales_invoice"],
 			"Material Request": ["items", "material_request"],
 			"Purchase Order": ["items", "purchase_order"],
 		},
+		"internal_and_external_links": {
+			"Sales Invoice": ["items", "against_sales_invoice"],
+		},
 		"transactions": [
 			{"label": _("Related"), "items": ["Sales Invoice", "Packing Slip", "Delivery Trip"]},
 			{"label": _("Reference"), "items": ["Sales Order", "Shipment", "Quality Inspection"]},
diff --git a/erpnext/stock/doctype/delivery_note_item/delivery_note_item.json b/erpnext/stock/doctype/delivery_note_item/delivery_note_item.json
index d3236ba..612d674 100644
--- a/erpnext/stock/doctype/delivery_note_item/delivery_note_item.json
+++ b/erpnext/stock/doctype/delivery_note_item/delivery_note_item.json
@@ -165,7 +165,6 @@
    "oldfieldname": "description",
    "oldfieldtype": "Small Text",
    "print_width": "300px",
-   "reqd": 1,
    "width": "300px"
   },
   {
@@ -903,4 +902,4 @@
  "sort_field": "modified",
  "sort_order": "DESC",
  "states": []
-}
\ No newline at end of file
+}
diff --git a/erpnext/stock/doctype/item/item.js b/erpnext/stock/doctype/item/item.js
index 31a3ecb..4ae9bf5 100644
--- a/erpnext/stock/doctype/item/item.js
+++ b/erpnext/stock/doctype/item/item.js
@@ -3,6 +3,9 @@
 
 frappe.provide("erpnext.item");
 
+const SALES_DOCTYPES = ['Quotation', 'Sales Order', 'Delivery Note', 'Sales Invoice'];
+const PURCHASE_DOCTYPES = ['Purchase Order', 'Purchase Receipt', 'Purchase Invoice'];
+
 frappe.ui.form.on("Item", {
 	setup: function(frm) {
 		frm.add_fetch('attribute', 'numeric_values', 'numeric_values');
@@ -347,18 +350,20 @@
 			}
 		}
 
-		frm.fields_dict['deferred_revenue_account'].get_query = function() {
+		frm.fields_dict["item_defaults"].grid.get_field("deferred_revenue_account").get_query = function(doc, cdt, cdn) {
 			return {
 				filters: {
+					"company": locals[cdt][cdn].company,
 					'root_type': 'Liability',
 					"is_group": 0
 				}
 			}
 		}
 
-		frm.fields_dict['deferred_expense_account'].get_query = function() {
+		frm.fields_dict["item_defaults"].grid.get_field("deferred_expense_account").get_query = function(doc, cdt, cdn) {
 			return {
 				filters: {
+					"company": locals[cdt][cdn].company,
 					'root_type': 'Asset',
 					"is_group": 0
 				}
@@ -888,7 +893,13 @@
 		let new_child_doc = frappe.model.add_child(new_doc, child_doctype, parentfield);
 		new_child_doc.item_code = frm.doc.name;
 		new_child_doc.item_name = frm.doc.item_name;
-		new_child_doc.uom = frm.doc.stock_uom;
+		if (in_list(SALES_DOCTYPES, doctype) && frm.doc.sales_uom) {
+			new_child_doc.uom = frm.doc.sales_uom;
+		} else if (in_list(PURCHASE_DOCTYPES, doctype) && frm.doc.purchase_uom) {
+			new_child_doc.uom = frm.doc.purchase_uom;
+		} else {
+			new_child_doc.uom = frm.doc.stock_uom;
+		}
 		new_child_doc.description = frm.doc.description;
 		if (!new_child_doc.qty) {
 			new_child_doc.qty = 1.0;
diff --git a/erpnext/stock/doctype/item/item.json b/erpnext/stock/doctype/item/item.json
index 87c2a7e..1bcddfa 100644
--- a/erpnext/stock/doctype/item/item.json
+++ b/erpnext/stock/doctype/item/item.json
@@ -69,6 +69,13 @@
   "variant_based_on",
   "attributes",
   "accounting",
+  "deferred_accounting_section",
+  "enable_deferred_expense",
+  "no_of_months_exp",
+  "column_break_9s9o",
+  "enable_deferred_revenue",
+  "no_of_months",
+  "section_break_avcp",
   "item_defaults",
   "purchasing_tab",
   "purchase_uom",
@@ -84,10 +91,6 @@
   "delivered_by_supplier",
   "column_break2",
   "supplier_items",
-  "deferred_expense_section",
-  "enable_deferred_expense",
-  "deferred_expense_account",
-  "no_of_months_exp",
   "foreign_trade_details",
   "country_of_origin",
   "column_break_59",
@@ -98,10 +101,6 @@
   "is_sales_item",
   "column_break3",
   "max_discount",
-  "deferred_revenue",
-  "enable_deferred_revenue",
-  "deferred_revenue_account",
-  "no_of_months",
   "customer_details",
   "customer_items",
   "item_tax_section_break",
@@ -658,20 +657,6 @@
    "oldfieldtype": "Currency"
   },
   {
-   "collapsible": 1,
-   "fieldname": "deferred_revenue",
-   "fieldtype": "Section Break",
-   "label": "Deferred Revenue"
-  },
-  {
-   "depends_on": "enable_deferred_revenue",
-   "fieldname": "deferred_revenue_account",
-   "fieldtype": "Link",
-   "ignore_user_permissions": 1,
-   "label": "Deferred Revenue Account",
-   "options": "Account"
-  },
-  {
    "default": "0",
    "fieldname": "enable_deferred_revenue",
    "fieldtype": "Check",
@@ -681,21 +666,7 @@
    "depends_on": "enable_deferred_revenue",
    "fieldname": "no_of_months",
    "fieldtype": "Int",
-   "label": "No of Months"
-  },
-  {
-   "collapsible": 1,
-   "fieldname": "deferred_expense_section",
-   "fieldtype": "Section Break",
-   "label": "Deferred Expense"
-  },
-  {
-   "depends_on": "enable_deferred_expense",
-   "fieldname": "deferred_expense_account",
-   "fieldtype": "Link",
-   "ignore_user_permissions": 1,
-   "label": "Deferred Expense Account",
-   "options": "Account"
+   "label": "No of Months (Revenue)"
   },
   {
    "default": "0",
@@ -904,6 +875,20 @@
    "fieldname": "accounting",
    "fieldtype": "Tab Break",
    "label": "Accounting"
+  },
+  {
+   "fieldname": "column_break_9s9o",
+   "fieldtype": "Column Break"
+  },
+  {
+   "fieldname": "section_break_avcp",
+   "fieldtype": "Section Break"
+  },
+  {
+   "collapsible": 1,
+   "fieldname": "deferred_accounting_section",
+   "fieldtype": "Section Break",
+   "label": "Deferred Accounting"
   }
  ],
  "icon": "fa fa-tag",
@@ -912,7 +897,7 @@
  "index_web_pages_for_search": 1,
  "links": [],
  "make_attachments_public": 1,
- "modified": "2023-07-14 17:18:18.658942",
+ "modified": "2023-09-11 13:46:32.688051",
  "modified_by": "Administrator",
  "module": "Stock",
  "name": "Item",
@@ -971,7 +956,7 @@
    "export": 1,
    "print": 1,
    "report": 1,
-   "role": "All",
+   "role": "Desk User",
    "select": 1,
    "share": 1
   }
diff --git a/erpnext/stock/doctype/item_default/item_default.json b/erpnext/stock/doctype/item_default/item_default.json
index 042d398..2895661 100644
--- a/erpnext/stock/doctype/item_default/item_default.json
+++ b/erpnext/stock/doctype/item_default/item_default.json
@@ -19,7 +19,11 @@
   "selling_defaults",
   "selling_cost_center",
   "column_break_12",
-  "income_account"
+  "income_account",
+  "deferred_accounting_defaults_section",
+  "deferred_expense_account",
+  "column_break_kwad",
+  "deferred_revenue_account"
  ],
  "fields": [
   {
@@ -108,11 +112,34 @@
    "fieldtype": "Link",
    "label": "Default Provisional Account",
    "options": "Account"
+  },
+  {
+   "fieldname": "deferred_accounting_defaults_section",
+   "fieldtype": "Section Break",
+   "label": "Deferred Accounting Defaults"
+  },
+  {
+   "depends_on": "eval: parent.enable_deferred_expense",
+   "fieldname": "deferred_expense_account",
+   "fieldtype": "Link",
+   "label": "Deferred Expense Account",
+   "options": "Account"
+  },
+  {
+   "depends_on": "eval: parent.enable_deferred_revenue",
+   "fieldname": "deferred_revenue_account",
+   "fieldtype": "Link",
+   "label": "Deferred Revenue Account",
+   "options": "Account"
+  },
+  {
+   "fieldname": "column_break_kwad",
+   "fieldtype": "Column Break"
   }
  ],
  "istable": 1,
  "links": [],
- "modified": "2022-04-10 20:18:54.148195",
+ "modified": "2023-09-04 12:33:14.607267",
  "modified_by": "Administrator",
  "module": "Stock",
  "name": "Item Default",
diff --git a/erpnext/stock/doctype/landed_cost_voucher/landed_cost_voucher.py b/erpnext/stock/doctype/landed_cost_voucher/landed_cost_voucher.py
index 111a0861..7f0dc2d 100644
--- a/erpnext/stock/doctype/landed_cost_voucher/landed_cost_voucher.py
+++ b/erpnext/stock/doctype/landed_cost_voucher/landed_cost_voucher.py
@@ -6,6 +6,7 @@
 from frappe import _
 from frappe.model.document import Document
 from frappe.model.meta import get_field_precision
+from frappe.query_builder.custom import ConstantColumn
 from frappe.utils import flt
 
 import erpnext
@@ -19,19 +20,7 @@
 		self.set("items", [])
 		for pr in self.get("purchase_receipts"):
 			if pr.receipt_document_type and pr.receipt_document:
-				pr_items = frappe.db.sql(
-					"""select pr_item.item_code, pr_item.description,
-					pr_item.qty, pr_item.base_rate, pr_item.base_amount, pr_item.name,
-					pr_item.cost_center, pr_item.is_fixed_asset
-					from `tab{doctype} Item` pr_item where parent = %s
-					and exists(select name from tabItem
-						where name = pr_item.item_code and (is_stock_item = 1 or is_fixed_asset=1))
-					""".format(
-						doctype=pr.receipt_document_type
-					),
-					pr.receipt_document,
-					as_dict=True,
-				)
+				pr_items = get_pr_items(pr)
 
 				for d in pr_items:
 					item = self.append("items")
@@ -247,3 +236,30 @@
 						),
 						tuple([item.valuation_rate] + serial_nos),
 					)
+
+
+def get_pr_items(purchase_receipt):
+	item = frappe.qb.DocType("Item")
+	pr_item = frappe.qb.DocType(purchase_receipt.receipt_document_type + " Item")
+	return (
+		frappe.qb.from_(pr_item)
+		.inner_join(item)
+		.on(item.name == pr_item.item_code)
+		.select(
+			pr_item.item_code,
+			pr_item.description,
+			pr_item.qty,
+			pr_item.base_rate,
+			pr_item.base_amount,
+			pr_item.name,
+			pr_item.cost_center,
+			pr_item.is_fixed_asset,
+			ConstantColumn(purchase_receipt.receipt_document_type).as_("receipt_document_type"),
+			ConstantColumn(purchase_receipt.receipt_document).as_("receipt_document"),
+		)
+		.where(
+			(pr_item.parent == purchase_receipt.receipt_document)
+			& ((item.is_stock_item == 1) | (item.is_fixed_asset == 1))
+		)
+		.run(as_dict=True)
+	)
diff --git a/erpnext/stock/doctype/material_request/material_request.js b/erpnext/stock/doctype/material_request/material_request.js
index 989bfd0..9673a70 100644
--- a/erpnext/stock/doctype/material_request/material_request.js
+++ b/erpnext/stock/doctype/material_request/material_request.js
@@ -102,6 +102,12 @@
 
 		if (frm.doc.docstatus == 1 && frm.doc.status != 'Stopped') {
 			let precision = frappe.defaults.get_default("float_precision");
+
+			if (flt(frm.doc.per_received, precision) < 100) {
+				frm.add_custom_button(__('Stop'),
+					() => frm.events.update_status(frm, 'Stopped'));
+			}
+
 			if (flt(frm.doc.per_ordered, precision) < 100) {
 				let add_create_pick_list_button = () => {
 					frm.add_custom_button(__('Pick List'),
@@ -148,11 +154,6 @@
 				}
 
 				frm.page.set_inner_btn_group_as_primary(__('Create'));
-
-				// stop
-				frm.add_custom_button(__('Stop'),
-					() => frm.events.update_status(frm, 'Stopped'));
-
 			}
 		}
 
@@ -218,7 +219,8 @@
 					plc_conversion_rate: 1,
 					rate: item.rate,
 					uom: item.uom,
-					conversion_factor: item.conversion_factor
+					conversion_factor: item.conversion_factor,
+					project: item.project,
 				},
 				overwrite_warehouse: overwrite_warehouse
 			},
diff --git a/erpnext/stock/doctype/material_request/material_request.json b/erpnext/stock/doctype/material_request/material_request.json
index ffec57c..25c765b 100644
--- a/erpnext/stock/doctype/material_request/material_request.json
+++ b/erpnext/stock/doctype/material_request/material_request.json
@@ -296,6 +296,7 @@
    "depends_on": "eval:doc.material_request_type == 'Material Transfer'",
    "fieldname": "set_from_warehouse",
    "fieldtype": "Link",
+   "ignore_user_permissions": 1,
    "label": "Set Source Warehouse",
    "options": "Warehouse"
   },
@@ -356,7 +357,7 @@
  "idx": 70,
  "is_submittable": 1,
  "links": [],
- "modified": "2023-07-25 17:19:31.662662",
+ "modified": "2023-09-15 12:07:24.789471",
  "modified_by": "Administrator",
  "module": "Stock",
  "name": "Material Request",
diff --git a/erpnext/stock/doctype/material_request/material_request.py b/erpnext/stock/doctype/material_request/material_request.py
index 9efae6a..a51028d 100644
--- a/erpnext/stock/doctype/material_request/material_request.py
+++ b/erpnext/stock/doctype/material_request/material_request.py
@@ -702,6 +702,7 @@
 				)
 
 				wo_order.set_work_order_operations()
+				wo_order.flags.ignore_mandatory = True
 				wo_order.save()
 
 				work_orders.append(wo_order.name)
diff --git a/erpnext/stock/doctype/material_request_item/material_request_item.json b/erpnext/stock/doctype/material_request_item/material_request_item.json
index 770dacd..c585d6c 100644
--- a/erpnext/stock/doctype/material_request_item/material_request_item.json
+++ b/erpnext/stock/doctype/material_request_item/material_request_item.json
@@ -104,7 +104,6 @@
    "oldfieldname": "description",
    "oldfieldtype": "Text",
    "print_width": "250px",
-   "reqd": 1,
    "width": "250px"
   },
   {
@@ -472,4 +471,4 @@
  "sort_order": "DESC",
  "states": [],
  "track_changes": 1
-}
\ No newline at end of file
+}
diff --git a/erpnext/stock/doctype/packed_item/packed_item.py b/erpnext/stock/doctype/packed_item/packed_item.py
index dbd8de4..a9e9ad1 100644
--- a/erpnext/stock/doctype/packed_item/packed_item.py
+++ b/erpnext/stock/doctype/packed_item/packed_item.py
@@ -207,6 +207,9 @@
 			"conversion_rate": doc.get("conversion_rate"),
 		}
 	)
+	if not row_data.get("transaction_date"):
+		row_data.update({"transaction_date": doc.get("transaction_date")})
+
 	rate = get_price_list_rate(row_data, item_doc).get("price_list_rate")
 
 	pi_row.rate = rate or item_data.get("valuation_rate") or 0.0
diff --git a/erpnext/stock/doctype/pick_list/pick_list.js b/erpnext/stock/doctype/pick_list/pick_list.js
index 35c35a6..ae05b80 100644
--- a/erpnext/stock/doctype/pick_list/pick_list.js
+++ b/erpnext/stock/doctype/pick_list/pick_list.js
@@ -65,17 +65,6 @@
 				}
 			}
 		});
-
-		let sbb_field = frm.get_docfield('locations', 'serial_and_batch_bundle');
-		if (sbb_field) {
-			sbb_field.get_route_options_for_new_doc = (row) => {
-				return {
-					'item_code': row.doc.item_code,
-					'warehouse': row.doc.warehouse,
-					'voucher_type': frm.doc.doctype,
-				}
-			};
-		}
 	},
 	set_item_locations:(frm, save) => {
 		if (!(frm.doc.locations && frm.doc.locations.length)) {
@@ -115,6 +104,33 @@
 					frm.add_custom_button(__('Stock Entry'), () => frm.trigger('create_stock_entry'), __('Create'));
 				}
 			});
+
+			if (frm.doc.purpose === 'Delivery' && frm.doc.status === 'Open') {
+				if (frm.doc.__onload && frm.doc.__onload.has_unreserved_stock) {
+					frm.add_custom_button(__('Reserve'), () => frm.events.create_stock_reservation_entries(frm), __('Stock Reservation'));
+				}
+
+				if (frm.doc.__onload && frm.doc.__onload.has_reserved_stock) {
+					frm.add_custom_button(__('Unreserve'), () => {
+						frappe.confirm(
+							__('The reserved stock will be released. Are you certain you wish to proceed?'),
+							() => frm.events.cancel_stock_reservation_entries(frm)
+						)
+					}, __('Stock Reservation'));
+					frm.add_custom_button(__('Reserved Stock'), () => frm.events.show_reserved_stock(frm), __('Stock Reservation'));
+				}
+			}
+		}
+
+		let sbb_field = frm.get_docfield('locations', 'serial_and_batch_bundle');
+		if (sbb_field) {
+			sbb_field.get_route_options_for_new_doc = (row) => {
+				return {
+					'item_code': row.doc.item_code,
+					'warehouse': row.doc.warehouse,
+					'voucher_type': frm.doc.doctype,
+				}
+			};
 		}
 	},
 	work_order: (frm) => {
@@ -209,6 +225,49 @@
 		};
 		const barcode_scanner = new erpnext.utils.BarcodeScanner(opts);
 		barcode_scanner.process_scan();
+	},
+	create_stock_reservation_entries: (frm) => {
+		frappe.call({
+			doc: frm.doc,
+			method: "create_stock_reservation_entries",
+			args: {
+				notify: true
+			},
+			freeze: true,
+			freeze_message: __("Reserving Stock..."),
+			callback: (r) => {
+				frm.doc.__onload.has_unreserved_stock = false;
+				frm.reload_doc();
+			}
+		});
+	},
+	cancel_stock_reservation_entries: (frm) => {
+		frappe.call({
+			doc: frm.doc,
+			method: "cancel_stock_reservation_entries",
+			args: {
+				notify: true
+			},
+			freeze: true,
+			freeze_message: __('Unreserving Stock...'),
+			callback: (r) => {
+				frm.doc.__onload.has_reserved_stock = false;
+				frm.reload_doc();
+			}
+		});
+	},
+	show_reserved_stock(frm) {
+		// Get the latest modified date from the locations table.
+		var to_date = moment(new Date(Math.max(...frm.doc.locations.map(e => new Date(e.modified))))).format('YYYY-MM-DD');
+
+		frappe.route_options = {
+			company: frm.doc.company,
+			from_date: moment(frm.doc.creation).format('YYYY-MM-DD'),
+			to_date: to_date,
+			voucher_type: "Sales Order",
+			against_pick_list: frm.doc.name,
+		}
+		frappe.set_route("query-report", "Reserved Stock");
 	}
 });
 
diff --git a/erpnext/stock/doctype/pick_list/pick_list.py b/erpnext/stock/doctype/pick_list/pick_list.py
index 922f76c..2fcd102 100644
--- a/erpnext/stock/doctype/pick_list/pick_list.py
+++ b/erpnext/stock/doctype/pick_list/pick_list.py
@@ -29,6 +29,14 @@
 
 
 class PickList(Document):
+	def onload(self) -> None:
+		if frappe.get_cached_value("Stock Settings", None, "enable_stock_reservation"):
+			if self.has_unreserved_stock():
+				self.set_onload("has_unreserved_stock", True)
+
+		if self.has_reserved_stock():
+			self.set_onload("has_reserved_stock", True)
+
 	def validate(self):
 		self.validate_for_qty()
 
@@ -47,8 +55,28 @@
 				)
 
 	def before_submit(self):
+		self.validate_sales_order()
 		self.validate_picked_items()
 
+	def validate_sales_order(self):
+		"""Raises an exception if the `Sales Order` has reserved stock."""
+
+		if self.purpose != "Delivery":
+			return
+
+		so_list = set(location.sales_order for location in self.locations if location.sales_order)
+
+		if so_list:
+			for so in so_list:
+				so_doc = frappe.get_doc("Sales Order", so)
+				for item in so_doc.items:
+					if item.stock_reserved_qty > 0:
+						frappe.throw(
+							_(
+								"Cannot create a pick list for Sales Order {0} because it has reserved stock. Please unreserve the stock in order to create a pick list."
+							).format(frappe.bold(so))
+						)
+
 	def validate_picked_items(self):
 		for item in self.locations:
 			if self.scan_mode and item.picked_qty < item.stock_qty:
@@ -70,8 +98,19 @@
 		self.update_reference_qty()
 		self.update_sales_order_picking_status()
 
+	def on_update_after_submit(self) -> None:
+		if self.has_reserved_stock():
+			msg = _(
+				"The Pick List having Stock Reservation Entries cannot be updated. If you need to make changes, we recommend canceling the existing Stock Reservation Entries before updating the Pick List."
+			)
+			frappe.throw(msg)
+
 	def on_cancel(self):
-		self.ignore_linked_doctypes = "Serial and Batch Bundle"
+		self.ignore_linked_doctypes = [
+			"Serial and Batch Bundle",
+			"Stock Reservation Entry",
+			"Delivery Note",
+		]
 
 		self.update_status()
 		self.update_bundle_picked_qty()
@@ -186,6 +225,36 @@
 		for sales_order in sales_orders:
 			frappe.get_doc("Sales Order", sales_order, for_update=True).update_picking_status()
 
+	@frappe.whitelist()
+	def create_stock_reservation_entries(self, notify=True) -> None:
+		"""Creates Stock Reservation Entries for Sales Order Items against Pick List."""
+
+		from erpnext.stock.doctype.stock_reservation_entry.stock_reservation_entry import (
+			create_stock_reservation_entries_for_so_items,
+		)
+
+		so_details = {}
+		for location in self.locations:
+			if location.warehouse and location.sales_order and location.sales_order_item:
+				so_details.setdefault(location.sales_order, []).append(location)
+
+		if so_details:
+			for so, locations in so_details.items():
+				so_doc = frappe.get_doc("Sales Order", so)
+				create_stock_reservation_entries_for_so_items(
+					so=so_doc, items_details=locations, against_pick_list=True, notify=notify
+				)
+
+	@frappe.whitelist()
+	def cancel_stock_reservation_entries(self, notify=True) -> None:
+		"""Cancel Stock Reservation Entries for Sales Order Items created against Pick List."""
+
+		from erpnext.stock.doctype.stock_reservation_entry.stock_reservation_entry import (
+			cancel_stock_reservation_entries,
+		)
+
+		cancel_stock_reservation_entries(against_pick_list=self.name, notify=notify)
+
 	def validate_picked_qty(self, data):
 		over_delivery_receipt_allowance = 100 + flt(
 			frappe.db.get_single_value("Stock Settings", "over_delivery_receipt_allowance")
@@ -448,6 +517,26 @@
 				possible_bundles.append(0)
 		return int(flt(min(possible_bundles), precision or 6))
 
+	def has_unreserved_stock(self):
+		if self.purpose == "Delivery":
+			for location in self.locations:
+				if (
+					location.sales_order
+					and location.sales_order_item
+					and (flt(location.picked_qty) - flt(location.stock_reserved_qty)) > 0
+				):
+					return True
+
+		return False
+
+	def has_reserved_stock(self):
+		if self.purpose == "Delivery":
+			for location in self.locations:
+				if location.sales_order and location.sales_order_item and flt(location.stock_reserved_qty) > 0:
+					return True
+
+		return False
+
 
 def update_pick_list_status(pick_list):
 	if pick_list:
@@ -781,7 +870,8 @@
 	for customer in sales_dict:
 		for so in sales_dict[customer]:
 			delivery_note = None
-			delivery_note = create_delivery_note_from_sales_order(so, delivery_note, skip_item_mapping=True)
+			kwargs = {"skip_item_mapping": True}
+			delivery_note = create_delivery_note_from_sales_order(so, delivery_note, kwargs=kwargs)
 			break
 		if delivery_note:
 			# map all items of all sales orders of that customer
diff --git a/erpnext/stock/doctype/pick_list/pick_list_dashboard.py b/erpnext/stock/doctype/pick_list/pick_list_dashboard.py
index 7fbcbaf..0830fa2 100644
--- a/erpnext/stock/doctype/pick_list/pick_list_dashboard.py
+++ b/erpnext/stock/doctype/pick_list/pick_list_dashboard.py
@@ -1,10 +1,13 @@
 def get_data():
 	return {
 		"fieldname": "pick_list",
+		"non_standard_fieldnames": {
+			"Stock Reservation Entry": "against_pick_list",
+		},
 		"internal_links": {
 			"Sales Order": ["locations", "sales_order"],
 		},
 		"transactions": [
-			{"items": ["Stock Entry", "Sales Order", "Delivery Note"]},
+			{"items": ["Stock Entry", "Sales Order", "Delivery Note", "Stock Reservation Entry"]},
 		],
 	}
diff --git a/erpnext/stock/doctype/pick_list_item/pick_list_item.json b/erpnext/stock/doctype/pick_list_item/pick_list_item.json
index 2e56af3..e8e4afc 100644
--- a/erpnext/stock/doctype/pick_list_item/pick_list_item.json
+++ b/erpnext/stock/doctype/pick_list_item/pick_list_item.json
@@ -16,6 +16,7 @@
   "qty",
   "stock_qty",
   "picked_qty",
+  "stock_reserved_qty",
   "column_break_11",
   "uom",
   "conversion_factor",
@@ -46,7 +47,7 @@
    "fieldname": "picked_qty",
    "fieldtype": "Float",
    "in_list_view": 1,
-   "label": "Picked Qty"
+   "label": "Picked Qty (in Stock UOM)"
   },
   {
    "fieldname": "warehouse",
@@ -154,8 +155,7 @@
    "fieldtype": "Data",
    "hidden": 1,
    "label": "Sales Order Item",
-   "read_only": 1,
-   "search_index": 1
+   "read_only": 1
   },
   {
    "fieldname": "serial_no_and_batch_section",
@@ -207,6 +207,17 @@
    "fieldname": "pick_serial_and_batch",
    "fieldtype": "Button",
    "label": "Pick Serial / Batch No"
+  },
+  {
+   "default": "0",
+   "fieldname": "stock_reserved_qty",
+   "fieldtype": "Float",
+   "label": "Stock Reserved Qty (in Stock UOM)",
+   "no_copy": 1,
+   "non_negative": 1,
+   "print_hide": 1,
+   "read_only": 1,
+   "report_hide": 1
   }
  ],
  "istable": 1,
diff --git a/erpnext/stock/doctype/purchase_receipt/purchase_receipt.js b/erpnext/stock/doctype/purchase_receipt/purchase_receipt.js
index 2bb479b..6552cd7 100644
--- a/erpnext/stock/doctype/purchase_receipt/purchase_receipt.js
+++ b/erpnext/stock/doctype/purchase_receipt/purchase_receipt.js
@@ -37,6 +37,12 @@
 			}
 		});
 
+		frm.set_query("wip_composite_asset", "items", function() {
+			return {
+				filters: {'is_composite_asset': 1, 'docstatus': 0 }
+			}
+		});
+
 		frm.set_query("taxes_and_charges", function() {
 			return {
 				filters: {'company': frm.doc.company }
diff --git a/erpnext/stock/doctype/purchase_receipt/purchase_receipt.json b/erpnext/stock/doctype/purchase_receipt/purchase_receipt.json
index 912b908..c8a9e3e 100755
--- a/erpnext/stock/doctype/purchase_receipt/purchase_receipt.json
+++ b/erpnext/stock/doctype/purchase_receipt/purchase_receipt.json
@@ -464,6 +464,7 @@
    "depends_on": "eval:doc.is_subcontracted",
    "fieldname": "supplier_warehouse",
    "fieldtype": "Link",
+   "ignore_user_permissions": 1,
    "label": "Supplier Warehouse",
    "no_copy": 1,
    "oldfieldname": "supplier_warehouse",
@@ -1241,7 +1242,7 @@
  "idx": 261,
  "is_submittable": 1,
  "links": [],
- "modified": "2023-07-04 17:23:17.025390",
+ "modified": "2023-10-01 21:00:44.556816",
  "modified_by": "Administrator",
  "module": "Stock",
  "name": "Purchase Receipt",
diff --git a/erpnext/stock/doctype/purchase_receipt/purchase_receipt.py b/erpnext/stock/doctype/purchase_receipt/purchase_receipt.py
index 0b5dc05..6afa86e 100644
--- a/erpnext/stock/doctype/purchase_receipt/purchase_receipt.py
+++ b/erpnext/stock/doctype/purchase_receipt/purchase_receipt.py
@@ -470,27 +470,28 @@
 
 					# Amount added through landed-cos-voucher
 					if d.landed_cost_voucher_amount and landed_cost_entries:
-						for account, amount in landed_cost_entries[(d.item_code, d.name)].items():
-							account_currency = get_account_currency(account)
-							credit_amount = (
-								flt(amount["base_amount"])
-								if (amount["base_amount"] or account_currency != self.company_currency)
-								else flt(amount["amount"])
-							)
+						if (d.item_code, d.name) in landed_cost_entries:
+							for account, amount in landed_cost_entries[(d.item_code, d.name)].items():
+								account_currency = get_account_currency(account)
+								credit_amount = (
+									flt(amount["base_amount"])
+									if (amount["base_amount"] or account_currency != self.company_currency)
+									else flt(amount["amount"])
+								)
 
-							self.add_gl_entry(
-								gl_entries=gl_entries,
-								account=account,
-								cost_center=d.cost_center,
-								debit=0.0,
-								credit=credit_amount,
-								remarks=remarks,
-								against_account=warehouse_account_name,
-								credit_in_account_currency=flt(amount["amount"]),
-								account_currency=account_currency,
-								project=d.project,
-								item=d,
-							)
+								self.add_gl_entry(
+									gl_entries=gl_entries,
+									account=account,
+									cost_center=d.cost_center,
+									debit=0.0,
+									credit=credit_amount,
+									remarks=remarks,
+									against_account=warehouse_account_name,
+									credit_in_account_currency=flt(amount["amount"]),
+									account_currency=account_currency,
+									project=d.project,
+									item=d,
+								)
 
 					if d.rate_difference_with_purchase_invoice and stock_rbnb:
 						account_currency = get_account_currency(stock_rbnb)
@@ -602,7 +603,7 @@
 			account=provisional_account,
 			cost_center=item.cost_center,
 			debit=0.0,
-			credit=multiplication_factor * item.amount,
+			credit=multiplication_factor * item.base_amount,
 			remarks=remarks,
 			against_account=expense_account,
 			account_currency=credit_currency,
@@ -616,7 +617,7 @@
 			gl_entries=gl_entries,
 			account=expense_account,
 			cost_center=item.cost_center,
-			debit=multiplication_factor * item.amount,
+			debit=multiplication_factor * item.base_amount,
 			credit=0.0,
 			remarks=remarks,
 			against_account=provisional_account,
@@ -955,6 +956,10 @@
 
 		total_amount += total_billable_amount
 		total_billed_amount += flt(item.billed_amt)
+
+		if pr_doc.get("is_return") and not total_amount and total_billed_amount:
+			total_amount = total_billed_amount
+
 		if adjust_incoming_rate:
 			adjusted_amt = 0.0
 			if item.billed_amt and item.amount:
diff --git a/erpnext/stock/doctype/purchase_receipt/test_purchase_receipt.py b/erpnext/stock/doctype/purchase_receipt/test_purchase_receipt.py
index 6134bfa..a8ef5e8 100644
--- a/erpnext/stock/doctype/purchase_receipt/test_purchase_receipt.py
+++ b/erpnext/stock/doctype/purchase_receipt/test_purchase_receipt.py
@@ -2017,6 +2017,75 @@
 		ste7.reload()
 		self.assertEqual(ste7.items[0].valuation_rate, valuation_rate)
 
+	def test_purchase_receipt_provisional_accounting(self):
+		# Step - 1: Create Supplier with Default Currency as USD
+		from erpnext.buying.doctype.supplier.test_supplier import create_supplier
+
+		supplier = create_supplier(default_currency="USD")
+
+		# Step - 2: Setup Company for Provisional Accounting
+		from erpnext.accounts.doctype.account.test_account import create_account
+
+		provisional_account = create_account(
+			account_name="Provision Account",
+			parent_account="Current Liabilities - _TC",
+			company="_Test Company",
+		)
+		company = frappe.get_doc("Company", "_Test Company")
+		company.enable_provisional_accounting_for_non_stock_items = 1
+		company.default_provisional_account = provisional_account
+		company.save()
+
+		# Step - 3: Create Non-Stock Item
+		item = make_item(properties={"is_stock_item": 0})
+
+		# Step - 4: Create Purchase Receipt
+		pr = make_purchase_receipt(
+			qty=2,
+			item_code=item.name,
+			company=company.name,
+			supplier=supplier.name,
+			currency=supplier.default_currency,
+		)
+
+		# Test - 1: Total and Base Total should not be the same as the currency is different
+		self.assertNotEqual(flt(pr.total, 2), flt(pr.base_total, 2))
+		self.assertEqual(flt(pr.total * pr.conversion_rate, 2), flt(pr.base_total, 2))
+
+		# Test - 2: Sum of Debit or Credit should be equal to Purchase Receipt Base Total
+		amount = frappe.db.get_value("GL Entry", {"docstatus": 1, "voucher_no": pr.name}, ["sum(debit)"])
+		expected_amount = pr.base_total
+		self.assertEqual(amount, expected_amount)
+
+		company.enable_provisional_accounting_for_non_stock_items = 0
+		company.save()
+
+	def test_purchase_return_status_with_debit_note(self):
+		pr = make_purchase_receipt(rejected_qty=10, received_qty=10, rate=100, do_not_save=1)
+		pr.items[0].qty = 0
+		pr.items[0].stock_qty = 0
+		pr.submit()
+
+		return_pr = make_purchase_receipt(
+			is_return=1,
+			return_against=pr.name,
+			qty=0,
+			rejected_qty=10 * -1,
+			received_qty=10 * -1,
+			do_not_save=1,
+		)
+		return_pr.items[0].qty = 0.0
+		return_pr.items[0].stock_qty = 0.0
+		return_pr.submit()
+
+		self.assertEqual(return_pr.status, "To Bill")
+
+		pi = make_purchase_invoice(return_pr.name)
+		pi.submit()
+
+		return_pr.reload()
+		self.assertEqual(return_pr.status, "Completed")
+
 
 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/purchase_receipt_item/purchase_receipt_item.json b/erpnext/stock/doctype/purchase_receipt_item/purchase_receipt_item.json
index d31fec5..d93d21c 100644
--- a/erpnext/stock/doctype/purchase_receipt_item/purchase_receipt_item.json
+++ b/erpnext/stock/doctype/purchase_receipt_item/purchase_receipt_item.json
@@ -34,8 +34,8 @@
   "sample_quantity",
   "tracking_section",
   "received_stock_qty",
-  "stock_qty",
   "col_break_tracking_section",
+  "stock_qty",
   "returned_qty",
   "rate_and_amount",
   "price_list_rate",
@@ -117,6 +117,7 @@
   "accounting_details_section",
   "expense_account",
   "item_tax_rate",
+  "wip_composite_asset",
   "column_break_102",
   "provisional_expense_account",
   "accounting_dimensions_section",
@@ -186,7 +187,6 @@
    "oldfieldname": "description",
    "oldfieldtype": "Text",
    "print_width": "300px",
-   "reqd": 1,
    "width": "300px"
   },
   {
@@ -858,7 +858,8 @@
   },
   {
    "fieldname": "tracking_section",
-   "fieldtype": "Section Break"
+   "fieldtype": "Section Break",
+   "label": "Qty as Per Stock UOM"
   },
   {
    "fieldname": "col_break_tracking_section",
@@ -1055,12 +1056,18 @@
    "fieldname": "add_serial_batch_bundle",
    "fieldtype": "Button",
    "label": "Add Serial / Batch No"
+  },
+  {
+   "fieldname": "wip_composite_asset",
+   "fieldtype": "Link",
+   "label": "WIP Composite Asset",
+   "options": "Asset"
   }
  ],
  "idx": 1,
  "istable": 1,
  "links": [],
- "modified": "2023-07-26 12:55:15.234477",
+ "modified": "2023-10-03 21:11:50.547261",
  "modified_by": "Administrator",
  "module": "Stock",
  "name": "Purchase Receipt Item",
@@ -1071,4 +1078,4 @@
  "sort_field": "modified",
  "sort_order": "DESC",
  "states": []
-}
\ No newline at end of file
+}
diff --git a/erpnext/stock/doctype/quality_inspection/quality_inspection.js b/erpnext/stock/doctype/quality_inspection/quality_inspection.js
index eea2879..05fa232 100644
--- a/erpnext/stock/doctype/quality_inspection/quality_inspection.js
+++ b/erpnext/stock/doctype/quality_inspection/quality_inspection.js
@@ -6,6 +6,14 @@
 frappe.ui.form.on("Quality Inspection", {
 
 	setup: function(frm) {
+		frm.set_query("reference_name", function() {
+			return {
+				filters: {
+					"docstatus": ["!=", 2],
+				}
+			}
+		});
+
 		frm.set_query("batch_no", function() {
 			return {
 				filters: {
diff --git a/erpnext/stock/doctype/quality_inspection/quality_inspection.json b/erpnext/stock/doctype/quality_inspection/quality_inspection.json
index db9322f..914a9f3 100644
--- a/erpnext/stock/doctype/quality_inspection/quality_inspection.json
+++ b/erpnext/stock/doctype/quality_inspection/quality_inspection.json
@@ -74,7 +74,7 @@
    "fieldname": "reference_type",
    "fieldtype": "Select",
    "label": "Reference Type",
-   "options": "\nPurchase Receipt\nPurchase Invoice\nDelivery Note\nSales Invoice\nStock Entry\nJob Card",
+   "options": "\nPurchase Receipt\nPurchase Invoice\nSubcontracting Receipt\nDelivery Note\nSales Invoice\nStock Entry\nJob Card",
    "reqd": 1
   },
   {
@@ -245,7 +245,7 @@
  "index_web_pages_for_search": 1,
  "is_submittable": 1,
  "links": [],
- "modified": "2022-10-04 22:00:13.995221",
+ "modified": "2023-08-23 11:56:50.282878",
  "modified_by": "Administrator",
  "module": "Stock",
  "name": "Quality Inspection",
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 1f90c5b..96e4a55 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
@@ -66,7 +66,7 @@
 		serial_nos = [d.serial_no for d in self.entries if d.serial_no]
 		kwargs = {"item_code": self.item_code, "warehouse": self.warehouse}
 		if self.voucher_type == "POS Invoice":
-			kwargs["ignore_voucher_no"] = self.voucher_no
+			kwargs["ignore_voucher_nos"] = [self.voucher_no]
 
 		available_serial_nos = get_available_serial_nos(frappe._dict(kwargs))
 
@@ -1098,8 +1098,8 @@
 	if kwargs.warehouse:
 		filters["warehouse"] = kwargs.warehouse
 
-	# Since SLEs are not present against POS invoices, need to ignore serial nos present in the POS invoice
-	ignore_serial_nos = get_reserved_serial_nos_for_pos(kwargs)
+	# Since SLEs are not present against Reserved Stock [POS invoices, SRE], need to ignore reserved serial nos.
+	ignore_serial_nos = get_reserved_serial_nos(kwargs)
 
 	# To ignore serial nos in the same record for the draft state
 	if kwargs.get("ignore_serial_nos"):
@@ -1180,6 +1180,20 @@
 	return serial_nos
 
 
+def get_reserved_serial_nos(kwargs) -> list:
+	"""Returns a list of `Serial No` reserved in POS Invoice and Stock Reservation Entry."""
+
+	ignore_serial_nos = []
+
+	# Extend the list by serial nos reserved in POS Invoice
+	ignore_serial_nos.extend(get_reserved_serial_nos_for_pos(kwargs))
+
+	# Extend the list by serial nos reserved via SRE
+	ignore_serial_nos.extend(get_reserved_serial_nos_for_sre(kwargs))
+
+	return ignore_serial_nos
+
+
 def get_reserved_serial_nos_for_pos(kwargs):
 	from erpnext.controllers.sales_and_purchase_return import get_returned_serial_nos
 	from erpnext.stock.doctype.serial_no.serial_no import get_serial_nos
@@ -1199,7 +1213,7 @@
 			["POS Invoice", "docstatus", "=", 1],
 			["POS Invoice", "is_return", "=", 0],
 			["POS Invoice Item", "item_code", "=", kwargs.item_code],
-			["POS Invoice", "name", "!=", kwargs.ignore_voucher_no],
+			["POS Invoice", "name", "not in", kwargs.ignore_voucher_nos],
 		],
 	)
 
@@ -1251,7 +1265,37 @@
 	return list(ignore_serial_nos_counter - returned_serial_nos_counter)
 
 
-def get_reserved_batches_for_pos(kwargs):
+def get_reserved_serial_nos_for_sre(kwargs) -> list:
+	"""Returns a list of `Serial No` reserved in Stock Reservation Entry."""
+
+	sre = frappe.qb.DocType("Stock Reservation Entry")
+	sb_entry = frappe.qb.DocType("Serial and Batch Entry")
+	query = (
+		frappe.qb.from_(sre)
+		.inner_join(sb_entry)
+		.on(sre.name == sb_entry.parent)
+		.select(sb_entry.serial_no)
+		.where(
+			(sre.docstatus == 1)
+			& (sre.item_code == kwargs.item_code)
+			& (sre.reserved_qty >= sre.delivered_qty)
+			& (sre.status.notin(["Delivered", "Cancelled"]))
+			& (sre.reservation_based_on == "Serial and Batch")
+		)
+	)
+
+	if kwargs.warehouse:
+		query = query.where(sre.warehouse == kwargs.warehouse)
+
+	if kwargs.ignore_voucher_nos:
+		query = query.where(sre.name.notin(kwargs.ignore_voucher_nos))
+
+	return [row[0] for row in query.run()]
+
+
+def get_reserved_batches_for_pos(kwargs) -> dict:
+	"""Returns a dict of `Batch No` followed by the `Qty` reserved in POS Invoices."""
+
 	pos_batches = frappe._dict()
 	pos_invoices = frappe.get_all(
 		"POS Invoice",
@@ -1267,7 +1311,7 @@
 			["POS Invoice", "consolidated_invoice", "is", "not set"],
 			["POS Invoice", "docstatus", "=", 1],
 			["POS Invoice Item", "item_code", "=", kwargs.item_code],
-			["POS Invoice", "name", "!=", kwargs.ignore_voucher_no],
+			["POS Invoice", "name", "not in", kwargs.ignore_voucher_nos],
 		],
 	)
 
@@ -1278,7 +1322,7 @@
 	]
 
 	if not ids:
-		return []
+		return {}
 
 	if ids:
 		for d in get_serial_batch_ledgers(kwargs.item_code, docstatus=1, name=ids):
@@ -1314,14 +1358,65 @@
 	return pos_batches
 
 
+def get_reserved_batches_for_sre(kwargs) -> dict:
+	"""Returns a dict of `Batch No` followed by the `Qty` reserved in Stock Reservation Entry."""
+
+	sre = frappe.qb.DocType("Stock Reservation Entry")
+	sb_entry = frappe.qb.DocType("Serial and Batch Entry")
+	query = (
+		frappe.qb.from_(sre)
+		.inner_join(sb_entry)
+		.on(sre.name == sb_entry.parent)
+		.select(
+			sb_entry.batch_no, sre.warehouse, (-1 * Sum(sb_entry.qty - sb_entry.delivered_qty)).as_("qty")
+		)
+		.where(
+			(sre.docstatus == 1)
+			& (sre.item_code == kwargs.item_code)
+			& (sre.reserved_qty >= sre.delivered_qty)
+			& (sre.status.notin(["Delivered", "Cancelled"]))
+			& (sre.reservation_based_on == "Serial and Batch")
+		)
+		.groupby(sb_entry.batch_no, sre.warehouse)
+	)
+
+	if kwargs.batch_no:
+		if isinstance(kwargs.batch_no, list):
+			query = query.where(sb_entry.batch_no.isin(kwargs.batch_no))
+		else:
+			query = query.where(sb_entry.batch_no == kwargs.batch_no)
+
+	if kwargs.warehouse:
+		query = query.where(sre.warehouse == kwargs.warehouse)
+
+	if kwargs.ignore_voucher_nos:
+		query = query.where(sre.name.notin(kwargs.ignore_voucher_nos))
+
+	data = query.run(as_dict=True)
+
+	reserved_batches_details = frappe._dict()
+	if data:
+		reserved_batches_details = frappe._dict(
+			{
+				(d.batch_no, d.warehouse): frappe._dict({"warehouse": d.warehouse, "qty": d.qty}) for d in data
+			}
+		)
+
+	return reserved_batches_details
+
+
 def get_auto_batch_nos(kwargs):
 	available_batches = get_available_batches(kwargs)
 	qty = flt(kwargs.qty)
 
-	pos_invoice_batches = get_reserved_batches_for_pos(kwargs)
 	stock_ledgers_batches = get_stock_ledgers_batches(kwargs)
-	if stock_ledgers_batches or pos_invoice_batches:
-		update_available_batches(available_batches, stock_ledgers_batches, pos_invoice_batches)
+	pos_invoice_batches = get_reserved_batches_for_pos(kwargs)
+	sre_reserved_batches = get_reserved_batches_for_sre(kwargs)
+
+	if stock_ledgers_batches or pos_invoice_batches or sre_reserved_batches:
+		update_available_batches(
+			available_batches, stock_ledgers_batches, pos_invoice_batches, sre_reserved_batches
+		)
 
 	available_batches = list(filter(lambda x: x.qty > 0, available_batches))
 
@@ -1364,8 +1459,8 @@
 	return batches
 
 
-def update_available_batches(available_batches, reserved_batches=None, pos_invoice_batches=None):
-	for batches in [reserved_batches, pos_invoice_batches]:
+def update_available_batches(available_batches, *reserved_batches) -> None:
+	for batches in reserved_batches:
 		if batches:
 			for key, data in batches.items():
 				batch_no, warehouse = key
diff --git a/erpnext/stock/doctype/serial_and_batch_entry/serial_and_batch_entry.json b/erpnext/stock/doctype/serial_and_batch_entry/serial_and_batch_entry.json
index 6ec2129..09565cb 100644
--- a/erpnext/stock/doctype/serial_and_batch_entry/serial_and_batch_entry.json
+++ b/erpnext/stock/doctype/serial_and_batch_entry/serial_and_batch_entry.json
@@ -10,6 +10,7 @@
   "column_break_2",
   "qty",
   "warehouse",
+  "delivered_qty",
   "section_break_6",
   "incoming_rate",
   "column_break_8",
@@ -104,12 +105,24 @@
    "fieldtype": "Small Text",
    "label": "FIFO Stock Queue (qty, rate)",
    "read_only": 1
+  },
+  {
+   "default": "0",
+   "depends_on": "eval: parent.doctype == \"Stock Reservation Entry\"",
+   "fieldname": "delivered_qty",
+   "fieldtype": "Float",
+   "label": "Delivered Qty",
+   "no_copy": 1,
+   "non_negative": 1,
+   "print_hide": 1,
+   "read_only": 1,
+   "report_hide": 1
   }
  ],
  "index_web_pages_for_search": 1,
  "istable": 1,
  "links": [],
- "modified": "2023-03-31 11:18:59.809486",
+ "modified": "2023-07-03 15:29:50.199075",
  "modified_by": "Administrator",
  "module": "Stock",
  "name": "Serial and Batch Entry",
diff --git a/erpnext/stock/doctype/stock_entry/stock_entry.js b/erpnext/stock/doctype/stock_entry/stock_entry.js
index 4fb8a10..d37e8ee 100644
--- a/erpnext/stock/doctype/stock_entry/stock_entry.js
+++ b/erpnext/stock/doctype/stock_entry/stock_entry.js
@@ -117,15 +117,6 @@
 			}
 		});
 
-		let sbb_field = frm.get_docfield('items', 'serial_and_batch_bundle');
-		if (sbb_field) {
-			sbb_field.get_route_options_for_new_doc = (row) => {
-				return {
-					'item_code': row.doc.item_code,
-					'voucher_type': frm.doc.doctype,
-				}
-			};
-		}
 
 		frm.add_fetch("bom_no", "inspection_required", "inspection_required");
 		erpnext.accounts.dimensions.setup_dimension_filters(frm, frm.doctype);
@@ -362,6 +353,16 @@
 		if(!check_should_not_attach_bom_items(frm.doc.bom_no)) {
 			erpnext.accounts.dimensions.update_dimension(frm, frm.doctype);
 		}
+
+		let sbb_field = frm.get_docfield('items', 'serial_and_batch_bundle');
+		if (sbb_field) {
+			sbb_field.get_route_options_for_new_doc = (row) => {
+				return {
+					'item_code': row.doc.item_code,
+					'voucher_type': frm.doc.doctype,
+				}
+			};
+		}
 	},
 
 	get_items_from_transit_entry: function(frm) {
diff --git a/erpnext/stock/doctype/stock_reconciliation/stock_reconciliation.py b/erpnext/stock/doctype/stock_reconciliation/stock_reconciliation.py
index f009bd4..e36d576 100644
--- a/erpnext/stock/doctype/stock_reconciliation/stock_reconciliation.py
+++ b/erpnext/stock/doctype/stock_reconciliation/stock_reconciliation.py
@@ -346,7 +346,7 @@
 		"""Raises an exception if there is any reserved stock for the items in the Stock Reconciliation."""
 
 		from erpnext.stock.doctype.stock_reservation_entry.stock_reservation_entry import (
-			get_sre_reserved_qty_details_for_item_and_warehouse as get_sre_reserved_qty_details,
+			get_sre_reserved_qty_for_items_and_warehouses as get_sre_reserved_qty_details,
 		)
 
 		item_code_list, warehouse_list = [], []
diff --git a/erpnext/stock/doctype/stock_reservation_entry/stock_reservation_entry.js b/erpnext/stock/doctype/stock_reservation_entry/stock_reservation_entry.js
index 666fd24..c5df319 100644
--- a/erpnext/stock/doctype/stock_reservation_entry/stock_reservation_entry.js
+++ b/erpnext/stock/doctype/stock_reservation_entry/stock_reservation_entry.js
@@ -1,8 +1,126 @@
 // Copyright (c) 2023, Frappe Technologies Pvt. Ltd. and contributors
 // For license information, please see license.txt
 
-frappe.ui.form.on("Stock Reservation Entry", {
+frappe.ui.form.on('Stock Reservation Entry', {
 	refresh(frm) {
-        frm.page.btn_primary.hide()
+		frm.trigger('set_queries');
+		frm.trigger('toggle_read_only_fields');
+		frm.trigger('hide_rate_related_fields');
+		frm.trigger('hide_primary_action_button');
+		frm.trigger('make_sb_entries_warehouse_read_only');
+	},
+
+	has_serial_no(frm) {
+		frm.trigger('toggle_read_only_fields');
+	},
+
+	has_batch_no(frm) {
+		frm.trigger('toggle_read_only_fields');
+	},
+
+	warehouse(frm) {
+		if (frm.doc.warehouse) {
+			frm.doc.sb_entries.forEach((row) => {
+				frappe.model.set_value(row.doctype, row.name, 'warehouse', frm.doc.warehouse);
+			});
+		}
+	},
+
+	set_queries(frm) {
+		frm.set_query('warehouse', () => {
+			return {
+				filters: {
+					'is_group': 0,
+					'company': frm.doc.company,
+				}
+			};
+		});
+
+		frm.set_query('serial_no', 'sb_entries', function(doc, cdt, cdn) {
+			var selected_serial_nos = doc.sb_entries.map(row => {
+				return row.serial_no;
+			});
+			var row = locals[cdt][cdn];
+			return {
+				filters: {
+					item_code: doc.item_code,
+					warehouse: row.warehouse,
+					status: 'Active',
+					name: ['not in', selected_serial_nos],
+				}
+			}
+		});
+
+		frm.set_query('batch_no', 'sb_entries', function(doc, cdt, cdn) {
+			let filters = {
+				item: doc.item_code,
+				batch_qty: ['>', 0],
+				disabled: 0,
+			}
+
+			if (!doc.has_serial_no) {
+				var selected_batch_nos = doc.sb_entries.map(row => {
+					return row.batch_no;
+				});
+
+				filters.name = ['not in', selected_batch_nos];
+			}
+
+			return { filters: filters }
+		});
+	},
+
+	toggle_read_only_fields(frm) {
+		if (frm.doc.has_serial_no) {
+			frm.doc.sb_entries.forEach(row => {
+				if (row.qty !== 1) {
+					frappe.model.set_value(row.doctype, row.name, 'qty', 1);
+				}
+			})
+		}
+
+		frm.fields_dict.sb_entries.grid.update_docfield_property(
+			'serial_no', 'read_only', !frm.doc.has_serial_no
+		);
+
+		frm.fields_dict.sb_entries.grid.update_docfield_property(
+			'batch_no', 'read_only', !frm.doc.has_batch_no
+		);
+
+		// Qty will always be 1 for Serial No.
+		frm.fields_dict.sb_entries.grid.update_docfield_property(
+			'qty', 'read_only', frm.doc.has_serial_no
+		);
+
+		frm.set_df_property('sb_entries', 'allow_on_submit', frm.doc.against_pick_list ? 0 : 1);
+	},
+
+	hide_rate_related_fields(frm) {
+		['incoming_rate', 'outgoing_rate', 'stock_value_difference', 'is_outward', 'stock_queue'].forEach(field => {
+			frm.fields_dict.sb_entries.grid.update_docfield_property(
+				field, 'hidden', 1
+			);
+		});
+	},
+
+	hide_primary_action_button(frm) {
+		// Hide 'Amend' button on cancelled document
+		if (frm.doc.docstatus == 2) {
+			frm.page.btn_primary.hide()
+		}
+	},
+
+	make_sb_entries_warehouse_read_only(frm) {
+		frm.fields_dict.sb_entries.grid.update_docfield_property(
+			'warehouse', 'read_only', 1
+		);
 	},
 });
+
+frappe.ui.form.on('Serial and Batch Entry', {
+	sb_entries_add(frm, cdt, cdn) {
+		if (frm.doc.warehouse) {
+			frappe.model.set_value(cdt, cdn, 'warehouse', frm.doc.warehouse);
+		}
+	},
+});
\ No newline at end of file
diff --git a/erpnext/stock/doctype/stock_reservation_entry/stock_reservation_entry.json b/erpnext/stock/doctype/stock_reservation_entry/stock_reservation_entry.json
index 7c7abac..5c3018f 100644
--- a/erpnext/stock/doctype/stock_reservation_entry/stock_reservation_entry.json
+++ b/erpnext/stock/doctype/stock_reservation_entry/stock_reservation_entry.json
@@ -2,7 +2,7 @@
  "actions": [],
  "allow_copy": 1,
  "autoname": "MAT-SRE-.YYYY.-.#####",
- "creation": "2023-03-20 10:45:59.258959",
+ "creation": "2023-06-06 15:20:48.016846",
  "default_view": "List",
  "doctype": "DocType",
  "editable_grid": 1,
@@ -10,17 +10,26 @@
  "field_order": [
   "item_code",
   "warehouse",
+  "has_serial_no",
+  "has_batch_no",
   "column_break_elik",
   "voucher_type",
   "voucher_no",
   "voucher_detail_no",
+  "column_break_7dxj",
+  "against_pick_list",
+  "against_pick_list_item",
   "section_break_xt4m",
+  "stock_uom",
+  "column_break_grdt",
   "available_qty",
   "voucher_qty",
-  "stock_uom",
   "column_break_o6ex",
   "reserved_qty",
   "delivered_qty",
+  "serial_and_batch_reservation_section",
+  "reservation_based_on",
+  "sb_entries",
   "section_break_3vb3",
   "company",
   "column_break_jbyr",
@@ -36,6 +45,7 @@
    "in_list_view": 1,
    "in_standard_filter": 1,
    "label": "Item Code",
+   "no_copy": 1,
    "oldfieldname": "item_code",
    "oldfieldtype": "Link",
    "options": "Item",
@@ -51,6 +61,7 @@
    "in_list_view": 1,
    "in_standard_filter": 1,
    "label": "Warehouse",
+   "no_copy": 1,
    "oldfieldname": "warehouse",
    "oldfieldtype": "Link",
    "options": "Warehouse",
@@ -64,6 +75,7 @@
    "fieldtype": "Select",
    "in_filter": 1,
    "label": "Voucher Type",
+   "no_copy": 1,
    "oldfieldname": "voucher_type",
    "oldfieldtype": "Data",
    "options": "\nSales Order",
@@ -78,17 +90,20 @@
    "in_list_view": 1,
    "in_standard_filter": 1,
    "label": "Voucher No",
+   "no_copy": 1,
    "oldfieldname": "voucher_no",
    "oldfieldtype": "Data",
    "options": "voucher_type",
    "print_width": "150px",
    "read_only": 1,
+   "search_index": 1,
    "width": "150px"
   },
   {
    "fieldname": "voucher_detail_no",
    "fieldtype": "Data",
    "label": "Voucher Detail No",
+   "no_copy": 1,
    "oldfieldname": "voucher_detail_no",
    "oldfieldtype": "Data",
    "print_width": "150px",
@@ -100,6 +115,7 @@
    "fieldname": "stock_uom",
    "fieldtype": "Link",
    "label": "Stock UOM",
+   "no_copy": 1,
    "oldfieldname": "stock_uom",
    "oldfieldtype": "Data",
    "options": "UOM",
@@ -111,14 +127,17 @@
    "fieldname": "project",
    "fieldtype": "Link",
    "label": "Project",
+   "no_copy": 1,
    "options": "Project",
-   "read_only": 1
+   "read_only": 1,
+   "search_index": 1
   },
   {
    "fieldname": "company",
    "fieldtype": "Link",
    "in_filter": 1,
    "label": "Company",
+   "no_copy": 1,
    "oldfieldname": "company",
    "oldfieldtype": "Data",
    "options": "Company",
@@ -128,23 +147,26 @@
    "width": "150px"
   },
   {
+   "allow_on_submit": 1,
    "fieldname": "reserved_qty",
    "fieldtype": "Float",
    "in_filter": 1,
    "in_list_view": 1,
    "label": "Reserved Qty",
+   "no_copy": 1,
+   "non_negative": 1,
    "oldfieldname": "actual_qty",
    "oldfieldtype": "Currency",
    "print_width": "150px",
-   "read_only": 1,
+   "read_only_depends_on": "eval: ((doc.reservation_based_on == \"Serial and Batch\") || (doc.against_pick_list) || (doc.delivered_qty > 0))",
    "width": "150px"
   },
   {
    "default": "Draft",
    "fieldname": "status",
    "fieldtype": "Select",
-   "hidden": 1,
    "label": "Status",
+   "no_copy": 1,
    "options": "Draft\nPartially Reserved\nReserved\nPartially Delivered\nDelivered\nCancelled",
    "read_only": 1
   },
@@ -153,6 +175,8 @@
    "fieldname": "delivered_qty",
    "fieldtype": "Float",
    "label": "Delivered Qty",
+   "no_copy": 1,
+   "non_negative": 1,
    "read_only": 1
   },
   {
@@ -170,6 +194,7 @@
    "fieldtype": "Float",
    "label": "Available Qty to Reserve",
    "no_copy": 1,
+   "non_negative": 1,
    "read_only": 1
   },
   {
@@ -178,6 +203,7 @@
    "fieldtype": "Float",
    "label": "Voucher Qty",
    "no_copy": 1,
+   "non_negative": 1,
    "read_only": 1
   },
   {
@@ -193,12 +219,84 @@
    "fieldtype": "Column Break"
   },
   {
+   "collapsible": 1,
    "fieldname": "section_break_3vb3",
-   "fieldtype": "Section Break"
+   "fieldtype": "Section Break",
+   "label": "More Information"
   },
   {
    "fieldname": "column_break_jbyr",
    "fieldtype": "Column Break"
+  },
+  {
+   "default": "0",
+   "depends_on": "eval: doc.has_serial_no",
+   "fieldname": "has_serial_no",
+   "fieldtype": "Check",
+   "label": "Has Serial No",
+   "no_copy": 1,
+   "read_only": 1
+  },
+  {
+   "default": "0",
+   "depends_on": "eval: doc.has_batch_no",
+   "fieldname": "has_batch_no",
+   "fieldtype": "Check",
+   "label": "Has Batch No",
+   "no_copy": 1,
+   "read_only": 1
+  },
+  {
+   "allow_on_submit": 1,
+   "depends_on": "eval: (doc.has_serial_no || doc.has_batch_no) && doc.reservation_based_on == \"Serial and Batch\"",
+   "fieldname": "sb_entries",
+   "fieldtype": "Table",
+   "options": "Serial and Batch Entry",
+   "read_only_depends_on": "eval: (doc.delivered_qty > 0)"
+  },
+  {
+   "fieldname": "serial_and_batch_reservation_section",
+   "fieldtype": "Section Break",
+   "label": "Serial and Batch Reservation"
+  },
+  {
+   "allow_on_submit": 1,
+   "default": "Qty",
+   "depends_on": "eval: parent.has_serial_no || parent.has_batch_no",
+   "fieldname": "reservation_based_on",
+   "fieldtype": "Select",
+   "label": "Reservation Based On",
+   "no_copy": 1,
+   "options": "Qty\nSerial and Batch",
+   "read_only_depends_on": "eval: (doc.delivered_qty > 0 || doc.against_pick_list)"
+  },
+  {
+   "fieldname": "against_pick_list",
+   "fieldtype": "Link",
+   "label": "Against Pick List",
+   "no_copy": 1,
+   "options": "Pick List",
+   "print_hide": 1,
+   "read_only": 1,
+   "report_hide": 1,
+   "search_index": 1
+  },
+  {
+   "fieldname": "against_pick_list_item",
+   "fieldtype": "Data",
+   "label": "Against Pick List Item",
+   "no_copy": 1,
+   "print_hide": 1,
+   "read_only": 1,
+   "report_hide": 1
+  },
+  {
+   "fieldname": "column_break_7dxj",
+   "fieldtype": "Column Break"
+  },
+  {
+   "fieldname": "column_break_grdt",
+   "fieldtype": "Column Break"
   }
  ],
  "hide_toolbar": 1,
@@ -206,7 +304,7 @@
  "index_web_pages_for_search": 1,
  "is_submittable": 1,
  "links": [],
- "modified": "2023-03-29 18:36:26.752872",
+ "modified": "2023-08-08 17:15:13.317706",
  "modified_by": "Administrator",
  "module": "Stock",
  "name": "Stock Reservation Entry",
@@ -230,5 +328,6 @@
  ],
  "sort_field": "modified",
  "sort_order": "DESC",
- "states": []
+ "states": [],
+ "track_changes": 1
 }
\ No newline at end of file
diff --git a/erpnext/stock/doctype/stock_reservation_entry/stock_reservation_entry.py b/erpnext/stock/doctype/stock_reservation_entry/stock_reservation_entry.py
index 5819dd7..936be3f 100644
--- a/erpnext/stock/doctype/stock_reservation_entry/stock_reservation_entry.py
+++ b/erpnext/stock/doctype/stock_reservation_entry/stock_reservation_entry.py
@@ -5,27 +5,57 @@
 from frappe import _
 from frappe.model.document import Document
 from frappe.query_builder.functions import Sum
+from frappe.utils import cint, flt
 
 
 class StockReservationEntry(Document):
 	def validate(self) -> None:
 		from erpnext.stock.utils import validate_disabled_warehouse, validate_warehouse_company
 
+		self.validate_amended_doc()
 		self.validate_mandatory()
-		self.validate_for_group_warehouse()
+		self.validate_group_warehouse()
 		validate_disabled_warehouse(self.warehouse)
 		validate_warehouse_company(self.warehouse, self.company)
+		self.validate_uom_is_integer()
+
+	def before_submit(self) -> None:
+		self.set_reservation_based_on()
+		self.validate_reservation_based_on_qty()
+		self.auto_reserve_serial_and_batch()
+		self.validate_reservation_based_on_serial_and_batch()
 
 	def on_submit(self) -> None:
 		self.update_reserved_qty_in_voucher()
+		self.update_reserved_qty_in_pick_list()
 		self.update_status()
 
+	def on_update_after_submit(self) -> None:
+		self.can_be_updated()
+		self.validate_uom_is_integer()
+		self.set_reservation_based_on()
+		self.validate_reservation_based_on_qty()
+		self.validate_reservation_based_on_serial_and_batch()
+		self.update_reserved_qty_in_voucher()
+		self.update_status()
+		self.reload()
+
 	def on_cancel(self) -> None:
 		self.update_reserved_qty_in_voucher()
+		self.update_reserved_qty_in_pick_list()
 		self.update_status()
 
+	def validate_amended_doc(self) -> None:
+		"""Raises an exception if document is amended."""
+
+		if self.amended_from:
+			msg = _("Cannot amend {0} {1}, please create a new one instead.").format(
+				self.doctype, frappe.bold(self.amended_from)
+			)
+			frappe.throw(msg)
+
 	def validate_mandatory(self) -> None:
-		"""Raises exception if mandatory fields are not set."""
+		"""Raises an exception if mandatory fields are not set."""
 
 		mandatory = [
 			"item_code",
@@ -41,36 +71,217 @@
 		]
 		for d in mandatory:
 			if not self.get(d):
-				frappe.throw(_("{0} is required").format(self.meta.get_label(d)))
+				msg = _("{0} is required").format(self.meta.get_label(d))
+				frappe.throw(msg)
 
-	def validate_for_group_warehouse(self) -> None:
-		"""Raises exception if `Warehouse` is a Group Warehouse."""
+	def validate_group_warehouse(self) -> None:
+		"""Raises an exception if `Warehouse` is a Group Warehouse."""
 
 		if frappe.get_cached_value("Warehouse", self.warehouse, "is_group"):
-			frappe.throw(
-				_("Stock cannot be reserved in group warehouse {0}.").format(frappe.bold(self.warehouse)),
-				title=_("Invalid Warehouse"),
+			msg = _("Stock cannot be reserved in group warehouse {0}.").format(frappe.bold(self.warehouse))
+			frappe.throw(msg, title=_("Invalid Warehouse"))
+
+	def validate_uom_is_integer(self) -> None:
+		"""Validates `Reserved Qty` with Stock UOM."""
+
+		if cint(frappe.db.get_value("UOM", self.stock_uom, "must_be_whole_number", cache=True)):
+			if cint(self.reserved_qty) != flt(self.reserved_qty, self.precision("reserved_qty")):
+				msg = _(
+					"Reserved Qty ({0}) cannot be a fraction. To allow this, disable '{1}' in UOM {3}."
+				).format(
+					flt(self.reserved_qty, self.precision("reserved_qty")),
+					frappe.bold(_("Must be Whole Number")),
+					frappe.bold(self.stock_uom),
+				)
+				frappe.throw(msg)
+
+	def set_reservation_based_on(self) -> None:
+		"""Sets `Reservation Based On` based on `Has Serial No` and `Has Batch No`."""
+
+		if (self.reservation_based_on == "Serial and Batch") and (
+			not self.has_serial_no and not self.has_batch_no
+		):
+			self.db_set("reservation_based_on", "Qty")
+
+	def validate_reservation_based_on_qty(self) -> None:
+		"""Validates `Reserved Qty` when `Reservation Based On` is `Qty`."""
+
+		if self.reservation_based_on == "Qty":
+			self.validate_with_max_reserved_qty(self.reserved_qty)
+
+	def auto_reserve_serial_and_batch(self, based_on: str = None) -> None:
+		"""Auto pick Serial and Batch Nos to reserve when `Reservation Based On` is `Serial and Batch`."""
+
+		if (
+			not self.against_pick_list
+			and (self.get("_action") == "submit")
+			and (self.has_serial_no or self.has_batch_no)
+			and cint(frappe.db.get_single_value("Stock Settings", "auto_reserve_serial_and_batch"))
+		):
+			from erpnext.stock.doctype.batch.batch import get_available_batches
+			from erpnext.stock.doctype.serial_no.serial_no import get_serial_nos_for_outward
+			from erpnext.stock.serial_batch_bundle import get_serial_nos_batch
+
+			self.reservation_based_on = "Serial and Batch"
+			self.sb_entries.clear()
+			kwargs = frappe._dict(
+				{
+					"item_code": self.item_code,
+					"warehouse": self.warehouse,
+					"qty": abs(self.reserved_qty) or 0,
+					"based_on": based_on
+					or frappe.db.get_single_value("Stock Settings", "pick_serial_and_batch_based_on"),
+				}
 			)
 
-	def update_status(self, status: str = None, update_modified: bool = True) -> None:
-		"""Updates status based on Voucher Qty, Reserved Qty and Delivered Qty."""
+			serial_nos, batch_nos = [], []
+			if self.has_serial_no:
+				serial_nos = get_serial_nos_for_outward(kwargs)
+			if self.has_batch_no:
+				batch_nos = get_available_batches(kwargs)
 
-		if not status:
-			if self.docstatus == 2:
-				status = "Cancelled"
-			elif self.docstatus == 1:
-				if self.reserved_qty == self.delivered_qty:
-					status = "Delivered"
-				elif self.delivered_qty and self.delivered_qty < self.reserved_qty:
-					status = "Partially Delivered"
-				elif self.reserved_qty == self.voucher_qty:
-					status = "Reserved"
-				else:
-					status = "Partially Reserved"
-			else:
-				status = "Draft"
+			if serial_nos:
+				serial_no_wise_batch = frappe._dict({})
 
-		frappe.db.set_value(self.doctype, self.name, "status", status, update_modified=update_modified)
+				if self.has_batch_no:
+					serial_no_wise_batch = get_serial_nos_batch(serial_nos)
+
+				for serial_no in serial_nos:
+					self.append(
+						"sb_entries",
+						{
+							"serial_no": serial_no,
+							"qty": 1,
+							"batch_no": serial_no_wise_batch.get(serial_no),
+							"warehouse": self.warehouse,
+						},
+					)
+			elif batch_nos:
+				for batch_no, batch_qty in batch_nos.items():
+					self.append(
+						"sb_entries",
+						{
+							"batch_no": batch_no,
+							"qty": batch_qty,
+							"warehouse": self.warehouse,
+						},
+					)
+
+	def validate_reservation_based_on_serial_and_batch(self) -> None:
+		"""Validates `Reserved Qty`, `Serial and Batch Nos` when `Reservation Based On` is `Serial and Batch`."""
+
+		if self.reservation_based_on == "Serial and Batch":
+			allow_partial_reservation = frappe.db.get_single_value(
+				"Stock Settings", "allow_partial_reservation"
+			)
+
+			available_serial_nos = []
+			if self.has_serial_no:
+				available_serial_nos = get_available_serial_nos_to_reserve(
+					self.item_code, self.warehouse, self.has_batch_no, ignore_sre=self.name
+				)
+
+				if not available_serial_nos:
+					msg = _("Stock not available for Item {0} in Warehouse {1}.").format(
+						frappe.bold(self.item_code), frappe.bold(self.warehouse)
+					)
+					frappe.throw(msg)
+
+			qty_to_be_reserved = 0
+			selected_batch_nos, selected_serial_nos = [], []
+			for entry in self.sb_entries:
+				entry.warehouse = self.warehouse
+
+				if self.has_serial_no:
+					entry.qty = 1
+
+					key = (
+						(entry.serial_no, self.warehouse, entry.batch_no)
+						if self.has_batch_no
+						else (entry.serial_no, self.warehouse)
+					)
+					if key not in available_serial_nos:
+						msg = _(
+							"Row #{0}: Serial No {1} for Item {2} is not available in {3} {4} or might be reserved in another {5}."
+						).format(
+							entry.idx,
+							frappe.bold(entry.serial_no),
+							frappe.bold(self.item_code),
+							_("Batch {0} and Warehouse").format(frappe.bold(entry.batch_no))
+							if self.has_batch_no
+							else _("Warehouse"),
+							frappe.bold(self.warehouse),
+							frappe.bold("Stock Reservation Entry"),
+						)
+
+						frappe.throw(msg)
+
+					if entry.serial_no in selected_serial_nos:
+						msg = _("Row #{0}: Serial No {1} is already selected.").format(
+							entry.idx, frappe.bold(entry.serial_no)
+						)
+						frappe.throw(msg)
+					else:
+						selected_serial_nos.append(entry.serial_no)
+
+				elif self.has_batch_no:
+					if cint(frappe.db.get_value("Batch", entry.batch_no, "disabled")):
+						msg = _(
+							"Row #{0}: Stock cannot be reserved for Item {1} against a disabled Batch {2}."
+						).format(
+							entry.idx, frappe.bold(self.item_code), frappe.bold(entry.batch_no)
+						)
+						frappe.throw(msg)
+
+					available_qty_to_reserve = get_available_qty_to_reserve(
+						self.item_code, self.warehouse, entry.batch_no, ignore_sre=self.name
+					)
+
+					if available_qty_to_reserve <= 0:
+						msg = _(
+							"Row #{0}: Stock not availabe to reserve for Item {1} against Batch {2} in Warehouse {3}."
+						).format(
+							entry.idx,
+							frappe.bold(self.item_code),
+							frappe.bold(entry.batch_no),
+							frappe.bold(self.warehouse),
+						)
+						frappe.throw(msg)
+
+					if entry.qty > available_qty_to_reserve:
+						if allow_partial_reservation:
+							entry.qty = available_qty_to_reserve
+							if self.get("_action") == "update_after_submit":
+								entry.db_update()
+						else:
+							msg = _(
+								"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}."
+							).format(
+								entry.idx,
+								frappe.bold(available_qty_to_reserve),
+								frappe.bold(self.item_code),
+								frappe.bold(entry.batch_no),
+								frappe.bold(self.warehouse),
+							)
+							frappe.throw(msg)
+
+					if entry.batch_no in selected_batch_nos:
+						msg = _("Row #{0}: Batch No {1} is already selected.").format(
+							entry.idx, frappe.bold(entry.batch_no)
+						)
+						frappe.throw(msg)
+					else:
+						selected_batch_nos.append(entry.batch_no)
+
+				qty_to_be_reserved += entry.qty
+
+			if not qty_to_be_reserved:
+				msg = _("Please select Serial/Batch Nos to reserve or change Reservation Based On to Qty.")
+				frappe.throw(msg)
+
+			# Should be called after validating Serial and Batch Nos.
+			self.validate_with_max_reserved_qty(qty_to_be_reserved)
+			self.db_set("reserved_qty", qty_to_be_reserved)
 
 	def update_reserved_qty_in_voucher(
 		self, reserved_qty_field: str = "stock_reserved_qty", update_modified: bool = True
@@ -100,45 +311,177 @@
 				update_modified=update_modified,
 			)
 
+	def update_reserved_qty_in_pick_list(
+		self, reserved_qty_field: str = "stock_reserved_qty", update_modified: bool = True
+	) -> None:
+		"""Updates total reserved qty in the Pick List."""
+
+		if self.against_pick_list and self.against_pick_list_item:
+			sre = frappe.qb.DocType("Stock Reservation Entry")
+			reserved_qty = (
+				frappe.qb.from_(sre)
+				.select(Sum(sre.reserved_qty))
+				.where(
+					(sre.docstatus == 1)
+					& (sre.against_pick_list == self.against_pick_list)
+					& (sre.against_pick_list_item == self.against_pick_list_item)
+				)
+			).run(as_list=True)[0][0] or 0
+
+			frappe.db.set_value(
+				"Pick List Item",
+				self.against_pick_list_item,
+				reserved_qty_field,
+				reserved_qty,
+				update_modified=update_modified,
+			)
+
+	def update_status(self, status: str = None, update_modified: bool = True) -> None:
+		"""Updates status based on Voucher Qty, Reserved Qty and Delivered Qty."""
+
+		if not status:
+			if self.docstatus == 2:
+				status = "Cancelled"
+			elif self.docstatus == 1:
+				if self.reserved_qty == self.delivered_qty:
+					status = "Delivered"
+				elif self.delivered_qty and self.delivered_qty < self.reserved_qty:
+					status = "Partially Delivered"
+				elif self.reserved_qty == self.voucher_qty:
+					status = "Reserved"
+				else:
+					status = "Partially Reserved"
+			else:
+				status = "Draft"
+
+		frappe.db.set_value(self.doctype, self.name, "status", status, update_modified=update_modified)
+
+	def can_be_updated(self) -> None:
+		"""Raises an exception if `Stock Reservation Entry` is not allowed to be updated."""
+
+		if self.status in ("Partially Delivered", "Delivered"):
+			msg = _(
+				"{0} {1} cannot be updated. If you need to make changes, we recommend canceling the existing entry and creating a new one."
+			).format(self.status, self.doctype)
+			frappe.throw(msg)
+
+		if self.against_pick_list:
+			msg = _(
+				"Stock Reservation Entry created against a Pick List cannot be updated. If you need to make changes, we recommend canceling the existing entry and creating a new one."
+			)
+			frappe.throw(msg)
+
+		if self.delivered_qty > 0:
+			msg = _("Stock Reservation Entry cannot be updated as it has been delivered.")
+			frappe.throw(msg)
+
+	def validate_with_max_reserved_qty(self, qty_to_be_reserved: float) -> None:
+		"""Validates `Reserved Qty` with `Max Reserved Qty`."""
+
+		self.db_set(
+			"available_qty",
+			get_available_qty_to_reserve(self.item_code, self.warehouse, ignore_sre=self.name),
+		)
+
+		total_reserved_qty = get_sre_reserved_qty_for_voucher_detail_no(
+			self.voucher_type, self.voucher_no, self.voucher_detail_no, ignore_sre=self.name
+		)
+
+		voucher_delivered_qty = 0
+		if self.voucher_type == "Sales Order":
+			delivered_qty, conversion_factor = frappe.db.get_value(
+				"Sales Order Item", self.voucher_detail_no, ["delivered_qty", "conversion_factor"]
+			)
+			voucher_delivered_qty = flt(delivered_qty) * flt(conversion_factor)
+
+		max_reserved_qty = min(
+			self.available_qty, (self.voucher_qty - voucher_delivered_qty - total_reserved_qty)
+		)
+
+		if max_reserved_qty <= 0 and self.voucher_type == "Sales Order":
+			msg = _("Item {0} is already delivered for Sales Order {1}.").format(
+				frappe.bold(self.item_code), frappe.bold(self.voucher_no)
+			)
+
+			if self.docstatus == 1:
+				self.cancel()
+				return frappe.msgprint(msg)
+			else:
+				frappe.throw(msg)
+
+		if qty_to_be_reserved > max_reserved_qty:
+			msg = """
+				Cannot reserve more than Max Reserved Qty {0} {1}.<br /><br />
+				The <b>Max Reserved Qty</b> is calculated as follows:<br />
+				<ul>
+					<li><b>Available Qty To Reserve</b> = (Actual Stock Qty - Reserved Stock Qty)</li>
+					<li><b>Voucher Qty</b> = Voucher Item Qty</li>
+					<li><b>Delivered Qty</b> = Qty delivered against the Voucher Item</li>
+					<li><b>Total Reserved Qty</b> = Qty reserved against the Voucher Item</li>
+					<li><b>Max Reserved Qty</b> = Minimum of (Available Qty To Reserve, (Voucher Qty - Delivered Qty - Total Reserved Qty))</li>
+				</ul>
+			""".format(
+				frappe.bold(max_reserved_qty), self.stock_uom
+			)
+			frappe.throw(msg)
+
+		if qty_to_be_reserved <= self.delivered_qty:
+			msg = _("Reserved Qty should be greater than Delivered Qty.")
+			frappe.throw(msg)
+
 
 def validate_stock_reservation_settings(voucher: object) -> None:
 	"""Raises an exception if `Stock Reservation` is not enabled or `Voucher Type` is not allowed."""
 
 	if not frappe.db.get_single_value("Stock Settings", "enable_stock_reservation"):
-		frappe.throw(
-			_("Please enable {0} in the {1}.").format(
-				frappe.bold("Stock Reservation"), frappe.bold("Stock Settings")
-			)
+		msg = _("Please enable {0} in the {1}.").format(
+			frappe.bold("Stock Reservation"), frappe.bold("Stock Settings")
 		)
+		frappe.throw(msg)
 
 	# Voucher types allowed for stock reservation
 	allowed_voucher_types = ["Sales Order"]
 
 	if voucher.doctype not in allowed_voucher_types:
-		frappe.throw(
-			_("Stock Reservation can only be created against {0}.").format(", ".join(allowed_voucher_types))
+		msg = _("Stock Reservation can only be created against {0}.").format(
+			", ".join(allowed_voucher_types)
 		)
+		frappe.throw(msg)
 
 
-def get_available_qty_to_reserve(item_code: str, warehouse: str) -> float:
-	"""Returns `Available Qty to Reserve (Actual Qty - Reserved Qty)` for Item and Warehouse combination."""
+def get_available_qty_to_reserve(
+	item_code: str, warehouse: str, batch_no: str = None, ignore_sre=None
+) -> float:
+	"""Returns `Available Qty to Reserve (Actual Qty - Reserved Qty)` for Item, Warehouse and Batch combination."""
 
+	from erpnext.stock.doctype.batch.batch import get_batch_qty
 	from erpnext.stock.utils import get_stock_balance
 
+	if batch_no:
+		return get_batch_qty(
+			item_code=item_code, warehouse=warehouse, batch_no=batch_no, ignore_voucher_nos=[ignore_sre]
+		)
+
 	available_qty = get_stock_balance(item_code, warehouse)
 
 	if available_qty:
 		sre = frappe.qb.DocType("Stock Reservation Entry")
-		reserved_qty = (
+		query = (
 			frappe.qb.from_(sre)
 			.select(Sum(sre.reserved_qty - sre.delivered_qty))
 			.where(
 				(sre.docstatus == 1)
 				& (sre.item_code == item_code)
 				& (sre.warehouse == warehouse)
+				& (sre.reserved_qty >= sre.delivered_qty)
 				& (sre.status.notin(["Delivered", "Cancelled"]))
 			)
-		).run()[0][0] or 0.0
+		)
+
+		if ignore_sre:
+			query = query.where(sre.name != ignore_sre)
+
+		reserved_qty = query.run()[0][0] or 0.0
 
 		if reserved_qty:
 			return available_qty - reserved_qty
@@ -146,93 +489,114 @@
 	return available_qty
 
 
-def get_stock_reservation_entries_for_voucher(
-	voucher_type: str, voucher_no: str, voucher_detail_no: str = None, fields: list[str] = None
-) -> list[dict]:
-	"""Returns list of Stock Reservation Entries against a Voucher."""
+def get_available_serial_nos_to_reserve(
+	item_code: str, warehouse: str, has_batch_no: bool = False, ignore_sre=None
+) -> list[tuple]:
+	"""Returns Available Serial Nos to Reserve (Available Serial Nos - Reserved Serial Nos)` for Item, Warehouse and Batch combination."""
 
-	if not fields or not isinstance(fields, list):
-		fields = [
-			"name",
-			"item_code",
-			"warehouse",
-			"voucher_detail_no",
-			"reserved_qty",
-			"delivered_qty",
-			"stock_uom",
-		]
-
-	sre = frappe.qb.DocType("Stock Reservation Entry")
-	query = (
-		frappe.qb.from_(sre)
-		.where(
-			(sre.docstatus == 1)
-			& (sre.voucher_type == voucher_type)
-			& (sre.voucher_no == voucher_no)
-			& (sre.status.notin(["Delivered", "Cancelled"]))
-		)
-		.orderby(sre.creation)
+	from erpnext.stock.doctype.serial_and_batch_bundle.serial_and_batch_bundle import (
+		get_available_serial_nos,
 	)
 
-	for field in fields:
-		query = query.select(sre[field])
+	available_serial_nos = get_available_serial_nos(
+		frappe._dict(
+			{
+				"item_code": item_code,
+				"warehouse": warehouse,
+				"has_batch_no": has_batch_no,
+				"ignore_voucher_nos": [ignore_sre],
+			}
+		)
+	)
 
-	if voucher_detail_no:
-		query = query.where(sre.voucher_detail_no == voucher_detail_no)
+	available_serial_nos_list = []
+	if available_serial_nos:
+		available_serial_nos_list = [tuple(d.values()) for d in available_serial_nos]
 
-	return query.run(as_dict=True)
-
-
-def get_sre_reserved_qty_details_for_item_and_warehouse(
-	item_code_list: list, warehouse_list: list
-) -> dict:
-	"""Returns a dict like {("item_code", "warehouse"): "reserved_qty", ... }."""
-
-	sre_details = {}
-
-	if item_code_list and warehouse_list:
 		sre = frappe.qb.DocType("Stock Reservation Entry")
-		sre_data = (
+		sb_entry = frappe.qb.DocType("Serial and Batch Entry")
+		query = (
 			frappe.qb.from_(sre)
-			.select(
-				sre.item_code,
-				sre.warehouse,
-				Sum(sre.reserved_qty - sre.delivered_qty).as_("reserved_qty"),
-			)
-			.where(
-				(sre.docstatus == 1)
-				& (sre.item_code.isin(item_code_list))
-				& (sre.warehouse.isin(warehouse_list))
-				& (sre.status.notin(["Delivered", "Cancelled"]))
-			)
-			.groupby(sre.item_code, sre.warehouse)
-		).run(as_dict=True)
-
-		if sre_data:
-			sre_details = {(d["item_code"], d["warehouse"]): d["reserved_qty"] for d in sre_data}
-
-	return sre_details
-
-
-def get_sre_reserved_qty_for_item_and_warehouse(item_code: str, warehouse: str) -> float:
-	"""Returns `Reserved Qty` for Item and Warehouse combination."""
-
-	reserved_qty = 0.0
-
-	if item_code and warehouse:
-		sre = frappe.qb.DocType("Stock Reservation Entry")
-		return (
-			frappe.qb.from_(sre)
-			.select(Sum(sre.reserved_qty - sre.delivered_qty))
+			.left_join(sb_entry)
+			.on(sre.name == sb_entry.parent)
+			.select(sb_entry.serial_no, sre.warehouse)
 			.where(
 				(sre.docstatus == 1)
 				& (sre.item_code == item_code)
 				& (sre.warehouse == warehouse)
+				& (sre.reserved_qty >= sre.delivered_qty)
 				& (sre.status.notin(["Delivered", "Cancelled"]))
+				& (sre.reservation_based_on == "Serial and Batch")
 			)
-		).run(as_list=True)[0][0] or 0.0
+		)
 
-	return reserved_qty
+		if has_batch_no:
+			query = query.select(sb_entry.batch_no)
+
+		if ignore_sre:
+			query = query.where(sre.name != ignore_sre)
+
+		reserved_serial_nos = query.run()
+
+		if reserved_serial_nos:
+			return list(set(available_serial_nos_list) - set(reserved_serial_nos))
+
+	return available_serial_nos_list
+
+
+def get_sre_reserved_qty_for_item_and_warehouse(item_code: str, warehouse: str = None) -> float:
+	"""Returns current `Reserved Qty` for Item and Warehouse combination."""
+
+	sre = frappe.qb.DocType("Stock Reservation Entry")
+	query = (
+		frappe.qb.from_(sre)
+		.select(Sum(sre.reserved_qty - sre.delivered_qty).as_("reserved_qty"))
+		.where(
+			(sre.docstatus == 1)
+			& (sre.item_code == item_code)
+			& (sre.status.notin(["Delivered", "Cancelled"]))
+		)
+		.groupby(sre.item_code, sre.warehouse)
+	)
+
+	if warehouse:
+		query = query.where(sre.warehouse == warehouse)
+
+	reserved_qty = query.run(as_list=True)
+
+	return flt(reserved_qty[0][0]) if reserved_qty else 0.0
+
+
+def get_sre_reserved_qty_for_items_and_warehouses(
+	item_code_list: list, warehouse_list: list = None
+) -> dict:
+	"""Returns a dict like {("item_code", "warehouse"): "reserved_qty", ... }."""
+
+	if not item_code_list:
+		return {}
+
+	sre = frappe.qb.DocType("Stock Reservation Entry")
+	query = (
+		frappe.qb.from_(sre)
+		.select(
+			sre.item_code,
+			sre.warehouse,
+			Sum(sre.reserved_qty - sre.delivered_qty).as_("reserved_qty"),
+		)
+		.where(
+			(sre.docstatus == 1)
+			& sre.item_code.isin(item_code_list)
+			& (sre.status.notin(["Delivered", "Cancelled"]))
+		)
+		.groupby(sre.item_code, sre.warehouse)
+	)
+
+	if warehouse_list:
+		query = query.where(sre.warehouse.isin(warehouse_list))
+
+	data = query.run(as_dict=True)
+
+	return {(d["item_code"], d["warehouse"]): d["reserved_qty"] for d in data} if data else {}
 
 
 def get_sre_reserved_qty_details_for_voucher(voucher_type: str, voucher_no: str) -> dict:
@@ -257,15 +621,44 @@
 	return frappe._dict(data)
 
 
-def get_sre_reserved_qty_details_for_voucher_detail_no(
-	voucher_type: str, voucher_no: str, voucher_detail_no: str
+def get_sre_reserved_warehouses_for_voucher(
+	voucher_type: str, voucher_no: str, voucher_detail_no: str = None
 ) -> list:
-	"""Returns a list like ["warehouse", "reserved_qty"]."""
+	"""Returns a list of warehouses where the stock is reserved for the provided voucher."""
 
 	sre = frappe.qb.DocType("Stock Reservation Entry")
-	reserved_qty_details = (
+	query = (
 		frappe.qb.from_(sre)
-		.select(sre.warehouse, (Sum(sre.reserved_qty) - Sum(sre.delivered_qty)))
+		.select(sre.warehouse)
+		.distinct()
+		.where(
+			(sre.docstatus == 1)
+			& (sre.voucher_type == voucher_type)
+			& (sre.voucher_no == voucher_no)
+			& (sre.status.notin(["Delivered", "Cancelled"]))
+		)
+		.orderby(sre.creation)
+	)
+
+	if voucher_detail_no:
+		query = query.where(sre.voucher_detail_no == voucher_detail_no)
+
+	warehouses = query.run(as_list=True)
+
+	return [d[0] for d in warehouses] if warehouses else []
+
+
+def get_sre_reserved_qty_for_voucher_detail_no(
+	voucher_type: str, voucher_no: str, voucher_detail_no: str, ignore_sre=None
+) -> float:
+	"""Returns `Reserved Qty` against the Voucher."""
+
+	sre = frappe.qb.DocType("Stock Reservation Entry")
+	query = (
+		frappe.qb.from_(sre)
+		.select(
+			(Sum(sre.reserved_qty) - Sum(sre.delivered_qty)),
+		)
 		.where(
 			(sre.docstatus == 1)
 			& (sre.voucher_type == voucher_type)
@@ -273,40 +666,366 @@
 			& (sre.voucher_detail_no == voucher_detail_no)
 			& (sre.status.notin(["Delivered", "Cancelled"]))
 		)
+	)
+
+	if ignore_sre:
+		query = query.where(sre.name != ignore_sre)
+
+	reserved_qty = query.run(as_list=True)
+
+	return flt(reserved_qty[0][0])
+
+
+def get_sre_details_for_voucher(voucher_type: str, voucher_no: str) -> list[dict]:
+	"""Returns a list of SREs for the provided voucher."""
+
+	sre = frappe.qb.DocType("Stock Reservation Entry")
+	return (
+		frappe.qb.from_(sre)
+		.select(
+			sre.name,
+			sre.item_code,
+			sre.warehouse,
+			sre.voucher_type,
+			sre.voucher_no,
+			sre.voucher_detail_no,
+			(sre.reserved_qty - sre.delivered_qty).as_("reserved_qty"),
+			sre.has_serial_no,
+			sre.has_batch_no,
+			sre.reservation_based_on,
+		)
+		.where(
+			(sre.docstatus == 1)
+			& (sre.voucher_type == voucher_type)
+			& (sre.voucher_no == voucher_no)
+			& (sre.reserved_qty > sre.delivered_qty)
+			& (sre.status.notin(["Delivered", "Cancelled"]))
+		)
 		.orderby(sre.creation)
-		.groupby(sre.warehouse)
-	).run(as_list=True)
+	).run(as_dict=True)
 
-	if reserved_qty_details:
-		return reserved_qty_details[0]
 
-	return reserved_qty_details
+def get_serial_batch_entries_for_voucher(sre_name: str) -> list[dict]:
+	"""Returns a list of `Serial and Batch Entries` for the provided voucher."""
+
+	sre = frappe.qb.DocType("Stock Reservation Entry")
+	sb_entry = frappe.qb.DocType("Serial and Batch Entry")
+
+	return (
+		frappe.qb.from_(sre)
+		.inner_join(sb_entry)
+		.on(sre.name == sb_entry.parent)
+		.select(
+			sb_entry.serial_no,
+			sb_entry.batch_no,
+			(sb_entry.qty - sb_entry.delivered_qty).as_("qty"),
+		)
+		.where(
+			(sre.docstatus == 1) & (sre.name == sre_name) & (sre.status.notin(["Delivered", "Cancelled"]))
+		)
+		.where(sb_entry.qty > sb_entry.delivered_qty)
+		.orderby(sb_entry.creation)
+	).run(as_dict=True)
+
+
+def get_ssb_bundle_for_voucher(sre: dict) -> object:
+	"""Returns a new `Serial and Batch Bundle` against the provided SRE."""
+
+	sb_entries = get_serial_batch_entries_for_voucher(sre["name"])
+
+	if sb_entries:
+		bundle = frappe.new_doc("Serial and Batch Bundle")
+		bundle.type_of_transaction = "Outward"
+		bundle.voucher_type = "Delivery Note"
+
+		for field in ("item_code", "warehouse", "has_serial_no", "has_batch_no"):
+			setattr(bundle, field, sre[field])
+
+		for sb_entry in sb_entries:
+			bundle.append("entries", sb_entry)
+
+		bundle.save()
+
+		return bundle.name
 
 
 def has_reserved_stock(voucher_type: str, voucher_no: str, voucher_detail_no: str = None) -> bool:
 	"""Returns True if there is any Stock Reservation Entry for the given voucher."""
 
 	if get_stock_reservation_entries_for_voucher(
-		voucher_type, voucher_no, voucher_detail_no, fields=["name"]
+		voucher_type, voucher_no, voucher_detail_no, fields=["name"], ignore_status=True
 	):
 		return True
 
 	return False
 
 
-@frappe.whitelist()
-def cancel_stock_reservation_entries(
-	voucher_type: str, voucher_no: str, voucher_detail_no: str = None, notify: bool = True
+def create_stock_reservation_entries_for_so_items(
+	so: object,
+	items_details: list[dict] = None,
+	against_pick_list: bool = False,
+	notify=True,
 ) -> None:
-	"""Cancel Stock Reservation Entries for the given voucher."""
+	"""Creates Stock Reservation Entries for Sales Order Items."""
 
-	sre_list = get_stock_reservation_entries_for_voucher(
-		voucher_type, voucher_no, voucher_detail_no, fields=["name"]
+	from erpnext.selling.doctype.sales_order.sales_order import get_unreserved_qty
+
+	if not against_pick_list and (
+		so.get("_action") == "submit"
+		and so.set_warehouse
+		and cint(frappe.get_cached_value("Warehouse", so.set_warehouse, "is_group"))
+	):
+		return frappe.msgprint(
+			_("Stock cannot be reserved in the group warehouse {0}.").format(frappe.bold(so.set_warehouse))
+		)
+
+	validate_stock_reservation_settings(so)
+
+	allow_partial_reservation = frappe.db.get_single_value(
+		"Stock Settings", "allow_partial_reservation"
 	)
 
+	items = []
+	if items_details:
+		for item in items_details:
+			so_item = frappe.get_doc(
+				"Sales Order Item", item.get("sales_order_item") if against_pick_list else item.get("name")
+			)
+			so_item.reserve_stock = 1
+			so_item.warehouse = item.get("warehouse")
+			so_item.qty_to_reserve = (
+				item.get("picked_qty") - item.get("stock_reserved_qty", 0)
+				if against_pick_list
+				else (flt(item.get("qty_to_reserve")) * flt(so_item.conversion_factor, 1))
+			)
+
+			if against_pick_list:
+				so_item.pick_list = item.get("parent")
+				so_item.pick_list_item = item.get("name")
+				so_item.pick_list_sbb = item.get("serial_and_batch_bundle")
+
+			items.append(so_item)
+
+	sre_count = 0
+	reserved_qty_details = get_sre_reserved_qty_details_for_voucher("Sales Order", so.name)
+
+	for item in items if items_details else so.get("items"):
+		# Skip if `Reserved Stock` is not checked for the item.
+		if not item.get("reserve_stock"):
+			continue
+
+		# Stock should be reserved from the Pick List if has Picked Qty.
+		if not against_pick_list and flt(item.picked_qty) > 0:
+			frappe.throw(
+				_(
+					"Row #{0}: Item {1} has been picked, please create a Stock Reservation from the Pick List."
+				).format(item.idx, frappe.bold(item.item_code))
+			)
+
+		is_stock_item, has_serial_no, has_batch_no = frappe.get_cached_value(
+			"Item", item.item_code, ["is_stock_item", "has_serial_no", "has_batch_no"]
+		)
+
+		# Skip if Non-Stock Item.
+		if not is_stock_item:
+			frappe.msgprint(
+				_("Row #{0}: Stock cannot be reserved for a non-stock Item {1}").format(
+					item.idx, frappe.bold(item.item_code)
+				),
+				title=_("Stock Reservation"),
+				indicator="yellow",
+			)
+			item.db_set("reserve_stock", 0)
+			continue
+
+		# Skip if Group Warehouse.
+		if frappe.get_cached_value("Warehouse", item.warehouse, "is_group"):
+			frappe.msgprint(
+				_("Row #{0}: Stock cannot be reserved in group warehouse {1}.").format(
+					item.idx, frappe.bold(item.warehouse)
+				),
+				title=_("Stock Reservation"),
+				indicator="yellow",
+			)
+			continue
+
+		unreserved_qty = get_unreserved_qty(item, reserved_qty_details)
+
+		# Stock is already reserved for the item, notify the user and skip the item.
+		if unreserved_qty <= 0:
+			frappe.msgprint(
+				_("Row #{0}: Stock is already reserved for the Item {1}.").format(
+					item.idx, frappe.bold(item.item_code)
+				),
+				title=_("Stock Reservation"),
+				indicator="yellow",
+			)
+			continue
+
+		available_qty_to_reserve = get_available_qty_to_reserve(item.item_code, item.warehouse)
+
+		# No stock available to reserve, notify the user and skip the item.
+		if available_qty_to_reserve <= 0:
+			frappe.msgprint(
+				_("Row #{0}: No available stock to reserve for the Item {1} in Warehouse {2}.").format(
+					item.idx, frappe.bold(item.item_code), frappe.bold(item.warehouse)
+				),
+				title=_("Stock Reservation"),
+				indicator="orange",
+			)
+			continue
+
+		# The quantity which can be reserved.
+		qty_to_be_reserved = min(unreserved_qty, available_qty_to_reserve)
+
+		if hasattr(item, "qty_to_reserve"):
+			if item.qty_to_reserve <= 0:
+				frappe.msgprint(
+					_("Row #{0}: Quantity to reserve for the Item {1} should be greater than 0.").format(
+						item.idx, frappe.bold(item.item_code)
+					),
+					title=_("Stock Reservation"),
+					indicator="orange",
+				)
+				continue
+			else:
+				qty_to_be_reserved = min(qty_to_be_reserved, item.qty_to_reserve)
+
+		# Partial Reservation
+		if qty_to_be_reserved < unreserved_qty:
+			if not item.get("qty_to_reserve") or qty_to_be_reserved < flt(item.get("qty_to_reserve")):
+				msg = _("Row #{0}: Only {1} available to reserve for the Item {2}").format(
+					item.idx,
+					frappe.bold(str(qty_to_be_reserved / item.conversion_factor) + " " + item.uom),
+					frappe.bold(item.item_code),
+				)
+				frappe.msgprint(msg, title=_("Stock Reservation"), indicator="orange")
+
+			# Skip the item if `Partial Reservation` is disabled in the Stock Settings.
+			if not allow_partial_reservation:
+				if qty_to_be_reserved == flt(item.get("qty_to_reserve")):
+					msg = _("Enable Allow Partial Reservation in the Stock Settings to reserve partial stock.")
+					frappe.msgprint(msg, title=_("Partial Stock Reservation"), indicator="yellow")
+
+				continue
+
+		sre = frappe.new_doc("Stock Reservation Entry")
+
+		sre.item_code = item.item_code
+		sre.warehouse = item.warehouse
+		sre.has_serial_no = has_serial_no
+		sre.has_batch_no = has_batch_no
+		sre.voucher_type = so.doctype
+		sre.voucher_no = so.name
+		sre.voucher_detail_no = item.name
+		sre.available_qty = available_qty_to_reserve
+		sre.voucher_qty = item.stock_qty
+		sre.reserved_qty = qty_to_be_reserved
+		sre.company = so.company
+		sre.stock_uom = item.stock_uom
+		sre.project = so.project
+
+		if against_pick_list:
+			sre.against_pick_list = item.pick_list
+			sre.against_pick_list_item = item.pick_list_item
+
+			if item.pick_list_sbb:
+				sbb = frappe.get_doc("Serial and Batch Bundle", item.pick_list_sbb)
+				sre.reservation_based_on = "Serial and Batch"
+				for entry in sbb.entries:
+					sre.append(
+						"sb_entries",
+						{
+							"serial_no": entry.serial_no,
+							"batch_no": entry.batch_no,
+							"qty": 1 if has_serial_no else abs(entry.qty),
+							"warehouse": entry.warehouse,
+						},
+					)
+
+		sre.save()
+		sre.submit()
+
+		sre_count += 1
+
+	if sre_count and notify:
+		frappe.msgprint(_("Stock Reservation Entries Created"), alert=True, indicator="green")
+
+
+def cancel_stock_reservation_entries(
+	voucher_type: str = None,
+	voucher_no: str = None,
+	voucher_detail_no: str = None,
+	against_pick_list: str = None,
+	sre_list: list[dict] = None,
+	notify: bool = True,
+) -> None:
+	"""Cancel Stock Reservation Entries."""
+
+	if not sre_list and against_pick_list:
+		sre = frappe.qb.DocType("Stock Reservation Entry")
+		sre_list = (
+			frappe.qb.from_(sre)
+			.select(sre.name)
+			.where(
+				(sre.docstatus == 1)
+				& (sre.against_pick_list == against_pick_list)
+				& (sre.status.notin(["Delivered", "Cancelled"]))
+			)
+			.orderby(sre.creation)
+		).run(as_dict=True)
+
+	elif not sre_list and (voucher_type and voucher_no):
+		sre_list = get_stock_reservation_entries_for_voucher(
+			voucher_type, voucher_no, voucher_detail_no, fields=["name"]
+		)
+
 	if sre_list:
 		for sre in sre_list:
-			frappe.get_doc("Stock Reservation Entry", sre.name).cancel()
+			frappe.get_doc("Stock Reservation Entry", sre["name"]).cancel()
 
 		if notify:
-			frappe.msgprint(_("Stock Reservation Entries Cancelled"), alert=True, indicator="red")
+			msg = _("Stock Reservation Entries Cancelled")
+			frappe.msgprint(msg, alert=True, indicator="red")
+
+
+@frappe.whitelist()
+def get_stock_reservation_entries_for_voucher(
+	voucher_type: str,
+	voucher_no: str,
+	voucher_detail_no: str = None,
+	fields: list[str] = None,
+	ignore_status: bool = False,
+) -> list[dict]:
+	"""Returns list of Stock Reservation Entries against a Voucher."""
+
+	if not fields or not isinstance(fields, list):
+		fields = [
+			"name",
+			"item_code",
+			"warehouse",
+			"voucher_detail_no",
+			"reserved_qty",
+			"delivered_qty",
+			"stock_uom",
+		]
+
+	sre = frappe.qb.DocType("Stock Reservation Entry")
+	query = (
+		frappe.qb.from_(sre)
+		.where(
+			(sre.docstatus == 1) & (sre.voucher_type == voucher_type) & (sre.voucher_no == voucher_no)
+		)
+		.orderby(sre.creation)
+	)
+
+	for field in fields:
+		query = query.select(sre[field])
+
+	if voucher_detail_no:
+		query = query.where(sre.voucher_detail_no == voucher_detail_no)
+
+	if ignore_status:
+		query = query.where(sre.status.notin(["Delivered", "Cancelled"]))
+
+	return query.run(as_dict=True)
diff --git a/erpnext/stock/doctype/stock_reservation_entry/stock_reservation_entry_list.js b/erpnext/stock/doctype/stock_reservation_entry/stock_reservation_entry_list.js
index 442ac39..5b390f7 100644
--- a/erpnext/stock/doctype/stock_reservation_entry/stock_reservation_entry_list.js
+++ b/erpnext/stock/doctype/stock_reservation_entry/stock_reservation_entry_list.js
@@ -4,13 +4,14 @@
 frappe.listview_settings['Stock Reservation Entry'] = {
 	get_indicator: function (doc) {
 		const status_colors = {
-            'Draft': 'red',
-            'Partially Reserved': 'orange',
-            'Reserved': 'blue',
-            'Partially Delivered': 'purple',
-            'Delivered': 'green',
-            'Cancelled': 'red',
+                  'Draft': 'red',
+                  'Partially Reserved': 'orange',
+                  'Reserved': 'blue',
+                  'Partially Delivered': 'purple',
+                  'Delivered': 'green',
+                  'Cancelled': 'red',
 		};
-		return [__(doc.status), status_colors[doc.status], 'status,=,' + doc.status];
+
+            return [__(doc.status), status_colors[doc.status], 'status,=,' + doc.status];
 	},
 };
\ No newline at end of file
diff --git a/erpnext/stock/doctype/stock_reservation_entry/test_stock_reservation_entry.py b/erpnext/stock/doctype/stock_reservation_entry/test_stock_reservation_entry.py
index dff407f..1168a4e 100644
--- a/erpnext/stock/doctype/stock_reservation_entry/test_stock_reservation_entry.py
+++ b/erpnext/stock/doctype/stock_reservation_entry/test_stock_reservation_entry.py
@@ -1,23 +1,38 @@
 # Copyright (c) 2023, Frappe Technologies Pvt. Ltd. and Contributors
 # See license.txt
 
+from random import randint
+
 import frappe
 from frappe.tests.utils import FrappeTestCase, change_settings
 
+from erpnext.selling.doctype.sales_order.sales_order import create_pick_list, make_delivery_note
 from erpnext.selling.doctype.sales_order.test_sales_order import make_sales_order
+from erpnext.stock.doctype.item.test_item import make_item
 from erpnext.stock.doctype.stock_entry.stock_entry import StockEntry
 from erpnext.stock.doctype.stock_entry.test_stock_entry import make_stock_entry
+from erpnext.stock.doctype.stock_reservation_entry.stock_reservation_entry import (
+	cancel_stock_reservation_entries,
+	get_sre_reserved_qty_details_for_voucher,
+	get_stock_reservation_entries_for_voucher,
+	has_reserved_stock,
+)
 from erpnext.stock.utils import get_stock_balance
 
 
 class TestStockReservationEntry(FrappeTestCase):
 	def setUp(self) -> None:
-		self.items = create_items()
-		create_material_receipt(self.items)
+		self.warehouse = "_Test Warehouse - _TC"
+		self.sr_item = make_item(properties={"is_stock_item": 1, "valuation_rate": 100})
+		create_material_receipt(
+			items={self.sr_item.name: self.sr_item}, warehouse=self.warehouse, qty=100
+		)
 
 	def tearDown(self) -> None:
+		cancel_all_stock_reservation_entries()
 		return super().tearDown()
 
+	@change_settings("Stock Settings", {"allow_negative_stock": 0})
 	def test_validate_stock_reservation_settings(self) -> None:
 		from erpnext.stock.doctype.stock_reservation_entry.stock_reservation_entry import (
 			validate_stock_reservation_settings,
@@ -47,28 +62,29 @@
 			get_available_qty_to_reserve,
 		)
 
-		item_code, warehouse = "SR Item 1", "_Test Warehouse - _TC"
-
 		# Case - 1: When `Reserved Qty` is `0`, Available Qty to Reserve = Actual Qty
-		cancel_all_stock_reservation_entries()
-		available_qty_to_reserve = get_available_qty_to_reserve(item_code, warehouse)
-		expected_available_qty_to_reserve = get_stock_balance(item_code, warehouse)
+		available_qty_to_reserve = get_available_qty_to_reserve(self.sr_item.name, self.warehouse)
+		expected_available_qty_to_reserve = get_stock_balance(self.sr_item.name, self.warehouse)
 
 		self.assertEqual(available_qty_to_reserve, expected_available_qty_to_reserve)
 
 		# Case - 2: When `Reserved Qty` is `> 0`, Available Qty to Reserve = Actual Qty - Reserved Qty
 		sre = make_stock_reservation_entry(
-			item_code=item_code,
-			warehouse=warehouse,
+			item_code=self.sr_item.name,
+			warehouse=self.warehouse,
 			ignore_validate=True,
 		)
-		available_qty_to_reserve = get_available_qty_to_reserve(item_code, warehouse)
-		expected_available_qty_to_reserve = get_stock_balance(item_code, warehouse) - sre.reserved_qty
+		available_qty_to_reserve = get_available_qty_to_reserve(self.sr_item.name, self.warehouse)
+		expected_available_qty_to_reserve = (
+			get_stock_balance(self.sr_item.name, self.warehouse) - sre.reserved_qty
+		)
 
 		self.assertEqual(available_qty_to_reserve, expected_available_qty_to_reserve)
 
 	def test_update_status(self) -> None:
 		sre = make_stock_reservation_entry(
+			item_code=self.sr_item.name,
+			warehouse=self.warehouse,
 			reserved_qty=30,
 			ignore_validate=True,
 			do_not_submit=True,
@@ -109,14 +125,12 @@
 		sre.load_from_db()
 		self.assertEqual(sre.status, "Cancelled")
 
-	@change_settings("Stock Settings", {"enable_stock_reservation": 1})
+	@change_settings("Stock Settings", {"allow_negative_stock": 0, "enable_stock_reservation": 1})
 	def test_update_reserved_qty_in_voucher(self) -> None:
-		item_code, warehouse = "SR Item 1", "_Test Warehouse - _TC"
-
 		# Step - 1: Create a `Sales Order`
 		so = make_sales_order(
-			item_code=item_code,
-			warehouse=warehouse,
+			item_code=self.sr_item.name,
+			warehouse=self.warehouse,
 			qty=50,
 			rate=100,
 			do_not_submit=True,
@@ -128,8 +142,8 @@
 
 		# Step - 2: Create a `Stock Reservation Entry[1]` for the `Sales Order Item`
 		sre1 = make_stock_reservation_entry(
-			item_code=item_code,
-			warehouse=warehouse,
+			item_code=self.sr_item.name,
+			warehouse=self.warehouse,
 			voucher_type="Sales Order",
 			voucher_no=so.name,
 			voucher_detail_no=so.items[0].name,
@@ -143,8 +157,8 @@
 
 		# Step - 3: Create a `Stock Reservation Entry[2]` for the `Sales Order Item`
 		sre2 = make_stock_reservation_entry(
-			item_code=item_code,
-			warehouse=warehouse,
+			item_code=self.sr_item.name,
+			warehouse=self.warehouse,
 			voucher_type="Sales Order",
 			voucher_no=so.name,
 			voucher_detail_no=so.items[0].name,
@@ -163,26 +177,32 @@
 		self.assertEqual(sre1.status, "Cancelled")
 		self.assertEqual(so.items[0].stock_reserved_qty, sre2.reserved_qty)
 
-		# Step - 5: Cancel `Stock Reservation Entry[2]`
+		# Step - 5: Update `Stock Reservation Entry[2]` Reserved Qty
+		sre2.reserved_qty += sre1.reserved_qty
+		sre2.save()
+		so.load_from_db()
+		sre1.load_from_db()
+		self.assertEqual(sre2.status, "Reserved")
+		self.assertEqual(so.items[0].stock_reserved_qty, sre2.reserved_qty)
+
+		# Step - 6: Cancel `Stock Reservation Entry[2]`
 		sre2.cancel()
 		so.load_from_db()
 		sre2.load_from_db()
 		self.assertEqual(sre1.status, "Cancelled")
 		self.assertEqual(so.items[0].stock_reserved_qty, 0)
 
-	@change_settings("Stock Settings", {"enable_stock_reservation": 1})
+	@change_settings("Stock Settings", {"allow_negative_stock": 0, "enable_stock_reservation": 1})
 	def test_cant_consume_reserved_stock(self) -> None:
 		from erpnext.stock.doctype.stock_reservation_entry.stock_reservation_entry import (
 			cancel_stock_reservation_entries,
 		)
 		from erpnext.stock.stock_ledger import NegativeStockError
 
-		item_code, warehouse = "SR Item 1", "_Test Warehouse - _TC"
-
 		# Step - 1: Create a `Sales Order`
 		so = make_sales_order(
-			item_code=item_code,
-			warehouse=warehouse,
+			item_code=self.sr_item.name,
+			warehouse=self.warehouse,
 			qty=50,
 			rate=100,
 			do_not_submit=True,
@@ -192,13 +212,13 @@
 		so.save()
 		so.submit()
 
-		actual_qty = get_stock_balance(item_code, warehouse)
+		actual_qty = get_stock_balance(self.sr_item.name, self.warehouse)
 
 		# Step - 2: Try to consume (Transfer/Issue/Deliver) the Available Qty via Stock Entry or Delivery Note, should throw `NegativeStockError`.
 		se = make_stock_entry(
-			item_code=item_code,
+			item_code=self.sr_item.name,
 			qty=actual_qty,
-			from_warehouse=warehouse,
+			from_warehouse=self.warehouse,
 			rate=100,
 			purpose="Material Issue",
 			do_not_submit=True,
@@ -210,9 +230,9 @@
 		cancel_stock_reservation_entries(so.doctype, so.name)
 
 		se = make_stock_entry(
-			item_code=item_code,
+			item_code=self.sr_item.name,
 			qty=actual_qty,
-			from_warehouse=warehouse,
+			from_warehouse=self.warehouse,
 			rate=100,
 			purpose="Material Issue",
 			do_not_submit=True,
@@ -220,52 +240,369 @@
 		se.submit()
 		se.cancel()
 
+	@change_settings(
+		"Stock Settings",
+		{
+			"allow_negative_stock": 0,
+			"enable_stock_reservation": 1,
+			"auto_reserve_serial_and_batch": 0,
+			"pick_serial_and_batch_based_on": "FIFO",
+			"auto_create_serial_and_batch_bundle_for_outward": 1,
+		},
+	)
+	def test_stock_reservation_against_sales_order(self) -> None:
+		items_details = create_items()
+		se = create_material_receipt(items_details, self.warehouse, qty=10)
+
+		item_list = []
+		for item_code, properties in items_details.items():
+			item_list.append(
+				{
+					"item_code": item_code,
+					"warehouse": self.warehouse,
+					"qty": randint(11, 100),
+					"uom": properties.stock_uom,
+					"rate": randint(10, 400),
+				}
+			)
+
+		so = make_sales_order(
+			item_list=item_list,
+			warehouse=self.warehouse,
+		)
+
+		# Test - 1: Stock should not be reserved if the Available Qty to Reserve is less than the Ordered Qty and Partial Reservation is disabled in Stock Settings.
+		with change_settings("Stock Settings", {"allow_partial_reservation": 0}):
+			so.create_stock_reservation_entries()
+			self.assertFalse(has_reserved_stock("Sales Order", so.name))
+
+		# Test - 2: Stock should be Partially Reserved if the Partial Reservation is enabled in Stock Settings.
+		with change_settings("Stock Settings", {"allow_partial_reservation": 1}):
+			so.create_stock_reservation_entries()
+			so.load_from_db()
+			self.assertTrue(has_reserved_stock("Sales Order", so.name))
+
+			for item in so.items:
+				sre_details = get_stock_reservation_entries_for_voucher(
+					"Sales Order", so.name, item.name, fields=["reserved_qty", "status"]
+				)[0]
+				self.assertEqual(item.stock_reserved_qty, sre_details.reserved_qty)
+				self.assertEqual(sre_details.status, "Partially Reserved")
+
+			se.cancel()
+
+			# Test - 3: Stock should be fully Reserved if the Available Qty to Reserve is greater than the Un-reserved Qty.
+			create_material_receipt(items_details, self.warehouse, qty=110)
+			so.create_stock_reservation_entries()
+			so.load_from_db()
+
+			reserved_qty_details = get_sre_reserved_qty_details_for_voucher("Sales Order", so.name)
+			for item in so.items:
+				reserved_qty = reserved_qty_details[item.name]
+				self.assertEqual(item.stock_reserved_qty, reserved_qty)
+				self.assertEqual(item.stock_qty, item.stock_reserved_qty)
+
+			# Test - 4: Stock should get unreserved on cancellation of Stock Reservation Entries.
+			cancel_stock_reservation_entries("Sales Order", so.name)
+			so.load_from_db()
+			self.assertFalse(has_reserved_stock("Sales Order", so.name))
+
+			for item in so.items:
+				self.assertEqual(item.stock_reserved_qty, 0)
+
+			# Test - 5: Re-reserve the stock.
+			so.create_stock_reservation_entries()
+			self.assertTrue(has_reserved_stock("Sales Order", so.name))
+
+			# Test - 6: Stock should get unreserved on cancellation of Sales Order.
+			so.cancel()
+			so.load_from_db()
+			self.assertFalse(has_reserved_stock("Sales Order", so.name))
+
+			for item in so.items:
+				self.assertEqual(item.stock_reserved_qty, 0)
+
+			# Create Sales Order and Reserve Stock.
+			so = make_sales_order(
+				item_list=item_list,
+				warehouse=self.warehouse,
+			)
+			so.create_stock_reservation_entries()
+
+			# Test - 7: Partial Delivery against Sales Order.
+			dn1 = make_delivery_note(so.name)
+
+			for item in dn1.items:
+				item.qty = randint(1, 10)
+
+			dn1.save()
+			dn1.submit()
+
+			for item in so.items:
+				sre_details = get_stock_reservation_entries_for_voucher(
+					"Sales Order", so.name, item.name, fields=["delivered_qty", "status"]
+				)[0]
+				self.assertGreater(sre_details.delivered_qty, 0)
+				self.assertEqual(sre_details.status, "Partially Delivered")
+
+			# Test - 8: Over Delivery against Sales Order, SRE Delivered Qty should not be greater than the SRE Reserved Qty.
+			with change_settings("Stock Settings", {"over_delivery_receipt_allowance": 100}):
+				dn2 = make_delivery_note(so.name)
+
+				for item in dn2.items:
+					item.qty += randint(1, 10)
+
+				dn2.save()
+				dn2.submit()
+
+			for item in so.items:
+				sre_details = get_stock_reservation_entries_for_voucher(
+					"Sales Order",
+					so.name,
+					item.name,
+					fields=["reserved_qty", "delivered_qty"],
+					ignore_status=True,
+				)
+
+				for sre_detail in sre_details:
+					self.assertEqual(sre_detail.reserved_qty, sre_detail.delivered_qty)
+
+	@change_settings(
+		"Stock Settings",
+		{
+			"allow_negative_stock": 0,
+			"enable_stock_reservation": 1,
+			"auto_reserve_serial_and_batch": 1,
+			"pick_serial_and_batch_based_on": "FIFO",
+		},
+	)
+	def test_auto_reserve_serial_and_batch(self) -> None:
+		items_details = create_items()
+		create_material_receipt(items_details, self.warehouse, qty=100)
+
+		item_list = []
+		for item_code, properties in items_details.items():
+			item_list.append(
+				{
+					"item_code": item_code,
+					"warehouse": self.warehouse,
+					"qty": randint(11, 100),
+					"uom": properties.stock_uom,
+					"rate": randint(10, 400),
+				}
+			)
+
+		so = make_sales_order(
+			item_list=item_list,
+			warehouse=self.warehouse,
+		)
+		so.create_stock_reservation_entries()
+		so.load_from_db()
+
+		for item in so.items:
+			sre_details = get_stock_reservation_entries_for_voucher(
+				"Sales Order", so.name, item.name, fields=["status", "reserved_qty"]
+			)[0]
+
+			# Test - 1: SRE Reserved Qty should be updated in Sales Order Item.
+			self.assertEqual(item.stock_reserved_qty, sre_details.reserved_qty)
+
+			# Test - 2: SRE status should be `Reserved`.
+			self.assertEqual(sre_details.status, "Reserved")
+
+		dn = make_delivery_note(so.name, kwargs={"for_reserved_stock": 1})
+		dn.save()
+		dn.submit()
+
+		for item in so.items:
+			sre_details = get_stock_reservation_entries_for_voucher(
+				"Sales Order", so.name, item.name, fields=["status", "delivered_qty", "reserved_qty"]
+			)[0]
+
+			# Test - 3: After Delivery Note, SRE status should be `Delivered`.
+			self.assertEqual(sre_details.status, "Delivered")
+
+			# Test - 4: After Delivery Note, SRE Delivered Qty should be equal to SRE Reserved Qty.
+			self.assertEqual(sre_details.delivered_qty, sre_details.reserved_qty)
+
+		sre = frappe.qb.DocType("Stock Reservation Entry")
+		sb_entry = frappe.qb.DocType("Serial and Batch Entry")
+		for item in dn.items:
+			if item.serial_and_batch_bundle:
+				reserved_sb_entries = (
+					frappe.qb.from_(sre)
+					.inner_join(sb_entry)
+					.on(sre.name == sb_entry.parent)
+					.select(sb_entry.serial_no, sb_entry.batch_no, sb_entry.qty, sb_entry.delivered_qty)
+					.where(
+						(sre.voucher_type == "Sales Order")
+						& (sre.voucher_no == item.against_sales_order)
+						& (sre.voucher_detail_no == item.so_detail)
+					)
+				).run(as_dict=True)
+
+				reserved_sb_details: set[tuple] = set()
+				for sb_details in reserved_sb_entries:
+					# Test - 5: After Delivery Note, SB Entry Delivered Qty should be equal to SB Entry Reserved Qty.
+					self.assertEqual(sb_details.qty, sb_details.delivered_qty)
+
+					reserved_sb_details.add((sb_details.serial_no, sb_details.batch_no, -1 * sb_details.qty))
+
+				delivered_sb_entries = frappe.db.get_all(
+					"Serial and Batch Entry",
+					filters={"parent": item.serial_and_batch_bundle},
+					fields=["serial_no", "batch_no", "qty"],
+					as_list=True,
+				)
+				delivered_sb_details: set[tuple] = set(delivered_sb_entries)
+
+				# Test - 6: Reserved Serial/Batch Nos should be equal to Delivered Serial/Batch Nos.
+				self.assertSetEqual(reserved_sb_details, delivered_sb_details)
+
+		dn.cancel()
+		so.load_from_db()
+
+		for item in so.items:
+			sre_details = get_stock_reservation_entries_for_voucher(
+				"Sales Order",
+				so.name,
+				item.name,
+				fields=["name", "status", "delivered_qty", "reservation_based_on"],
+			)[0]
+
+			# Test - 7: After Delivery Note cancellation, SRE status should be `Reserved`.
+			self.assertEqual(sre_details.status, "Reserved")
+
+			# Test - 8: After Delivery Note cancellation, SRE Delivered Qty should be `0`.
+			self.assertEqual(sre_details.delivered_qty, 0)
+
+			if sre_details.reservation_based_on == "Serial and Batch":
+				sb_entries = frappe.db.get_all(
+					"Serial and Batch Entry",
+					filters={"parenttype": "Stock Reservation Entry", "parent": sre_details.name},
+					fields=["delivered_qty"],
+				)
+
+				for sb_entry in sb_entries:
+					# Test - 9: After Delivery Note cancellation, SB Entry Delivered Qty should be `0`.
+					self.assertEqual(sb_entry.delivered_qty, 0)
+
+	@change_settings(
+		"Stock Settings",
+		{
+			"allow_negative_stock": 0,
+			"enable_stock_reservation": 1,
+			"auto_reserve_serial_and_batch": 1,
+			"pick_serial_and_batch_based_on": "FIFO",
+		},
+	)
+	def test_stock_reservation_from_pick_list(self):
+		items_details = create_items()
+		create_material_receipt(items_details, self.warehouse, qty=100)
+
+		item_list = []
+		for item_code, properties in items_details.items():
+			item_list.append(
+				{
+					"item_code": item_code,
+					"warehouse": self.warehouse,
+					"qty": randint(11, 100),
+					"uom": properties.stock_uom,
+					"rate": randint(10, 400),
+				}
+			)
+
+		so = make_sales_order(
+			item_list=item_list,
+			warehouse=self.warehouse,
+		)
+		pl = create_pick_list(so.name)
+		pl.save()
+		pl.submit()
+		pl.create_stock_reservation_entries()
+		pl.load_from_db()
+		so.load_from_db()
+
+		for item in so.items:
+			sre_details = get_stock_reservation_entries_for_voucher(
+				"Sales Order", so.name, item.name, fields=["reserved_qty"]
+			)[0]
+
+			# Test - 1: SRE Reserved Qty should be updated in Sales Order Item.
+			self.assertEqual(item.stock_reserved_qty, sre_details.reserved_qty)
+
+		sre = frappe.qb.DocType("Stock Reservation Entry")
+		sb_entry = frappe.qb.DocType("Serial and Batch Entry")
+		for location in pl.locations:
+			# Test - 2: Reserved Qty should be updated in Pick List Item.
+			self.assertEqual(location.stock_reserved_qty, location.qty)
+
+			if location.serial_and_batch_bundle:
+				picked_sb_entries = frappe.db.get_all(
+					"Serial and Batch Entry",
+					filters={"parent": location.serial_and_batch_bundle},
+					fields=["serial_no", "batch_no", "qty"],
+					as_list=True,
+				)
+				picked_sb_details: set[tuple] = set(picked_sb_entries)
+
+				reserved_sb_entries = (
+					frappe.qb.from_(sre)
+					.inner_join(sb_entry)
+					.on(sre.name == sb_entry.parent)
+					.select(sb_entry.serial_no, sb_entry.batch_no, sb_entry.qty)
+					.where(
+						(sre.voucher_type == "Sales Order")
+						& (sre.voucher_no == location.sales_order)
+						& (sre.voucher_detail_no == location.sales_order_item)
+						& (sre.against_pick_list == pl.name)
+						& (sre.against_pick_list_item == location.name)
+					)
+				).run(as_dict=True)
+				reserved_sb_details: set[tuple] = {
+					(sb_details.serial_no, sb_details.batch_no, -1 * sb_details.qty)
+					for sb_details in reserved_sb_entries
+				}
+
+				# Test - 3: Reserved Serial/Batch Nos should be equal to Picked Serial/Batch Nos.
+				self.assertSetEqual(picked_sb_details, reserved_sb_details)
+
 
 def create_items() -> dict:
-	from erpnext.stock.doctype.item.test_item import make_item
-
-	items_details = {
-		# Stock Items
-		"SR Item 1": {"is_stock_item": 1, "valuation_rate": 100},
-		"SR Item 2": {"is_stock_item": 1, "valuation_rate": 200, "stock_uom": "Kg"},
-		# Batch Items
-		"SR Batch Item 1": {
-			"is_stock_item": 1,
-			"valuation_rate": 100,
-			"has_batch_no": 1,
-			"create_new_batch": 1,
-			"batch_number_series": "SRBI-1-.#####.",
-		},
-		"SR Batch Item 2": {
+	items_properties = [
+		# SR STOCK ITEM
+		{"is_stock_item": 1, "valuation_rate": 100},
+		# SR SERIAL ITEM
+		{
 			"is_stock_item": 1,
 			"valuation_rate": 200,
+			"has_serial_no": 1,
+			"serial_no_series": "SRSI-.#####",
+		},
+		# SR BATCH ITEM
+		{
+			"is_stock_item": 1,
+			"valuation_rate": 300,
 			"has_batch_no": 1,
 			"create_new_batch": 1,
-			"batch_number_series": "SRBI-2-.#####.",
-			"stock_uom": "Kg",
+			"batch_number_series": "SRBI-.#####.",
 		},
-		# Serial Item
-		"SR Serial Item 1": {
+		# SR SERIAL AND BATCH ITEM
+		{
 			"is_stock_item": 1,
-			"valuation_rate": 100,
+			"valuation_rate": 400,
 			"has_serial_no": 1,
-			"serial_no_series": "SRSI-1-.#####",
-		},
-		# Batch and Serial Item
-		"SR Batch and Serial Item 1": {
-			"is_stock_item": 1,
-			"valuation_rate": 100,
+			"serial_no_series": "SRSBI-.#####",
 			"has_batch_no": 1,
 			"create_new_batch": 1,
-			"batch_number_series": "SRBSI-1-.#####.",
-			"has_serial_no": 1,
-			"serial_no_series": "SRBSI-1-.#####",
+			"batch_number_series": "SRSBI-.#####.",
 		},
-	}
+	]
 
 	items = {}
-	for item_code, properties in items_details.items():
-		items[item_code] = make_item(item_code, properties)
+	for properties in items_properties:
+		item = make_item(properties=properties)
+		items[item.name] = item
 
 	return items
 
@@ -313,7 +650,7 @@
 	doc = frappe.new_doc("Stock Reservation Entry")
 	args = frappe._dict(args)
 
-	doc.item_code = args.item_code or "SR Item 1"
+	doc.item_code = args.item_code
 	doc.warehouse = args.warehouse or "_Test Warehouse - _TC"
 	doc.voucher_type = args.voucher_type
 	doc.voucher_no = args.voucher_no
diff --git a/erpnext/stock/doctype/stock_settings/stock_settings.json b/erpnext/stock/doctype/stock_settings/stock_settings.json
index 9d67cf9..2052daa 100644
--- a/erpnext/stock/doctype/stock_settings/stock_settings.json
+++ b/erpnext/stock/doctype/stock_settings/stock_settings.json
@@ -18,6 +18,10 @@
   "auto_insert_price_list_rate_if_missing",
   "column_break_12",
   "update_existing_price_list_rate",
+  "conversion_factor_section",
+  "allow_to_edit_stock_uom_qty_for_sales",
+  "column_break_lznj",
+  "allow_to_edit_stock_uom_qty_for_purchase",
   "stock_validations_tab",
   "section_break_9",
   "over_delivery_receipt_allowance",
@@ -34,8 +38,10 @@
   "stock_reservation_tab",
   "enable_stock_reservation",
   "column_break_rx3e",
-  "reserve_stock_on_sales_order_submission",
+  "auto_reserve_stock_for_sales_order",
   "allow_partial_reservation",
+  "serial_and_batch_reservation_section",
+  "auto_reserve_serial_and_batch",
   "serial_and_batch_item_settings_tab",
   "section_break_7",
   "auto_create_serial_and_batch_bundle_for_outward",
@@ -59,7 +65,8 @@
   "stock_frozen_upto_days",
   "column_break_26",
   "role_allowed_to_create_edit_back_dated_transactions",
-  "stock_auth_role"
+  "stock_auth_role",
+  "section_break_plhx"
  ],
  "fields": [
   {
@@ -337,35 +344,24 @@
   },
   {
    "default": "0",
+   "description": "Allows to keep aside a specific quantity of inventory for a particular order.",
    "fieldname": "enable_stock_reservation",
    "fieldtype": "Check",
    "label": "Enable Stock Reservation"
   },
   {
-   "default": "0",
-   "depends_on": "eval: doc.enable_stock_reservation",
-   "description": "If enabled, <b>Stock Reservation Entries</b> will be created on submission of <b>Sales Order</b>",
-   "fieldname": "reserve_stock_on_sales_order_submission",
-   "fieldtype": "Check",
-   "label": "Reserve Stock on Sales Order Submission"
-  },
-  {
    "fieldname": "column_break_rx3e",
    "fieldtype": "Column Break"
   },
   {
    "default": "1",
    "depends_on": "eval: doc.enable_stock_reservation",
-   "description": "If enabled, <b>Partial Stock Reservation Entries</b> can be created. For example, If you have a <b>Sales Order</b> of 100 units and the Available Stock is 90 units then a Stock Reservation Entry will be created for 90 units. ",
+   "description": "If enabled, <b>Partial Stock Reservation Entries</b> can be created. For example, If you have a Sales Order of 100 units and the Available Stock is 90 units then a Stock Reservation Entry will be created for 90 units. ",
    "fieldname": "allow_partial_reservation",
    "fieldtype": "Check",
    "label": "Allow Partial Reservation"
   },
   {
-   "fieldname": "section_break_plhx",
-   "fieldtype": "Section Break"
-  },
-  {
    "fieldname": "column_break_mhzc",
    "fieldtype": "Column Break"
   },
@@ -383,6 +379,48 @@
    "fieldname": "auto_create_serial_and_batch_bundle_for_outward",
    "fieldtype": "Check",
    "label": "Auto Create Serial and Batch Bundle For Outward"
+  },
+  {
+   "default": "1",
+   "depends_on": "eval: doc.enable_stock_reservation",
+   "description": "If enabled, Serial and Batch Nos will be auto-reserved based on <b>Pick Serial / Batch Based On</b>",
+   "fieldname": "auto_reserve_serial_and_batch",
+   "fieldtype": "Check",
+   "label": "Auto Reserve Serial and Batch Nos"
+  },
+  {
+   "fieldname": "serial_and_batch_reservation_section",
+   "fieldtype": "Section Break",
+   "label": "Serial and Batch Reservation"
+  },
+  {
+   "default": "0",
+   "depends_on": "eval: doc.enable_stock_reservation",
+   "description": "If enabled, <b>Stock Reservation Entries</b> will be created on submission of <b>Sales Order</b>",
+   "fieldname": "auto_reserve_stock_for_sales_order",
+   "fieldtype": "Check",
+   "label": "Auto Reserve Stock for Sales Order"
+  },
+  {
+   "fieldname": "conversion_factor_section",
+   "fieldtype": "Section Break",
+   "label": "Stock UOM Quantity"
+  },
+  {
+   "fieldname": "column_break_lznj",
+   "fieldtype": "Column Break"
+  },
+  {
+   "default": "0",
+   "fieldname": "allow_to_edit_stock_uom_qty_for_sales",
+   "fieldtype": "Check",
+   "label": "Allow to Edit Stock UOM Qty for Sales Documents"
+  },
+  {
+   "default": "0",
+   "fieldname": "allow_to_edit_stock_uom_qty_for_purchase",
+   "fieldtype": "Check",
+   "label": "Allow to Edit Stock UOM Qty for Purchase Documents"
   }
  ],
  "icon": "icon-cog",
@@ -390,7 +428,7 @@
  "index_web_pages_for_search": 1,
  "issingle": 1,
  "links": [],
- "modified": "2023-05-29 15:10:54.959411",
+ "modified": "2023-10-01 14:22:36.136111",
  "modified_by": "Administrator",
  "module": "Stock",
  "name": "Stock Settings",
@@ -404,6 +442,10 @@
    "role": "Stock Manager",
    "share": 1,
    "write": 1
+  },
+  {
+   "read": 1,
+   "role": "Sales User"
   }
  ],
  "quick_entry": 1,
@@ -411,4 +453,4 @@
  "sort_order": "ASC",
  "states": [],
  "track_changes": 1
-}
\ No newline at end of file
+}
diff --git a/erpnext/stock/doctype/stock_settings/stock_settings.py b/erpnext/stock/doctype/stock_settings/stock_settings.py
index 3b6db64..c7afb10 100644
--- a/erpnext/stock/doctype/stock_settings/stock_settings.py
+++ b/erpnext/stock/doctype/stock_settings/stock_settings.py
@@ -56,6 +56,8 @@
 		self.validate_clean_description_html()
 		self.validate_pending_reposts()
 		self.validate_stock_reservation()
+		self.change_precision_for_for_sales()
+		self.change_precision_for_purchase()
 
 	def validate_warehouses(self):
 		warehouse_fields = ["default_warehouse", "sample_retention_warehouse"]
@@ -69,9 +71,9 @@
 				)
 
 	def cant_change_valuation_method(self):
-		db_valuation_method = frappe.db.get_single_value("Stock Settings", "valuation_method")
+		previous_valuation_method = self.get_doc_before_save().get("valuation_method")
 
-		if db_valuation_method and db_valuation_method != self.valuation_method:
+		if previous_valuation_method and previous_valuation_method != self.valuation_method:
 			# check if there are any stock ledger entries against items
 			# which does not have it's own valuation method
 			sle = frappe.db.sql(
@@ -108,13 +110,8 @@
 		if frappe.flags.in_test:
 			return
 
-		db_allow_negative_stock = frappe.db.get_single_value("Stock Settings", "allow_negative_stock")
-		db_enable_stock_reservation = frappe.db.get_single_value(
-			"Stock Settings", "enable_stock_reservation"
-		)
-
 		# Change in value of `Allow Negative Stock`
-		if db_allow_negative_stock != self.allow_negative_stock:
+		if self.has_value_changed("allow_negative_stock"):
 
 			# Disable -> Enable: Don't allow if `Stock Reservation` is enabled
 			if self.allow_negative_stock and self.enable_stock_reservation:
@@ -125,7 +122,7 @@
 				)
 
 		# Change in value of `Enable Stock Reservation`
-		if db_enable_stock_reservation != self.enable_stock_reservation:
+		if self.has_value_changed("enable_stock_reservation"):
 
 			# Disable -> Enable
 			if self.enable_stock_reservation:
@@ -172,6 +169,56 @@
 	def on_update(self):
 		self.toggle_warehouse_field_for_inter_warehouse_transfer()
 
+	def change_precision_for_for_sales(self):
+		doc_before_save = self.get_doc_before_save()
+		if doc_before_save and (
+			doc_before_save.allow_to_edit_stock_uom_qty_for_sales
+			== self.allow_to_edit_stock_uom_qty_for_sales
+		):
+			return
+
+		if self.allow_to_edit_stock_uom_qty_for_sales:
+			doctypes = ["Sales Order Item", "Sales Invoice Item", "Delivery Note Item", "Quotation Item"]
+			self.make_property_setter_for_precision(doctypes)
+
+	def change_precision_for_purchase(self):
+		doc_before_save = self.get_doc_before_save()
+		if doc_before_save and (
+			doc_before_save.allow_to_edit_stock_uom_qty_for_purchase
+			== self.allow_to_edit_stock_uom_qty_for_purchase
+		):
+			return
+
+		if self.allow_to_edit_stock_uom_qty_for_purchase:
+			doctypes = [
+				"Purchase Order Item",
+				"Purchase Receipt Item",
+				"Purchase Invoice Item",
+				"Request for Quotation Item",
+				"Supplier Quotation Item",
+				"Material Request Item",
+			]
+			self.make_property_setter_for_precision(doctypes)
+
+	@staticmethod
+	def make_property_setter_for_precision(doctypes):
+		for doctype in doctypes:
+			if property_name := frappe.db.exists(
+				"Property Setter",
+				{"doc_type": doctype, "field_name": "conversion_factor", "property": "precision"},
+			):
+				frappe.db.set_value("Property Setter", property_name, "value", 9)
+				continue
+
+			make_property_setter(
+				doctype,
+				"conversion_factor",
+				"precision",
+				9,
+				"Float",
+				validate_fields_for_doctype=False,
+			)
+
 	def toggle_warehouse_field_for_inter_warehouse_transfer(self):
 		make_property_setter(
 			"Sales Invoice Item",
diff --git a/erpnext/stock/get_item_details.py b/erpnext/stock/get_item_details.py
index 4f85ac0..a6ab63b 100644
--- a/erpnext/stock/get_item_details.py
+++ b/erpnext/stock/get_item_details.py
@@ -696,7 +696,11 @@
 def get_default_deferred_account(args, item, fieldname=None):
 	if item.get("enable_deferred_revenue") or item.get("enable_deferred_expense"):
 		return (
-			item.get(fieldname)
+			frappe.get_cached_value(
+				"Item Default",
+				{"parent": args.item_code, "company": args.get("company")},
+				fieldname,
+			)
 			or args.get(fieldname)
 			or frappe.get_cached_value("Company", args.company, "default_" + fieldname)
 		)
@@ -1288,6 +1292,9 @@
 
 @frappe.whitelist()
 def get_valuation_rate(item_code, company, warehouse=None):
+	if frappe.get_cached_value("Warehouse", warehouse, "is_group"):
+		return {"valuation_rate": 0.0}
+
 	item = get_item_defaults(item_code, company)
 	item_group = get_item_group_defaults(item_code, company)
 	brand = get_brand_defaults(item_code, company)
diff --git a/erpnext/regional/france/__init__.py b/erpnext/stock/report/reserved_stock/__init__.py
similarity index 100%
copy from erpnext/regional/france/__init__.py
copy to erpnext/stock/report/reserved_stock/__init__.py
diff --git a/erpnext/stock/report/reserved_stock/reserved_stock.js b/erpnext/stock/report/reserved_stock/reserved_stock.js
new file mode 100644
index 0000000..2199f52
--- /dev/null
+++ b/erpnext/stock/report/reserved_stock/reserved_stock.js
@@ -0,0 +1,170 @@
+// Copyright (c) 2023, Frappe Technologies Pvt. Ltd. and contributors
+// For license information, please see license.txt
+
+frappe.query_reports["Reserved Stock"] = {
+	filters: [
+		{
+			fieldname: "company",
+			label: __("Company"),
+			fieldtype: "Link",
+			options: "Company",
+			reqd: 1,
+			default: frappe.defaults.get_user_default("Company"),
+		},
+		{
+			fieldname: "from_date",
+			label: __("From Date"),
+			fieldtype: "Date",
+			default: frappe.datetime.add_months(
+				frappe.datetime.get_today(),
+				-1
+			),
+			reqd: 1,
+		},
+		{
+			fieldname: "to_date",
+			label: __("To Date"),
+			fieldtype: "Date",
+			default: frappe.datetime.get_today(),
+			reqd: 1,
+		},
+		{
+			fieldname: "item_code",
+			label: __("Item"),
+			fieldtype: "Link",
+			options: "Item",
+			get_query: () => ({
+				filters: {
+					is_stock_item: 1,
+				},
+			}),
+		},
+		{
+			fieldname: "warehouse",
+			label: __("Warehouse"),
+			fieldtype: "Link",
+			options: "Warehouse",
+			get_query: () => ({
+				filters: {
+					is_group: 0,
+					company: frappe.query_report.get_filter_value("company"),
+				},
+			}),
+		},
+		{
+			fieldname: "stock_reservation_entry",
+			label: __("Stock Reservation Entry"),
+			fieldtype: "Link",
+			options: "Stock Reservation Entry",
+			get_query: () => ({
+				filters: {
+					docstatus: 1,
+					company: frappe.query_report.get_filter_value("company"),
+				},
+			}),
+		},
+		{
+			fieldname: "voucher_type",
+			label: __("Voucher Type"),
+			fieldtype: "Link",
+			options: "DocType",
+			default: "Sales Order",
+			get_query: () => ({
+				filters: {
+					name: ["in", ["Sales Order"]],
+				}
+			}),
+		},
+		{
+			fieldname: "voucher_no",
+			label: __("Voucher No"),
+			fieldtype: "Dynamic Link",
+			options: "voucher_type",
+			get_query: () => ({
+				filters: {
+					docstatus: 1,
+					company: frappe.query_report.get_filter_value("company"),
+				},
+			}),
+			get_options: function () {
+				return frappe.query_report.get_filter_value("voucher_type");
+			},
+		},
+		{
+			fieldname: "against_pick_list",
+			label: __("Against Pick List"),
+			fieldtype: "Link",
+			options: "Pick List",
+			get_query: () => ({
+				filters: {
+					docstatus: 1,
+					company: frappe.query_report.get_filter_value("company"),
+				},
+			}),
+		},
+		{
+			fieldname: "reservation_based_on",
+			label: __("Reservation Based On"),
+			fieldtype: "Select",
+			options: ["", "Qty", "Serial and Batch"],
+		},
+		{
+			fieldname: "status",
+			label: __("Status"),
+			fieldtype: "Select",
+			options: [
+				"",
+				"Partially Reserved",
+				"Reserved",
+				"Partially Delivered",
+				"Delivered",
+			],
+		},
+		{
+			fieldname: "project",
+			label: __("Project"),
+			fieldtype: "Link",
+			options: "Project",
+			get_query: () => ({
+				filters: {
+					company: frappe.query_report.get_filter_value("company"),
+				},
+			}),
+		},
+	],
+	formatter: (value, row, column, data, default_formatter) => {
+		value = default_formatter(value, row, column, data);
+
+		if (column.fieldname == "status") {
+			switch (data.status) {
+				case "Partially Reserved":
+					value = "<span style='color:orange'>" + value + "</span>";
+					break;
+				case "Reserved":
+					value = "<span style='color:blue'>" + value + "</span>";
+					break;
+				case "Partially Delivered":
+					value = "<span style='color:purple'>" + value + "</span>";
+					break;
+				case "Delivered":
+					value = "<span style='color:green'>" + value + "</span>";
+					break;
+			}
+		}
+		else if (column.fieldname == "delivered_qty") {
+			if (data.delivered_qty > 0) {
+				if (data.reserved_qty > data.delivered_qty) {
+					value = "<span style='color:blue'>" + value + "</span>";
+				}
+				else {
+					value = "<span style='color:green'>" + value + "</span>";
+				}
+			}
+			else {
+				value = "<span style='color:red'>" + value + "</span>";
+			}
+		}
+
+		return value;
+	},
+};
diff --git a/erpnext/stock/report/reserved_stock/reserved_stock.json b/erpnext/stock/report/reserved_stock/reserved_stock.json
new file mode 100644
index 0000000..17b916a
--- /dev/null
+++ b/erpnext/stock/report/reserved_stock/reserved_stock.json
@@ -0,0 +1,26 @@
+{
+ "add_total_row": 0,
+ "columns": [],
+ "creation": "2023-08-02 22:11:19.439620",
+ "disabled": 0,
+ "docstatus": 0,
+ "doctype": "Report",
+ "filters": [],
+ "idx": 0,
+ "is_standard": "Yes",
+ "letterhead": null,
+ "modified": "2023-08-03 12:46:33.780222",
+ "modified_by": "Administrator",
+ "module": "Stock",
+ "name": "Reserved Stock",
+ "owner": "Administrator",
+ "prepared_report": 0,
+ "ref_doctype": "Stock Reservation Entry",
+ "report_name": "Reserved Stock",
+ "report_type": "Script Report",
+ "roles": [
+  {
+   "role": "System Manager"
+  }
+ ]
+}
\ No newline at end of file
diff --git a/erpnext/stock/report/reserved_stock/reserved_stock.py b/erpnext/stock/report/reserved_stock/reserved_stock.py
new file mode 100644
index 0000000..d93ee1c
--- /dev/null
+++ b/erpnext/stock/report/reserved_stock/reserved_stock.py
@@ -0,0 +1,191 @@
+# Copyright (c) 2023, Frappe Technologies Pvt. Ltd. and contributors
+# For license information, please see license.txt
+
+import frappe
+from frappe import _
+from frappe.query_builder.functions import Date
+
+
+def execute(filters=None):
+	columns, data = [], []
+
+	validate_filters(filters)
+
+	columns = get_columns()
+	data = get_data(filters)
+
+	return columns, data
+
+
+def validate_filters(filters):
+	if not filters:
+		frappe.throw(_("Please set filters"))
+
+	for field in ["company", "from_date", "to_date"]:
+		if not filters.get(field):
+			frappe.throw(_("Please set {0}").format(field))
+
+	if filters.get("from_date") > filters.get("to_date"):
+		frappe.throw(_("From Date cannot be greater than To Date"))
+
+
+def get_data(filters):
+	sre = frappe.qb.DocType("Stock Reservation Entry")
+	query = (
+		frappe.qb.from_(sre)
+		.select(
+			sre.creation,
+			sre.warehouse,
+			sre.item_code,
+			sre.stock_uom,
+			sre.voucher_qty,
+			sre.reserved_qty,
+			sre.delivered_qty,
+			(sre.available_qty - sre.reserved_qty).as_("available_qty"),
+			sre.voucher_type,
+			sre.voucher_no,
+			sre.against_pick_list,
+			sre.name.as_("stock_reservation_entry"),
+			sre.status,
+			sre.project,
+			sre.company,
+		)
+		.where(
+			(sre.docstatus == 1)
+			& (sre.company == filters.get("company"))
+			& (
+				(Date(sre.creation) >= filters.get("from_date"))
+				& (Date(sre.creation) <= filters.get("to_date"))
+			)
+		)
+	)
+
+	for field in [
+		"item_code",
+		"warehouse",
+		"voucher_type",
+		"voucher_no",
+		"against_pick_list",
+		"reservation_based_on",
+		"status",
+		"project",
+	]:
+		if value := filters.get(field):
+			query = query.where((sre[field] == value))
+
+	if value := filters.get("stock_reservation_entry"):
+		query = query.where((sre.name == value))
+
+	data = query.run(as_list=True)
+
+	return data
+
+
+def get_columns():
+	columns = [
+		{
+			"label": _("Date"),
+			"fieldname": "date",
+			"fieldtype": "Datetime",
+			"width": 150,
+		},
+		{
+			"fieldname": "warehouse",
+			"label": _("Warehouse"),
+			"fieldtype": "Link",
+			"options": "Warehouse",
+			"width": 150,
+		},
+		{
+			"fieldname": "item_code",
+			"label": _("Item"),
+			"fieldtype": "Link",
+			"options": "Item",
+			"width": 100,
+		},
+		{
+			"fieldname": "stock_uom",
+			"label": _("Stock UOM"),
+			"fieldtype": "Link",
+			"options": "UOM",
+			"width": 100,
+		},
+		{
+			"fieldname": "voucher_qty",
+			"label": _("Voucher Qty"),
+			"fieldtype": "Float",
+			"width": 110,
+			"convertible": "qty",
+		},
+		{
+			"fieldname": "reserved_qty",
+			"label": _("Reserved Qty"),
+			"fieldtype": "Float",
+			"width": 110,
+			"convertible": "qty",
+		},
+		{
+			"fieldname": "delivered_qty",
+			"label": _("Delivered Qty"),
+			"fieldtype": "Float",
+			"width": 110,
+			"convertible": "qty",
+		},
+		{
+			"fieldname": "available_qty",
+			"label": _("Available Qty to Reserve"),
+			"fieldtype": "Float",
+			"width": 120,
+			"convertible": "qty",
+		},
+		{
+			"fieldname": "voucher_type",
+			"label": _("Voucher Type"),
+			"fieldtype": "Data",
+			"options": "Warehouse",
+			"width": 110,
+		},
+		{
+			"fieldname": "voucher_no",
+			"label": _("Voucher No"),
+			"fieldtype": "Dynamic Link",
+			"options": "voucher_type",
+			"width": 120,
+		},
+		{
+			"fieldname": "against_pick_list",
+			"label": _("Against Pick List"),
+			"fieldtype": "Link",
+			"options": "Pick List",
+			"width": 130,
+		},
+		{
+			"fieldname": "stock_reservation_entry",
+			"label": _("Stock Reservation Entry"),
+			"fieldtype": "Link",
+			"options": "Stock Reservation Entry",
+			"width": 150,
+		},
+		{
+			"fieldname": "status",
+			"label": _("Status"),
+			"fieldtype": "Data",
+			"width": 120,
+		},
+		{
+			"fieldname": "project",
+			"label": _("Project"),
+			"fieldtype": "Link",
+			"options": "Project",
+			"width": 100,
+		},
+		{
+			"fieldname": "company",
+			"label": _("Company"),
+			"fieldtype": "Link",
+			"options": "Company",
+			"width": 110,
+		},
+	]
+
+	return columns
diff --git a/erpnext/stock/report/reserved_stock/test_reserved_stock.py b/erpnext/stock/report/reserved_stock/test_reserved_stock.py
new file mode 100644
index 0000000..6ef89f9
--- /dev/null
+++ b/erpnext/stock/report/reserved_stock/test_reserved_stock.py
@@ -0,0 +1,54 @@
+# Copyright (c) 2023, Frappe Technologies Pvt. Ltd. and Contributors
+# See license.txt
+from random import randint
+
+import frappe
+from frappe.tests.utils import FrappeTestCase, change_settings
+from frappe.utils.data import today
+
+from erpnext.selling.doctype.sales_order.test_sales_order import make_sales_order
+from erpnext.stock.doctype.stock_reservation_entry.test_stock_reservation_entry import (
+	cancel_all_stock_reservation_entries,
+	create_items,
+	create_material_receipt,
+)
+from erpnext.stock.report.reserved_stock.reserved_stock import get_data as reserved_stock_report
+
+
+class TestReservedStock(FrappeTestCase):
+	def setUp(self) -> None:
+		super().setUp()
+		self.stock_qty = 100
+		self.warehouse = "_Test Warehouse - _TC"
+
+	def tearDown(self) -> None:
+		cancel_all_stock_reservation_entries()
+		return super().tearDown()
+
+	@change_settings(
+		"Stock Settings",
+		{
+			"allow_negative_stock": 0,
+			"enable_stock_reservation": 1,
+			"auto_reserve_serial_and_batch": 1,
+			"pick_serial_and_batch_based_on": "FIFO",
+		},
+	)
+	def test_reserved_stock_report(self):
+		items_details = create_items()
+		create_material_receipt(items_details, self.warehouse, qty=self.stock_qty)
+
+		for item_code, properties in items_details.items():
+			so = make_sales_order(
+				item_code=item_code, qty=randint(11, 100), warehouse=self.warehouse, uom=properties.stock_uom
+			)
+			so.create_stock_reservation_entries()
+
+		data = reserved_stock_report(
+			filters={
+				"company": so.company,
+				"from_date": today(),
+				"to_date": today(),
+			}
+		)
+		self.assertEqual(len(data), len(items_details))
diff --git a/erpnext/stock/report/stock_balance/stock_balance.js b/erpnext/stock/report/stock_balance/stock_balance.js
index 33ed955..6de5f00 100644
--- a/erpnext/stock/report/stock_balance/stock_balance.js
+++ b/erpnext/stock/report/stock_balance/stock_balance.js
@@ -72,6 +72,14 @@
 			"options": "Warehouse Type"
 		},
 		{
+			"fieldname": "valuation_field_type",
+			"label": __("Valuation Field Type"),
+			"fieldtype": "Select",
+			"width": "80",
+			"options": "Currency\nFloat",
+			"default": "Currency"
+		},
+		{
 			"fieldname":"include_uom",
 			"label": __("Include UOM"),
 			"fieldtype": "Link",
diff --git a/erpnext/stock/report/stock_balance/stock_balance.py b/erpnext/stock/report/stock_balance/stock_balance.py
index d60e9b5..a59f9de 100644
--- a/erpnext/stock/report/stock_balance/stock_balance.py
+++ b/erpnext/stock/report/stock_balance/stock_balance.py
@@ -165,7 +165,7 @@
 
 	def get_sre_reserved_qty_details(self) -> dict:
 		from erpnext.stock.doctype.stock_reservation_entry.stock_reservation_entry import (
-			get_sre_reserved_qty_details_for_item_and_warehouse as get_reserved_qty_details,
+			get_sre_reserved_qty_for_items_and_warehouses as get_reserved_qty_details,
 		)
 
 		item_code_list, warehouse_list = [], []
@@ -339,8 +339,10 @@
 		for field in ["item_code", "brand"]:
 			if not self.filters.get(field):
 				continue
-
-			query = query.where(item_table[field] == self.filters.get(field))
+			elif field == "item_code":
+				query = query.where(item_table.name == self.filters.get(field))
+			else:
+				query = query.where(item_table[field] == self.filters.get(field))
 
 		return query
 
@@ -446,9 +448,12 @@
 				{
 					"label": _("Valuation Rate"),
 					"fieldname": "val_rate",
-					"fieldtype": "Float",
+					"fieldtype": self.filters.valuation_field_type or "Currency",
 					"width": 90,
 					"convertible": "rate",
+					"options": "Company:company:default_currency"
+					if self.filters.valuation_field_type == "Currency"
+					else None,
 				},
 				{
 					"label": _("Reserved Stock"),
diff --git a/erpnext/stock/report/stock_ledger/stock_ledger.js b/erpnext/stock/report/stock_ledger/stock_ledger.js
index 0def161..b00b422 100644
--- a/erpnext/stock/report/stock_ledger/stock_ledger.js
+++ b/erpnext/stock/report/stock_ledger/stock_ledger.js
@@ -82,7 +82,15 @@
 			"label": __("Include UOM"),
 			"fieldtype": "Link",
 			"options": "UOM"
-		}
+		},
+		{
+			"fieldname": "valuation_field_type",
+			"label": __("Valuation Field Type"),
+			"fieldtype": "Select",
+			"width": "80",
+			"options": "Currency\nFloat",
+			"default": "Currency"
+		},
 	],
 	"formatter": function (value, row, column, data, default_formatter) {
 		value = default_formatter(value, row, column, data);
diff --git a/erpnext/stock/report/stock_ledger/stock_ledger.py b/erpnext/stock/report/stock_ledger/stock_ledger.py
index ed28ed3..eeef396 100644
--- a/erpnext/stock/report/stock_ledger/stock_ledger.py
+++ b/erpnext/stock/report/stock_ledger/stock_ledger.py
@@ -196,17 +196,21 @@
 			{
 				"label": _("Avg Rate (Balance Stock)"),
 				"fieldname": "valuation_rate",
-				"fieldtype": "Float",
+				"fieldtype": filters.valuation_field_type,
 				"width": 180,
-				"options": "Company:company:default_currency",
+				"options": "Company:company:default_currency"
+				if filters.valuation_field_type == "Currency"
+				else None,
 				"convertible": "rate",
 			},
 			{
 				"label": _("Valuation Rate"),
 				"fieldname": "in_out_rate",
-				"fieldtype": "Float",
+				"fieldtype": filters.valuation_field_type,
 				"width": 140,
-				"options": "Company:company:default_currency",
+				"options": "Company:company:default_currency"
+				if filters.valuation_field_type == "Currency"
+				else None,
 				"convertible": "rate",
 			},
 			{
diff --git a/erpnext/stock/report/stock_ledger_invariant_check/stock_ledger_invariant_check.js b/erpnext/stock/report/stock_ledger_invariant_check/stock_ledger_invariant_check.js
index 3447e0a..3f67bff 100644
--- a/erpnext/stock/report/stock_ledger_invariant_check/stock_ledger_invariant_check.js
+++ b/erpnext/stock/report/stock_ledger_invariant_check/stock_ledger_invariant_check.js
@@ -2,24 +2,24 @@
 // For license information, please see license.txt
 
 
-const DIFFERNCE_FIELD_NAMES = [
-	"difference_in_qty",
-	"fifo_qty_diff",
-	"fifo_value_diff",
-	"fifo_valuation_diff",
-	"valuation_diff",
-	"fifo_difference_diff",
-	"diff_value_diff"
+const DIFFERENCE_FIELD_NAMES = [
+	'difference_in_qty',
+	'fifo_qty_diff',
+	'fifo_value_diff',
+	'fifo_valuation_diff',
+	'valuation_diff',
+	'fifo_difference_diff',
+	'diff_value_diff'
 ];
 
-frappe.query_reports["Stock Ledger Invariant Check"] = {
-	"filters": [
+frappe.query_reports['Stock Ledger Invariant Check'] = {
+	'filters': [
 		{
-			"fieldname": "item_code",
-			"fieldtype": "Link",
-			"label": "Item",
-			"mandatory": 1,
-			"options": "Item",
+			'fieldname': 'item_code',
+			'fieldtype': 'Link',
+			'label': 'Item',
+			'mandatory': 1,
+			'options': 'Item',
 			get_query: function() {
 				return {
 					filters: {is_stock_item: 1, has_serial_no: 0}
@@ -27,18 +27,61 @@
 			}
 		},
 		{
-			"fieldname": "warehouse",
-			"fieldtype": "Link",
-			"label": "Warehouse",
-			"mandatory": 1,
-			"options": "Warehouse",
+			'fieldname': 'warehouse',
+			'fieldtype': 'Link',
+			'label': 'Warehouse',
+			'mandatory': 1,
+			'options': 'Warehouse',
 		}
 	],
+
 	formatter (value, row, column, data, default_formatter) {
 		value = default_formatter(value, row, column, data);
-		if (DIFFERNCE_FIELD_NAMES.includes(column.fieldname) && Math.abs(data[column.fieldname]) > 0.001) {
-			value = "<span style='color:red'>" + value + "</span>";
+		if (DIFFERENCE_FIELD_NAMES.includes(column.fieldname) && Math.abs(data[column.fieldname]) > 0.001) {
+			value = '<span style="color:red">' + value + '</span>';
 		}
 		return value;
 	},
+
+	get_datatable_options(options) {
+		return Object.assign(options, {
+			checkboxColumn: true,
+		});
+	},
+
+	onload(report) {
+		report.page.add_inner_button(__('Create Reposting Entry'), () => {
+			let message = `
+				<div>
+					<p>
+						Reposting Entry will change the value of
+						accounts Stock In Hand, and Stock Expenses
+						in the Trial Balance report and will also change
+						the Balance Value in the Stock Balance report.
+					</p>
+					<p>Are you sure you want to create a Reposting Entry?</p>
+				</div>`;
+			let indexes = frappe.query_report.datatable.rowmanager.getCheckedRows();
+			let selected_rows = indexes.map(i => frappe.query_report.data[i]);
+
+			if (!selected_rows.length) {
+				frappe.throw(__('Please select a row to create a Reposting Entry'));
+			}
+			else if (selected_rows.length > 1) {
+				frappe.throw(__('Please select only one row to create a Reposting Entry'));
+			}
+			else {
+				frappe.confirm(__(message), () => {
+					frappe.call({
+						method: 'erpnext.stock.report.stock_ledger_invariant_check.stock_ledger_invariant_check.create_reposting_entries',
+						args: {
+							rows: selected_rows,
+							item_code: frappe.query_report.get_filter_values().item_code,
+							warehouse: frappe.query_report.get_filter_values().warehouse,
+						}
+					});
+				});
+			}
+		});
+	},
 };
diff --git a/erpnext/stock/report/stock_ledger_invariant_check/stock_ledger_invariant_check.py b/erpnext/stock/report/stock_ledger_invariant_check/stock_ledger_invariant_check.py
index ed0e2fc..ca15afe 100644
--- a/erpnext/stock/report/stock_ledger_invariant_check/stock_ledger_invariant_check.py
+++ b/erpnext/stock/report/stock_ledger_invariant_check/stock_ledger_invariant_check.py
@@ -5,6 +5,7 @@
 
 import frappe
 from frappe import _
+from frappe.utils import get_link_to_form, parse_json
 
 SLE_FIELDS = (
 	"name",
@@ -185,7 +186,7 @@
 		{
 			"fieldname": "fifo_queue_qty",
 			"fieldtype": "Float",
-			"label": _("(C) Total qty in queue"),
+			"label": _("(C) Total Qty in Queue"),
 		},
 		{
 			"fieldname": "fifo_qty_diff",
@@ -210,51 +211,83 @@
 		{
 			"fieldname": "stock_value_difference",
 			"fieldtype": "Float",
-			"label": _("(F) Stock Value Difference"),
+			"label": _("(F) Change in Stock Value"),
 		},
 		{
 			"fieldname": "stock_value_from_diff",
 			"fieldtype": "Float",
-			"label": _("Balance Stock Value using (F)"),
+			"label": _("(G) Sum of Change in Stock Value"),
 		},
 		{
 			"fieldname": "diff_value_diff",
 			"fieldtype": "Float",
-			"label": _("K - D"),
+			"label": _("G - D"),
 		},
 		{
 			"fieldname": "fifo_stock_diff",
 			"fieldtype": "Float",
-			"label": _("(G) Stock Value difference (FIFO queue)"),
+			"label": _("(H) Change in Stock Value (FIFO Queue)"),
 		},
 		{
 			"fieldname": "fifo_difference_diff",
 			"fieldtype": "Float",
-			"label": _("F - G"),
+			"label": _("H - F"),
 		},
 		{
 			"fieldname": "valuation_rate",
 			"fieldtype": "Float",
-			"label": _("(H) Valuation Rate"),
+			"label": _("(I) Valuation Rate"),
 		},
 		{
 			"fieldname": "fifo_valuation_rate",
 			"fieldtype": "Float",
-			"label": _("(I) Valuation Rate as per FIFO"),
+			"label": _("(J) Valuation Rate as per FIFO"),
 		},
 		{
 			"fieldname": "fifo_valuation_diff",
 			"fieldtype": "Float",
-			"label": _("H - I"),
+			"label": _("I - J"),
 		},
 		{
 			"fieldname": "balance_value_by_qty",
 			"fieldtype": "Float",
-			"label": _("(J) Valuation = Value (D) ÷ Qty (A)"),
+			"label": _("(K) Valuation = Value (D) ÷ Qty (A)"),
 		},
 		{
 			"fieldname": "valuation_diff",
 			"fieldtype": "Float",
-			"label": _("H - J"),
+			"label": _("I - K"),
 		},
 	]
+
+
+@frappe.whitelist()
+def create_reposting_entries(rows, item_code=None, warehouse=None):
+	if isinstance(rows, str):
+		rows = parse_json(rows)
+
+	entries = []
+	for row in rows:
+		row = frappe._dict(row)
+
+		try:
+			doc = frappe.get_doc(
+				{
+					"doctype": "Repost Item Valuation",
+					"based_on": "Item and Warehouse",
+					"status": "Queued",
+					"item_code": item_code or row.item_code,
+					"warehouse": warehouse or row.warehouse,
+					"posting_date": row.posting_date,
+					"posting_time": row.posting_time,
+					"allow_nagative_stock": 1,
+				}
+			).submit()
+
+			entries.append(get_link_to_form("Repost Item Valuation", doc.name))
+		except frappe.DuplicateEntryError:
+			continue
+
+	if entries:
+		entries = ", ".join(entries)
+		frappe.msgprint(_("Reposting entries created: {0}").format(entries))
diff --git a/erpnext/regional/france/__init__.py b/erpnext/stock/report/stock_ledger_variance/__init__.py
similarity index 100%
rename from erpnext/regional/france/__init__.py
rename to erpnext/stock/report/stock_ledger_variance/__init__.py
diff --git a/erpnext/stock/report/stock_ledger_variance/stock_ledger_variance.js b/erpnext/stock/report/stock_ledger_variance/stock_ledger_variance.js
new file mode 100644
index 0000000..b1e4a74
--- /dev/null
+++ b/erpnext/stock/report/stock_ledger_variance/stock_ledger_variance.js
@@ -0,0 +1,101 @@
+// Copyright (c) 2023, Frappe Technologies Pvt. Ltd. and contributors
+// For license information, please see license.txt
+
+const DIFFERENCE_FIELD_NAMES = [
+	"difference_in_qty",
+	"fifo_qty_diff",
+	"fifo_value_diff",
+	"fifo_valuation_diff",
+	"valuation_diff",
+	"fifo_difference_diff",
+	"diff_value_diff"
+];
+
+frappe.query_reports["Stock Ledger Variance"] = {
+	"filters": [
+		{
+			"fieldname": "item_code",
+			"fieldtype": "Link",
+			"label": "Item",
+			"options": "Item",
+			get_query: function() {
+				return {
+					filters: {is_stock_item: 1, has_serial_no: 0}
+				}
+			}
+		},
+		{
+			"fieldname": "warehouse",
+			"fieldtype": "Link",
+			"label": "Warehouse",
+			"options": "Warehouse",
+			get_query: function() {
+				return {
+					filters: {is_group: 0, disabled: 0}
+				}
+			}
+		},
+		{
+			"fieldname": "difference_in",
+			"fieldtype": "Select",
+			"label": "Difference In",
+			"options": [
+				"",
+				"Qty",
+				"Value",
+				"Valuation",
+			],
+		},
+		{
+			"fieldname": "include_disabled",
+			"fieldtype": "Check",
+			"label": "Include Disabled",
+		}
+	],
+
+	formatter (value, row, column, data, default_formatter) {
+		value = default_formatter(value, row, column, data);
+
+		if (DIFFERENCE_FIELD_NAMES.includes(column.fieldname) && Math.abs(data[column.fieldname]) > 0.001) {
+			value = "<span style='color:red'>" + value + "</span>";
+		}
+
+		return value;
+	},
+
+	get_datatable_options(options) {
+		return Object.assign(options, {
+			checkboxColumn: true,
+		});
+	},
+
+	onload(report) {
+		report.page.add_inner_button(__('Create Reposting Entries'), () => {
+			let message = `
+				<div>
+					<p>
+						Reposting Entries will change the value of
+						accounts Stock In Hand, and Stock Expenses
+						in the Trial Balance report and will also change
+						the Balance Value in the Stock Balance report.
+					</p>
+					<p>Are you sure you want to create Reposting Entries?</p>
+				</div>`;
+			let indexes = frappe.query_report.datatable.rowmanager.getCheckedRows();
+			let selected_rows = indexes.map(i => frappe.query_report.data[i]);
+
+			if (!selected_rows.length) {
+				frappe.throw(__("Please select rows to create Reposting Entries"));
+			}
+
+			frappe.confirm(__(message), () => {
+				frappe.call({
+					method: 'erpnext.stock.report.stock_ledger_invariant_check.stock_ledger_invariant_check.create_reposting_entries',
+					args: {
+						rows: selected_rows,
+					}
+				});
+			});
+		});
+	},
+};
diff --git a/erpnext/stock/report/stock_ledger_variance/stock_ledger_variance.json b/erpnext/stock/report/stock_ledger_variance/stock_ledger_variance.json
new file mode 100644
index 0000000..f36ed1b
--- /dev/null
+++ b/erpnext/stock/report/stock_ledger_variance/stock_ledger_variance.json
@@ -0,0 +1,22 @@
+{
+ "add_total_row": 0,
+ "columns": [],
+ "creation": "2023-09-20 10:44:19.414449",
+ "disabled": 0,
+ "docstatus": 0,
+ "doctype": "Report",
+ "filters": [],
+ "idx": 0,
+ "is_standard": "Yes",
+ "letterhead": null,
+ "modified": "2023-09-20 10:44:19.414449",
+ "modified_by": "Administrator",
+ "module": "Stock",
+ "name": "Stock Ledger Variance",
+ "owner": "Administrator",
+ "prepared_report": 0,
+ "ref_doctype": "Stock Ledger Entry",
+ "report_name": "Stock Ledger Variance",
+ "report_type": "Script Report",
+ "roles": []
+}
\ No newline at end of file
diff --git a/erpnext/stock/report/stock_ledger_variance/stock_ledger_variance.py b/erpnext/stock/report/stock_ledger_variance/stock_ledger_variance.py
new file mode 100644
index 0000000..732f108
--- /dev/null
+++ b/erpnext/stock/report/stock_ledger_variance/stock_ledger_variance.py
@@ -0,0 +1,279 @@
+# Copyright (c) 2023, Frappe Technologies Pvt. Ltd. and contributors
+# For license information, please see license.txt
+
+import frappe
+from frappe import _
+from frappe.utils import cint, flt
+
+from erpnext.stock.report.stock_ledger_invariant_check.stock_ledger_invariant_check import (
+	get_data as stock_ledger_invariant_check,
+)
+
+
+def execute(filters=None):
+	columns, data = [], []
+
+	filters = frappe._dict(filters or {})
+	columns = get_columns()
+	data = get_data(filters)
+
+	return columns, data
+
+
+def get_columns():
+	return [
+		{
+			"fieldname": "name",
+			"fieldtype": "Link",
+			"label": _("Stock Ledger Entry"),
+			"options": "Stock Ledger Entry",
+		},
+		{
+			"fieldname": "posting_date",
+			"fieldtype": "Data",
+			"label": _("Posting Date"),
+		},
+		{
+			"fieldname": "posting_time",
+			"fieldtype": "Data",
+			"label": _("Posting Time"),
+		},
+		{
+			"fieldname": "creation",
+			"fieldtype": "Data",
+			"label": _("Creation"),
+		},
+		{
+			"fieldname": "item_code",
+			"fieldtype": "Link",
+			"label": _("Item"),
+			"options": "Item",
+		},
+		{
+			"fieldname": "warehouse",
+			"fieldtype": "Link",
+			"label": _("Warehouse"),
+			"options": "Warehouse",
+		},
+		{
+			"fieldname": "voucher_type",
+			"fieldtype": "Link",
+			"label": _("Voucher Type"),
+			"options": "DocType",
+		},
+		{
+			"fieldname": "voucher_no",
+			"fieldtype": "Dynamic Link",
+			"label": _("Voucher No"),
+			"options": "voucher_type",
+		},
+		{
+			"fieldname": "batch_no",
+			"fieldtype": "Link",
+			"label": _("Batch"),
+			"options": "Batch",
+		},
+		{
+			"fieldname": "use_batchwise_valuation",
+			"fieldtype": "Check",
+			"label": _("Batchwise Valuation"),
+		},
+		{
+			"fieldname": "actual_qty",
+			"fieldtype": "Float",
+			"label": _("Qty Change"),
+		},
+		{
+			"fieldname": "incoming_rate",
+			"fieldtype": "Float",
+			"label": _("Incoming Rate"),
+		},
+		{
+			"fieldname": "consumption_rate",
+			"fieldtype": "Float",
+			"label": _("Consumption Rate"),
+		},
+		{
+			"fieldname": "qty_after_transaction",
+			"fieldtype": "Float",
+			"label": _("(A) Qty After Transaction"),
+		},
+		{
+			"fieldname": "expected_qty_after_transaction",
+			"fieldtype": "Float",
+			"label": _("(B) Expected Qty After Transaction"),
+		},
+		{
+			"fieldname": "difference_in_qty",
+			"fieldtype": "Float",
+			"label": _("A - B"),
+		},
+		{
+			"fieldname": "stock_queue",
+			"fieldtype": "Data",
+			"label": _("FIFO/LIFO Queue"),
+		},
+		{
+			"fieldname": "fifo_queue_qty",
+			"fieldtype": "Float",
+			"label": _("(C) Total Qty in Queue"),
+		},
+		{
+			"fieldname": "fifo_qty_diff",
+			"fieldtype": "Float",
+			"label": _("A - C"),
+		},
+		{
+			"fieldname": "stock_value",
+			"fieldtype": "Float",
+			"label": _("(D) Balance Stock Value"),
+		},
+		{
+			"fieldname": "fifo_stock_value",
+			"fieldtype": "Float",
+			"label": _("(E) Balance Stock Value in Queue"),
+		},
+		{
+			"fieldname": "fifo_value_diff",
+			"fieldtype": "Float",
+			"label": _("D - E"),
+		},
+		{
+			"fieldname": "stock_value_difference",
+			"fieldtype": "Float",
+			"label": _("(F) Change in Stock Value"),
+		},
+		{
+			"fieldname": "stock_value_from_diff",
+			"fieldtype": "Float",
+			"label": _("(G) Sum of Change in Stock Value"),
+		},
+		{
+			"fieldname": "diff_value_diff",
+			"fieldtype": "Float",
+			"label": _("G - D"),
+		},
+		{
+			"fieldname": "fifo_stock_diff",
+			"fieldtype": "Float",
+			"label": _("(H) Change in Stock Value (FIFO Queue)"),
+		},
+		{
+			"fieldname": "fifo_difference_diff",
+			"fieldtype": "Float",
+			"label": _("H - F"),
+		},
+		{
+			"fieldname": "valuation_rate",
+			"fieldtype": "Float",
+			"label": _("(I) Valuation Rate"),
+		},
+		{
+			"fieldname": "fifo_valuation_rate",
+			"fieldtype": "Float",
+			"label": _("(J) Valuation Rate as per FIFO"),
+		},
+		{
+			"fieldname": "fifo_valuation_diff",
+			"fieldtype": "Float",
+			"label": _("I - J"),
+		},
+		{
+			"fieldname": "balance_value_by_qty",
+			"fieldtype": "Float",
+			"label": _("(K) Valuation = Value (D) ÷ Qty (A)"),
+		},
+		{
+			"fieldname": "valuation_diff",
+			"fieldtype": "Float",
+			"label": _("I - K"),
+		},
+	]
+
+
+def get_data(filters=None):
+	filters = frappe._dict(filters or {})
+	item_warehouse_map = get_item_warehouse_combinations(filters)
+
+	data = []
+	if item_warehouse_map:
+		precision = cint(frappe.db.get_single_value("System Settings", "float_precision"))
+
+		for item_warehouse in item_warehouse_map:
+			report_data = stock_ledger_invariant_check(item_warehouse)
+
+			if not report_data:
+				continue
+
+			for row in report_data:
+				if has_difference(row, precision, filters.difference_in):
+					data.append(add_item_warehouse_details(row, item_warehouse))
+					break
+
+	return data
+
+
+def get_item_warehouse_combinations(filters: dict = None) -> dict:
+	filters = frappe._dict(filters or {})
+
+	bin = frappe.qb.DocType("Bin")
+	item = frappe.qb.DocType("Item")
+	warehouse = frappe.qb.DocType("Warehouse")
+
+	query = (
+		frappe.qb.from_(bin)
+		.inner_join(item)
+		.on(bin.item_code == item.name)
+		.inner_join(warehouse)
+		.on(bin.warehouse == warehouse.name)
+		.select(
+			bin.item_code,
+			bin.warehouse,
+		)
+		.where((item.is_stock_item == 1) & (item.has_serial_no == 0) & (warehouse.is_group == 0))
+	)
+
+	if filters.item_code:
+		query = query.where(item.name == filters.item_code)
+	if filters.warehouse:
+		query = query.where(warehouse.name == filters.warehouse)
+	if not filters.include_disabled:
+		query = query.where((item.disabled == 0) & (warehouse.disabled == 0))
+
+	return query.run(as_dict=1)
+
+
+def has_difference(row, precision, difference_in):
+	has_qty_difference = flt(row.difference_in_qty, precision) or flt(row.fifo_qty_diff, precision)
+	has_value_difference = (
+		flt(row.diff_value_diff, precision)
+		or flt(row.fifo_value_diff, precision)
+		or flt(row.fifo_difference_diff, precision)
+	)
+	has_valuation_difference = flt(row.valuation_diff, precision) or flt(
+		row.fifo_valuation_diff, precision
+	)
+
+	if difference_in == "Qty" and has_qty_difference:
+		return True
+	elif difference_in == "Value" and has_value_difference:
+		return True
+	elif difference_in == "Valuation" and has_valuation_difference:
+		return True
+	elif difference_in not in ["Qty", "Value", "Valuation"] and (
+		has_qty_difference or has_value_difference or has_valuation_difference
+	):
+		return True
+
+	return False
+
+
+def add_item_warehouse_details(row, item_warehouse):
+	row.update(
+		{
+			"item_code": item_warehouse.item_code,
+			"warehouse": item_warehouse.warehouse,
+		}
+	)
+
+	return row
diff --git a/erpnext/stock/serial_batch_bundle.py b/erpnext/stock/serial_batch_bundle.py
index d6c840f..5998274 100644
--- a/erpnext/stock/serial_batch_bundle.py
+++ b/erpnext/stock/serial_batch_bundle.py
@@ -862,7 +862,7 @@
 		if self.get("serial_nos"):
 			serial_no_wise_batch = frappe._dict({})
 			if self.has_batch_no:
-				serial_no_wise_batch = self.get_serial_nos_batch(self.serial_nos)
+				serial_no_wise_batch = get_serial_nos_batch(self.serial_nos)
 
 			qty = -1 if self.type_of_transaction == "Outward" else 1
 			for serial_no in self.serial_nos:
@@ -887,16 +887,6 @@
 					},
 				)
 
-	def get_serial_nos_batch(self, serial_nos):
-		return frappe._dict(
-			frappe.get_all(
-				"Serial No",
-				fields=["name", "batch_no"],
-				filters={"name": ("in", serial_nos)},
-				as_list=1,
-			)
-		)
-
 	def create_batch(self):
 		from erpnext.stock.doctype.batch.batch import make_batch
 
@@ -974,3 +964,14 @@
 		serial_or_batch_items = [d.name for d in serial_or_batch_items]
 
 	return serial_or_batch_items
+
+
+def get_serial_nos_batch(serial_nos):
+	return frappe._dict(
+		frappe.get_all(
+			"Serial No",
+			fields=["name", "batch_no"],
+			filters={"name": ("in", serial_nos)},
+			as_list=1,
+		)
+	)
diff --git a/erpnext/stock/stock_ledger.py b/erpnext/stock/stock_ledger.py
index 258a503..d3807b0 100644
--- a/erpnext/stock/stock_ledger.py
+++ b/erpnext/stock/stock_ledger.py
@@ -1214,9 +1214,15 @@
 			if msg:
 				if self.reserved_stock:
 					allowed_qty = abs(exceptions[0]["actual_qty"]) - abs(exceptions[0]["diff"])
-					msg = "{0} As {1} units are reserved, you are allowed to consume only {2} units.".format(
-						msg, frappe.bold(self.reserved_stock), frappe.bold(allowed_qty)
-					)
+
+					if allowed_qty > 0:
+						msg = "{0} As {1} units are reserved for other sales orders, you are allowed to consume only {2} units.".format(
+							msg, frappe.bold(self.reserved_stock), frappe.bold(allowed_qty)
+						)
+					else:
+						msg = "{0} As the full stock is reserved for other sales orders, you're not allowed to consume the stock.".format(
+							msg,
+						)
 
 				msg_list.append(msg)
 
@@ -1458,8 +1464,6 @@
 	if not company:
 		company = frappe.get_cached_value("Warehouse", warehouse, "company")
 
-	last_valuation_rate = None
-
 	# Get moving average rate of a specific batch number
 	if warehouse and serial_and_batch_bundle:
 		batch_obj = BatchNoValuation(
@@ -1476,21 +1480,18 @@
 		return batch_obj.get_incoming_rate()
 
 	# Get valuation rate from last sle for the same item and warehouse
-	if not last_valuation_rate or last_valuation_rate[0][0] is None:
-		last_valuation_rate = frappe.db.sql(
-			"""select valuation_rate
-			from `tabStock Ledger Entry` force index (item_warehouse)
-			where
-				item_code = %s
-				AND warehouse = %s
-				AND valuation_rate >= 0
-				AND is_cancelled = 0
-				AND NOT (voucher_no = %s AND voucher_type = %s)
-			order by posting_date desc, posting_time desc, name desc limit 1""",
-			(item_code, warehouse, voucher_no, voucher_type),
-		)
-
-	if last_valuation_rate:
+	if last_valuation_rate := frappe.db.sql(
+		"""select valuation_rate
+		from `tabStock Ledger Entry` force index (item_warehouse)
+		where
+			item_code = %s
+			AND warehouse = %s
+			AND valuation_rate >= 0
+			AND is_cancelled = 0
+			AND NOT (voucher_no = %s AND voucher_type = %s)
+		order by posting_date desc, posting_time desc, name desc limit 1""",
+		(item_code, warehouse, voucher_no, voucher_type),
+	):
 		return flt(last_valuation_rate[0][0])
 
 	# If negative stock allowed, and item delivered without any incoming entry,
diff --git a/erpnext/setup/page/welcome_to_erpnext/__init__.py b/erpnext/subcontracting/doctype/subcontracting_bom/__init__.py
similarity index 100%
rename from erpnext/setup/page/welcome_to_erpnext/__init__.py
rename to erpnext/subcontracting/doctype/subcontracting_bom/__init__.py
diff --git a/erpnext/subcontracting/doctype/subcontracting_bom/subcontracting_bom.js b/erpnext/subcontracting/doctype/subcontracting_bom/subcontracting_bom.js
new file mode 100644
index 0000000..a7f0d7a
--- /dev/null
+++ b/erpnext/subcontracting/doctype/subcontracting_bom/subcontracting_bom.js
@@ -0,0 +1,40 @@
+// Copyright (c) 2023, Frappe Technologies Pvt. Ltd. and contributors
+// For license information, please see license.txt
+
+frappe.ui.form.on('Subcontracting BOM', {
+    setup: (frm) => {
+		frm.trigger('set_queries');
+	},
+
+    set_queries: (frm) => {
+        frm.set_query('finished_good', () => {
+            return {
+                filters: {
+                    disabled: 0,
+                    is_stock_item: 1,
+                    default_bom: ['!=', ''],
+                    is_sub_contracted_item: 1,
+                }
+            }
+        });
+
+        frm.set_query('finished_good_bom', () => {
+            return {
+                filters: {
+                    docstatus: 1,
+                    is_active: 1,
+                    item: frm.doc.finished_good,
+                }
+            }
+        });
+
+        frm.set_query('service_item', () => {
+            return {
+                filters: {
+                    disabled: 0,
+                    is_stock_item: 0,
+                }
+            }
+        });
+    }
+});
diff --git a/erpnext/subcontracting/doctype/subcontracting_bom/subcontracting_bom.json b/erpnext/subcontracting/doctype/subcontracting_bom/subcontracting_bom.json
new file mode 100644
index 0000000..b258afc
--- /dev/null
+++ b/erpnext/subcontracting/doctype/subcontracting_bom/subcontracting_bom.json
@@ -0,0 +1,155 @@
+{
+ "actions": [],
+ "allow_rename": 1,
+ "autoname": "format:SB-{####}",
+ "creation": "2023-08-29 12:43:20.417184",
+ "default_view": "List",
+ "doctype": "DocType",
+ "editable_grid": 1,
+ "engine": "InnoDB",
+ "field_order": [
+  "is_active",
+  "section_break_dsjm",
+  "finished_good",
+  "finished_good_qty",
+  "column_break_quoy",
+  "finished_good_uom",
+  "finished_good_bom",
+  "section_break_qdw9",
+  "service_item",
+  "service_item_qty",
+  "column_break_uzmw",
+  "service_item_uom",
+  "conversion_factor"
+ ],
+ "fields": [
+  {
+   "default": "1",
+   "fieldname": "is_active",
+   "fieldtype": "Check",
+   "in_list_view": 1,
+   "in_preview": 1,
+   "in_standard_filter": 1,
+   "label": "Is Active",
+   "print_hide": 1
+  },
+  {
+   "fieldname": "section_break_dsjm",
+   "fieldtype": "Section Break"
+  },
+  {
+   "fieldname": "finished_good",
+   "fieldtype": "Link",
+   "in_list_view": 1,
+   "in_preview": 1,
+   "in_standard_filter": 1,
+   "label": "Finished Good",
+   "options": "Item",
+   "reqd": 1,
+   "search_index": 1,
+   "set_only_once": 1
+  },
+  {
+   "default": "1",
+   "fieldname": "finished_good_qty",
+   "fieldtype": "Float",
+   "label": "Finished Good Qty",
+   "non_negative": 1,
+   "reqd": 1
+  },
+  {
+   "fetch_from": "finished_good.default_bom",
+   "fetch_if_empty": 1,
+   "fieldname": "finished_good_bom",
+   "fieldtype": "Link",
+   "in_list_view": 1,
+   "in_preview": 1,
+   "in_standard_filter": 1,
+   "label": "Finished Good BOM",
+   "options": "BOM",
+   "reqd": 1,
+   "search_index": 1
+  },
+  {
+   "fieldname": "section_break_qdw9",
+   "fieldtype": "Section Break"
+  },
+  {
+   "fieldname": "service_item",
+   "fieldtype": "Link",
+   "in_list_view": 1,
+   "in_preview": 1,
+   "in_standard_filter": 1,
+   "label": "Service Item",
+   "options": "Item",
+   "reqd": 1,
+   "search_index": 1
+  },
+  {
+   "default": "1",
+   "fieldname": "service_item_qty",
+   "fieldtype": "Float",
+   "label": "Service Item Qty",
+   "non_negative": 1,
+   "reqd": 1
+  },
+  {
+   "fetch_from": "service_item.stock_uom",
+   "fetch_if_empty": 1,
+   "fieldname": "service_item_uom",
+   "fieldtype": "Link",
+   "label": "Service Item UOM",
+   "options": "UOM",
+   "reqd": 1
+  },
+  {
+   "description": "Service Item Qty / Finished Good Qty",
+   "fieldname": "conversion_factor",
+   "fieldtype": "Float",
+   "label": "Conversion Factor",
+   "read_only": 1
+  },
+  {
+   "fieldname": "column_break_quoy",
+   "fieldtype": "Column Break"
+  },
+  {
+   "fetch_from": "finished_good.stock_uom",
+   "fieldname": "finished_good_uom",
+   "fieldtype": "Link",
+   "label": "Finished Good UOM",
+   "options": "UOM",
+   "read_only": 1
+  },
+  {
+   "fieldname": "column_break_uzmw",
+   "fieldtype": "Column Break"
+  }
+ ],
+ "index_web_pages_for_search": 1,
+ "links": [],
+ "modified": "2023-09-03 16:51:43.558295",
+ "modified_by": "Administrator",
+ "module": "Subcontracting",
+ "name": "Subcontracting BOM",
+ "naming_rule": "Expression",
+ "owner": "Administrator",
+ "permissions": [
+  {
+   "create": 1,
+   "delete": 1,
+   "email": 1,
+   "export": 1,
+   "print": 1,
+   "read": 1,
+   "report": 1,
+   "role": "System Manager",
+   "share": 1,
+   "write": 1
+  }
+ ],
+ "sort_field": "modified",
+ "sort_order": "DESC",
+ "states": [],
+ "track_changes": 1
+}
\ No newline at end of file
diff --git a/erpnext/subcontracting/doctype/subcontracting_bom/subcontracting_bom.py b/erpnext/subcontracting/doctype/subcontracting_bom/subcontracting_bom.py
new file mode 100644
index 0000000..49ba986
--- /dev/null
+++ b/erpnext/subcontracting/doctype/subcontracting_bom/subcontracting_bom.py
@@ -0,0 +1,97 @@
+# Copyright (c) 2023, Frappe Technologies Pvt. Ltd. and contributors
+# For license information, please see license.txt
+
+import frappe
+from frappe import _
+from frappe.model.document import Document
+from frappe.utils import flt
+
+
+class SubcontractingBOM(Document):
+	def validate(self):
+		self.validate_finished_good()
+		self.validate_service_item()
+		self.validate_is_active()
+
+	def before_save(self):
+		self.set_conversion_factor()
+
+	def validate_finished_good(self):
+		disabled, is_stock_item, default_bom, is_sub_contracted_item = frappe.db.get_value(
+			"Item",
+			self.finished_good,
+			["disabled", "is_stock_item", "default_bom", "is_sub_contracted_item"],
+		)
+
+		if disabled:
+			frappe.throw(_("Finished Good {0} is disabled.").format(frappe.bold(self.finished_good)))
+		if not is_stock_item:
+			frappe.throw(
+				_("Finished Good {0} must be a stock item.").format(frappe.bold(self.finished_good))
+			)
+		if not default_bom:
+			frappe.throw(
+				_("Finished Good {0} does not have a default BOM.").format(frappe.bold(self.finished_good))
+			)
+		if not is_sub_contracted_item:
+			frappe.throw(
+				_("Finished Good {0} must be a sub-contracted item.").format(frappe.bold(self.finished_good))
+			)
+
+	def validate_service_item(self):
+		disabled, is_stock_item = frappe.db.get_value(
+			"Item", self.service_item, ["disabled", "is_stock_item"]
+		)
+
+		if disabled:
+			frappe.throw(_("Service Item {0} is disabled.").format(frappe.bold(self.service_item)))
+		if is_stock_item:
+			frappe.throw(
+				_("Service Item {0} must be a non-stock item.").format(frappe.bold(self.service_item))
+			)
+
+	def validate_is_active(self):
+		if self.is_active:
+			if sb := frappe.db.exists(
+				"Subcontracting BOM",
+				{"finished_good": self.finished_good, "is_active": 1, "name": ["!=", self.name]},
+			):
+				frappe.throw(
+					_("There is already an active Subcontracting BOM {0} for the Finished Good {1}.").format(
+						frappe.bold(sb), frappe.bold(self.finished_good)
+					)
+				)
+
+	def set_conversion_factor(self):
+		self.conversion_factor = flt(self.service_item_qty) / flt(self.finished_good_qty)
+
+
+@frappe.whitelist()
+def get_subcontracting_boms_for_finished_goods(fg_items: str | list) -> dict:
+	if fg_items:
+		filters = {"is_active": 1}
+
+		if isinstance(fg_items, list):
+			filters["finished_good"] = ["in", fg_items]
+		else:
+			filters["finished_good"] = fg_items
+
+		if subcontracting_boms := frappe.get_all("Subcontracting BOM", filters=filters, fields=["*"]):
+			if isinstance(fg_items, list):
+				return {d.finished_good: d for d in subcontracting_boms}
+			else:
+				return subcontracting_boms[0]
+
+	return {}
+
+
+@frappe.whitelist()
+def get_subcontracting_boms_for_service_item(service_item: str) -> dict:
+	if service_item:
+		filters = {"is_active": 1, "service_item": service_item}
+		Subcontracting_boms = frappe.db.get_all("Subcontracting BOM", filters=filters, fields=["*"])
+
+		if Subcontracting_boms:
+			return {d.finished_good: d for d in Subcontracting_boms}
+
+	return {}
diff --git a/erpnext/subcontracting/doctype/subcontracting_bom/test_subcontracting_bom.py b/erpnext/subcontracting/doctype/subcontracting_bom/test_subcontracting_bom.py
new file mode 100644
index 0000000..9335ac8
--- /dev/null
+++ b/erpnext/subcontracting/doctype/subcontracting_bom/test_subcontracting_bom.py
@@ -0,0 +1,26 @@
+# Copyright (c) 2023, Frappe Technologies Pvt. Ltd. and Contributors
+# See license.txt
+
+import frappe
+from frappe.tests.utils import FrappeTestCase
+
+
+class TestSubcontractingBOM(FrappeTestCase):
+	pass
+
+
+def create_subcontracting_bom(**kwargs):
+	kwargs = frappe._dict(kwargs)
+
+	doc = frappe.new_doc("Subcontracting BOM")
+	doc.is_active = kwargs.is_active or 1
+	doc.finished_good = kwargs.finished_good
+	doc.finished_good_uom = kwargs.finished_good_uom
+	doc.finished_good_qty = kwargs.finished_good_qty or 1
+	doc.finished_good_bom = kwargs.finished_good_bom
+	doc.service_item = kwargs.service_item
+	doc.service_item_uom = kwargs.service_item_uom
+	doc.service_item_qty = kwargs.service_item_qty or 1
+	doc.save()
+
+	return doc
diff --git a/erpnext/subcontracting/doctype/subcontracting_order/subcontracting_order.py b/erpnext/subcontracting/doctype/subcontracting_order/subcontracting_order.py
index 0b14d4d..faf0cad 100644
--- a/erpnext/subcontracting/doctype/subcontracting_order/subcontracting_order.py
+++ b/erpnext/subcontracting/doctype/subcontracting_order/subcontracting_order.py
@@ -128,8 +128,12 @@
 		for si in self.service_items:
 			if si.fg_item:
 				item = frappe.get_doc("Item", si.fg_item)
-				bom = frappe.db.get_value("BOM", {"item": item.item_code, "is_active": 1, "is_default": 1})
-
+				bom = (
+					frappe.db.get_value(
+						"Subcontracting BOM", {"finished_good": item.item_code, "is_active": 1}, "finished_good_bom"
+					)
+					or item.default_bom
+				)
 				items.append(
 					{
 						"item_code": item.item_code,
@@ -203,7 +207,10 @@
 		{
 			"Subcontracting Order": {
 				"doctype": "Subcontracting Receipt",
-				"field_map": {"supplier_warehouse": "supplier_warehouse"},
+				"field_map": {
+					"supplier_warehouse": "supplier_warehouse",
+					"set_warehouse": "set_warehouse",
+				},
 				"validation": {
 					"docstatus": ["=", 1],
 				},
diff --git a/erpnext/subcontracting/doctype/subcontracting_order/test_subcontracting_order.py b/erpnext/subcontracting/doctype/subcontracting_order/test_subcontracting_order.py
index 6a2983f..22fdc13 100644
--- a/erpnext/subcontracting/doctype/subcontracting_order/test_subcontracting_order.py
+++ b/erpnext/subcontracting/doctype/subcontracting_order/test_subcontracting_order.py
@@ -591,6 +591,13 @@
 				for idx, val in enumerate(sco.items):
 					val.warehouse = warehouses[idx]
 
+	warehouses = set()
+	for item in sco.items:
+		warehouses.add(item.warehouse)
+
+	if len(warehouses) == 1:
+		sco.set_warehouse = list(warehouses)[0]
+
 	if not args.do_not_save:
 		sco.insert()
 		if not args.do_not_submit:
diff --git a/erpnext/subcontracting/doctype/subcontracting_receipt/subcontracting_receipt.js b/erpnext/subcontracting/doctype/subcontracting_receipt/subcontracting_receipt.js
index 94a2589..19a1c93 100644
--- a/erpnext/subcontracting/doctype/subcontracting_receipt/subcontracting_receipt.js
+++ b/erpnext/subcontracting/doctype/subcontracting_receipt/subcontracting_receipt.js
@@ -3,21 +3,116 @@
 
 frappe.provide('erpnext.buying');
 
-erpnext.landed_cost_taxes_and_charges.setup_triggers("Subcontracting Receipt");
+erpnext.landed_cost_taxes_and_charges.setup_triggers('Subcontracting Receipt');
 
 frappe.ui.form.on('Subcontracting Receipt', {
 	setup: (frm) => {
 		frm.ignore_doctypes_on_cancel_all = ['Serial and Batch Bundle'];
 		frm.get_field('supplied_items').grid.cannot_add_rows = true;
 		frm.get_field('supplied_items').grid.only_sortable();
+		frm.trigger('set_queries');
+	},
 
+	refresh: (frm) => {
+		if (frm.doc.docstatus > 0) {
+			frm.add_custom_button(__('Stock Ledger'), () => {
+					frappe.route_options = {
+						voucher_no: frm.doc.name,
+						from_date: frm.doc.posting_date,
+						to_date: moment(frm.doc.modified).format('YYYY-MM-DD'),
+						company: frm.doc.company,
+						show_cancelled_entries: frm.doc.docstatus === 2
+					}
+					frappe.set_route('query-report', 'Stock Ledger');
+				}, __('View'));
+
+			frm.add_custom_button(__('Accounting Ledger'), () => {
+					frappe.route_options = {
+						voucher_no: frm.doc.name,
+						from_date: frm.doc.posting_date,
+						to_date: moment(frm.doc.modified).format('YYYY-MM-DD'),
+						company: frm.doc.company,
+						group_by: 'Group by Voucher (Consolidated)',
+						show_cancelled_entries: frm.doc.docstatus === 2
+					}
+					frappe.set_route('query-report', 'General Ledger');
+				}, __('View'));
+		}
+
+		if (!frm.doc.is_return && frm.doc.docstatus === 1 && frm.doc.per_returned < 100) {
+			frm.add_custom_button(__('Subcontract Return'), () => {
+					frappe.model.open_mapped_doc({
+						method: 'erpnext.subcontracting.doctype.subcontracting_receipt.subcontracting_receipt.make_subcontract_return',
+						frm: frm
+					});
+				}, __('Create'));
+			frm.page.set_inner_btn_group_as_primary(__('Create'));
+		}
+
+		if (frm.doc.docstatus === 0) {
+			frm.add_custom_button(__('Subcontracting Order'), () => {
+					if (!frm.doc.supplier) {
+						frappe.throw({
+							title: __('Mandatory'),
+							message: __('Please Select a Supplier')
+						});
+					}
+
+					erpnext.utils.map_current_doc({
+						method: 'erpnext.subcontracting.doctype.subcontracting_order.subcontracting_order.make_subcontracting_receipt',
+						source_doctype: 'Subcontracting Order',
+						target: frm,
+						setters: {
+							supplier: frm.doc.supplier,
+						},
+						get_query_filters: {
+							docstatus: 1,
+							per_received: ['<', 100],
+							company: frm.doc.company
+						}
+					});
+				}, __('Get Items From'));
+
+			frm.fields_dict.supplied_items.grid.update_docfield_property('consumed_qty', 'read_only', frm.doc.__onload && frm.doc.__onload.backflush_based_on === 'BOM');
+		}
+
+		frm.trigger('setup_quality_inspection');
+		frm.trigger('set_route_options_for_new_doc');
+	},
+
+	set_warehouse: (frm) => {
+		set_warehouse_in_children(frm.doc.items, 'warehouse', frm.doc.set_warehouse);
+	},
+
+	rejected_warehouse: (frm) => {
+		set_warehouse_in_children(frm.doc.items, 'rejected_warehouse', frm.doc.rejected_warehouse);
+	},
+
+	get_scrap_items: (frm) => {
+		frappe.call({
+			doc: frm.doc,
+			method: 'get_scrap_items',
+			args: {
+				recalculate_rate: true
+			},
+			freeze: true,
+			freeze_message: __('Getting Scrap Items'),
+			callback: (r) => {
+				if (!r.exc) {
+					frm.refresh();
+				}
+			}
+		});
+	},
+
+	set_queries: (frm) => {
 		frm.set_query('set_warehouse', () => {
 			return {
 				filters: {
 					company: frm.doc.company,
 					is_group: 0
 				}
-			};
+			}
 		});
 
 		frm.set_query('rejected_warehouse', () => {
@@ -26,7 +121,7 @@
 					company: frm.doc.company,
 					is_group: 0
 				}
-			};
+			}
 		});
 
 		frm.set_query('supplier_warehouse', () => {
@@ -35,7 +130,7 @@
 					company: frm.doc.company,
 					is_group: 0
 				}
-			};
+			}
 		});
 
 		frm.set_query('warehouse', 'items', () => ({
@@ -52,14 +147,14 @@
 			}
 		}));
 
-		frm.set_query('expense_account', 'items', function () {
+		frm.set_query('expense_account', 'items', () => {
 			return {
 				query: 'erpnext.controllers.queries.get_expense_account',
 				filters: { 'company': frm.doc.company }
-			};
+			}
 		});
 
-		frm.set_query('batch_no', 'items', function(doc, cdt, cdn) {
+		frm.set_query('batch_no', 'items', (doc, cdt, cdn) => {
 			var row = locals[cdt][cdn];
 			return {
 				filters: {
@@ -68,7 +163,15 @@
 			}
 		});
 
-		frm.set_query('batch_no', 'supplied_items', function(doc, cdt, cdn) {
+		frm.set_query('serial_and_batch_bundle', 'items', (doc, cdt, cdn) => {
+			return frm.events.get_serial_and_batch_bundle_filters(doc, cdt, cdn);
+		});
+
+		frm.set_query('rejected_serial_and_batch_bundle', 'items', (doc, cdt, cdn) => {
+			return frm.events.get_serial_and_batch_bundle_filters(doc, cdt, cdn);
+		});
+
+		frm.set_query('batch_no', 'supplied_items', (doc, cdt, cdn) => {
 			var row = locals[cdt][cdn];
 			return {
 				filters: {
@@ -77,118 +180,92 @@
 			}
 		});
 
-		frm.set_query("serial_and_batch_bundle", "supplied_items", (doc, cdt, cdn) => {
+		frm.set_query('serial_and_batch_bundle', 'supplied_items', (doc, cdt, cdn) => {
 			let row = locals[cdt][cdn];
 			return {
 				filters: {
 					'item_code': row.rm_item_code,
 					'voucher_type': doc.doctype,
-					'voucher_no': ["in", [doc.name, ""]],
+					'voucher_no': ['in', [doc.name, '']],
 					'is_cancelled': 0,
 				}
 			}
 		});
+	},
 
-		let sbb_field = frm.get_docfield('supplied_items', 'serial_and_batch_bundle');
-		if (sbb_field) {
-			sbb_field.get_route_options_for_new_doc = (row) => {
+	get_serial_and_batch_bundle_filters: (doc, cdt, cdn) => {
+		let row = locals[cdt][cdn];
+		return {
+			filters: {
+				'item_code': row.item_code,
+				'voucher_type': doc.doctype,
+				'voucher_no': ['in', [doc.name, '']],
+				'is_cancelled': 0,
+			}
+		}
+	},
+
+	setup_quality_inspection: (frm) => {
+		if (!frm.is_new() && frm.doc.docstatus === 0 && !frm.doc.is_return) {
+			let transaction_controller = new erpnext.TransactionController({ frm: frm });
+			transaction_controller.setup_quality_inspection();
+		}
+	},
+
+	set_route_options_for_new_doc: (frm) => {
+		let batch_no_field = frm.get_docfield('items', 'batch_no');
+		if (batch_no_field) {
+			batch_no_field.get_route_options_for_new_doc = (row) => {
+				return {
+					'item': row.doc.item_code
+				}
+			}
+		}
+
+		let item_sbb_field = frm.get_docfield('items', 'serial_and_batch_bundle');
+		if (item_sbb_field) {
+			item_sbb_field.get_route_options_for_new_doc = (row) => {
+				return {
+					'item_code': row.doc.item_code,
+					'voucher_type': frm.doc.doctype,
+				}
+			}
+		}
+
+		let rejected_item_sbb_field = frm.get_docfield('items', 'rejected_serial_and_batch_bundle');
+		if (rejected_item_sbb_field) {
+			rejected_item_sbb_field.get_route_options_for_new_doc = (row) => {
+				return {
+					'item_code': row.doc.item_code,
+					'voucher_type': frm.doc.doctype,
+				}
+			}
+		}
+
+		let rm_sbb_field = frm.get_docfield('supplied_items', 'serial_and_batch_bundle');
+		if (rm_sbb_field) {
+			rm_sbb_field.get_route_options_for_new_doc = (row) => {
 				return {
 					'item_code': row.doc.rm_item_code,
 					'voucher_type': frm.doc.doctype,
 				}
-			};
+			}
 		}
-
-		let batch_no_field = frm.get_docfield('items', 'batch_no');
-		if (batch_no_field) {
-			batch_no_field.get_route_options_for_new_doc = function(row) {
-				return {
-					'item': row.doc.item_code
-				}
-			};
-		}
-	},
-
-	refresh: (frm) => {
-		if (frm.doc.docstatus > 0) {
-			frm.add_custom_button(__('Stock Ledger'), function () {
-				frappe.route_options = {
-					voucher_no: frm.doc.name,
-					from_date: frm.doc.posting_date,
-					to_date: moment(frm.doc.modified).format('YYYY-MM-DD'),
-					company: frm.doc.company,
-					show_cancelled_entries: frm.doc.docstatus === 2
-				};
-				frappe.set_route('query-report', 'Stock Ledger');
-			}, __('View'));
-
-			frm.add_custom_button(__('Accounting Ledger'), function () {
-				frappe.route_options = {
-					voucher_no: frm.doc.name,
-					from_date: frm.doc.posting_date,
-					to_date: moment(frm.doc.modified).format('YYYY-MM-DD'),
-					company: frm.doc.company,
-					group_by: 'Group by Voucher (Consolidated)',
-					show_cancelled_entries: frm.doc.docstatus === 2
-				};
-				frappe.set_route('query-report', 'General Ledger');
-			}, __('View'));
-		}
-
-		if (!frm.doc.is_return && frm.doc.docstatus == 1 && frm.doc.per_returned < 100) {
-			frm.add_custom_button(__('Subcontract Return'), function () {
-				frappe.model.open_mapped_doc({
-					method: 'erpnext.subcontracting.doctype.subcontracting_receipt.subcontracting_receipt.make_subcontract_return',
-					frm: frm
-				});
-			}, __('Create'));
-			frm.page.set_inner_btn_group_as_primary(__('Create'));
-		}
-
-		if (frm.doc.docstatus == 0) {
-			frm.add_custom_button(__('Subcontracting Order'), function () {
-				if (!frm.doc.supplier) {
-					frappe.throw({
-						title: __('Mandatory'),
-						message: __('Please Select a Supplier')
-					});
-				}
-
-				erpnext.utils.map_current_doc({
-					method: 'erpnext.subcontracting.doctype.subcontracting_order.subcontracting_order.make_subcontracting_receipt',
-					source_doctype: 'Subcontracting Order',
-					target: frm,
-					setters: {
-						supplier: frm.doc.supplier,
-					},
-					get_query_filters: {
-						docstatus: 1,
-						per_received: ['<', 100],
-						company: frm.doc.company
-					}
-				});
-			}, __('Get Items From'));
-
-			frm.fields_dict.supplied_items.grid.update_docfield_property('consumed_qty', 'read_only', frm.doc.__onload && frm.doc.__onload.backflush_based_on === 'BOM');
-		}
-	},
-
-	set_warehouse: (frm) => {
-		set_warehouse_in_children(frm.doc.items, 'warehouse', frm.doc.set_warehouse);
-	},
-
-	rejected_warehouse: (frm) => {
-		set_warehouse_in_children(frm.doc.items, 'rejected_warehouse', frm.doc.rejected_warehouse);
 	},
 });
 
 frappe.ui.form.on('Landed Cost Taxes and Charges', {
-	amount: function (frm, cdt, cdn) {
+	amount: (frm, cdt, cdn) => {
+		set_missing_values(frm);
 		frm.events.set_base_amount(frm, cdt, cdn);
 	},
 
-	expense_account: function (frm, cdt, cdn) {
+	expense_account: (frm, cdt, cdn) => {
 		frm.events.set_account_currency(frm, cdt, cdn);
+	},
+
+	additional_costs_remove: (frm) => {
+		set_missing_values(frm);
 	}
 });
 
@@ -204,6 +281,10 @@
 	rate(frm) {
 		set_missing_values(frm);
 	},
+
+	items_remove: (frm) => {
+		set_missing_values(frm);
+	},
 });
 
 frappe.ui.form.on('Subcontracting Receipt Supplied Item', {
@@ -215,7 +296,7 @@
 let set_warehouse_in_children = (child_table, warehouse_field, warehouse) => {
 	let transaction_controller = new erpnext.TransactionController();
 	transaction_controller.autofill_warehouse(child_table, warehouse_field, warehouse);
-};
+}
 
 let set_missing_values = (frm) => {
 	frappe.call({
@@ -225,4 +306,4 @@
 			if (!r.exc) frm.refresh();
 		},
 	});
-};
\ No newline at end of file
+}
diff --git a/erpnext/subcontracting/doctype/subcontracting_receipt/subcontracting_receipt.json b/erpnext/subcontracting/doctype/subcontracting_receipt/subcontracting_receipt.json
index 4b3cc83..8be1c1b 100644
--- a/erpnext/subcontracting/doctype/subcontracting_receipt/subcontracting_receipt.json
+++ b/erpnext/subcontracting/doctype/subcontracting_receipt/subcontracting_receipt.json
@@ -40,6 +40,7 @@
   "col_break_warehouse",
   "supplier_warehouse",
   "items_section",
+  "get_scrap_items",
   "items",
   "section_break0",
   "total_qty",
@@ -285,7 +286,7 @@
    "reqd": 1
   },
   {
-   "depends_on": "supplied_items",
+   "depends_on": "eval: (!doc.__islocal && doc.docstatus == 0 && doc.supplied_items)",
    "fieldname": "get_current_stock",
    "fieldtype": "Button",
    "label": "Get Current Stock",
@@ -626,12 +627,19 @@
    "fieldtype": "Check",
    "label": "Edit Posting Date and Time",
    "print_hide": 1
+  },
+  {
+   "depends_on": "eval: (!doc.__islocal && doc.docstatus == 0)",
+   "fieldname": "get_scrap_items",
+   "fieldtype": "Button",
+   "label": "Get Scrap Items",
+   "options": "get_scrap_items"
   }
  ],
  "in_create": 1,
  "is_submittable": 1,
  "links": [],
- "modified": "2023-07-06 18:43:16.171842",
+ "modified": "2023-08-26 10:52:04.050829",
  "modified_by": "Administrator",
  "module": "Subcontracting",
  "name": "Subcontracting Receipt",
diff --git a/erpnext/subcontracting/doctype/subcontracting_receipt/subcontracting_receipt.py b/erpnext/subcontracting/doctype/subcontracting_receipt/subcontracting_receipt.py
index d2bf7e8..6aecaf9 100644
--- a/erpnext/subcontracting/doctype/subcontracting_receipt/subcontracting_receipt.py
+++ b/erpnext/subcontracting/doctype/subcontracting_receipt/subcontracting_receipt.py
@@ -8,6 +8,7 @@
 import erpnext
 from erpnext.accounts.utils import get_account_currency
 from erpnext.controllers.subcontracting_controller import SubcontractingController
+from erpnext.stock.stock_ledger import get_valuation_rate
 
 
 class SubcontractingReceipt(SubcontractingController):
@@ -36,33 +37,6 @@
 			),
 		)
 
-	def update_status_updater_args(self):
-		if cint(self.is_return):
-			self.status_updater.extend(
-				[
-					{
-						"source_dt": "Subcontracting Receipt Item",
-						"target_dt": "Subcontracting Order Item",
-						"join_field": "subcontracting_order_item",
-						"target_field": "returned_qty",
-						"source_field": "-1 * qty",
-						"extra_cond": """ and exists (select name from `tabSubcontracting Receipt`
-						where name=`tabSubcontracting Receipt Item`.parent and is_return=1)""",
-					},
-					{
-						"source_dt": "Subcontracting Receipt Item",
-						"target_dt": "Subcontracting Receipt Item",
-						"join_field": "subcontracting_receipt_item",
-						"target_field": "returned_qty",
-						"target_parent_dt": "Subcontracting Receipt",
-						"target_parent_field": "per_returned",
-						"target_ref_field": "received_qty",
-						"source_field": "-1 * received_qty",
-						"percent_join_field_parent": "return_against",
-					},
-				]
-			)
-
 	def before_validate(self):
 		super(SubcontractingReceipt, self).before_validate()
 		self.validate_items_qty()
@@ -71,28 +45,31 @@
 		self.set_items_expense_account()
 
 	def validate(self):
-		if (
-			frappe.db.get_single_value("Buying Settings", "backflush_raw_materials_of_subcontract_based_on")
-			== "BOM"
-		):
-			self.supplied_items = []
-		super(SubcontractingReceipt, self).validate()
-		self.set_missing_values()
+		self.reset_supplied_items()
 		self.validate_posting_time()
-		self.validate_rejected_warehouse()
+
+		if not self.get("is_return"):
+			self.validate_inspection()
 
 		if getdate(self.posting_date) > getdate(nowdate()):
 			frappe.throw(_("Posting Date cannot be future date"))
 
+		super(SubcontractingReceipt, self).validate()
+
+		if self.is_new() and self.get("_action") == "save" and not frappe.flags.in_test:
+			self.get_scrap_items()
+
+		self.set_missing_values()
+
+		if self.get("_action") == "submit":
+			self.validate_scrap_items()
+			self.validate_accepted_warehouse()
+			self.validate_rejected_warehouse()
+
 		self.reset_default_field_value("set_warehouse", "items", "warehouse")
 		self.reset_default_field_value("rejected_warehouse", "items", "rejected_warehouse")
 		self.get_current_stock()
 
-	def on_update(self):
-		for table_field in ["items", "supplied_items"]:
-			if self.get(table_field):
-				self.set_serial_and_batch_bundle(table_field)
-
 	def on_submit(self):
 		self.validate_available_qty_for_consumption()
 		self.update_status_updater_args()
@@ -104,6 +81,11 @@
 		self.repost_future_sle_and_gle()
 		self.update_status()
 
+	def on_update(self):
+		for table_field in ["items", "supplied_items"]:
+			if self.get(table_field):
+				self.set_serial_and_batch_bundle(table_field)
+
 	def on_cancel(self):
 		self.ignore_linked_doctypes = (
 			"GL Entry",
@@ -121,108 +103,6 @@
 		self.set_subcontracting_order_status()
 		self.update_status()
 
-	@frappe.whitelist()
-	def set_missing_values(self):
-		self.calculate_additional_costs()
-		self.calculate_supplied_items_qty_and_amount()
-		self.calculate_items_qty_and_amount()
-
-	def set_available_qty_for_consumption(self):
-		supplied_items_details = {}
-
-		sco_supplied_item = frappe.qb.DocType("Subcontracting Order Supplied Item")
-		for item in self.get("items"):
-			supplied_items = (
-				frappe.qb.from_(sco_supplied_item)
-				.select(
-					sco_supplied_item.rm_item_code,
-					sco_supplied_item.reference_name,
-					(sco_supplied_item.total_supplied_qty - sco_supplied_item.consumed_qty).as_("available_qty"),
-				)
-				.where(
-					(sco_supplied_item.parent == item.subcontracting_order)
-					& (sco_supplied_item.main_item_code == item.item_code)
-					& (sco_supplied_item.reference_name == item.subcontracting_order_item)
-				)
-			).run(as_dict=True)
-
-			if supplied_items:
-				supplied_items_details[item.name] = {}
-
-				for supplied_item in supplied_items:
-					supplied_items_details[item.name][supplied_item.rm_item_code] = supplied_item.available_qty
-		else:
-			for item in self.get("supplied_items"):
-				item.available_qty_for_consumption = supplied_items_details.get(item.reference_name, {}).get(
-					item.rm_item_code, 0
-				)
-
-	def calculate_supplied_items_qty_and_amount(self):
-		for item in self.get("supplied_items") or []:
-			item.amount = item.rate * item.consumed_qty
-
-		self.set_available_qty_for_consumption()
-
-	def calculate_items_qty_and_amount(self):
-		rm_supp_cost = {}
-		for item in self.get("supplied_items") or []:
-			if item.reference_name in rm_supp_cost:
-				rm_supp_cost[item.reference_name] += item.amount
-			else:
-				rm_supp_cost[item.reference_name] = item.amount
-
-		total_qty = total_amount = 0
-		for item in self.items:
-			if item.qty and item.name in rm_supp_cost:
-				item.rm_supp_cost = rm_supp_cost[item.name]
-				item.rm_cost_per_qty = item.rm_supp_cost / item.qty
-				rm_supp_cost.pop(item.name)
-
-			if item.recalculate_rate:
-				item.rate = (
-					flt(item.rm_cost_per_qty) + flt(item.service_cost_per_qty) + flt(item.additional_cost_per_qty)
-				)
-
-			item.received_qty = item.qty + flt(item.rejected_qty)
-			item.amount = item.qty * item.rate
-			total_qty += item.qty
-			total_amount += item.amount
-		else:
-			self.total_qty = total_qty
-			self.total = total_amount
-
-	def validate_rejected_warehouse(self):
-		for item in self.items:
-			if flt(item.rejected_qty) and not item.rejected_warehouse:
-				if self.rejected_warehouse:
-					item.rejected_warehouse = self.rejected_warehouse
-
-				if not item.rejected_warehouse:
-					frappe.throw(
-						_("Row #{0}: Rejected Warehouse is mandatory for the rejected Item {1}").format(
-							item.idx, item.item_code
-						)
-					)
-
-			if item.get("rejected_warehouse") and (item.get("rejected_warehouse") == item.get("warehouse")):
-				frappe.throw(
-					_("Row #{0}: Accepted Warehouse and Rejected Warehouse cannot be same").format(item.idx)
-				)
-
-	def validate_available_qty_for_consumption(self):
-		for item in self.get("supplied_items"):
-			precision = item.precision("consumed_qty")
-			if (
-				item.available_qty_for_consumption
-				and flt(item.available_qty_for_consumption, precision) - flt(item.consumed_qty, precision) < 0
-			):
-				msg = f"""Row {item.idx}: Consumed Qty {flt(item.consumed_qty, precision)}
-					must be less than or equal to Available Qty For Consumption
-					{flt(item.available_qty_for_consumption, precision)}
-					in Consumed Items Table."""
-
-				frappe.throw(_(msg))
-
 	def validate_items_qty(self):
 		for item in self.items:
 			if not (item.qty or item.rejected_qty):
@@ -264,6 +144,234 @@
 				if not item.expense_account:
 					item.expense_account = expense_account
 
+	def reset_supplied_items(self):
+		if (
+			frappe.db.get_single_value("Buying Settings", "backflush_raw_materials_of_subcontract_based_on")
+			== "BOM"
+		):
+			self.supplied_items = []
+
+	@frappe.whitelist()
+	def get_scrap_items(self, recalculate_rate=False):
+		self.remove_scrap_items()
+
+		for item in list(self.items):
+			if item.bom:
+				bom = frappe.get_doc("BOM", item.bom)
+				for scrap_item in bom.scrap_items:
+					qty = flt(item.qty) * (flt(scrap_item.stock_qty) / flt(bom.quantity))
+					rate = (
+						get_valuation_rate(
+							scrap_item.item_code,
+							self.set_warehouse,
+							self.doctype,
+							self.name,
+							currency=erpnext.get_company_currency(self.company),
+							company=self.company,
+						)
+						or scrap_item.rate
+					)
+					self.append(
+						"items",
+						{
+							"is_scrap_item": 1,
+							"reference_name": item.name,
+							"item_code": scrap_item.item_code,
+							"item_name": scrap_item.item_name,
+							"qty": qty,
+							"stock_uom": scrap_item.stock_uom,
+							"rate": rate,
+							"rm_cost_per_qty": 0,
+							"service_cost_per_qty": 0,
+							"additional_cost_per_qty": 0,
+							"scrap_cost_per_qty": 0,
+							"amount": qty * rate,
+							"warehouse": self.set_warehouse,
+							"rejected_warehouse": self.rejected_warehouse,
+						},
+					)
+
+		if recalculate_rate:
+			self.calculate_additional_costs()
+			self.calculate_items_qty_and_amount()
+
+	def remove_scrap_items(self, recalculate_rate=False):
+		for item in list(self.items):
+			if item.is_scrap_item:
+				self.remove(item)
+			else:
+				item.scrap_cost_per_qty = 0
+
+		if recalculate_rate:
+			self.calculate_items_qty_and_amount()
+
+	@frappe.whitelist()
+	def set_missing_values(self):
+		self.set_available_qty_for_consumption()
+		self.calculate_additional_costs()
+		self.calculate_items_qty_and_amount()
+
+	def set_available_qty_for_consumption(self):
+		supplied_items_details = {}
+
+		sco_supplied_item = frappe.qb.DocType("Subcontracting Order Supplied Item")
+		for item in self.get("items"):
+			supplied_items = (
+				frappe.qb.from_(sco_supplied_item)
+				.select(
+					sco_supplied_item.rm_item_code,
+					sco_supplied_item.reference_name,
+					(sco_supplied_item.total_supplied_qty - sco_supplied_item.consumed_qty).as_("available_qty"),
+				)
+				.where(
+					(sco_supplied_item.parent == item.subcontracting_order)
+					& (sco_supplied_item.main_item_code == item.item_code)
+					& (sco_supplied_item.reference_name == item.subcontracting_order_item)
+				)
+			).run(as_dict=True)
+
+			if supplied_items:
+				supplied_items_details[item.name] = {}
+
+				for supplied_item in supplied_items:
+					supplied_items_details[item.name][supplied_item.rm_item_code] = supplied_item.available_qty
+		else:
+			for item in self.get("supplied_items"):
+				item.available_qty_for_consumption = supplied_items_details.get(item.reference_name, {}).get(
+					item.rm_item_code, 0
+				)
+
+	def calculate_items_qty_and_amount(self):
+		rm_cost_map = {}
+		for item in self.get("supplied_items") or []:
+			item.amount = flt(item.consumed_qty) * flt(item.rate)
+
+			if item.reference_name in rm_cost_map:
+				rm_cost_map[item.reference_name] += item.amount
+			else:
+				rm_cost_map[item.reference_name] = item.amount
+
+		scrap_cost_map = {}
+		for item in self.get("items") or []:
+			if item.is_scrap_item:
+				item.amount = flt(item.qty) * flt(item.rate)
+
+				if item.reference_name in scrap_cost_map:
+					scrap_cost_map[item.reference_name] += item.amount
+				else:
+					scrap_cost_map[item.reference_name] = item.amount
+
+		total_qty = total_amount = 0
+		for item in self.get("items") or []:
+			if not item.is_scrap_item:
+				if item.qty:
+					if item.name in rm_cost_map:
+						item.rm_supp_cost = rm_cost_map[item.name]
+						item.rm_cost_per_qty = item.rm_supp_cost / item.qty
+						rm_cost_map.pop(item.name)
+
+					if item.name in scrap_cost_map:
+						item.scrap_cost_per_qty = scrap_cost_map[item.name] / item.qty
+						scrap_cost_map.pop(item.name)
+					else:
+						item.scrap_cost_per_qty = 0
+
+				item.rate = (
+					flt(item.rm_cost_per_qty)
+					+ flt(item.service_cost_per_qty)
+					+ flt(item.additional_cost_per_qty)
+					- flt(item.scrap_cost_per_qty)
+				)
+
+			item.received_qty = flt(item.qty) + flt(item.rejected_qty)
+			item.amount = flt(item.qty) * flt(item.rate)
+
+			total_qty += flt(item.qty)
+			total_amount += item.amount
+		else:
+			self.total_qty = total_qty
+			self.total = total_amount
+
+	def validate_scrap_items(self):
+		for item in self.items:
+			if item.is_scrap_item:
+				if not item.qty:
+					frappe.throw(
+						_("Row #{0}: Scrap Item Qty cannot be zero").format(item.idx),
+					)
+
+				if item.rejected_qty:
+					frappe.throw(
+						_("Row #{0}: Rejected Qty cannot be set for Scrap Item {1}.").format(
+							item.idx, frappe.bold(item.item_code)
+						),
+					)
+
+				if not item.reference_name:
+					frappe.throw(
+						_("Row #{0}: Finished Good reference is mandatory for Scrap Item {1}.").format(
+							item.idx, frappe.bold(item.item_code)
+						),
+					)
+
+	def validate_accepted_warehouse(self):
+		for item in self.get("items"):
+			if flt(item.qty) and not item.warehouse:
+				if self.set_warehouse:
+					item.warehouse = self.set_warehouse
+				else:
+					frappe.throw(
+						_("Row #{0}: Accepted Warehouse is mandatory for the accepted Item {1}").format(
+							item.idx, item.item_code
+						)
+					)
+
+			if item.get("warehouse") and (item.get("warehouse") == item.get("rejected_warehouse")):
+				frappe.throw(
+					_("Row #{0}: Accepted Warehouse and Rejected Warehouse cannot be same").format(item.idx)
+				)
+
+	def validate_available_qty_for_consumption(self):
+		for item in self.get("supplied_items"):
+			precision = item.precision("consumed_qty")
+			if (
+				item.available_qty_for_consumption
+				and flt(item.available_qty_for_consumption, precision) - flt(item.consumed_qty, precision) < 0
+			):
+				msg = f"""Row {item.idx}: Consumed Qty {flt(item.consumed_qty, precision)}
+					must be less than or equal to Available Qty For Consumption
+					{flt(item.available_qty_for_consumption, precision)}
+					in Consumed Items Table."""
+
+				frappe.throw(_(msg))
+
+	def update_status_updater_args(self):
+		if cint(self.is_return):
+			self.status_updater.extend(
+				[
+					{
+						"source_dt": "Subcontracting Receipt Item",
+						"target_dt": "Subcontracting Order Item",
+						"join_field": "subcontracting_order_item",
+						"target_field": "returned_qty",
+						"source_field": "-1 * qty",
+						"extra_cond": """ and exists (select name from `tabSubcontracting Receipt`
+						where name=`tabSubcontracting Receipt Item`.parent and is_return=1)""",
+					},
+					{
+						"source_dt": "Subcontracting Receipt Item",
+						"target_dt": "Subcontracting Receipt Item",
+						"join_field": "subcontracting_receipt_item",
+						"target_field": "returned_qty",
+						"target_parent_dt": "Subcontracting Receipt",
+						"target_parent_field": "per_returned",
+						"target_ref_field": "received_qty",
+						"source_field": "-1 * received_qty",
+						"percent_join_field_parent": "return_against",
+					},
+				]
+			)
+
 	def update_status(self, status=None, update_modified=False):
 		if not status:
 			if self.docstatus == 0:
diff --git a/erpnext/subcontracting/doctype/subcontracting_receipt/test_subcontracting_receipt.py b/erpnext/subcontracting/doctype/subcontracting_receipt/test_subcontracting_receipt.py
index 887cba5..1828f696 100644
--- a/erpnext/subcontracting/doctype/subcontracting_receipt/test_subcontracting_receipt.py
+++ b/erpnext/subcontracting/doctype/subcontracting_receipt/test_subcontracting_receipt.py
@@ -23,6 +23,7 @@
 	make_subcontracted_items,
 	set_backflush_based_on,
 )
+from erpnext.manufacturing.doctype.production_plan.test_production_plan import make_bom
 from erpnext.stock.doctype.item.test_item import make_item
 from erpnext.stock.doctype.purchase_receipt.test_purchase_receipt import get_gl_entries
 from erpnext.stock.doctype.stock_entry.test_stock_entry import make_stock_entry
@@ -507,8 +508,6 @@
 		self.assertEqual(scr.supplied_items[0].rate, sr.items[0].valuation_rate)
 
 	def test_subcontracting_receipt_raw_material_rate(self):
-		from erpnext.manufacturing.doctype.production_plan.test_production_plan import make_bom
-
 		# Step - 1: Set Backflush Based On as "BOM"
 		set_backflush_based_on("BOM")
 
@@ -567,6 +566,135 @@
 			self.assertEqual(rm_item.rate, 100)
 			self.assertEqual(rm_item.amount, rm_item.consumed_qty * rm_item.rate)
 
+	def test_quality_inspection_for_subcontracting_receipt(self):
+		from erpnext.stock.doctype.quality_inspection.test_quality_inspection import (
+			create_quality_inspection,
+		)
+
+		set_backflush_based_on("BOM")
+		fg_item = "Subcontracted Item SA1"
+		service_items = [
+			{
+				"warehouse": "_Test Warehouse - _TC",
+				"item_code": "Subcontracted Service Item 1",
+				"qty": 5,
+				"rate": 100,
+				"fg_item": fg_item,
+				"fg_item_qty": 5,
+			},
+		]
+		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),
+		)
+		scr1 = make_subcontracting_receipt(sco.name)
+		scr1.save()
+
+		# Enable `Inspection Required before Purchase` in Item Master
+		frappe.db.set_value("Item", fg_item, "inspection_required_before_purchase", 1)
+
+		# ValidationError should be raised as Quality Inspection is not created/linked
+		self.assertRaises(frappe.ValidationError, scr1.submit)
+
+		qa = create_quality_inspection(
+			reference_type="Subcontracting Receipt",
+			reference_name=scr1.name,
+			inspection_type="Incoming",
+			item_code=fg_item,
+		)
+		scr1.reload()
+		self.assertEqual(scr1.items[0].quality_inspection, qa.name)
+
+		# SCR should be submitted successfully as Quality Inspection is set
+		scr1.submit()
+		qa.cancel()
+		scr1.reload()
+		scr1.cancel()
+
+		scr2 = make_subcontracting_receipt(sco.name)
+		scr2.save()
+
+		# Disable `Inspection Required before Purchase` in Item Master
+		frappe.db.set_value("Item", fg_item, "inspection_required_before_purchase", 0)
+
+		# ValidationError should not be raised as `Inspection Required before Purchase` is disabled
+		scr2.submit()
+
+	def test_scrap_items_for_subcontracting_receipt(self):
+		set_backflush_based_on("BOM")
+
+		fg_item = "Subcontracted Item SA1"
+
+		# Create Raw Materials
+		raw_materials = [
+			make_item(properties={"is_stock_item": 1, "valuation_rate": 100}).name,
+			make_item(properties={"is_stock_item": 1, "valuation_rate": 200}).name,
+		]
+
+		# Create Scrap Items
+		scrap_item_1 = make_item(properties={"is_stock_item": 1, "valuation_rate": 10}).name
+		scrap_item_2 = make_item(properties={"is_stock_item": 1, "valuation_rate": 20}).name
+		scrap_items = [scrap_item_1, scrap_item_2]
+
+		service_items = [
+			{
+				"warehouse": "_Test Warehouse - _TC",
+				"item_code": "Subcontracted Service Item 1",
+				"qty": 10,
+				"rate": 100,
+				"fg_item": fg_item,
+				"fg_item_qty": 10,
+			},
+		]
+
+		# Create BOM with Scrap Items
+		bom = make_bom(
+			item=fg_item, raw_materials=raw_materials, rate=100, currency="INR", do_not_submit=True
+		)
+		for idx, item in enumerate(bom.items):
+			item.qty = 1 * (idx + 1)
+		for idx, item in enumerate(scrap_items):
+			bom.append(
+				"scrap_items",
+				{
+					"item_code": item,
+					"stock_qty": 1 * (idx + 1),
+					"rate": 10 * (idx + 1),
+				},
+			)
+		bom.save()
+		bom.submit()
+
+		# Create PO and SCO
+		sco = get_subcontracting_order(service_items=service_items)
+
+		# Inward Raw Materials
+		rm_items = get_rm_items(sco.supplied_items)
+		itemwise_details = make_stock_in_entry(rm_items=rm_items)
+
+		# Transfer RM's to Subcontractor
+		make_stock_transfer_entry(
+			sco_no=sco.name,
+			rm_items=rm_items,
+			itemwise_details=copy.deepcopy(itemwise_details),
+		)
+
+		# Create Subcontracting Receipt
+		scr = make_subcontracting_receipt(sco.name)
+		scr.save()
+		scr.get_scrap_items()
+
+		# Test - 1: Scrap Items should be fetched from BOM in items table with `is_scrap_item` = 1
+		scr_scrap_items = set([item.item_code for item in scr.items if item.is_scrap_item])
+		self.assertEqual(len(scr.items), 3)  # 1 FG Item + 2 Scrap Items
+		self.assertEqual(scr_scrap_items, set(scrap_items))
+
+		scr.submit()
+
 
 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 d728780..38432be 100644
--- a/erpnext/subcontracting/doctype/subcontracting_receipt_item/subcontracting_receipt_item.json
+++ b/erpnext/subcontracting/doctype/subcontracting_receipt_item/subcontracting_receipt_item.json
@@ -10,6 +10,7 @@
   "item_code",
   "column_break_2",
   "item_name",
+  "is_scrap_item",
   "section_break_4",
   "description",
   "brand",
@@ -24,28 +25,27 @@
   "col_break2",
   "stock_uom",
   "conversion_factor",
-  "tracking_section",
-  "col_break_tracking_section",
   "rate_and_amount",
   "rate",
   "amount",
-  "recalculate_rate",
   "column_break_19",
   "rm_cost_per_qty",
   "service_cost_per_qty",
   "additional_cost_per_qty",
+  "scrap_cost_per_qty",
   "rm_supp_cost",
   "warehouse_and_reference",
   "warehouse",
-  "rejected_warehouse",
   "subcontracting_order",
-  "column_break_40",
-  "schedule_date",
-  "quality_inspection",
   "subcontracting_order_item",
   "subcontracting_receipt_item",
-  "section_break_45",
+  "column_break_40",
+  "rejected_warehouse",
   "bom",
+  "quality_inspection",
+  "schedule_date",
+  "reference_name",
+  "section_break_45",
   "serial_and_batch_bundle",
   "serial_no",
   "col_break5",
@@ -85,12 +85,13 @@
    "fieldtype": "Column Break"
   },
   {
+   "fetch_from": "item_code.item_name",
+   "fetch_if_empty": 1,
    "fieldname": "item_name",
    "fieldtype": "Data",
    "in_global_search": 1,
    "label": "Item Name",
-   "print_hide": 1,
-   "reqd": 1
+   "print_hide": 1
   },
   {
    "collapsible": 1,
@@ -99,11 +100,12 @@
    "label": "Description"
   },
   {
+   "fetch_from": "item_code.description",
+   "fetch_if_empty": 1,
    "fieldname": "description",
    "fieldtype": "Text Editor",
    "label": "Description",
    "print_width": "300px",
-   "reqd": 1,
    "width": "300px"
   },
   {
@@ -157,6 +159,7 @@
    "no_copy": 1,
    "print_hide": 1,
    "print_width": "100px",
+   "read_only_depends_on": "eval: doc.is_scrap_item",
    "width": "100px"
   },
   {
@@ -198,7 +201,6 @@
    "options": "currency",
    "print_width": "100px",
    "read_only": 1,
-   "read_only_depends_on": "eval: doc.recalculate_rate",
    "width": "100px"
   },
   {
@@ -214,6 +216,8 @@
    "fieldtype": "Column Break"
   },
   {
+   "default": "0",
+   "depends_on": "eval: !doc.is_scrap_item",
    "fieldname": "rm_cost_per_qty",
    "fieldtype": "Currency",
    "label": "Raw Material Cost Per Qty",
@@ -221,6 +225,8 @@
    "read_only": 1
   },
   {
+   "default": "0",
+   "depends_on": "eval: !doc.is_scrap_item",
    "fieldname": "service_cost_per_qty",
    "fieldtype": "Currency",
    "label": "Service Cost Per Qty",
@@ -229,6 +235,7 @@
   },
   {
    "default": "0",
+   "depends_on": "eval: !doc.is_scrap_item",
    "fieldname": "additional_cost_per_qty",
    "fieldtype": "Currency",
    "label": "Additional Cost Per Qty",
@@ -260,6 +267,7 @@
    "options": "Warehouse",
    "print_hide": 1,
    "print_width": "100px",
+   "read_only_depends_on": "eval: doc.is_scrap_item",
    "width": "100px"
   },
   {
@@ -295,7 +303,8 @@
   },
   {
    "fieldname": "section_break_45",
-   "fieldtype": "Section Break"
+   "fieldtype": "Section Break",
+   "label": "Serial and Batch Details"
   },
   {
    "depends_on": "eval:!doc.is_fixed_asset",
@@ -321,7 +330,8 @@
    "fieldtype": "Small Text",
    "label": "Rejected Serial No",
    "no_copy": 1,
-   "print_hide": 1
+   "print_hide": 1,
+   "read_only": 1
   },
   {
    "fieldname": "subcontracting_order_item",
@@ -345,7 +355,8 @@
    "label": "BOM",
    "no_copy": 1,
    "options": "BOM",
-   "print_hide": 1
+   "print_hide": 1,
+   "read_only_depends_on": "eval: doc.is_scrap_item"
   },
   {
    "fetch_from": "item_code.brand",
@@ -411,14 +422,6 @@
    "fieldtype": "Column Break"
   },
   {
-   "fieldname": "tracking_section",
-   "fieldtype": "Section Break"
-  },
-  {
-   "fieldname": "col_break_tracking_section",
-   "fieldtype": "Column Break"
-  },
-  {
    "fieldname": "accounting_dimensions_section",
    "fieldtype": "Section Break",
    "label": "Accounting Dimensions"
@@ -456,6 +459,7 @@
    "print_hide": 1
   },
   {
+   "default": "0",
    "depends_on": "returned_qty",
    "fieldname": "returned_qty",
    "fieldtype": "Float",
@@ -470,12 +474,6 @@
    "label": "Accounting Details"
   },
   {
-   "default": "1",
-   "fieldname": "recalculate_rate",
-   "fieldtype": "Check",
-   "label": "Recalculate Rate"
-  },
-  {
    "fieldname": "serial_and_batch_bundle",
    "fieldtype": "Link",
    "label": "Serial and Batch Bundle",
@@ -490,12 +488,40 @@
    "no_copy": 1,
    "options": "Serial and Batch Bundle",
    "print_hide": 1
+  },
+  {
+   "default": "0",
+   "depends_on": "eval: !doc.bom",
+   "fieldname": "is_scrap_item",
+   "fieldtype": "Check",
+   "label": "Is Scrap Item",
+   "no_copy": 1,
+   "print_hide": 1,
+   "read_only_depends_on": "eval: doc.bom"
+  },
+  {
+   "default": "0",
+   "depends_on": "eval: !doc.is_scrap_item",
+   "fieldname": "scrap_cost_per_qty",
+   "fieldtype": "Float",
+   "label": "Scrap Cost Per Qty",
+   "no_copy": 1,
+   "non_negative": 1,
+   "read_only": 1
+  },
+  {
+   "fieldname": "reference_name",
+   "fieldtype": "Data",
+   "hidden": 1,
+   "label": "Reference Name",
+   "no_copy": 1,
+   "read_only": 1
   }
  ],
  "idx": 1,
  "istable": 1,
  "links": [],
- "modified": "2023-07-06 18:43:45.599761",
+ "modified": "2023-09-03 17:04:21.214316",
  "modified_by": "Administrator",
  "module": "Subcontracting",
  "name": "Subcontracting Receipt Item",
diff --git a/erpnext/support/doctype/service_level_agreement/service_level_agreement.json b/erpnext/support/doctype/service_level_agreement/service_level_agreement.json
index 1c6f24b..5882033 100644
--- a/erpnext/support/doctype/service_level_agreement/service_level_agreement.json
+++ b/erpnext/support/doctype/service_level_agreement/service_level_agreement.json
@@ -192,7 +192,7 @@
   }
  ],
  "links": [],
- "modified": "2023-04-21 17:16:56.192560",
+ "modified": "2023-08-28 22:17:54.740924",
  "modified_by": "Administrator",
  "module": "Support",
  "name": "Service Level Agreement",
@@ -213,7 +213,7 @@
   },
   {
    "read": 1,
-   "role": "All"
+   "role": "Desk User"
   }
  ],
  "sort_field": "modified",
diff --git a/erpnext/templates/generators/item/item_add_to_cart.html b/erpnext/templates/generators/item/item_add_to_cart.html
index 1381dfe..9bd3f75 100644
--- a/erpnext/templates/generators/item/item_add_to_cart.html
+++ b/erpnext/templates/generators/item/item_add_to_cart.html
@@ -49,7 +49,7 @@
 				<span class="in-green has-stock">
 					{{ _('In stock') }}
 					{% if product_info.show_stock_qty and product_info.stock_qty %}
-						({{ product_info.stock_qty[0][0] }})
+						({{ product_info.stock_qty }})
 					{% endif %}
 				</span>
 			{% endif %}
diff --git a/erpnext/templates/includes/integrations/gocardless_checkout.js b/erpnext/templates/includes/integrations/gocardless_checkout.js
deleted file mode 100644
index b18d550..0000000
--- a/erpnext/templates/includes/integrations/gocardless_checkout.js
+++ /dev/null
@@ -1,24 +0,0 @@
-$(document).ready(function() {
-	var data = {{ frappe.form_dict | json }};
-	var doctype = "{{ reference_doctype }}"
-	var docname = "{{ reference_docname }}"
-
-	frappe.call({
-		method: "erpnext.templates.pages.integrations.gocardless_checkout.check_mandate",
-		freeze: true,
-		headers: {
-			"X-Requested-With": "XMLHttpRequest"
-		},
-		args: {
-			"data": JSON.stringify(data),
-			"reference_doctype": doctype,
-			"reference_docname": docname
-		},
-		callback: function(r) {
-			if (r.message) {
-				window.location.href = r.message.redirect_to
-			}
-		}
-	})
-
-})
diff --git a/erpnext/templates/includes/integrations/gocardless_confirmation.js b/erpnext/templates/includes/integrations/gocardless_confirmation.js
deleted file mode 100644
index fee1d2b..0000000
--- a/erpnext/templates/includes/integrations/gocardless_confirmation.js
+++ /dev/null
@@ -1,24 +0,0 @@
-$(document).ready(function() {
-	var redirect_flow_id = "{{ redirect_flow_id }}";
-	var doctype = "{{ reference_doctype }}";
-	var docname = "{{ reference_docname }}";
-
-	frappe.call({
-		method: "erpnext.templates.pages.integrations.gocardless_confirmation.confirm_payment",
-		freeze: true,
-		headers: {
-			"X-Requested-With": "XMLHttpRequest"
-		},
-		args: {
-			"redirect_flow_id": redirect_flow_id,
-			"reference_doctype": doctype,
-			"reference_docname": docname
-		},
-		callback: function(r) {
-			if (r.message) {
-				window.location.href = r.message.redirect_to;
-			}
-		}
-	});
-
-});
diff --git a/erpnext/templates/includes/transaction_row.html b/erpnext/templates/includes/transaction_row.html
index 72d498c..a498ba0 100644
--- a/erpnext/templates/includes/transaction_row.html
+++ b/erpnext/templates/includes/transaction_row.html
@@ -15,10 +15,14 @@
 				{{ doc.items_preview }}
 			</div>
 		</div>
-		{% if doc.get('grand_total') %}
+		{% if doc.is_rounded_total_disabled() and doc.get('grand_total') %}
 			<div class="col-sm-3 text-right font-weight-bold item-total">
 				{{ doc.get_formatted("grand_total") }}
 			</div>
+		{% elif doc.get('rounded_total') %}
+			<div class="col-sm-3 text-right font-weight-bold item-total">
+				{{ doc.get_formatted("rounded_total") }}
+			</div>
 		{% endif %}
 	</div>
 	<a class="transaction-item-link" href="/{{ pathname }}/{{ doc.name }}">Link</a>
diff --git a/erpnext/templates/pages/integrations/__init__.py b/erpnext/templates/pages/integrations/__init__.py
deleted file mode 100644
index e69de29..0000000
--- a/erpnext/templates/pages/integrations/__init__.py
+++ /dev/null
diff --git a/erpnext/templates/pages/integrations/gocardless_checkout.html b/erpnext/templates/pages/integrations/gocardless_checkout.html
deleted file mode 100644
index 6072db4..0000000
--- a/erpnext/templates/pages/integrations/gocardless_checkout.html
+++ /dev/null
@@ -1,16 +0,0 @@
-{% extends "templates/web.html" %}
-
-{% block title %} Payment {% endblock %}
-
-{%- block header -%}{% endblock %}
-
-{% block script %}
-<script>{% include "templates/includes/integrations/gocardless_checkout.js" %}</script>
-{% endblock %}
-
-{%- block page_content -%}
-<p class='lead text-center'>
-	<span class='gocardless-loading'>{{ _("Loading Payment System") }}</span>
-</p>
-
-{% endblock %}
diff --git a/erpnext/templates/pages/integrations/gocardless_checkout.py b/erpnext/templates/pages/integrations/gocardless_checkout.py
deleted file mode 100644
index 655be52..0000000
--- a/erpnext/templates/pages/integrations/gocardless_checkout.py
+++ /dev/null
@@ -1,100 +0,0 @@
-# Copyright (c) 2018, Frappe Technologies Pvt. Ltd. and Contributors
-# License: GNU General Public License v3. See license.txt
-
-import json
-
-import frappe
-from frappe import _
-from frappe.utils import flt, get_url
-
-from erpnext.erpnext_integrations.doctype.gocardless_settings.gocardless_settings import (
-	get_gateway_controller,
-	gocardless_initialization,
-)
-
-no_cache = 1
-
-expected_keys = (
-	"amount",
-	"title",
-	"description",
-	"reference_doctype",
-	"reference_docname",
-	"payer_name",
-	"payer_email",
-	"order_id",
-	"currency",
-)
-
-
-def get_context(context):
-	context.no_cache = 1
-
-	# all these keys exist in form_dict
-	if not (set(expected_keys) - set(frappe.form_dict.keys())):
-		for key in expected_keys:
-			context[key] = frappe.form_dict[key]
-
-		context["amount"] = flt(context["amount"])
-
-		gateway_controller = get_gateway_controller(context.reference_docname)
-		context["header_img"] = frappe.db.get_value(
-			"GoCardless Settings", gateway_controller, "header_img"
-		)
-
-	else:
-		frappe.redirect_to_message(
-			_("Some information is missing"),
-			_("Looks like someone sent you to an incomplete URL. Please ask them to look into it."),
-		)
-		frappe.local.flags.redirect_location = frappe.local.response.location
-		raise frappe.Redirect
-
-
-@frappe.whitelist(allow_guest=True)
-def check_mandate(data, reference_doctype, reference_docname):
-	data = json.loads(data)
-
-	client = gocardless_initialization(reference_docname)
-
-	payer = frappe.get_doc("Customer", data["payer_name"])
-
-	if payer.customer_type == "Individual" and payer.customer_primary_contact is not None:
-		primary_contact = frappe.get_doc("Contact", payer.customer_primary_contact)
-		prefilled_customer = {
-			"company_name": payer.name,
-			"given_name": primary_contact.first_name,
-		}
-		if primary_contact.last_name is not None:
-			prefilled_customer.update({"family_name": primary_contact.last_name})
-
-		if primary_contact.email_id is not None:
-			prefilled_customer.update({"email": primary_contact.email_id})
-		else:
-			prefilled_customer.update({"email": frappe.session.user})
-
-	else:
-		prefilled_customer = {"company_name": payer.name, "email": frappe.session.user}
-
-	success_url = get_url(
-		"./integrations/gocardless_confirmation?reference_doctype="
-		+ reference_doctype
-		+ "&reference_docname="
-		+ reference_docname
-	)
-
-	try:
-		redirect_flow = client.redirect_flows.create(
-			params={
-				"description": _("Pay {0} {1}").format(data["amount"], data["currency"]),
-				"session_token": frappe.session.user,
-				"success_redirect_url": success_url,
-				"prefilled_customer": prefilled_customer,
-			}
-		)
-
-		return {"redirect_to": redirect_flow.redirect_url}
-
-	except Exception as e:
-		frappe.log_error("GoCardless Payment Error")
-		return {"redirect_to": "/integrations/payment-failed"}
diff --git a/erpnext/templates/pages/integrations/gocardless_confirmation.html b/erpnext/templates/pages/integrations/gocardless_confirmation.html
deleted file mode 100644
index d961c63..0000000
--- a/erpnext/templates/pages/integrations/gocardless_confirmation.html
+++ /dev/null
@@ -1,16 +0,0 @@
-{% extends "templates/web.html" %}
-
-{% block title %} Payment {% endblock %}
-
-{%- block header -%}{% endblock %}
-
-{% block script %}
-<script>{% include "templates/includes/integrations/gocardless_confirmation.js" %}</script>
-{% endblock %}
-
-{%- block page_content -%}
-<p class='lead text-center'>
-	<span class='gocardless-loading'>{{ _("Payment Confirmation") }}</span>
-</p>
-
-{% endblock %}
diff --git a/erpnext/templates/pages/integrations/gocardless_confirmation.py b/erpnext/templates/pages/integrations/gocardless_confirmation.py
deleted file mode 100644
index 559aa48..0000000
--- a/erpnext/templates/pages/integrations/gocardless_confirmation.py
+++ /dev/null
@@ -1,106 +0,0 @@
-# Copyright (c) 2018, Frappe Technologies Pvt. Ltd. and Contributors
-# License: GNU General Public License v3. See license.txt
-
-import frappe
-from frappe import _
-
-from erpnext.erpnext_integrations.doctype.gocardless_settings.gocardless_settings import (
-	get_gateway_controller,
-	gocardless_initialization,
-)
-
-no_cache = 1
-
-expected_keys = ("redirect_flow_id", "reference_doctype", "reference_docname")
-
-
-def get_context(context):
-	context.no_cache = 1
-
-	# all these keys exist in form_dict
-	if not (set(expected_keys) - set(frappe.form_dict.keys())):
-		for key in expected_keys:
-			context[key] = frappe.form_dict[key]
-
-	else:
-		frappe.redirect_to_message(
-			_("Some information is missing"),
-			_("Looks like someone sent you to an incomplete URL. Please ask them to look into it."),
-		)
-		frappe.local.flags.redirect_location = frappe.local.response.location
-		raise frappe.Redirect
-
-
-@frappe.whitelist(allow_guest=True)
-def confirm_payment(redirect_flow_id, reference_doctype, reference_docname):
-
-	client = gocardless_initialization(reference_docname)
-
-	try:
-		redirect_flow = client.redirect_flows.complete(
-			redirect_flow_id, params={"session_token": frappe.session.user}
-		)
-
-		confirmation_url = redirect_flow.confirmation_url
-		gocardless_success_page = frappe.get_hooks("gocardless_success_page")
-		if gocardless_success_page:
-			confirmation_url = frappe.get_attr(gocardless_success_page[-1])(
-				reference_doctype, reference_docname
-			)
-
-		data = {
-			"mandate": redirect_flow.links.mandate,
-			"customer": redirect_flow.links.customer,
-			"redirect_to": confirmation_url,
-			"redirect_message": "Mandate successfully created",
-			"reference_doctype": reference_doctype,
-			"reference_docname": reference_docname,
-		}
-
-		try:
-			create_mandate(data)
-		except Exception as e:
-			frappe.log_error("GoCardless Mandate Registration Error")
-
-		gateway_controller = get_gateway_controller(reference_docname)
-		frappe.get_doc("GoCardless Settings", gateway_controller).create_payment_request(data)
-
-		return {"redirect_to": confirmation_url}
-
-	except Exception as e:
-		frappe.log_error("GoCardless Payment Error")
-		return {"redirect_to": "/integrations/payment-failed"}
-
-
-def create_mandate(data):
-	data = frappe._dict(data)
-	frappe.logger().debug(data)
-
-	mandate = data.get("mandate")
-
-	if frappe.db.exists("GoCardless Mandate", mandate):
-		return
-
-	else:
-		reference_doc = frappe.db.get_value(
-			data.get("reference_doctype"),
-			data.get("reference_docname"),
-			["reference_doctype", "reference_name"],
-			as_dict=1,
-		)
-		erpnext_customer = frappe.db.get_value(
-			reference_doc.reference_doctype, reference_doc.reference_name, ["customer_name"], as_dict=1
-		)
-
-		try:
-			frappe.get_doc(
-				{
-					"doctype": "GoCardless Mandate",
-					"mandate": mandate,
-					"customer": erpnext_customer.customer_name,
-					"gocardless_customer": data.get("customer"),
-				}
-			).insert(ignore_permissions=True)
-
-		except Exception:
-			frappe.log_error("Gocardless: Unable to create mandate")
diff --git a/erpnext/templates/pages/wishlist.py b/erpnext/templates/pages/wishlist.py
index d70f27c..17607e4 100644
--- a/erpnext/templates/pages/wishlist.py
+++ b/erpnext/templates/pages/wishlist.py
@@ -25,9 +25,19 @@
 
 
 def get_stock_availability(item_code, warehouse):
-	stock_qty = frappe.utils.flt(
-		frappe.db.get_value("Bin", {"item_code": item_code, "warehouse": warehouse}, "actual_qty")
-	)
+	from erpnext.stock.doctype.warehouse.warehouse import get_child_warehouses
+
+	if warehouse and frappe.get_cached_value("Warehouse", warehouse, "is_group") == 1:
+		warehouses = get_child_warehouses(warehouse)
+	else:
+		warehouses = [warehouse] if warehouse else []
+
+	stock_qty = 0.0
+	for warehouse in warehouses:
+		stock_qty += frappe.utils.flt(
+			frappe.db.get_value("Bin", {"item_code": item_code, "warehouse": warehouse}, "actual_qty")
+		)
+
 	return bool(stock_qty)
 
 
diff --git a/erpnext/tests/test_regional.py b/erpnext/tests/test_regional.py
index 2c16def..55c8bb7 100644
--- a/erpnext/tests/test_regional.py
+++ b/erpnext/tests/test_regional.py
@@ -14,6 +14,3 @@
 	def test_regional_overrides(self):
 		frappe.flags.country = "Maldives"
 		self.assertEqual(test_method(), "original")
-
-		frappe.flags.country = "France"
-		self.assertEqual(test_method(), "overridden")
diff --git a/erpnext/translations/af.csv b/erpnext/translations/af.csv
index 417f1ec..d4b823d 100644
--- a/erpnext/translations/af.csv
+++ b/erpnext/translations/af.csv
@@ -113,7 +113,6 @@
 Add Items,Voeg items by,
 Add Leads,Voeg Leads by,
 Add Multiple Tasks,Voeg verskeie take by,
-Add Row,Voeg ry by,
 Add Sales Partners,Voeg verkoopsvennote by,
 Add Serial No,Voeg serienommer by,
 Add Students,Voeg studente by,
@@ -211,9 +210,7 @@
 An error occurred during the update process,&#39;N Fout het voorgekom tydens die opdateringsproses,
 "An item exists with same name ({0}), please change the item group name or rename the item","&#39;N Item bestaan met dieselfde naam ({0}), verander asseblief die itemgroepnaam of hernoem die item",
 Analyst,ontleder,
-Analytics,Analytics,
 Annual Billing: {0},Jaarlikse faktuur: {0},
-Anonymous,Anoniem,
 Another Budget record '{0}' already exists against {1} '{2}' and account '{3}' for fiscal year {4},Nog &#39;n begroting rekord &#39;{0}&#39; bestaan reeds teen {1} &#39;{2}&#39; en rekening &#39;{3}&#39; vir fiskale jaar {4},
 Another Period Closing Entry {0} has been made after {1},&#39;N Ander periode sluitingsinskrywing {0} is gemaak na {1},
 Another Sales Person {0} exists with the same Employee id,Nog &#39;n verkoopspersoon {0} bestaan uit dieselfde werknemer-ID,
@@ -283,14 +280,12 @@
 Attendance not submitted for {0} as {1} on leave.,Bywoning is nie vir {0} as {1} op verlof ingedien nie.,
 Attribute table is mandatory,Eienskapstabel is verpligtend,
 Attribute {0} selected multiple times in Attributes Table,Attribuut {0} het verskeie kere gekies in Attributes Table,
-Author,skrywer,
 Authorized Signatory,Gemagtigde ondertekenaar,
 Auto Material Requests Generated,Outomatiese Materiaal Versoeke Genereer,
 Auto Repeat,Outo Herhaal,
 Auto repeat document updated,Outo-herhaal dokument opgedateer,
 Automotive,Automotive,
 Available,beskikbaar,
-Available Leaves,Beskikbare blare,
 Available Qty,Beskikbare hoeveelheid,
 Available Selling,Beskikbaar verkoop,
 Available for use date is required,Beskikbaar vir gebruik datum is nodig,
@@ -340,7 +335,6 @@
 Base URL,Basis-URL,
 Based On,Gebaseer op,
 Based On Payment Terms,Gebaseer op betalingsvoorwaardes,
-Basic,basiese,
 Batch,batch,
 Batch Entries,Joernaalinskrywings,
 Batch ID is mandatory,Lotnommer is verpligtend,
@@ -361,7 +355,6 @@
 Billable Hours,Faktureerbare ure,
 Billed,billed,
 Billed Amount,Gefactureerde bedrag,
-Billing,Rekening,
 Billing Address,Rekeningadres,
 Billing Address is same as Shipping Address,Faktuuradres is dieselfde as afleweringsadres,
 Billing Amount,Rekening Bedrag,
@@ -560,7 +553,6 @@
 Consumed Qty,Verbruikte hoeveelheid,
 Consumer Products,Verbruikersprodukte,
 Contact,Kontak,
-Contact Details,Kontakbesonderhede,
 Contact Us,Kontak Ons,
 Content,inhoud,
 Content Masters,Inhoudsmeesters,
@@ -715,7 +707,6 @@
 Date of Joining,Datum van aansluiting,
 Date of Joining must be greater than Date of Birth,Datum van aansluiting moet groter wees as Geboortedatum,
 Date of Transaction,Datum van transaksie,
-Datetime,Datum Tyd,
 Day,dag,
 Debit,debiet-,
 Debit ({0}),Debiet ({0}),
@@ -874,7 +865,6 @@
 Employee cannot report to himself.,Werknemer kan nie aan homself rapporteer nie.,
 Employee {0} has already applied for {1} between {2} and {3} : ,Werknemer {0} het reeds aansoek gedoen vir {1} tussen {2} en {3}:,
 Employee {0} of grade {1} have no default leave policy,Werknemer {0} van graad {1} het geen verlofverlofbeleid nie,
-Enable,in staat te stel,
 Enable / disable currencies.,Aktiveer / deaktiveer geldeenhede.,
 Enabled,enabled,
 "Enabling 'Use for Shopping Cart', as Shopping Cart is enabled and there should be at least one Tax Rule for Shopping Cart","Aktiveer &#39;Gebruik vir winkelwagentje&#39;, aangesien winkelwagentjie geaktiveer is en daar moet ten minste een belastingreël vir die winkelwagentjie wees",
@@ -905,7 +895,6 @@
 Error: Not a valid id?,Fout: Nie &#39;n geldige ID nie?,
 Estimated Cost,Geskatte koste,
 "Even if there are multiple Pricing Rules with highest priority, then following internal priorities are applied:","Selfs as daar verskeie prysreëls met die hoogste prioriteit is, word die volgende interne prioriteite toegepas:",
-Event,gebeurtenis,
 Exchange Gain/Loss,Uitruil wins / verlies,
 Exchange Rate Revaluation master.,Wisselkoersherwaarderingsmeester.,
 Exchange Rate must be same as {0} {1} ({2}),Wisselkoers moet dieselfde wees as {0} {1} ({2}),
@@ -1032,7 +1021,6 @@
 From value must be less than to value in row {0},Van waarde moet minder wees as om in ry {0} te waardeer.,
 From {0} | {1} {2},Van {0} | {1} {2},
 Fulfillment,vervulling,
-Full,volle,
 Full Name,Volle naam,
 Fully Depreciated,Ten volle gedepresieer,
 Furnitures and Fixtures,Furnitures and Fixtures,
@@ -1133,7 +1121,6 @@
 Hub Sync ID,Hub-sinkronisasie-ID,
 Human Resource,Menslike hulpbronne,
 Human Resources,Menslike hulpbronne,
-IFSC Code,IFSC-kode,
 IGST Amount,IGST Bedrag,
 IP Address,IP adres,
 ITC Available (whether in full op part),ITC beskikbaar (of dit volledig is),
@@ -1185,7 +1172,6 @@
 Ineligible ITC,Ongeskik ITC,
 Initiated,geïnisieer,
 Inpatient Record,Inpatient Rekord,
-Insert,insetsel,
 Installation Note,Installasie Nota,
 Installation Note {0} has already been submitted,Installasie Nota {0} is reeds ingedien,
 Installation date cannot be before delivery date for Item {0},Installasiedatum kan nie voor afleweringsdatum vir Item {0} wees nie.,
@@ -1197,7 +1183,6 @@
 Insurance Start date should be less than Insurance End date,Versekering Aanvangsdatum moet minder wees as Versekerings-einddatum,
 Integrated Tax,Geïntegreerde Belasting,
 Inter-State Supplies,Inter-staatsbenodigdhede,
-Interests,Belange,
 Internet Publishing,Internet Publishing,
 Intra-State Supplies,Binnelandse toestand voorrade,
 Introduction,inleiding,
@@ -1316,7 +1301,6 @@
 Lab testing datetime cannot be before collection datetime,Lab testing date time kan nie voor die versameling date time,
 Label,Etiket,
 Laboratory,laboratorium,
-Language Name,Taal Naam,
 Large,groot,
 Last Communication,Laaste Kommunikasie,
 Last Communication Date,Laaste Kommunikasiedatum,
@@ -1347,8 +1331,6 @@
 Letter Heads for print templates.,Briefhoofde vir druk sjablone.,
 Level,vlak,
 Liability,aanspreeklikheid,
-License,lisensie,
-Limit,limiet,
 Limit Crossed,Gekruiste Gekruis,
 Link to Material Request,Skakel na Materiaal Versoek,
 List of all share transactions,Lys van alle aandeel transaksies,
@@ -1359,7 +1341,6 @@
 Loans (Liabilities),Lenings (laste),
 Loans and Advances (Assets),Lenings en voorskotte (bates),
 Local,plaaslike,
-Log,Meld,
 Logs for maintaining sms delivery status,Logs vir die instandhouding van sms-leweringstatus,
 Lost,verloor,
 Lost Reasons,Verlore redes,
@@ -1445,7 +1426,6 @@
 Medical Department,Mediese Departement,
 Medical Record,Mediese rekord,
 Medium,medium,
-Meeting,Ontmoet,
 Member Activity,Lid Aktiwiteit,
 Member ID,lidmaatskapnommer,
 Member Name,Lid Naam,
@@ -1495,7 +1475,6 @@
 Multiple Variants,Veelvuldige Varianten,
 Multiple fiscal years exist for the date {0}. Please set company in Fiscal Year,Verskeie fiskale jare bestaan vir die datum {0}. Stel asseblief die maatskappy in die fiskale jaar,
 Music,Musiek,
-My Account,My rekening,
 Name error: {0},Naam fout: {0},
 Name of new Account. Note: Please don't create accounts for Customers and Suppliers,Naam van nuwe rekening. Nota: skep asseblief nie rekeninge vir kliënte en verskaffers nie,
 Name or Email is mandatory,Naam of e-pos is verpligtend,
@@ -1538,7 +1517,6 @@
 New credit limit is less than current outstanding amount for the customer. Credit limit has to be atleast {0},Nuwe kredietlimiet is minder as die huidige uitstaande bedrag vir die kliënt. Kredietlimiet moet ten minste {0} wees,
 New task,Nuwe taak,
 New {0} pricing rules are created,Nuwe {0} prysreëls word geskep,
-Newsletters,nuusbriewe,
 Newspaper Publishers,Koerantuitgewers,
 Next,volgende,
 Next Contact By cannot be same as the Lead Email Address,Volgende kontak deur kan nie dieselfde wees as die hoof epos adres nie,
@@ -1686,7 +1664,6 @@
 Other,ander,
 Other Reports,Ander verslae,
 "Other outward supplies(Nil rated,Exempted)","Ander voorrade (nul beoordeel, vrygestel)",
-Others,ander,
 Out Qty,Uit Aantal,
 Out Value,Uitwaarde,
 Out of Order,Buite werking,
@@ -1726,7 +1703,6 @@
 Party Type and Party is mandatory for {0} account,Party Tipe en Party is verpligtend vir {0} rekening,
 Party Type is mandatory,Party Tipe is verpligtend,
 Party is mandatory,Party is verpligtend,
-Password,wagwoord,
 Past Due Date,Verlede Vervaldatum,
 Patient,pasiënt,
 Patient Appointment,Pasiënt Aanstelling,
@@ -1784,7 +1760,6 @@
 Pharmaceutical,farmaseutiese,
 Pharmaceuticals,farmaseutiese,
 Physician,dokter,
-Pincode,PIN-kode,
 Place Of Supply (State/UT),Plek van Voorsiening (Staat / UT),
 Place Order,Plaas bestelling,
 Plan Name,Plan Naam,
@@ -1896,7 +1871,6 @@
 Please select date,Kies asseblief datum,
 Please select item code,Kies asseblief die itemkode,
 Please select month and year,Kies asseblief maand en jaar,
-Please select prefix first,Kies asseblief voorvoegsel eerste,
 Please select the Company,Kies asseblief die Maatskappy,
 Please select the Multiple Tier Program type for more than one collection rules.,Kies asseblief die Meervoudige Tier Program tipe vir meer as een versameling reëls.,
 Please select the assessment group other than 'All Assessment Groups',Kies asseblief die assesseringsgroep anders as &#39;Alle assesseringsgroepe&#39;,
@@ -1913,7 +1887,6 @@
 Please set Company filter blank if Group By is 'Company',Stel asseblief die Maatskappyfilter leeg as Groep By &#39;Maatskappy&#39; is.,
 Please set Default Payroll Payable Account in Company {0},Stel asseblief die verstek betaalbare rekening in die maatskappy {0},
 Please set Depreciation related Accounts in Asset Category {0} or Company {1},Stel asseblief Waardeverminderingsverwante Rekeninge in Bate-kategorie {0} of Maatskappy {1},
-Please set Email Address,Stel asseblief e-pos adres in,
 Please set GST Accounts in GST Settings,Stel asseblief GST-rekeninge in GST-instellings,
 Please set Hotel Room Rate on {},Stel asseblief die kamer prys op (),
 Please set Number of Depreciations Booked,Stel asseblief die aantal afskrywings wat bespreek word,
@@ -1936,7 +1909,6 @@
 Please set the Email ID for the Student to send the Payment Request,Stel asseblief die E-posadres vir die Student in om die betalingsversoek te stuur,
 Please set the Item Code first,Stel asseblief die Item Kode eerste,
 Please set the Payment Schedule,Stel die betalingskedule in,
-Please set the series to be used.,Stel asseblief die reeks in wat gebruik gaan word.,
 Please set {0} for address {1},Stel {0} in vir adres {1},
 Please setup Students under Student Groups,Stel asseblief studente onder Studentegroepe op,
 Please specify Company,Spesifiseer asb. Maatskappy,
@@ -1953,7 +1925,6 @@
 Point-of-Sale,Punt van koop,
 Point-of-Sale Profile,Verkooppunt Profiel,
 Portal,portaal,
-Portal Settings,Portal instellings,
 Possible Supplier,Moontlike Verskaffer,
 Postal Expenses,Posuitgawes,
 Posting Date,Plasing datum,
@@ -2152,12 +2123,10 @@
 Reference No is mandatory if you entered Reference Date,Verwysingsnommer is verpligtend as u verwysingsdatum ingevoer het,
 Reference No.,Verwysingsnommer.,
 Reference Number,Verwysingsnommer,
-Reference Owner,Verwysings Eienaar,
 Reference Type,Verwysingstipe,
 "Reference: {0}, Item Code: {1} and Customer: {2}","Verwysing: {0}, Item Kode: {1} en Kliënt: {2}",
 References,verwysings,
 Refresh Token,Refresh Token,
-Region,streek,
 Register,registreer,
 Rejected,verwerp,
 Related,Verwante,
@@ -2179,7 +2148,6 @@
 Replace BOM and update latest price in all BOMs,Vervang BOM en verander nuutste prys in alle BOM&#39;s,
 Replied,antwoord,
 Report,verslag,
-Report Builder,Rapport Bouer,
 Report Type,Verslag Tipe,
 Report Type is mandatory,Verslag Tipe is verpligtend,
 Reports,Berigte,
@@ -2355,13 +2323,11 @@
 Same Company is entered more than once,Dieselfde maatskappy is meer as een keer ingeskryf,
 Same item cannot be entered multiple times.,Dieselfde item kan nie verskeie kere ingevoer word nie.,
 Same supplier has been entered multiple times,Dieselfde verskaffer is al verskeie kere ingeskryf,
-Sample,monster,
 Sample Collection,Voorbeeld versameling,
 Sample quantity {0} cannot be more than received quantity {1},Voorbeeldhoeveelheid {0} kan nie meer wees as die hoeveelheid ontvang nie {1},
 Sanctioned,beboet,
 Sand,sand,
 Saturday,Saterdag,
-Saved,gered,
 Saving {0},Stoor {0},
 Scan Barcode,Skandeer strepieskode,
 Schedule,skedule,
@@ -2463,7 +2429,6 @@
 Series Updated,Reeks Opgedateer,
 Series Updated Successfully,Reeks suksesvol opgedateer,
 Series is mandatory,Reeks is verpligtend,
-Series {0} already used in {1},Reeks {0} wat reeds in {1} gebruik word,
 Service,diens,
 Service Level Agreement,Diensvlakooreenkoms,
 Service Level Agreement.,Diensvlakooreenkoms.,
@@ -2479,7 +2444,6 @@
 Set Tax Rule for shopping cart,Stel belastingreël vir inkopiesentrum,
 Set as Closed,Stel as gesluit,
 Set as Completed,Stel as Voltooi,
-Set as Default,Stel as standaard,
 Set as Lost,Stel as verlore,
 Set as Open,Stel as oop,
 Set default inventory account for perpetual inventory,Stel verstekvoorraadrekening vir voortdurende voorraad,
@@ -2511,7 +2475,6 @@
 Shareholder,aandeelhouer,
 Ship To State,Stuur na staat,
 Shipments,verskepings,
-Shipping,Gestuur,
 Shipping Address,Posadres,
 "Shipping Address does not have country, which is required for this Shipping Rule","Posadres het geen land, wat benodig word vir hierdie Posbus",
 Shipping rule only applicable for Buying,Versending reël slegs van toepassing op Koop,
@@ -2564,7 +2527,6 @@
 Split Batch,Gesplete bondel,
 Split Issue,Gesplete uitgawe,
 Sports,Sport,
-Standard,Standard,
 Standard Buying,Standaard koop,
 Standard Selling,Standaardverkope,
 Standard contract terms for Sales or Purchase.,Standaardkontrakvoorwaardes vir Verkope of Aankope.,
@@ -2731,7 +2693,6 @@
 Terms and Conditions,Terme en voorwaardes,
 Terms and Conditions Template,Terme en Voorwaardes Sjabloon,
 Territory,gebied,
-Test,toets,
 Thank you for your business!,Dankie vir u besigheid!,
 The 'From Package No.' field must neither be empty nor it's value less than 1.,"Die &#39;From Package No.&#39; Veld moet nie leeg wees nie, of dit is minder as 1.",
 The Brand,Die Brand,
@@ -2848,7 +2809,6 @@
 Total (Without Tax),Totaal (Sonder Belasting),
 Total Achieved,Totaal behaal,
 Total Actual,Totaal Werklik,
-Total Allocated Leaves,Totale toegekende blare,
 Total Amount,Totale bedrag,
 Total Amount Credited,Totale bedrag gekrediteer,
 Total Applicable Charges in Purchase Receipt Items table must be same as Total Taxes and Charges,Totale Toepaslike Koste in Aankoopontvangste-items moet dieselfde wees as Totale Belasting en Heffings,
@@ -2892,7 +2852,6 @@
 Total(Amt),Totaal (Amt),
 Total(Qty),Totaal (Aantal),
 Traceability,naspeurbaarheid,
-Traceback,Spoor terug,
 Track Leads by Lead Source.,Volg leidrade deur die leidingsbron.,
 Transaction,transaksie,
 Transaction Date,Transaksie datum,
@@ -2930,7 +2889,6 @@
 UOM Conversion factor is required in row {0},UOM Gespreksfaktor word benodig in ry {0},
 UOM coversion factor required for UOM: {0} in Item: {1},UOM dekselfaktor benodig vir UOM: {0} in Item: {1},
 URL,URL,
-Unable to find DocType {0},Kan nie DocType {0} vind nie,
 Unable to find exchange rate for {0} to {1} for key date {2}. Please create a Currency Exchange record manually,Kan wisselkoers vir {0} tot {1} nie vind vir sleuteldatum {2}. Maak asseblief &#39;n Geldruilrekord handmatig,
 Unable to find score starting at {0}. You need to have standing scores covering 0 to 100,Kan nie telling begin vanaf {0}. U moet standpunte van 0 tot 100 hê,
 Unable to find variable: ,Kan nie veranderlike vind nie:,
@@ -2960,7 +2918,6 @@
 Upload your letter head and logo. (you can edit them later).,Laai jou briefhoof en logo op. (jy kan dit later wysig).,
 Upper Income,Boonste Inkomste,
 Use Sandbox,Gebruik Sandbox,
-Used Leaves,Gebruikte Blare,
 User,gebruiker,
 User ID,Gebruikers-ID,
 User ID not set for Employee {0},Gebruiker ID nie ingestel vir Werknemer {0},
@@ -3051,7 +3008,6 @@
 Website Settings,Webwerf-instellings,
 Wednesday,Woensdag,
 Week,week,
-Weekdays,weeksdae,
 Weekly,weeklikse,
 "Weight is mentioned,\nPlease mention ""Weight UOM"" too","Gewig word genoem, \ nBelang ook &quot;Gewig UOM&quot;",
 Welcome email sent,Welkom e-pos gestuur,
@@ -3072,7 +3028,6 @@
 Work Order {0} must be submitted,Werkopdrag {0} moet ingedien word,
 Work Orders Created: {0},Werkorders geskep: {0},
 Work-in-Progress Warehouse is required before Submit,Werk-in-Progress-pakhuis word vereis voor indiening,
-Workflow,Workflow,
 Working,Working,
 Working Hours,Werksure,
 Workstation,werkstasie,
@@ -3102,7 +3057,6 @@
 You need to be a user other than Administrator with System Manager and Item Manager roles to register on Marketplace.,Jy moet &#39;n ander gebruiker as Administrateur wees met Stelselbestuurder en Itembestuurderrolle om op Marketplace te registreer.,
 You need to be a user with System Manager and Item Manager roles to add users to Marketplace.,Jy moet &#39;n gebruiker wees met Stelselbestuurder en Itembestuurderrolle om gebruikers by Marketplace te voeg.,
 You need to be a user with System Manager and Item Manager roles to register on Marketplace.,Jy moet &#39;n gebruiker wees met Stelselbestuurder- en Itembestuurderrolle om op Marketplace te registreer.,
-You need to be logged in to access this page,Jy moet ingeteken wees om toegang tot hierdie bladsy te kry,
 You need to enable Shopping Cart,Jy moet winkelwagentjie aktiveer,
 You will lose records of previously generated invoices. Are you sure you want to restart this subscription?,U sal rekords verloor van voorheen gegenereerde fakture. Is jy seker jy wil hierdie intekening herbegin?,
 Your Organization,Jou organisasie,
@@ -3218,7 +3172,6 @@
 Assigned To,Toevertrou aan,
 Chat,chat,
 Completed By,Voltooi deur,
-County,County,
 Day of Week,Dag van die week,
 "Dear System Manager,","Geagte Stelselbestuurder,",
 Default Value,Standaard waarde,
@@ -3229,31 +3182,21 @@
 Fieldtype,Fieldtype,
 Help Articles,Hulpartikels,
 ID,ID,
-Images,beelde,
 Import,invoer,
 Language,Taal,
 Likes,Hou,
 Merge with existing,Voeg saam met bestaande,
-Office,kantoor,
 Orientation,geaardheid,
 Parent,Ouer,
-Passive,passiewe,
 Payment Failed,Betaling misluk,
-Permanent,permanente,
 Personal,persoonlike,
-Plant,plant,
 Post,Post,
-Postal,Postal,
 Postal Code,Poskode,
-Previous,vorige,
 Provider,verskaffer,
 Read Only,Lees net,
 Recipient,ontvanger,
 Reviews,resensies,
 Sender,sender,
-Shop,Winkel,
-Subsidiary,filiaal,
-There is some problem with the file url: {0},Daar is &#39;n probleem met die lêer url: {0},
 There were errors while sending email. Please try again.,Daar was foute tydens die stuur van e-pos. Probeer asseblief weer.,
 Values Changed,Waardes verander,
 or,of,
@@ -3280,19 +3223,16 @@
 Quality Feedback Template,Kwaliteit-terugvoersjabloon,
 Rules for applying different promotional schemes.,Reëls vir die toepassing van verskillende promosieskemas.,
 Show {0},Wys {0},
-"Special Characters except '-', '#', '.', '/', '{{' and '}}' not allowed in naming series {0}","Spesiale karakters behalwe &quot;-&quot;, &quot;#&quot;, &quot;.&quot;, &quot;/&quot;, &quot;{{&quot; En &quot;}}&quot; word nie toegelaat in die naamreekse nie {0}",
 Target Details,Teikenbesonderhede,
 {0} already has a Parent Procedure {1}.,{0} het reeds &#39;n ouerprosedure {1}.,
 API,API,
 Annual,jaarlikse,
 Change,verandering,
 Contact Email,Kontak e-pos,
-Export Type,Uitvoer Tipe,
 From Date,Vanaf datum,
 Group By,Groepeer volgens,
 Invalid URL,Ongeldige URL,
 Landscape,landskap,
-Last Sync On,Laaste sinchroniseer op,
 Naming Series,Naming Series,
 No data to export,Geen data om uit te voer nie,
 Portrait,Portret,
@@ -3302,7 +3242,6 @@
 Show Document,Wys dokument,
 Show Traceback,Wys terugsporing,
 Video,video,
-Webhook Secret,Webhook Secret,
 % Of Grand Total,% Van die totale totaal,
 <b>Company</b> is a mandatory filter.,<b>Die maatskappy</b> is &#39;n verpligte filter.,
 <b>From Date</b> is a mandatory filter.,<b>Vanaf datum</b> is &#39;n verpligte filter.,
@@ -3358,7 +3297,6 @@
 BOM Comparison Tool,BOM-vergelykingshulpmiddel,
 BOM recursion: {0} cannot be child of {1},Rekursie van die BOM: {0} kan nie die kind van {1} wees nie,
 BOM recursion: {0} cannot be parent or child of {1},Rekursie van die BOM: {0} kan nie ouer of kind van {1} wees nie,
-Back to Home,Terug huistoe,
 Back to Messages,Terug na boodskappe,
 Bank Data mapper doesn't exist,Bankdata-kartering bestaan nie,
 Bank Details,Bankbesonderhede,
@@ -3420,7 +3358,6 @@
 Currency,geldeenheid,
 Current Status,Huidige toestand,
 Customer PO,Kliënt Posbus,
-Customize,pas,
 Daily,daaglikse,
 Date,datum,
 Date of Birth cannot be greater than Joining Date.,Die geboortedatum mag nie groter wees as die datum van aansluiting nie.,
@@ -3454,7 +3391,6 @@
 ERPNext could not find any matching payment entry,ERPNext kon geen passende betalingsinskrywing vind nie,
 Earliest Age,Die vroegste ouderdom,
 Edit Details,Wysig besonderhede,
-Edit Profile,Wysig profiel,
 Either GST Transporter ID or Vehicle No is required if Mode of Transport is Road,Óf GST-vervoerder-ID of voertuignommer is nodig as die vervoermetode op die pad is,
 Email,EMail,
 Email Campaigns,E-posveldtogte,
@@ -3482,7 +3418,6 @@
 Fetch Items from Warehouse,Haal voorwerpe uit die pakhuis,
 Fetching...,Haal ...,
 Field,veld,
-File Manager,Lêer bestuurder,
 Filters,filters,
 Finding linked payments,Vind gekoppelde betalings,
 Fleet Management,Vloot bestuur,
@@ -3521,7 +3456,6 @@
 Incorrect Warehouse,Verkeerde pakhuis,
 Invalid Barcode. There is no Item attached to this barcode.,Ongeldige strepieskode. Daar is geen item verbonde aan hierdie strepieskode nie.,
 Invalid credentials,Ongeldige magtigingsbewyse,
-Invite as User,Nooi as gebruiker,
 Issue Priority.,Prioriteit vir kwessies.,
 Issue Type.,Uitgawe tipe.,
 "It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","Dit lyk asof daar &#39;n probleem met die bediener se streepkonfigurasie is. In geval van versuim, sal die bedrag terugbetaal word na u rekening.",
@@ -3564,7 +3498,6 @@
 New Invoice,Nuwe faktuur,
 New Payment,Nuwe betaling,
 New release date should be in the future,Nuwe vrystellingdatum sal in die toekoms wees,
-Newsletter,nuusbrief,
 No Account matched these filters: {},Geen rekening stem ooreen met hierdie filters nie: {},
 No communication found.,Geen kommunikasie gevind nie.,
 No correct answer is set for {0},Geen korrekte antwoord is opgestel vir {0},
@@ -3640,7 +3573,6 @@
 Please setup a default bank account for company {0},Stel asseblief &#39;n standaardbankrekening vir maatskappy {0} op,
 Please specify,Spesifiseer asseblief,
 Please specify a {0},Spesifiseer asseblief &#39;n {0},lead
-Printing,druk,
 Priority,prioriteit,
 Priority has been changed to {0}.,Prioriteit is verander na {0}.,
 Priority {0} has been repeated.,Prioriteit {0} is herhaal.,
@@ -3649,7 +3581,6 @@
 Project,projek,
 Provide the academic year and set the starting and ending date.,Voorsien die akademiese jaar en stel die begin- en einddatum vas.,
 Public token is missing for this bank,Daar is &#39;n openbare teken vir hierdie bank ontbreek,
-Publish,publiseer,
 Publish 1 Item,Publiseer 1 item,
 Publish Items,Publiseer items,
 Publish More Items,Publiseer meer items,
@@ -3677,7 +3608,6 @@
 Reconciled,versoen,
 Recruitment,werwing,
 Red,rooi,
-Refreshing,verfrissende,
 Release date must be in the future,Die datum van vrylating moet in die toekoms wees,
 Relieving Date must be greater than or equal to Date of Joining,Verligtingsdatum moet groter wees as of gelyk wees aan die Datum van aansluiting,
 Rename,hernoem,
@@ -3721,7 +3651,6 @@
 Search for a payment,Soek vir &#39;n betaling,
 Search for anything ...,Soek vir enigiets ...,
 Search results for,Soek resultate vir,
-Select All,Kies Alles,
 Select Difference Account,Kies Verskilrekening,
 Select a Default Priority.,Kies &#39;n standaardprioriteit.,
 Select a company,Kies &#39;n maatskappy,
@@ -3740,11 +3669,9 @@
 Service Level Agreement has been changed to {0}.,Diensvlakooreenkoms is verander na {0}.,
 Service Level Agreement was reset.,Diensvlakooreenkoms is teruggestel.,
 Service Level Agreement with Entity Type {0} and Entity {1} already exists.,Diensvlakooreenkoms met entiteitstipe {0} en entiteit {1} bestaan reeds.,
-Set,stel,
 Set Meta Tags,Stel metatags,
 Set {0} in company {1},Stel {0} in maatskappy {1},
 Setup,Stel op,
-Setup Wizard,Opstelassistent,
 Shift Management,Shift Management,
 Show Future Payments,Toon toekomstige betalings,
 Show Linked Delivery Notes,Wys gekoppelde afleweringsnotas,
@@ -3815,7 +3742,6 @@
 Unreconciled,ongerekonsilieerde,
 Unsupported GST Category for E-Way Bill JSON generation,Ongesteunde GST-kategorie vir e-way Bill JSON-generasie,
 Update,Opdateer,
-Update Details,Dateer besonderhede op,
 Update Taxes for Items,Belasting opdateer vir items,
 "Upload a bank statement, link or reconcile a bank account","Laai &#39;n bankstaat op, skakel of versoen &#39;n bankrekening",
 Upload a statement,Laai &#39;n verklaring op,
@@ -3839,7 +3765,6 @@
 XML Files Processed,XML-lêers verwerk,
 Year,Jaar,
 Yearly,jaarlikse,
-You,jy,
 You are not allowed to enroll for this course,U mag nie vir hierdie kursus inskryf nie,
 You are not enrolled in program {0},U is nie ingeskryf vir program {0},
 You can Feature upto 8 items.,U kan tot 8 items bevat.,
@@ -3856,7 +3781,6 @@
 e-Way Bill already exists for this document,Daar bestaan reeds &#39;n e-Way-wetsontwerp vir hierdie dokument,
 woocommerce - {0},woocommerce - {0},
 {0} Coupon used are {1}. Allowed quantity is exhausted,{0} Gebruikte koepon is {1}. Toegestane hoeveelheid is uitgeput,
-{0} Name,{0} Naam,
 {0} Operations: {1},{0} Operasies: {1},
 {0} bank transaction(s) created,{0} banktransaksie (s) geskep,
 {0} bank transaction(s) created and {1} errors,{0} banktransaksie (s) geskep en {1} foute,
@@ -3875,17 +3799,13 @@
 Total Income,Totale inkomste,
 Total Income This Year,Totale inkomste hierdie jaar,
 Barcode,barcode,
-Bold,vet,
-Center,Sentrum,
 Clear,duidelik,
-Comment,kommentaar,
 Comments,kommentaar,
 DocType,DocType,
 Download,Aflaai,
 Left,links,
 Link,skakel,
 New,nuwe,
-Not Found,Nie gevind nie,
 Print,Print,
 Reference Name,Verwysingsnaam,
 Refresh,Verfris,
@@ -3908,7 +3828,6 @@
 Email Id,E-pos ID,
 No,Geen,
 Reference Doctype,Verwysingsdokumenttipe,
-User Id,Gebruikers-ID,
 Yes,Ja,
 Actual ,werklike,
 Add to cart,Voeg by die winkelwagen,
@@ -4304,7 +4223,6 @@
 e.g Adjustments for:,bv. Aanpassings vir:,
 Section Subtotal,Afdeling Subtotaal,
 Section Footer,Afdeling voetstuk,
-Position,posisie,
 Cash Flow Mapping,Kontantvloeikaart,
 Select Maximum Of 1,Kies Maksimum van 1,
 Is Finance Cost,Is finansieringskoste,
@@ -4936,7 +4854,6 @@
 Previous Business Day,Vorige sakedag,
 Next Business Day,Volgende sakedag,
 Urgent,dringende,
-Crop,oes,
 Crop Name,Gewas Naam,
 Scientific Name,Wetenskaplike Naam,
 "You can define all the tasks which need to carried out for this crop here. The day field is used to mention the day on which the task needs to be carried out, 1 being the 1st day, etc.. ","U kan al die take definieer wat hier vir hierdie gewas uitgevoer moet word. Die dagveld word gebruik om die dag te noem waarop die taak uitgevoer moet word, 1 die eerste dag, ens.",
@@ -5441,7 +5358,6 @@
 To TIme,Tot tyd,
 Course End Date,Kursus Einddatum,
 Course Topic,Kursusonderwerp,
-Topic,onderwerp,
 Topic Name,Onderwerp Naam,
 Education Settings,Onderwysinstellings,
 Current Academic Year,Huidige Akademiese Jaar,
@@ -5516,7 +5432,6 @@
 Check this if the Student is residing at the Institute's Hostel.,Kontroleer of die Student by die Instituut se koshuis woon.,
 Walking,Stap,
 Institute's Bus,Instituut se Bus,
-Public Transport,Publieke vervoer,
 Self-Driving Vehicle,Selfritvoertuig,
 Pick/Drop by Guardian,Pick / Drop by Guardian,
 Enrolled courses,Ingeskrewe kursusse,
@@ -5697,7 +5612,6 @@
 Default Cost Center,Verstek koste sentrum,
 Undeposited Funds Account,Onvoorsiene Fondsrekening,
 Shopify Log,Shopify Log,
-Request Data,Versoek data,
 Shopify Settings,Shopify-instellings,
 status html,status html,
 Enable Shopify,Aktiveer Shopify,
@@ -5817,7 +5731,6 @@
 Exercise Instructions,Oefeninstruksies,
 Exercise Video,Oefenvideo,
 Exercise Steps,Oefeningstappe,
-Steps,Stappe,
 Steps Table,Traptafel,
 Exercise Type Step,Oefeningstipe Stap,
 Max number of visit,Maksimum aantal besoeke,
@@ -6001,7 +5914,6 @@
 Patient Encounter Symptom,Pasiënt ontmoeting simptoom,
 HLC-PMR-.YYYY.-,HLC-PMR-.YYYY.-,
 Attach Medical Record,Heg mediese rekord aan,
-Reference DocType,Verwysingsdokumenttipe,
 Spouse,eggenoot,
 Family,familie,
 Schedule Details,Skedulebesonderhede,
@@ -6983,16 +6895,8 @@
 HTML / Banner that will show on the top of product list.,HTML / Banner wat op die top van die produklys verskyn.,
 Set prefix for numbering series on your transactions,Stel voorvoegsel vir nommering van reekse op u transaksies,
 Setup Series,Opstelreeks,
-Select Transaction,Kies transaksie,
-Help HTML,Help HTML,
-Series List for this Transaction,Reekslys vir hierdie transaksie,
-User must always select,Gebruiker moet altyd kies,
-Check this if you want to force the user to select a series before saving. There will be no default if you check this.,Kontroleer dit as u die gebruiker wil dwing om &#39;n reeks te kies voordat u dit stoor. Daar sal geen standaard wees as u dit kontroleer nie.,
 Update Series,Update Series,
 Change the starting / current sequence number of an existing series.,Verander die begin- / huidige volgordenommer van &#39;n bestaande reeks.,
-Prefix,voorvoegsel,
-This is the number of the last created transaction with this prefix,Dit is die nommer van die laaste geskep transaksie met hierdie voorvoegsel,
-Update Series Number,Werk reeksnommer,
 Quotation Lost Reason,Kwotasie Verlore Rede,
 A third party distributor / dealer / commission agent / affiliate / reseller who sells the companies products for a commission.,&#39;N Derdeparty verspreider / handelaar / kommissie agent / geaffilieerde / reseller wat die maatskappye produkte vir &#39;n kommissie verkoop.,
 Sales Partner Name,Verkope Vennoot Naam,
@@ -7687,7 +7591,6 @@
 Warehouse wise Item Balance Age and Value,Warehouse Wise Item Balans Ouderdom en Waarde,
 Work Order Stock Report,Werk Bestelling Voorraad Verslag,
 Work Orders in Progress,Werkopdragte in die proses,
-Validation Error,Validasiefout,
 Automatically Process Deferred Accounting Entry,Verwerk uitgestelde rekeningkundige inskrywing outomaties,
 Bank Clearance,Bankopruiming,
 Bank Clearance Detail,Bankklaringsbesonderhede,
@@ -7724,45 +7627,7 @@
 Therapy Plan: ,Terapieplan:,
 Total Counts Targeted: ,Totale getal getel:,
 Total Counts Completed: ,Totale tellings voltooi:,
-Andaman and Nicobar Islands,Andaman- en Nicobar-eilande,
-Andhra Pradesh,Andhra Pradesh,
-Arunachal Pradesh,Arunachal Pradesh,
-Assam,Assam,
-Bihar,Bihar,
-Chandigarh,Chandigarh,
-Chhattisgarh,Chhattisgarh,
-Dadra and Nagar Haveli,Dadra en Nagar Haveli,
-Daman and Diu,Daman en Diu,
-Delhi,Delhi,
-Goa,Goa,
-Gujarat,Gujarat,
-Haryana,Haryana,
-Himachal Pradesh,Himachal Pradesh,
-Jammu and Kashmir,Jammu en Kasjmir,
-Jharkhand,Jharkhand,
-Karnataka,Karnataka,
-Kerala,Kerala,
-Lakshadweep Islands,Lakshadweep-eilande,
-Madhya Pradesh,Madhya Pradesh,
-Maharashtra,Maharashtra,
-Manipur,Manipur,
-Meghalaya,Meghalaya,
-Mizoram,Mizoram,
-Nagaland,Nagaland,
-Odisha,Odisha,
-Other Territory,Ander gebied,
-Pondicherry,Pondicherry,
-Punjab,Punjab,
-Rajasthan,Rajasthan,
-Sikkim,Sikkim,
-Tamil Nadu,Tamil Nadu,
-Telangana,Telangana,
-Tripura,Tripura,
-Uttar Pradesh,Uttar Pradesh,
-Uttarakhand,Uttarakhand,
-West Bengal,Wes-Bengale,
 Is Mandatory,Is verpligtend,
-Published on,Gepubliseer op,
 Service Received But Not Billed,"Diens ontvang, maar nie gefaktureer nie",
 Deferred Accounting Settings,Uitgestelde rekeningkundige instellings,
 Book Deferred Entries Based On,Boek uitgestelde inskrywings gebaseer op,
@@ -8035,8 +7900,6 @@
 Worksheet Instructions,Werkbladinstruksies,
 Result Legend Print,Resultaat Legendafdruk,
 Print Position,Drukposisie,
-Bottom,Onder,
-Top,Top,
 Both,Albei,
 Result Legend,Uitslaglegende,
 Lab Tests,Laboratoriumtoetse,
@@ -8081,12 +7944,10 @@
 Approvers,Betogers,
 The first Approver in the list will be set as the default Approver.,Die eerste goedkeuring in die lys sal as die standaard goedkeuring gestel word.,
 Shift Request Approver,Goedkeuring vir skofversoek,
-PAN Number,PAN-nommer,
 Provident Fund Account,Voorsorgfondsrekening,
 MICR Code,MICR-kode,
 Repay unclaimed amount from salary,Betaal onopgeëiste bedrag terug van die salaris,
 Deduction from salary,Aftrekking van salaris,
-Expired Leaves,Verlore blare,
 If this is not checked the loan by default will be considered as a Demand Loan,"As dit nie gekontroleer word nie, sal die lening by verstek as &#39;n vraaglening beskou word",
 This account is used for booking loan repayments from the borrower and also disbursing loans to the borrower,Hierdie rekening word gebruik om lenings van die lener terug te betaal en ook om lenings aan die lener uit te betaal,
 This account is capital account which is used to allocate capital for loan disbursal account ,Hierdie rekening is &#39;n kapitaalrekening wat gebruik word om kapitaal toe te ken vir die uitbetaling van lenings,
@@ -8844,3 +8705,41 @@
 Creating Purchase Order ...,Skep tans bestelling ...,
 "Select a Supplier from the Default Suppliers of the items below. On selection, a Purchase Order will be made against items belonging to the selected Supplier only.",Kies &#39;n verskaffer uit die verstekverskaffers van die onderstaande items. By seleksie sal &#39;n bestelling slegs gemaak word teen items wat tot die geselekteerde verskaffer behoort.,
 Row #{}: You must select {} serial numbers for item {}.,Ry # {}: u moet {} reeksnommers vir item {} kies.,
+Add Comment,Voeg kommentaar by,
+More...,Meer ...,
+Notes,notas,
+Payment Gateway,Betaling Gateway,
+Payment Gateway Name,Betaling Gateway Naam,
+Payments,betalings,
+Plan Name,Plan Naam,
+Portal,portaal,
+Scan Barcode,Skandeer strepieskode,
+Some information is missing,Sommige inligting ontbreek,
+Successful,Suksesvol,
+Tools,gereedskap,
+Use Sandbox,Gebruik Sandbox,
+Busy,Besig,
+Completed By,Voltooi deur,
+Payment Failed,Betaling misluk,
+Column {0},Kolom {0},
+Field Mapping,Veldkartering,
+Not Specified,Nie gespesifiseer nie,
+Update Type,Opdateringstipe,
+Dr,Dr,
+End Time,Eindtyd,
+Fetching...,Haal ...,
+"It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","Dit lyk asof daar &#39;n probleem met die bediener se streepkonfigurasie is. In geval van versuim, sal die bedrag terugbetaal word na u rekening.",
+Looks like someone sent you to an incomplete URL. Please ask them to look into it.,Dit lyk of iemand jou na &#39;n onvolledige URL gestuur het. Vra hulle asseblief om dit te ondersoek.,
+Master,meester,
+Pay,betaal,
+You can also copy-paste this link in your browser,U kan hierdie skakel ook kopieer in u blaaier,
+Verified By,Verified By,
+Invalid naming series (. missing) for {0},Ongeldige naamreeks (. Ontbreek) vir {0},
+Phone Number,Telefoon nommer,
+Account SID,Rekening SID,
+Global Defaults,Globale verstek,
+Is Mandatory,Is verpligtend,
+WhatsApp,WhatsApp,
+Make a call,Maak &#39;n oproep,
+Approve,goed te keur,
+Reject,verwerp,
diff --git a/erpnext/translations/am.csv b/erpnext/translations/am.csv
index b5abbbf..764868d 100644
--- a/erpnext/translations/am.csv
+++ b/erpnext/translations/am.csv
@@ -113,7 +113,6 @@
 Add Items,ንጥሎች አክል,
 Add Leads,መርጃዎች አክል,
 Add Multiple Tasks,በርካታ ተግባራትን ያክሉ,
-Add Row,ረድፍ አክል,
 Add Sales Partners,የሽያጭ አጋሮችን ያክሉ,
 Add Serial No,ተከታታይ ምንም አክል,
 Add Students,ተማሪዎች ያክሉ,
@@ -211,9 +210,7 @@
 An error occurred during the update process,በማዘመን ሂደቱ ጊዜ ስህተት ተከስቷል,
 "An item exists with same name ({0}), please change the item group name or rename the item","አንድ ንጥል በተመሳሳይ ስም አለ ({0}), ወደ ንጥል የቡድን ስም መቀየር ወይም ንጥል ዳግም መሰየም እባክዎ",
 Analyst,ተንታኝ,
-Analytics,ትንታኔ,
 Annual Billing: {0},ዓመታዊ አከፋፈል: {0},
-Anonymous,ስም የለሽ,
 Another Budget record '{0}' already exists against {1} '{2}' and account '{3}' for fiscal year {4},ሌላ የበጀት ዘገባ «{0}» ቀድሞውንም በ {1} «{2}» እና በሂሳብ «{3}» ላይ ተከፍሏል {4},
 Another Period Closing Entry {0} has been made after {1},ሌላው ክፍለ ጊዜ መዝጊያ Entry {0} በኋላ ተደርጓል {1},
 Another Sales Person {0} exists with the same Employee id,ሌላው የሽያጭ ሰው {0} ተመሳሳይ የሰራተኛ መታወቂያ ጋር አለ,
@@ -283,14 +280,12 @@
 Attendance not submitted for {0} as {1} on leave.,በአለራ ላይ {0} ን እንደ {1} አላስገባም.,
 Attribute table is mandatory,አይነታ ሠንጠረዥ የግዴታ ነው,
 Attribute {0} selected multiple times in Attributes Table,አይነታ {0} አይነታዎች ሠንጠረዥ ውስጥ በርካታ ጊዜ ተመርጠዋል,
-Author,ደራሲ,
 Authorized Signatory,የተፈቀደላቸው የፈራሚ,
 Auto Material Requests Generated,ራስ-ቁሳዊ ጥያቄዎች የመነጩ,
 Auto Repeat,ራስ ቀጥል,
 Auto repeat document updated,በቀጥታ ተዘምኗል,
 Automotive,አውቶሞቲቭ,
 Available,ይገኛል,
-Available Leaves,የሚገኝ ቅጠሎች,
 Available Qty,ይገኛል ብዛት,
 Available Selling,ሊሸጥ የሚቻል,
 Available for use date is required,ለመጠቀም ቀን ሊገኝ ይችላል,
@@ -340,7 +335,6 @@
 Base URL,መነሻ URL,
 Based On,በዛላይ ተመስርቶ,
 Based On Payment Terms,በክፍያ ውሎች ላይ የተመሠረተ።,
-Basic,መሠረታዊ,
 Batch,ባች,
 Batch Entries,የቡድን ግቤቶች,
 Batch ID is mandatory,ባች መታወቂያ ግዴታ ነው,
@@ -361,7 +355,6 @@
 Billable Hours,የሚሸጡ ሰዓታት።,
 Billed,የሚከፈል,
 Billed Amount,የሚከፈል መጠን,
-Billing,አከፋፈል,
 Billing Address,የመክፈያ አድራሻ,
 Billing Address is same as Shipping Address,የክፍያ መጠየቂያ አድራሻ ከመርከብ መላኪያ አድራሻ ጋር አንድ ነው።,
 Billing Amount,አከፋፈል መጠን,
@@ -560,7 +553,6 @@
 Consumed Qty,ፍጆታ ብዛት,
 Consumer Products,የሸማቾች ምርቶች,
 Contact,እውቂያ,
-Contact Details,የእውቅያ ዝርዝሮች,
 Contact Us,አግኙን,
 Content,ይዘት,
 Content Masters,የይዘት ማስተሮች።,
@@ -715,7 +707,6 @@
 Date of Joining,በመቀላቀል ቀን,
 Date of Joining must be greater than Date of Birth,በመቀላቀል ቀን የልደት ቀን የበለጠ መሆን አለበት,
 Date of Transaction,የግብይት ቀን,
-Datetime,DATETIME,
 Day,ቀን,
 Debit,ዴቢት,
 Debit ({0}),ዴቢት ({0}),
@@ -874,7 +865,6 @@
 Employee cannot report to himself.,የተቀጣሪ ራሱን ሪፖርት አይችልም.,
 Employee {0} has already applied for {1} between {2} and {3} : ,ተቀጣሪ {0} ቀድሞውኑ በ {2} እና በ {3} መካከል በ {1} አመልክቷል:,
 Employee {0} of grade {1} have no default leave policy,የክፍል {0} የክፍል ደረጃ {1} ምንም ነባሪ መውጫ መምሪያ የለውም,
-Enable,አንቃ,
 Enable / disable currencies.,/ አቦዝን ምንዛሬዎች ያንቁ.,
 Enabled,ነቅቷል,
 "Enabling 'Use for Shopping Cart', as Shopping Cart is enabled and there should be at least one Tax Rule for Shopping Cart",ማንቃት ወደ ግዢ ሳጥን ጨመር የነቃ ነው እንደ &#39;ወደ ግዢ ሳጥን ጨመር ተጠቀም&#39; እና ወደ ግዢ ሳጥን ጨመር ቢያንስ አንድ የግብር ሕግ ሊኖር ይገባል,
@@ -905,7 +895,6 @@
 Error: Not a valid id?,ስህተት: ልክ ያልሆነ መታወቂያ?,
 Estimated Cost,የተገመተው ወጪ,
 "Even if there are multiple Pricing Rules with highest priority, then following internal priorities are applied:","ከፍተኛ ቅድሚያ ጋር በርካታ የዋጋ ደንቦች አሉ እንኳ, ከዚያም የሚከተሉትን የውስጥ ቅድሚያ ተግባራዊ ይሆናሉ:",
-Event,ድርጊት,
 Exchange Gain/Loss,የ Exchange ቅሰም / ማጣት,
 Exchange Rate Revaluation master.,የልውውጥ ደረጃ ግምገማ ጌታ።,
 Exchange Rate must be same as {0} {1} ({2}),የውጭ ምንዛሪ ተመን ጋር ተመሳሳይ መሆን አለበት {0} {1} ({2}),
@@ -1032,7 +1021,6 @@
 From value must be less than to value in row {0},እሴት ረድፍ ውስጥ እሴት ያነሰ መሆን አለበት ከ {0},
 From {0} | {1} {2},ከ {0} | {1} {2},
 Fulfillment,መፈጸም,
-Full,ሙሉ,
 Full Name,ሙሉ ስም,
 Fully Depreciated,ሙሉ በሙሉ የቀነሰበት,
 Furnitures and Fixtures,Furnitures እና አለማድረስ,
@@ -1133,7 +1121,6 @@
 Hub Sync ID,የሃብ ማመሳሰል መታወቂያ,
 Human Resource,የሰው ኃይል,
 Human Resources,የሰው ሀይል አስተዳደር,
-IFSC Code,የ IFSC ኮድ,
 IGST Amount,IGST ሂሳብ,
 IP Address,የአይፒ አድራሻ,
 ITC Available (whether in full op part),ITC አለ (በሙሉ ኦፕሬም ክፍል ውስጥም ቢሆን),
@@ -1185,7 +1172,6 @@
 Ineligible ITC,ብቁ ያልሆነ አይ.ሲ.ሲ.,
 Initiated,A ነሳሽነት,
 Inpatient Record,Inpatient Record,
-Insert,አስገባ,
 Installation Note,የአጫጫን ማስታወሻ,
 Installation Note {0} has already been submitted,የአጫጫን ማስታወሻ {0} አስቀድሞ ገብቷል,
 Installation date cannot be before delivery date for Item {0},ጭነትን ቀን ንጥል ለ የመላኪያ ቀን በፊት ሊሆን አይችልም {0},
@@ -1197,7 +1183,6 @@
 Insurance Start date should be less than Insurance End date,ኢንሹራንስ የመጀመሪያ ቀን መድን የመጨረሻ ቀን ያነሰ መሆን አለበት,
 Integrated Tax,የተቀናጀ ግብር,
 Inter-State Supplies,የመሃል-ግዛት አቅርቦቶች።,
-Interests,ፍላጎቶች,
 Internet Publishing,የኢንተርኔት ህትመት,
 Intra-State Supplies,የውስጥ-ግዛት አቅርቦቶች።,
 Introduction,መግቢያ,
@@ -1316,7 +1301,6 @@
 Lab testing datetime cannot be before collection datetime,የቤተሙከራ ፍተሻው የቆይታ ወቅት ከክምችት የጊዜ ገደብ ውስጥ መሆን አይችልም,
 Label,ምልክት,
 Laboratory,ላቦራቶሪ,
-Language Name,የቋንቋ ስም,
 Large,ትልቅ,
 Last Communication,የመጨረሻው ኮሙኒኬሽን,
 Last Communication Date,የመጨረሻው ኮሙኒኬሽን ቀን,
@@ -1347,8 +1331,6 @@
 Letter Heads for print templates.,የህትመት አብነቶች ለ ደብዳቤ ኃላፊዎች.,
 Level,ደረጃ,
 Liability,ኃላፊነት,
-License,ፈቃድ,
-Limit,ወሰን,
 Limit Crossed,ገደብ የምታገናኝ,
 Link to Material Request,ወደ ቁሳዊ ጥያቄ አገናኝ,
 List of all share transactions,የሁሉም የገበያ ግብይቶች ዝርዝር,
@@ -1359,7 +1341,6 @@
 Loans (Liabilities),ብድር (ተጠያቂነቶች),
 Loans and Advances (Assets),ብድር እና እድገት (እሴቶች),
 Local,አካባቢያዊ,
-Log,ምዝግብ ማስታወሻ,
 Logs for maintaining sms delivery status,ኤስኤምኤስ የመላኪያ ሁኔታ የመጠበቅ ምዝግብ ማስታወሻዎች,
 Lost,ጠፍቷል,
 Lost Reasons,የጠፉ ምክንያቶች,
@@ -1445,7 +1426,6 @@
 Medical Department,የሕክምና መምሪያ,
 Medical Record,የህክምና መዝገብ,
 Medium,መካከለኛ,
-Meeting,ስብሰባ,
 Member Activity,የአባላት እንቅስቃሴ,
 Member ID,የአባላት መታወቂያ,
 Member Name,የአባላት ስም,
@@ -1495,7 +1475,6 @@
 Multiple Variants,በርካታ ስሪቶች,
 Multiple fiscal years exist for the date {0}. Please set company in Fiscal Year,በርካታ የበጀት ዓመታት ቀን {0} አገልግሎቶች አሉ. በጀት ዓመት ውስጥ ኩባንያ ማዘጋጀት እባክዎ,
 Music,ሙዚቃ,
-My Account,አካውንቴ,
 Name error: {0},ስም ስህተት: {0},
 Name of new Account. Note: Please don't create accounts for Customers and Suppliers,አዲስ መለያ ስም. ማስታወሻ: ደንበኞች እና አቅራቢዎች መለያዎችን መፍጠር እባክዎ,
 Name or Email is mandatory,ስም ወይም ኢሜይል የግዴታ ነው,
@@ -1538,7 +1517,6 @@
 New credit limit is less than current outstanding amount for the customer. Credit limit has to be atleast {0},አዲስ የክሬዲት ገደብ ለደንበኛው ከአሁኑ የላቀ መጠን ያነሰ ነው. የክሬዲት ገደብ ላይ ቢያንስ መሆን አለበት {0},
 New task,አዲስ ተግባር,
 New {0} pricing rules are created,አዲስ {0} የዋጋ አሰጣጥ ህጎች ተፈጥረዋል።,
-Newsletters,ጋዜጣዎች,
 Newspaper Publishers,የጋዜጣ አሳታሚዎች,
 Next,ቀጣይ,
 Next Contact By cannot be same as the Lead Email Address,ቀጣይ የእውቂያ በ ቀዳሚ የኢሜይል አድራሻ ጋር ተመሳሳይ ሊሆን አይችልም,
@@ -1686,7 +1664,6 @@
 Other,ሌላ,
 Other Reports,ሌሎች ሪፖርቶች,
 "Other outward supplies(Nil rated,Exempted)",ሌሎች የውጪ አቅርቦቶች (ኒል ደረጃ የተሰጠው ፣ ነፃ ...),
-Others,ሌሎች,
 Out Qty,ብዛት ውጪ,
 Out Value,ውጪ ዋጋ,
 Out of Order,ከትዕዛዝ ውጪ,
@@ -1726,7 +1703,6 @@
 Party Type and Party is mandatory for {0} account,የ {0} መለያ የግዴታ እና ፓርቲ ግዴታ ነው,
 Party Type is mandatory,የድግስ አይነት ግዴታ ነው,
 Party is mandatory,ፓርቲ የግዴታ ነው,
-Password,የይለፍ ቃል,
 Past Due Date,ያለፈ ጊዜ ያለፈበት ቀን,
 Patient,ታካሚ,
 Patient Appointment,የታካሚ ቀጠሮ,
@@ -1784,7 +1760,6 @@
 Pharmaceutical,የህክምና,
 Pharmaceuticals,ፋርማሱቲካልስ,
 Physician,ሐኪም,
-Pincode,ፒን ኮድ,
 Place Of Supply (State/UT),የአቅርቦት አቅርቦት (ግዛት / UT),
 Place Order,ቦታ አያያዝ,
 Plan Name,የዕቅድ ስም,
@@ -1896,7 +1871,6 @@
 Please select date,ቀን ይምረጡ,
 Please select item code,ንጥል ኮድ ይምረጡ,
 Please select month and year,ወር እና ዓመት ይምረጡ,
-Please select prefix first,መጀመሪያ ቅድመ ቅጥያ ይምረጡ,
 Please select the Company,እባክዎ ኩባንያውን ይምረጡ,
 Please select the Multiple Tier Program type for more than one collection rules.,ከአንድ በላይ ስብስብ ደንቦች እባክዎ ከአንድ በላይ ደረጃ የቴክስት ፕሮግራም ይምረጡ.,
 Please select the assessment group other than 'All Assessment Groups',&#39;ሁሉም ግምገማ ቡድኖች&#39; ይልቅ ሌላ ግምገማ ቡድን ይምረጡ,
@@ -1913,7 +1887,6 @@
 Please set Company filter blank if Group By is 'Company',የቡድን በ «ኩባንያ &#39;ከሆነ ኩባንያ ባዶ ማጣሪያ ያዘጋጁ እባክዎ,
 Please set Default Payroll Payable Account in Company {0},ኩባንያ ውስጥ ነባሪ የደመወዝ ክፍያ ሊከፈል መለያ ማዘጋጀት እባክዎ {0},
 Please set Depreciation related Accounts in Asset Category {0} or Company {1},የንብረት ምድብ {0} ወይም ኩባንያ ውስጥ መቀነስ ጋር የተያያዙ መለያዎች ማዘጋጀት እባክዎ {1},
-Please set Email Address,የኢሜይል አድራሻ ማዘጋጀት እባክዎ,
 Please set GST Accounts in GST Settings,እባክዎ በ GST ቅንብሮች ውስጥ GST መለያዎችን ያዘጋጁ,
 Please set Hotel Room Rate on {},እባክዎን የሆቴል የክፍል ደረጃ በ {} ላይ ያዘጋጁ,
 Please set Number of Depreciations Booked,Depreciations ብዛት የተመዘገበ ማዘጋጀት እባክዎ,
@@ -1936,7 +1909,6 @@
 Please set the Email ID for the Student to send the Payment Request,የክፍያ ጥያቄውን ለመላክ የተማሪውን የኢሜይል መታወቂያ ያዘጋጁ,
 Please set the Item Code first,እባክህ መጀመሪያ የንጥል ኮድ አዘጋጅ,
 Please set the Payment Schedule,እባክዎ የክፍያ መርሐግብር ያዘጋጁ።,
-Please set the series to be used.,እባክዎ ጥቅም ላይ የሚውሉትን ስብስቦች ያዘጋጁ.,
 Please set {0} for address {1},እባክዎ ለአድራሻ {0} ያቀናብሩ {1},
 Please setup Students under Student Groups,እባክዎ ተማሪዎች በተማሪዎች ቡድኖች ውስጥ ያዋቅሯቸው,
 Please specify Company,ኩባንያ እባክዎን ይግለጹ,
@@ -1953,7 +1925,6 @@
 Point-of-Sale,ነጥብ-መካከል-ሽያጭ,
 Point-of-Sale Profile,ነጥብ-መካከል-ሽያጭ መገለጫ,
 Portal,ፖርታል,
-Portal Settings,ፖርታል ቅንብሮች,
 Possible Supplier,በተቻለ አቅራቢ,
 Postal Expenses,የፖስታ ወጪዎች,
 Posting Date,መለጠፍ ቀን,
@@ -2152,12 +2123,10 @@
 Reference No is mandatory if you entered Reference Date,አንተ የማጣቀሻ ቀን ያስገቡት ከሆነ ማጣቀሻ ምንም የግዴታ ነው,
 Reference No.,ማጣቀሻ ቁጥር,
 Reference Number,የማጣቀሻ ቁጥር,
-Reference Owner,የማጣቀሻ ባለቤት,
 Reference Type,የማጣቀሻ አይነት,
 "Reference: {0}, Item Code: {1} and Customer: {2}","ማጣቀሻ: {0}, የእቃ ኮድ: {1} እና የደንበኞች: {2}",
 References,ማጣቀሻዎች,
 Refresh Token,አድስ ማስመሰያ,
-Region,ክልል,
 Register,መዝግብ,
 Rejected,ተቀባይነት አላገኘም,
 Related,ተዛማጅ,
@@ -2179,7 +2148,6 @@
 Replace BOM and update latest price in all BOMs,BOM ን ይተኩ እና በሁሉም የ BOM ዎች ውስጥ አዲስ ዋጋን ያዘምኑ,
 Replied,ምላሽ ሰጥተዋል,
 Report,ሪፖርት,
-Report Builder,ሪፖርት ገንቢ,
 Report Type,ሪፖርት አይነት,
 Report Type is mandatory,ሪፖርት አይነት ግዴታ ነው,
 Reports,ሪፖርቶች,
@@ -2355,13 +2323,11 @@
 Same Company is entered more than once,በዚሁ ኩባንያ ከአንድ ጊዜ በላይ ገባ ነው,
 Same item cannot be entered multiple times.,ብዙ ጊዜ ተመሳሳይ ንጥል ሊገቡ አይችሉም.,
 Same supplier has been entered multiple times,ተመሳሳይ አቅራቢ በርካታ ጊዜ ገብቷል ታይቷል,
-Sample,ናሙና,
 Sample Collection,የናሙና ስብስብ,
 Sample quantity {0} cannot be more than received quantity {1},የናሙና መጠን {0} ከተላከ በላይ መሆን አይሆንም {1},
 Sanctioned,ማዕቀብ,
 Sand,አሸዋ,
 Saturday,ቅዳሜ,
-Saved,ተቀምጧል,
 Saving {0},በማስቀመጥ ላይ {0},
 Scan Barcode,ባርኮድ ቅኝት,
 Schedule,ፕሮግራም,
@@ -2463,7 +2429,6 @@
 Series Updated,ተከታታይ የዘመነ,
 Series Updated Successfully,ተከታታይ በተሳካ ሁኔታ ዘምኗል,
 Series is mandatory,ተከታታይ ግዴታ ነው,
-Series {0} already used in {1},ቀደም ሲል ጥቅም ላይ ተከታታይ {0} {1},
 Service,አገልግሎት,
 Service Level Agreement,የአገልግሎት ደረጃ ስምምነት።,
 Service Level Agreement.,የአገልግሎት ደረጃ ስምምነት።,
@@ -2479,7 +2444,6 @@
 Set Tax Rule for shopping cart,ወደ ግዢ ሳጥን ጨመር ያዘጋጁ ግብር ደንብ,
 Set as Closed,ተዘግቷል እንደ አዘጋጅ,
 Set as Completed,እንደ ተጠናቀቀ ያዘጋጁ,
-Set as Default,እንደ ነባሪ አዘጋጅ,
 Set as Lost,የጠፋ እንደ አዘጋጅ,
 Set as Open,ክፍት እንደ አዘጋጅ,
 Set default inventory account for perpetual inventory,ዘላቂ በመጋዘኑ አዘጋጅ ነባሪ ቆጠራ መለያ,
@@ -2511,7 +2475,6 @@
 Shareholder,ባለአክስዮን,
 Ship To State,ወደ ዋናው መርከብ,
 Shipments,ማዕድኑን,
-Shipping,መላኪያ,
 Shipping Address,የመላኪያ አድራሻ,
 "Shipping Address does not have country, which is required for this Shipping Rule","የመላኪያ አድራሻ ለዚህ አገር አይላክም, ይህ ለዚህ መላኪያ መመሪያ ይጠበቃል",
 Shipping rule only applicable for Buying,የማጓጓዣ ደንብ ለግዢ ብቻ ነው የሚመለከተው,
@@ -2564,7 +2527,6 @@
 Split Batch,ክፈል ባች,
 Split Issue,ችግር ተከፈለ,
 Sports,ስፖርት,
-Standard,መለኪያ,
 Standard Buying,መደበኛ ሊገዙ,
 Standard Selling,መደበኛ ሽያጭ,
 Standard contract terms for Sales or Purchase.,የሽያጭ ወይም ግዢ መደበኛ የኮንትራት ውል.,
@@ -2731,7 +2693,6 @@
 Terms and Conditions,አተገባበሩና መመሪያው,
 Terms and Conditions Template,ውል እና ሁኔታዎች አብነት,
 Territory,ግዛት,
-Test,ሙከራ,
 Thank you for your business!,የእርስዎን ንግድ እናመሰግናለን!,
 The 'From Package No.' field must neither be empty nor it's value less than 1.,«ከቁልጥል ቁጥር» መስክ ባዶ መሆንም ሆነ ከ 1 ያነሰ ዋጋ ያለው መሆን የለበትም.,
 The Brand,የምርት,
@@ -2848,7 +2809,6 @@
 Total (Without Tax),ጠቅላላ (ያለ ግብር),
 Total Achieved,ጠቅላላ አሳክቷል,
 Total Actual,ትክክለኛ ጠቅላላ,
-Total Allocated Leaves,ጠቅላላ ድጐማዎችን,
 Total Amount,አጠቃላይ ድምሩ,
 Total Amount Credited,ጠቅላላ መጠን ተቀጠረ,
 Total Applicable Charges in Purchase Receipt Items table must be same as Total Taxes and Charges,የግዢ ደረሰኝ ንጥሎች ሰንጠረዥ ውስጥ ጠቅላላ የሚመለከታቸው ክፍያዎች ጠቅላላ ግብሮች እና ክፍያዎች እንደ አንድ አይነት መሆን አለበት,
@@ -2892,7 +2852,6 @@
 Total(Amt),ጠቅላላ (Amt),
 Total(Qty),ጠቅላላ (ብዛት),
 Traceability,Traceability,
-Traceback,Traceback,
 Track Leads by Lead Source.,በ &quot;ምንጭ&quot; መሪዎችን ይከታተሉ.,
 Transaction,ግብይት,
 Transaction Date,የግብይት ቀን,
@@ -2930,7 +2889,6 @@
 UOM Conversion factor is required in row {0},UOM የመለወጥ ምክንያት ረድፍ ውስጥ ያስፈልጋል {0},
 UOM coversion factor required for UOM: {0} in Item: {1},UOM ያስፈልጋል UOM coversion ምክንያት: {0} ንጥል ውስጥ: {1},
 URL,ዩ አር ኤል,
-Unable to find DocType {0},DocType {0} ማግኘት አልተቻለም.,
 Unable to find exchange rate for {0} to {1} for key date {2}. Please create a Currency Exchange record manually,ለ ምንዛሬ ተመን ማግኘት አልተቻለም {0} ወደ {1} ቁልፍ ቀን {2}. እራስዎ ምንዛሪ ልውውጥ መዝገብ ለመፍጠር እባክዎ,
 Unable to find score starting at {0}. You need to have standing scores covering 0 to 100,ከ {0} ጀምሮ የሚሰጠውን ውጤት ማግኘት አልተቻለም. ከ 0 እስከ 100 የሚደርሱ የተቆለፉ ደረጃዎች ሊኖሩዎት ይገባል,
 Unable to find variable: ,ተለዋዋጭ መለየት አልተቻለም:,
@@ -2960,7 +2918,6 @@
 Upload your letter head and logo. (you can edit them later).,የእርስዎን ደብዳቤ ራስ እና አርማ ይስቀሉ. (ቆይተው አርትዕ ማድረግ ይችላሉ).,
 Upper Income,የላይኛው ገቢ,
 Use Sandbox,ይጠቀሙ ማጠሪያ,
-Used Leaves,ጥቅም ላይ የዋሉ ቅጠሎች,
 User,ተጠቃሚው,
 User ID,የተጠቃሚው መለያ,
 User ID not set for Employee {0},የተጠቃሚ መታወቂያ ሰራተኛ ለ ካልተዋቀረ {0},
@@ -3051,7 +3008,6 @@
 Website Settings,የድር ጣቢያ ቅንብሮች,
 Wednesday,እሮብ,
 Week,ሳምንት,
-Weekdays,የሳምንቱ ቀናት,
 Weekly,ሳምንታዊ,
 "Weight is mentioned,\nPlease mention ""Weight UOM"" too","የክብደት \ n ደግሞ &quot;የክብደት UOM&quot; አውሳ, ተጠቅሷል",
 Welcome email sent,እንኳን ደህና መጡ ኢሜይል ተልኳል,
@@ -3072,7 +3028,6 @@
 Work Order {0} must be submitted,የስራ ትዕዛዝ {0} ገቢ መሆን አለባቸው,
 Work Orders Created: {0},የስራ ስራዎች ተፈጠረ: {0},
 Work-in-Progress Warehouse is required before Submit,የስራ-በ-እድገት መጋዘን አስገባ በፊት ያስፈልጋል,
-Workflow,የስራ ፍሰት,
 Working,በመስራት ላይ,
 Working Hours,የስራ ሰዓት,
 Workstation,ከገቢር,
@@ -3102,7 +3057,6 @@
 You need to be a user other than Administrator with System Manager and Item Manager roles to register on Marketplace.,በገበያ ቦታ ላይ ለመመዝገብ ከስተማይ አስተናጋጅ እና ከአልታ አቀናባሪ ሚናዎች ሌላ ተጠቃሚ መሆን አለብዎት.,
 You need to be a user with System Manager and Item Manager roles to add users to Marketplace.,ተጠቃሚዎችን ወደ ገበያ ቦታ የሚያክሉት የስርዓት አቀናባሪ እና የንጥል አስተዳዳሪ ሚናዎች ተጠቃሚ መሆን አለብዎት.,
 You need to be a user with System Manager and Item Manager roles to register on Marketplace.,በገበያ ቦታ ላይ ለመመዝገብ የስርዓት አቀናባሪ እና የንጥል አስተዳዳሪ ሚናዎች ተጠቃሚ መሆን አለብዎት.,
-You need to be logged in to access this page,ይህን ገጽ ለመድረስ መግባት አለብዎት,
 You need to enable Shopping Cart,አንተ ወደ ግዢ ሳጥን ጨመር ማንቃት አለብዎት,
 You will lose records of previously generated invoices. Are you sure you want to restart this subscription?,ከዚህ ቀደም የተደረጉ የፋይናንስ ደረሰኞች መዝገቦችን ያጣሉ. እርግጠኛ ነዎት ይህንን ምዝገባ እንደገና መጀመር ይፈልጋሉ?,
 Your Organization,የእርስዎ ድርጅት,
@@ -3218,7 +3172,6 @@
 Assigned To,የተመደበ,
 Chat,ውይይት,
 Completed By,ተጠናቅቋል,
-County,ካውንቲ,
 Day of Week,የሳምንቱ ቀን,
 "Dear System Manager,","ውድ የስርዓት አስተዳዳሪ,",
 Default Value,ነባሪ እሴት,
@@ -3229,31 +3182,21 @@
 Fieldtype,Fieldtype,
 Help Articles,የእገዛ ርዕሶች,
 ID,መታወቂያ,
-Images,ሥዕሎች,
 Import,አስገባ,
 Language,ቋንቋ,
 Likes,የተወደዱ,
 Merge with existing,ነባር ጋር አዋህድ,
-Office,ቢሮ,
 Orientation,አቀማመጥ,
 Parent,ወላጅ,
-Passive,የማይሠራ,
 Payment Failed,ክፍያ አልተሳካም,
-Permanent,ቋሚ,
 Personal,የግል,
-Plant,ተክል,
 Post,ልጥፍ,
-Postal,የፖስታ,
 Postal Code,የአካባቢ ወይም የከተማ መለያ ቁጥር,
-Previous,ቀዳሚ,
 Provider,አቅራቢ,
 Read Only,ለማንበብ ብቻ የተፈቀደ,
 Recipient,ተቀባይ,
 Reviews,ግምገማዎች,
 Sender,የላኪ,
-Shop,ሱቅ,
-Subsidiary,ተጪማሪ,
-There is some problem with the file url: {0},ፋይል ዩ አር ኤል ጋር አንድ ችግር አለ: {0},
 There were errors while sending email. Please try again.,ኢሜይል በመላክ ላይ ሳለ ስህተቶች ነበሩ. እባክዎ ዳግም ይሞክሩ.,
 Values Changed,እሴቶች ተለውጧል,
 or,ወይም,
@@ -3280,19 +3223,16 @@
 Quality Feedback Template,የጥራት ግብረ መልስ አብነት።,
 Rules for applying different promotional schemes.,የተለያዩ የማስተዋወቂያ ዘዴዎችን ለመተግበር ህጎች።,
 Show {0},አሳይ {0},
-"Special Characters except '-', '#', '.', '/', '{{' and '}}' not allowed in naming series {0}",ከ &quot;-&quot; ፣ &quot;#&quot; ፣ &quot;፣&quot; ፣ &quot;/&quot; ፣ &quot;{{&quot; እና &quot;}}&quot; በስተቀር ልዩ ቁምፊዎች ከመለያ መሰየሚያ አይፈቀድም {0},
 Target Details,የ Detailsላማ ዝርዝሮች።,
 {0} already has a Parent Procedure {1}.,{0} ቀድሞውኑ የወላጅ አሰራር ሂደት አለው {1}።,
 API,ኤ ፒ አይ,
 Annual,ዓመታዊ,
 Change,ለዉጥ,
 Contact Email,የዕውቂያ ኢሜይል,
-Export Type,ወደ ውጪ ላክ,
 From Date,ቀን ጀምሮ,
 Group By,በቡድን,
 Invalid URL,የተሳሳተ ዩ.አር.ኤል.,
 Landscape,የመሬት ገጽታ።,
-Last Sync On,የመጨረሻው አስምር በርቷል,
 Naming Series,መሰየምን ተከታታይ,
 No data to export,ወደ ውጭ ለመላክ ምንም ውሂብ የለም።,
 Portrait,ፎቶግራፍ,
@@ -3302,7 +3242,6 @@
 Show Document,ሰነድ አሳይ።,
 Show Traceback,Traceback አሳይ።,
 Video,ቪዲዮ ፡፡,
-Webhook Secret,Webhook ምስጢር,
 % Of Grand Total,% ከጠቅላላው ጠቅላላ,
 <b>Company</b> is a mandatory filter.,<b>ኩባንያ</b> የግዴታ ማጣሪያ ነው።,
 <b>From Date</b> is a mandatory filter.,<b>ቀን ጀምሮ</b> አስገዳጅ ማጣሪያ ነው.,
@@ -3358,7 +3297,6 @@
 BOM Comparison Tool,BOM ንፅፅር መሣሪያ።,
 BOM recursion: {0} cannot be child of {1},BOM ድግግሞሽ-{0} የ {1} ልጅ መሆን አይችልም,
 BOM recursion: {0} cannot be parent or child of {1},BOM ድግግሞሽ-{0} የ {1} ወላጅ ወይም ልጅ መሆን አይችልም,
-Back to Home,ወደ ቤት መመለስ,
 Back to Messages,ወደ መልዕክቶች ተመለስ።,
 Bank Data mapper doesn't exist,የባንክ መረጃ ማስተዳደር የለም።,
 Bank Details,የባንክ ዝርዝሮች,
@@ -3420,7 +3358,6 @@
 Currency,ገንዘብ,
 Current Status,አሁን ያለበት ሁኔታ,
 Customer PO,የደንበኛ ፖ.ሳ.,
-Customize,አብጅ,
 Daily,በየቀኑ,
 Date,ቀን,
 Date of Birth cannot be greater than Joining Date.,የትውልድ ቀን ከመቀላቀል ቀን መብለጥ አይችልም።,
@@ -3454,7 +3391,6 @@
 ERPNext could not find any matching payment entry,ERPNext ምንም የሚዛመድ የክፍያ ግቤት ሊያገኝ አልቻለም።,
 Earliest Age,የመጀመሪያ ዘመን,
 Edit Details,ዝርዝሮችን ያርትዑ,
-Edit Profile,አርትዕ መገለጫ,
 Either GST Transporter ID or Vehicle No is required if Mode of Transport is Road,የመጓጓዣ ሁኔታ መንገድ ከሆነ የ “GST” አጓጓer መታወቂያ ወይም የተሽከርካሪ ቁጥር አያስፈልግም።,
 Email,ኢሚል,
 Email Campaigns,የኢሜል ዘመቻዎች ፡፡,
@@ -3482,7 +3418,6 @@
 Fetch Items from Warehouse,ከመጋዘን ቤት ዕቃዎች,
 Fetching...,በማምጣት ላይ ...,
 Field,መስክ,
-File Manager,የፋይል አቀናባሪ,
 Filters,ማጣሪያዎች,
 Finding linked payments,የተገናኙ ክፍያዎችን መፈለግ,
 Fleet Management,መርከቦች አስተዳደር,
@@ -3521,7 +3456,6 @@
 Incorrect Warehouse,የተሳሳተ መጋዘን,
 Invalid Barcode. There is no Item attached to this barcode.,ልክ ያልሆነ የአሞሌ ኮድ ከዚህ ባርኮድ ጋር የተገናኘ ንጥል የለም።,
 Invalid credentials,ልክ ያልሆኑ መረጃዎች,
-Invite as User,የተጠቃሚ እንደ ጋብዝ,
 Issue Priority.,ቅድሚያ የሚሰጠው ጉዳይ ፡፡,
 Issue Type.,የጉዳይ ዓይነት።,
 "It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","በአገልጋዩ የሽቦ ውቅር ላይ ችግር ያለ ይመስላል. ካልተሳካ, ገንዘቡ ወደ ሂሳብዎ ተመላሽ ይደረጋል.",
@@ -3564,7 +3498,6 @@
 New Invoice,አዲስ የክፍያ መጠየቂያ,
 New Payment,አዲስ ክፍያ።,
 New release date should be in the future,አዲስ የተለቀቀበት ቀን ለወደፊቱ መሆን አለበት።,
-Newsletter,በራሪ ጽሑፍ,
 No Account matched these filters: {},ከእነዚህ ማጣሪያዎች ጋር የተዛመደ መለያ የለም ፦ {},
 No communication found.,ምንም ግንኙነት አልተገኘም።,
 No correct answer is set for {0},ለ {0} ትክክለኛ መልስ የለም,
@@ -3640,7 +3573,6 @@
 Please setup a default bank account for company {0},እባክዎ ለኩባንያ ነባሪ የባንክ ሂሳብ ያቀናብሩ {0},
 Please specify,እባክዎን ይግለጹ,
 Please specify a {0},ይጥቀሱ እባክዎ {0},lead
-Printing,ማተም,
 Priority,ቅድሚያ,
 Priority has been changed to {0}.,ቅድሚያ የተሰጠው ወደ {0} ተለው hasል።,
 Priority {0} has been repeated.,ቅድሚያ የሚሰጠው {0} ተደግሟል።,
@@ -3649,7 +3581,6 @@
 Project,ፕሮጀክት,
 Provide the academic year and set the starting and ending date.,የትምህርት ዓመቱን ያቅርቡ እና የመጀመሪያ እና የመጨረሻ ቀን ያዘጋጁ።,
 Public token is missing for this bank,ለዚህ ባንክ ይፋዊ ምልክት የለም,
-Publish,አትም,
 Publish 1 Item,1 ንጥል ያትሙ።,
 Publish Items,እቃዎችን አትም።,
 Publish More Items,ተጨማሪ እቃዎችን ያትሙ።,
@@ -3677,7 +3608,6 @@
 Reconciled,ታረቀ ፡፡,
 Recruitment,ምልመላ,
 Red,ቀይ,
-Refreshing,በማደስ ላይ,
 Release date must be in the future,የሚለቀቅበት ቀን ለወደፊቱ መሆን አለበት።,
 Relieving Date must be greater than or equal to Date of Joining,የመልሶ ማግኛ ቀን ከተቀላቀለበት ቀን የሚበልጥ ወይም እኩል መሆን አለበት,
 Rename,ዳግም ሰይም,
@@ -3721,7 +3651,6 @@
 Search for a payment,ክፍያ ይፈልጉ።,
 Search for anything ...,ማንኛውንም ነገር ይፈልጉ ...,
 Search results for,የፍለጋ ውጤቶች,
-Select All,ሁሉንም ምረጥ,
 Select Difference Account,የልዩ መለያ ይምረጡ።,
 Select a Default Priority.,ነባሪ ቅድሚያ ይምረጡ።,
 Select a company,ኩባንያ ይምረጡ።,
@@ -3740,11 +3669,9 @@
 Service Level Agreement has been changed to {0}.,የአገልግሎት ደረጃ ስምምነት ወደ {0} ተለው hasል።,
 Service Level Agreement was reset.,የአገልግሎት ደረጃ ስምምነት እንደገና ተስተካክሏል።,
 Service Level Agreement with Entity Type {0} and Entity {1} already exists.,የአገልግሎት ደረጃ ስምምነት ከድርጅት ዓይነት {0} እና ህጋዊ አካል {1} ቀድሞውኑ አለ።,
-Set,አዘጋጅ,
 Set Meta Tags,ሜታ መለያዎችን ያዘጋጁ።,
 Set {0} in company {1},በኩባንያ ውስጥ {0} ያዋቅሩ {1},
 Setup,አዘገጃጀት,
-Setup Wizard,የውቅር አዋቂ,
 Shift Management,Shift Management,
 Show Future Payments,የወደፊት ክፍያዎችን አሳይ።,
 Show Linked Delivery Notes,የተገናኘ ማቅረቢያ ማስታወሻዎችን አሳይ,
@@ -3815,7 +3742,6 @@
 Unreconciled,ያልተስተካከለ።,
 Unsupported GST Category for E-Way Bill JSON generation,ለ e-Way ቢል JSON ትውልድ ያልተደገፈ የ GST ምድብ።,
 Update,አዘምን,
-Update Details,ዝርዝሮችን አዘምን,
 Update Taxes for Items,ለንጥል ግብሮች ግብሮችን ያዘምኑ,
 "Upload a bank statement, link or reconcile a bank account",የባንክ መግለጫ ይስቀሉ ፣ ያገናኙ ወይም ከባንክ ሂሳብ ጋር ይታረቁ ፡፡,
 Upload a statement,መግለጫ ስቀል።,
@@ -3839,7 +3765,6 @@
 XML Files Processed,የኤክስኤምኤል ፋይሎች ተሰርተዋል,
 Year,አመት,
 Yearly,በየአመቱ,
-You,አንተ,
 You are not allowed to enroll for this course,ለዚህ ኮርስ እንዲመዘገቡ አልተፈቀደልዎትም ፡፡,
 You are not enrolled in program {0},በፕሮግራም ውስጥ አልተመዘገቡም {0},
 You can Feature upto 8 items.,እስከ 8 የሚደርሱ ነገሮችን ለይተው ማሳየት ይችላሉ ፡፡,
@@ -3856,7 +3781,6 @@
 e-Way Bill already exists for this document,ለዚህ ሰነድ e-Way ቢል አስቀድሞ አለ።,
 woocommerce - {0},Woocommerce - {0},
 {0} Coupon used are {1}. Allowed quantity is exhausted,{0} ያገለገሉ ኩፖኖች {1} ናቸው። የተፈቀደው ብዛት ደክሟል,
-{0} Name,{0} ስም,
 {0} Operations: {1},{0} ክወናዎች: {1},
 {0} bank transaction(s) created,{0} የባንክ ግብይት (ቶች) ተፈጥሯል።,
 {0} bank transaction(s) created and {1} errors,{0} የባንክ ግብይት (ቶች) የተፈጠሩ እና {1} ስህተቶች።,
@@ -3875,17 +3799,13 @@
 Total Income,ጠቅላላ ገቢ,
 Total Income This Year,በዚህ ዓመት አጠቃላይ ገቢ,
 Barcode,ባርኮድ,
-Bold,ደማቅ,
-Center,መሃል,
 Clear,ያፅዱ,
-Comment,አስተያየት,
 Comments,አስተያየቶች,
 DocType,DocType,
 Download,ማውረድ,
 Left,ግራ,
 Link,አገናኝ,
 New,አዲስ,
-Not Found,አልተገኘም,
 Print,አትም,
 Reference Name,የማጣቀሻ ስም,
 Refresh,አዝናና,
@@ -3908,7 +3828,6 @@
 Email Id,የኢሜይል መታወቂያ,
 No,አይ,
 Reference Doctype,የማጣቀሻ DocType,
-User Id,የተጠቃሚው መለያ,
 Yes,አዎ,
 Actual ,ትክክለኛ,
 Add to cart,ወደ ግዢው ቅርጫት ጨምር,
@@ -4304,7 +4223,6 @@
 e.g Adjustments for:,ለምሳሌ: ማስተካከያዎች ለ:,
 Section Subtotal,ክፍል ንዑስ ድምር,
 Section Footer,የክፍል ግርጌ,
-Position,ቦታ,
 Cash Flow Mapping,የገንዘብ ፍሰት ማካተት,
 Select Maximum Of 1,ከፍተኛው 1 ይምረጡ,
 Is Finance Cost,የፋይናንስ ወጪ ነው,
@@ -4936,7 +4854,6 @@
 Previous Business Day,ቀዳሚ የስራ ቀን,
 Next Business Day,ቀጣይ የስራ ቀን,
 Urgent,አስቸኳይ,
-Crop,ከርክም,
 Crop Name,ከርክም ስም,
 Scientific Name,ሳይንሳዊ ስም,
 "You can define all the tasks which need to carried out for this crop here. The day field is used to mention the day on which the task needs to be carried out, 1 being the 1st day, etc.. ","ለዚህ ስብስብ የሚያስፈልገውን ሁሉንም ስራዎች እዚህ ማለት ይችላሉ. የቀን መስክ ስራው የሚከናወንበትን ቀን ለመጥቀስ ጥቅም ላይ የዋለ, 1 1 ኛ ቀን, ወዘተ.",
@@ -5441,7 +5358,6 @@
 To TIme,ጊዜ ወደ,
 Course End Date,የኮርስ መጨረሻ ቀን,
 Course Topic,የትምህርት ርዕስ,
-Topic,አርእስት,
 Topic Name,ርዕስ ስም,
 Education Settings,የትምህርት ቅንጅቶች,
 Current Academic Year,የአሁኑ ትምህርታዊ ዓመት,
@@ -5516,7 +5432,6 @@
 Check this if the Student is residing at the Institute's Hostel.,የተማሪ ተቋም ዎቹ ሆስተል ላይ የሚኖር ከሆነ ይህን ምልክት ያድርጉ.,
 Walking,በእግር መሄድ,
 Institute's Bus,የኢንስቲቱ አውቶቡስ,
-Public Transport,የሕዝብ ማመላለሻ,
 Self-Driving Vehicle,የራስ-መንዳት ተሽከርካሪ,
 Pick/Drop by Guardian,አሳዳጊ በ / ጣል ይምረጡ,
 Enrolled courses,የተመዘገቡ ኮርሶች,
@@ -5697,7 +5612,6 @@
 Default Cost Center,ነባሪ ዋጋ ማዕከል,
 Undeposited Funds Account,ተመላሽ ያልተደረገ የገንዘብ ሒሳብ,
 Shopify Log,ምዝግብ ማስታወሻ ያዝ,
-Request Data,የጥያቄ ውሂብ,
 Shopify Settings,ቅንብሮችን ይግዙ,
 status html,ሁኔታ html,
 Enable Shopify,Shopify ን አንቃ,
@@ -5817,7 +5731,6 @@
 Exercise Instructions,የአካል ብቃት እንቅስቃሴ መመሪያዎች,
 Exercise Video,የአካል ብቃት እንቅስቃሴ ቪዲዮ,
 Exercise Steps,የአካል ብቃት እንቅስቃሴ ደረጃዎች,
-Steps,ደረጃዎች,
 Steps Table,ደረጃዎች ሠንጠረዥ,
 Exercise Type Step,የአካል ብቃት እንቅስቃሴ ዓይነት ደረጃ,
 Max number of visit,ከፍተኛ የጎብኝ ቁጥር,
@@ -6001,7 +5914,6 @@
 Patient Encounter Symptom,የታካሚ ገጠመኝ ምልክት,
 HLC-PMR-.YYYY.-,HLC-PMR-yYYYY.-,
 Attach Medical Record,የሕክምና መዝገብ ያያይዙ,
-Reference DocType,የማጣቀሻ ሰነድ ዓይነት,
 Spouse,የትዳር ጓደኛ,
 Family,ቤተሰብ,
 Schedule Details,የጊዜ ሰሌዳ ዝርዝሮች,
@@ -6983,16 +6895,8 @@
 HTML / Banner that will show on the top of product list.,የምርት ዝርዝር አናት ላይ ያሳያል የ HTML / ሰንደቅ.,
 Set prefix for numbering series on your transactions,በእርስዎ ግብይቶች ላይ ተከታታይ ቁጥር አዘጋጅ ቅድመ ቅጥያ,
 Setup Series,ማዋቀር ተከታታይ,
-Select Transaction,ይምረጡ የግብይት,
-Help HTML,የእገዛ ኤችቲኤምኤል,
-Series List for this Transaction,ለዚህ ግብይት ተከታታይ ዝርዝር,
-User must always select,ተጠቃሚው ሁልጊዜ መምረጥ አለብዎ,
-Check this if you want to force the user to select a series before saving. There will be no default if you check this.,ሳያስቀምጡ በፊት ተከታታይ ለመምረጥ ተጠቃሚው ለማስገደድ የሚፈልጉ ከሆነ ይህን ምልክት ያድርጉ. ይህን ለማረጋገጥ ከሆነ ምንም ነባሪ ይሆናል.,
 Update Series,አዘምን ተከታታይ,
 Change the starting / current sequence number of an existing series.,አንድ ነባር ተከታታይ ጀምሮ / የአሁኑ ቅደም ተከተል ቁጥር ለውጥ.,
-Prefix,ባዕድ መነሻ,
-This is the number of the last created transaction with this prefix,ይህ የዚህ ቅጥያ ጋር የመጨረሻ የፈጠረው የግብይት ቁጥር ነው,
-Update Series Number,አዘምን ተከታታይ ቁጥር,
 Quotation Lost Reason,ጥቅስ የጠፋ ምክንያት,
 A third party distributor / dealer / commission agent / affiliate / reseller who sells the companies products for a commission.,አንድ ተልእኮ ለማግኘት ኩባንያዎች ምርቶችን የሚሸጡ አንድ ሶስተኛ ወገን አሰራጭ / አከፋፋይ / ተልእኮ ወኪል / የሽያጭ / ሻጭ.,
 Sales Partner Name,የሽያጭ የአጋር ስም,
@@ -7687,7 +7591,6 @@
 Warehouse wise Item Balance Age and Value,የመጋዘን ጥበባዊ የጥሬ እቃ የዕድሜ እና ዋጋ,
 Work Order Stock Report,የሥራ ትዕዛዝ ክምችት ሪፖርት,
 Work Orders in Progress,የስራዎች በሂደት ላይ,
-Validation Error,የማረጋገጫ ስህተት,
 Automatically Process Deferred Accounting Entry,የተዘገየ የሂሳብ ምዝገባ በራስ-ሰር ሂደት,
 Bank Clearance,የባንክ ማጽዳት,
 Bank Clearance Detail,የባንክ ማጣሪያ ዝርዝር,
@@ -7724,45 +7627,7 @@
 Therapy Plan: ,ቴራፒ እቅድ,
 Total Counts Targeted: ,ያነጣጠሩ ጠቅላላ ቆጠራዎች,
 Total Counts Completed: ,ጠቅላላ ቆጠራዎች ተጠናቅቀዋል,
-Andaman and Nicobar Islands,አንዳማን እና ኒኮባር ደሴቶች,
-Andhra Pradesh,አንድራ ፕራዴሽ,
-Arunachal Pradesh,አሩናቻል ፕራዴሽ,
-Assam,አሳም,
-Bihar,ቢሃር,
-Chandigarh,ቻንዲጋር,
-Chhattisgarh,ቼቲስጋርህ,
-Dadra and Nagar Haveli,ዳድራ እና ናጋራ ሀድሊ,
-Daman and Diu,ዳማን እና ዲዩ,
-Delhi,ዴልሂ,
-Goa,ጎዋ,
-Gujarat,ጉጃራት,
-Haryana,ሀሪያና,
-Himachal Pradesh,ሂማሃል ፕራዴሽ,
-Jammu and Kashmir,ጃሙ እና ካሽሚር,
-Jharkhand,ጃሃርሃንድ,
-Karnataka,ካርናታካ,
-Kerala,ኬራላ,
-Lakshadweep Islands,የላክሻድዌፕ ደሴቶች,
-Madhya Pradesh,ማድያ ፕራዴሽ,
-Maharashtra,ማሃራሽትራ,
-Manipur,ማኒpር,
-Meghalaya,Meghalaya,
-Mizoram,ሚዞራም,
-Nagaland,ናጋላንድ,
-Odisha,ኦዲሻ,
-Other Territory,ሌላ ክልል,
-Pondicherry,የውሃ ወለሎች,
-Punjab,Punንጃብ,
-Rajasthan,ራጃስታን,
-Sikkim,ሲክኪም,
-Tamil Nadu,ታሚል ናዱ,
-Telangana,ተላንጋና,
-Tripura,ትራuraራ,
-Uttar Pradesh,ኡታር ፕራዴሽ,
-Uttarakhand,Uttarakhand,
-West Bengal,ምዕራብ ቤንጋል,
 Is Mandatory,አስገዳጅ ነው,
-Published on,ታትሟል,
 Service Received But Not Billed,አገልግሎት ተቀበለ ግን አልተከፈለም,
 Deferred Accounting Settings,የዘገየ የሂሳብ አያያዝ ቅንብሮች,
 Book Deferred Entries Based On,በመጽሐፍ ላይ ተመስርተው የተዘገዩ ግቤዎች,
@@ -8035,8 +7900,6 @@
 Worksheet Instructions,የሥራ ሉህ መመሪያዎች,
 Result Legend Print,የውጤት አፈ ታሪክ ማተም,
 Print Position,የህትመት አቀማመጥ,
-Bottom,ታች,
-Top,ከላይ,
 Both,ሁለቱም,
 Result Legend,የውጤት አፈ ታሪክ,
 Lab Tests,የላብራቶሪ ምርመራዎች,
@@ -8081,12 +7944,10 @@
 Approvers,አወዛጋቢ,
 The first Approver in the list will be set as the default Approver.,በዝርዝሩ ውስጥ የመጀመሪያው አጽዳቂ እንደ ነባሪው ማጽደቂያ ይቀመጣል።,
 Shift Request Approver,የሺፍት ጥያቄ ማጽደቅ,
-PAN Number,የፓን ቁጥር,
 Provident Fund Account,የፕሮቪደንት ፈንድ ሂሳብ,
 MICR Code,MICR ኮድ,
 Repay unclaimed amount from salary,ከደመወዝ ያልተጠየቀውን መጠን ይክፈሉ,
 Deduction from salary,ከደመወዝ መቀነስ,
-Expired Leaves,ጊዜው ያለፈባቸው ቅጠሎች,
 If this is not checked the loan by default will be considered as a Demand Loan,ይህ ካልተረጋገጠ ብድሩ በነባሪነት እንደ ብድር ይቆጠራል,
 This account is used for booking loan repayments from the borrower and also disbursing loans to the borrower,ይህ ሂሳብ ከተበዳሪው የብድር ክፍያዎችን ለማስያዝ እና እንዲሁም ለተበዳሪው ብድሮችን ለማሰራጨት ያገለግላል,
 This account is capital account which is used to allocate capital for loan disbursal account ,ይህ አካውንት ለብድር ማስከፈያ ሂሳብ ካፒታል ለመመደብ የሚያገለግል የካፒታል ሂሳብ ነው,
@@ -8844,3 +8705,41 @@
 Creating Purchase Order ...,የግዢ ትዕዛዝ በመፍጠር ላይ ...,
 "Select a Supplier from the Default Suppliers of the items below. On selection, a Purchase Order will be made against items belonging to the selected Supplier only.",ከዚህ በታች ካሉ ዕቃዎች ነባሪ አቅራቢዎች አቅራቢ ይምረጡ። በምርጫ ወቅት ለተመረጠው አቅራቢ ብቻ በሆኑ ዕቃዎች ላይ የግዢ ትዕዛዝ ይደረጋል።,
 Row #{}: You must select {} serial numbers for item {}.,ረድፍ # {}: {} ለንጥል ተከታታይ ቁጥሮች {} መምረጥ አለብዎት።,
+Add Comment,አስተያየት ያክሉ,
+More...,ተጨማሪ ...,
+Notes,ማስታወሻዎች,
+Payment Gateway,የክፍያ ጌትዌይ,
+Payment Gateway Name,የክፍያ በርዕስ ስም,
+Payments,ክፍያዎች,
+Plan Name,የዕቅድ ስም,
+Portal,ፖርታል,
+Scan Barcode,ባርኮድ ቅኝት,
+Some information is missing,አንዳንድ መረጃ ይጎድለዋል,
+Successful,ስኬታማ,
+Tools,መሣሪያዎች,
+Use Sandbox,ይጠቀሙ ማጠሪያ,
+Busy,ስራ የሚበዛበት,
+Completed By,ተጠናቅቋል,
+Payment Failed,ክፍያ አልተሳካም,
+Column {0},አምድ {0},
+Field Mapping,የመስክ ካርታ,
+Not Specified,አልተገለጸም ፡፡,
+Update Type,የዘመኑ ዓይነት,
+Dr,ዶ,
+End Time,መጨረሻ ሰዓት,
+Fetching...,በማምጣት ላይ ...,
+"It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","በአገልጋዩ የሽቦ ውቅር ላይ ችግር ያለ ይመስላል. ካልተሳካ, ገንዘቡ ወደ ሂሳብዎ ተመላሽ ይደረጋል.",
+Looks like someone sent you to an incomplete URL. Please ask them to look into it.,አንድ ሰው ያልተሟላ ዩ አር ኤል ወደ እናንተ ላከ ይመስላል. ወደ ለማየት ጠይቃቸው.,
+Master,ባለቤት,
+Pay,ይክፈሉ,
+You can also copy-paste this link in your browser,በተጨማሪም በአሳሽዎ ውስጥ ይህን አገናኝ መቅዳት-መለጠፍ ይችላሉ,
+Verified By,በ የተረጋገጡ,
+Invalid naming series (. missing) for {0},ለ {0} ልክ ያልሆነ የስም ዝርዝር ((የጠፋ)),
+Phone Number,ስልክ ቁጥር,
+Account SID,መለያ SID።,
+Global Defaults,ዓለም አቀፍ ነባሪዎች,
+Is Mandatory,አስገዳጅ ነው,
+WhatsApp,ዋትስአፕ,
+Make a call,ደውል,
+Approve,ማጽደቅ,
+Reject,አይቀበሉ,
diff --git a/erpnext/translations/ar.csv b/erpnext/translations/ar.csv
index 550b5f2..4e03a18 100644
--- a/erpnext/translations/ar.csv
+++ b/erpnext/translations/ar.csv
@@ -113,7 +113,6 @@
 Add Items,إضافة بنود,
 Add Leads,إضافة العملاء المحتملين,
 Add Multiple Tasks,إضافة مهام متعددة,
-Add Row,اضف سطر,
 Add Sales Partners,إضافة شركاء المبيعات,
 Add Serial No,إضافة رقم تسلسلي,
 Add Students,أضف طلاب,
@@ -211,9 +210,7 @@
 An error occurred during the update process,حدث خطأ أثناء عملية التحديث,
 "An item exists with same name ({0}), please change the item group name or rename the item",يوجد بند بنفس الاسم ({0})، يرجى تغيير اسم مجموعة البند أو إعادة تسمية البند,
 Analyst,محلل,
-Analytics,التحليلات,
 Annual Billing: {0},الفواتير السنوية:  {0},
-Anonymous,مجهول,
 Another Budget record '{0}' already exists against {1} '{2}' and account '{3}' for fiscal year {4},سجل الموازنة الآخر &#39;{0}&#39; موجود بالفعل مقابل {1} &#39;{2}&#39; وحساب &#39;{3}&#39; للسنة المالية {4},
 Another Period Closing Entry {0} has been made after {1},قيد إقفال فترة أخرى {0} تم إنشائها بعد {1},
 Another Sales Person {0} exists with the same Employee id,مندوب مبيعات آخر {0} موجود بنفس رقم هوية الموظف,
@@ -283,14 +280,12 @@
 Attendance not submitted for {0} as {1} on leave.,لم يتم إرسال المشاركة {0} كـ {1} في الإجازة.,
 Attribute table is mandatory,جدول الخصائص إلزامي,
 Attribute {0} selected multiple times in Attributes Table,تم تحديد السمة {0} عدة مرات في جدول السمات\n<br>\nAttribute {0} selected multiple times in Attributes Table,
-Author,مؤلف,
 Authorized Signatory,المخول بالتوقيع,
 Auto Material Requests Generated,إنشاء طلب مواد تلقائي,
 Auto Repeat,تكرار تلقائي,
 Auto repeat document updated,تكرار تلقائي للمستندات المحدثة,
 Automotive,سيارات,
 Available,متاح,
-Available Leaves,المغادارت والاجازات المتاحة,
 Available Qty,الكمية المتاحة,
 Available Selling,المبيعات المتاحة,
 Available for use date is required,مطلوب تاريخ متاح للاستخدام,
@@ -340,7 +335,6 @@
 Base URL,الرابط الأساسي,
 Based On,وبناء على,
 Based On Payment Terms,بناء على شروط الدفع,
-Basic,الأساسي,
 Batch,الدفعات,
 Batch Entries,إدخالات دفعة,
 Batch ID is mandatory,معرف الدُفعة إلزامي,
@@ -361,7 +355,6 @@
 Billable Hours,ساعات قابلة للفوترة,
 Billed,تمت الفوترة,
 Billed Amount,القيمة المقدم فاتورة بها,
-Billing,الفواتير,
 Billing Address,العنوان الذي ترسل به الفواتير,
 Billing Address is same as Shipping Address,عنوان الفواتير هو نفس عنوان الشحن,
 Billing Amount,قيمة الفواتير,
@@ -560,7 +553,6 @@
 Consumed Qty,تستهلك الكمية,
 Consumer Products,منتجات المستهلك,
 Contact,اتصال,
-Contact Details,تفاصيل الاتصال,
 Contact Us,اتصل بنا,
 Content,محتوى,
 Content Masters,الماجستير المحتوى,
@@ -715,7 +707,6 @@
 Date of Joining,تاريخ الالتحاق بالعمل,
 Date of Joining must be greater than Date of Birth,تاريخ اﻹنضمام يجب أن يكون أكبر من تاريخ الميلاد\n<br>\nDate of Joining must be greater than Date of Birth,
 Date of Transaction,تاريخ المعاملة,
-Datetime,التاريخ والوقت,
 Day,يوم,
 Debit,مدين,
 Debit ({0}),مدين ({0}),
@@ -874,7 +865,6 @@
 Employee cannot report to himself.,الموظف لا يمكن أن يقدم تقريرا إلى نفسه.\n<br>\nEmployee cannot report to himself.,
 Employee {0} has already applied for {1} between {2} and {3} : ,الموظف {0} قد طبق بالفعل على {1} بين {2} و {3}:,
 Employee {0} of grade {1} have no default leave policy,ليس لدى الموظف {0} من الدرجة {1} سياسة إجازة افتراضية,
-Enable,تمكين,
 Enable / disable currencies.,تمكين / تعطيل العملات .,
 Enabled,تمكين,
 "Enabling 'Use for Shopping Cart', as Shopping Cart is enabled and there should be at least one Tax Rule for Shopping Cart",تمكين &quot;استخدام لسلة التسوق، كما تم تمكين سلة التسوق وأن يكون هناك واحد على الأقل القاعدة الضريبية لسلة التسوق,
@@ -905,7 +895,6 @@
 Error: Not a valid id?,خطأ: هوية غير صالحة؟,
 Estimated Cost,التكلفة التقديرية,
 "Even if there are multiple Pricing Rules with highest priority, then following internal priorities are applied:",حتى إذا كانت هناك قواعد تسعير متعددة ذات أولوية قصوى، يتم تطبيق الأولويات الداخلية التالية:,
-Event,حدث,
 Exchange Gain/Loss,أرباح / خسائر الناتجة عن صرف العملة,
 Exchange Rate Revaluation master.,سيد إعادة تقييم سعر الصرف.,
 Exchange Rate must be same as {0} {1} ({2}),يجب أن يكون سعر الصرف نفس {0} {1} ({2}),
@@ -1032,7 +1021,6 @@
 From value must be less than to value in row {0},(من القيمة) يجب أن تكون أقل من (الي القيمة) في الصف {0},
 From {0} | {1} {2},من {0} | {1} {2},
 Fulfillment,استيفاء,
-Full,ممتلئ,
 Full Name,الاسم الكامل,
 Fully Depreciated,استهلكت بالكامل,
 Furnitures and Fixtures,أثاث وتركيبات,
@@ -1133,7 +1121,6 @@
 Hub Sync ID,معرف مزامنة المحور,
 Human Resource,Human Resource,
 Human Resources,الموارد البشرية,
-IFSC Code,رمز IFSC,
 IGST Amount,كمية IGST,
 IP Address,عنوان IP,
 ITC Available (whether in full op part),مركز التجارة الدولية متاح (سواء في جزء المرجع الكامل),
@@ -1185,7 +1172,6 @@
 Ineligible ITC,غير مؤهل ITC,
 Initiated,بدأت,
 Inpatient Record,سجل المرضى الداخليين,
-Insert,إدراج,
 Installation Note,ملاحظة التثبيت,
 Installation Note {0} has already been submitted,مذكرة التسليم {0} ارسلت\n<br>\nInstallation Note {0} has already been submitted,
 Installation date cannot be before delivery date for Item {0},تاريخ التركيب لا يمكن أن يكون قبل تاريخ التسليم للبند {0},
@@ -1197,7 +1183,6 @@
 Insurance Start date should be less than Insurance End date,يجب أن يكون تاريخ بداية التأمين قبل  تاريخ نهاية التأمين,
 Integrated Tax,ضريبة متكاملة,
 Inter-State Supplies,اللوازم بين الدول,
-Interests,الإهتمامات او الفوائد,
 Internet Publishing,نشر على شبكة الإنترنت,
 Intra-State Supplies,اللوازم داخل الدولة,
 Introduction,مقدمة,
@@ -1316,7 +1301,6 @@
 Lab testing datetime cannot be before collection datetime,لا يمكن أن يكون وقت اختبار المختبر قبل تاريخ جمع البيانات,
 Label,ملصق,
 Laboratory,مختبر,
-Language Name,اسم اللغة,
 Large,كبير,
 Last Communication,آخر الاتصالات,
 Last Communication Date,تاريخ الاتصال الأخير,
@@ -1347,8 +1331,6 @@
 Letter Heads for print templates.,رؤس الرسائل لقوالب الطباعة.,
 Level,المستوى,
 Liability,الخصوم,
-License,رخصة,
-Limit,حد,
 Limit Crossed,الحدود تجاوزت,
 Link to Material Request,رابط لطلب المواد,
 List of all share transactions,قائمة بجميع معاملات الأسهم,
@@ -1359,7 +1341,6 @@
 Loans (Liabilities),القروض (الخصوم),
 Loans and Advances (Assets),القروض والسلفيات (الأصول),
 Local,محلي,
-Log,سجل,
 Logs for maintaining sms delivery status,سجلات للحفاظ على  حالات التسليم لرسائل,
 Lost,مفقود,
 Lost Reasons,أسباب ضائعة,
@@ -1445,7 +1426,6 @@
 Medical Department,القسم الطبي,
 Medical Record,السجل الطبي,
 Medium,متوسط,
-Meeting,لقاء,
 Member Activity,نشاط العضو,
 Member ID,معرف العضو,
 Member Name,اسم العضو,
@@ -1495,7 +1475,6 @@
 Multiple Variants,متغيرات متعددة,
 Multiple fiscal years exist for the date {0}. Please set company in Fiscal Year,يوجد سنوات مالية متعددة لنفس التاريخ {0}. الرجاء تحديد الشركة لهذه السنة المالية\n<br>\nMultiple fiscal years exist for the date {0}. Please set company in Fiscal Year,
 Music,موسيقى,
-My Account,حسابي,
 Name error: {0},اسم الخطأ: {0},
 Name of new Account. Note: Please don't create accounts for Customers and Suppliers,اسم الحساب الجديد. ملاحظة: الرجاء عدم إنشاء حسابات للزبائن والموردين,
 Name or Email is mandatory,الاسم أو البريد الإلكتروني إلزامي\n<br>\nName or Email is mandatory,
@@ -1538,7 +1517,6 @@
 New credit limit is less than current outstanding amount for the customer. Credit limit has to be atleast {0},حد الائتمان الجديد أقل من المبلغ المستحق الحالي للعميل. حد الائتمان يجب أن يكون على الأقل {0}\n<br>\nNew credit limit is less than current outstanding amount for the customer. Credit limit has to be atleast {0},
 New task,مهمة جديدة,
 New {0} pricing rules are created,يتم إنشاء قواعد تسعير جديدة {0},
-Newsletters,النشرات الإخبارية,
 Newspaper Publishers,ناشر الصحف,
 Next,التالي,
 Next Contact By cannot be same as the Lead Email Address,(جهة الاتصال التالية) لا يمكن أن يكون نفس (عنوان البريد الإلكتروني للزبون المحتمل),
@@ -1686,7 +1664,6 @@
 Other,آخر,
 Other Reports,تقارير أخرى,
 "Other outward supplies(Nil rated,Exempted)",اللوازم الخارجية الأخرى (بدون تقييم ، معفاة),
-Others,بدلات أخرى,
 Out Qty,كمية خارجة,
 Out Value,القيمة الخارجه,
 Out of Order,خارج عن السيطرة,
@@ -1726,7 +1703,6 @@
 Party Type and Party is mandatory for {0} account,نوع الطرف والحزب إلزامي لحساب {0},
 Party Type is mandatory,حقل نوع المستفيد إلزامي\n<br>\nParty Type is mandatory,
 Party is mandatory,حقل المستفيد إلزامي\n<br>\nParty is mandatory,
-Password,كلمة السر,
 Past Due Date,تاريخ الاستحقاق السابق,
 Patient,صبور,
 Patient Appointment,موعد المريض,
@@ -1784,7 +1760,6 @@
 Pharmaceutical,الأدوية,
 Pharmaceuticals,الصيدليات,
 Physician,الطبيب المعالج,
-Pincode,رمز Pin,
 Place Of Supply (State/UT),مكان التوريد (الولاية / يو تي),
 Place Order,تقديم الطلب,
 Plan Name,اسم الخطة,
@@ -1896,7 +1871,6 @@
 Please select date,يرجى تحديد التاريخ,
 Please select item code,الرجاء تحديد رمز البند\n<br>\nPlease select item code,
 Please select month and year,الرجاء اختيار الشهر والسنة,
-Please select prefix first,الرجاء اختيار البادئة اولا,
 Please select the Company,يرجى تحديد الشركة,
 Please select the Multiple Tier Program type for more than one collection rules.,يرجى تحديد نوع البرنامج متعدد الطبقات لأكثر من قواعد مجموعة واحدة.,
 Please select the assessment group other than 'All Assessment Groups',يرجى اختيار مجموعة التقييم بخلاف &quot;جميع مجموعات التقييم&quot;,
@@ -1913,7 +1887,6 @@
 Please set Company filter blank if Group By is 'Company',الرجاء تعيين فلتر الشركة فارغا إذا كانت المجموعة بي هي &#39;كومباني&#39;,
 Please set Default Payroll Payable Account in Company {0},الرجاء تحديد الحساب افتراضي لدفع الرواتب في الشركة {0},
 Please set Depreciation related Accounts in Asset Category {0} or Company {1},يرجى تحديد الحسابات المتعلقة بالاهلاك في فئة الأصول {0} أو الشركة {1},
-Please set Email Address,يرجى وضع عنوان البريد الإلكتروني,
 Please set GST Accounts in GST Settings,يرجى تعيين حسابات ضريبة السلع والخدمات في إعدادات غست,
 Please set Hotel Room Rate on {},يرجى تحديد سعر غرفة الفندق على {},
 Please set Number of Depreciations Booked,الرجاء تعيين عدد الاهلاكات المستنفده مسبقا,
@@ -1936,7 +1909,6 @@
 Please set the Email ID for the Student to send the Payment Request,يرجى تعيين معرف البريد الإلكتروني للطالب لإرسال طلب الدفع,
 Please set the Item Code first,يرجى تعيين رمز العنصر أولا,
 Please set the Payment Schedule,يرجى ضبط جدول الدفع,
-Please set the series to be used.,يرجى ضبط المسلسل ليتم استخدامه.,
 Please set {0} for address {1},يرجى ضبط {0} للعنوان {1},
 Please setup Students under Student Groups,يرجى إعداد الطلاب تحت مجموعات الطلاب,
 Please specify Company,يرجى تحديد شركة,
@@ -1953,7 +1925,6 @@
 Point-of-Sale,نقطة البيع,
 Point-of-Sale Profile,ملف نقطة البيع,
 Portal,بوابة,
-Portal Settings,إعدادات البوابة,
 Possible Supplier,مورد محتمل,
 Postal Expenses,نفقات بريدية,
 Posting Date,تاريخ الترحيل,
@@ -2152,12 +2123,10 @@
 Reference No is mandatory if you entered Reference Date,رقم المرجع إلزامي اذا أدخلت تاريخ المرجع\n<br>\nReference No is mandatory if you entered Reference Date,
 Reference No.,رقم المرجع.,
 Reference Number,رقم الارتباط,
-Reference Owner,إشارة المالك,
 Reference Type,نوع المرجع,
 "Reference: {0}, Item Code: {1} and Customer: {2}",المرجع: {0}، رمز العنصر: {1} والعميل: {2},
 References,المراجع,
 Refresh Token,تحديث رمز,
-Region,منطقة,
 Register,تسجيل,
 Rejected,مرفوض,
 Related,ذات صلة,
@@ -2179,7 +2148,6 @@
 Replace BOM and update latest price in all BOMs,استبدال بوم وتحديث أحدث الأسعار في جميع بومس,
 Replied,رد,
 Report,تقرير,
-Report Builder,تقرير منشئ,
 Report Type,نوع التقرير,
 Report Type is mandatory,نوع التقرير إلزامي\n<br>\nReport Type is mandatory,
 Reports,تقارير,
@@ -2355,13 +2323,11 @@
 Same Company is entered more than once,تم إدخال نفس الشركة أكثر من مره\n<br>\nSame Company is entered more than once,
 Same item cannot be entered multiple times.,لا يمكن إدخال البند نفسه عدة مرات.,
 Same supplier has been entered multiple times,تم إدخال المورد نفسه عدة مرات,
-Sample,عينة,
 Sample Collection,جمع العينات,
 Sample quantity {0} cannot be more than received quantity {1},كمية العينة {0} لا يمكن أن تكون أكثر من الكمية المستلمة {1},
 Sanctioned,مقرر,
 Sand,رمل,
 Saturday,السبت,
-Saved,حفظ,
 Saving {0},حفظ {0},
 Scan Barcode,مسح الباركود,
 Schedule,جدول,
@@ -2463,7 +2429,6 @@
 Series Updated,تم تحديث الرقم المتسلسل,
 Series Updated Successfully,تم تحديث الترقيم المتسلسل بنجاح,
 Series is mandatory,الترقيم المتسلسل إلزامي,
-Series {0} already used in {1},الترقيم المتسلسل {0} مستخدم بالفعل في {1},
 Service,خدمة,
 Service Level Agreement,اتفاقية مستوى الخدمة,
 Service Level Agreement.,اتفاقية مستوى الخدمة.,
@@ -2479,7 +2444,6 @@
 Set Tax Rule for shopping cart,مجموعة القاعدة الضريبية لعربة التسوق,
 Set as Closed,على النحو مغلق,
 Set as Completed,تعيين كـ مكتمل,
-Set as Default,تعيين كافتراضي,
 Set as Lost,على النحو المفقودة,
 Set as Open,على النحو المفتوحة,
 Set default inventory account for perpetual inventory,تعيين حساب المخزون الافتراضي للمخزون الدائم,
@@ -2511,7 +2475,6 @@
 Shareholder,المساهم,
 Ship To State,السفينة الى الدولة,
 Shipments,شحنات,
-Shipping,الشحن,
 Shipping Address,عنوان الشحن,
 "Shipping Address does not have country, which is required for this Shipping Rule",عنوان الشحن ليس لديه بلد، وهو مطلوب لقاعدة الشحن هذه,
 Shipping rule only applicable for Buying,الشحن القاعدة المعمول بها فقط للشراء,
@@ -2564,7 +2527,6 @@
 Split Batch,تقسيم دفعة,
 Split Issue,تقسيم القضية,
 Sports,الرياضة,
-Standard,اساسي,
 Standard Buying,شراء القياسية,
 Standard Selling,البيع القياسية,
 Standard contract terms for Sales or Purchase.,شروط العقد القياسية للمبيعات أو للمشتريات .,
@@ -2731,7 +2693,6 @@
 Terms and Conditions,الشروط والأحكام,
 Terms and Conditions Template,قالب الشروط والأحكام,
 Territory,إقليم,
-Test,اختبار,
 Thank you for your business!,شكرا لك على عملك!,
 The 'From Package No.' field must neither be empty nor it's value less than 1.,و &quot;من حزمة رقم&quot; يجب ألا يكون الحقل فارغا ولا قيمة أقل من 1.,
 The Brand,العلامة التجارية,
@@ -2848,7 +2809,6 @@
 Total (Without Tax),الإجمالي (بدون ضريبة),
 Total Achieved,الإجمالي المحقق,
 Total Actual,الإجمالي الفعلي,
-Total Allocated Leaves,مجموع الأوراق المخصصة,
 Total Amount,الاعتماد الأساسي,
 Total Amount Credited,مجموع المبلغ المعتمد,
 Total Applicable Charges in Purchase Receipt Items table must be same as Total Taxes and Charges,مجموع الرسوم المطبقة في شراء طاولة إيصال عناصر يجب أن يكون نفس مجموع الضرائب والرسوم,
@@ -2892,7 +2852,6 @@
 Total(Amt),إجمالي (AMT),
 Total(Qty),إجمالي (الكمية),
 Traceability,التتبع,
-Traceback,Traceback,
 Track Leads by Lead Source.,تقدم العروض حسب المصدر الرصاص.,
 Transaction,حركة,
 Transaction Date,تاريخ المعاملة,
@@ -2930,7 +2889,6 @@
 UOM Conversion factor is required in row {0},معامل تحويل وحدة القياس مطلوب في الصف: {0},
 UOM coversion factor required for UOM: {0} in Item: {1},عامل تحويل UOM المطلوب لUOM : {0} في البند: {1}<br>\nUOM coversion factor required for UOM: {0} in Item: {1},
 URL,رابط الانترنت,
-Unable to find DocType {0},تعذر العثور على نوع الملف {0},
 Unable to find exchange rate for {0} to {1} for key date {2}. Please create a Currency Exchange record manually,تعذر العثور على سعر الصرف من {0} إلى {1} لتاريخ المفتاح {2}. يرجى إنشاء سجل صرف العملات يدويا,
 Unable to find score starting at {0}. You need to have standing scores covering 0 to 100,تعذر العثور على النتيجة بدءا من {0}. يجب أن يكون لديك درجات دائمة تغطي 0 إلى 100,
 Unable to find variable: ,تعذر العثور على متغير:,
@@ -2960,7 +2918,6 @@
 Upload your letter head and logo. (you can edit them later).,تحميل رئيس رسالتكم والشعار. (يمكنك تحريرها لاحقا).,
 Upper Income,أعلى دخل,
 Use Sandbox,استخدام ساندبوكس,
-Used Leaves,مغادرات مستخدمة,
 User,المستعمل,
 User ID,تعريف المستخدم,
 User ID not set for Employee {0},هوية المستخدم لم يتم تعيين موظف ل {0},
@@ -3051,7 +3008,6 @@
 Website Settings,إعدادات الموقع,
 Wednesday,الأربعاء,
 Week,أسبوع,
-Weekdays,أيام الأسبوع,
 Weekly,الأسبوعية,
 "Weight is mentioned,\nPlease mention ""Weight UOM"" too","يذكر الوزن، \n يرجى ذكر ""الوزن UOM"" للغاية",
 Welcome email sent,رسالة الترحيب تم أرسالها,
@@ -3072,7 +3028,6 @@
 Work Order {0} must be submitted,يجب تقديم طلب العمل {0},
 Work Orders Created: {0},أوامر العمل التي تم إنشاؤها: {0},
 Work-in-Progress Warehouse is required before Submit,مستودع أعمال جارية مطلوب قبل التسجيل\n<br>\nWork-in-Progress Warehouse is required before Submit,
-Workflow,سير العمل,
 Working,عامل,
 Working Hours,ساعات العمل,
 Workstation,محطة العمل,
@@ -3102,7 +3057,6 @@
 You need to be a user other than Administrator with System Manager and Item Manager roles to register on Marketplace.,يجب أن تكون مستخدمًا غير المسؤول مع أدوار مدير النظام و مدير الصنف للتسجيل في Marketplace.,
 You need to be a user with System Manager and Item Manager roles to add users to Marketplace.,يجب أن تكون مستخدمًا بأدوار مدير النظام و مدير الصنف لإضافة المستخدمين إلى Marketplace.,
 You need to be a user with System Manager and Item Manager roles to register on Marketplace.,يجب أن تكون مستخدمًا بأدوار مدير النظام و مدير الصنف للتسجيل في Marketplace.,
-You need to be logged in to access this page,تحتاج إلى تسجيل الدخول للوصول إلى هذه الصفحة,
 You need to enable Shopping Cart,تحتاج إلى تمكين سلة التسوق,
 You will lose records of previously generated invoices. Are you sure you want to restart this subscription?,ستفقد سجلات الفواتير التي تم إنشاؤها من قبل. هل أنت متأكد من أنك تريد إعادة تشغيل هذا الاشتراك؟,
 Your Organization,مؤسستك,
@@ -3218,7 +3172,6 @@
 Assigned To,كلف إلى,
 Chat,الدردشة,
 Completed By,اكتمل بواسطة,
-County,مقاطعة,
 Day of Week,يوم من الأسبوع,
 "Dear System Manager,",عزيزي مدير النظام،,
 Default Value,القيمة الافتراضية,
@@ -3229,31 +3182,21 @@
 Fieldtype,نوع الحقل,
 Help Articles,مقالات المساعدة,
 ID,هوية شخصية,
-Images,صور,
 Import,استيراد,
 Language,اللغة,
 Likes,اعجابات,
 Merge with existing,دمج مع الحالي,
-Office,مكتب,
 Orientation,توجيه,
 Parent,رقم الاب,
-Passive,غير فعال,
 Payment Failed,عملية الدفع فشلت,
-Permanent,دائم,
 Personal,الشخصية,
-Plant,مصنع,
 Post,بعد,
-Postal,بريدي,
 Postal Code,الرمز البريدي,
-Previous,سابق,
 Provider,المزود,
 Read Only,للقراءة فقط,
 Recipient,مستلم,
 Reviews,التعليقات,
 Sender,مرسل,
-Shop,تسوق,
-Subsidiary,شركة فرعية,
-There is some problem with the file url: {0},هناك بعض المشاكل مع رابط الملف: {0},
 There were errors while sending email. Please try again.,كانت هناك أخطاء أثناء إرسال البريد الإلكتروني. يرجى المحاولة مرة أخرى.,
 Values Changed,القيم التي تم تغييرها,
 or,أو,
@@ -3280,19 +3223,16 @@
 Quality Feedback Template,قالب ملاحظات الجودة,
 Rules for applying different promotional schemes.,قواعد تطبيق المخططات الترويجية المختلفة.,
 Show {0},عرض {0},
-"Special Characters except '-', '#', '.', '/', '{{' and '}}' not allowed in naming series {0}",{0} الأحرف الخاصة باستثناء &quot;-&quot; ، &quot;#&quot; ، &quot;.&quot; ، &quot;/&quot; ، &quot;{{&quot; و &quot;}}&quot; غير مسموح في سلسلة التسمية,
 Target Details,تفاصيل الهدف,
 {0} already has a Parent Procedure {1}.,{0} يحتوي بالفعل على إجراء الأصل {1}.,
 API,API,
 Annual,سنوي,
 Change,تغيير,
 Contact Email,عنوان البريد الإلكتروني,
-Export Type,نوع التصدير,
 From Date,من تاريخ,
 Group By,مجموعة من,
 Invalid URL,URL غير صالح,
 Landscape,المناظر الطبيعيه,
-Last Sync On,آخر مزامنة تشغيل,
 Naming Series,سلسلة التسمية,
 No data to export,لا توجد بيانات للتصدير,
 Portrait,صورة,
@@ -3302,7 +3242,6 @@
 Show Document,عرض المستند,
 Show Traceback,إظهار التتبع,
 Video,فيديو,
-Webhook Secret,Webhook Secret,
 % Of Grand Total,٪ من المجموع الكلي,
 <b>Company</b> is a mandatory filter.,<b>الشركة</b> هي مرشح إلزامي.,
 <b>From Date</b> is a mandatory filter.,<b>من التاريخ</b> هو مرشح إلزامي.,
@@ -3358,7 +3297,6 @@
 BOM Comparison Tool,أداة مقارنة BOM,
 BOM recursion: {0} cannot be child of {1},تكرار BOM: {0} لا يمكن أن يكون تابعًا لـ {1},
 BOM recursion: {0} cannot be parent or child of {1},تكرار BOM: {0} لا يمكن أن يكون أصلًا أو تابعًا لـ {1},
-Back to Home,العودة إلى المنزل,
 Back to Messages,العودة إلى الرسائل,
 Bank Data mapper doesn't exist,مخطط بيانات البنك غير موجود,
 Bank Details,تفاصيل البنك,
@@ -3420,7 +3358,6 @@
 Currency,العملة,
 Current Status,الحالة الحالية,
 Customer PO,PO العملاء,
-Customize,تخصيص,
 Daily,يوميا,
 Date,تاريخ,
 Date of Birth cannot be greater than Joining Date.,لا يمكن أن يكون تاريخ الميلاد أكبر من تاريخ الانضمام.,
@@ -3454,7 +3391,6 @@
 ERPNext could not find any matching payment entry,تعذر على ERPNext العثور على أي إدخال دفع مطابق,
 Earliest Age,أقدم عمر,
 Edit Details,عدل التفاصيل,
-Edit Profile,تعديل الملف الشخصي,
 Either GST Transporter ID or Vehicle No is required if Mode of Transport is Road,يلزم تقديم معرف ناقل GST أو السيارة رقم إذا كان وضع النقل هو الطريق,
 Email,البريد الإلكتروني,
 Email Campaigns,حملات البريد الإلكتروني,
@@ -3482,7 +3418,6 @@
 Fetch Items from Warehouse,جلب العناصر من المستودع,
 Fetching...,جلب ...,
 Field,حقل,
-File Manager,مدير الملفات,
 Filters,فلاتر,
 Finding linked payments,العثور على المدفوعات المرتبطة,
 Fleet Management,إدارة المركبات,
@@ -3521,7 +3456,6 @@
 Incorrect Warehouse,مستودع غير صحيح,
 Invalid Barcode. There is no Item attached to this barcode.,الباركود غير صالح. لا يوجد عنصر مرفق بهذا الرمز الشريطي.,
 Invalid credentials,بيانات الاعتماد غير صالحة,
-Invite as User,دعوة كمستخدم,
 Issue Priority.,أولوية الإصدار.,
 Issue Type.,نوع القضية.,
 "It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.",يبدو أن هناك مشكلة في تكوين شريطية للخادم. في حالة الفشل ، سيتم رد المبلغ إلى حسابك.,
@@ -3564,7 +3498,6 @@
 New Invoice,فاتورة جديدة,
 New Payment,دفع جديد,
 New release date should be in the future,يجب أن يكون تاريخ الإصدار الجديد في المستقبل,
-Newsletter,النشرة الإخبارية,
 No Account matched these filters: {},لا يوجد حساب مطابق لهذه الفلاتر: {},
 No communication found.,لا يوجد اتصال.,
 No correct answer is set for {0},لم يتم تحديد إجابة صحيحة لـ {0},
@@ -3640,7 +3573,6 @@
 Please setup a default bank account for company {0},يرجى إعداد حساب بنكي افتراضي للشركة {0},
 Please specify,رجاء حدد,
 Please specify a {0},الرجاء تحديد {0},lead
-Printing,طبع,
 Priority,أفضلية,
 Priority has been changed to {0}.,تم تغيير الأولوية إلى {0}.,
 Priority {0} has been repeated.,تم تكرار الأولوية {0}.,
@@ -3649,7 +3581,6 @@
 Project,مشروع,
 Provide the academic year and set the starting and ending date.,تقديم السنة الدراسية وتحديد تاريخ البداية والنهاية.,
 Public token is missing for this bank,الرمز العام مفقود لهذا البنك,
-Publish,نشر,
 Publish 1 Item,نشر عنصر واحد,
 Publish Items,نشر العناصر,
 Publish More Items,نشر المزيد من العناصر,
@@ -3677,7 +3608,6 @@
 Reconciled,فرضت عليه,
 Recruitment,التوظيف,
 Red,أحمر,
-Refreshing,جاري التحديث,
 Release date must be in the future,يجب أن يكون تاريخ الإصدار في المستقبل,
 Relieving Date must be greater than or equal to Date of Joining,يجب أن يكون تاريخ التخفيف أكبر من أو يساوي تاريخ الانضمام,
 Rename,إعادة تسمية,
@@ -3721,7 +3651,6 @@
 Search for a payment,البحث عن الدفع,
 Search for anything ...,البحث عن أي شيء ...,
 Search results for,نتائج البحث عن,
-Select All,تحديد الكل,
 Select Difference Account,حدد حساب الفرق,
 Select a Default Priority.,حدد أولوية افتراضية.,
 Select a company,اختر شركة,
@@ -3740,11 +3669,9 @@
 Service Level Agreement has been changed to {0}.,تم تغيير اتفاقية مستوى الخدمة إلى {0}.,
 Service Level Agreement was reset.,تمت إعادة ضبط اتفاقية مستوى الخدمة.,
 Service Level Agreement with Entity Type {0} and Entity {1} already exists.,اتفاقية مستوى الخدمة مع نوع الكيان {0} والكيان {1} موجودة بالفعل.,
-Set,مجموعة,
 Set Meta Tags,تعيين العلامات الفوقية,
 Set {0} in company {1},قم بتعيين {0} في الشركة {1},
 Setup,الإعدادات,
-Setup Wizard,معالج الإعدادات,
 Shift Management,إدارة التحول,
 Show Future Payments,إظهار المدفوعات المستقبلية,
 Show Linked Delivery Notes,إظهار ملاحظات التسليم المرتبطة,
@@ -3815,7 +3742,6 @@
 Unreconciled,لم تتم تسويتها,
 Unsupported GST Category for E-Way Bill JSON generation,فئة GST غير مدعومة لتوليد Bill JSON الإلكتروني,
 Update,تحديث,
-Update Details,تحديث التفاصيل,
 Update Taxes for Items,تحديث الضرائب للعناصر,
 "Upload a bank statement, link or reconcile a bank account",قم بتحميل كشف حساب بنكي أو ربط أو تسوية حساب بنكي,
 Upload a statement,تحميل بيان,
@@ -3839,7 +3765,6 @@
 XML Files Processed,ملفات XML المعالجة,
 Year,عام,
 Yearly,سنويا,
-You,أنت,
 You are not allowed to enroll for this course,غير مسموح لك بالتسجيل في هذه الدورة,
 You are not enrolled in program {0},أنت غير مسجل في البرنامج {0},
 You can Feature upto 8 items.,يمكنك ميزة تصل إلى 8 عناصر.,
@@ -3856,7 +3781,6 @@
 e-Way Bill already exists for this document,توجد فاتورة إلكترونية بالفعل لهذه الوثيقة,
 woocommerce - {0},woocommerce - {0},
 {0} Coupon used are {1}. Allowed quantity is exhausted,{0} القسيمة المستخدمة هي {1}. الكمية المسموح بها مستنفدة,
-{0} Name,{0} الاسم,
 {0} Operations: {1},{0} العمليات: {1},
 {0} bank transaction(s) created,تم إنشاء {0} معاملة (معاملات) مصرفية,
 {0} bank transaction(s) created and {1} errors,{0} تم إنشاء معاملة (معاملات) مصرفية وأخطاء {1},
@@ -3875,17 +3799,13 @@
 Total Income,إجمالي الدخل,
 Total Income This Year,إجمالي الدخل هذا العام,
 Barcode,الرمز الشريطي,
-Bold,بالخط العريض,
-Center,مركز,
 Clear,واضح,
-Comment,تعليق,
 Comments,تعليقات,
 DocType,DocType,
 Download,تحميل,
 Left,ترك,
 Link,حلقة الوصل,
 New,جديد,
-Not Found,لم يتم العثور على,
 Print,طباعة,
 Reference Name,اسم الإشارة,
 Refresh,تحديث,
@@ -3908,7 +3828,6 @@
 Email Id,البريد الإلكتروني,
 No,لا,
 Reference Doctype,مرجع Doctype,
-User Id,تعريف المستخدم,
 Yes,نعم,
 Actual ,فعلي,
 Add to cart,أضف إلى السلة,
@@ -4304,7 +4223,6 @@
 e.g Adjustments for:,على سبيل المثال، التعديلات على:,
 Section Subtotal,القسم الفرعي الفرعي,
 Section Footer,تذييل القسم,
-Position,موضع,
 Cash Flow Mapping,تخطيط التدفق النقدي,
 Select Maximum Of 1,حدد الحد الأقصى من 1,
 Is Finance Cost,تكلفة التمويل,
@@ -4936,7 +4854,6 @@
 Previous Business Day,يوم العمل السابق,
 Next Business Day,يوم العمل التالي,
 Urgent,عاجل,
-Crop,محصول,
 Crop Name,اسم المحصول,
 Scientific Name,الاسم العلمي,
 "You can define all the tasks which need to carried out for this crop here. The day field is used to mention the day on which the task needs to be carried out, 1 being the 1st day, etc.. ",يمكنك تحديد جميع المهام التي تحتاج إلى القيام بها لهذا المحصول هنا. يستخدم حقل اليوم لذكر اليوم الذي يجب أن يتم تنفيذ المهمة، 1 هو اليوم الأول، الخ.,
@@ -5441,7 +5358,6 @@
 To TIme,إلى وقت,
 Course End Date,تاريخ انتهاء المقرر التعليمي,
 Course Topic,موضوع الدورة,
-Topic,موضوع,
 Topic Name,اسم الموضوع,
 Education Settings,إعدادات التعليم,
 Current Academic Year,السنة الدراسية الحالية,
@@ -5516,7 +5432,6 @@
 Check this if the Student is residing at the Institute's Hostel.,تحقق من ذلك إذا كان الطالب يقيم في فندق المعهد.,
 Walking,المشي,
 Institute's Bus,حافلة المعهد,
-Public Transport,النقل العام,
 Self-Driving Vehicle,سيارة ذاتية القيادة,
 Pick/Drop by Guardian,اختيار / قطرة من قبل الجارديان,
 Enrolled courses,الدورات المسجلة,
@@ -5697,7 +5612,6 @@
 Default Cost Center,مركز التكلفة الافتراضي,
 Undeposited Funds Account,حساب الأموال غير المدعومة,
 Shopify Log,سجل Shopify,
-Request Data,طلب البيانات,
 Shopify Settings,Shopify الإعدادات,
 status html,حالة أتش تي أم أل,
 Enable Shopify,تمكين Shopify,
@@ -5817,7 +5731,6 @@
 Exercise Instructions,تعليمات التمرين,
 Exercise Video,تمرين الفيديو,
 Exercise Steps,خطوات التمرين,
-Steps,خطوات,
 Steps Table,جدول الخطوات,
 Exercise Type Step,نوع التمرين الخطوة,
 Max number of visit,الحد الأقصى لعدد الزيارات,
@@ -6001,7 +5914,6 @@
 Patient Encounter Symptom,أعراض لقاء المريض,
 HLC-PMR-.YYYY.-,HLC-PMR-.YYYY.-,
 Attach Medical Record,ارفاق السجل الطبي,
-Reference DocType,مرجع DOCTYPE,
 Spouse,الزوج,
 Family,العائلة,
 Schedule Details,تفاصيل الجدول,
@@ -6983,16 +6895,8 @@
 HTML / Banner that will show on the top of product list.,HTML / بانر التي سوف تظهر في الجزء العلوي من قائمة المنتجات.,
 Set prefix for numbering series on your transactions,تحديد بادئة للترقيم المتسلسل على المعاملات الخاصة بك,
 Setup Series,إعداد الترقيم المتسلسل,
-Select Transaction,حدد المعاملات,
-Help HTML,مساعدة HTML,
-Series List for this Transaction,قائمة متسلسلة لهذه العملية,
-User must always select,يجب دائما مستخدم تحديد,
-Check this if you want to force the user to select a series before saving. There will be no default if you check this.,التحقق من ذلك إذا كنت تريد لإجبار المستخدم لتحديد سلسلة قبل الحفظ. لن يكون هناك الافتراضي إذا قمت بتحديد هذا.,
 Update Series,تحديث الرقم المتسلسل,
 Change the starting / current sequence number of an existing series.,تغيير رقم تسلسل بدء / الحالي من سلسلة الموجودة.,
-Prefix,بادئة,
-This is the number of the last created transaction with this prefix,هذا هو عدد المعاملات التي تم إنشاؤها باستخدام مشاركة هذه البادئة,
-Update Series Number,تحديث الرقم المتسلسل,
 Quotation Lost Reason,سبب خسارة المناقصة,
 A third party distributor / dealer / commission agent / affiliate / reseller who sells the companies products for a commission.,موزع طرف ثالث / وكيل / دلّال / شريك / بائع التجزئة الذي يبيع منتجات الشركات مقابل عمولة.,
 Sales Partner Name,اسم المندوب,
@@ -7687,7 +7591,6 @@
 Warehouse wise Item Balance Age and Value,مستودع الحكيم البند الرصيد العمر والقيمة,
 Work Order Stock Report,تقرير مخزون أمر العمل,
 Work Orders in Progress,أوامر العمل في التقدم,
-Validation Error,خطئ في التحقق,
 Automatically Process Deferred Accounting Entry,معالجة الإدخال المؤجل للمحاسبة تلقائيًا,
 Bank Clearance,تخليص البنك,
 Bank Clearance Detail,تفاصيل التخليص المصرفي,
@@ -7724,45 +7627,7 @@
 Therapy Plan: ,خطة العلاج:,
 Total Counts Targeted: ,إجمالي الأعداد المستهدفة:,
 Total Counts Completed: ,إجمالي الأعداد المكتملة:,
-Andaman and Nicobar Islands,جزر أندامان ونيكوبار,
-Andhra Pradesh,ولاية اندرا براديش,
-Arunachal Pradesh,اروناتشال براديش,
-Assam,آسام,
-Bihar,بيهار,
-Chandigarh,شانديغار,
-Chhattisgarh,تشهاتيسجاره,
-Dadra and Nagar Haveli,دادرا وناغار هافيلي,
-Daman and Diu,دامان وديو,
-Delhi,دلهي,
-Goa,غوا,
-Gujarat,ولاية غوجارات,
-Haryana,هاريانا,
-Himachal Pradesh,هيماشال براديش,
-Jammu and Kashmir,جامو وكشمير,
-Jharkhand,جهارخاند,
-Karnataka,كارناتاكا,
-Kerala,ولاية كيرالا,
-Lakshadweep Islands,جزر لاكشادويب,
-Madhya Pradesh,ماديا براديش,
-Maharashtra,ماهاراشترا,
-Manipur,مانيبور,
-Meghalaya,ميغالايا,
-Mizoram,ميزورام,
-Nagaland,ناجالاند,
-Odisha,أوديشا,
-Other Territory,إقليم آخر,
-Pondicherry,بونديشيري,
-Punjab,البنجاب,
-Rajasthan,راجستان,
-Sikkim,سيكيم,
-Tamil Nadu,تاميل نادو,
-Telangana,تيلانجانا,
-Tripura,تريبورا,
-Uttar Pradesh,ولاية أوتار براديش,
-Uttarakhand,أوتارانتشال,
-West Bengal,ولاية البنغال الغربية,
 Is Mandatory,إلزامي,
-Published on,نشرت في,
 Service Received But Not Billed,تم استلام الخدمة ولكن لم يتم دفع الفاتورة,
 Deferred Accounting Settings,إعدادات المحاسبة المؤجلة,
 Book Deferred Entries Based On,حجز إدخالات مؤجلة على أساس,
@@ -8035,8 +7900,6 @@
 Worksheet Instructions,تعليمات ورقة العمل,
 Result Legend Print,نتيجة طباعة وسيلة الإيضاح,
 Print Position,موقف الطباعة,
-Bottom,الأسفل,
-Top,أعلى,
 Both,على حد سواء,
 Result Legend,أسطورة النتيجة,
 Lab Tests,فحوصات مخبرية,
@@ -8081,12 +7944,10 @@
 Approvers,الموافقون,
 The first Approver in the list will be set as the default Approver.,سيتم تعيين الموافق الأول في القائمة باعتباره الموافق الافتراضي.,
 Shift Request Approver,الموافق على طلب التحول,
-PAN Number,رقم PAN,
 Provident Fund Account,حساب صندوق الادخار,
 MICR Code,كود MICR,
 Repay unclaimed amount from salary,سداد المبلغ غير المطالب به من الراتب,
 Deduction from salary,خصم من الراتب,
-Expired Leaves,أوراق منتهية الصلاحية,
 If this is not checked the loan by default will be considered as a Demand Loan,إذا لم يتم التحقق من ذلك ، فسيتم اعتبار القرض بشكل افتراضي كقرض تحت الطلب,
 This account is used for booking loan repayments from the borrower and also disbursing loans to the borrower,يستخدم هذا الحساب لحجز أقساط سداد القرض من المقترض وأيضًا صرف القروض للمقترض,
 This account is capital account which is used to allocate capital for loan disbursal account ,هذا الحساب هو حساب رأس المال الذي يستخدم لتخصيص رأس المال لحساب صرف القرض,
@@ -8844,3 +8705,41 @@
 Creating Purchase Order ...,إنشاء أمر شراء ...,
 "Select a Supplier from the Default Suppliers of the items below. On selection, a Purchase Order will be made against items belonging to the selected Supplier only.",حدد موردًا من الموردين الافتراضيين للعناصر أدناه. عند التحديد ، سيتم إجراء طلب الشراء مقابل العناصر التي تنتمي إلى المورد المحدد فقط.,
 Row #{}: You must select {} serial numbers for item {}.,الصف # {}: يجب تحديد {} الأرقام التسلسلية للعنصر {}.,
+Add Comment,أضف تعليق,
+More...,المزيد...,
+Notes,ملاحظات,
+Payment Gateway,بوابة الدفع,
+Payment Gateway Name,اسم بوابة الدفع,
+Payments,المدفوعات,
+Plan Name,اسم الخطة,
+Portal,بوابة,
+Scan Barcode,مسح الباركود,
+Some information is missing,بعض المعلومات مفقود,
+Successful,ناجح,
+Tools,أدوات,
+Use Sandbox,استخدام ساندبوكس,
+Busy,مشغول,
+Completed By,اكتمل بواسطة,
+Payment Failed,عملية الدفع فشلت,
+Column {0},العمود {0},
+Field Mapping,رسم الخرائط الميدانية,
+Not Specified,غير محدد,
+Update Type,نوع التحديث,
+Dr,Dr,
+End Time,وقت الانتهاء,
+Fetching...,جلب ...,
+"It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.",يبدو أن هناك مشكلة في تكوين شريطية للخادم. في حالة الفشل ، سيتم رد المبلغ إلى حسابك.,
+Looks like someone sent you to an incomplete URL. Please ask them to look into it.,يبدو مثل شخص أرسل لك إلى عنوان URL غير مكتمل. من فضلك اطلب منهم للنظر في ذلك.,
+Master,سيد,
+Pay,دفع,
+You can also copy-paste this link in your browser,يمكنك أيضا نسخ - لصق هذا الرابط في متصفحك,
+Verified By,التحقق من,
+Invalid naming series (. missing) for {0},سلسلة تسمية غير صالحة (. مفقود) لـ {0},
+Phone Number,رقم الهاتف,
+Account SID,حساب SID,
+Global Defaults,افتراضيات العالمية,
+Is Mandatory,إلزامي,
+WhatsApp,ال WhatsApp,
+Make a call,إجراء مكالمة,
+Approve,وافق,
+Reject,رفض,
diff --git a/erpnext/translations/bg.csv b/erpnext/translations/bg.csv
index baee526..8dff755 100644
--- a/erpnext/translations/bg.csv
+++ b/erpnext/translations/bg.csv
@@ -113,7 +113,6 @@
 Add Items,Добави елементи,
 Add Leads,Добавяне на олово,
 Add Multiple Tasks,Добавете няколко задачи,
-Add Row,Добави ред,
 Add Sales Partners,Добавяне на търговски партньори,
 Add Serial No,Добави Сериен №,
 Add Students,Добави студенти,
@@ -211,9 +210,7 @@
 An error occurred during the update process,Възникна грешка по време на процеса на актуализиране,
 "An item exists with same name ({0}), please change the item group name or rename the item","Една статия, съществува със същото име ({0}), моля да промените името на стокова група или преименувате елемента",
 Analyst,аналитик,
-Analytics,анализ,
 Annual Billing: {0},Годишно плащане: {0},
-Anonymous,анонимен,
 Another Budget record '{0}' already exists against {1} '{2}' and account '{3}' for fiscal year {4},Друг бюджетен запис &quot;{0}&quot; вече съществува срещу {1} &#39;{2}&#39; и профил &#39;{3}&#39; за фискалната година {4},
 Another Period Closing Entry {0} has been made after {1},Друг период Закриване Влизане {0} е направено след {1},
 Another Sales Person {0} exists with the same Employee id,Съществува друга продажбите Person {0} със същия Employee ID,
@@ -283,14 +280,12 @@
 Attendance not submitted for {0} as {1} on leave.,Участието не е изпратено за {0} като {1} в отпуск.,
 Attribute table is mandatory,Умение маса е задължително,
 Attribute {0} selected multiple times in Attributes Table,Умение {0} избрани няколко пъти в атрибути на маса,
-Author,автор,
 Authorized Signatory,Оторизиран подпис,
 Auto Material Requests Generated,Auto Материал Исканията Генерирани,
 Auto Repeat,Автоматично повтаряне,
 Auto repeat document updated,Автоматичното повторение на документа е актуализиран,
 Automotive,автомобилен,
 Available,Наличен,
-Available Leaves,Налични листа,
 Available Qty,В наличност Количество,
 Available Selling,Налични продажби,
 Available for use date is required,Необходима е дата за употреба,
@@ -340,7 +335,6 @@
 Base URL,Базов URL адрес,
 Based On,Базиран на,
 Based On Payment Terms,Въз основа на условията за плащане,
-Basic,Основен,
 Batch,партида,
 Batch Entries,Партидни записи,
 Batch ID is mandatory,Идентификационният номер на партидата е задължителен,
@@ -361,7 +355,6 @@
 Billable Hours,Часове за плащане,
 Billed,Фактурирана,
 Billed Amount,Фактурирана Сума,
-Billing,Фактуриране,
 Billing Address,Адрес на фактуриране,
 Billing Address is same as Shipping Address,Адресът за фактуриране е същият като адрес за доставка,
 Billing Amount,Сума за фактуриране,
@@ -560,7 +553,6 @@
 Consumed Qty,Консумирано количество,
 Consumer Products,Потребителски продукти,
 Contact,Контакт,
-Contact Details,Данни за контакт,
 Contact Us,Свържете се с нас,
 Content,Съдържание,
 Content Masters,Съдържание на майстори,
@@ -715,7 +707,6 @@
 Date of Joining,Дата на присъединяване,
 Date of Joining must be greater than Date of Birth,Дата на Присъединяване трябва да е по-голяма от Дата на раждане,
 Date of Transaction,Дата на транзакцията,
-Datetime,Дата/час,
 Day,ден,
 Debit,дебит,
 Debit ({0}),Дебит ({0}),
@@ -874,7 +865,6 @@
 Employee cannot report to himself.,Служител не може да докладва пред самия себе си.,
 Employee {0} has already applied for {1} between {2} and {3} : ,Служител {0} вече кандидатства за {1} между {2} и {3}:,
 Employee {0} of grade {1} have no default leave policy,Служител {0} от клас {1} няма правила за отпускане по подразбиране,
-Enable,Активиране,
 Enable / disable currencies.,Включване / Изключване на валути.,
 Enabled,Активен,
 "Enabling 'Use for Shopping Cart', as Shopping Cart is enabled and there should be at least one Tax Rule for Shopping Cart","Активирането на &quot;Използване на количката&quot;, тъй като количката е включен и трябва да има най-малко една данъчна правило за количката",
@@ -905,7 +895,6 @@
 Error: Not a valid id?,Грешка: Не е валиден документ за самоличност?,
 Estimated Cost,Очаквани разходи,
 "Even if there are multiple Pricing Rules with highest priority, then following internal priorities are applied:","Дори и да има няколко ценови правила с най-висок приоритет, се прилагат след това следните вътрешни приоритети:",
-Event,Събитие,
 Exchange Gain/Loss,Exchange Печалба / загуба,
 Exchange Rate Revaluation master.,Мастер за оценка на валутния курс,
 Exchange Rate must be same as {0} {1} ({2}),Валутен курс трябва да бъде същата като {0} {1} ({2}),
@@ -1032,7 +1021,6 @@
 From value must be less than to value in row {0},"От стойност трябва да е по-малко, отколкото стойността в ред {0}",
 From {0} | {1} {2},От {0} | {1} {2},
 Fulfillment,изпълняване,
-Full,пълен,
 Full Name,Пълно Име,
 Fully Depreciated,напълно амортизирани,
 Furnitures and Fixtures,Мебели и тела,
@@ -1133,7 +1121,6 @@
 Hub Sync ID,Идент,
 Human Resource,Човешки ресурси,
 Human Resources,Човешки ресурси,
-IFSC Code,Кодекс на IFSC,
 IGST Amount,IGST Сума,
 IP Address,IP адрес,
 ITC Available (whether in full op part),Наличен ITC (независимо дали в пълната част),
@@ -1185,7 +1172,6 @@
 Ineligible ITC,Недопустим ITC,
 Initiated,Образувани,
 Inpatient Record,Запис в болница,
-Insert,Вмъкни,
 Installation Note,Монтаж - Забележка,
 Installation Note {0} has already been submitted,Монтаж - Забележка {0} вече е била изпратена,
 Installation date cannot be before delivery date for Item {0},Дата на монтаж не може да бъде преди датата на доставка за позиция {0},
@@ -1197,7 +1183,6 @@
 Insurance Start date should be less than Insurance End date,Застраховка Начална дата трябва да бъде по-малка от застраховка Крайна дата,
 Integrated Tax,Интегриран данък,
 Inter-State Supplies,Междудържавни доставки,
-Interests,Интереси,
 Internet Publishing,Internet Publishing,
 Intra-State Supplies,Вътрешнодържавни доставки,
 Introduction,Въведение,
@@ -1316,7 +1301,6 @@
 Lab testing datetime cannot be before collection datetime,Продължителността на лабораторното тестване не може да бъде преди датата на събиране,
 Label,етикет,
 Laboratory,лаборатория,
-Language Name,Език - Име,
 Large,Голям,
 Last Communication,Последна комуникация,
 Last Communication Date,Дата на Последна комуникация,
@@ -1347,8 +1331,6 @@
 Letter Heads for print templates.,Бланки за шаблони за печат.,
 Level,Ниво,
 Liability,отговорност,
-License,Разрешително,
-Limit,лимит,
 Limit Crossed,Преминат лимит,
 Link to Material Request,Връзка към искането за материали,
 List of all share transactions,Списък на всички транзакции с акции,
@@ -1359,7 +1341,6 @@
 Loans (Liabilities),Заеми (пасиви),
 Loans and Advances (Assets),Кредити и аванси (активи),
 Local,местен,
-Log,Журнал,
 Logs for maintaining sms delivery status,Дневници за поддържане състоянието на доставка на SMS,
 Lost,загубен,
 Lost Reasons,Изгубени причини,
@@ -1445,7 +1426,6 @@
 Medical Department,Медицински отдел,
 Medical Record,Медицински запис,
 Medium,Среда,
-Meeting,среща,
 Member Activity,Дейност на членовете,
 Member ID,Потребителски номер,
 Member Name,Име на участник,
@@ -1495,7 +1475,6 @@
 Multiple Variants,Няколко варианта,
 Multiple fiscal years exist for the date {0}. Please set company in Fiscal Year,"Съществуват множество фискални години за датата {0}. Моля, задайте компания в фискална година",
 Music,музика,
-My Account,Моят Профил,
 Name error: {0},Наименование грешка: {0},
 Name of new Account. Note: Please don't create accounts for Customers and Suppliers,"Име на нов профил. Забележка: Моля, не създават сметки за клиенти и доставчици",
 Name or Email is mandatory,Име или имейл е задължително,
@@ -1538,7 +1517,6 @@
 New credit limit is less than current outstanding amount for the customer. Credit limit has to be atleast {0},Нов кредитен лимит е по-малко от сегашната изключително количество за клиента. Кредитен лимит трябва да бъде поне {0},
 New task,Нова задача,
 New {0} pricing rules are created,Създават се нови {0} правила за ценообразуване,
-Newsletters,Бютелини с новини,
 Newspaper Publishers,Издателите на вестници,
 Next,Следващ,
 Next Contact By cannot be same as the Lead Email Address,Следваща Контакт не може да бъде същата като на Водещия имейл адрес,
@@ -1686,7 +1664,6 @@
 Other,Друг,
 Other Reports,Други справки,
 "Other outward supplies(Nil rated,Exempted)","Други външни доставки (с нулева оценка, освободени)",
-Others,Други,
 Out Qty,Изх. Количество,
 Out Value,Изх. стойност,
 Out of Order,Извънредно,
@@ -1726,7 +1703,6 @@
 Party Type and Party is mandatory for {0} account,Типът партия и партията са задължителни за профила {0},
 Party Type is mandatory,Тип Компания е задължително,
 Party is mandatory,Компания е задължителна,
-Password,Парола,
 Past Due Date,Изтекъл срок,
 Patient,Пациент,
 Patient Appointment,Назначаване на пациент,
@@ -1784,7 +1760,6 @@
 Pharmaceutical,Лекарствена,
 Pharmaceuticals,Фармации,
 Physician,лекар,
-Pincode,ПИН код,
 Place Of Supply (State/UT),Място на доставка (щат / Юта),
 Place Order,Направи поръчка,
 Plan Name,Име на плана,
@@ -1896,7 +1871,6 @@
 Please select date,"Моля, изберете дата",
 Please select item code,Моля изберете код артикул,
 Please select month and year,"Моля, изберете месец и година",
-Please select prefix first,Моля изберете префикс първо,
 Please select the Company,"Моля, изберете фирмата",
 Please select the Multiple Tier Program type for more than one collection rules.,"Моля, изберете типа Multiple Tier Program за повече от една правила за събиране.",
 Please select the assessment group other than 'All Assessment Groups',"Моля, изберете групата за оценка, различна от &quot;Всички групи за оценка&quot;",
@@ -1913,7 +1887,6 @@
 Please set Company filter blank if Group By is 'Company',"Моля, поставете фирмения филтър празен, ако Group By е &quot;Company&quot;",
 Please set Default Payroll Payable Account in Company {0},"Моля, задайте по подразбиране ТРЗ Задължения профил в Company {0}",
 Please set Depreciation related Accounts in Asset Category {0} or Company {1},"Моля, задайте на амортизация, свързани акаунти в категория активи {0} или Фирма {1}",
-Please set Email Address,"Моля, задайте имейл адрес",
 Please set GST Accounts in GST Settings,"Моля, задайте GST профили в настройките на GST",
 Please set Hotel Room Rate on {},"Моля, посочете цената на стаята в хотел {}",
 Please set Number of Depreciations Booked,"Моля, задайте Брой амортизации Резервирано",
@@ -1936,7 +1909,6 @@
 Please set the Email ID for the Student to send the Payment Request,"Моля, задайте имейл адреса на студента, за да изпратите заявката за плащане",
 Please set the Item Code first,"Моля, първо задайте кода на елемента",
 Please set the Payment Schedule,"Моля, задайте схемата за плащане",
-Please set the series to be used.,"Моля, задайте серията, която да се използва.",
 Please set {0} for address {1},"Моля, задайте {0} за адрес {1}",
 Please setup Students under Student Groups,"Моля, настройте студентите под групи студенти",
 Please specify Company,"Моля, посочете фирма",
@@ -1953,7 +1925,6 @@
 Point-of-Sale,Точка на продажба,
 Point-of-Sale Profile,POS профил,
 Portal,Портал,
-Portal Settings,Portal Settings,
 Possible Supplier,Възможен доставчик,
 Postal Expenses,Пощенски разходи,
 Posting Date,Публикуване Дата,
@@ -2152,12 +2123,10 @@
 Reference No is mandatory if you entered Reference Date,"Референтен Не е задължително, ако сте въвели, Референция Дата",
 Reference No.,Референтен номер.,
 Reference Number,Референтен Номер,
-Reference Owner,Референтен Собственик,
 Reference Type,Референтен Type,
 "Reference: {0}, Item Code: {1} and Customer: {2}","Референция: {0}, кода на елемента: {1} и клиента: {2}",
 References,Препратки,
 Refresh Token,Обновяване Token,
-Region,Област,
 Register,Регистрирам,
 Rejected,Отхвърлени,
 Related,сроден,
@@ -2179,7 +2148,6 @@
 Replace BOM and update latest price in all BOMs,Заменете BOM и актуализирайте последната цена във всички BOM,
 Replied,Отговорено,
 Report,Справка,
-Report Builder,Report Builder,
 Report Type,Тип на отчета,
 Report Type is mandatory,Тип на отчета е задължително,
 Reports,Справки,
@@ -2355,13 +2323,11 @@
 Same Company is entered more than once,Същата фирма се вписват повече от веднъж,
 Same item cannot be entered multiple times.,Същата позиция не може да бъде въведена  няколко пъти.,
 Same supplier has been entered multiple times,Същият доставчик е бил въведен няколко пъти,
-Sample,Проба,
 Sample Collection,Колекция от проби,
 Sample quantity {0} cannot be more than received quantity {1},Количеството на пробата {0} не може да бъде повече от полученото количество {1},
 Sanctioned,санкционирана,
 Sand,Пясък,
 Saturday,Събота,
-Saved,Запазен,
 Saving {0},Запазване на {0},
 Scan Barcode,Сканиране на баркод,
 Schedule,разписание,
@@ -2463,7 +2429,6 @@
 Series Updated,Номерация е обновена,
 Series Updated Successfully,Номерацията е успешно обновена,
 Series is mandatory,Номерацията е задължителна,
-Series {0} already used in {1},Номерация {0} вече се използва в {1},
 Service,Обслужване,
 Service Level Agreement,Споразумение за нивото на обслужване,
 Service Level Agreement.,Споразумение за нивото на обслужване.,
@@ -2479,7 +2444,6 @@
 Set Tax Rule for shopping cart,Определете данъчни правила за количката,
 Set as Closed,Задай като Затворен,
 Set as Completed,Задайте като завършен,
-Set as Default,По подразбиране,
 Set as Lost,Задай като Загубени,
 Set as Open,Задай като Отворен,
 Set default inventory account for perpetual inventory,Задайте профил по подразбиране за инвентара за вечни запаси,
@@ -2511,7 +2475,6 @@
 Shareholder,акционер,
 Ship To State,Кораб към държавата,
 Shipments,Пратки,
-Shipping,Доставки,
 Shipping Address,Адрес за доставка,
 "Shipping Address does not have country, which is required for this Shipping Rule","Адресът за доставка няма държава, която се изисква за това правило за доставка",
 Shipping rule only applicable for Buying,Правилото за доставка е приложимо само при закупуване,
@@ -2564,7 +2527,6 @@
 Split Batch,Разделна партида,
 Split Issue,Разделно издаване,
 Sports,Спортове,
-Standard,Стандарт,
 Standard Buying,Standard Изкупуването,
 Standard Selling,Standard Selling,
 Standard contract terms for Sales or Purchase.,Стандартни договорни условия за покупко-продажба или покупка.,
@@ -2731,7 +2693,6 @@
 Terms and Conditions,Правила и условия,
 Terms and Conditions Template,Условия за ползване - Шаблон,
 Territory,Територия,
-Test,Тест,
 Thank you for your business!,Благодаря ви за вашия бизнес!,
 The 'From Package No.' field must neither be empty nor it's value less than 1.,&quot;От пакет №&quot; полето не трябва да бъде празно или да е по-малко от 1.,
 The Brand,Марката,
@@ -2848,7 +2809,6 @@
 Total (Without Tax),Общо (без данъци),
 Total Achieved,Общо постигнати,
 Total Actual,Общо Край,
-Total Allocated Leaves,Общо разпределени листа,
 Total Amount,Обща сума,
 Total Amount Credited,Общата сума е кредитирана,
 Total Applicable Charges in Purchase Receipt Items table must be same as Total Taxes and Charges,"Общо приложими такси в Покупка получаване артикули маса трябва да са същите, както Общо данъци и такси",
@@ -2892,7 +2852,6 @@
 Total(Amt),Общо (сума),
 Total(Qty),Общо (количество),
 Traceability,Проследяване,
-Traceback,Проследи,
 Track Leads by Lead Source.,Следенето се проследява от водещия източник.,
 Transaction,транзакция,
 Transaction Date,Транзакция - Дата,
@@ -2930,7 +2889,6 @@
 UOM Conversion factor is required in row {0},Мерна единица - фактор на превръщане се изисква на ред {0},
 UOM coversion factor required for UOM: {0} in Item: {1},Мерна единица фактор coversion изисква за мерна единица: {0} в продукт: {1},
 URL,URL,
-Unable to find DocType {0},DocType не може да се намери {0},
 Unable to find exchange rate for {0} to {1} for key date {2}. Please create a Currency Exchange record manually,"Не може да се намери валутен курс за {0} до {1} за ключова дата {2}. Моля, създайте ръчно запис на валута",
 Unable to find score starting at {0}. You need to have standing scores covering 0 to 100,Не може да се намери резултат от {0}. Трябва да имате точки от 0 до 100,
 Unable to find variable: ,Променливата не може да се намери:,
@@ -2960,7 +2918,6 @@
 Upload your letter head and logo. (you can edit them later).,Качете ваш дизайн за заглавно писмо и лого. (Можете да ги редактирате по-късно).,
 Upper Income,Upper подоходно,
 Use Sandbox,Използвайте Sandbox,
-Used Leaves,Използвани листа,
 User,потребител,
 User ID,User ID,
 User ID not set for Employee {0},User ID не е конфигуриран за служител {0},
@@ -3051,7 +3008,6 @@
 Website Settings,Настройки Сайт,
 Wednesday,Сряда,
 Week,седмица,
-Weekdays,делници,
 Weekly,Седмично,
 "Weight is mentioned,\nPlease mention ""Weight UOM"" too","Тегло се споменава, \ nМоля спомена &quot;Тегло мерна единица&quot; твърде",
 Welcome email sent,Имейлът за добре дошли е изпратен,
@@ -3072,7 +3028,6 @@
 Work Order {0} must be submitted,Поръчката за работа {0} трябва да бъде изпратена,
 Work Orders Created: {0},Създадени работни поръчки: {0},
 Work-in-Progress Warehouse is required before Submit,Склад за Незавършено производство се изисква преди изпращане,
-Workflow,Workflow,
 Working,работната,
 Working Hours,Работно Време,
 Workstation,Работна станция,
@@ -3102,7 +3057,6 @@
 You need to be a user other than Administrator with System Manager and Item Manager roles to register on Marketplace.,"Трябва да сте потребител, различен от администратор със системния мениджър и ролите на мениджъра на продукти, за да се регистрирате в Marketplace.",
 You need to be a user with System Manager and Item Manager roles to add users to Marketplace.,"Трябва да сте потребител с роли на System Manager и мениджър на елементи, за да добавите потребители към Marketplace.",
 You need to be a user with System Manager and Item Manager roles to register on Marketplace.,"Трябва да сте потребител с роля на системния мениджър и мениджър на елементи, за да се регистрирате на Marketplace.",
-You need to be logged in to access this page,"Трябва да сте влезли, за да получите достъп до тази страница",
 You need to enable Shopping Cart,Трябва да се активира функционалността за количка за пазаруване,
 You will lose records of previously generated invoices. Are you sure you want to restart this subscription?,"Ще загубите записите на фактури, генерирани преди това. Наистина ли искате да рестартирате този абонамент?",
 Your Organization,Вашата организация,
@@ -3218,7 +3172,6 @@
 Assigned To,Възложените,
 Chat,Чат,
 Completed By,Завършено от,
-County,Окръг,
 Day of Week,Ден от седмицата,
 "Dear System Manager,","Уважаем мениджър на системата,",
 Default Value,Стойност по подразбиране,
@@ -3229,31 +3182,21 @@
 Fieldtype,Fieldtype,
 Help Articles,Помощни статии,
 ID,Идентификатор,
-Images,Снимки,
 Import,Импорт,
 Language,Език,
 Likes,Харесва,
 Merge with existing,Обединяване със съществуващото,
-Office,Офис,
 Orientation,ориентация,
 Parent,Родител,
-Passive,Пасивен,
 Payment Failed,Неуспешно плащане,
-Permanent,постоянен,
 Personal,Персонален,
-Plant,Завод,
 Post,Пост,
-Postal,Пощенски,
 Postal Code,пощенски код,
-Previous,Предишен,
 Provider,доставчик,
 Read Only,Само За Четене,
 Recipient,Получател,
 Reviews,Отзиви,
 Sender,Подател,
-Shop,Магазин,
-Subsidiary,Филиал,
-There is some problem with the file url: {0},Има някакъв проблем с адреса на файл: {0},
 There were errors while sending email. Please try again.,"Имаше грешки при изпращане на имейл. Моля, опитайте отново.",
 Values Changed,Променени стойности,
 or,или,
@@ -3280,19 +3223,16 @@
 Quality Feedback Template,Качествен обратен шаблон,
 Rules for applying different promotional schemes.,Правила за прилагане на различни промоционални схеми.,
 Show {0},Показване на {0},
-"Special Characters except '-', '#', '.', '/', '{{' and '}}' not allowed in naming series {0}","Специални символи, с изключение на &quot;-&quot;, &quot;#&quot;, &quot;.&quot;, &quot;/&quot;, &quot;{{&quot; И &quot;}}&quot; не са позволени в именуването на серии {0}",
 Target Details,Детайли за целта,
 {0} already has a Parent Procedure {1}.,{0} вече има родителска процедура {1}.,
 API,API,
 Annual,Годишен,
 Change,Промяна,
 Contact Email,Контакт Email,
-Export Type,Тип експорт,
 From Date,От дата,
 Group By,Групирай по,
 Invalid URL,невалиден адрес,
 Landscape,пейзаж,
-Last Sync On,Последно синхронизиране на,
 Naming Series,Поредни Номера,
 No data to export,Няма данни за експорт,
 Portrait,Портрет,
@@ -3302,7 +3242,6 @@
 Show Document,Показване на документ,
 Show Traceback,Показване на Traceback,
 Video,Видео,
-Webhook Secret,Webhook Secret,
 % Of Grand Total,% От общата сума,
 <b>Company</b> is a mandatory filter.,<b>Фирмата</b> е задължителен филтър.,
 <b>From Date</b> is a mandatory filter.,<b>От дата</b> е задължителен филтър.,
@@ -3358,7 +3297,6 @@
 BOM Comparison Tool,BOM инструмент за сравнение,
 BOM recursion: {0} cannot be child of {1},BOM рекурсия: {0} не може да бъде дете на {1},
 BOM recursion: {0} cannot be parent or child of {1},BOM рекурсия: {0} не може да бъде родител или дете на {1},
-Back to Home,Обратно в къщи,
 Back to Messages,Обратно към Съобщения,
 Bank Data mapper doesn't exist,Картограф на банкови данни не съществува,
 Bank Details,Банкова информация,
@@ -3420,7 +3358,6 @@
 Currency,Валута,
 Current Status,Текущо състояние,
 Customer PO,ПО на клиента,
-Customize,Персонализирай,
 Daily,Ежедневно,
 Date,Дата,
 Date of Birth cannot be greater than Joining Date.,Датата на раждане не може да бъде по-голяма от датата на присъединяване.,
@@ -3454,7 +3391,6 @@
 ERPNext could not find any matching payment entry,ERPNext не можа да намери никакъв съвпадащ запис за плащане,
 Earliest Age,Най-ранна епоха,
 Edit Details,Редактиране на подробностите,
-Edit Profile,Редактирай профил,
 Either GST Transporter ID or Vehicle No is required if Mode of Transport is Road,"Идентификационен номер на GST Transporter или номер на превозното средство не се изисква, ако начинът на транспорт е път",
 Email,електронна поща,
 Email Campaigns,Кампании по имейл,
@@ -3482,7 +3418,6 @@
 Fetch Items from Warehouse,Извличане на артикули от склад,
 Fetching...,Извлича се ...,
 Field,поле,
-File Manager,Файлов мениджър,
 Filters,Филтри,
 Finding linked payments,Намиране на свързани плащания,
 Fleet Management,Управление на автопарка,
@@ -3521,7 +3456,6 @@
 Incorrect Warehouse,Неправилен склад,
 Invalid Barcode. There is no Item attached to this barcode.,Невалиден баркод. Към този баркод няма прикрепен артикул.,
 Invalid credentials,Невалидни идентификационни данни,
-Invite as User,Покани като Потребител,
 Issue Priority.,Приоритет на издаване.,
 Issue Type.,Тип издание,
 "It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","Изглежда, че има проблем с конфигурацията на лентата на сървъра. В случай на неуспех, сумата ще бъде възстановена в профила Ви.",
@@ -3564,7 +3498,6 @@
 New Invoice,Нова фактура,
 New Payment,Ново плащане,
 New release date should be in the future,Нова дата на издаване трябва да бъде в бъдеще,
-Newsletter,Бютелин с новини,
 No Account matched these filters: {},"Няма акаунт, който съответства на тези филтри: {}",
 No communication found.,Не е намерена комуникация.,
 No correct answer is set for {0},Не е зададен правилен отговор за {0},
@@ -3640,7 +3573,6 @@
 Please setup a default bank account for company {0},"Моля, настройте банкова сметка по подразбиране за компания {0}",
 Please specify,"Моля, посочете",
 Please specify a {0},"Моля, посочете {0}",lead
-Printing,Печатане,
 Priority,Приоритет,
 Priority has been changed to {0}.,Приоритетът е променен на {0}.,
 Priority {0} has been repeated.,Приоритет {0} се повтаря.,
@@ -3649,7 +3581,6 @@
 Project,Проект,
 Provide the academic year and set the starting and ending date.,Посочете учебната година и задайте началната и крайната дата.,
 Public token is missing for this bank,Публичен маркер липсва за тази банка,
-Publish,публикувам,
 Publish 1 Item,Публикуване на 1 елемент,
 Publish Items,Публикуване на елементи,
 Publish More Items,Публикуване на още елементи,
@@ -3677,7 +3608,6 @@
 Reconciled,помирен,
 Recruitment,назначаване на работа,
 Red,Червен,
-Refreshing,Обновяване,
 Release date must be in the future,Дата на издаване трябва да бъде в бъдеще,
 Relieving Date must be greater than or equal to Date of Joining,Дата на освобождаване трябва да бъде по-голяма или равна на датата на присъединяване,
 Rename,Преименувай,
@@ -3721,7 +3651,6 @@
 Search for a payment,Търсете плащане,
 Search for anything ...,Търсете нещо ...,
 Search results for,Резултати от търсенето за,
-Select All,Избери всички,
 Select Difference Account,Изберете Различен акаунт,
 Select a Default Priority.,Изберете приоритет по подразбиране.,
 Select a company,Изберете фирма,
@@ -3740,11 +3669,9 @@
 Service Level Agreement has been changed to {0}.,Споразумението за ниво на услугата е променено на {0}.,
 Service Level Agreement was reset.,Споразумението за ниво на услугата беше нулирано.,
 Service Level Agreement with Entity Type {0} and Entity {1} already exists.,Споразумение за ниво на услуга с тип субект {0} и субект {1} вече съществува.,
-Set,Определете,
 Set Meta Tags,Задайте мета тагове,
 Set {0} in company {1},Задайте {0} във фирма {1},
 Setup,Настройки,
-Setup Wizard,Помощник за инсталиране,
 Shift Management,Shift Management,
 Show Future Payments,Показване на бъдещи плащания,
 Show Linked Delivery Notes,Показване на свързани бележки за доставка,
@@ -3815,7 +3742,6 @@
 Unreconciled,Неизравнени,
 Unsupported GST Category for E-Way Bill JSON generation,Неподдържана GST категория за генериране на E-Way Bill JSON,
 Update,Актуализация,
-Update Details,Актуализиране на подробности,
 Update Taxes for Items,Актуализирайте данъците за артикулите,
 "Upload a bank statement, link or reconcile a bank account","Качете банково извлечение, свържете или съгласувайте банкова сметка",
 Upload a statement,Качете изявление,
@@ -3839,7 +3765,6 @@
 XML Files Processed,Обработени XML файлове,
 Year,Година,
 Yearly,Годишно,
-You,Ти,
 You are not allowed to enroll for this course,Нямате право да се запишете за този курс,
 You are not enrolled in program {0},Не сте записани в програма {0},
 You can Feature upto 8 items.,Можете да включите до 8 елемента.,
@@ -3856,7 +3781,6 @@
 e-Way Bill already exists for this document,За този документ вече съществува e-Way Bill,
 woocommerce - {0},woocommerce - {0},
 {0} Coupon used are {1}. Allowed quantity is exhausted,{0} Използваните талони са {1}. Позволеното количество се изчерпва,
-{0} Name,{0} Име,
 {0} Operations: {1},{0} Операции: {1},
 {0} bank transaction(s) created,{0} създадени банкови транзакции (и),
 {0} bank transaction(s) created and {1} errors,{0} създадени банкови транзакции (и) и грешки {1},
@@ -3875,17 +3799,13 @@
 Total Income,Общ доход,
 Total Income This Year,Общ доход тази година,
 Barcode,Баркод,
-Bold,смел,
-Center,Център,
 Clear,ясно,
-Comment,коментар,
 Comments,Коментари,
 DocType,DocType,
 Download,Изтегли,
 Left,Наляво,
 Link,връзка,
 New,нов,
-Not Found,Не е намерен,
 Print,печат,
 Reference Name,Референтно име,
 Refresh,Обнови,
@@ -3908,7 +3828,6 @@
 Email Id,Email ID,
 No,Не,
 Reference Doctype,Референтен Doctype,
-User Id,Потребителски идентификатор,
 Yes,да,
 Actual ,действителен,
 Add to cart,Добави в кошницата,
@@ -4304,7 +4223,6 @@
 e.g Adjustments for:,напр. корекции за:,
 Section Subtotal,Раздел Междинна сума,
 Section Footer,Раздел Footer,
-Position,позиция,
 Cash Flow Mapping,Картографиране на паричните потоци,
 Select Maximum Of 1,Изберете максимум от 1,
 Is Finance Cost,Финансовата цена е,
@@ -4936,7 +4854,6 @@
 Previous Business Day,Предишен работен ден,
 Next Business Day,Следващ работен ден,
 Urgent,Спешно,
-Crop,Реколта,
 Crop Name,Име на реколтата,
 Scientific Name,Научно наименование,
 "You can define all the tasks which need to carried out for this crop here. The day field is used to mention the day on which the task needs to be carried out, 1 being the 1st day, etc.. ","Можете да определите всички задачи, които трябва да изпълните за тази култура тук. Дневното поле се използва, за да се посочи денят, в който трябва да се извърши задачата, 1 е 1-ия ден и т.н.",
@@ -5441,7 +5358,6 @@
 To TIme,До време,
 Course End Date,Курс Крайна дата,
 Course Topic,Тема на курса,
-Topic,Тема,
 Topic Name,Тема Наименование,
 Education Settings,Настройки за обучение,
 Current Academic Year,Текуща академична година,
@@ -5516,7 +5432,6 @@
 Check this if the Student is residing at the Institute's Hostel.,"Проверете това, ако студентът пребивава в хостел на института.",
 Walking,ходене,
 Institute's Bus,Автобус на Института,
-Public Transport,Обществен транспорт,
 Self-Driving Vehicle,Самоходно превозно средство,
 Pick/Drop by Guardian,Pick / Drop от Guardian,
 Enrolled courses,Регистрирани курсове,
@@ -5697,7 +5612,6 @@
 Default Cost Center,Разходен център по подразбиране,
 Undeposited Funds Account,Сметка за неплатени средства,
 Shopify Log,Магазин за дневник,
-Request Data,Поискайте данни,
 Shopify Settings,Настройки за пазаруване,
 status html,състояние html,
 Enable Shopify,Активиране на Shopify,
@@ -5817,7 +5731,6 @@
 Exercise Instructions,Инструкции за упражнения,
 Exercise Video,Видео за упражнения,
 Exercise Steps,Стъпки за упражнения,
-Steps,Стъпки,
 Steps Table,Таблица на стъпките,
 Exercise Type Step,Тип упражнение Стъпка,
 Max number of visit,Максимален брой посещения,
@@ -6001,7 +5914,6 @@
 Patient Encounter Symptom,Симптом на пациентска среща,
 HLC-PMR-.YYYY.-,HLC-PMR-.YYYY.-,
 Attach Medical Record,Приложете медицинска карта,
-Reference DocType,Референтен DocType,
 Spouse,Съпруг,
 Family,семейство,
 Schedule Details,Подробности за графика,
@@ -6983,16 +6895,8 @@
 HTML / Banner that will show on the top of product list.,"HTML / банер, който ще се появи на върха на списъка с продукти.",
 Set prefix for numbering series on your transactions,Определете префикс за номериране серия от вашите сделки,
 Setup Series,Настройка на номерацията,
-Select Transaction,Изберете транзакция,
-Help HTML,Помощ HTML,
-Series List for this Transaction,Списък с номерации за тази транзакция,
-User must always select,Потребителят трябва винаги да избере,
-Check this if you want to force the user to select a series before saving. There will be no default if you check this.,"Маркирайте това, ако искате да задължите потребителя да избере серия преди да запише. Няма да има по подразбиране, ако маркирате това.",
 Update Series,Актуализация Номериране,
 Change the starting / current sequence number of an existing series.,Промяна на изходния / текущия номер за последователност на съществуваща серия.,
-Prefix,Префикс,
-This is the number of the last created transaction with this prefix,Това е поредният номер на последната създадена сделката с този префикс,
-Update Series Number,Актуализация на номер за номериране,
 Quotation Lost Reason,Оферта Причина за загубване,
 A third party distributor / dealer / commission agent / affiliate / reseller who sells the companies products for a commission.,"Трето лице дистрибутор / дилър / комисионер / афилиат / търговец, който продава на фирми продукти срещу комисионна.",
 Sales Partner Name,Търговски партньор - Име,
@@ -7687,7 +7591,6 @@
 Warehouse wise Item Balance Age and Value,Warehouse wise Позиция Баланс Възраст и стойност,
 Work Order Stock Report,Доклад за работните поръчки,
 Work Orders in Progress,Работни поръчки в ход,
-Validation Error,Грешка при проверка,
 Automatically Process Deferred Accounting Entry,Автоматично обработва отложено счетоводно записване,
 Bank Clearance,Банково освобождаване,
 Bank Clearance Detail,Подробности за банковото освобождаване,
@@ -7724,45 +7627,7 @@
 Therapy Plan: ,План за терапия:,
 Total Counts Targeted: ,Общ брой на целите:,
 Total Counts Completed: ,Общо завършено броене:,
-Andaman and Nicobar Islands,Андамански и Никобарски острови,
-Andhra Pradesh,Андра Прадеш,
-Arunachal Pradesh,Аруначал Прадеш,
-Assam,Асам,
-Bihar,Бихар,
-Chandigarh,Чандигарх,
-Chhattisgarh,Чхатисгарх,
-Dadra and Nagar Haveli,Дадра и Нагар Хавели,
-Daman and Diu,Даман и Диу,
-Delhi,Делхи,
-Goa,Гоа,
-Gujarat,Гуджарат,
-Haryana,Харяна,
-Himachal Pradesh,Химачал Прадеш,
-Jammu and Kashmir,Джаму и Кашмир,
-Jharkhand,Джаркханд,
-Karnataka,Карнатака,
-Kerala,Керала,
-Lakshadweep Islands,Острови Лакшадуип,
-Madhya Pradesh,Мадхя Прадеш,
-Maharashtra,Махаращра,
-Manipur,Манипур,
-Meghalaya,Мегхалая,
-Mizoram,Мизорам,
-Nagaland,Нагаланд,
-Odisha,Одиша,
-Other Territory,Друга територия,
-Pondicherry,Пондичери,
-Punjab,Пенджаб,
-Rajasthan,Раджастан,
-Sikkim,Сиким,
-Tamil Nadu,Тамил Наду,
-Telangana,Телангана,
-Tripura,Трипура,
-Uttar Pradesh,Утар Прадеш,
-Uttarakhand,Утаракханд,
-West Bengal,Западна Бенгалия,
 Is Mandatory,Задължително,
-Published on,Публикувано на,
 Service Received But Not Billed,"Услугата получена, но не е таксувана",
 Deferred Accounting Settings,Настройки за отложено счетоводство,
 Book Deferred Entries Based On,Резервирайте отложените записи въз основа на,
@@ -8035,8 +7900,6 @@
 Worksheet Instructions,Инструкции за работния лист,
 Result Legend Print,Резултат Легенда Печат,
 Print Position,Позиция за печат,
-Bottom,Отдолу,
-Top,Горна част,
 Both,И двете,
 Result Legend,Легенда за резултата,
 Lab Tests,Лабораторни тестове,
@@ -8081,12 +7944,10 @@
 Approvers,Одобряващи,
 The first Approver in the list will be set as the default Approver.,Първият одобряващ в списъка ще бъде зададен като одобряващ по подразбиране.,
 Shift Request Approver,Одобряващ заявка за смяна,
-PAN Number,Номер на PAN,
 Provident Fund Account,Провиден фонд,
 MICR Code,MICR код,
 Repay unclaimed amount from salary,Изплатете непотърсена сума от заплата,
 Deduction from salary,Приспадане от заплата,
-Expired Leaves,Листа с изтекъл срок на годност,
 If this is not checked the loan by default will be considered as a Demand Loan,"Ако това не е отметнато, заемът по подразбиране ще се счита за кредит за търсене",
 This account is used for booking loan repayments from the borrower and also disbursing loans to the borrower,"Тази сметка се използва за резервиране на изплащане на заеми от кредитополучателя, както и за изплащане на заеми на кредитополучателя",
 This account is capital account which is used to allocate capital for loan disbursal account ,"Тази сметка е капиталова сметка, която се използва за разпределяне на капитал за сметка за оттегляне на заеми",
@@ -8844,3 +8705,41 @@
 Creating Purchase Order ...,Създаване на поръчка ...,
 "Select a Supplier from the Default Suppliers of the items below. On selection, a Purchase Order will be made against items belonging to the selected Supplier only.","Изберете доставчик от доставчиците по подразбиране на елементите по-долу. При избора ще бъде направена Поръчка за покупка срещу артикули, принадлежащи само на избрания Доставчик.",
 Row #{}: You must select {} serial numbers for item {}.,Ред № {}: Трябва да изберете {} серийни номера за артикул {}.,
+Add Comment,Добави коментар,
+More...,Повече...,
+Notes,Бележки,
+Payment Gateway,Портал за плащания,
+Payment Gateway Name,Име на платежния шлюз,
+Payments,Плащания,
+Plan Name,Име на плана,
+Portal,Портал,
+Scan Barcode,Сканиране на баркод,
+Some information is missing,Част от информацията липсва,
+Successful,Успешен,
+Tools,Инструменти,
+Use Sandbox,Използвайте Sandbox,
+Busy,Зает,
+Completed By,Завършено от,
+Payment Failed,Неуспешно плащане,
+Column {0},Колона {0},
+Field Mapping,Картографиране на полето,
+Not Specified,Неопределено,
+Update Type,Тип актуализация,
+Dr,Dr,
+End Time,Край (време),
+Fetching...,Извлича се ...,
+"It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","Изглежда, че има проблем с конфигурацията на лентата на сървъра. В случай на неуспех, сумата ще бъде възстановена в профила Ви.",
+Looks like someone sent you to an incomplete URL. Please ask them to look into it.,"Изглежда, че някой ви е изпратил непълен URL. Моля, попитайте ги да го потвърдят.",
+Master,Майстор,
+Pay,Плащане,
+You can also copy-paste this link in your browser,Можете също да копирате-постави този линк в браузъра си,
+Verified By,Проверени от,
+Invalid naming series (. missing) for {0},Невалидна поредица от имена (. Липсва) за {0},
+Phone Number,Телефонен номер,
+Account SID,SID на акаунта,
+Global Defaults,Глобални настройки по подразбиране,
+Is Mandatory,Задължително,
+WhatsApp,WhatsApp,
+Make a call,Обадете се,
+Approve,одобрявам,
+Reject,Отхвърляне,
diff --git a/erpnext/translations/bn.csv b/erpnext/translations/bn.csv
index 266bd16..8a698df 100644
--- a/erpnext/translations/bn.csv
+++ b/erpnext/translations/bn.csv
@@ -113,7 +113,6 @@
 Add Items,উপকরণ অ্যাড,
 Add Leads,Leads যোগ করুন,
 Add Multiple Tasks,একাধিক কাজ যোগ করুন,
-Add Row,সারি যোগ করুন,
 Add Sales Partners,বিক্রয় অংশীদার যোগ করুন,
 Add Serial No,সিরিয়াল কোন যোগ,
 Add Students,শিক্ষার্থীরা যোগ,
@@ -211,9 +210,7 @@
 An error occurred during the update process,আপডেট প্রক্রিয়ার সময় একটি ত্রুটি ঘটেছে,
 "An item exists with same name ({0}), please change the item group name or rename the item","একটি আইটেম একই নামের সঙ্গে বিদ্যমান ({0}), আইটেম গ্রুপের নাম পরিবর্তন বা আইটেম নামান্তর করুন",
 Analyst,বিশ্লেষক,
-Analytics,বৈশ্লেষিক ন্যায়,
 Annual Billing: {0},বার্ষিক বিলিং: {0},
-Anonymous,নামবিহীন,
 Another Budget record '{0}' already exists against {1} '{2}' and account '{3}' for fiscal year {4},আরেকটি বাজেট রেকর্ড &#39;{0}&#39; ইতিমধ্যে {1} &#39;{2}&#39; এবং আর্থিক বছরের জন্য &#39;{3}&#39; এর বিরুদ্ধে বিদ্যমান {4},
 Another Period Closing Entry {0} has been made after {1},অন্য সময়ের সমাপ্তি এন্ট্রি {0} পরে তৈরি করা হয়েছে {1},
 Another Sales Person {0} exists with the same Employee id,অন্য বিক্রয় ব্যক্তি {0} একই কর্মচারী আইডি দিয়ে বিদ্যমান,
@@ -283,14 +280,12 @@
 Attendance not submitted for {0} as {1} on leave.,ছুটিতে {0} হিসাবে উপস্থিতি {0} জন্য জমা দেওয়া হয়নি।,
 Attribute table is mandatory,গুন টেবিল বাধ্যতামূলক,
 Attribute {0} selected multiple times in Attributes Table,গুন {0} আরোপ ছক মধ্যে একাধিক বার নির্বাচিত,
-Author,লেখক,
 Authorized Signatory,অনুমোদিত স্বাক্ষরকারী,
 Auto Material Requests Generated,অটো উপাদান অনুরোধ উত্পন্ন,
 Auto Repeat,অটো পুনরাবৃত্তি,
 Auto repeat document updated,স্বতঃ পুনরাবৃত্ত নথি আপডেট করা হয়েছে,
 Automotive,স্বয়ংচালিত,
 Available,উপলভ্য,
-Available Leaves,উপলব্ধ পাতা,
 Available Qty,প্রাপ্তিসাধ্য Qty,
 Available Selling,উপলভ্য বিক্রি,
 Available for use date is required,ব্যবহারের তারিখের জন্য উপলভ্য প্রয়োজন,
@@ -340,7 +335,6 @@
 Base URL,বেস URL,
 Based On,উপর ভিত্তি করে,
 Based On Payment Terms,পেমেন্ট শর্তাদি উপর ভিত্তি করে,
-Basic,মৌলিক,
 Batch,ব্যাচ,
 Batch Entries,ব্যাচের এন্ট্রি,
 Batch ID is mandatory,ব্যাচ আইডি বাধ্যতামূলক,
@@ -361,7 +355,6 @@
 Billable Hours,বিলযোগ্য ঘন্টা,
 Billed,বিল,
 Billed Amount,বিলের পরিমাণ,
-Billing,বিলিং,
 Billing Address,বিলিং ঠিকানা,
 Billing Address is same as Shipping Address,বিলিং ঠিকানা শিপিং ঠিকানার মতো,
 Billing Amount,বিলিং পরিমাণ,
@@ -560,7 +553,6 @@
 Consumed Qty,ক্ষয়প্রাপ্ত Qty,
 Consumer Products,ভোগ্যপণ্য,
 Contact,যোগাযোগ,
-Contact Details,যোগাযোগের ঠিকানা,
 Contact Us,আমাদের সাথে যোগাযোগ করুন,
 Content,বিষয়বস্তু,
 Content Masters,বিষয়বস্তু মাস্টার্স,
@@ -715,7 +707,6 @@
 Date of Joining,যোগদান তারিখ,
 Date of Joining must be greater than Date of Birth,যোগদান তারিখ জন্ম তারিখ থেকে বড় হওয়া উচিত,
 Date of Transaction,লেনদেনের তারিখ,
-Datetime,তারিখ সময়,
 Day,দিন,
 Debit,ডেবিট,
 Debit ({0}),ডেবিট ({0}),
@@ -874,7 +865,6 @@
 Employee cannot report to himself.,কর্মচারী নিজেকে প্রতিবেদন করতে পারবে না.,
 Employee {0} has already applied for {1} between {2} and {3} : ,কর্মচারী {0} ইতিমধ্যে {1} এবং {3} এর মধ্যে {1} জন্য প্রয়োগ করেছেন:,
 Employee {0} of grade {1} have no default leave policy,গ্রেড {1} এর কর্মচারী {0} এর কোনো ডিফল্ট ছাড় নীতি নেই,
-Enable,সক্ষম করা,
 Enable / disable currencies.,/ নিষ্ক্রিয় মুদ্রা সক্রিয় করুন.,
 Enabled,সক্রিয়,
 "Enabling 'Use for Shopping Cart', as Shopping Cart is enabled and there should be at least one Tax Rule for Shopping Cart","সক্ষম করা হলে, &#39;শপিং কার্ট জন্য প্রদর্শন করো&#39; এ শপিং কার্ট যেমন সক্রিয় করা হয় এবং শপিং কার্ট জন্য অন্তত একটি ট্যাক্স নিয়ম আছে উচিত",
@@ -905,7 +895,6 @@
 Error: Not a valid id?,ত্রুটি: একটি বৈধ আইডি?,
 Estimated Cost,আনুমানিক খরচ,
 "Even if there are multiple Pricing Rules with highest priority, then following internal priorities are applied:","সর্বোচ্চ অগ্রাধিকার দিয়ে একাধিক প্রাইসিং নিয়ম আছে, এমনকি যদি তারপর নিচের অভ্যন্তরীণ অগ্রাধিকার প্রয়োগ করা হয়:",
-Event,ঘটনা,
 Exchange Gain/Loss,এক্সচেঞ্জ লাভ / ক্ষতির,
 Exchange Rate Revaluation master.,বিনিময় হার পুনঃনির্ধারণ মাস্টার।,
 Exchange Rate must be same as {0} {1} ({2}),এক্সচেঞ্জ রেট হিসাবে একই হতে হবে {0} {1} ({2}),
@@ -1032,7 +1021,6 @@
 From value must be less than to value in row {0},মূল্য সারিতে মান কম হতে হবে থেকে {0},
 From {0} | {1} {2},থেকে {0} | {1} {2},
 Fulfillment,সিদ্ধি,
-Full,সম্পূর্ণ,
 Full Name,পুরো নাম,
 Fully Depreciated,সম্পূর্ণরূপে মূল্যমান হ্রাস,
 Furnitures and Fixtures,আসবাবপত্র এবং রাজধানী,
@@ -1133,7 +1121,6 @@
 Hub Sync ID,হাব সিঙ্ক আইডি,
 Human Resource,মানব সম্পদ,
 Human Resources,মানব সম্পদ,
-IFSC Code,আইএফসিসি কোড,
 IGST Amount,IGST পরিমাণ,
 IP Address,আইপি ঠিকানা,
 ITC Available (whether in full op part),আইটিসি উপলব্ধ (সম্পূর্ণ বিকল্প অংশে থাকুক না কেন),
@@ -1185,7 +1172,6 @@
 Ineligible ITC,অযোগ্য আইটিসি,
 Initiated,প্রবর্তিত,
 Inpatient Record,ইনপেশেন্ট রেকর্ড,
-Insert,সন্নিবেশ,
 Installation Note,ইনস্টলেশন উল্লেখ্য,
 Installation Note {0} has already been submitted,ইনস্টলেশন উল্লেখ্য {0} ইতিমধ্যেই জমা দেওয়া হয়েছে,
 Installation date cannot be before delivery date for Item {0},ইনস্টলেশনের তারিখ আইটেমের জন্য ডেলিভারি তারিখের আগে হতে পারে না {0},
@@ -1197,7 +1183,6 @@
 Insurance Start date should be less than Insurance End date,বীমা তারিখ শুরু তুলনায় বীমা শেষ তারিখ কম হওয়া উচিত,
 Integrated Tax,ইন্টিগ্রেটেড ট্যাক্স,
 Inter-State Supplies,আন্তঃরাষ্ট্রীয় সরবরাহ,
-Interests,রুচি,
 Internet Publishing,ইন্টারনেট প্রকাশনা,
 Intra-State Supplies,ইন্ট্রা-স্টেট সরবরাহ,
 Introduction,ভূমিকা,
@@ -1316,7 +1301,6 @@
 Lab testing datetime cannot be before collection datetime,ল্যাব টেস্টিং ডেটটাইম সংগ্রহের সময়কালের আগে হতে পারে না,
 Label,লেবেল,
 Laboratory,পরীক্ষাগার,
-Language Name,ভাষার নাম,
 Large,বড়,
 Last Communication,গত কমিউনিকেশন,
 Last Communication Date,গত কমিউনিকেশন তারিখ,
@@ -1347,8 +1331,6 @@
 Letter Heads for print templates.,মুদ্রণ টেমপ্লেট জন্য পত্র নেতৃবৃন্দ.,
 Level,শ্রেনী,
 Liability,দায়,
-License,লাইসেন্স,
-Limit,সীমা,
 Limit Crossed,সীমা অতিক্রম,
 Link to Material Request,উপাদান অনুরোধ লিঙ্ক,
 List of all share transactions,সমস্ত শেয়ার লেনদেনের তালিকা,
@@ -1359,7 +1341,6 @@
 Loans (Liabilities),ঋণ (দায়),
 Loans and Advances (Assets),ঋণ ও অগ্রিমের (সম্পদ),
 Local,স্থানীয়,
-Log,লগিন,
 Logs for maintaining sms delivery status,SMS বিতরণ অবস্থা বজায় রাখার জন্য লগ,
 Lost,নষ্ট,
 Lost Reasons,হারানো কারণ,
@@ -1445,7 +1426,6 @@
 Medical Department,চিকিৎসা বিভাগ,
 Medical Record,মেডিকেল সংরক্ষণ,
 Medium,মাঝারি,
-Meeting,সাক্ষাৎ,
 Member Activity,সদস্য কার্যকলাপ,
 Member ID,সদস্য আইডি,
 Member Name,সদস্যের নাম,
@@ -1495,7 +1475,6 @@
 Multiple Variants,একাধিক বৈকল্পিক,
 Multiple fiscal years exist for the date {0}. Please set company in Fiscal Year,একাধিক অর্থ বছরের তারিখ {0} জন্য বিদ্যমান. অর্থবছরে কোম্পানির নির্ধারণ করুন,
 Music,সঙ্গীত,
-My Account,আমার অ্যাকাউন্ট,
 Name error: {0},নাম ত্রুটি: {0},
 Name of new Account. Note: Please don't create accounts for Customers and Suppliers,নতুন একাউন্টের নাম. উল্লেখ্য: গ্রাহকদের এবং সরবরাহকারী জন্য অ্যাকাউন্ট তৈরি করবেন না দয়া করে,
 Name or Email is mandatory,নাম বা ইমেল বাধ্যতামূলক,
@@ -1538,7 +1517,6 @@
 New credit limit is less than current outstanding amount for the customer. Credit limit has to be atleast {0},নতুন ক্রেডিট সীমা গ্রাহকের জন্য বর্তমান অসামান্য রাশির চেয়ে কম হয়. ক্রেডিট সীমা অন্তত হতে হয়েছে {0},
 New task,ত্যে,
 New {0} pricing rules are created,নতুন {0} মূল্যের বিধি তৈরি করা হয়,
-Newsletters,নিউজ লেটার,
 Newspaper Publishers,সংবাদপত্র পাবলিশার্স,
 Next,পরবর্তী,
 Next Contact By cannot be same as the Lead Email Address,পরবর্তী সংস্পর্শের মাধ্যমে লিড ইমেল ঠিকানা হিসাবে একই হতে পারে না,
@@ -1686,7 +1664,6 @@
 Other,অন্যান্য,
 Other Reports,অন্যান্য রিপোর্ট,
 "Other outward supplies(Nil rated,Exempted)","অন্যান্য বাহ্যিক সরবরাহ (নিল রেটড, অব্যাহতিপ্রাপ্ত)",
-Others,অন্যরা,
 Out Qty,Qty আউট,
 Out Value,আউট মূল্য,
 Out of Order,অর্ডার আউট,
@@ -1726,7 +1703,6 @@
 Party Type and Party is mandatory for {0} account,{0} অ্যাকাউন্টের জন্য পার্টি প্রকার এবং পার্টি বাধ্যতামূলক,
 Party Type is mandatory,পার্টির প্রকার বাধ্যতামূলক,
 Party is mandatory,পার্টির বাধ্যতামূলক,
-Password,পাসওয়ার্ড,
 Past Due Date,অতীত তারিখের তারিখ,
 Patient,ধৈর্যশীল,
 Patient Appointment,রোগীর অ্যাপয়েন্টমেন্ট,
@@ -1784,7 +1760,6 @@
 Pharmaceutical,ফার্মাসিউটিক্যাল,
 Pharmaceuticals,ফার্মাসিউটিক্যালস,
 Physician,চিকিত্সক,
-Pincode,পিনকোড,
 Place Of Supply (State/UT),সরবরাহের স্থান (রাজ্য / কেন্দ্রশাসিত অঞ্চল),
 Place Order,প্লেস আদেশ,
 Plan Name,পরিকল্পনা নাম,
@@ -1896,7 +1871,6 @@
 Please select date,দয়া করে তারিখ নির্বাচন,
 Please select item code,আইটেমটি কোড নির্বাচন করুন,
 Please select month and year,মাস এবং বছর নির্বাচন করুন,
-Please select prefix first,প্রথম উপসর্গ নির্বাচন করুন,
 Please select the Company,কোম্পানী নির্বাচন করুন,
 Please select the Multiple Tier Program type for more than one collection rules.,একাধিক সংগ্রহের নিয়মগুলির জন্য দয়া করে একাধিক টিয়ার প্রোগ্রামের ধরন নির্বাচন করুন,
 Please select the assessment group other than 'All Assessment Groups',দয়া করে মূল্যায়ন &#39;সমস্ত অ্যাসেসমেন্ট গোষ্ঠীসমূহ&#39; ছাড়া অন্য গোষ্ঠী নির্বাচন করুন,
@@ -1913,7 +1887,6 @@
 Please set Company filter blank if Group By is 'Company',দয়া করে কোম্পানির ফাঁকা ফিল্টার সেট করুন যদি একদল &#39;কোম্পানি&#39; হল,
 Please set Default Payroll Payable Account in Company {0},কোম্পানির মধ্যে ডিফল্ট বেতনের প্রদেয় অ্যাকাউন্ট নির্ধারণ করুন {0},
 Please set Depreciation related Accounts in Asset Category {0} or Company {1},সম্পদ শ্রেণী {0} বা কোম্পানির অবচয় সম্পর্কিত হিসাব নির্ধারণ করুন {1},
-Please set Email Address,ইমেল ঠিকানা নির্ধারণ করুন,
 Please set GST Accounts in GST Settings,GST সেটিংসগুলিতে GST অ্যাকাউন্টগুলি সেট করুন,
 Please set Hotel Room Rate on {},{} এ হোটেল রুম রেট সেট করুন,
 Please set Number of Depreciations Booked,Depreciations সংখ্যা বুক নির্ধারণ করুন,
@@ -1936,7 +1909,6 @@
 Please set the Email ID for the Student to send the Payment Request,শিক্ষার্থীর জন্য অর্থ প্রদানের অনুরোধ পাঠানোর জন্য ইমেল আইডি সেট করুন,
 Please set the Item Code first,প্রথম আইটেম কোড প্রথম সেট করুন,
 Please set the Payment Schedule,পেমেন্ট শিডিউল সেট করুন,
-Please set the series to be used.,ব্যবহার করা সিরিজ সেট করুন দয়া করে।,
 Please set {0} for address {1},ঠিকানা {0} জন্য {0} সেট করুন,
 Please setup Students under Student Groups,ছাত্রদের অধীন ছাত্রদের সেটআপ করুন,
 Please specify Company,কোম্পানি উল্লেখ করুন,
@@ -1953,7 +1925,6 @@
 Point-of-Sale,বিক্রয় বিন্দু,
 Point-of-Sale Profile,পয়েন্ট অফ বিক্রয় প্রোফাইল,
 Portal,পোর্টাল,
-Portal Settings,পোর্টাল সেটিংস,
 Possible Supplier,সম্ভাব্য সরবরাহকারী,
 Postal Expenses,ঠিকানা খরচ,
 Posting Date,পোস্টিং তারিখ,
@@ -2152,12 +2123,10 @@
 Reference No is mandatory if you entered Reference Date,আপনি রেফারেন্স তারিখ প্রবেশ যদি রেফারেন্স কোন বাধ্যতামূলক,
 Reference No.,রেফারেন্স নম্বর,
 Reference Number,পরিচিত সংখ্যা,
-Reference Owner,রেফারেন্স মালিক,
 Reference Type,রেফারেন্স ধরন,
 "Reference: {0}, Item Code: {1} and Customer: {2}","রেফারেন্স: {0}, আইটেম কোড: {1} এবং গ্রাহক: {2}",
 References,তথ্যসূত্র,
 Refresh Token,সুদ্ধ করুন টোকেন,
-Region,এলাকা,
 Register,নিবন্ধন,
 Rejected,প্রত্যাখ্যাত,
 Related,সংশ্লিষ্ট,
@@ -2179,7 +2148,6 @@
 Replace BOM and update latest price in all BOMs,BOM প্রতিস্থাপন করুন এবং সমস্ত BOMs মধ্যে সর্বশেষ মূল্য আপডেট করুন,
 Replied,জবাব দেওয়া,
 Report,রিপোর্ট,
-Report Builder,প্রতিবেদন নির্মাতা,
 Report Type,প্রতিবেদনের প্রকার,
 Report Type is mandatory,প্রতিবেদন প্রকার বাধ্যতামূলক,
 Reports,প্রতিবেদন,
@@ -2355,13 +2323,11 @@
 Same Company is entered more than once,একই কোম্পানীর একবারের বেশি প্রবেশ করানো হয়,
 Same item cannot be entered multiple times.,একই আইটেম একাধিক বার প্রবেশ করানো যাবে না.,
 Same supplier has been entered multiple times,একই সরবরাহকারী একাধিক বার প্রবেশ করানো হয়েছে,
-Sample,নমুনা,
 Sample Collection,নমুনা সংগ্রহ,
 Sample quantity {0} cannot be more than received quantity {1},নমুনা পরিমাণ {0} প্রাপ্ত পরিমাণের চেয়ে বেশি হতে পারে না {1},
 Sanctioned,অনুমোদিত,
 Sand,বালি,
 Saturday,শনিবার,
-Saved,সংরক্ষিত,
 Saving {0},সংরক্ষণ করা হচ্ছে {0},
 Scan Barcode,বারকোড স্ক্যান করুন,
 Schedule,সময়সূচি,
@@ -2463,7 +2429,6 @@
 Series Updated,সিরিজ আপডেট,
 Series Updated Successfully,সিরিজ সফলভাবে আপডেট,
 Series is mandatory,সিরিজ বাধ্যতামূলক,
-Series {0} already used in {1},ইতিমধ্যে ব্যবহৃত সিরিজ {0} {1},
 Service,সেবা,
 Service Level Agreement,পরিসেবা স্তরের চুক্তি,
 Service Level Agreement.,পরিসেবা স্তরের চুক্তি.,
@@ -2479,7 +2444,6 @@
 Set Tax Rule for shopping cart,শপিং কার্ট জন্য সেট করের রুল,
 Set as Closed,বন্ধ হিসাবে সেট করুন,
 Set as Completed,সম্পূর্ণ হিসাবে সেট করুন,
-Set as Default,ডিফল্ট হিসেবে সেট করুন,
 Set as Lost,লস্ট হিসেবে সেট,
 Set as Open,ওপেন হিসাবে সেট করুন,
 Set default inventory account for perpetual inventory,চিরস্থায়ী জায় জন্য ডিফল্ট জায় অ্যাকাউন্ট সেট,
@@ -2511,7 +2475,6 @@
 Shareholder,ভাগীদার,
 Ship To State,রাজ্য থেকে জাহাজ,
 Shipments,চালানে,
-Shipping,পরিবহন,
 Shipping Address,প্রেরণের ঠিকানা,
 "Shipping Address does not have country, which is required for this Shipping Rule","জাহাজীকরণের ঠিকানাটি দেশের নেই, যা এই শপিং শাসনের জন্য প্রয়োজনীয়",
 Shipping rule only applicable for Buying,গ্রেপ্তারের নিয়ম শুধুমাত্র কেনা জন্য প্রযোজ্য,
@@ -2564,7 +2527,6 @@
 Split Batch,স্প্লিট ব্যাচ,
 Split Issue,স্প্লিট ইস্যু,
 Sports,স্পোর্টস,
-Standard,মান,
 Standard Buying,স্ট্যান্ডার্ড রাজধানীতে,
 Standard Selling,স্ট্যান্ডার্ড বিক্রি,
 Standard contract terms for Sales or Purchase.,সেলস বা কেনার জন্য আদর্শ চুক্তি পদ.,
@@ -2731,7 +2693,6 @@
 Terms and Conditions,শর্তাবলী,
 Terms and Conditions Template,শর্তাবলী টেমপ্লেট,
 Territory,এলাকা,
-Test,পরীক্ষা,
 Thank you for your business!,আপনার ব্যবসার জন্য আপনাকে ধন্যবাদ!,
 The 'From Package No.' field must neither be empty nor it's value less than 1.,&#39;প্যাকেজ নং থেকে&#39; ক্ষেত্রটি খালি নাও হতে পারে না 1 এর থেকে কম মূল্য,
 The Brand,ব্র্যান্ড,
@@ -2848,7 +2809,6 @@
 Total (Without Tax),মোট (কর ছাড়),
 Total Achieved,মোট অর্জন,
 Total Actual,প্রকৃত মোট,
-Total Allocated Leaves,মোট বরাদ্দ পাতা,
 Total Amount,মোট পরিমাণ,
 Total Amount Credited,মোট পরিমাণ কৃতিত্ব,
 Total Applicable Charges in Purchase Receipt Items table must be same as Total Taxes and Charges,ক্রয় রশিদ সামগ্রী টেবিলের মোট প্রযোজ্য চার্জ মোট কর ও চার্জ হিসাবে একই হতে হবে,
@@ -2892,7 +2852,6 @@
 Total(Amt),মোট (Amt),
 Total(Qty),মোট (Qty),
 Traceability,traceability,
-Traceback,ট্রেসব্যাক,
 Track Leads by Lead Source.,লিড উত্স দ্বারা অগ্রসর হয় ট্র্যাক,
 Transaction,লেনদেন,
 Transaction Date,লেনদেন তারিখ,
@@ -2930,7 +2889,6 @@
 UOM Conversion factor is required in row {0},UOM রূপান্তর ফ্যাক্টর সারিতে প্রয়োজন বোধ করা হয় {0},
 UOM coversion factor required for UOM: {0} in Item: {1},UOM জন্য প্রয়োজন UOM coversion ফ্যাক্টর: {0} আইটেম: {1},
 URL,URL টি,
-Unable to find DocType {0},ডক টাইপ {0} খুঁজে পাওয়া যায়নি,
 Unable to find exchange rate for {0} to {1} for key date {2}. Please create a Currency Exchange record manually,জন্য বিনিময় হার খুঁজে পাওয়া যায়নি {0} এ {1} কী তারিখের জন্য {2}। একটি মুদ্রা বিনিময় রেকর্ড ম্যানুয়ালি তৈরি করুন,
 Unable to find score starting at {0}. You need to have standing scores covering 0 to 100,{0} এ শুরু হওয়া স্কোর খুঁজে পাওয়া অসম্ভব। আপনাকে 0 থেকে 100 টাকায় দাঁড়াতে দাঁড়াতে হবে,
 Unable to find variable: ,পরিবর্তনশীল খুঁজে পাওয়া যায়নি:,
@@ -2960,7 +2918,6 @@
 Upload your letter head and logo. (you can edit them later).,আপনার চিঠি মাথা এবং লোগো আপলোড করুন. (আপনি তাদের পরে সম্পাদনা করতে পারেন).,
 Upper Income,আপার আয়,
 Use Sandbox,ব্যবহারের স্যান্ডবক্স,
-Used Leaves,ব্যবহৃত পাখি,
 User,ব্যবহারকারী,
 User ID,ব্যবহারকারী আইডি,
 User ID not set for Employee {0},ইউজার আইডি কর্মচারী জন্য নির্ধারণ করে না {0},
@@ -3051,7 +3008,6 @@
 Website Settings,ওয়েবসাইট সেটিংস,
 Wednesday,বুধবার,
 Week,সপ্তাহ,
-Weekdays,কাজের,
 Weekly,সাপ্তাহিক,
 "Weight is mentioned,\nPlease mention ""Weight UOM"" too","ওজন \ n দয়া খুব &quot;ওজন UOM&quot; উল্লেখ, উল্লেখ করা হয়",
 Welcome email sent,স্বাগতম ইমেইল পাঠানো,
@@ -3072,7 +3028,6 @@
 Work Order {0} must be submitted,কাজের আদেশ {0} জমা দিতে হবে,
 Work Orders Created: {0},তৈরি ওয়ার্ক অর্ডার: {0},
 Work-in-Progress Warehouse is required before Submit,কাজ-অগ্রগতি ওয়্যারহাউস জমা করার আগে প্রয়োজন বোধ করা হয়,
-Workflow,কর্মপ্রবাহ,
 Working,ওয়ার্কিং,
 Working Hours,কর্মঘন্টা,
 Workstation,ওয়ার্কস্টেশন,
@@ -3102,7 +3057,6 @@
 You need to be a user other than Administrator with System Manager and Item Manager roles to register on Marketplace.,আপনি মার্কেটপ্লেসে রেজিস্টার করার জন্য সিস্টেম ব্যবস্থাপক এবং আইটেম ম্যানেজার ভূমিকার সাথে অ্যাডমিনিস্টরের পরিবর্তে অন্য একটি ব্যবহারকারী হওয়া প্রয়োজন।,
 You need to be a user with System Manager and Item Manager roles to add users to Marketplace.,আপনি মার্কেটপ্লেস ব্যবহারকারীদের যুক্ত করতে সিস্টেম ম্যানেজার এবং আইটেম ম্যানেজার ভূমিকা সহ একটি ব্যবহারকারী হতে হবে,
 You need to be a user with System Manager and Item Manager roles to register on Marketplace.,মার্কেটপ্লেসে রেজিস্টার করার জন্য আপনাকে সিস্টেম ম্যানেজার এবং আইটেম ম্যানেজার ভূমিকার সাথে একজন ব্যবহারকারী হওয়া প্রয়োজন।,
-You need to be logged in to access this page,আপনি এই পৃষ্ঠায় যাওয়ার জন্য লগ ইন করতে হবে,
 You need to enable Shopping Cart,আপনি শপিং কার্ট সক্রিয় করতে হবে,
 You will lose records of previously generated invoices. Are you sure you want to restart this subscription?,আপনি পূর্বে উত্পন্ন ইনভয়েসগুলির রেকর্ডগুলি হারাবেন। আপনি কি এই সাবস্ক্রিপশনটি পুনরায় চালু করতে চান?,
 Your Organization,তোমার অর্গানাইজেশন,
@@ -3218,7 +3172,6 @@
 Assigned To,নিযুক্ত করা,
 Chat,চ্যাট,
 Completed By,দ্বারা সম্পন্ন,
-County,বিভাগ,
 Day of Week,সপ্তাহের দিন,
 "Dear System Manager,","প্রিয় সিস্টেম ম্যানেজার,",
 Default Value,ডিফল্ট মান,
@@ -3229,31 +3182,21 @@
 Fieldtype,Fieldtype,
 Help Articles,সাহায্য প্রবন্ধ,
 ID,আইডি,
-Images,চিত্র,
 Import,আমদানি,
 Language,ভাষা,
 Likes,পছন্দ,
 Merge with existing,বিদ্যমান সাথে একত্রীকরণ,
-Office,অফিস,
 Orientation,ঝোঁক,
 Parent,মাতা,
-Passive,নিষ্ক্রিয়,
 Payment Failed,পেমেন্ট ব্যর্থ হয়েছে,
-Permanent,স্থায়ী,
 Personal,ব্যক্তিগত,
-Plant,উদ্ভিদ,
 Post,পোস্ট,
-Postal,ঠিকানা,
 Postal Code,পোস্ট অফিসের নাম্বার,
-Previous,পূর্ববর্তী,
 Provider,প্রদানকারী,
 Read Only,শুধুমাত্র পঠনযোগ্য,
 Recipient,প্রাপক,
 Reviews,পর্যালোচনা,
 Sender,প্রেরকের,
-Shop,দোকান,
-Subsidiary,সহায়ক,
-There is some problem with the file url: {0},ফাইলের URL সঙ্গে কিছু সমস্যা আছে: {0},
 There were errors while sending email. Please try again.,ইমেইল পাঠানোর সময় কিছু সমস্যা হয়েছে. অনুগ্রহ করে আবার চেষ্টা করুন.,
 Values Changed,মান পরিবর্তিত,
 or,বা,
@@ -3280,19 +3223,16 @@
 Quality Feedback Template,গুণমান প্রতিক্রিয়া টেম্পলেট,
 Rules for applying different promotional schemes.,বিভিন্ন প্রচারমূলক স্কিম প্রয়োগ করার নিয়ম।,
 Show {0},{0} দেখান,
-"Special Characters except '-', '#', '.', '/', '{{' and '}}' not allowed in naming series {0}","নামকরণ সিরিজে &quot;-&quot;, &quot;#&quot;, &quot;।&quot;, &quot;/&quot;, &quot;{{&quot; এবং &quot;}}&quot; ব্যতীত বিশেষ অক্ষর অনুমোদিত নয় {0}",
 Target Details,টার্গেটের বিশদ,
 {0} already has a Parent Procedure {1}.,{0} ইতিমধ্যে একটি মূল পদ্ধতি আছে {1}।,
 API,এপিআই,
 Annual,বার্ষিক,
 Change,পরিবর্তন,
 Contact Email,যোগাযোগের ই - মেইল,
-Export Type,রপ্তানি প্রকার,
 From Date,তারিখ থেকে,
 Group By,গ্রুপ দ্বারা,
 Invalid URL,অবৈধ ইউআরএল,
 Landscape,ভূদৃশ্য,
-Last Sync On,শেষ সিঙ্ক অন,
 Naming Series,নামকরণ সিরিজ,
 No data to export,রফতানির জন্য কোনও ডেটা নেই,
 Portrait,প্রতিকৃতি,
@@ -3302,7 +3242,6 @@
 Show Document,দস্তাবেজ দেখান,
 Show Traceback,ট্রেসব্যাক প্রদর্শন করুন,
 Video,ভিডিও,
-Webhook Secret,ওয়েবহুক সিক্রেট,
 % Of Grand Total,গ্র্যান্ড টোটাল এর%,
 <b>Company</b> is a mandatory filter.,<b>সংস্থা</b> একটি বাধ্যতামূলক ফিল্টার।,
 <b>From Date</b> is a mandatory filter.,<b>তারিখ থেকে</b> বাধ্যতামূলক ফিল্টার।,
@@ -3358,7 +3297,6 @@
 BOM Comparison Tool,বিওএম তুলনা সরঞ্জাম,
 BOM recursion: {0} cannot be child of {1},বিওএম পুনরাবৃত্তি: {0 {{1} এর শিশু হতে পারে না,
 BOM recursion: {0} cannot be parent or child of {1},বিওএম পুনরাবৃত্তি: {0 parent 1} এর পিতামাতা বা শিশু হতে পারে না,
-Back to Home,বাড়িতে ফিরে যাও,
 Back to Messages,বার্তাগুলিতে ফিরে যান,
 Bank Data mapper doesn't exist,ব্যাংক ডেটা ম্যাপার বিদ্যমান নেই,
 Bank Details,ব্যাংক বিবরণ,
@@ -3420,7 +3358,6 @@
 Currency,মুদ্রা,
 Current Status,এখনকার অবস্থা,
 Customer PO,গ্রাহক প.ও.,
-Customize,কাস্টমাইজ করুন,
 Daily,দৈনিক,
 Date,তারিখ,
 Date of Birth cannot be greater than Joining Date.,যোগদানের তারিখের চেয়ে জন্মের তারিখ বেশি হতে পারে না।,
@@ -3454,7 +3391,6 @@
 ERPNext could not find any matching payment entry,ERPNext কোনও মিলে যায় এমন পেমেন্ট প্রবেশের সন্ধান করতে পারেনি,
 Earliest Age,প্রথম দিকের বয়স,
 Edit Details,তথ্য সংশোধন কর,
-Edit Profile,জীবন বৃত্তান্ত সম্পাদনা,
 Either GST Transporter ID or Vehicle No is required if Mode of Transport is Road,হয় মোড ট্রান্সপোর্টের রাস্তা হলে জিএসটি ট্রান্সপোর্টার আইডি বা যানবাহনের নম্বর প্রয়োজন,
 Email,EMail,
 Email Campaigns,ইমেল প্রচারণা,
@@ -3482,7 +3418,6 @@
 Fetch Items from Warehouse,গুদাম থেকে আইটেম আনুন,
 Fetching...,আনা হচ্ছে ...,
 Field,ক্ষেত্র,
-File Manager,নথি ব্যবস্থাপক,
 Filters,ফিল্টার,
 Finding linked payments,সংযুক্ত পেমেন্ট সন্ধান করা,
 Fleet Management,দ্রুতগামী ব্যবস্থাপনা,
@@ -3521,7 +3456,6 @@
 Incorrect Warehouse,ভুল গুদাম,
 Invalid Barcode. There is no Item attached to this barcode.,অবৈধ বারকোড। এই বারকোডের সাথে কোনও আইটেম সংযুক্ত নেই।,
 Invalid credentials,অবৈধ প্রশংসাপত্র,
-Invite as User,ব্যবহারকারী হিসেবে আমন্ত্রণ,
 Issue Priority.,অগ্রাধিকার ইস্যু।,
 Issue Type.,ইস্যু প্রকার।,
 "It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","মনে হচ্ছে যে সার্ভারের স্ট্রাপ কনফিগারেশনের সাথে একটি সমস্যা আছে ব্যর্থতার ক্ষেত্রে, এই পরিমাণটি আপনার অ্যাকাউন্টে ফেরত পাঠানো হবে।",
@@ -3564,7 +3498,6 @@
 New Invoice,নতুন চালান,
 New Payment,নতুন পেমেন্ট,
 New release date should be in the future,নতুন প্রকাশের তারিখটি ভবিষ্যতে হওয়া উচিত,
-Newsletter,নিউজলেটার,
 No Account matched these filters: {},এই ফিল্টারগুলির সাথে কোনও অ্যাকাউন্ট মেলে না: {},
 No communication found.,কোনও যোগাযোগ পাওয়া যায়নি।,
 No correct answer is set for {0},কোনও সঠিক উত্তর {0 for এর জন্য সেট করা হয়নি,
@@ -3640,7 +3573,6 @@
 Please setup a default bank account for company {0},দয়া করে সংস্থার জন্য একটি ডিফল্ট ব্যাংক অ্যাকাউন্ট সেটআপ করুন {0},
 Please specify,অনুগ্রহ করে নির্দিষ্ট করুন,
 Please specify a {0},দয়া করে একটি {0} নির্দিষ্ট করুন,lead
-Printing,মুদ্রণ,
 Priority,অগ্রাধিকার,
 Priority has been changed to {0}.,অগ্রাধিকার পরিবর্তন করে {0} করা হয়েছে},
 Priority {0} has been repeated.,অগ্রাধিকার {0} পুনরাবৃত্তি হয়েছে।,
@@ -3649,7 +3581,6 @@
 Project,প্রকল্প,
 Provide the academic year and set the starting and ending date.,শিক্ষাগত বছর সরবরাহ করুন এবং শুরুর এবং শেষের তারিখটি সেট করুন।,
 Public token is missing for this bank,এই ব্যাংকের জন্য সর্বজনীন টোকেন অনুপস্থিত,
-Publish,প্রকাশ করা,
 Publish 1 Item,1 আইটেম প্রকাশ করুন,
 Publish Items,আইটেম প্রকাশ করুন,
 Publish More Items,আরও আইটেম প্রকাশ করুন,
@@ -3677,7 +3608,6 @@
 Reconciled,মিলন,
 Recruitment,সংগ্রহ,
 Red,লাল,
-Refreshing,সতেজকারক,
 Release date must be in the future,প্রকাশের তারিখ অবশ্যই ভবিষ্যতে হবে,
 Relieving Date must be greater than or equal to Date of Joining,মুক্তির তারিখ অবশ্যই যোগদানের তারিখের চেয়ে বড় বা সমান হতে হবে,
 Rename,পুনঃনামকরণ,
@@ -3721,7 +3651,6 @@
 Search for a payment,অর্থ প্রদানের জন্য অনুসন্ধান করুন,
 Search for anything ...,যে কোনও কিছুর সন্ধান করুন ...,
 Search results for,এর জন্য অনুসন্ধানের ফলাফল,
-Select All,সবগুলো নির্বাচন করা,
 Select Difference Account,ডিফারেন্স অ্যাকাউন্ট নির্বাচন করুন,
 Select a Default Priority.,একটি ডিফল্ট অগ্রাধিকার নির্বাচন করুন।,
 Select a company,একটি সংস্থা নির্বাচন করুন,
@@ -3740,11 +3669,9 @@
 Service Level Agreement has been changed to {0}.,পরিষেবা স্তরের চুক্তিটি পরিবর্তন করে {0} করা হয়েছে},
 Service Level Agreement was reset.,পরিষেবা স্তরের চুক্তিটি পুনরায় সেট করা হয়েছিল।,
 Service Level Agreement with Entity Type {0} and Entity {1} already exists.,সত্তা টাইপ Service 0} এবং সত্ত্বা {1} এর সাথে পরিষেবা স্তরের চুক্তি ইতিমধ্যে বিদ্যমান।,
-Set,সেট,
 Set Meta Tags,মেটা ট্যাগ সেট করুন,
 Set {0} in company {1},সংস্থায় {0 Set সেট করুন {1},
 Setup,সেটআপ,
-Setup Wizard,সেটআপ উইজার্ড,
 Shift Management,শিফট ম্যানেজমেন্ট,
 Show Future Payments,ভবিষ্যতের অর্থ প্রদানগুলি দেখান,
 Show Linked Delivery Notes,লিঙ্কযুক্ত বিতরণ নোটগুলি দেখান,
@@ -3815,7 +3742,6 @@
 Unreconciled,অসমর্পিত,
 Unsupported GST Category for E-Way Bill JSON generation,ই-ওয়ে বিল জেএসএন জেনারেশনের জন্য অসমর্থিত জিএসটি বিভাগ,
 Update,আপডেট,
-Update Details,আপডেট আপডেট,
 Update Taxes for Items,আইটেমগুলির জন্য ট্যাক্স আপডেট করুন,
 "Upload a bank statement, link or reconcile a bank account","কোনও ব্যাংক বিবৃতি আপলোড করুন, কোনও ব্যাংক অ্যাকাউন্টে লিঙ্ক করুন বা পুনরায় মিল করুন",
 Upload a statement,একটি বিবৃতি আপলোড করুন,
@@ -3839,7 +3765,6 @@
 XML Files Processed,এক্সএমএল ফাইলগুলি প্রক্রিয়াজাত করা হয়,
 Year,বছর,
 Yearly,বাত্সরিক,
-You,আপনি,
 You are not allowed to enroll for this course,আপনাকে এই কোর্সে ভর্তির অনুমতি নেই,
 You are not enrolled in program {0},আপনি প্রোগ্রাম in 0 in এ তালিকাভুক্ত নন,
 You can Feature upto 8 items.,আপনি 8 টি আইটেম পর্যন্ত বৈশিষ্ট্যযুক্ত করতে পারেন।,
@@ -3856,7 +3781,6 @@
 e-Way Bill already exists for this document,এই দস্তাবেজের জন্য ই-ওয়ে বিল ইতিমধ্যে বিদ্যমান,
 woocommerce - {0},WooCommerce - {0},
 {0} Coupon used are {1}. Allowed quantity is exhausted,{0 used ব্যবহৃত কুপন হ&#39;ল {1}} অনুমোদিত পরিমাণ শেষ হয়ে গেছে,
-{0} Name,{0} নাম,
 {0} Operations: {1},{0} অপারেশন: {1},
 {0} bank transaction(s) created,Transaction 0} ব্যাঙ্কের লেনদেন (গুলি) তৈরি হয়েছে,
 {0} bank transaction(s) created and {1} errors,{0} ব্যাঙ্কের লেনদেন (গুলি) তৈরি হয়েছে এবং {1} ত্রুটি,
@@ -3875,17 +3799,13 @@
 Total Income,মোট আয়,
 Total Income This Year,এই বছর মোট আয়,
 Barcode,বারকোড,
-Bold,সাহসী,
-Center,কেন্দ্র,
 Clear,পরিষ্কার,
-Comment,মন্তব্য,
 Comments,মন্তব্য,
 DocType,DOCTYPE,
 Download,ডাউনলোড,
 Left,বাম,
 Link,লিংক,
 New,নতুন,
-Not Found,খুঁজে পাওয়া যাচ্ছে না,
 Print,ছাপা,
 Reference Name,রেফারেন্স নাম,
 Refresh,সতেজ করা,
@@ -3908,7 +3828,6 @@
 Email Id,ইমেইল আইডি,
 No,না,
 Reference Doctype,রেফারেন্স DOCTYPE,
-User Id,ব্যবহারকারীর প্রমানপত্র,
 Yes,হাঁ,
 Actual ,আসল,
 Add to cart,কার্ট যোগ করুন,
@@ -4304,7 +4223,6 @@
 e.g Adjustments for:,উদাহরণস্বরূপ:,
 Section Subtotal,বিভাগ উপবিভাগ,
 Section Footer,সেকশন ফুটার,
-Position,অবস্থান,
 Cash Flow Mapping,ক্যাশ ফ্লো ম্যাপিং,
 Select Maximum Of 1,সর্বোচ্চ 1 নির্বাচন করুন,
 Is Finance Cost,অর্থ খরচ হয়,
@@ -4936,7 +4854,6 @@
 Previous Business Day,আগের ব্যবসা দিবস,
 Next Business Day,পরবর্তী ব্যবসা দিবস,
 Urgent,জরুরী,
-Crop,ফসল,
 Crop Name,ক্রপ নাম,
 Scientific Name,বৈজ্ঞানিক নাম,
 "You can define all the tasks which need to carried out for this crop here. The day field is used to mention the day on which the task needs to be carried out, 1 being the 1st day, etc.. ","আপনি এই ফসল জন্য বাহিত করা প্রয়োজন, যা সমস্ত কর্ম সংজ্ঞায়িত করতে পারেন এখানে। দিন ক্ষেত্রের যে দিনটি কাজটি করা প্রয়োজন সেটি উল্লেখ করতে ব্যবহৃত হয়, 1 দিন 1 দিন, ইত্যাদি।",
@@ -5441,7 +5358,6 @@
 To TIme,সময়,
 Course End Date,কোর্স শেষ তারিখ,
 Course Topic,কোর্সের বিষয়,
-Topic,বিষয়,
 Topic Name,টপিক নাম,
 Education Settings,শিক্ষা সেটিংস,
 Current Academic Year,বর্তমান শিক্ষাবর্ষ,
@@ -5516,7 +5432,6 @@
 Check this if the Student is residing at the Institute's Hostel.,এই চেক শিক্ষার্থীর ইন্সটিটিউটের হোস্টেল এ অবস্থিত হয়।,
 Walking,চলাফেরা,
 Institute's Bus,ইনস্টিটিউটের বাস,
-Public Transport,পাবলিক ট্রান্সপোর্ট,
 Self-Driving Vehicle,স্বচালিত যানবাহন,
 Pick/Drop by Guardian,চয়ন করুন / অবিভাবক দ্বারা ড্রপ,
 Enrolled courses,নাম নথিভুক্ত কোর্স,
@@ -5697,7 +5612,6 @@
 Default Cost Center,ডিফল্ট খরচের কেন্দ্র,
 Undeposited Funds Account,Undeposited তহবিল অ্যাকাউন্ট,
 Shopify Log,Shopify লগ,
-Request Data,ডেটা অনুরোধ,
 Shopify Settings,Shopify সেটিংস,
 status html,অবস্থা এইচটিএমএল,
 Enable Shopify,Shopify সক্ষম করুন,
@@ -5817,7 +5731,6 @@
 Exercise Instructions,অনুশীলন নির্দেশাবলী,
 Exercise Video,ভিডিওটি অনুশীলন করুন,
 Exercise Steps,ব্যায়াম পদক্ষেপ,
-Steps,পদক্ষেপ,
 Steps Table,পদক্ষেপ সারণী,
 Exercise Type Step,অনুশীলন ধরণের পদক্ষেপ,
 Max number of visit,দেখার সর্বাধিক সংখ্যা,
@@ -6001,7 +5914,6 @@
 Patient Encounter Symptom,রোগীর এনকাউন্টার লক্ষণ,
 HLC-PMR-.YYYY.-,HLC-PMR-.YYYY.-,
 Attach Medical Record,মেডিকেল রেকর্ড সংযুক্ত করুন,
-Reference DocType,রেফারেন্স ডকটাইপ,
 Spouse,পত্নী,
 Family,পরিবার,
 Schedule Details,সময়সূচী বিশদ,
@@ -6983,16 +6895,8 @@
 HTML / Banner that will show on the top of product list.,পণ্য তালিকার শীর্ষে প্রদর্শন করবে এইচটিএমএল / ব্যানার.,
 Set prefix for numbering series on your transactions,আপনার লেনদেনের উপর সিরিজ সংখ্যায়ন জন্য সেট উপসর্গ,
 Setup Series,সেটআপ সিরিজ,
-Select Transaction,নির্বাচন লেনদেন,
-Help HTML,হেল্প এইচটিএমএল,
-Series List for this Transaction,এই লেনদেনে সিরিজ তালিকা,
-User must always select,ব্যবহারকারী সবসময় নির্বাচন করতে হবে,
-Check this if you want to force the user to select a series before saving. There will be no default if you check this.,আপনি সংরক্ষণের আগে একটি সিরিজ নির্বাচন করুন ব্যবহারকারীর বাধ্য করতে চান তাহলে এই পরীক্ষা. আপনি এই পরীক্ষা যদি কোন ডিফল্ট থাকবে.,
 Update Series,আপডেট সিরিজ,
 Change the starting / current sequence number of an existing series.,একটি বিদ্যমান সিরিজের শুরু / বর্তমান ক্রম সংখ্যা পরিবর্তন করুন.,
-Prefix,উপসর্গ,
-This is the number of the last created transaction with this prefix,এই উপসর্গবিশিষ্ট সর্বশেষ নির্মিত লেনদেনের সংখ্যা,
-Update Series Number,আপডেট সিরিজ সংখ্যা,
 Quotation Lost Reason,উদ্ধৃতি লস্ট কারণ,
 A third party distributor / dealer / commission agent / affiliate / reseller who sells the companies products for a commission.,একটি কমিশন জন্য কোম্পানি পণ্য বিক্রি একটি তৃতীয় পক্ষের যারা পরিবেশক / ব্যাপারী / কমিশন এজেন্ট / অধিভুক্ত / রিসেলার.,
 Sales Partner Name,বিক্রয় অংশীদার নাম,
@@ -7687,7 +7591,6 @@
 Warehouse wise Item Balance Age and Value,গুদাম অনুসারে আইটেম ব্যালান্স বয়স এবং মূল্য,
 Work Order Stock Report,ওয়ার্ক অর্ডার স্টক রিপোর্ট,
 Work Orders in Progress,অগ্রগতির কাজ আদেশ,
-Validation Error,বৈধতা ত্রুটি,
 Automatically Process Deferred Accounting Entry,স্বয়ংক্রিয়ভাবে ডিফার্ড অ্যাকাউন্টিং এন্ট্রি প্রক্রিয়া করুন,
 Bank Clearance,ব্যাংক ছাড়পত্র,
 Bank Clearance Detail,ব্যাংক ছাড়পত্র বিশদ,
@@ -7724,45 +7627,7 @@
 Therapy Plan: ,থেরাপি পরিকল্পনা:,
 Total Counts Targeted: ,লক্ষ্য হিসাবে মোট সংখ্যা:,
 Total Counts Completed: ,সম্পূর্ণ গণনা:,
-Andaman and Nicobar Islands,আন্দামান এবং নিকোবর দ্বীপপুঞ্জ,
-Andhra Pradesh,অন্ধ্র প্রদেশ,
-Arunachal Pradesh,অরুণাচল প্রদেশ,
-Assam,আসাম,
-Bihar,বিহার,
-Chandigarh,চণ্ডীগড়,
-Chhattisgarh,ছত্তীসগ .়,
-Dadra and Nagar Haveli,দাদরা ও নগর হাভেলি,
-Daman and Diu,দামান ও দিউ,
-Delhi,দিল্লি,
-Goa,গোয়া,
-Gujarat,গুজরাট,
-Haryana,হরিয়ানা,
-Himachal Pradesh,হিমাচল প্রদেশ,
-Jammu and Kashmir,জম্মু ও কাশ্মীর,
-Jharkhand,ঝাড়খণ্ড,
-Karnataka,কর্ণাটক,
-Kerala,কেরালা,
-Lakshadweep Islands,লক্ষদ্বীপ দ্বীপপুঞ্জ,
-Madhya Pradesh,মধ্য প্রদেশ,
-Maharashtra,মহারাষ্ট্র,
-Manipur,মণিপুর,
-Meghalaya,মেঘালয়,
-Mizoram,মিজোরাম,
-Nagaland,নাগাল্যান্ড,
-Odisha,ওড়িশা,
-Other Territory,অন্যান্য অঞ্চল,
-Pondicherry,পন্ডিচেরি,
-Punjab,পাঞ্জাব,
-Rajasthan,রাজস্থান,
-Sikkim,সিকিম,
-Tamil Nadu,তামিলনাড়ু,
-Telangana,তেলঙ্গানা,
-Tripura,ত্রিপুরা,
-Uttar Pradesh,উত্তর প্রদেশ,
-Uttarakhand,উত্তরাখণ্ড,
-West Bengal,পশ্চিমবঙ্গ,
 Is Mandatory,আবশ্যক,
-Published on,প্রকাশিত,
 Service Received But Not Billed,পরিষেবা প্রাপ্ত হয়েছে তবে বিল দেওয়া হয়নি,
 Deferred Accounting Settings,স্থগিত অ্যাকাউন্টিং সেটিংস,
 Book Deferred Entries Based On,বুক ডিফার্ড এন্ট্রি উপর ভিত্তি করে,
@@ -8035,8 +7900,6 @@
 Worksheet Instructions,কার্যপত্রক নির্দেশাবলী,
 Result Legend Print,কিংবদন্তি মুদ্রণ ফলাফল,
 Print Position,মুদ্রণ অবস্থান,
-Bottom,নীচে,
-Top,শীর্ষ,
 Both,দুটোই,
 Result Legend,কিংবদন্তির ফলাফল,
 Lab Tests,ল্যাব টেস্ট,
@@ -8081,12 +7944,10 @@
 Approvers,বিতর্ক,
 The first Approver in the list will be set as the default Approver.,তালিকার প্রথম অনুমোদিতটি ডিফল্ট অনুমোদনকারী হিসাবে সেট করা হবে।,
 Shift Request Approver,শিফট অনুরোধ অনুমোদনকারী,
-PAN Number,প্যান নম্বর,
 Provident Fund Account,প্রভিডেন্ট ফান্ড অ্যাকাউন্ট,
 MICR Code,এমআইসিআর কোড,
 Repay unclaimed amount from salary,বেতন থেকে দায়হীন পরিমাণ পরিশোধ করুন ay,
 Deduction from salary,বেতন থেকে ছাড়,
-Expired Leaves,মেয়াদ শেষ হয়ে গেছে,
 If this is not checked the loan by default will be considered as a Demand Loan,এটি যদি চেক না করা হয় তবে ডিফল্ট হিসাবে loanণকে ডিমান্ড anণ হিসাবে বিবেচনা করা হবে,
 This account is used for booking loan repayments from the borrower and also disbursing loans to the borrower,এই অ্যাকাউন্টটি orণগ্রহীতা থেকে repণ পরিশোধের বুকিং এবং orণগ্রহীতাকে loansণ বিতরণের জন্য ব্যবহৃত হয়,
 This account is capital account which is used to allocate capital for loan disbursal account ,এই অ্যাকাউন্টটি মূলধন অ্যাকাউন্ট যা disণ বিতরণ অ্যাকাউন্টের জন্য মূলধন বরাদ্দ করতে ব্যবহৃত হয়,
@@ -8844,3 +8705,41 @@
 Creating Purchase Order ...,ক্রয় ক্রম তৈরি করা হচ্ছে ...,
 "Select a Supplier from the Default Suppliers of the items below. On selection, a Purchase Order will be made against items belonging to the selected Supplier only.","নীচের আইটেমগুলির ডিফল্ট সরবরাহকারী থেকে কোনও সরবরাহকারী নির্বাচন করুন। নির্বাচনের সময়, কেবলমাত্র নির্বাচিত সরবরাহকারীর অন্তর্ভুক্ত আইটেমগুলির বিরুদ্ধে ক্রয় আদেশ দেওয়া হবে।",
 Row #{}: You must select {} serial numbers for item {}.,সারি # {}: আইটেমের জন্য আপনাকে অবশ্যই}} ক্রমিক সংখ্যা নির্বাচন করতে হবে {}।,
+Add Comment,মন্তব্য যোগ করুন,
+More...,আরো ...,
+Notes,নোট,
+Payment Gateway,পেমেন্ট গেটওয়ে,
+Payment Gateway Name,পেমেন্ট গেটওয়ে নাম,
+Payments,পেমেন্টস্,
+Plan Name,পরিকল্পনা নাম,
+Portal,পোর্টাল,
+Scan Barcode,বারকোড স্ক্যান করুন,
+Some information is missing,কিছু তথ্য অনুপস্থিত,
+Successful,সফল,
+Tools,সরঞ্জাম,
+Use Sandbox,ব্যবহারের স্যান্ডবক্স,
+Busy,ব্যস্ত,
+Completed By,দ্বারা সম্পন্ন,
+Payment Failed,পেমেন্ট ব্যর্থ হয়েছে,
+Column {0},কলাম {0},
+Field Mapping,ফিল্ড ম্যাপিং,
+Not Specified,উল্লিখিত না,
+Update Type,আপডেট প্রকার,
+Dr,ডাঃ,
+End Time,শেষ সময়,
+Fetching...,আনা হচ্ছে ...,
+"It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","মনে হচ্ছে যে সার্ভারের স্ট্রাপ কনফিগারেশনের সাথে একটি সমস্যা আছে ব্যর্থতার ক্ষেত্রে, এই পরিমাণটি আপনার অ্যাকাউন্টে ফেরত পাঠানো হবে।",
+Looks like someone sent you to an incomplete URL. Please ask them to look into it.,মত কেউ একটি অসম্পূর্ণ URL এ আপনি পাঠানো হচ্ছে. তাদের তা দেখব জিজ্ঞাসা করুন.,
+Master,গুরু,
+Pay,বেতন,
+You can also copy-paste this link in your browser,এছাড়াও আপনি আপনার ব্রাউজারে এই লিঙ্কটি কপি-পেস্ট করতে পারেন,
+Verified By,কর্তৃক যাচাইকৃত,
+Invalid naming series (. missing) for {0},Invalid 0 for এর জন্য অবৈধ নামকরণ সিরিজ (। নিখোঁজ),
+Phone Number,ফোন নম্বর,
+Account SID,অ্যাকাউন্ট এসআইডি,
+Global Defaults,আন্তর্জাতিক ডিফল্ট,
+Is Mandatory,আবশ্যক,
+WhatsApp,হোয়াটসঅ্যাপ,
+Make a call,ফোন করুন,
+Approve,অনুমোদন করা,
+Reject,প্রত্যাখ্যান,
diff --git a/erpnext/translations/bs.csv b/erpnext/translations/bs.csv
index 53e9d93..7ba4a88 100644
--- a/erpnext/translations/bs.csv
+++ b/erpnext/translations/bs.csv
@@ -113,7 +113,6 @@
 Add Items,Dodaj Predmeti,
 Add Leads,Add Leads,
 Add Multiple Tasks,Dodajte više zadataka,
-Add Row,Dodaj Row,
 Add Sales Partners,Dodajte partnera za prodaju,
 Add Serial No,Dodaj serijski broj,
 Add Students,Dodaj Studenti,
@@ -211,9 +210,7 @@
 An error occurred during the update process,Došlo je do greške tokom procesa ažuriranja,
 "An item exists with same name ({0}), please change the item group name or rename the item","Stavka postoji s istim imenom ( {0} ) , molimo promijenite ime stavku grupe ili preimenovati stavku",
 Analyst,Analitičar,
-Analytics,Analitika,
 Annual Billing: {0},Godišnji Billing: {0},
-Anonymous,Anonimno,
 Another Budget record '{0}' already exists against {1} '{2}' and account '{3}' for fiscal year {4},Još jedan rekord budžeta &#39;{0}&#39; već postoji {1} &#39;{2}&#39; i račun &#39;{3}&#39; za fiskalnu godinu {4},
 Another Period Closing Entry {0} has been made after {1},Drugi period Zatvaranje Stupanje {0} je postignut nakon {1},
 Another Sales Person {0} exists with the same Employee id,Još jedna osoba Sales {0} postoji s istim ID zaposlenih,
@@ -283,14 +280,12 @@
 Attendance not submitted for {0} as {1} on leave.,Prisustvo nije dostavljeno {0} kao {1} na odsustvu.,
 Attribute table is mandatory,Atribut sto je obavezno,
 Attribute {0} selected multiple times in Attributes Table,Atribut {0} odabrani više puta u atributi tabeli,
-Author,autor,
 Authorized Signatory,Ovlašteni potpisnik,
 Auto Material Requests Generated,Auto materijala Zahtjevi Generirano,
 Auto Repeat,Auto Repeat,
 Auto repeat document updated,Automatsko ponavljanje dokumenta je ažurirano,
 Automotive,Automobilska industrija,
 Available,Dostupno,
-Available Leaves,Raspoložive liste,
 Available Qty,Dostupno Količina,
 Available Selling,Dostupna prodaja,
 Available for use date is required,Potreban je datum upotrebe,
@@ -340,7 +335,6 @@
 Base URL,Baza URL,
 Based On,Na osnovu,
 Based On Payment Terms,Na osnovu uslova plaćanja,
-Basic,Osnovni,
 Batch,Serija,
 Batch Entries,Ulazne serije,
 Batch ID is mandatory,Batch ID je obavezno,
@@ -361,7 +355,6 @@
 Billable Hours,Sati naplate,
 Billed,Naplaćeno,
 Billed Amount,Naplaćeni iznos,
-Billing,Naplata,
 Billing Address,Adresa za naplatu,
 Billing Address is same as Shipping Address,Adresa za naplatu jednaka je adresi za dostavu,
 Billing Amount,Billing Iznos,
@@ -560,7 +553,6 @@
 Consumed Qty,Potrošeno Kol,
 Consumer Products,Consumer Products,
 Contact,Kontakt,
-Contact Details,Kontakt podaci,
 Contact Us,Kontaktiraj nas,
 Content,Sadržaj,
 Content Masters,Sadržaj majstora,
@@ -715,7 +707,6 @@
 Date of Joining,Datum pristupa,
 Date of Joining must be greater than Date of Birth,Datum pristupa mora biti veći od datuma rođenja,
 Date of Transaction,Datum transakcije,
-Datetime,Datum i vrijeme,
 Day,dan,
 Debit,Zaduženje,
 Debit ({0}),Debit ({0}),
@@ -874,7 +865,6 @@
 Employee cannot report to himself.,Zaposleni ne može prijaviti samog sebe.,
 Employee {0} has already applied for {1} between {2} and {3} : ,Zaposleni {0} već je prijavio za {1} između {2} i {3}:,
 Employee {0} of grade {1} have no default leave policy,Zaposleni {0} razreda {1} nemaju nikakvu politiku za odlazni odmor,
-Enable,omogućiti,
 Enable / disable currencies.,Omogućiti / onemogućiti valute .,
 Enabled,Omogućeno,
 "Enabling 'Use for Shopping Cart', as Shopping Cart is enabled and there should be at least one Tax Rule for Shopping Cart","Omogućavanje &#39;Koristi se za korpa &quot;, kao košarica je omogućen i treba da postoji barem jedan poreza pravilo za Košarica",
@@ -905,7 +895,6 @@
 Error: Not a valid id?,Greška: Ne važeći id?,
 Estimated Cost,Procijenjeni troškovi,
 "Even if there are multiple Pricing Rules with highest priority, then following internal priorities are applied:","Čak i ako postoji više Cijene pravila s najvišim prioritetom, onda sljedeći interni prioriteti primjenjuje se:",
-Event,Događaj,
 Exchange Gain/Loss,Exchange dobitak / gubitak,
 Exchange Rate Revaluation master.,Master revalorizacije kursa,
 Exchange Rate must be same as {0} {1} ({2}),Tečajna lista moraju biti isti kao {0} {1} ({2}),
@@ -1032,7 +1021,6 @@
 From value must be less than to value in row {0},Od vrijednosti mora biti manje nego vrijednosti u redu {0},
 From {0} | {1} {2},Od {0} | {1} {2},
 Fulfillment,Ispunjenje,
-Full,Pun,
 Full Name,Ime i prezime,
 Fully Depreciated,potpuno je oslabio,
 Furnitures and Fixtures,Furnitures i raspored,
@@ -1133,7 +1121,6 @@
 Hub Sync ID,Hub Sync ID,
 Human Resource,Human Resource,
 Human Resources,Ljudski resursi,
-IFSC Code,IFSC kod,
 IGST Amount,IGST Iznos,
 IP Address,IP adresa,
 ITC Available (whether in full op part),Dostupan ITC (bilo u cjelini op. Dio),
@@ -1185,7 +1172,6 @@
 Ineligible ITC,Neprihvatljiv ITC,
 Initiated,Inicirao,
 Inpatient Record,Zapisnik o stacionarnom stanju,
-Insert,Insert,
 Installation Note,Napomena instalacije,
 Installation Note {0} has already been submitted,Napomena instalacije {0} je već potvrđena,
 Installation date cannot be before delivery date for Item {0},Datum Instalacija ne može biti prije datuma isporuke za točke {0},
@@ -1197,7 +1183,6 @@
 Insurance Start date should be less than Insurance End date,Datum osiguranje Početak bi trebao biti manji od datuma osiguranje Kraj,
 Integrated Tax,Integrirani porez,
 Inter-State Supplies,Međudržavne potrepštine,
-Interests,Interesi,
 Internet Publishing,Internet izdavaštvo,
 Intra-State Supplies,Unutarnje države,
 Introduction,Uvod,
@@ -1316,7 +1301,6 @@
 Lab testing datetime cannot be before collection datetime,Labiranje testiranja datotime ne može biti pre snimanja datetime,
 Label,Oznaka,
 Laboratory,Laboratorija,
-Language Name,Jezik,
 Large,Veliki,
 Last Communication,Zadnje Komunikacija,
 Last Communication Date,Zadnje Komunikacija Datum,
@@ -1347,8 +1331,6 @@
 Letter Heads for print templates.,Zaglavlja za ispis predložaka.,
 Level,Nivo,
 Liability,Odgovornost,
-License,Licenca,
-Limit,granica,
 Limit Crossed,Limit Crossed,
 Link to Material Request,Link na zahtev za materijal,
 List of all share transactions,Spisak svih dionica transakcija,
@@ -1359,7 +1341,6 @@
 Loans (Liabilities),Zajmovi (pasiva),
 Loans and Advances (Assets),Zajmovi i predujmovi (aktiva),
 Local,Lokalno,
-Log,Prijavite,
 Logs for maintaining sms delivery status,Dnevnici za održavanje sms statusa isporuke,
 Lost,Izgubljen,
 Lost Reasons,Izgubljeni razlozi,
@@ -1445,7 +1426,6 @@
 Medical Department,Medicinski odjel,
 Medical Record,Medicinski zapis,
 Medium,Srednji,
-Meeting,Sastanak,
 Member Activity,Član Aktivnost,
 Member ID,Član ID,
 Member Name,Ime člana,
@@ -1495,7 +1475,6 @@
 Multiple Variants,Višestruke varijante,
 Multiple fiscal years exist for the date {0}. Please set company in Fiscal Year,Višestruki fiskalne godine postoje za datum {0}. Molimo podesite kompanije u fiskalnoj godini,
 Music,Muzika,
-My Account,Moj račun,
 Name error: {0},Ime greška: {0},
 Name of new Account. Note: Please don't create accounts for Customers and Suppliers,Ime novog računa. Napomena: Molimo vas da ne stvaraju račune za kupcima i dobavljačima,
 Name or Email is mandatory,Ime ili e-obavezno,
@@ -1538,7 +1517,6 @@
 New credit limit is less than current outstanding amount for the customer. Credit limit has to be atleast {0},Novi kreditni limit je manje od trenutne preostali iznos za kupca. Kreditni limit mora biti atleast {0},
 New task,Novi zadatak,
 New {0} pricing rules are created,Stvorena su nova {0} pravila za cene,
-Newsletters,Newsletteri,
 Newspaper Publishers,novinski izdavači,
 Next,Sljedeći,
 Next Contact By cannot be same as the Lead Email Address,Sljedeća kontaktirati putem ne može biti isti kao Lead-mail adresa,
@@ -1686,7 +1664,6 @@
 Other,Drugi,
 Other Reports,Ostali izveštaji,
 "Other outward supplies(Nil rated,Exempted)","Ostale vanjske zalihe (Nil ocijenjeno, Izuzeti)",
-Others,Drugi,
 Out Qty,Od kol,
 Out Value,out vrijednost,
 Out of Order,Ne radi,
@@ -1726,7 +1703,6 @@
 Party Type and Party is mandatory for {0} account,Party Party i Party je obavezan za {0} nalog,
 Party Type is mandatory,Party Tip je obavezno,
 Party is mandatory,Party je obavezno,
-Password,Lozinka,
 Past Due Date,Datum prošlosti,
 Patient,Pacijent,
 Patient Appointment,Imenovanje pacijenta,
@@ -1784,7 +1760,6 @@
 Pharmaceutical,farmaceutski,
 Pharmaceuticals,Lijekovi,
 Physician,Lekar,
-Pincode,Poštanski broj,
 Place Of Supply (State/UT),Mjesto ponude (država / UT),
 Place Order,Place Order,
 Plan Name,Ime plana,
@@ -1896,7 +1871,6 @@
 Please select date,Molimo izaberite datum,
 Please select item code,Odaberite Šifra,
 Please select month and year,Molimo odaberite mjesec i godinu,
-Please select prefix first,Odaberite prefiks prvi,
 Please select the Company,Izaberite kompaniju,
 Please select the Multiple Tier Program type for more than one collection rules.,Molimo da izaberete tip višestrukog programa za više pravila kolekcije.,
 Please select the assessment group other than 'All Assessment Groups',"Molimo odaberite grupu procjene, osim &#39;Svi Procjena grupe&#39;",
@@ -1913,7 +1887,6 @@
 Please set Company filter blank if Group By is 'Company',Molimo podesite Company filter prazno ako Skupina Od je &#39;Company&#39;,
 Please set Default Payroll Payable Account in Company {0},Molimo podesite Uobičajeno plaće plaćaju račun poduzeća {0},
 Please set Depreciation related Accounts in Asset Category {0} or Company {1},Molimo podesite Računi se odnose amortizacije u Asset Kategorija {0} ili kompanije {1},
-Please set Email Address,Molimo podesite e-mail adresa,
 Please set GST Accounts in GST Settings,Molimo postavite GST račune u GST podešavanjima,
 Please set Hotel Room Rate on {},Molimo podesite Hotel Room Rate na {},
 Please set Number of Depreciations Booked,Molimo podesite Broj Amortizacija Booked,
@@ -1936,7 +1909,6 @@
 Please set the Email ID for the Student to send the Payment Request,Molimo da podesite Email ID za Student da pošaljete Zahtev za plaćanje,
 Please set the Item Code first,Molimo prvo postavite kod za stavku,
 Please set the Payment Schedule,Molimo postavite Raspored plaćanja,
-Please set the series to be used.,Molimo postavite seriju koja će se koristiti.,
 Please set {0} for address {1},Molimo vas podesite {0} za adresu {1},
 Please setup Students under Student Groups,Molimo da podesite studente pod studentskim grupama,
 Please specify Company,Navedite tvrtke,
@@ -1953,7 +1925,6 @@
 Point-of-Sale,Point-of-prodaju,
 Point-of-Sale Profile,Point-of-prodaju profil,
 Portal,Portal,
-Portal Settings,portal Postavke,
 Possible Supplier,moguće dobavljač,
 Postal Expenses,Poštanski troškovi,
 Posting Date,Objavljivanje Datum,
@@ -2152,12 +2123,10 @@
 Reference No is mandatory if you entered Reference Date,Reference Ne obvezno ako ušao referentnog datuma,
 Reference No.,Referentni broj,
 Reference Number,Referentni broj,
-Reference Owner,referentni Vlasnik,
 Reference Type,Referentna Tip,
 "Reference: {0}, Item Code: {1} and Customer: {2}","Referenca: {0}, Šifra: {1} i kupaca: {2}",
 References,Reference,
 Refresh Token,Refresh Token,
-Region,Regija,
 Register,Registrujte se,
 Rejected,Odbijen,
 Related,povezan,
@@ -2179,7 +2148,6 @@
 Replace BOM and update latest price in all BOMs,Zamijenite BOM i ažurirajte najnoviju cijenu u svim BOM,
 Replied,Odgovorio,
 Report,Izvjestaj,
-Report Builder,Generator izvjestaja,
 Report Type,Tip izvjestaja,
 Report Type is mandatory,Vrsta izvjestaja je obavezna,
 Reports,Izvještaji,
@@ -2355,13 +2323,11 @@
 Same Company is entered more than once,Ista firma je ušao više od jednom,
 Same item cannot be entered multiple times.,Isti stavka ne može se upisati više puta.,
 Same supplier has been entered multiple times,Istog dobavljača je ušao više puta,
-Sample,Uzorak,
 Sample Collection,Prikupljanje uzoraka,
 Sample quantity {0} cannot be more than received quantity {1},Količina uzorka {0} ne može biti veća od primljene količine {1},
 Sanctioned,sankcionisani,
 Sand,Pesak,
 Saturday,Subota,
-Saved,Sačuvane,
 Saving {0},Čuvanje {0},
 Scan Barcode,Skenirajte bar kod,
 Schedule,Raspored,
@@ -2463,7 +2429,6 @@
 Series Updated,Serija Updated,
 Series Updated Successfully,Serija Updated uspješno,
 Series is mandatory,Serija je obvezno,
-Series {0} already used in {1},Serija {0} već koristi u {1},
 Service,Usluga,
 Service Level Agreement,Ugovor o nivou usluge,
 Service Level Agreement.,Ugovor o nivou usluge.,
@@ -2479,7 +2444,6 @@
 Set Tax Rule for shopping cart,Set poreza Pravilo za košarica,
 Set as Closed,Postavi status Zatvoreno,
 Set as Completed,Postavite kao dovršeno,
-Set as Default,Postavi kao podrazumjevano,
 Set as Lost,Postavi kao Lost,
 Set as Open,Postavi status Otvoreno,
 Set default inventory account for perpetual inventory,Postaviti zadani račun inventar za trajnu inventar,
@@ -2511,7 +2475,6 @@
 Shareholder,Akcionar,
 Ship To State,Brod u državu,
 Shipments,Pošiljke,
-Shipping,Transport,
 Shipping Address,Adresa isporuke,
 "Shipping Address does not have country, which is required for this Shipping Rule","Adresa za dostavu nema zemlju, koja je potrebna za ovo Pravilo o otpremi",
 Shipping rule only applicable for Buying,Pravilo o isporuci primenjivo samo za kupovinu,
@@ -2564,7 +2527,6 @@
 Split Batch,Split Batch,
 Split Issue,Split Issue,
 Sports,sportovi,
-Standard,Standard,
 Standard Buying,Standardna kupnju,
 Standard Selling,Standardna prodaja,
 Standard contract terms for Sales or Purchase.,Standardni uvjeti ugovora za prodaju ili kupnju.,
@@ -2731,7 +2693,6 @@
 Terms and Conditions,Odredbe i uvjeti,
 Terms and Conditions Template,Uvjeti predloška,
 Territory,Regija,
-Test,Test,
 Thank you for your business!,Hvala vam za vaše poslovanje!,
 The 'From Package No.' field must neither be empty nor it's value less than 1.,&quot;Od paketa br.&quot; polje ne sme biti prazno niti je vrijednost manja od 1.,
 The Brand,The Brand,
@@ -2848,7 +2809,6 @@
 Total (Without Tax),Ukupno (bez poreza),
 Total Achieved,Ukupno Ostvareni,
 Total Actual,Ukupno Actual,
-Total Allocated Leaves,Ukupno izdvojene liste,
 Total Amount,Ukupan iznos,
 Total Amount Credited,Ukupan iznos kredita,
 Total Applicable Charges in Purchase Receipt Items table must be same as Total Taxes and Charges,Ukupno Primjenjivo Optužbe na račun za prodaju Predmeti sto mora biti isti kao Ukupni porezi i naknada,
@@ -2892,7 +2852,6 @@
 Total(Amt),Ukupno (Amt),
 Total(Qty),Ukupno (Qty),
 Traceability,Sljedivost,
-Traceback,Traceback,
 Track Leads by Lead Source.,Vodite praćenje po izvorima izvora.,
 Transaction,Transakcija,
 Transaction Date,Transakcija Datum,
@@ -2930,7 +2889,6 @@
 UOM Conversion factor is required in row {0},Faktor UOM pretvorbe je potrebno u redu {0},
 UOM coversion factor required for UOM: {0} in Item: {1},UOM faktor coversion potrebna za UOM: {0} u točki: {1},
 URL,URL,
-Unable to find DocType {0},Nije moguće pronaći DocType {0},
 Unable to find exchange rate for {0} to {1} for key date {2}. Please create a Currency Exchange record manually,Nije moguće pronaći kurs za {0} do {1} za ključni datum {2}. Molimo vas da ručno stvoriti Mjenjačnica rekord,
 Unable to find score starting at {0}. You need to have standing scores covering 0 to 100,Nije moguće pronaći rezultat od {0}. Morate imati stojeće rezultate koji pokrivaju 0 do 100,
 Unable to find variable: ,Nije moguće pronaći varijablu:,
@@ -2960,7 +2918,6 @@
 Upload your letter head and logo. (you can edit them later).,Unos glavu pismo i logo. (Možete ih kasnije uređivanje).,
 Upper Income,Viši Prihodi,
 Use Sandbox,Koristite Sandbox,
-Used Leaves,Korišćeni listovi,
 User,User,
 User ID,Korisnički ID,
 User ID not set for Employee {0},Korisnik ID nije postavljen za zaposlenika {0},
@@ -3051,7 +3008,6 @@
 Website Settings,Website Postavke,
 Wednesday,Srijeda,
 Week,sedmica,
-Weekdays,Radnim danima,
 Weekly,Tjedni,
 "Weight is mentioned,\nPlease mention ""Weight UOM"" too","Težina se spominje, \n Navedite ""Težina UOM"" previše",
 Welcome email sent,E-mail dobrodošlice,
@@ -3072,7 +3028,6 @@
 Work Order {0} must be submitted,Radni nalog {0} mora biti dostavljen,
 Work Orders Created: {0},Objavljeni radni nalogi: {0},
 Work-in-Progress Warehouse is required before Submit,Rad u tijeku Warehouse je potrebno prije Podnijeti,
-Workflow,Hodogram,
 Working,U toku,
 Working Hours,Radno vrijeme,
 Workstation,Workstation,
@@ -3102,7 +3057,6 @@
 You need to be a user other than Administrator with System Manager and Item Manager roles to register on Marketplace.,Morate biti korisnik osim administratora sa ulogama upravitelja sistema i menadžera postavki za registraciju na tržištu.,
 You need to be a user with System Manager and Item Manager roles to add users to Marketplace.,Morate biti korisnik sa ulogama System Manager i Item Manager da biste dodali korisnike u Marketplace.,
 You need to be a user with System Manager and Item Manager roles to register on Marketplace.,Potrebno je da budete korisnik sa ulogama System Manager i Item Manager za prijavljivanje na Marketplace.,
-You need to be logged in to access this page,Morate biti prijavljeni da pristupite ovoj stranici,
 You need to enable Shopping Cart,Trebate omogućiti Košarica,
 You will lose records of previously generated invoices. Are you sure you want to restart this subscription?,Izgubićete podatke o prethodno generisanim računima. Da li ste sigurni da želite ponovo pokrenuti ovu pretplatu?,
 Your Organization,Vaša organizacija,
@@ -3218,7 +3172,6 @@
 Assigned To,Dodijeljeno,
 Chat,Chat,
 Completed By,Završio,
-County,okrug,
 Day of Week,Dan Tjedan,
 "Dear System Manager,","Dragi System Manager,",
 Default Value,Zadana vrijednost,
@@ -3229,31 +3182,21 @@
 Fieldtype,Polja,
 Help Articles,Članci pomoći,
 ID,ID,
-Images,Slike,
 Import,Uvoz,
 Language,Jezik,
 Likes,Like,
 Merge with existing,Merge sa postojećim,
-Office,Ured,
 Orientation,orijentacija,
 Parent,Roditelj,
-Passive,Pasiva,
 Payment Failed,plaćanje nije uspjelo,
-Permanent,trajan,
 Personal,Osobno,
-Plant,Biljka,
 Post,Pošalji,
-Postal,Poštanski,
 Postal Code,poštanski broj,
-Previous,prijašnji,
 Provider,Provajder,
 Read Only,Read Only,
 Recipient,Primalac,
 Reviews,Recenzije,
 Sender,Pošiljaoc,
-Shop,Prodavnica,
-Subsidiary,Podružnica,
-There is some problem with the file url: {0},Postoji neki problem sa URL datoteku: {0},
 There were errors while sending email. Please try again.,Bilo je grešaka tijekom slanja e-pošte. Molimo pokušajte ponovno .,
 Values Changed,Promena vrednosti,
 or,ili,
@@ -3280,19 +3223,16 @@
 Quality Feedback Template,Predložak kvalitetne povratne informacije,
 Rules for applying different promotional schemes.,Pravila za primjenu različitih promotivnih shema.,
 Show {0},Prikaži {0},
-"Special Characters except '-', '#', '.', '/', '{{' and '}}' not allowed in naming series {0}","Posebni znakovi osim &quot;-&quot;, &quot;#&quot;, &quot;.&quot;, &quot;/&quot;, &quot;{{&quot; I &quot;}}&quot; nisu dozvoljeni u imenovanju serija {0}",
 Target Details,Detalji cilja,
 {0} already has a Parent Procedure {1}.,{0} već ima roditeljsku proceduru {1}.,
 API,API,
 Annual,godišnji,
 Change,Promjena,
 Contact Email,Kontakt email,
-Export Type,Tip izvoza,
 From Date,Od datuma,
 Group By,Group By,
 Invalid URL,Nevažeća URL adresa,
 Landscape,Pejzaž,
-Last Sync On,Poslednja sinhronizacija uključena,
 Naming Series,Imenovanje serije,
 No data to export,Nema podataka za izvoz,
 Portrait,Portret,
@@ -3302,7 +3242,6 @@
 Show Document,Prikaži dokument,
 Show Traceback,Prikaži Traceback,
 Video,Video,
-Webhook Secret,Webhook Secret,
 % Of Grand Total,% Od ukupnog iznosa,
 <b>Company</b> is a mandatory filter.,<b>Kompanija</b> je obavezan filter.,
 <b>From Date</b> is a mandatory filter.,<b>From Date</b> je obavezan filtar.,
@@ -3358,7 +3297,6 @@
 BOM Comparison Tool,Alat za upoređivanje BOM-a,
 BOM recursion: {0} cannot be child of {1},BOM rekurzija: {0} ne može biti dijete od {1},
 BOM recursion: {0} cannot be parent or child of {1},BOM rekurzija: {0} ne može biti roditelj ili dijete od {1},
-Back to Home,Povratak na početnu,
 Back to Messages,Nazad na poruke,
 Bank Data mapper doesn't exist,Map Data Mapper ne postoji,
 Bank Details,Bankovni detalji,
@@ -3420,7 +3358,6 @@
 Currency,Valuta,
 Current Status,Trenutni status,
 Customer PO,Potrošački PO,
-Customize,Prilagodite,
 Daily,Svakodnevno,
 Date,Datum,
 Date of Birth cannot be greater than Joining Date.,Datum rođenja ne može biti veći od datuma pridruživanja.,
@@ -3454,7 +3391,6 @@
 ERPNext could not find any matching payment entry,ERPNext nije mogao pronaći nijedan odgovarajući unos za plaćanje,
 Earliest Age,Najranije doba,
 Edit Details,Uredite detalje,
-Edit Profile,Uredi profil,
 Either GST Transporter ID or Vehicle No is required if Mode of Transport is Road,"Ako je način prevoza cestovni, nije potreban ili GST Transporter ID ili vozilo",
 Email,Email,
 Email Campaigns,Kampanja e-pošte,
@@ -3482,7 +3418,6 @@
 Fetch Items from Warehouse,Dohvaćanje predmeta iz skladišta,
 Fetching...,Dohvaćanje ...,
 Field,polje,
-File Manager,File Manager,
 Filters,Filteri,
 Finding linked payments,Pronalaženje povezanih plaćanja,
 Fleet Management,Fleet Management,
@@ -3521,7 +3456,6 @@
 Incorrect Warehouse,Pogrešno skladište,
 Invalid Barcode. There is no Item attached to this barcode.,Nevažeći barkod. Nijedna stavka nije priložena ovom barkodu.,
 Invalid credentials,Nevažeće vjerodajnice,
-Invite as User,Pozovi kao korisnika,
 Issue Priority.,Prioritet pitanja.,
 Issue Type.,Vrsta izdanja,
 "It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","Čini se da postoji problem sa konfiguracijom trake servera. U slučaju neuspeha, iznos će biti vraćen na vaš račun.",
@@ -3564,7 +3498,6 @@
 New Invoice,Nova faktura,
 New Payment,Nova uplata,
 New release date should be in the future,Novi datum izlaska trebao bi biti u budućnosti,
-Newsletter,Newsletter,
 No Account matched these filters: {},Nijedan račun ne odgovara ovim filterima: {},
 No communication found.,Nije pronađena komunikacija.,
 No correct answer is set for {0},Nije postavljen tačan odgovor za {0},
@@ -3640,7 +3573,6 @@
 Please setup a default bank account for company {0},Postavite zadani bankovni račun za kompaniju {0},
 Please specify,Navedite,
 Please specify a {0},Navedite {0},lead
-Printing,Štampanje,
 Priority,Prioritet,
 Priority has been changed to {0}.,Prioritet je promijenjen u {0}.,
 Priority {0} has been repeated.,Prioritet {0} je ponovljen.,
@@ -3649,7 +3581,6 @@
 Project,Projekat,
 Provide the academic year and set the starting and ending date.,Navedite akademsku godinu i postavite datum početka i završetka.,
 Public token is missing for this bank,Javni token nedostaje za ovu banku,
-Publish,Objavite,
 Publish 1 Item,Objavite 1 predmet,
 Publish Items,Objavite stavke,
 Publish More Items,Objavite još predmeta,
@@ -3677,7 +3608,6 @@
 Reconciled,Pomirjen,
 Recruitment,regrutacija,
 Red,Crven,
-Refreshing,Osvežavajuće,
 Release date must be in the future,Datum izlaska mora biti u budućnosti,
 Relieving Date must be greater than or equal to Date of Joining,Datum oslobađanja mora biti veći ili jednak datumu pridruživanja,
 Rename,preimenovati,
@@ -3721,7 +3651,6 @@
 Search for a payment,Potražite plaćanje,
 Search for anything ...,Traži bilo šta ...,
 Search results for,Rezultati pretrage za,
-Select All,Odaberite sve,
 Select Difference Account,Odaberite račun razlike,
 Select a Default Priority.,Odaberite zadani prioritet.,
 Select a company,Odaberite kompaniju,
@@ -3740,11 +3669,9 @@
 Service Level Agreement has been changed to {0}.,Ugovor o nivou usluge izmenjen je u {0}.,
 Service Level Agreement was reset.,Ugovor o nivou usluge je resetiran.,
 Service Level Agreement with Entity Type {0} and Entity {1} already exists.,Ugovor o nivou usluge sa tipom entiteta {0} i entitetom {1} već postoji.,
-Set,Set,
 Set Meta Tags,Postavljanje meta tagova,
 Set {0} in company {1},Set {0} u kompaniji {1},
 Setup,Podešavanje,
-Setup Wizard,Čarobnjak za postavljanje,
 Shift Management,Shift Management,
 Show Future Payments,Prikaži buduće isplate,
 Show Linked Delivery Notes,Prikaži povezane bilješke isporuke,
@@ -3815,7 +3742,6 @@
 Unreconciled,Neusklađeno,
 Unsupported GST Category for E-Way Bill JSON generation,Nepodržana GST kategorija za e-Way Bill JSON generacije,
 Update,Ažurirati,
-Update Details,Ažurirajte detalje,
 Update Taxes for Items,Ažurirajte porez na stavke,
 "Upload a bank statement, link or reconcile a bank account","Pošaljite bankovni izvod, povežite ili usklađujete bankovni račun",
 Upload a statement,Pošaljite izjavu,
@@ -3839,7 +3765,6 @@
 XML Files Processed,Obrađene XML datoteke,
 Year,Godina,
 Yearly,Godišnji,
-You,Vi,
 You are not allowed to enroll for this course,Nije vam dopušteno da se upišete na ovaj kurs,
 You are not enrolled in program {0},Niste upisani u program {0},
 You can Feature upto 8 items.,Možete predstaviti do 8 predmeta.,
@@ -3856,7 +3781,6 @@
 e-Way Bill already exists for this document,Za ovaj dokument već postoji e-Way Bill,
 woocommerce - {0},woocommerce - {0},
 {0} Coupon used are {1}. Allowed quantity is exhausted,{0} Kupon se koristi {1}. Dozvoljena količina se iscrpljuje,
-{0} Name,{0} Ime,
 {0} Operations: {1},{0} Operacije: {1},
 {0} bank transaction(s) created,{0} Napravljene su bankarske transakcije,
 {0} bank transaction(s) created and {1} errors,{0} napravljene bankarske transakcije i greške {1},
@@ -3875,17 +3799,13 @@
 Total Income,Ukupni prihod,
 Total Income This Year,Ukupni prihod u ovoj godini,
 Barcode,Barkod,
-Bold,Hrabro,
-Center,Centar,
 Clear,Jasno,
-Comment,Komentiraj,
 Comments,Komentari,
 DocType,DocType,
 Download,Skinuti,
 Left,Lijevo,
 Link,Veza,
 New,Novo,
-Not Found,Not found,
 Print,Ispis,
 Reference Name,Referentno ime,
 Refresh,Osvježi,
@@ -3908,7 +3828,6 @@
 Email Id,Email ID,
 No,Ne,
 Reference Doctype,Referentna DOCTYPEhtml,
-User Id,Korisnički broj,
 Yes,Da,
 Actual ,Stvaran,
 Add to cart,Dodaj u košaricu,
@@ -4304,7 +4223,6 @@
 e.g Adjustments for:,npr. prilagođavanja za:,
 Section Subtotal,Sekcija subota,
 Section Footer,Segment Footer,
-Position,Pozicija,
 Cash Flow Mapping,Mapiranje tokova gotovine,
 Select Maximum Of 1,Izaberite maksimum od 1,
 Is Finance Cost,Da li je finansijski trošak,
@@ -4936,7 +4854,6 @@
 Previous Business Day,Prethodni radni dan,
 Next Business Day,Sledeći radni dan,
 Urgent,Hitan,
-Crop,Rezati,
 Crop Name,Naziv žetve,
 Scientific Name,Naučno ime,
 "You can define all the tasks which need to carried out for this crop here. The day field is used to mention the day on which the task needs to be carried out, 1 being the 1st day, etc.. ","Možete definisati sve zadatke koje je potrebno izvršiti za ovu žetvu ovdje. Dnevno polje se koristi da se pomene dan na koji se zadatak treba izvršiti, 1 je 1. dan itd.",
@@ -5441,7 +5358,6 @@
 To TIme,Za vrijeme,
 Course End Date,Naravno Završni datum,
 Course Topic,Tema kursa,
-Topic,tema,
 Topic Name,Topic Name,
 Education Settings,Obrazovne postavke,
 Current Academic Year,Trenutni akademske godine,
@@ -5516,7 +5432,6 @@
 Check this if the Student is residing at the Institute's Hostel.,Označite ovu ako student boravi na Instituta Hostel.,
 Walking,hodanje,
 Institute's Bus,Institutski autobus,
-Public Transport,Javni prijevoz,
 Self-Driving Vehicle,Self-vožnje vozila,
 Pick/Drop by Guardian,Pick / Drop Guardian,
 Enrolled courses,upisani kurseve,
@@ -5697,7 +5612,6 @@
 Default Cost Center,Standard Cost Center,
 Undeposited Funds Account,Račun Undeposited Funds,
 Shopify Log,Shopify Log,
-Request Data,Zahtevajte podatke,
 Shopify Settings,Shopify Settings,
 status html,status html,
 Enable Shopify,Omogući Shopify,
@@ -5817,7 +5731,6 @@
 Exercise Instructions,Upute za vježbu,
 Exercise Video,Video za vježbu,
 Exercise Steps,Koraci vježbanja,
-Steps,Koraci,
 Steps Table,Tabela koraka,
 Exercise Type Step,Tip vježbe korak,
 Max number of visit,Maksimalan broj poseta,
@@ -6001,7 +5914,6 @@
 Patient Encounter Symptom,Simptom susreta s pacijentom,
 HLC-PMR-.YYYY.-,HLC-PMR-YYYY.-,
 Attach Medical Record,Priložite medicinsku evidenciju,
-Reference DocType,Referenca DocType,
 Spouse,Supružnik,
 Family,Porodica,
 Schedule Details,Detalji rasporeda,
@@ -6983,16 +6895,8 @@
 HTML / Banner that will show on the top of product list.,HTML / baner koji će se prikazivati na vrhu liste proizvoda.,
 Set prefix for numbering series on your transactions,Postavite prefiks za numeriranje niza na svoje transakcije,
 Setup Series,Postavljanje Serija,
-Select Transaction,Odaberite transakciju,
-Help HTML,HTML pomoć,
-Series List for this Transaction,Serija Popis za ovu transakciju,
-User must always select,Korisničko uvijek mora odabrati,
-Check this if you want to force the user to select a series before saving. There will be no default if you check this.,Označite ovo ako želite prisiliti korisniku odabir seriju prije spremanja. Tu će biti zadana ako to provjerili.,
 Update Series,Update serija,
 Change the starting / current sequence number of an existing series.,Promjena polaznu / tekući redni broj postojeće serije.,
-Prefix,Prefiks,
-This is the number of the last created transaction with this prefix,To je broj zadnjeg stvorio transakcije s ovim prefiksom,
-Update Series Number,Update serije Broj,
 Quotation Lost Reason,Razlog nerealizirane ponude,
 A third party distributor / dealer / commission agent / affiliate / reseller who sells the companies products for a commission.,A treće strane distributera / trgovca / komisije agent / affiliate / prodavače koji prodaje kompanije proizvoda za proviziju.,
 Sales Partner Name,Prodaja Ime partnera,
@@ -7687,7 +7591,6 @@
 Warehouse wise Item Balance Age and Value,Skladno mudro Stavka Balansno doba i vrijednost,
 Work Order Stock Report,Izveštaj o radnom nalogu,
 Work Orders in Progress,Radni nalogi u toku,
-Validation Error,Pogreška provjere,
 Automatically Process Deferred Accounting Entry,Automatski obradi odgođeni knjigovodstveni unos,
 Bank Clearance,Potvrda banke,
 Bank Clearance Detail,Detalji o odobrenju banke,
@@ -7724,45 +7627,7 @@
 Therapy Plan: ,Plan terapije:,
 Total Counts Targeted: ,Ukupno ciljano brojanje:,
 Total Counts Completed: ,Ukupno završeno brojanje:,
-Andaman and Nicobar Islands,Andamanska i Nikobarska ostrva,
-Andhra Pradesh,Andhra Pradesh,
-Arunachal Pradesh,Arunachal Pradesh,
-Assam,Assam,
-Bihar,Bihar,
-Chandigarh,Chandigarh,
-Chhattisgarh,Chhattisgarh,
-Dadra and Nagar Haveli,Dadra i Nagar Haveli,
-Daman and Diu,Daman i Diu,
-Delhi,Delhi,
-Goa,Goa,
-Gujarat,Gujarat,
-Haryana,Haryana,
-Himachal Pradesh,Himachal Pradesh,
-Jammu and Kashmir,Džamu i Kašmir,
-Jharkhand,Jharkhand,
-Karnataka,Karnataka,
-Kerala,Kerala,
-Lakshadweep Islands,Ostrva Lakshadweep,
-Madhya Pradesh,Madhya Pradesh,
-Maharashtra,Maharashtra,
-Manipur,Manipur,
-Meghalaya,Meghalaya,
-Mizoram,Mizoram,
-Nagaland,Nagaland,
-Odisha,Odisha,
-Other Territory,Ostala teritorija,
-Pondicherry,Pondicherry,
-Punjab,Punjab,
-Rajasthan,Rajasthan,
-Sikkim,Sikkim,
-Tamil Nadu,Tamil Nadu,
-Telangana,Telangana,
-Tripura,Tripura,
-Uttar Pradesh,Uttar Pradesh,
-Uttarakhand,Uttarakhand,
-West Bengal,Zapadni Bengal,
 Is Mandatory,Je obavezna,
-Published on,Objavljeno,
 Service Received But Not Billed,"Usluga primljena, ali ne naplaćena",
 Deferred Accounting Settings,Postavke odgođenog računovodstva,
 Book Deferred Entries Based On,Rezervirajte odložene unose na osnovu,
@@ -8035,8 +7900,6 @@
 Worksheet Instructions,Upute za radni list,
 Result Legend Print,Rezultat Legend Print,
 Print Position,Položaj ispisa,
-Bottom,Dno,
-Top,Vrh,
 Both,Oboje,
 Result Legend,Legenda rezultata,
 Lab Tests,Laboratorijski testovi,
@@ -8081,12 +7944,10 @@
 Approvers,Odobrivači,
 The first Approver in the list will be set as the default Approver.,Prvi odobravatelj na listi postavit će se kao zadani odobravatelj.,
 Shift Request Approver,Odobrivač zahtjeva za smjenom,
-PAN Number,PAN broj,
 Provident Fund Account,Račun osiguravajućeg fonda,
 MICR Code,MICR kod,
 Repay unclaimed amount from salary,Otplatite neiskorišteni iznos iz plate,
 Deduction from salary,Odbitak od plate,
-Expired Leaves,Isteklo lišće,
 If this is not checked the loan by default will be considered as a Demand Loan,"Ako ovo nije potvrđeno, zajam će se prema zadanim postavkama smatrati zajmom na zahtjev",
 This account is used for booking loan repayments from the borrower and also disbursing loans to the borrower,Ovaj račun koristi se za rezerviranje otplate zajma od zajmoprimca i za isplatu zajmova zajmoprimcu,
 This account is capital account which is used to allocate capital for loan disbursal account ,Ovaj račun je račun kapitala koji se koristi za alokaciju kapitala za račun izdvajanja kredita,
@@ -8844,3 +8705,41 @@
 Creating Purchase Order ...,Kreiranje narudžbenice ...,
 "Select a Supplier from the Default Suppliers of the items below. On selection, a Purchase Order will be made against items belonging to the selected Supplier only.","Odaberite dobavljača od zadanih dobavljača dolje navedenih stavki. Nakon odabira, narudžbenica će se izvršiti samo za proizvode koji pripadaju odabranom dobavljaču.",
 Row #{}: You must select {} serial numbers for item {}.,Red # {}: Morate odabrati {} serijske brojeve za stavku {}.,
+Add Comment,Dodaj komentar,
+More...,Više ...,
+Notes,Bilješke,
+Payment Gateway,Payment Gateway,
+Payment Gateway Name,Naziv Gateway Gateway-a,
+Payments,Plaćanja,
+Plan Name,Ime plana,
+Portal,Portal,
+Scan Barcode,Skenirajte bar kod,
+Some information is missing,Neke informacije nedostaju,
+Successful,Uspešno,
+Tools,Alati,
+Use Sandbox,Koristite Sandbox,
+Busy,Zauzeto,
+Completed By,Završio,
+Payment Failed,plaćanje nije uspjelo,
+Column {0},Stupac {0},
+Field Mapping,Mapiranje polja,
+Not Specified,Nije određeno,
+Update Type,Tip ažuriranja,
+Dr,Doktor,
+End Time,End Time,
+Fetching...,Dohvaćanje ...,
+"It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","Čini se da postoji problem sa konfiguracijom trake servera. U slučaju neuspeha, iznos će biti vraćen na vaš račun.",
+Looks like someone sent you to an incomplete URL. Please ask them to look into it.,Izgleda kao da je neko poslao na nepotpune URL. Zamolite ih da pogleda u nju.,
+Master,Majstor,
+Pay,Platiti,
+You can also copy-paste this link in your browser,Također možete copy-paste ovaj link u vašem pregledniku,
+Verified By,Ovjeren od strane,
+Invalid naming series (. missing) for {0},Nevažeća serija imenovanja (. Nedostaje) za {0},
+Phone Number,Telefonski broj,
+Account SID,SID računa,
+Global Defaults,Globalne zadane postavke,
+Is Mandatory,Je obavezna,
+WhatsApp,WhatsApp,
+Make a call,Pozovite,
+Approve,odobriti,
+Reject,odbiti,
diff --git a/erpnext/translations/ca.csv b/erpnext/translations/ca.csv
index 4ca1435..cce1f3a 100644
--- a/erpnext/translations/ca.csv
+++ b/erpnext/translations/ca.csv
@@ -113,7 +113,6 @@
 Add Items,Afegir els articles,
 Add Leads,Add Leads,
 Add Multiple Tasks,Afegeix diverses tasques,
-Add Row,Afegir fila,
 Add Sales Partners,Afegiu socis de vendes,
 Add Serial No,Afegir Número de sèrie,
 Add Students,Afegir estudiants,
@@ -211,9 +210,7 @@
 An error occurred during the update process,S&#39;ha produït un error durant el procés d&#39;actualització,
 "An item exists with same name ({0}), please change the item group name or rename the item","Hi ha un element amb el mateix nom ({0}), canvieu el nom de grup d'articles o canviar el nom de l'element",
 Analyst,Analista,
-Analytics,analítica,
 Annual Billing: {0},Facturació anual: {0},
-Anonymous,Anònim,
 Another Budget record '{0}' already exists against {1} '{2}' and account '{3}' for fiscal year {4},Un altre rècord pressupostari &#39;{0}&#39; ja existeix contra {1} &#39;{2}&#39; i compte &#39;{3}&#39; per a l&#39;any fiscal {4},
 Another Period Closing Entry {0} has been made after {1},Una altra entrada Període de Tancament {0} s'ha fet després de {1},
 Another Sales Person {0} exists with the same Employee id,Hi ha una altra Sales Person {0} amb el mateix ID d&#39;empleat,
@@ -283,14 +280,12 @@
 Attendance not submitted for {0} as {1} on leave.,L&#39;assistència no s&#39;ha enviat per {0} com {1} en excedència.,
 Attribute table is mandatory,Taula d&#39;atributs és obligatori,
 Attribute {0} selected multiple times in Attributes Table,Atribut {0} seleccionat diverses vegades en la taula Atributs,
-Author,autor,
 Authorized Signatory,Signant Autoritzat,
 Auto Material Requests Generated,Les sol·licituds de material auto generada,
 Auto Repeat,Repetició automàtica,
 Auto repeat document updated,S&#39;ha actualitzat el document de repetició automàtica,
 Automotive,Automòbil,
 Available,Disponible,
-Available Leaves,Fulles disponibles,
 Available Qty,Disponible Quantitat,
 Available Selling,Venda disponible,
 Available for use date is required,Disponible per a la data d&#39;ús,
@@ -340,7 +335,6 @@
 Base URL,URL base,
 Based On,Basat en,
 Based On Payment Terms,Basat en termes de pagament,
-Basic,Bàsic,
 Batch,Lot,
 Batch Entries,Entrades per lots,
 Batch ID is mandatory,Identificació del lot és obligatori,
@@ -361,7 +355,6 @@
 Billable Hours,Hores factibles,
 Billed,Facturat,
 Billed Amount,Quantitat facturada,
-Billing,Facturació,
 Billing Address,Direcció De Enviament,
 Billing Address is same as Shipping Address,L’adreça de facturació és la mateixa que l’adreça d’enviament,
 Billing Amount,Facturació Monto,
@@ -560,7 +553,6 @@
 Consumed Qty,Quantitat utilitzada,
 Consumer Products,Productes de Consum,
 Contact,Contacte,
-Contact Details,Detalls de contacte,
 Contact Us,Contacta amb nosaltres,
 Content,Contingut,
 Content Masters,Mestres de contingut,
@@ -715,7 +707,6 @@
 Date of Joining,Data d'ingrés,
 Date of Joining must be greater than Date of Birth,Data d'ingrés ha de ser major que la data de naixement,
 Date of Transaction,Data de la transacció,
-Datetime,Data i hora,
 Day,dia,
 Debit,Dèbit,
 Debit ({0}),Deute ({0}),
@@ -874,7 +865,6 @@
 Employee cannot report to himself.,Empleat no pot informar-se a si mateix.,
 Employee {0} has already applied for {1} between {2} and {3} : ,L&#39;empleat {0} ja ha sol·licitat {1} entre {2} i {3}:,
 Employee {0} of grade {1} have no default leave policy,L&#39;empleat {0} del grau {1} no té una política d&#39;abandonament predeterminat,
-Enable,Permetre,
 Enable / disable currencies.,Activar / desactivar les divises.,
 Enabled,Activat,
 "Enabling 'Use for Shopping Cart', as Shopping Cart is enabled and there should be at least one Tax Rule for Shopping Cart","Habilitació d &#39; «ús de Compres&#39;, com cistella de la compra és activat i ha d&#39;haver almenys una regla fiscal per Compres",
@@ -905,7 +895,6 @@
 Error: Not a valid id?,Error: No és un document d&#39;identitat vàlid?,
 Estimated Cost,Cost estimat,
 "Even if there are multiple Pricing Rules with highest priority, then following internal priorities are applied:","Fins i tot si hi ha diverses regles de preus amb major prioritat, s'apliquen prioritats internes:",
-Event,Esdeveniment,
 Exchange Gain/Loss,Guany en Canvi / Pèrdua,
 Exchange Rate Revaluation master.,Mestre de revaloració de tipus de canvi.,
 Exchange Rate must be same as {0} {1} ({2}),Tipus de canvi ha de ser el mateix que {0} {1} ({2}),
@@ -1032,7 +1021,6 @@
 From value must be less than to value in row {0},De valor ha de ser inferior al valor de la fila {0},
 From {0} | {1} {2},Des {0} | {1} {2},
 Fulfillment,Realització,
-Full,Complet,
 Full Name,Nom complet,
 Fully Depreciated,Estant totalment amortitzats,
 Furnitures and Fixtures,Mobles i accessoris,
@@ -1133,7 +1121,6 @@
 Hub Sync ID,Identificador de sincronització del concentrador,
 Human Resource,Recursos humans,
 Human Resources,Recursos humans,
-IFSC Code,Codi IFSC,
 IGST Amount,Import de l&#39;IGST,
 IP Address,Adreça IP,
 ITC Available (whether in full op part),TIC disponible (en qualsevol part opcional),
@@ -1185,7 +1172,6 @@
 Ineligible ITC,TIC no elegible,
 Initiated,Iniciada,
 Inpatient Record,Registre d&#39;hospitalització,
-Insert,Insereix,
 Installation Note,Nota d'instal·lació,
 Installation Note {0} has already been submitted,La Nota d'Instal·lació {0} ja s'ha presentat,
 Installation date cannot be before delivery date for Item {0},Data d'instal·lació no pot ser abans de la data de lliurament d'article {0},
@@ -1197,7 +1183,6 @@
 Insurance Start date should be less than Insurance End date,data d&#39;inici d&#39;assegurança ha de ser inferior a la data d&#39;Assegurances Fi,
 Integrated Tax,Impost integrat,
 Inter-State Supplies,Subministraments entre Estats,
-Interests,interessos,
 Internet Publishing,Publicant a Internet,
 Intra-State Supplies,Subministraments intraestatals,
 Introduction,Introducció,
@@ -1316,7 +1301,6 @@
 Lab testing datetime cannot be before collection datetime,La prova de laboratori datetime no pot ser abans de la data de cobrament,
 Label,Etiqueta,
 Laboratory,Laboratori,
-Language Name,Nom d&#39;idioma,
 Large,Gran,
 Last Communication,Última comunicació,
 Last Communication Date,Darrera data de comunicació,
@@ -1347,8 +1331,6 @@
 Letter Heads for print templates.,Caps de lletres per a les plantilles d'impressió.,
 Level,Nivell,
 Liability,Responsabilitat,
-License,Llicència,
-Limit,límit,
 Limit Crossed,límit creuades,
 Link to Material Request,Enllaç a la sol·licitud de material,
 List of all share transactions,Llista de totes les transaccions d&#39;accions,
@@ -1359,7 +1341,6 @@
 Loans (Liabilities),Préstecs (passius),
 Loans and Advances (Assets),Préstecs i bestretes (Actius),
 Local,Local,
-Log,Sessió,
 Logs for maintaining sms delivery status,Registres per mantenir l&#39;estat de lliurament de SMS,
 Lost,Perdut,
 Lost Reasons,Motius perduts,
@@ -1445,7 +1426,6 @@
 Medical Department,Departament mèdic,
 Medical Record,Registre mèdic,
 Medium,Medium,
-Meeting,Reunió,
 Member Activity,Activitat membre,
 Member ID,Identificador de membre,
 Member Name,Nom de membre,
@@ -1495,7 +1475,6 @@
 Multiple Variants,Variants múltiples,
 Multiple fiscal years exist for the date {0}. Please set company in Fiscal Year,"Hi ha diversos exercicis per a la data {0}. Si us plau, estableix la companyia en l&#39;exercici fiscal",
 Music,Música,
-My Account,El meu compte,
 Name error: {0},Nom d&#39;error: {0},
 Name of new Account. Note: Please don't create accounts for Customers and Suppliers,Nom del nou compte. Nota: Si us plau no crear comptes de clients i proveïdors,
 Name or Email is mandatory,Nom o Email és obligatori,
@@ -1538,7 +1517,6 @@
 New credit limit is less than current outstanding amount for the customer. Credit limit has to be atleast {0},Nou límit de crèdit és menor que la quantitat pendent actual per al client. límit de crèdit ha de ser almenys {0},
 New task,Nova tasca,
 New {0} pricing rules are created,Es creen noves regles de preus {0},
-Newsletters,Butlletins,
 Newspaper Publishers,Editors de Newspapers,
 Next,Següent,
 Next Contact By cannot be same as the Lead Email Address,Per següent Contacte no pot ser la mateixa que la de plom Adreça de correu electrònic,
@@ -1686,7 +1664,6 @@
 Other,Un altre,
 Other Reports,Altres informes,
 "Other outward supplies(Nil rated,Exempted)","Altres subministraments externs (Nil, eximitat)",
-Others,Altres,
 Out Qty,Quantitat de sortida,
 Out Value,Valor fora,
 Out of Order,No funciona,
@@ -1726,7 +1703,6 @@
 Party Type and Party is mandatory for {0} account,El tipus de festa i la festa són obligatoris per al compte {0},
 Party Type is mandatory,Tipus del partit és obligatori,
 Party is mandatory,Part és obligatòria,
-Password,Contrasenya,
 Past Due Date,Data vençuda,
 Patient,Pacient,
 Patient Appointment,Cita del pacient,
@@ -1784,7 +1760,6 @@
 Pharmaceutical,Farmacèutic,
 Pharmaceuticals,Farmacèutics,
 Physician,Metge,
-Pincode,Codi PIN,
 Place Of Supply (State/UT),Lloc de subministrament (Estat / UT),
 Place Order,Poseu l&#39;ordre,
 Plan Name,Nom del pla,
@@ -1896,7 +1871,6 @@
 Please select date,Si us plau seleccioni la data,
 Please select item code,Seleccioneu el codi de l'article,
 Please select month and year,Selecciona el mes i l'any,
-Please select prefix first,Seleccioneu el prefix primer,
 Please select the Company,Seleccioneu la Companyia,
 Please select the Multiple Tier Program type for more than one collection rules.,Seleccioneu el tipus de programa de nivell múltiple per a més d&#39;una regla de recopilació.,
 Please select the assessment group other than 'All Assessment Groups',"Si us plau, seleccioneu el grup d&#39;avaluació que no sigui &#39;Tots els grups d&#39;avaluació&#39;",
@@ -1913,7 +1887,6 @@
 Please set Company filter blank if Group By is 'Company',Si us plau ajust empresa de filtres en blanc si és Agrupa per &#39;empresa&#39;,
 Please set Default Payroll Payable Account in Company {0},"Si us plau, estableix nòmina compte per pagar per defecte en l&#39;empresa {0}",
 Please set Depreciation related Accounts in Asset Category {0} or Company {1},"Si us plau, estableix els comptes relacionats de depreciació d&#39;actius en Categoria {0} o de la seva empresa {1}",
-Please set Email Address,"Si us plau, estableix Adreça de correu electrònic",
 Please set GST Accounts in GST Settings,Establiu els Comptes GST a la configuració de GST,
 Please set Hotel Room Rate on {},Estableix la tarifa de l&#39;habitació de l&#39;hotel a {},
 Please set Number of Depreciations Booked,"Si us plau, ajusteu el número d&#39;amortitzacions Reservats",
@@ -1936,7 +1909,6 @@
 Please set the Email ID for the Student to send the Payment Request,Configureu l&#39;identificador de correu electrònic de l&#39;estudiant per enviar la sol·licitud de pagament,
 Please set the Item Code first,Configureu primer el codi de l&#39;element,
 Please set the Payment Schedule,Definiu la planificació de pagaments,
-Please set the series to be used.,Estableix la sèrie a utilitzar.,
 Please set {0} for address {1},Definiu {0} per a l&#39;adreça {1},
 Please setup Students under Student Groups,Configureu els estudiants sota grups d&#39;estudiants,
 Please specify Company,"Si us plau, especifiqui l'empresa",
@@ -1953,7 +1925,6 @@
 Point-of-Sale,Punt de venda,
 Point-of-Sale Profile,Punt de Venda Perfil,
 Portal,Portal,
-Portal Settings,Característiques del portal,
 Possible Supplier,Possible proveïdor,
 Postal Expenses,Despeses postals,
 Posting Date,Data de publicació,
@@ -2152,12 +2123,10 @@
 Reference No is mandatory if you entered Reference Date,Reference No és obligatori si introduir Data de Referència,
 Reference No.,Número de referència.,
 Reference Number,Número de referència,
-Reference Owner,referència propietari,
 Reference Type,Tipus de referència,
 "Reference: {0}, Item Code: {1} and Customer: {2}","Referència: {0}, Codi de l&#39;article: {1} i el Client: {2}",
 References,Referències,
 Refresh Token,actualitzar Token,
-Region,Regió,
 Register,Registre,
 Rejected,Rebutjat,
 Related,connex,
@@ -2179,7 +2148,6 @@
 Replace BOM and update latest price in all BOMs,Substituïu BOM i actualitzeu el preu més recent en totes les BOM,
 Replied,Respost,
 Report,Informe,
-Report Builder,Generador d'informes,
 Report Type,Tipus d'informe,
 Report Type is mandatory,Tipus d'informe és obligatori,
 Reports,Informes,
@@ -2355,13 +2323,11 @@
 Same Company is entered more than once,Igual Company s&#39;introdueix més d&#39;una vegada,
 Same item cannot be entered multiple times.,El mateix article no es pot introduir diverses vegades.,
 Same supplier has been entered multiple times,Mateix proveïdor s&#39;ha introduït diverses vegades,
-Sample,Mostra,
 Sample Collection,Col.lecció de mostres,
 Sample quantity {0} cannot be more than received quantity {1},La quantitat de mostra {0} no pot ser més de la quantitat rebuda {1},
 Sanctioned,sancionada,
 Sand,Sorra,
 Saturday,Dissabte,
-Saved,Saved,
 Saving {0},S&#39;està desant {0},
 Scan Barcode,Escanejar codi de barres,
 Schedule,Horari,
@@ -2463,7 +2429,6 @@
 Series Updated,Sèries Actualitzat,
 Series Updated Successfully,Sèrie actualitzat correctament,
 Series is mandatory,Sèries és obligatori,
-Series {0} already used in {1},La sèrie {0} ja s'utilitza a {1},
 Service,Servei,
 Service Level Agreement,Acord de nivell de servei,
 Service Level Agreement.,Acord de nivell de servei.,
@@ -2479,7 +2444,6 @@
 Set Tax Rule for shopping cart,Estableixi la regla fiscal de carret de la compra,
 Set as Closed,Establir com Tancada,
 Set as Completed,Estableix com a completat,
-Set as Default,Estableix com a predeterminat,
 Set as Lost,Establir com a Perdut,
 Set as Open,Posar com a obert,
 Set default inventory account for perpetual inventory,Establir compte d&#39;inventari predeterminat d&#39;inventari perpetu,
@@ -2511,7 +2475,6 @@
 Shareholder,Accionista,
 Ship To State,Enviament a estat,
 Shipments,Els enviaments,
-Shipping,Enviament,
 Shipping Address,Adreça d'nviament,
 "Shipping Address does not have country, which is required for this Shipping Rule","L&#39;adreça d&#39;enviament no té país, que es requereix per a aquesta regla d&#39;enviament",
 Shipping rule only applicable for Buying,La norma d&#39;enviament només és aplicable per a la compra,
@@ -2564,7 +2527,6 @@
 Split Batch,Split Batch,
 Split Issue,Esdeveniment dividit,
 Sports,Esports,
-Standard,Estàndard,
 Standard Buying,Compra Standard,
 Standard Selling,Standard Selling,
 Standard contract terms for Sales or Purchase.,Condicions contractuals estàndard per Vendes o la compra.,
@@ -2731,7 +2693,6 @@
 Terms and Conditions,Condicions,
 Terms and Conditions Template,Plantilla de termes i condicions,
 Territory,Territori,
-Test,Prova,
 Thank you for your business!,Gràcies pel teu negoci!,
 The 'From Package No.' field must neither be empty nor it's value less than 1.,El &quot;Des del paquet&quot; el camp no ha d&#39;estar buit ni el valor és inferior a 1.,
 The Brand,La marca,
@@ -2848,7 +2809,6 @@
 Total (Without Tax),Total (sense impostos),
 Total Achieved,Total aconseguit,
 Total Actual,Actual total,
-Total Allocated Leaves,Total Allocated Leaves,
 Total Amount,Quantitat total,
 Total Amount Credited,Import total acreditat,
 Total Applicable Charges in Purchase Receipt Items table must be same as Total Taxes and Charges,Total d&#39;comissions aplicables en la compra Taula de rebuts Els articles han de ser iguals que les taxes totals i càrrecs,
@@ -2892,7 +2852,6 @@
 Total(Amt),Total (Amt),
 Total(Qty),Total (Quantitat),
 Traceability,Traçabilitat,
-Traceback,Rastrejar,
 Track Leads by Lead Source.,Seguiment de conductes per Lead Source.,
 Transaction,Transacció,
 Transaction Date,Data de Transacció,
@@ -2930,7 +2889,6 @@
 UOM Conversion factor is required in row {0},Es requereix el factor de conversió de la UOM a la fila {0},
 UOM coversion factor required for UOM: {0} in Item: {1},Es necessita un factor de coversió per la UDM: {0} per l'article: {1},
 URL,URL,
-Unable to find DocType {0},No es pot trobar DocType {0},
 Unable to find exchange rate for {0} to {1} for key date {2}. Please create a Currency Exchange record manually,"No s&#39;ha pogut trobar el tipus de canvi per a {0} a {1} per a la data clau {2}. Si us plau, crear un registre de canvi manual",
 Unable to find score starting at {0}. You need to have standing scores covering 0 to 100,No s&#39;ha pogut trobar la puntuació a partir de {0}. Has de tenir puntuacions de peu que abasten 0 a 100,
 Unable to find variable: ,No es pot trobar la variable:,
@@ -2960,7 +2918,6 @@
 Upload your letter head and logo. (you can edit them later).,Puja el teu cap lletra i logotip. (Pots editar més tard).,
 Upper Income,Ingrés Alt,
 Use Sandbox,ús Sandbox,
-Used Leaves,Fulles utilitzades,
 User,Usuari,
 User ID,ID d'usuari,
 User ID not set for Employee {0},ID d'usuari no entrat per l'Empleat {0},
@@ -3051,7 +3008,6 @@
 Website Settings,Configuració del lloc web,
 Wednesday,Dimecres,
 Week,setmana,
-Weekdays,Dies laborables,
 Weekly,Setmanal,
 "Weight is mentioned,\nPlease mention ""Weight UOM"" too","S'esmenta Pes, \n Si us plau, ""Pes UOM"" massa",
 Welcome email sent,Correu electrònic de benvinguda enviat,
@@ -3072,7 +3028,6 @@
 Work Order {0} must be submitted,L&#39;ordre de treball {0} s&#39;ha de presentar,
 Work Orders Created: {0},Ordres de treball creades: {0},
 Work-in-Progress Warehouse is required before Submit,Es requereix Magatzem de treballs en procés abans de Presentar,
-Workflow,Workflow,
 Working,Treballant,
 Working Hours,Hores de Treball,
 Workstation,Lloc de treball,
@@ -3102,7 +3057,6 @@
 You need to be a user other than Administrator with System Manager and Item Manager roles to register on Marketplace.,Heu de ser un usuari diferent de l&#39;administrador amb les funcions Administrador del sistema i l&#39;Administrador d&#39;elements per registrar-se a Marketplace.,
 You need to be a user with System Manager and Item Manager roles to add users to Marketplace.,Heu de ser un usuari amb les funcions del Gestor del sistema i del Gestor d&#39;elements per afegir usuaris al Marketplace.,
 You need to be a user with System Manager and Item Manager roles to register on Marketplace.,Heu de ser un usuari amb les funcions d&#39;Administrador del sistema i d&#39;Administrador d&#39;elements per registrar-se a Marketplace.,
-You need to be logged in to access this page,Ha d&#39;estar registrat per accedir a aquesta pàgina,
 You need to enable Shopping Cart,Has d'habilitar el carro de la compra,
 You will lose records of previously generated invoices. Are you sure you want to restart this subscription?,Perdin registres de factures generades prèviament. Esteu segur que voleu reiniciar aquesta subscripció?,
 Your Organization,la seva Organització,
@@ -3218,7 +3172,6 @@
 Assigned To,Assignat a,
 Chat,Chat,
 Completed By,Completat amb,
-County,comtat,
 Day of Week,Dia de la setmana,
 "Dear System Manager,","Benvolgut Administrador del sistema,",
 Default Value,Valor per defecte,
@@ -3229,31 +3182,21 @@
 Fieldtype,FieldType,
 Help Articles,Ajuda a les persones,
 ID,identificació,
-Images,imatges,
 Import,Importació,
 Language,Idioma,
 Likes,Gustos,
 Merge with existing,Combinar amb existent,
-Office,Oficina,
 Orientation,Orientació,
 Parent,Pare,
-Passive,Passiu,
 Payment Failed,Error en el pagament,
-Permanent,permanent,
 Personal,Personal,
-Plant,Planta,
 Post,Post,
-Postal,Postal,
 Postal Code,Codi Postal,
-Previous,Anterior,
 Provider,Proveïdor,
 Read Only,Només lectura,
 Recipient,Receptor,
 Reviews,Ressenyes,
 Sender,Remitent,
-Shop,Botiga,
-Subsidiary,Filial,
-There is some problem with the file url: {0},Hi ha una mica de problema amb la url de l&#39;arxiu: {0},
 There were errors while sending email. Please try again.,"Hi ha hagut errors a l'enviar el correu electrònic. Si us plau, torna a intentar-ho.",
 Values Changed,Els valors modificats,
 or,o,
@@ -3280,19 +3223,16 @@
 Quality Feedback Template,Plantilla de comentaris de qualitat,
 Rules for applying different promotional schemes.,Normes per aplicar diferents règims promocionals.,
 Show {0},Mostra {0},
-"Special Characters except '-', '#', '.', '/', '{{' and '}}' not allowed in naming series {0}","Caràcters especials, excepte &quot;-&quot;, &quot;#&quot;, &quot;.&quot;, &quot;/&quot;, &quot;{{&quot; I &quot;}}&quot; no estan permesos en nomenar sèries {0}",
 Target Details,Detalls de l&#39;objectiu,
 {0} already has a Parent Procedure {1}.,{0} ja té un procediment progenitor {1}.,
 API,API,
 Annual,Anual,
 Change,Canvi,
 Contact Email,Correu electrònic de contacte,
-Export Type,Tipus d&#39;exportació,
 From Date,Des de la data,
 Group By,Agrupar per,
 Invalid URL,URL no vàlid,
 Landscape,Paisatge,
-Last Sync On,Última sincronització activada,
 Naming Series,Sèrie de nomenclatura,
 No data to export,No hi ha dades a exportar,
 Portrait,Retrat,
@@ -3302,7 +3242,6 @@
 Show Document,Mostra el document,
 Show Traceback,Mostra el seguiment,
 Video,Vídeo,
-Webhook Secret,Secret del webhook,
 % Of Grand Total,% Del total total,
 <b>Company</b> is a mandatory filter.,<b>L’empresa</b> és un filtre obligatori.,
 <b>From Date</b> is a mandatory filter.,<b>De Data</b> és un filtre obligatori.,
@@ -3358,7 +3297,6 @@
 BOM Comparison Tool,Eina de comparació de BOM,
 BOM recursion: {0} cannot be child of {1},Recursió de BOM: {0} no pot ser fill de {1},
 BOM recursion: {0} cannot be parent or child of {1},Recurs de BOM: {0} no pot ser pare o fill de {1},
-Back to Home,De tornada a casa,
 Back to Messages,Torna als missatges,
 Bank Data mapper doesn't exist,El mapper de dades bancari no existeix,
 Bank Details,Detalls del banc,
@@ -3420,7 +3358,6 @@
 Currency,Moneda,
 Current Status,Situació actual,
 Customer PO,PO del client,
-Customize,Personalitza,
 Daily,Diari,
 Date,Data,
 Date of Birth cannot be greater than Joining Date.,La data de naixement no pot ser superior a la data d&#39;unió.,
@@ -3454,7 +3391,6 @@
 ERPNext could not find any matching payment entry,ERPNext no ha trobat cap entrada de pagament coincident,
 Earliest Age,Edat més primerenca,
 Edit Details,Edita els detalls,
-Edit Profile,Edita el perfil,
 Either GST Transporter ID or Vehicle No is required if Mode of Transport is Road,"Si el mode de transport és per carretera, no és necessari identificar el número de transport GST o el vehicle",
 Email,Correu electrònic,
 Email Campaigns,Campanyes de correu electrònic,
@@ -3482,7 +3418,6 @@
 Fetch Items from Warehouse,Obtenir articles de magatzem,
 Fetching...,S&#39;obté ...,
 Field,camp,
-File Manager,Gestor de fitxers,
 Filters,Filtres,
 Finding linked payments,Cerca de pagaments enllaçats,
 Fleet Management,Gestió de flotes,
@@ -3521,7 +3456,6 @@
 Incorrect Warehouse,Magatzem incorrecte,
 Invalid Barcode. There is no Item attached to this barcode.,Codi de barres no vàlid. No hi ha cap article adjunt a aquest codi de barres.,
 Invalid credentials,Credencials no vàlides,
-Invite as User,Convida com usuari,
 Issue Priority.,Prioritat de problema.,
 Issue Type.,Tipus de problema.,
 "It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","Sembla que hi ha un problema amb la configuració de la xarxa del servidor. En cas de fracàs, l&#39;import es reemborsarà al vostre compte.",
@@ -3564,7 +3498,6 @@
 New Invoice,Nova factura,
 New Payment,Nou pagament,
 New release date should be in the future,La nova data de llançament hauria de ser en el futur,
-Newsletter,Newsletter,
 No Account matched these filters: {},Cap compte ha coincidit amb aquests filtres: {},
 No communication found.,No s&#39;ha trobat cap comunicació.,
 No correct answer is set for {0},No s&#39;ha definit cap resposta correcta per a {0},
@@ -3640,7 +3573,6 @@
 Please setup a default bank account for company {0},Configureu un compte bancari predeterminat per a l&#39;empresa {0},
 Please specify,"Si us plau, especifiqui",
 Please specify a {0},Especifiqueu un {0},lead
-Printing,Impressió,
 Priority,Prioritat,
 Priority has been changed to {0}.,La prioritat s&#39;ha canviat a {0}.,
 Priority {0} has been repeated.,La prioritat {0} s&#39;ha repetit.,
@@ -3649,7 +3581,6 @@
 Project,Projecte,
 Provide the academic year and set the starting and ending date.,Proporciona el curs acadèmic i estableix la data d’inici i finalització.,
 Public token is missing for this bank,Falta un testimoni públic per a aquest banc,
-Publish,Publica,
 Publish 1 Item,Publica 1 ítem,
 Publish Items,Publicar articles,
 Publish More Items,Publica més articles,
@@ -3677,7 +3608,6 @@
 Reconciled,Reconciliat,
 Recruitment,reclutament,
 Red,Vermell,
-Refreshing,Refrescant,
 Release date must be in the future,La data de llançament ha de ser en el futur,
 Relieving Date must be greater than or equal to Date of Joining,La data de alleujament ha de ser superior o igual a la data d&#39;adhesió,
 Rename,Canviar el nom,
@@ -3721,7 +3651,6 @@
 Search for a payment,Cerqueu un pagament,
 Search for anything ...,Cerqueu qualsevol cosa ...,
 Search results for,Resultats de la cerca,
-Select All,Selecciona tot,
 Select Difference Account,Seleccioneu el compte de diferències,
 Select a Default Priority.,Seleccioneu una prioritat per defecte.,
 Select a company,Seleccioneu una empresa,
@@ -3740,11 +3669,9 @@
 Service Level Agreement has been changed to {0}.,L’acord de nivell de servei s’ha canviat a {0}.,
 Service Level Agreement was reset.,S&#39;ha restablert l&#39;Acord de nivell de servei.,
 Service Level Agreement with Entity Type {0} and Entity {1} already exists.,Ja existeix un contracte de nivell de servei amb el tipus d&#39;entitat {0} i l&#39;entitat {1}.,
-Set,Setembre,
 Set Meta Tags,Estableix les etiquetes meta,
 Set {0} in company {1},Estableix {0} a l&#39;empresa {1},
 Setup,Ajustos,
-Setup Wizard,Assistent de configuració,
 Shift Management,Gestió de canvis,
 Show Future Payments,Mostra els futurs pagaments,
 Show Linked Delivery Notes,Mostra alba de lliurament enllaçat,
@@ -3815,7 +3742,6 @@
 Unreconciled,No conciliada,
 Unsupported GST Category for E-Way Bill JSON generation,Categoria GST no compatible per a la generació e-Way Bill JSON,
 Update,Actualització,
-Update Details,Detalls d’actualització,
 Update Taxes for Items,Actualitzar els impostos dels articles,
 "Upload a bank statement, link or reconcile a bank account","Pengeu un extracte bancari, enllaceu o reconcilieu un compte bancari",
 Upload a statement,Carregueu una declaració,
@@ -3839,7 +3765,6 @@
 XML Files Processed,Arxius XML processats,
 Year,Any,
 Yearly,Anual,
-You,Vostè,
 You are not allowed to enroll for this course,No teniu permís per inscriure-us en aquest curs,
 You are not enrolled in program {0},No esteu inscrit al programa {0},
 You can Feature upto 8 items.,Podeu aparèixer fins a 8 articles.,
@@ -3856,7 +3781,6 @@
 e-Way Bill already exists for this document,e-Way Bill ja existeix per a aquest document,
 woocommerce - {0},woocommerce - {0},
 {0} Coupon used are {1}. Allowed quantity is exhausted,{0} El cupó utilitzat són {1}. La quantitat permesa s’esgota,
-{0} Name,{0} Nom,
 {0} Operations: {1},{0} Operacions: {1},
 {0} bank transaction(s) created,S&#39;han creat {0} operacions bancàries,
 {0} bank transaction(s) created and {1} errors,S&#39;han creat {0} transaccions bancàries i {1} errors,
@@ -3875,17 +3799,13 @@
 Total Income,Ingressos totals,
 Total Income This Year,Ingressos totals aquest any,
 Barcode,Codi de barres,
-Bold,Negre,
-Center,Centre,
 Clear,Clar,
-Comment,Comentar,
 Comments,Comentaris,
 DocType,DocType,
 Download,descarregar,
 Left,Esquerra,
 Link,Enllaç,
 New,Nou,
-Not Found,Extraviat,
 Print,Imprimir,
 Reference Name,Nom de referència,
 Refresh,Refrescar,
@@ -3908,7 +3828,6 @@
 Email Id,Identificació de l'email,
 No,No,
 Reference Doctype,Reference DocType,
-User Id,ID d&#39;usuari,
 Yes,Sí,
 Actual ,Reial,
 Add to cart,Afegir a la cistella,
@@ -4304,7 +4223,6 @@
 e.g Adjustments for:,"per exemple, ajustaments per a:",
 Section Subtotal,Subtotal de secció,
 Section Footer,Peer de secció,
-Position,Posició,
 Cash Flow Mapping,Cartografia del flux d&#39;efectiu,
 Select Maximum Of 1,Seleccioneu un màxim de 1,
 Is Finance Cost,El cost financer,
@@ -4936,7 +4854,6 @@
 Previous Business Day,Dia laborable anterior,
 Next Business Day,Proper dia laborable,
 Urgent,Urgent,
-Crop,Cultiu,
 Crop Name,Nom del cultiu,
 Scientific Name,Nom científic,
 "You can define all the tasks which need to carried out for this crop here. The day field is used to mention the day on which the task needs to be carried out, 1 being the 1st day, etc.. ","Podeu definir totes les tasques que cal dur a terme aquí. El camp del dia s&#39;utilitza per esmentar el dia en què s&#39;ha de dur a terme la tasca, 1 és el primer dia, etc.",
@@ -5441,7 +5358,6 @@
 To TIme,Per Temps,
 Course End Date,Curs Data de finalització,
 Course Topic,Tema del curs,
-Topic,tema,
 Topic Name,Nom del tema,
 Education Settings,Configuració educativa,
 Current Academic Year,Any acadèmic actual,
@@ -5516,7 +5432,6 @@
 Check this if the Student is residing at the Institute's Hostel.,Comprovar això si l&#39;estudiant està residint a l&#39;alberg de l&#39;Institut.,
 Walking,per caminar,
 Institute's Bus,Bus de l&#39;Institut,
-Public Transport,Transport públic,
 Self-Driving Vehicle,Vehicle auto-conducció,
 Pick/Drop by Guardian,Esculli / gota per Guardian,
 Enrolled courses,cursos matriculats,
@@ -5697,7 +5612,6 @@
 Default Cost Center,Centre de cost predeterminat,
 Undeposited Funds Account,Compte de fons no transferit,
 Shopify Log,Registre de compres,
-Request Data,Sol·licitud de dades,
 Shopify Settings,Configuració de Shopify,
 status html,Estat html,
 Enable Shopify,Activa Shopify,
@@ -5817,7 +5731,6 @@
 Exercise Instructions,Instruccions per fer exercici,
 Exercise Video,Vídeo d’exercici,
 Exercise Steps,Passos d’exercici,
-Steps,Passos,
 Steps Table,Taula de passos,
 Exercise Type Step,Tipus d’exercici Pas,
 Max number of visit,Nombre màxim de visites,
@@ -6001,7 +5914,6 @@
 Patient Encounter Symptom,Símptoma de trobada de pacients,
 HLC-PMR-.YYYY.-,HLC-PMR-.YYYY.-,
 Attach Medical Record,Adjunta la història clínica,
-Reference DocType,DocType de referència,
 Spouse,Cònjuge,
 Family,Família,
 Schedule Details,Detalls de l’horari,
@@ -6983,16 +6895,8 @@
 HTML / Banner that will show on the top of product list.,HTML / Banner que apareixerà a la part superior de la llista de productes.,
 Set prefix for numbering series on your transactions,Establir prefix de numeracions seriades a les transaccions,
 Setup Series,Sèrie d'instal·lació,
-Select Transaction,Seleccionar Transacció,
-Help HTML,Ajuda HTML,
-Series List for this Transaction,Llista de Sèries per a aquesta transacció,
-User must always select,Usuari sempre ha de seleccionar,
-Check this if you want to force the user to select a series before saving. There will be no default if you check this.,Seleccioneu aquesta opció si voleu obligar l'usuari a seleccionar una sèrie abans de desar. No hi haurà cap valor per defecte si marca aquesta.,
 Update Series,Actualitza Sèries,
 Change the starting / current sequence number of an existing series.,Canviar el número de seqüència inicial/actual d'una sèrie existent.,
-Prefix,Prefix,
-This is the number of the last created transaction with this prefix,Aquest és el nombre de l'última transacció creat amb aquest prefix,
-Update Series Number,Actualització Nombre Sèries,
 Quotation Lost Reason,Cita Perduda Raó,
 A third party distributor / dealer / commission agent / affiliate / reseller who sells the companies products for a commission.,Un distribuïdor de tercers / distribuïdor / comissió de l'agent / de la filial / distribuïdor que ven els productes de les empreses d'una comissió.,
 Sales Partner Name,Nom del revenedor,
@@ -7687,7 +7591,6 @@
 Warehouse wise Item Balance Age and Value,Equilibri de l&#39;edat i valor del magatzem,
 Work Order Stock Report,Informe d&#39;accions de la comanda de treball,
 Work Orders in Progress,Ordres de treball en progrés,
-Validation Error,Error de validació,
 Automatically Process Deferred Accounting Entry,Processar automàticament l&#39;entrada comptable diferida,
 Bank Clearance,Liquidació bancària,
 Bank Clearance Detail,Detall de liquidació bancària,
@@ -7724,45 +7627,7 @@
 Therapy Plan: ,Pla de teràpia:,
 Total Counts Targeted: ,Recompte total objectiu:,
 Total Counts Completed: ,Recompte total realitzat:,
-Andaman and Nicobar Islands,Illes Andaman i Nicobar,
-Andhra Pradesh,Andhra Pradesh,
-Arunachal Pradesh,Arunachal Pradesh,
-Assam,Assam,
-Bihar,Bihar,
-Chandigarh,Chandigarh,
-Chhattisgarh,Chhattisgarh,
-Dadra and Nagar Haveli,Dadra i Nagar Haveli,
-Daman and Diu,Daman i Diu,
-Delhi,Delhi,
-Goa,Goa,
-Gujarat,Gujarat,
-Haryana,Hariana,
-Himachal Pradesh,Himachal Pradesh,
-Jammu and Kashmir,Jammu i Caixmir,
-Jharkhand,Jharkhand,
-Karnataka,Karnataka,
-Kerala,Kerala,
-Lakshadweep Islands,Illes Lakshadweep,
-Madhya Pradesh,Madhya Pradesh,
-Maharashtra,Maharashtra,
-Manipur,Manipur,
-Meghalaya,Meghalaya,
-Mizoram,Mizoram,
-Nagaland,Nagaland,
-Odisha,Odisha,
-Other Territory,Un altre territori,
-Pondicherry,Pondicherry,
-Punjab,Punjab,
-Rajasthan,Rajasthan,
-Sikkim,Sikkim,
-Tamil Nadu,Tamil Nadu,
-Telangana,Telangana,
-Tripura,Tripura,
-Uttar Pradesh,Uttar Pradesh,
-Uttarakhand,Uttarakhand,
-West Bengal,Bengala Occidental,
 Is Mandatory,És obligatori,
-Published on,Publicat el,
 Service Received But Not Billed,Servei rebut però no facturat,
 Deferred Accounting Settings,Configuració de comptabilitat diferida,
 Book Deferred Entries Based On,Llibre d&#39;entrades diferides basades en,
@@ -8035,8 +7900,6 @@
 Worksheet Instructions,Instruccions del full de treball,
 Result Legend Print,Impressió de llegenda de resultats,
 Print Position,Posició d’impressió,
-Bottom,Part inferior,
-Top,Superior,
 Both,Tots dos,
 Result Legend,Llegenda del resultat,
 Lab Tests,Proves de laboratori,
@@ -8081,12 +7944,10 @@
 Approvers,Aprovadors,
 The first Approver in the list will be set as the default Approver.,El primer aprovador de la llista s&#39;establirà com a aprovador predeterminat.,
 Shift Request Approver,Aprovador de sol·licituds de torn,
-PAN Number,Número PAN,
 Provident Fund Account,Compte de fons de previsió,
 MICR Code,Codi MICR,
 Repay unclaimed amount from salary,Reemborsar l’import no reclamat del salari,
 Deduction from salary,Deducció del salari,
-Expired Leaves,Fulles caducades,
 If this is not checked the loan by default will be considered as a Demand Loan,"Si no es comprova això, el préstec per defecte es considerarà un préstec a la demanda",
 This account is used for booking loan repayments from the borrower and also disbursing loans to the borrower,Aquest compte s’utilitza per reservar els pagaments de préstecs del prestatari i també per desemborsar préstecs al prestatari,
 This account is capital account which is used to allocate capital for loan disbursal account ,Aquest compte és un compte de capital que s’utilitza per assignar capital per al compte de desemborsament del préstec,
@@ -8844,3 +8705,41 @@
 Creating Purchase Order ...,S&#39;està creant una comanda de compra ...,
 "Select a Supplier from the Default Suppliers of the items below. On selection, a Purchase Order will be made against items belonging to the selected Supplier only.","Seleccioneu un proveïdor dels proveïdors predeterminats dels articles següents. En seleccionar-lo, es farà una Comanda de compra únicament contra articles pertanyents al Proveïdor seleccionat.",
 Row #{}: You must select {} serial numbers for item {}.,Fila núm. {}: Heu de seleccionar {} números de sèrie de l&#39;element {}.,
+Add Comment,Afegir comentari,
+More...,Més ...,
+Notes,Notes,
+Payment Gateway,Passarel·la de Pagament,
+Payment Gateway Name,Nom de la passarel·la de pagament,
+Payments,Pagaments,
+Plan Name,Nom del pla,
+Portal,Portal,
+Scan Barcode,Escanejar codi de barres,
+Some information is missing,falta informació,
+Successful,Èxit,
+Tools,Instruments,
+Use Sandbox,ús Sandbox,
+Busy,Ocupada,
+Completed By,Completat amb,
+Payment Failed,Error en el pagament,
+Column {0},Columna {0},
+Field Mapping,Cartografia de camp,
+Not Specified,Sense especificar,
+Update Type,Tipus d’actualització,
+Dr,Dr,
+End Time,Hora de finalització,
+Fetching...,S&#39;obté ...,
+"It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","Sembla que hi ha un problema amb la configuració de la xarxa del servidor. En cas de fracàs, l&#39;import es reemborsarà al vostre compte.",
+Looks like someone sent you to an incomplete URL. Please ask them to look into it.,"Sembla que algú li va enviar a un URL incompleta. Si us plau, demanar-los que mirar-hi.",
+Master,Mestre,
+Pay,Pagar,
+You can also copy-paste this link in your browser,També podeu copiar i enganxar aquest enllaç al teu navegador,
+Verified By,Verified Per,
+Invalid naming series (. missing) for {0},Sèrie de noms no vàlida (. Falta) per a {0},
+Phone Number,Número de telèfon,
+Account SID,Compte SID,
+Global Defaults,Valors per defecte globals,
+Is Mandatory,És obligatori,
+WhatsApp,Què tal,
+Make a call,Fer una trucada,
+Approve,aprovar,
+Reject,Rebutjar,
diff --git a/erpnext/translations/cs.csv b/erpnext/translations/cs.csv
index 26b8bf1..1072ed3 100644
--- a/erpnext/translations/cs.csv
+++ b/erpnext/translations/cs.csv
@@ -113,7 +113,6 @@
 Add Items,Přidat položky,
 Add Leads,Přidat předlohy,
 Add Multiple Tasks,Přidat více úkolů,
-Add Row,Přidat řádek,
 Add Sales Partners,Přidat obchodní partnery,
 Add Serial No,Přidat sériové číslo,
 Add Students,Přidejte studenty,
@@ -211,9 +210,7 @@
 An error occurred during the update process,Během procesu aktualizace došlo k chybě,
 "An item exists with same name ({0}), please change the item group name or rename the item","Položka existuje se stejným názvem ({0}), prosím, změnit název skupiny položky nebo přejmenovat položku",
 Analyst,Analytik,
-Analytics,analytika,
 Annual Billing: {0},Roční Zúčtování: {0},
-Anonymous,Anonymní,
 Another Budget record '{0}' already exists against {1} '{2}' and account '{3}' for fiscal year {4},Další rozpočtový záznam &#39;{0}&#39; již existuje proti {1} &#39;{2}&#39; a účet &#39;{3}&#39; za fiskální rok {4},
 Another Period Closing Entry {0} has been made after {1},Další období Uzávěrka Entry {0} byla podána po {1},
 Another Sales Person {0} exists with the same Employee id,Další prodeje osoba {0} existuje se stejným id zaměstnance,
@@ -283,14 +280,12 @@
 Attendance not submitted for {0} as {1} on leave.,Ústředna nebyla odeslána do {0} jako {1}.,
 Attribute table is mandatory,Atribut tabulka je povinné,
 Attribute {0} selected multiple times in Attributes Table,Atribut {0} vybraný několikrát v atributech tabulce,
-Author,Autor,
 Authorized Signatory,Prokurista,
 Auto Material Requests Generated,Žádosti Auto materiál vygenerovaný,
 Auto Repeat,Auto opakování,
 Auto repeat document updated,Dokument byl aktualizován automaticky,
 Automotive,Automobilový,
 Available,K dispozici,
-Available Leaves,Dostupné listy,
 Available Qty,Množství k dispozici,
 Available Selling,Dostupné prodeje,
 Available for use date is required,K dispozici je datum k dispozici pro použití,
@@ -340,7 +335,6 @@
 Base URL,Základní URL,
 Based On,Založeno na,
 Based On Payment Terms,Na základě platebních podmínek,
-Basic,Základní,
 Batch,Šarže,
 Batch Entries,Dávkové položky,
 Batch ID is mandatory,Číslo šarže je povinné,
@@ -361,7 +355,6 @@
 Billable Hours,Fakturovatelné hodiny,
 Billed,Fakturováno,
 Billed Amount,Fakturovaná částka,
-Billing,Fakturace,
 Billing Address,fakturační adresa,
 Billing Address is same as Shipping Address,Fakturační adresa je stejná jako dodací adresa,
 Billing Amount,Fakturace Částka,
@@ -560,7 +553,6 @@
 Consumed Qty,Spotřeba Množství,
 Consumer Products,Spotřební zboží,
 Contact,Kontakt,
-Contact Details,Kontaktní údaje,
 Contact Us,Kontaktujte nás,
 Content,Obsah,
 Content Masters,Obsahové mastery,
@@ -715,7 +707,6 @@
 Date of Joining,Datum přistoupení,
 Date of Joining must be greater than Date of Birth,Datum přistoupení musí být větší než Datum narození,
 Date of Transaction,Datum transakce,
-Datetime,Datum a čas,
 Day,Den,
 Debit,Debet,
 Debit ({0}),Debet ({0}),
@@ -874,7 +865,6 @@
 Employee cannot report to himself.,Zaměstnanec nemůže odpovídat sám sobě.,
 Employee {0} has already applied for {1} between {2} and {3} : ,Zaměstnanec {0} již požádal {1} mezi {2} a {3}:,
 Employee {0} of grade {1} have no default leave policy,Zaměstnanec {0} z platové třídy {1} nemá žádnou výchozí politiku dovolené,
-Enable,Zapnout,
 Enable / disable currencies.,Povolit / zakázat měny.,
 Enabled,Zapnuto,
 "Enabling 'Use for Shopping Cart', as Shopping Cart is enabled and there should be at least one Tax Rule for Shopping Cart","Povolení &quot;použití pro nákupního košíku&quot;, jak je povoleno Nákupní košík a tam by měla být alespoň jedna daňová pravidla pro Košík",
@@ -905,7 +895,6 @@
 Error: Not a valid id?,Chyba: Není platný id?,
 Estimated Cost,Odhadované náklady,
 "Even if there are multiple Pricing Rules with highest priority, then following internal priorities are applied:","I když existuje více pravidla pro tvorbu cen s nejvyšší prioritou, pak následující interní priority jsou použity:",
-Event,Událost,
 Exchange Gain/Loss,Exchange zisk / ztráta,
 Exchange Rate Revaluation master.,Velitel přehodnocení směnného kurzu.,
 Exchange Rate must be same as {0} {1} ({2}),Exchange Rate musí být stejná jako {0} {1} ({2}),
@@ -1032,7 +1021,6 @@
 From value must be less than to value in row {0},Z hodnota musí být menší než hodnota v řadě {0},
 From {0} | {1} {2},Od {0} | {1} {2},
 Fulfillment,Splnění,
-Full,Plný,
 Full Name,Celé jméno/název,
 Fully Depreciated,plně odepsán,
 Furnitures and Fixtures,Nábytek a svítidla,
@@ -1133,7 +1121,6 @@
 Hub Sync ID,ID synchronizace Hubu,
 Human Resource,Lidské zdroje,
 Human Resources,Lidské zdroje,
-IFSC Code,Kód IFSC,
 IGST Amount,IGST částka,
 IP Address,IP adresa,
 ITC Available (whether in full op part),ITC k dispozici (ať už v plné op části),
@@ -1185,7 +1172,6 @@
 Ineligible ITC,Nezpůsobilé ITC,
 Initiated,Zahájil,
 Inpatient Record,Ústavní záznam,
-Insert,Vložit,
 Installation Note,Poznámka k instalaci,
 Installation Note {0} has already been submitted,Poznámka k instalaci {0} již byla odeslána,
 Installation date cannot be before delivery date for Item {0},Datum Instalace nemůže být před datem dodání pro bod {0},
@@ -1197,7 +1183,6 @@
 Insurance Start date should be less than Insurance End date,Datum pojištění startu by měla být menší než pojištění koncovým datem,
 Integrated Tax,Integrovaná daň,
 Inter-State Supplies,Mezistátní dodávky,
-Interests,zájmy,
 Internet Publishing,Internet Publishing,
 Intra-State Supplies,Vnitrostátní zásoby,
 Introduction,Úvod,
@@ -1316,7 +1301,6 @@
 Lab testing datetime cannot be before collection datetime,Laboratoř data testování nemůže být před datem sběru,
 Label,Popisek,
 Laboratory,Laboratoř,
-Language Name,Název jazyka,
 Large,Velký,
 Last Communication,Poslední komunikace,
 Last Communication Date,Poslední datum komunikace,
@@ -1347,8 +1331,6 @@
 Letter Heads for print templates.,Hlavičkové listy pro tisk šablon.,
 Level,Úroveň,
 Liability,Odpovědnost,
-License,Licence,
-Limit,Omezit,
 Limit Crossed,Limit zkříženými,
 Link to Material Request,Odkaz na materiálovou žádost,
 List of all share transactions,Seznam všech transakcí s akciemi,
@@ -1359,7 +1341,6 @@
 Loans (Liabilities),Úvěry (závazky),
 Loans and Advances (Assets),Úvěry a zálohy (aktiva),
 Local,Místní,
-Log,Log,
 Logs for maintaining sms delivery status,Protokoly pro udržení stavu doručení sms,
 Lost,Ztracený,
 Lost Reasons,Ztracené důvody,
@@ -1445,7 +1426,6 @@
 Medical Department,Lékařské oddělení,
 Medical Record,Zdravotní záznam,
 Medium,Střední,
-Meeting,Setkání,
 Member Activity,Členská aktivita,
 Member ID,Členské ID,
 Member Name,Jméno člena,
@@ -1495,7 +1475,6 @@
 Multiple Variants,Více variant,
 Multiple fiscal years exist for the date {0}. Please set company in Fiscal Year,Několik fiskálních let existují pro data {0}. Prosím nastavte společnost ve fiskálním roce,
 Music,Hudba,
-My Account,Můj Účet,
 Name error: {0},Název chyba: {0},
 Name of new Account. Note: Please don't create accounts for Customers and Suppliers,"Název nového účtu. Poznámka: Prosím, vytvářet účty pro zákazníky a dodavateli",
 Name or Email is mandatory,Jméno nebo e-mail je povinné,
@@ -1538,7 +1517,6 @@
 New credit limit is less than current outstanding amount for the customer. Credit limit has to be atleast {0},Nový úvěrový limit je nižší než aktuální dlužné částky za zákazníka. Úvěrový limit musí být aspoň {0},
 New task,Nová úloha,
 New {0} pricing rules are created,Vytvoří se nová {0} pravidla pro tvorbu cen,
-Newsletters,Zpravodaje,
 Newspaper Publishers,Vydavatelé novin,
 Next,Další,
 Next Contact By cannot be same as the Lead Email Address,Následující Kontakt Tím nemůže být stejný jako hlavní e-mailovou adresu,
@@ -1686,7 +1664,6 @@
 Other,Ostatní,
 Other Reports,Ostatní zprávy,
 "Other outward supplies(Nil rated,Exempted)","Ostatní pasivní dodávky (bez hodnocení, osvobozeno)",
-Others,Ostatní,
 Out Qty,Out Množství,
 Out Value,limitu,
 Out of Order,Mimo provoz,
@@ -1726,7 +1703,6 @@
 Party Type and Party is mandatory for {0} account,Typ strany a strana je povinný pro účet {0},
 Party Type is mandatory,Typ strana je povinná,
 Party is mandatory,Party je povinná,
-Password,Heslo,
 Past Due Date,Datum splatnosti,
 Patient,Pacient,
 Patient Appointment,Setkání pacienta,
@@ -1784,7 +1760,6 @@
 Pharmaceutical,Farmaceutické,
 Pharmaceuticals,Farmaceutické,
 Physician,Lékař,
-Pincode,PSČ,
 Place Of Supply (State/UT),Místo dodávky (stát / UT),
 Place Order,Objednat,
 Plan Name,Název plánu,
@@ -1896,7 +1871,6 @@
 Please select date,"Prosím, vyberte datum",
 Please select item code,"Prosím, vyberte položku kód",
 Please select month and year,Vyberte měsíc a rok,
-Please select prefix first,"Prosím, vyberte první prefix",
 Please select the Company,Vyberte prosím společnost,
 Please select the Multiple Tier Program type for more than one collection rules.,Zvolte typ víceúrovňového programu pro více než jednu pravidla kolekce.,
 Please select the assessment group other than 'All Assessment Groups',Vyberte jinou skupinu hodnocení než skupinu Všechny skupiny,
@@ -1913,7 +1887,6 @@
 Please set Company filter blank if Group By is 'Company',"Nastavte filtr společnosti prázdný, pokud je Skupina By je &#39;Company&#39;",
 Please set Default Payroll Payable Account in Company {0},"Prosím nastavit výchozí mzdy, splatnou účet ve firmě {0}",
 Please set Depreciation related Accounts in Asset Category {0} or Company {1},"Prosím, amortizace účty s ním souvisejících v kategorii Asset {0} nebo {1} Company",
-Please set Email Address,Prosím nastavte e-mailovou adresu,
 Please set GST Accounts in GST Settings,Nastavte prosím účet GST v Nastavení GST,
 Please set Hotel Room Rate on {},"Prosím, nastavte Hotel Room Rate na {}",
 Please set Number of Depreciations Booked,Prosím nastavte Počet Odpisy rezervováno,
@@ -1936,7 +1909,6 @@
 Please set the Email ID for the Student to send the Payment Request,"Prosím, nastavte ID e-mailu, aby Student odeslal Žádost o platbu",
 Please set the Item Code first,Nejprve nastavte kód položky,
 Please set the Payment Schedule,Nastavte prosím časový rozvrh plateb,
-Please set the series to be used.,"Nastavte prosím řadu, kterou chcete použít.",
 Please set {0} for address {1},Zadejte prosím {0} pro adresu {1},
 Please setup Students under Student Groups,"Prosím, nastavte studenty pod studentskými skupinami",
 Please specify Company,"Uveďte prosím, firmu",
@@ -1953,7 +1925,6 @@
 Point-of-Sale,Místě prodeje,
 Point-of-Sale Profile,Point-of-Sale Profil,
 Portal,Portál,
-Portal Settings,Portál Nastavení,
 Possible Supplier,možné Dodavatel,
 Postal Expenses,Poštovní náklady,
 Posting Date,Datum zveřejnění,
@@ -2152,12 +2123,10 @@
 Reference No is mandatory if you entered Reference Date,"Referenční číslo je povinné, pokud jste zadali k rozhodnému dni",
 Reference No.,Referenční číslo,
 Reference Number,Referenční číslo,
-Reference Owner,referenční Vlastník,
 Reference Type,Typ reference,
 "Reference: {0}, Item Code: {1} and Customer: {2}","Odkaz: {0}, Kód položky: {1} a zákazník: {2}",
 References,Reference,
 Refresh Token,Obnovit Token,
-Region,Kraj,
 Register,Registrovat,
 Rejected,Zamítnuto,
 Related,Příbuzný,
@@ -2179,7 +2148,6 @@
 Replace BOM and update latest price in all BOMs,Nahraďte kusovníku a aktualizujte nejnovější cenu ve všech kusovnících,
 Replied,Odpovězeno,
 Report,Report,
-Report Builder,Konfigurátor Reportu,
 Report Type,Typ výpisu,
 Report Type is mandatory,Report Type je povinné,
 Reports,zprávy,
@@ -2355,13 +2323,11 @@
 Same Company is entered more than once,Stejný Společnost je zapsána více než jednou,
 Same item cannot be entered multiple times.,Stejnou položku nelze zadat vícekrát.,
 Same supplier has been entered multiple times,Stejný dodavatel byl zadán vícekrát,
-Sample,Vzorek,
 Sample Collection,Kolekce vzorků,
 Sample quantity {0} cannot be more than received quantity {1},Množství vzorku {0} nemůže být větší než přijaté množství {1},
 Sanctioned,schválený,
 Sand,Písek,
 Saturday,Sobota,
-Saved,Uloženo,
 Saving {0},Uložení {0},
 Scan Barcode,Naskenujte čárový kód,
 Schedule,Plán,
@@ -2463,7 +2429,6 @@
 Series Updated,Řada Aktualizováno,
 Series Updated Successfully,Řada Aktualizováno Úspěšně,
 Series is mandatory,Série je povinné,
-Series {0} already used in {1},Série {0} jsou již použity v {1},
 Service,Služba,
 Service Level Agreement,Dohoda o úrovni služeb,
 Service Level Agreement.,Dohoda o úrovni služeb.,
@@ -2479,7 +2444,6 @@
 Set Tax Rule for shopping cart,Sada Daňové Pravidlo pro nákupního košíku,
 Set as Closed,Nastavit jako Zavřeno,
 Set as Completed,Nastavit jako dokončeno,
-Set as Default,Nastavit jako výchozí,
 Set as Lost,Nastavit jako Lost,
 Set as Open,Nastavit jako Otevřít,
 Set default inventory account for perpetual inventory,Nastavte výchozí inventář pro trvalý inventář,
@@ -2511,7 +2475,6 @@
 Shareholder,Akcionář,
 Ship To State,Loď do státu,
 Shipments,Zásilky,
-Shipping,Doprava,
 Shipping Address,Dodací adresa,
 "Shipping Address does not have country, which is required for this Shipping Rule","Odeslání adresy nemá zemi, která je požadována pro toto Pravidlo plavby",
 Shipping rule only applicable for Buying,Pravidlo plavby platí pouze pro nákup,
@@ -2564,7 +2527,6 @@
 Split Batch,Split Batch,
 Split Issue,Split Issue,
 Sports,Sportovní,
-Standard,Standard,
 Standard Buying,Standardní Nakupování,
 Standard Selling,Standardní prodejní,
 Standard contract terms for Sales or Purchase.,Standardní smluvní podmínky pro prodej nebo koupi.,
@@ -2731,7 +2693,6 @@
 Terms and Conditions,Podmínky,
 Terms and Conditions Template,Podmínky Template,
 Territory,Území,
-Test,Test,
 Thank you for your business!,Děkuji za Váš obchod!,
 The 'From Package No.' field must neither be empty nor it's value less than 1.,&quot;Z balíčku č.&quot; pole nesmí být prázdné ani jeho hodnota menší než 1.,
 The Brand,Brand,
@@ -2848,7 +2809,6 @@
 Total (Without Tax),Celkem (bez daně),
 Total Achieved,Celkem Dosažená,
 Total Actual,Celkem Aktuální,
-Total Allocated Leaves,Celkové přidělené listy,
 Total Amount,Celková částka,
 Total Amount Credited,Celková částka připsána,
 Total Applicable Charges in Purchase Receipt Items table must be same as Total Taxes and Charges,"Celkový počet použitelných poplatcích v dokladu o koupi zboží, které tabulky musí být stejná jako celkem daní a poplatků",
@@ -2892,7 +2852,6 @@
 Total(Amt),Total (Amt),
 Total(Qty),Total (ks),
 Traceability,Sledovatelnost,
-Traceback,Vystopovat,
 Track Leads by Lead Source.,Track Leads by Lead Source.,
 Transaction,Transakce,
 Transaction Date,Transakce Datum,
@@ -2930,7 +2889,6 @@
 UOM Conversion factor is required in row {0},UOM Konverzní faktor je nutné v řadě {0},
 UOM coversion factor required for UOM: {0} in Item: {1},UOM coversion faktor potřebný k nerozpuštěných: {0} v bodě: {1},
 URL,URL,
-Unable to find DocType {0},Nelze najít DocType {0},
 Unable to find exchange rate for {0} to {1} for key date {2}. Please create a Currency Exchange record manually,Nelze najít kurz {0} až {1} pro klíčový den {2}. Ručně vytvořte záznam o směnném kurzu,
 Unable to find score starting at {0}. You need to have standing scores covering 0 to 100,Nelze najít skóre začínající na {0}. Musíte mít stojící skóre pokrývající 0 až 100,
 Unable to find variable: ,Nelze najít proměnnou:,
@@ -2960,7 +2918,6 @@
 Upload your letter head and logo. (you can edit them later).,Nahrajte svůj dopis hlavu a logo. (Můžete je upravit později).,
 Upper Income,Horní příjmů,
 Use Sandbox,použití Sandbox,
-Used Leaves,Použité listy,
 User,Uživatel,
 User ID,User ID,
 User ID not set for Employee {0},User ID není nastavena pro zaměstnance {0},
@@ -3051,7 +3008,6 @@
 Website Settings,Nastavení www stránky,
 Wednesday,Středa,
 Week,Týden,
-Weekdays,V pracovní dny,
 Weekly,Týdenní,
 "Weight is mentioned,\nPlease mention ""Weight UOM"" too","Hmotnost je uvedeno, \n uveďte prosím ""váha UOM"" příliš",
 Welcome email sent,Uvítací email odeslán,
@@ -3072,7 +3028,6 @@
 Work Order {0} must be submitted,Objednávka práce {0} musí být odeslána,
 Work Orders Created: {0},Vytvořené zakázky: {0},
 Work-in-Progress Warehouse is required before Submit,Work-in-Progress sklad je zapotřebí před Odeslat,
-Workflow,Toky (workflow),
 Working,Pracovní,
 Working Hours,Pracovní doba,
 Workstation,Pracovní stanice,
@@ -3102,7 +3057,6 @@
 You need to be a user other than Administrator with System Manager and Item Manager roles to register on Marketplace.,"Musíte být jiným uživatelem než správcem s rolí Správce systému a Správce položek, který se má zaregistrovat na webu Marketplace.",
 You need to be a user with System Manager and Item Manager roles to add users to Marketplace.,Musíte být uživateli s rolí Správce systému a Správce položek pro přidání uživatelů do služby Marketplace.,
 You need to be a user with System Manager and Item Manager roles to register on Marketplace.,"Musíte být uživatelem s rolí Správce systému a Správce položek, který se má zaregistrovat na webu Marketplace.",
-You need to be logged in to access this page,Musíte být přihlášen k přístupu na tuto stránku,
 You need to enable Shopping Cart,Musíte povolit Nákupní košík,
 You will lose records of previously generated invoices. Are you sure you want to restart this subscription?,Ztratíte záznamy o dříve vygenerovaných fakturách. Opravdu chcete tento odběr restartovat?,
 Your Organization,Vaše organizace,
@@ -3218,7 +3172,6 @@
 Assigned To,Přiřazeno (komu),
 Chat,Chat,
 Completed By,Dokončeno,
-County,Hrabství,
 Day of Week,Den v týdnu,
 "Dear System Manager,","Vážení System Manager,",
 Default Value,Výchozí hodnota,
@@ -3229,31 +3182,21 @@
 Fieldtype,Typ pole,
 Help Articles,Články nápovědy,
 ID,ID,
-Images,snímky,
 Import,Importovat,
 Language,Jazyk,
 Likes,Záliby,
 Merge with existing,Sloučit s existujícím,
-Office,Kancelář,
 Orientation,Orientace,
 Parent,Nadřazeno,
-Passive,Pasivní,
 Payment Failed,Platba selhala,
-Permanent,Trvalý,
 Personal,Osobní,
-Plant,Rostlina,
 Post,Příspěvek,
-Postal,Poštovní,
 Postal Code,PSČ,
-Previous,Předchozí,
 Provider,Poskytovatel,
 Read Only,Pouze pro čtení,
 Recipient,Příjemce,
 Reviews,Recenze,
 Sender,Odesilatel,
-Shop,Obchod,
-Subsidiary,Dceřiný,
-There is some problem with the file url: {0},Tam je nějaký problém s URL souboru: {0},
 There were errors while sending email. Please try again.,Narazili jsme na problémy při odesílání emailu. Prosím zkuste to znovu.,
 Values Changed,hodnoty Změnil,
 or,nebo,
@@ -3280,19 +3223,16 @@
 Quality Feedback Template,Šablona zpětné vazby kvality,
 Rules for applying different promotional schemes.,Pravidla pro uplatňování různých propagačních programů.,
 Show {0},Zobrazit {0},
-"Special Characters except '-', '#', '.', '/', '{{' and '}}' not allowed in naming series {0}","Zvláštní znaky kromě &quot;-&quot;, &quot;#&quot;, &quot;.&quot;, &quot;/&quot;, &quot;{{&quot; A &quot;}}&quot; nejsou v názvových řadách povoleny {0}",
 Target Details,Podrobnosti o cíli,
 {0} already has a Parent Procedure {1}.,{0} již má rodičovský postup {1}.,
 API,API,
 Annual,Roční,
 Change,Změna,
 Contact Email,Kontaktní e-mail,
-Export Type,Typ exportu,
 From Date,Od data,
 Group By,Skupina vytvořená,
 Invalid URL,neplatná URL,
 Landscape,Krajina,
-Last Sync On,Poslední synchronizace je zapnutá,
 Naming Series,Číselné řady,
 No data to export,Žádné údaje k exportu,
 Portrait,Portrét,
@@ -3302,7 +3242,6 @@
 Show Document,Zobrazit dokument,
 Show Traceback,Zobrazit Traceback,
 Video,Video,
-Webhook Secret,Webhook Secret,
 % Of Grand Total,% Z celkového součtu,
 <b>Company</b> is a mandatory filter.,<b>Společnost</b> je povinný filtr.,
 <b>From Date</b> is a mandatory filter.,<b>Od data</b> je povinný filtr.,
@@ -3358,7 +3297,6 @@
 BOM Comparison Tool,Nástroj pro porovnání kusovníků,
 BOM recursion: {0} cannot be child of {1},Rekurze kusovníku: {0} nemůže být dítě {1},
 BOM recursion: {0} cannot be parent or child of {1},Rekurze kusovníku: {0} nemůže být rodič nebo dítě {1},
-Back to Home,Zpátky domů,
 Back to Messages,Zpět na Zprávy,
 Bank Data mapper doesn't exist,Mapovač bankovních dat neexistuje,
 Bank Details,Bankovní detaily,
@@ -3420,7 +3358,6 @@
 Currency,Měna,
 Current Status,Aktuální stav,
 Customer PO,Zákaznická PO,
-Customize,Přizpůsobit,
 Daily,Denně,
 Date,Datum,
 Date of Birth cannot be greater than Joining Date.,Datum narození nemůže být větší než datum připojení.,
@@ -3454,7 +3391,6 @@
 ERPNext could not find any matching payment entry,ERPNext nemohl najít žádnou odpovídající platební položku,
 Earliest Age,Nejstarší věk,
 Edit Details,Upravit detaily,
-Edit Profile,Editovat profil,
 Either GST Transporter ID or Vehicle No is required if Mode of Transport is Road,"Je-li způsob dopravy silniční, vyžaduje se ID dopravce GST nebo číslo vozidla",
 Email,E-mailem,
 Email Campaigns,E-mailové kampaně,
@@ -3482,7 +3418,6 @@
 Fetch Items from Warehouse,Načíst položky ze skladu,
 Fetching...,Okouzlující...,
 Field,Pole,
-File Manager,Správce souborů,
 Filters,Filtry,
 Finding linked payments,Nalezení propojených plateb,
 Fleet Management,Fleet management,
@@ -3521,7 +3456,6 @@
 Incorrect Warehouse,Nesprávný sklad,
 Invalid Barcode. There is no Item attached to this barcode.,Neplatný čárový kód. K tomuto čárovému kódu není připojena žádná položka.,
 Invalid credentials,Neplatné přihlašovací údaje,
-Invite as User,Pozvat jako Uživatel,
 Issue Priority.,Priorita vydání.,
 Issue Type.,Typ problému.,
 "It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","Zdá se, že je problém s konfigurací proužku serveru. V případě selhání bude částka vrácena na váš účet.",
@@ -3564,7 +3498,6 @@
 New Invoice,Nová faktura,
 New Payment,Nová platba,
 New release date should be in the future,Nové datum vydání by mělo být v budoucnosti,
-Newsletter,Newsletter,
 No Account matched these filters: {},Žádný účet neodpovídal těmto filtrům: {},
 No communication found.,Nebyla nalezena žádná komunikace.,
 No correct answer is set for {0},Pro {0} není nastavena žádná správná odpověď,
@@ -3640,7 +3573,6 @@
 Please setup a default bank account for company {0},Nastavte prosím výchozí bankovní účet společnosti {0},
 Please specify,Prosím specifikujte,
 Please specify a {0},Zadejte prosím {0},lead
-Printing,Tisk,
 Priority,Priorita,
 Priority has been changed to {0}.,Priorita byla změněna na {0}.,
 Priority {0} has been repeated.,Priorita {0} byla opakována.,
@@ -3649,7 +3581,6 @@
 Project,Zakázka,
 Provide the academic year and set the starting and ending date.,Uveďte akademický rok a stanovte počáteční a konečné datum.,
 Public token is missing for this bank,Pro tuto banku chybí veřejný token,
-Publish,Publikovat,
 Publish 1 Item,Publikovat 1 položku,
 Publish Items,Publikovat položky,
 Publish More Items,Publikovat více položek,
@@ -3677,7 +3608,6 @@
 Reconciled,Smířeno,
 Recruitment,Nábor,
 Red,Červená,
-Refreshing,Osvěžující,
 Release date must be in the future,Datum vydání musí být v budoucnosti,
 Relieving Date must be greater than or equal to Date of Joining,Datum vydání musí být větší nebo rovno Datum připojení,
 Rename,Přejmenovat,
@@ -3721,7 +3651,6 @@
 Search for a payment,Vyhledejte platbu,
 Search for anything ...,Hledat cokoli ...,
 Search results for,Výsledky hledání pro,
-Select All,Vybrat vše,
 Select Difference Account,Vyberte rozdílový účet,
 Select a Default Priority.,Vyberte výchozí prioritu.,
 Select a company,Vyberte společnost,
@@ -3740,11 +3669,9 @@
 Service Level Agreement has been changed to {0}.,Smlouva o úrovni služeb byla změněna na {0}.,
 Service Level Agreement was reset.,Dohoda o úrovni služeb byla resetována.,
 Service Level Agreement with Entity Type {0} and Entity {1} already exists.,Dohoda o úrovni služeb s typem entity {0} a entitou {1} již existuje.,
-Set,Nastavit,
 Set Meta Tags,Nastavte značky meta,
 Set {0} in company {1},Set {0} ve společnosti {1},
 Setup,Nastavení,
-Setup Wizard,Průvodce nastavením,
 Shift Management,Shift Management,
 Show Future Payments,Zobrazit budoucí platby,
 Show Linked Delivery Notes,Zobrazit propojené dodací listy,
@@ -3815,7 +3742,6 @@
 Unreconciled,Bez smíření,
 Unsupported GST Category for E-Way Bill JSON generation,Nepodporovaná kategorie GST pro generaci E-Way Bill JSON,
 Update,Aktualizovat,
-Update Details,Aktualizujte podrobnosti,
 Update Taxes for Items,Aktualizace daní za položky,
 "Upload a bank statement, link or reconcile a bank account","Nahrajte bankovní výpis, propojte nebo sjednejte bankovní účet",
 Upload a statement,Nahrajte prohlášení,
@@ -3839,7 +3765,6 @@
 XML Files Processed,Soubory XML byly zpracovány,
 Year,Rok,
 Yearly,Ročně,
-You,Vy,
 You are not allowed to enroll for this course,Do tohoto kurzu se nemůžete přihlásit,
 You are not enrolled in program {0},Nejste přihlášeni do programu {0},
 You can Feature upto 8 items.,Můžete zadat až 8 položek.,
@@ -3856,7 +3781,6 @@
 e-Way Bill already exists for this document,Pro tento dokument již existuje e-Way Bill,
 woocommerce - {0},woocommerce - {0},
 {0} Coupon used are {1}. Allowed quantity is exhausted,{0} Použitý kupón je {1}. Povolené množství je vyčerpáno,
-{0} Name,{0} Name,
 {0} Operations: {1},{0} Operace: {1},
 {0} bank transaction(s) created,Bylo vytvořeno {0} bankovních transakcí,
 {0} bank transaction(s) created and {1} errors,Bylo vytvořeno {0} bankovních transakcí a {1} chyb,
@@ -3875,17 +3799,13 @@
 Total Income,Celkový příjem,
 Total Income This Year,Celkový příjem v tomto roce,
 Barcode,čárový kód,
-Bold,tučně,
-Center,Střed,
 Clear,Průhledná,
-Comment,Komentář,
 Comments,Komentáře,
 DocType,DocType,
 Download,Stažení,
 Left,Zbývá,
 Link,Odkaz,
 New,Nový,
-Not Found,Nenalezeno,
 Print,Tisk,
 Reference Name,Referenční název,
 Refresh,Obnovit,
@@ -3908,7 +3828,6 @@
 Email Id,Email Id,
 No,Ne,
 Reference Doctype,Reference DocType,
-User Id,Uživatelské ID,
 Yes,Ano,
 Actual ,Aktuální,
 Add to cart,Přidat do košíku,
@@ -4304,7 +4223,6 @@
 e.g Adjustments for:,např. Úpravy pro:,
 Section Subtotal,Sekce Mezisoučet,
 Section Footer,Zápatí sekce,
-Position,Pozice,
 Cash Flow Mapping,Mapování peněžních toků,
 Select Maximum Of 1,Vyberte možnost Maximálně 1,
 Is Finance Cost,Jsou finanční náklady,
@@ -4936,7 +4854,6 @@
 Previous Business Day,Předchozí pracovní den,
 Next Business Day,Následující pracovní den,
 Urgent,Naléhavý,
-Crop,Oříznutí,
 Crop Name,Název plodiny,
 Scientific Name,Odborný název,
 "You can define all the tasks which need to carried out for this crop here. The day field is used to mention the day on which the task needs to be carried out, 1 being the 1st day, etc.. ","Můžete definovat všechny úkoly, které je třeba provést pro tuto plodinu zde. Denní pole se používá k uvedení den, kdy má být úkol proveden, 1 je 1. den atd.",
@@ -5441,7 +5358,6 @@
 To TIme,Chcete-li čas,
 Course End Date,Konec Samozřejmě Datum,
 Course Topic,Téma kurzu,
-Topic,Téma,
 Topic Name,Název tématu,
 Education Settings,Nastavení vzdělávání,
 Current Academic Year,Aktuální akademický rok,
@@ -5516,7 +5432,6 @@
 Check this if the Student is residing at the Institute's Hostel.,"Zkontrolujte, zda student bydlí v Hostelu ústavu.",
 Walking,Chůze,
 Institute's Bus,Autobus ústavu,
-Public Transport,Veřejná doprava,
 Self-Driving Vehicle,Samohybné vozidlo,
 Pick/Drop by Guardian,Pick / Drop od Guardian,
 Enrolled courses,Zapsané kurzy,
@@ -5697,7 +5612,6 @@
 Default Cost Center,Výchozí Center Náklady,
 Undeposited Funds Account,Účet neukladaných prostředků,
 Shopify Log,Shopify Přihlásit,
-Request Data,Žádost o údaje,
 Shopify Settings,Shopify Nastavení,
 status html,status html,
 Enable Shopify,Povolit funkci Shopify,
@@ -5817,7 +5731,6 @@
 Exercise Instructions,Pokyny ke cvičení,
 Exercise Video,Cvičební video,
 Exercise Steps,Cvičení,
-Steps,Kroky,
 Steps Table,Tabulka kroků,
 Exercise Type Step,Krok typu cvičení,
 Max number of visit,Maximální počet návštěv,
@@ -6001,7 +5914,6 @@
 Patient Encounter Symptom,Příznak setkání pacienta,
 HLC-PMR-.YYYY.-,HLC-PMR-.YYYY.-,
 Attach Medical Record,Připojte lékařský záznam,
-Reference DocType,Referenční DocType,
 Spouse,Manželka,
 Family,Rodina,
 Schedule Details,Podrobnosti plánu,
@@ -6983,16 +6895,8 @@
 HTML / Banner that will show on the top of product list.,"HTML / Banner, který se zobrazí nahoře v produktovém listu.",
 Set prefix for numbering series on your transactions,Nastavit prefix pro číslování série na vašich transakcí,
 Setup Series,Nastavení číselných řad,
-Select Transaction,Vybrat Transaction,
-Help HTML,Nápověda HTML,
-Series List for this Transaction,Řada seznam pro tuto transakci,
-User must always select,Uživatel musí vždy vybrat,
-Check this if you want to force the user to select a series before saving. There will be no default if you check this.,"Zaškrtněte, pokud chcete, aby uživateli vybrat sérii před uložením. Tam bude žádná výchozí nastavení, pokud jste zkontrolovat.",
 Update Series,Řada Aktualizace,
 Change the starting / current sequence number of an existing series.,Změnit výchozí / aktuální pořadové číslo existujícího série.,
-Prefix,Prefix,
-This is the number of the last created transaction with this prefix,To je číslo poslední vytvořené transakci s tímto prefixem,
-Update Series Number,Aktualizace Series Number,
 Quotation Lost Reason,Důvod ztráty nabídky,
 A third party distributor / dealer / commission agent / affiliate / reseller who sells the companies products for a commission.,"Distributor / dealer / jednatel / partner / prodejce, který prodává produkty společnosti za provizi.",
 Sales Partner Name,Sales Partner Name,
@@ -7687,7 +7591,6 @@
 Warehouse wise Item Balance Age and Value,Warehouse wise Item Balance věk a hodnota,
 Work Order Stock Report,Zpráva o stavu pracovní smlouvy,
 Work Orders in Progress,Pracovní příkazy v procesu,
-Validation Error,Chyba ověření,
 Automatically Process Deferred Accounting Entry,Automaticky zpracovat odložený účetní záznam,
 Bank Clearance,Bankovní odbavení,
 Bank Clearance Detail,Podrobnosti o bankovním odbavení,
@@ -7724,45 +7627,7 @@
 Therapy Plan: ,Terapeutický plán:,
 Total Counts Targeted: ,Celkový počet zacílených:,
 Total Counts Completed: ,Celkový počet dokončených:,
-Andaman and Nicobar Islands,Andamanské a Nikobarské ostrovy,
-Andhra Pradesh,Andhra Pradesh,
-Arunachal Pradesh,Arunáčalpradéš,
-Assam,Assam,
-Bihar,Bihar,
-Chandigarh,Chandigarh,
-Chhattisgarh,Chhattisgarh,
-Dadra and Nagar Haveli,Dadra a Nagar Haveli,
-Daman and Diu,Daman a Diu,
-Delhi,Dillí,
-Goa,Goa,
-Gujarat,Gudžarát,
-Haryana,Haryana,
-Himachal Pradesh,Himáčalpradéš,
-Jammu and Kashmir,Džammú a Kašmír,
-Jharkhand,Jharkhand,
-Karnataka,Karnataka,
-Kerala,Kerala,
-Lakshadweep Islands,Ostrovy Lakshadweep,
-Madhya Pradesh,Madhya Pradesh,
-Maharashtra,Maharashtra,
-Manipur,Manipur,
-Meghalaya,Meghalaya,
-Mizoram,Mizoram,
-Nagaland,Nagaland,
-Odisha,Urísa,
-Other Territory,Jiné území,
-Pondicherry,Pondicherry,
-Punjab,Paňdžáb,
-Rajasthan,Rádžasthán,
-Sikkim,Sikkim,
-Tamil Nadu,Tamil Nadu,
-Telangana,Telangana,
-Tripura,Tripura,
-Uttar Pradesh,Uttarpradéš,
-Uttarakhand,Uttarakhand,
-West Bengal,Západní Bengálsko,
 Is Mandatory,Je povinná,
-Published on,Publikováno dne,
 Service Received But Not Billed,"Služba přijata, ale není účtována",
 Deferred Accounting Settings,Nastavení odloženého účetnictví,
 Book Deferred Entries Based On,Zarezervujte odložené položky na základě,
@@ -8035,8 +7900,6 @@
 Worksheet Instructions,Pokyny k listu,
 Result Legend Print,Výsledek Tisk legendy,
 Print Position,Pozice tisku,
-Bottom,Dno,
-Top,Horní,
 Both,Oba,
 Result Legend,Legenda výsledku,
 Lab Tests,Laboratorní testy,
@@ -8081,12 +7944,10 @@
 Approvers,Schvalovatelé,
 The first Approver in the list will be set as the default Approver.,První schvalovatel v seznamu bude nastaven jako výchozí schvalovatel.,
 Shift Request Approver,Schvalovatel žádosti o změnu,
-PAN Number,PAN číslo,
 Provident Fund Account,Účet fondu Provident,
 MICR Code,Kód MICR,
 Repay unclaimed amount from salary,Vrátit nevyzvednutou částku z platu,
 Deduction from salary,Srážka z platu,
-Expired Leaves,Vypršela platnost listů,
 If this is not checked the loan by default will be considered as a Demand Loan,"Pokud to není zaškrtnuto, bude se úvěr ve výchozím nastavení považovat za půjčku na vyžádání",
 This account is used for booking loan repayments from the borrower and also disbursing loans to the borrower,Tento účet slouží k rezervaci splátek půjčky od dlužníka a také k vyplácení půjček dlužníkovi,
 This account is capital account which is used to allocate capital for loan disbursal account ,"Tento účet je kapitálovým účtem, který se používá k přidělení kapitálu pro účet vyplácení půjček",
@@ -8844,3 +8705,41 @@
 Creating Purchase Order ...,Vytváření nákupní objednávky ...,
 "Select a Supplier from the Default Suppliers of the items below. On selection, a Purchase Order will be made against items belonging to the selected Supplier only.",Vyberte dodavatele z výchozích dodavatelů níže uvedených položek. Při výběru bude provedena objednávka pouze na položky patřící vybranému dodavateli.,
 Row #{}: You must select {} serial numbers for item {}.,Řádek # {}: Musíte vybrat {} sériová čísla pro položku {}.,
+Add Comment,Přidat komentář,
+More...,Více...,
+Notes,Poznámky,
+Payment Gateway,Platební brána,
+Payment Gateway Name,Název platební brány,
+Payments,Platby,
+Plan Name,Název plánu,
+Portal,Portál,
+Scan Barcode,Naskenujte čárový kód,
+Some information is missing,Některé informace chybí,
+Successful,Úspěšný,
+Tools,Nástroje,
+Use Sandbox,použití Sandbox,
+Busy,Zaneprázdněný,
+Completed By,Dokončeno,
+Payment Failed,Platba selhala,
+Column {0},Sloupec {0},
+Field Mapping,Polní mapování,
+Not Specified,Nespecifikováno,
+Update Type,Typ aktualizace,
+Dr,Dr,
+End Time,End Time,
+Fetching...,Okouzlující...,
+"It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","Zdá se, že je problém s konfigurací proužku serveru. V případě selhání bude částka vrácena na váš účet.",
+Looks like someone sent you to an incomplete URL. Please ask them to look into it.,"Vypadá to, že vám někdo zaslal neúplnémý URL. Požádejte ho, aby to zkontroloval.",
+Master,Hlavní,
+Pay,Zaplatit,
+You can also copy-paste this link in your browser,Můžete také kopírovat - vložit tento odkaz do Vašeho prohlížeče,
+Verified By,Verified By,
+Invalid naming series (. missing) for {0},Neplatná pojmenovací řada (. Chybí) pro {0},
+Phone Number,Telefonní číslo,
+Account SID,SID účtu,
+Global Defaults,Globální Výchozí,
+Is Mandatory,Je povinná,
+WhatsApp,WhatsApp,
+Make a call,Zavolat,
+Approve,Schvalovat,
+Reject,Odmítnout,
diff --git a/erpnext/translations/da.csv b/erpnext/translations/da.csv
index 09aaa15..138da5d 100644
--- a/erpnext/translations/da.csv
+++ b/erpnext/translations/da.csv
@@ -113,7 +113,6 @@
 Add Items,Tilføj varer,
 Add Leads,Tilføj emner,
 Add Multiple Tasks,Tilføj flere opgaver,
-Add Row,Tilføj række,
 Add Sales Partners,Tilføj salgspartnere,
 Add Serial No,Tilføj serienummer,
 Add Students,Tilføj studerende,
@@ -211,9 +210,7 @@
 An error occurred during the update process,Der opstod en fejl under opdateringsprocessen,
 "An item exists with same name ({0}), please change the item group name or rename the item","En vare eksisterer med samme navn ({0}), og du bedes derfor ændre navnet på varegruppen eller omdøbe varen",
 Analyst,Analytiker,
-Analytics,Analyser,
 Annual Billing: {0},Årlig fakturering: {0},
-Anonymous,Anonym,
 Another Budget record '{0}' already exists against {1} '{2}' and account '{3}' for fiscal year {4},En anden budgetpost &#39;{0}&#39; eksisterer allerede mod {1} &#39;{2}&#39; og konto &#39;{3}&#39; for regnskabsår {4},
 Another Period Closing Entry {0} has been made after {1},En anden Periode Lukning indtastning {0} er blevet foretaget efter {1},
 Another Sales Person {0} exists with the same Employee id,En anden salgsmedarbejder {0} eksisterer med samme Medarbejder-id,
@@ -283,14 +280,12 @@
 Attendance not submitted for {0} as {1} on leave.,Tilstedeværelse er ikke indsendt til {0} som {1} med orlov.,
 Attribute table is mandatory,Attributtabellen er obligatorisk,
 Attribute {0} selected multiple times in Attributes Table,Attribut {0} valgt flere gange i attributter Tabel,
-Author,Forfatter,
 Authorized Signatory,Tegningsberettiget,
 Auto Material Requests Generated,Automatisk materialeanmodning dannet,
 Auto Repeat,Automatisk gentagelse,
 Auto repeat document updated,Automatisk gentag dokument opdateret,
 Automotive,Bil,
 Available,Tilgængelig,
-Available Leaves,Tilgængelige blade,
 Available Qty,Tilgængelig antal,
 Available Selling,Tilgængelig salg,
 Available for use date is required,Tilgængelig til brug dato er påkrævet,
@@ -340,7 +335,6 @@
 Base URL,Basiswebadresse,
 Based On,Baseret på,
 Based On Payment Terms,Baseret på betalingsbetingelser,
-Basic,Grundlæggende,
 Batch,Parti,
 Batch Entries,Batchindgange,
 Batch ID is mandatory,Parti-id er obligatorisk,
@@ -361,7 +355,6 @@
 Billable Hours,Fakturerbare timer,
 Billed,billed,
 Billed Amount,Faktureret beløb,
-Billing,Fakturering,
 Billing Address,Faktureringsadresse,
 Billing Address is same as Shipping Address,Faktureringsadresse er den samme som forsendelsesadresse,
 Billing Amount,Faktureret beløb,
@@ -560,7 +553,6 @@
 Consumed Qty,Forbrugt antal,
 Consumer Products,Forbrugerprodukter,
 Contact,Kontakt,
-Contact Details,Kontaktoplysninger,
 Contact Us,Kontakt os,
 Content,Indhold,
 Content Masters,Content Masters,
@@ -715,7 +707,6 @@
 Date of Joining,Ansættelsesdato,
 Date of Joining must be greater than Date of Birth,Ansættelsesdato skal være større end fødselsdato,
 Date of Transaction,Dato for transaktion,
-Datetime,Datetime,
 Day,Dag,
 Debit,Debet,
 Debit ({0}),Debitering ({0}),
@@ -874,7 +865,6 @@
 Employee cannot report to himself.,Medarbejder kan ikke referere til sig selv.,
 Employee {0} has already applied for {1} between {2} and {3} : ,Medarbejder {0} har allerede ansøgt om {1} mellem {2} og {3}:,
 Employee {0} of grade {1} have no default leave policy,Medarbejder {0} i lønklasse {1} har ingen standardlovspolitik,
-Enable,Aktiver,
 Enable / disable currencies.,Aktivér / deaktivér valuta.,
 Enabled,Aktiv,
 "Enabling 'Use for Shopping Cart', as Shopping Cart is enabled and there should be at least one Tax Rule for Shopping Cart","Aktivering »anvendelse til indkøbskurv"", som indkøbskurv er aktiveret, og der skal være mindst én momsregel til Indkøbskurven",
@@ -905,7 +895,6 @@
 Error: Not a valid id?,Fejl: Ikke et gyldigt id?,
 Estimated Cost,Anslåede omkostninger,
 "Even if there are multiple Pricing Rules with highest priority, then following internal priorities are applied:","Selv hvis der er flere Priser Regler med højeste prioritet, derefter følgende interne prioriteringer anvendt:",
-Event,Begivenhed,
 Exchange Gain/Loss,Exchange Gevinst / Tab,
 Exchange Rate Revaluation master.,Valutakursrevalueringsmester.,
 Exchange Rate must be same as {0} {1} ({2}),Vekselkurs skal være det samme som {0} {1} ({2}),
@@ -1032,7 +1021,6 @@
 From value must be less than to value in row {0},Fra værdi skal være mindre end at værdien i række {0},
 From {0} | {1} {2},Fra {0} | {1} {2},
 Fulfillment,Opfyldelse,
-Full,Fuld,
 Full Name,Navn,
 Fully Depreciated,fuldt afskrevet,
 Furnitures and Fixtures,Havemøbler og Kampprogram,
@@ -1133,7 +1121,6 @@
 Hub Sync ID,Hub Sync ID,
 Human Resource,Menneskelige ressourcer,
 Human Resources,Medarbejdere,
-IFSC Code,IFSC-kode,
 IGST Amount,IGST Beløb,
 IP Address,IP-adresse,
 ITC Available (whether in full op part),ITC tilgængelig (uanset om det er i fuld op-del),
@@ -1185,7 +1172,6 @@
 Ineligible ITC,Ikke-støtteberettiget ITC,
 Initiated,Indledt,
 Inpatient Record,Inpatient Record,
-Insert,Indsæt,
 Installation Note,Installation Bemærk,
 Installation Note {0} has already been submitted,Installation Bemærk {0} er allerede blevet indsendt,
 Installation date cannot be before delivery date for Item {0},Installation dato kan ikke være før leveringsdato for Item {0},
@@ -1197,7 +1183,6 @@
 Insurance Start date should be less than Insurance End date,Forsikring Startdato skal være mindre end Forsikring Slutdato,
 Integrated Tax,Integreret Skat,
 Inter-State Supplies,Mellemstatlige forsyninger,
-Interests,Interesser,
 Internet Publishing,Internet Publishing,
 Intra-State Supplies,Mellemstatlige forsyninger,
 Introduction,Introduktion,
@@ -1316,7 +1301,6 @@
 Lab testing datetime cannot be before collection datetime,Lab testning datetime kan ikke være før datetime samling,
 Label,Label,
 Laboratory,Laboratorium,
-Language Name,Sprognavn,
 Large,Stor,
 Last Communication,Sidste Kommunikation,
 Last Communication Date,Sidste kommunikationsdato,
@@ -1347,8 +1331,6 @@
 Letter Heads for print templates.,Brevhoveder til udskriftsskabeloner.,
 Level,Niveau,
 Liability,Passiver,
-License,Licens,
-Limit,Begrænse,
 Limit Crossed,Grænse overskredet,
 Link to Material Request,Link til materialeanmodning,
 List of all share transactions,Liste over alle aktietransaktioner,
@@ -1359,7 +1341,6 @@
 Loans (Liabilities),Lån (passiver),
 Loans and Advances (Assets),Udlån (aktiver),
 Local,Lokal,
-Log,Log,
 Logs for maintaining sms delivery status,Logs for opretholdelse sms leveringsstatus,
 Lost,Tabt,
 Lost Reasons,Tabte grunde,
@@ -1445,7 +1426,6 @@
 Medical Department,Medicinsk afdeling,
 Medical Record,Medicinsk journal,
 Medium,Medium,
-Meeting,Møde,
 Member Activity,Medlem Aktivitet,
 Member ID,Medlems ID,
 Member Name,Medlems navn,
@@ -1495,7 +1475,6 @@
 Multiple Variants,Flere varianter,
 Multiple fiscal years exist for the date {0}. Please set company in Fiscal Year,Flere regnskabsår findes for den dato {0}. Indstil selskab i regnskabsåret,
 Music,musik,
-My Account,Min konto,
 Name error: {0},Navn fejl: {0},
 Name of new Account. Note: Please don't create accounts for Customers and Suppliers,Navn på ny konto. Bemærk: Du må ikke oprette konti for kunder og leverandører,
 Name or Email is mandatory,Navn eller e-mail er obligatorisk,
@@ -1538,7 +1517,6 @@
 New credit limit is less than current outstanding amount for the customer. Credit limit has to be atleast {0},Ny kreditmaksimum er mindre end nuværende udestående beløb for kunden. Credit grænse skal være mindst {0},
 New task,Ny opgave,
 New {0} pricing rules are created,Nye {0} prisregler oprettes,
-Newsletters,Nyhedsbreve,
 Newspaper Publishers,Dagbladsudgivere,
 Next,Næste,
 Next Contact By cannot be same as the Lead Email Address,Næste kontakt af kan ikke være den samme som emnets e-mailadresse,
@@ -1686,7 +1664,6 @@
 Other,Andre,
 Other Reports,Andre rapporter,
 "Other outward supplies(Nil rated,Exempted)","Andre udgående leverancer (Nul bedømt, undtaget)",
-Others,Andre,
 Out Qty,Out Antal,
 Out Value,Out Value,
 Out of Order,Virker ikke,
@@ -1726,7 +1703,6 @@
 Party Type and Party is mandatory for {0} account,Selskabstype og Selskab er obligatorisk for {0} konto,
 Party Type is mandatory,Selskabstypen er obligatorisk,
 Party is mandatory,Party er obligatorisk,
-Password,Adgangskode,
 Past Due Date,Forfaldsdato,
 Patient,Patient,
 Patient Appointment,Patientaftale,
@@ -1784,7 +1760,6 @@
 Pharmaceutical,Farmaceutiske,
 Pharmaceuticals,Lægemidler,
 Physician,Læge,
-Pincode,Pinkode,
 Place Of Supply (State/UT),Leveringssted (Stat / UT),
 Place Order,Angiv bestilling,
 Plan Name,Plan navn,
@@ -1896,7 +1871,6 @@
 Please select date,Vælg venligst dato,
 Please select item code,Vælg Varenr.,
 Please select month and year,Vælg måned og år,
-Please select prefix first,Vælg venligst præfiks først,
 Please select the Company,Vælg venligst firmaet,
 Please select the Multiple Tier Program type for more than one collection rules.,Vælg venligst flere tierprogramtype for mere end én samlingsregler.,
 Please select the assessment group other than 'All Assessment Groups',Vælg venligst vurderingsgruppen bortset fra &#39;Alle vurderingsgrupper&#39;,
@@ -1913,7 +1887,6 @@
 Please set Company filter blank if Group By is 'Company',"Indstil Firmafilter blankt, hvis Group By er &#39;Company&#39;",
 Please set Default Payroll Payable Account in Company {0},Venligst sæt Standard Payroll Betales konto i Company {0},
 Please set Depreciation related Accounts in Asset Category {0} or Company {1},Venligst sæt Afskrivninger relaterede konti i Asset kategori {0} eller Company {1},
-Please set Email Address,Angiv e-mail adresse,
 Please set GST Accounts in GST Settings,Indstil venligst GST-konti i GST-indstillinger,
 Please set Hotel Room Rate on {},Indstil hotelpris på {},
 Please set Number of Depreciations Booked,Venligst sæt Antal Afskrivninger Reserveret,
@@ -1936,7 +1909,6 @@
 Please set the Email ID for the Student to send the Payment Request,Angiv e-mail-id til den studerende for at sende betalingsanmodningen,
 Please set the Item Code first,Indstil varenummeret først,
 Please set the Payment Schedule,Angiv betalingsplanen,
-Please set the series to be used.,"Indstil den serie, der skal bruges.",
 Please set {0} for address {1},Angiv {0} for adresse {1},
 Please setup Students under Student Groups,Opsæt venligst studerende under elevgrupper,
 Please specify Company,Angiv venligst firma,
@@ -1953,7 +1925,6 @@
 Point-of-Sale,Kassesystem,
 Point-of-Sale Profile,Kassesystemprofil,
 Portal,Portal,
-Portal Settings,Portal Indstillinger,
 Possible Supplier,Mulig leverandør,
 Postal Expenses,Portoudgifter,
 Posting Date,Bogføringsdato,
@@ -2152,12 +2123,10 @@
 Reference No is mandatory if you entered Reference Date,"Referencenummer er obligatorisk, hvis du har indtastet reference Dato",
 Reference No.,Referencenummer.,
 Reference Number,Referencenummer,
-Reference Owner,henvisning Ejer,
 Reference Type,Henvisning Type,
 "Reference: {0}, Item Code: {1} and Customer: {2}","Reference: {0}, varekode: {1} og kunde: {2}",
 References,Referencer,
 Refresh Token,Opdater Token,
-Region,Region,
 Register,Tilmeld,
 Rejected,Afvist,
 Related,Relaterede,
@@ -2179,7 +2148,6 @@
 Replace BOM and update latest price in all BOMs,Erstat BOM og opdater seneste pris i alle BOM&#39;er,
 Replied,Svarede,
 Report,Rapport,
-Report Builder,Rapportgenerator,
 Report Type,Kontotype,
 Report Type is mandatory,Kontotype er obligatorisk,
 Reports,Rapporter,
@@ -2355,13 +2323,11 @@
 Same Company is entered more than once,Samme firma er indtastet mere end én gang,
 Same item cannot be entered multiple times.,Samme vare kan ikke indtastes flere gange.,
 Same supplier has been entered multiple times,Samme leverandør er indtastet flere gange,
-Sample,Prøve,
 Sample Collection,Prøveopsamling,
 Sample quantity {0} cannot be more than received quantity {1},Prøvekvantitet {0} kan ikke være mere end modtaget mængde {1},
 Sanctioned,sanktioneret,
 Sand,Sand,
 Saturday,Lørdag,
-Saved,Gemt,
 Saving {0},Gemmer {0},
 Scan Barcode,Scan stregkode,
 Schedule,Køreplan,
@@ -2463,7 +2429,6 @@
 Series Updated,Nummerserien opdateret,
 Series Updated Successfully,Nummerserien opdateret,
 Series is mandatory,Nummerserien er obligatorisk,
-Series {0} already used in {1},Serien {0} allerede anvendes i {1},
 Service,Service,
 Service Level Agreement,Serviceniveauaftale,
 Service Level Agreement.,Serviceniveauaftale.,
@@ -2479,7 +2444,6 @@
 Set Tax Rule for shopping cart,Sæt momsregel for indkøbskurv,
 Set as Closed,Angiv som Lukket,
 Set as Completed,Indstil som afsluttet,
-Set as Default,Indstil som standard,
 Set as Lost,Sæt som tabt,
 Set as Open,Sæt som Open,
 Set default inventory account for perpetual inventory,Indstil standard lagerkonto for evigvarende opgørelse,
@@ -2511,7 +2475,6 @@
 Shareholder,Aktionær,
 Ship To State,Skib til stat,
 Shipments,forsendelser,
-Shipping,Forsendelse,
 Shipping Address,Leveringsadresse,
 "Shipping Address does not have country, which is required for this Shipping Rule","Forsendelsesadresse har ikke land, som er påkrævet for denne forsendelsesregel",
 Shipping rule only applicable for Buying,Forsendelsesregel gælder kun for køb,
@@ -2564,7 +2527,6 @@
 Split Batch,Opdel parti,
 Split Issue,Split Issue,
 Sports,Sport,
-Standard,Standard,
 Standard Buying,Standard Buying,
 Standard Selling,Standard salg,
 Standard contract terms for Sales or Purchase.,Standardkontraktvilkår for Salg eller Indkøb.,
@@ -2731,7 +2693,6 @@
 Terms and Conditions,Betingelser,
 Terms and Conditions Template,Skabelon til vilkår og betingelser,
 Territory,Område,
-Test,Prøve,
 Thank you for your business!,Tak for din forretning!,
 The 'From Package No.' field must neither be empty nor it's value less than 1.,Fra pakke nr. feltet må hverken være tomt eller det er mindre end 1.,
 The Brand,Varemærket,
@@ -2848,7 +2809,6 @@
 Total (Without Tax),I alt (uden skat),
 Total Achieved,Total Opnået,
 Total Actual,Samlede faktiske,
-Total Allocated Leaves,Samlede tildelte blade,
 Total Amount,Samlet beløb,
 Total Amount Credited,Samlede beløb krediteret,
 Total Applicable Charges in Purchase Receipt Items table must be same as Total Taxes and Charges,Total gældende takster i købskvitteringsvaretabel skal være det samme som de samlede skatter og afgifter,
@@ -2892,7 +2852,6 @@
 Total(Amt),I alt (Amt),
 Total(Qty),I alt (Antal),
 Traceability,Sporbarhed,
-Traceback,Spore tilbage,
 Track Leads by Lead Source.,Sporledninger af blykilde.,
 Transaction,Transaktion,
 Transaction Date,Transaktionsdato,
@@ -2930,7 +2889,6 @@
 UOM Conversion factor is required in row {0},UOM Omregningsfaktor kræves i række {0},
 UOM coversion factor required for UOM: {0} in Item: {1},UOM coversion faktor kræves for Pakke: {0} i Konto: {1},
 URL,URL,
-Unable to find DocType {0},Kunne ikke finde DocType {0},
 Unable to find exchange rate for {0} to {1} for key date {2}. Please create a Currency Exchange record manually,Kan ikke finde valutakurs for {0} til {1} for nøgle dato {2}. Opret venligst en valutaudvekslingsoptegnelse manuelt,
 Unable to find score starting at {0}. You need to have standing scores covering 0 to 100,Kunne ikke finde nogen score fra {0}. Du skal have stående scoringer på mellem 0 og 100,
 Unable to find variable: ,Kan ikke finde variabel:,
@@ -2960,7 +2918,6 @@
 Upload your letter head and logo. (you can edit them later).,Upload dit brevhoved og logo. (du kan redigere dem senere).,
 Upper Income,Upper Indkomst,
 Use Sandbox,Brug Sandbox,
-Used Leaves,Brugte blade,
 User,Bruger,
 User ID,Bruger-id,
 User ID not set for Employee {0},Bruger-id ikke indstillet til Medarbejder {0},
@@ -3051,7 +3008,6 @@
 Website Settings,Opsætning af hjemmeside,
 Wednesday,Onsdag,
 Week,Uge,
-Weekdays,Hverdage,
 Weekly,Ugentlig,
 "Weight is mentioned,\nPlease mention ""Weight UOM"" too","Vægt er nævnt, \ nVenligst nævne &quot;Weight UOM&quot; for",
 Welcome email sent,Velkomst-e-mail sendt,
@@ -3072,7 +3028,6 @@
 Work Order {0} must be submitted,Arbejdsordre {0} skal indsendes,
 Work Orders Created: {0},Arbejdsordrer oprettet: {0},
 Work-in-Progress Warehouse is required before Submit,"Work-in-Progress Warehouse er nødvendig, før Indsend",
-Workflow,Workflow,
 Working,Working,
 Working Hours,Arbejdstider,
 Workstation,Arbejdsstation,
@@ -3102,7 +3057,6 @@
 You need to be a user other than Administrator with System Manager and Item Manager roles to register on Marketplace.,Du skal være en anden bruger end Administrator med System Manager og Item Manager roller for at registrere dig på Marketplace.,
 You need to be a user with System Manager and Item Manager roles to add users to Marketplace.,Du skal være bruger med System Manager og Item Manager roller for at tilføje brugere til Marketplace.,
 You need to be a user with System Manager and Item Manager roles to register on Marketplace.,Du skal være en bruger med System Manager og Item Manager roller til at registrere på Marketplace.,
-You need to be logged in to access this page,Du skal være logget ind for at få adgang til denne side,
 You need to enable Shopping Cart,Du skal aktivere Indkøbskurven,
 You will lose records of previously generated invoices. Are you sure you want to restart this subscription?,"Du vil miste optegnelser over tidligere genererede fakturaer. Er du sikker på, at du vil genstarte dette abonnement?",
 Your Organization,Din organisation,
@@ -3218,7 +3172,6 @@
 Assigned To,Tildelt til,
 Chat,Chat,
 Completed By,Færdiggjort af,
-County,Anvendes ikke,
 Day of Week,Ugedag,
 "Dear System Manager,","Kære Systemadministrator,",
 Default Value,Standardværdi,
@@ -3229,31 +3182,21 @@
 Fieldtype,FieldType,
 Help Articles,Hjælp artikler,
 ID,ID,
-Images,Billeder,
 Import,Import,
 Language,Sprog,
 Likes,Likes,
 Merge with existing,Sammenlæg med eksisterende,
-Office,Kontor,
 Orientation,Orientering,
 Parent,Parent,
-Passive,Inaktiv,
 Payment Failed,Betaling mislykkedes,
-Permanent,Permanent,
 Personal,Personlig,
-Plant,Plant,
 Post,Indlæg,
-Postal,Postal,
 Postal Code,postnummer,
-Previous,Forrige,
 Provider,provider,
 Read Only,Skrivebeskyttet,
 Recipient,Modtager,
 Reviews,Anmeldelser,
 Sender,Afsender,
-Shop,Butik,
-Subsidiary,Datterselskab,
-There is some problem with the file url: {0},Der er nogle problemer med filen url: {0},
 There were errors while sending email. Please try again.,Der var fejl under afsendelse af e-mail. Prøv venligst igen.,
 Values Changed,Værdier ændret,
 or,eller,
@@ -3280,19 +3223,16 @@
 Quality Feedback Template,Kvalitetsfeedback-skabelon,
 Rules for applying different promotional schemes.,Regler for anvendelse af forskellige salgsfremmende ordninger.,
 Show {0},Vis {0},
-"Special Characters except '-', '#', '.', '/', '{{' and '}}' not allowed in naming series {0}","Specialtegn undtagen &quot;-&quot;, &quot;#&quot;, &quot;.&quot;, &quot;/&quot;, &quot;{{&quot; Og &quot;}}&quot; er ikke tilladt i navngivningsserier {0}",
 Target Details,Måldetaljer,
 {0} already has a Parent Procedure {1}.,{0} har allerede en overordnet procedure {1}.,
 API,API,
 Annual,Årligt,
 Change,Ændring,
 Contact Email,Kontakt e-mail,
-Export Type,Eksporttype,
 From Date,Fra dato,
 Group By,Gruppér efter,
 Invalid URL,ugyldig URL,
 Landscape,Landskab,
-Last Sync On,Sidste synkronisering,
 Naming Series,Navngivningsnummerserie,
 No data to export,Ingen data at eksportere,
 Portrait,Portræt,
@@ -3302,7 +3242,6 @@
 Show Document,Vis dokument,
 Show Traceback,Vis traceback,
 Video,video,
-Webhook Secret,Webhook Secret,
 % Of Grand Total,% Af det samlede antal,
 <b>Company</b> is a mandatory filter.,<b>Virksomheden</b> er et obligatorisk filter.,
 <b>From Date</b> is a mandatory filter.,<b>Fra dato</b> er et obligatorisk filter.,
@@ -3358,7 +3297,6 @@
 BOM Comparison Tool,BOM-sammenligningsværktøj,
 BOM recursion: {0} cannot be child of {1},BOM-rekursion: {0} kan ikke være barn af {1},
 BOM recursion: {0} cannot be parent or child of {1},BOM-rekursion: {0} kan ikke være forælder eller barn til {1},
-Back to Home,Tilbage til hjemmet,
 Back to Messages,Tilbage til meddelelser,
 Bank Data mapper doesn't exist,Bankdatakortlægning findes ikke,
 Bank Details,Bank detaljer,
@@ -3420,7 +3358,6 @@
 Currency,Valuta,
 Current Status,Aktuel status,
 Customer PO,Kundepost,
-Customize,Tilpas,
 Daily,Daglig,
 Date,Dato,
 Date of Birth cannot be greater than Joining Date.,Fødselsdato kan ikke være større end tiltrædelsesdato.,
@@ -3454,7 +3391,6 @@
 ERPNext could not find any matching payment entry,ERPNext kunne ikke finde nogen matchende betalingsindgang,
 Earliest Age,Tidligste alder,
 Edit Details,Rediger detaljer,
-Edit Profile,Rediger profil,
 Either GST Transporter ID or Vehicle No is required if Mode of Transport is Road,"Enten GST Transporter ID eller køretøjsnummer er påkrævet, hvis transportform er vej",
 Email,EMail,
 Email Campaigns,E-mail-kampagner,
@@ -3482,7 +3418,6 @@
 Fetch Items from Warehouse,Hent genstande fra lageret,
 Fetching...,Henter ...,
 Field,Felt,
-File Manager,Filadministrator,
 Filters,Filtre,
 Finding linked payments,Finde tilknyttede betalinger,
 Fleet Management,Firmabiler,
@@ -3521,7 +3456,6 @@
 Incorrect Warehouse,Forkert lager,
 Invalid Barcode. There is no Item attached to this barcode.,Ugyldig stregkode. Der er ingen ting knyttet til denne stregkode.,
 Invalid credentials,Ugyldige legitimationsoplysninger,
-Invite as User,Inviter som Bruger,
 Issue Priority.,Udgaveprioritet.,
 Issue Type.,Udgavetype.,
 "It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.",Det ser ud som om der er et problem med serverens stribekonfiguration. I tilfælde af fejl bliver beløbet refunderet til din konto.,
@@ -3564,7 +3498,6 @@
 New Invoice,Ny faktura,
 New Payment,Ny betaling,
 New release date should be in the future,Ny udgivelsesdato skulle være i fremtiden,
-Newsletter,Nyhedsbrev,
 No Account matched these filters: {},Ingen konto matchede disse filtre: {},
 No communication found.,Ingen kommunikation fundet.,
 No correct answer is set for {0},Intet korrekt svar er indstillet til {0},
@@ -3640,7 +3573,6 @@
 Please setup a default bank account for company {0},Opret en standard bankkonto for firmaet {0},
 Please specify,Angiv venligst,
 Please specify a {0},Angiv en {0},lead
-Printing,Udskrivning,
 Priority,Prioritet,
 Priority has been changed to {0}.,Prioritet er ændret til {0}.,
 Priority {0} has been repeated.,Prioritet {0} er blevet gentaget.,
@@ -3649,7 +3581,6 @@
 Project,Sag,
 Provide the academic year and set the starting and ending date.,"Angiv studieåret, og angiv start- og slutdato.",
 Public token is missing for this bank,Der mangler en offentlig token til denne bank,
-Publish,Offentliggøre,
 Publish 1 Item,Publicer 1 vare,
 Publish Items,Publicer genstande,
 Publish More Items,Publicer flere varer,
@@ -3677,7 +3608,6 @@
 Reconciled,Afstemt,
 Recruitment,Rekruttering,
 Red,Rød,
-Refreshing,Opfrisker,
 Release date must be in the future,Udgivelsesdato skal være i fremtiden,
 Relieving Date must be greater than or equal to Date of Joining,Fritagelsesdato skal være større end eller lig med tiltrædelsesdato,
 Rename,Omdøb,
@@ -3721,7 +3651,6 @@
 Search for a payment,Søg efter en betaling,
 Search for anything ...,Søg efter noget ...,
 Search results for,Søgeresultater for,
-Select All,Vælg alt,
 Select Difference Account,Vælg Difference Account,
 Select a Default Priority.,Vælg en standardprioritet.,
 Select a company,Vælg et firma,
@@ -3740,11 +3669,9 @@
 Service Level Agreement has been changed to {0}.,Serviceniveauaftale er ændret til {0}.,
 Service Level Agreement was reset.,Serviceniveauaftale blev nulstillet.,
 Service Level Agreement with Entity Type {0} and Entity {1} already exists.,Serviceniveauaftale med entitetstype {0} og enhed {1} findes allerede.,
-Set,Sæt,
 Set Meta Tags,Indstil metatags,
 Set {0} in company {1},Sæt {0} i firma {1},
 Setup,Opsætning,
-Setup Wizard,Opsætningsassistent,
 Shift Management,Shift Management,
 Show Future Payments,Vis fremtidige betalinger,
 Show Linked Delivery Notes,Vis tilknyttede leveringsnotater,
@@ -3815,7 +3742,6 @@
 Unreconciled,Uafstemt,
 Unsupported GST Category for E-Way Bill JSON generation,Ikke understøttet GST-kategori til e-vejs Bill JSON-generation,
 Update,Opdatering,
-Update Details,Opdater detaljer,
 Update Taxes for Items,Opdater skatter for varer,
 "Upload a bank statement, link or reconcile a bank account","Upload en kontoudtog, link eller forene en bankkonto",
 Upload a statement,Upload en erklæring,
@@ -3839,7 +3765,6 @@
 XML Files Processed,XML-filer behandlet,
 Year,År,
 Yearly,Årlig,
-You,Du,
 You are not allowed to enroll for this course,Du har ikke tilladelse til at tilmelde dig dette kursus,
 You are not enrolled in program {0},Du er ikke tilmeldt programmet {0},
 You can Feature upto 8 items.,Du kan indeholde op til 8 varer.,
@@ -3856,7 +3781,6 @@
 e-Way Bill already exists for this document,e-Way Bill findes allerede til dette dokument,
 woocommerce - {0},woocommerce - {0},
 {0} Coupon used are {1}. Allowed quantity is exhausted,{0} Brugt kupon er {1}. Den tilladte mængde er opbrugt,
-{0} Name,{0} Navn,
 {0} Operations: {1},{0} Handling: {1},
 {0} bank transaction(s) created,{0} banktransaktion (er) oprettet,
 {0} bank transaction(s) created and {1} errors,{0} banktransaktion (er) oprettet og {1} fejl,
@@ -3875,17 +3799,13 @@
 Total Income,Total indkomst,
 Total Income This Year,Samlet indkomst i år,
 Barcode,Stregkode,
-Bold,Fremhævet,
-Center,Centrer,
 Clear,Klar,
-Comment,Kommentar,
 Comments,Kommentarer,
 DocType,DocType,
 Download,Hent,
 Left,Venstre,
 Link,Link,
 New,Ny,
-Not Found,Ikke fundet,
 Print,Print,
 Reference Name,Reference navn,
 Refresh,Opdater,
@@ -3908,7 +3828,6 @@
 Email Id,E-mail-id,
 No,Nej,
 Reference Doctype,Henvisning DocType,
-User Id,Bruger ID,
 Yes,Ja,
 Actual ,Faktiske,
 Add to cart,Føj til indkøbsvogn,
@@ -4304,7 +4223,6 @@
 e.g Adjustments for:,fx justeringer for:,
 Section Subtotal,Sektion Subtotal,
 Section Footer,Sektion Footer,
-Position,Position,
 Cash Flow Mapping,Cash Flow Mapping,
 Select Maximum Of 1,Vælg Maksimum 1,
 Is Finance Cost,Er finansiering omkostninger,
@@ -4936,7 +4854,6 @@
 Previous Business Day,Tidligere Erhvervsdag,
 Next Business Day,Næste forretningsdag,
 Urgent,Hurtigst muligt,
-Crop,Afgrøde,
 Crop Name,Beskær Navn,
 Scientific Name,Videnskabeligt navn,
 "You can define all the tasks which need to carried out for this crop here. The day field is used to mention the day on which the task needs to be carried out, 1 being the 1st day, etc.. ","Du kan definere alle de opgaver, der skal udføres for denne afgrøde her. Dagfeltet bruges til at nævne den dag, hvorpå opgaven skal udføres, 1 er 1. dag mv.",
@@ -5441,7 +5358,6 @@
 To TIme,Til Time,
 Course End Date,Kursus slutdato,
 Course Topic,Kursusemne,
-Topic,Emne,
 Topic Name,Emnenavn,
 Education Settings,Uddannelsesindstillinger,
 Current Academic Year,Nuværende skoleår,
@@ -5516,7 +5432,6 @@
 Check this if the Student is residing at the Institute's Hostel.,"Tjek dette, hvis den studerende er bosiddende på instituttets Hostel.",
 Walking,gåture,
 Institute's Bus,Instituttets bus,
-Public Transport,Offentlig transport,
 Self-Driving Vehicle,Selvkørende køretøj,
 Pick/Drop by Guardian,Vælg / Drop af Guardian,
 Enrolled courses,Indskrevne kurser,
@@ -5697,7 +5612,6 @@
 Default Cost Center,Standard omkostningssted,
 Undeposited Funds Account,Undeposited Funds Account,
 Shopify Log,Shopify Log,
-Request Data,Forespørgselsdata,
 Shopify Settings,Shopify Indstillinger,
 status html,status html,
 Enable Shopify,Aktivér Shopify,
@@ -5817,7 +5731,6 @@
 Exercise Instructions,Træningsinstruktioner,
 Exercise Video,Træningsvideo,
 Exercise Steps,Øvelsestrin,
-Steps,Trin,
 Steps Table,Trin tabel,
 Exercise Type Step,Træningstypetrin,
 Max number of visit,Maks antal besøg,
@@ -6001,7 +5914,6 @@
 Patient Encounter Symptom,Symptom,
 HLC-PMR-.YYYY.-,HLC-PMR-.YYYY.-,
 Attach Medical Record,Vedhæft lægejournalen,
-Reference DocType,Reference DocType,
 Spouse,Ægtefælle,
 Family,Familie,
 Schedule Details,Kalenderdetaljer,
@@ -6983,16 +6895,8 @@
 HTML / Banner that will show on the top of product list.,"HTML / Banner, der vil vise på toppen af produktliste.",
 Set prefix for numbering series on your transactions,Sæt præfiks for nummerering serie om dine transaktioner,
 Setup Series,Opsætning af nummerserier,
-Select Transaction,Vælg Transaktion,
-Help HTML,Hjælp HTML,
-Series List for this Transaction,Serie Liste for denne transaktion,
-User must always select,Brugeren skal altid vælge,
-Check this if you want to force the user to select a series before saving. There will be no default if you check this.,"Markér dette hvis du ønsker at tvinge brugeren til at vælge en serie før du gemmer. Der vil ikke være standard, hvis du markerer dette.",
 Update Series,Opdatering Series,
 Change the starting / current sequence number of an existing series.,Skift start / aktuelle sekvensnummer af en eksisterende serie.,
-Prefix,Præfiks,
-This is the number of the last created transaction with this prefix,Dette er antallet af sidste skabte transaktionen med dette præfiks,
-Update Series Number,Opdatering Series Number,
 Quotation Lost Reason,Tilbud afvist - årsag,
 A third party distributor / dealer / commission agent / affiliate / reseller who sells the companies products for a commission.,"En distributør, forhandler, sælger eller butik, der sælger firmaets varer og tjenesteydelser mod en provision.",
 Sales Partner Name,Forhandlernavn,
@@ -7687,7 +7591,6 @@
 Warehouse wise Item Balance Age and Value,Lagerbetydende varebalance Alder og værdi,
 Work Order Stock Report,Arbejdsordre lagerrapport,
 Work Orders in Progress,Arbejdsordrer i gang,
-Validation Error,Valideringsfejl,
 Automatically Process Deferred Accounting Entry,Behandl automatisk udskudt bogføring,
 Bank Clearance,Bankgodkendelse,
 Bank Clearance Detail,Bankklaringsdetalje,
@@ -7724,45 +7627,7 @@
 Therapy Plan: ,Terapiplan:,
 Total Counts Targeted: ,Samlet antal målrettede mål:,
 Total Counts Completed: ,Samlede antal tællinger afsluttet:,
-Andaman and Nicobar Islands,Andaman- og Nicobarøerne,
-Andhra Pradesh,Andhra Pradesh,
-Arunachal Pradesh,Arunachal Pradesh,
-Assam,Assam,
-Bihar,Bihar,
-Chandigarh,Chandigarh,
-Chhattisgarh,Chhattisgarh,
-Dadra and Nagar Haveli,Dadra og Nagar Haveli,
-Daman and Diu,Daman og Diu,
-Delhi,Delhi,
-Goa,Goa,
-Gujarat,Gujarat,
-Haryana,Haryana,
-Himachal Pradesh,Himachal Pradesh,
-Jammu and Kashmir,Jammu og Kashmir,
-Jharkhand,Jharkhand,
-Karnataka,Karnataka,
-Kerala,Kerala,
-Lakshadweep Islands,Lakshadweep Islands,
-Madhya Pradesh,Madhya Pradesh,
-Maharashtra,Maharashtra,
-Manipur,Manipur,
-Meghalaya,Meghalaya,
-Mizoram,Mizoram,
-Nagaland,Nagaland,
-Odisha,Odisha,
-Other Territory,Andet territorium,
-Pondicherry,Pondicherry,
-Punjab,Punjab,
-Rajasthan,Rajasthan,
-Sikkim,Sikkim,
-Tamil Nadu,Tamil Nadu,
-Telangana,Telangana,
-Tripura,Tripura,
-Uttar Pradesh,Uttar Pradesh,
-Uttarakhand,Uttarakhand,
-West Bengal,Vestbengalen,
 Is Mandatory,Er obligatorisk,
-Published on,Udgivet den,
 Service Received But Not Billed,"Tjeneste modtaget, men ikke faktureret",
 Deferred Accounting Settings,Udskudte regnskabsindstillinger,
 Book Deferred Entries Based On,Book udskudte poster baseret på,
@@ -8035,8 +7900,6 @@
 Worksheet Instructions,Vejledning til regneark,
 Result Legend Print,Resultat Forklaring Udskriv,
 Print Position,Udskriv position,
-Bottom,Bund,
-Top,Top,
 Both,Begge,
 Result Legend,Resultatforklaring,
 Lab Tests,Lab test,
@@ -8081,12 +7944,10 @@
 Approvers,Approverser,
 The first Approver in the list will be set as the default Approver.,Den første godkender på listen indstilles som standardgodkenderen.,
 Shift Request Approver,Godkendelse af skiftanmodning,
-PAN Number,PAN-nummer,
 Provident Fund Account,Provident Fund-konto,
 MICR Code,MICR-kode,
 Repay unclaimed amount from salary,Tilbagebetal ikke-krævet beløb fra løn,
 Deduction from salary,Fradrag fra løn,
-Expired Leaves,Udløbne blade,
 If this is not checked the loan by default will be considered as a Demand Loan,"Hvis dette ikke er markeret, vil lånet som standard blive betragtet som et behovslån",
 This account is used for booking loan repayments from the borrower and also disbursing loans to the borrower,Denne konto bruges til at booke tilbagebetaling af lån fra låntager og også udbetale lån til låntager,
 This account is capital account which is used to allocate capital for loan disbursal account ,"Denne konto er en kapitalkonto, der bruges til at allokere kapital til udbetaling af lånekonto",
@@ -8844,3 +8705,41 @@
 Creating Purchase Order ...,Opretter indkøbsordre ...,
 "Select a Supplier from the Default Suppliers of the items below. On selection, a Purchase Order will be made against items belonging to the selected Supplier only.","Vælg en leverandør fra standardleverandørerne af nedenstående varer. Ved valg foretages en indkøbsordre kun mod varer, der tilhører den valgte leverandør.",
 Row #{}: You must select {} serial numbers for item {}.,Række nr. {}: Du skal vælge {} serienumre for varen {}.,
+Add Comment,Tilføj kommentar,
+More...,Mere...,
+Notes,Noter,
+Payment Gateway,Betaling Gateway,
+Payment Gateway Name,Betalings gateway navn,
+Payments,Betalinger,
+Plan Name,Plan navn,
+Portal,Portal,
+Scan Barcode,Scan stregkode,
+Some information is missing,Der mangler nogle oplysninger,
+Successful,Vellykket,
+Tools,Værktøj,
+Use Sandbox,Brug Sandbox,
+Busy,Travl,
+Completed By,Færdiggjort af,
+Payment Failed,Betaling mislykkedes,
+Column {0},Kolonne {0},
+Field Mapping,Feltkortlægning,
+Not Specified,Ikke specificeret,
+Update Type,Opdateringstype,
+Dr,Dr.,
+End Time,End Time,
+Fetching...,Henter ...,
+"It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.",Det ser ud som om der er et problem med serverens stribekonfiguration. I tilfælde af fejl bliver beløbet refunderet til din konto.,
+Looks like someone sent you to an incomplete URL. Please ask them to look into it.,Ligner nogen har sendt dig til en ufuldstændig webadresse. Spørg dem om at se på det.,
+Master,Master,
+Pay,Betale,
+You can also copy-paste this link in your browser,Du kan også kopiere-indsætte dette link i din browser,
+Verified By,Bekræftet af,
+Invalid naming series (. missing) for {0},Ugyldig navneserie (. Mangler) for {0},
+Phone Number,Telefonnummer,
+Account SID,Konto SID,
+Global Defaults,Globale indstillinger,
+Is Mandatory,Er obligatorisk,
+WhatsApp,WhatsApp,
+Make a call,Ringe,
+Approve,Godkende,
+Reject,Afvise,
diff --git a/erpnext/translations/de.csv b/erpnext/translations/de.csv
index e2c7467..79b9574 100644
--- a/erpnext/translations/de.csv
+++ b/erpnext/translations/de.csv
@@ -113,7 +113,6 @@
 Add Items,Mehrere Artikel hinzufügen,
 Add Leads,Fügen Sie Leads hinzu,
 Add Multiple Tasks,Mehrere Aufgaben hinzufügen,
-Add Row,Zeile hinzufügen,
 Add Sales Partners,Verkaufspartner hinzufügen,
 Add Serial No,Seriennummer hinzufügen,
 Add Students,Schüler hinzufügen,
@@ -211,9 +210,7 @@
 An error occurred during the update process,Während des Aktualisierungsprozesses ist ein Fehler aufgetreten,
 "An item exists with same name ({0}), please change the item group name or rename the item",Ein Artikel mit dem gleichen Namen existiert bereits ({0}). Bitte den Namen der Artikelgruppe ändern oder den Artikel umbenennen,
 Analyst,Analytiker,
-Analytics,Analysetools,
 Annual Billing: {0},Jährliche Abrechnung: {0},
-Anonymous,Anonym,
 Another Budget record '{0}' already exists against {1} '{2}' and account '{3}' for fiscal year {4},Ein weiterer Budgeteintrag &#39;{0}&#39; existiert bereits für {1} &#39;{2}&#39; und für &#39;{3}&#39; für das Geschäftsjahr {4},
 Another Period Closing Entry {0} has been made after {1},Eine weitere Periodenabschlussbuchung {0} wurde nach {1} erstellt,
 Another Sales Person {0} exists with the same Employee id,Ein weiterer Vertriebsmitarbeiter {0} existiert bereits mit der gleichen Mitarbeiter ID,
@@ -283,14 +280,12 @@
 Attendance not submitted for {0} as {1} on leave.,Die Teilnahme wurde nicht für {0} als {1} im Urlaub eingereicht.,
 Attribute table is mandatory,Attributtabelle ist zwingend erforderlich,
 Attribute {0} selected multiple times in Attributes Table,Attribut {0} mehrfach in Attributetabelle ausgewäht,
-Author,Autor,
 Authorized Signatory,Zeichnungsberechtigte/-r,
 Auto Material Requests Generated,Automatische Materialanfragen generiert,
 Auto Repeat,Automatische Wiederholung,
 Auto repeat document updated,Automatisches Wiederholungsdokument aktualisiert,
 Automotive,Fahrzeugbau,
 Available,Verfügbar,
-Available Leaves,Verfügbare Blätter,
 Available Qty,Verfügbare Menge,
 Available Selling,Verfügbarer Verkauf,
 Available for use date is required,Verfügbar für das Nutzungsdatum ist erforderlich,
@@ -340,7 +335,6 @@
 Base URL,Basis-URL,
 Based On,Basiert auf,
 Based On Payment Terms,Basierend auf Zahlungsbedingungen,
-Basic,Grundeinkommen,
 Batch,Charge,
 Batch Entries,Batch-Einträge,
 Batch ID is mandatory,Batch-ID ist obligatorisch,
@@ -361,7 +355,6 @@
 Billable Hours,Abrechenbare Stunden,
 Billed,Abgerechnet,
 Billed Amount,Rechnungsbetrag,
-Billing,Abrechnung,
 Billing Address,Rechnungsadresse,
 Billing Address is same as Shipping Address,Rechnungsadresse stimmt mit Versandadresse überein,
 Billing Amount,Rechnungsbetrag,
@@ -483,7 +476,7 @@
 Chapter information.,Gruppeninformation,
 Charge of type 'Actual' in row {0} cannot be included in Item Rate or Paid Amount,Kosten für den Typ „Tatsächlich“ in Zeile {0} können nicht in den Artikelpreis oder den bezahlen Betrag einfließen,
 Chargeble,Belastung,
-Charges are updated in Purchase Receipt against each item,Kosten werden im Kaufbeleg für jede Position aktualisiert,
+Charges are updated in Purchase Receipt against each item,Kosten werden im Eingangsbeleg für jede Position aktualisiert,
 "Charges will be distributed proportionately based on item qty or amount, as per your selection",Die Kosten werden gemäß Ihrer Wahl anteilig verteilt basierend auf Artikelmenge oder -preis,
 Chart of Cost Centers,Kostenstellenplan,
 Check all,Alle prüfen,
@@ -562,7 +555,6 @@
 Consumed Qty,Verbrauchte Anzahl,
 Consumer Products,Verbrauchsgüter,
 Contact,Kontakt,
-Contact Details,Kontakt-Details,
 Contact Us,Kontaktiere uns,
 Content,Inhalt,
 Content Masters,Inhaltsmaster,
@@ -717,7 +709,6 @@
 Date of Joining,Eintrittsdatum,
 Date of Joining must be greater than Date of Birth,Eintrittsdatum muss nach dem Geburtsdatum liegen,
 Date of Transaction,Datum der Transaktion,
-Datetime,Datum und Uhrzeit,
 Day,Tag,
 Debit,Soll,
 Debit ({0}),Soll ({0}),
@@ -878,7 +869,6 @@
 Employee cannot report to himself.,Mitarbeiter können nicht an sich selbst Bericht erstatten,
 Employee {0} has already applied for {1} between {2} and {3} : ,Der Mitarbeiter {0} hat bereits einen Antrag auf {1} zwischen {2} und {3} gestellt:,
 Employee {0} of grade {1} have no default leave policy,Mitarbeiter {0} der Besoldungsgruppe {1} haben keine Standard-Abwesenheitsrichtlinie,
-Enable,ermöglichen,
 Enable / disable currencies.,Aktivieren / Deaktivieren der Währungen,
 Enabled,Aktiviert,
 "Enabling 'Use for Shopping Cart', as Shopping Cart is enabled and there should be at least one Tax Rule for Shopping Cart","Aktivieren &quot;Verwendung für Einkaufswagen&quot;, wie Einkaufswagen aktiviert ist und es sollte mindestens eine Steuerregel für Einkaufswagen sein",
@@ -909,7 +899,6 @@
 Error: Not a valid id?,Fehler: Keine gültige ID?,
 Estimated Cost,Geschätzte Kosten,
 "Even if there are multiple Pricing Rules with highest priority, then following internal priorities are applied:","Wenn es mehrere Preisregeln mit der höchsten Priorität gibt, werden folgende interne Prioritäten angewandt:",
-Event,Ereignis,
 Exchange Gain/Loss,Exchange-Gewinn / Verlust,
 Exchange Rate Revaluation master.,Wechselkurs Neubewertung Master.,
 Exchange Rate must be same as {0} {1} ({2}),Wechselkurs muss derselbe wie {0} {1} ({2}) sein,
@@ -1037,7 +1026,6 @@
 From value must be less than to value in row {0},Von-Wert muss weniger sein als Bis-Wert in Zeile {0},
 From {0} | {1} {2},Von {0} | {1} {2},
 Fulfillment,Erfüllung,
-Full,Voll,
 Full Name,Vollständiger Name,
 Fully Depreciated,vollständig abgeschriebene,
 Furnitures and Fixtures,Betriebs- und Geschäftsausstattung,
@@ -1140,7 +1128,6 @@
 Hub Sync ID,Hub-Synchronisierungs-ID,
 Human Resource,Personal,
 Human Resources,Personalwesen,
-IFSC Code,IFSC-Code,
 IGST Amount,IGST Betrag,
 IP Address,IP Adresse,
 ITC Available (whether in full op part),ITC verfügbar (ob vollständig oder teilweise),
@@ -1192,7 +1179,6 @@
 Ineligible ITC,Nicht förderfähiges ITC,
 Initiated,Initiiert,
 Inpatient Record,Stationäre Aufnahme,
-Insert,Einfügen,
 Installation Note,Installationshinweis,
 Installation Note {0} has already been submitted,Installationshinweis {0} wurde bereits übertragen,
 Installation date cannot be before delivery date for Item {0},Installationsdatum kann nicht vor dem Liefertermin für Artikel {0} liegen,
@@ -1204,7 +1190,6 @@
 Insurance Start date should be less than Insurance End date,Versicherung Startdatum sollte weniger als Versicherung Enddatum,
 Integrated Tax,Integrierte Steuer,
 Inter-State Supplies,Zwischenstaatliche Lieferungen,
-Interests,Interessen,
 Internet Publishing,Veröffentlichung im Internet,
 Intra-State Supplies,Innerstaatliche Lieferungen,
 Introduction,Vorstellung,
@@ -1215,7 +1200,7 @@
 Invalid GSTIN! First 2 digits of GSTIN should match with State number {0}.,Ungültige GSTIN! Die ersten beiden Ziffern von GSTIN sollten mit der Statusnummer {0} übereinstimmen.,
 Invalid GSTIN! The input you've entered doesn't match the format of GSTIN.,Ungültige GSTIN! Die von Ihnen eingegebene Eingabe stimmt nicht mit dem Format von GSTIN überein.,
 Invalid Posting Time,Ungültige Buchungszeit,
-Invalid Purchase Invoice,Ungültige Einkaufsrechnung,
+Invalid Purchase Invoice,Ungültige Eingangsrechnung,
 Invalid attribute {0} {1},Ungültiges Attribut {0} {1},
 Invalid quantity specified for item {0}. Quantity should be greater than 0.,Ungültzige Anzahl für Artikel {0} angegeben. Anzahl sollte größer als 0 sein.,
 Invalid reference {0} {1},Ungültige Referenz {0} {1},
@@ -1277,7 +1262,7 @@
 Item Variants,Artikelvarianten,
 Item Variants updated,Artikelvarianten aktualisiert,
 Item has variants.,Artikel hat Varianten.,
-Item must be added using 'Get Items from Purchase Receipts' button,"Artikel müssen über die Schaltfläche ""Artikel von Kaufbeleg übernehmen"" hinzugefügt werden",
+Item must be added using 'Get Items from Purchase Receipts' button,"Artikel müssen über die Schaltfläche ""Artikel von Eingangsbeleg übernehmen"" hinzugefügt werden",
 Item valuation rate is recalculated considering landed cost voucher amount,Artikelpreis wird unter Einbezug von Belegen über den Einstandspreis neu berechnet,
 Item variant {0} exists with same attributes,Artikelvariante {0} mit denselben Attributen existiert,
 Item {0} does not exist,Artikel {0} existiert nicht,
@@ -1325,7 +1310,6 @@
 Lab testing datetime cannot be before collection datetime,Lab-Testdatum kann nicht vor dem Erfassungsdatum liegen,
 Label,Bezeichnung,
 Laboratory,Labor,
-Language Name,Sprache Name,
 Large,Groß,
 Last Communication,Letzte Kommunikation,
 Last Communication Date,Letztes Kommunikationstag,
@@ -1356,8 +1340,6 @@
 Letter Heads for print templates.,Briefköpfe für Druckvorlagen,
 Level,Ebene,
 Liability,Verbindlichkeit,
-License,Lizenz,
-Limit,Grenze,
 Limit Crossed,Grenze überschritten,
 Link to Material Request,Verknüpfung zur Materialanforderung,
 List of all share transactions,Liste aller Aktientransaktionen,
@@ -1368,7 +1350,6 @@
 Loans (Liabilities),Darlehen/Kredite (Verbindlichkeiten),
 Loans and Advances (Assets),Darlehen und Anzahlungen (Aktiva),
 Local,Lokal,
-Log,Log,
 Logs for maintaining sms delivery status,Protokolle über den SMS-Versand,
 Lost,Verloren,
 Lost Reasons,Verlorene Gründe,
@@ -1454,7 +1435,6 @@
 Medical Department,Medizinische Abteilung,
 Medical Record,Krankenakte,
 Medium,Mittel,
-Meeting,Treffen,
 Member Activity,Mitglied Aktivität,
 Member ID,Mitgliedsnummer,
 Member Name,Mitgliedsname,
@@ -1505,7 +1485,6 @@
 Multiple Variants,Mehrere Varianten,
 Multiple fiscal years exist for the date {0}. Please set company in Fiscal Year,Mehrere Geschäftsjahre existieren für das Datum {0}. Bitte setzen Unternehmen im Geschäftsjahr,
 Music,Musik,
-My Account,Mein Konto,
 Name error: {0},Namens Fehler: {0},
 Name of new Account. Note: Please don't create accounts for Customers and Suppliers,Name des neuen Kontos. Hinweis: Bitte keine Konten für Kunden und Lieferanten erstellen,
 Name or Email is mandatory,Name oder E-Mail-Adresse ist zwingend erforderlich,
@@ -1543,12 +1522,11 @@
 New Quality Procedure,Neues Qualitätsverfahren,
 New Sales Invoice,Neue Ausgangsrechnung,
 New Sales Person Name,Neuer Verkaufspersonenname,
-New Serial No cannot have Warehouse. Warehouse must be set by Stock Entry or Purchase Receipt,"""Neue Seriennummer"" kann keine Lagerangabe enthalten. Lagerangaben müssen durch eine Lagerbuchung oder einen Kaufbeleg erstellt werden",
+New Serial No cannot have Warehouse. Warehouse must be set by Stock Entry or Purchase Receipt,"""Neue Seriennummer"" kann keine Lagerangabe enthalten. Lagerangaben müssen durch eine Lagerbuchung oder einen Eingangsbeleg erstellt werden",
 New Warehouse Name,Neuer Lagername,
 New credit limit is less than current outstanding amount for the customer. Credit limit has to be atleast {0},Neues Kreditlimit ist weniger als der aktuell ausstehende Betrag für den Kunden. Kreditlimit muss mindestens {0} sein,
 New task,Neuer Vorgang,
 New {0} pricing rules are created,Neue {0} Preisregeln werden erstellt,
-Newsletters,Newsletter,
 Newspaper Publishers,Zeitungsverleger,
 Next,Weiter,
 Next Contact By cannot be same as the Lead Email Address,"""Nächster Kontakt durch"" kann nicht identisch mit der Lead E-Mail-Adresse sein",
@@ -1695,7 +1673,6 @@
 Other,Andere,
 Other Reports,Weitere Berichte,
 "Other outward supplies(Nil rated,Exempted)","Sonstige Auslandslieferungen (ohne Rating, ausgenommen)",
-Others,Andere,
 Out Qty,Ausgabe-Menge,
 Out Value,Out Wert,
 Out of Order,Außer Betrieb,
@@ -1738,7 +1715,6 @@
 Party Type and Party is mandatory for {0} account,Partei-Typ und Partei sind Pflichtfelder für Konto {0},
 Party Type is mandatory,Partei-Typ ist ein Pflichtfeld,
 Party is mandatory,Partei ist ein Pflichtfeld,
-Password,Passwort,
 Past Due Date,Fälligkeitsdatum,
 Patient,Patient,
 Patient Appointment,Patiententermin,
@@ -1796,7 +1772,6 @@
 Pharmaceutical,Arzneimittel,
 Pharmaceuticals,Pharmaprodukte,
 Physician,Arzt,
-Pincode,Postleitzahl,
 Place Of Supply (State/UT),Ort der Lieferung (Staat / UT),
 Place Order,Bestellung aufgeben,
 Plan Name,Planname,
@@ -1812,7 +1787,7 @@
 Please click on 'Generate Schedule',"Bitte auf ""Zeitplan generieren"" klicken",
 Please click on 'Generate Schedule' to fetch Serial No added for Item {0},"Bitte auf ""Zeitplan generieren"" klicken, um die Seriennummer für Artikel {0} abzurufen",
 Please click on 'Generate Schedule' to get schedule,"Bitte auf ""Zeitplan generieren"" klicken, um den Zeitplan zu erhalten",
-Please create purchase receipt or purchase invoice for the item {0},Bitte erstellen Sie eine Kaufquittung oder eine Kaufrechnung für den Artikel {0},
+Please create purchase receipt or purchase invoice for the item {0},Bitte erstellen Sie eine Kaufquittung oder eine Eingangsrechnungen für den Artikel {0},
 Please define grade for Threshold 0%,Bitte definieren Sie Grade for Threshold 0%,
 Please enable Applicable on Booking Actual Expenses,Bitte aktivieren Sie Anwendbar bei der Buchung von tatsächlichen Ausgaben,
 Please enable Applicable on Purchase Order and Applicable on Booking Actual Expenses,Bitte aktivieren Sie Anwendbar bei Bestellung und Anwendbar bei Buchung von tatsächlichen Ausgaben,
@@ -1833,7 +1808,7 @@
 Please enter Planned Qty for Item {0} at row {1},Bitte die geplante Menge für Artikel {0} in Zeile {1} eingeben,
 Please enter Preferred Contact Email,Bitte geben Sie Bevorzugte Kontakt per E-Mail,
 Please enter Production Item first,Bitte zuerst Herstellungsartikel eingeben,
-Please enter Purchase Receipt first,Bitte zuerst Kaufbeleg eingeben,
+Please enter Purchase Receipt first,Bitte zuerst Eingangsbeleg eingeben,
 Please enter Receipt Document,Bitte geben Sie Eingangsbeleg,
 Please enter Reference date,Bitte den Stichtag eingeben,
 Please enter Reqd by Date,Bitte geben Sie Requd by Date ein,
@@ -1905,7 +1880,6 @@
 Please select date,Bitte wählen Sie Datum,
 Please select item code,Bitte Artikelnummer auswählen,
 Please select month and year,Bitte Monat und Jahr auswählen,
-Please select prefix first,Bitte zuerst Präfix auswählen,
 Please select the Company,Bitte wählen Sie das Unternehmen aus,
 Please select the Multiple Tier Program type for more than one collection rules.,Wählen Sie den Programmtyp Mehrstufig für mehrere Sammlungsregeln aus.,
 Please select the assessment group other than 'All Assessment Groups',Bitte wählen Sie die Bewertungsgruppe außer &quot;All Assessment Groups&quot;,
@@ -1922,7 +1896,6 @@
 Please set Company filter blank if Group By is 'Company',"Bitte den Filter ""Unternehmen"" leeren, wenn nach Unternehmen gruppiert wird",
 Please set Default Payroll Payable Account in Company {0},Bitte setzen Sie das Standardkonto für Verbindlichkeiten aus Lohn und Gehalt in Gesellschaft {0},
 Please set Depreciation related Accounts in Asset Category {0} or Company {1},Bitte setzen Abschreibungen im Zusammenhang mit Konten in der Anlagekategorie {0} oder Gesellschaft {1},
-Please set Email Address,Bitte setzen Sie E-Mail-Adresse,
 Please set GST Accounts in GST Settings,Bitte legen Sie die GST-Konten in den GST-Einstellungen fest,
 Please set Hotel Room Rate on {},Bitte setzen Sie den Zimmerpreis auf {},
 Please set Number of Depreciations Booked,Bitte setzen Sie Anzahl der Abschreibungen gebucht,
@@ -1945,7 +1918,6 @@
 Please set the Email ID for the Student to send the Payment Request,"Bitte legen Sie die E-Mail-ID für den Studenten an, um die Zahlungsanfrage zu senden",
 Please set the Item Code first,Bitte legen Sie zuerst den Itemcode fest,
 Please set the Payment Schedule,Bitte legen Sie den Zahlungsplan fest,
-Please set the series to be used.,Bitte legen Sie die zu verwendende Serie fest.,
 Please set {0} for address {1},Bitte geben Sie {0} für die Adresse {1} ein.,
 Please setup Students under Student Groups,Bitte richten Sie Schüler unter Schülergruppen ein,
 Please specify Company,Bitte Unternehmen angeben,
@@ -1962,7 +1934,6 @@
 Point-of-Sale,Verkaufsstelle,
 Point-of-Sale Profile,Verkaufsstellen-Profil,
 Portal,Portal,
-Portal Settings,Portaleinstellungen,
 Possible Supplier,Möglicher Lieferant,
 Postal Expenses,Portoaufwendungen,
 Posting Date,Buchungsdatum,
@@ -2071,8 +2042,8 @@
 Purchase Orders are not allowed for {0} due to a scorecard standing of {1}.,Kaufaufträge sind für {0} wegen einer Scorecard von {1} nicht erlaubt.,
 Purchase Orders given to Suppliers.,An Lieferanten erteilte Bestellungen,
 Purchase Price List,Einkaufspreisliste,
-Purchase Receipt,Kaufbeleg,
-Purchase Receipt {0} is not submitted,Kaufbeleg {0} wurde nicht übertragen,
+Purchase Receipt,Eingangsbeleg,
+Purchase Receipt {0} is not submitted,Eingangsbeleg {0} wurde nicht übertragen,
 Purchase Tax Template,Umsatzsteuer-Vorlage,
 Purchase User,Nutzer Einkauf,
 Purchase orders help you plan and follow up on your purchases,Bestellungen helfen Ihnen bei der Planung und Follow-up auf Ihre Einkäufe,
@@ -2134,7 +2105,7 @@
 Reason For Putting On Hold,Grund für das auf Eis legen,
 Reason for Hold,Grund für das auf Eis legen,
 Reason for hold: ,Grund für das auf Eis legen:,
-Receipt,Kaufbeleg,
+Receipt,Eingangsbeleg,
 Receipt document must be submitted,Eingangsbeleg muss vorgelegt werden,
 Receivable,Forderung,
 Receivable Account,Forderungskonto,
@@ -2161,14 +2132,12 @@
 Reference No is mandatory if you entered Reference Date,"Referenznummer ist ein Pflichtfeld, wenn ein Referenzdatum eingegeben wurde",
 Reference No.,Referenznummer.,
 Reference Number,Referenznummer,
-Reference Owner,Referenz Besitzer,
 Reference Type,Referenz-Typ,
 "Reference: {0}, Item Code: {1} and Customer: {2}","Referenz: {0}, Item Code: {1} und Kunde: {2}",
 References,Referenzen,
 References {0} of type {1} had no outstanding amount left before submitting the Payment Entry. Now they have a negative outstanding amount.,"Die Referenzen {0} vom Typ {1} hatten keinen ausstehenden Betrag mehr, bevor die Zahlung gebucht wurde. Jetzt haben sie einen negativen ausstehenden Betrag.",
 If this is undesirable please cancel the corresponding Payment Entry.,"Falls dies nicht erwünscht ist, stornieren Sie bitte die entsprechende Zahlung.",
 Refresh Token,Aktualisieren Token,
-Region,Region,
 Register,Neu registrieren,
 Rejected,Abgelehnt,
 Related,Zugehörig,
@@ -2191,7 +2160,6 @@
 Replace BOM and update latest price in all BOMs,Ersetzen Sie die Stückliste und aktualisieren Sie den aktuellen Preis in allen Stücklisten,
 Replied,Beantwortet,
 Report,Bericht,
-Report Builder,Berichts-Generator,
 Report Type,Berichtstyp,
 Report Type is mandatory,Berichtstyp ist zwingend erforderlich,
 Reports,Berichte,
@@ -2368,13 +2336,11 @@
 Same Company is entered more than once,Das selbe Unternehmen wurde mehrfach angegeben,
 Same item cannot be entered multiple times.,Das gleiche Einzelteil kann nicht mehrfach eingegeben werden.,
 Same supplier has been entered multiple times,Same Anbieter wurde mehrmals eingegeben,
-Sample,Beispiel,
 Sample Collection,Mustersammlung,
 Sample quantity {0} cannot be more than received quantity {1},Die Beispielmenge {0} darf nicht mehr als die empfangene Menge {1} sein,
 Sanctioned,sanktionierte,
 Sand,Sand,
 Saturday,Samstag,
-Saved,Gespeichert,
 Saving {0},{0} speichern,
 Scan Barcode,Barcode scannen,
 Schedule,Zeitplan,
@@ -2476,7 +2442,6 @@
 Series Updated,Serie aktualisiert,
 Series Updated Successfully,Nummernkreise erfolgreich geändert,
 Series is mandatory,Serie ist zwingend erforderlich,
-Series {0} already used in {1},Serie {0} bereits verwendet in {1},
 Service,Service,
 Service Level Agreement,Service Level Agreement,
 Service Level Agreement.,Service Level Agreement.,
@@ -2492,7 +2457,6 @@
 Set Tax Rule for shopping cart,Steuerregel für Einkaufswagen einstellen,
 Set as Closed,"Als ""abgeschlossen"" markieren",
 Set as Completed,Als abgeschlossen festlegen,
-Set as Default,Als Standard festlegen,
 Set as Lost,"Als ""verloren"" markieren",
 Set as Open,"Als ""geöffnet"" markieren",
 Set default inventory account for perpetual inventory,Inventurkonto für permanente Inventur auswählen,
@@ -2524,7 +2488,6 @@
 Shareholder,Aktionär,
 Ship To State,Versende nach Land,
 Shipments,Lieferungen,
-Shipping,Versand,
 Shipping Address,Lieferadresse,
 "Shipping Address does not have country, which is required for this Shipping Rule","Lieferadresse hat kein Land, das für diese Versandregel benötigt wird",
 Shipping rule only applicable for Buying,Versandregel gilt nur für den Einkauf,
@@ -2577,7 +2540,6 @@
 Split Batch,Split Batch,
 Split Issue,Split-Problem,
 Sports,Sport,
-Standard,Standard,
 Standard Buying,Standard-Kauf,
 Standard Selling,Standard-Vertrieb,
 Standard contract terms for Sales or Purchase.,Allgemeine Vertragsbedingungen für den Ein- und Verkauf,
@@ -2606,7 +2568,7 @@
 Stock In Hand,Stock In Hand,
 Stock Items,Lagerartikel,
 Stock Ledger,Lagerbuch,
-Stock Ledger Entries and GL Entries are reposted for the selected Purchase Receipts,Buchungen auf das Lagerbuch und Hauptbuch-Buchungen werden für die gewählten Kaufbelege umgebucht,
+Stock Ledger Entries and GL Entries are reposted for the selected Purchase Receipts,Buchungen auf das Lagerbuch und Hauptbuch-Buchungen werden für die gewählten Eingangsbelege umgebucht,
 Stock Levels,Lagerbestände,
 Stock Liabilities,Lager-Verbindlichkeiten,
 Stock Qty,Lagermenge,
@@ -2618,7 +2580,7 @@
 Stock Value,Lagerwert,
 Stock balance in Batch {0} will become negative {1} for Item {2} at Warehouse {3},Lagerbestand in Charge {0} wird für Artikel {2} im Lager {3} negativ {1},
 Stock cannot be updated against Delivery Note {0},Lager kann nicht mit Lieferschein {0} aktualisiert werden,
-Stock cannot be updated against Purchase Receipt {0},Auf nicht gegen Kaufbeleg aktualisiert werden {0},
+Stock cannot be updated against Purchase Receipt {0},Bestand kann nicht gegen Eingangsbeleg {0} aktualisiert werden,
 Stock cannot exist for Item {0} since has variants,"Für Artikel {0} kann es kein Lager geben, da es Varianten gibt",
 Stock transactions before {0} are frozen,Lagertransaktionen vor {0} werden gesperrt,
 Stop,Anhalten,
@@ -2683,7 +2645,7 @@
 Supplier Part No,Lieferant Teile-Nr,
 Supplier Quotation,Lieferantenangebot,
 Supplier Scorecard,Lieferanten-Scorecard,
-Supplier Warehouse mandatory for sub-contracted Purchase Receipt,Lieferantenlager notwendig für Kaufbeleg aus Unteraufträgen,
+Supplier Warehouse mandatory for sub-contracted Purchase Receipt,Lieferantenlager notwendig für Eingangsbeleg aus Unteraufträgen,
 Supplier database.,Lieferantendatenbank,
 Supplier {0} not found in {1},Lieferant {0} nicht in {1} gefunden,
 Supplier(s),Lieferant(en),
@@ -2744,7 +2706,6 @@
 Terms and Conditions,Allgemeine Geschäftsbedingungen,
 Terms and Conditions Template,Vorlage für Allgemeine Geschäftsbedingungen,
 Territory,Gebiet,
-Test,Test,
 Thank you for your business!,Vielen Dank für Ihr Unternehmen!,
 The 'From Package No.' field must neither be empty nor it's value less than 1.,Die &#39;Von Paketnummer&#39; Das Feld darf weder leer sein noch einen Wert kleiner als 1 haben.,
 The Brand,Die Marke,
@@ -2861,7 +2822,6 @@
 Total (Without Tax),Summe (ohne Steuern),
 Total Achieved,Gesamtsumme erreicht,
 Total Actual,Summe Tatsächlich,
-Total Allocated Leaves,Insgesamt zugeteilte Blätter,
 Total Amount,Gesamtsumme,
 Total Amount Credited,Gesamtbetrag der Gutschrift,
 Total Applicable Charges in Purchase Receipt Items table must be same as Total Taxes and Charges,Gesamt Die Gebühren in Kauf Eingangspositionen Tabelle muss als Gesamt Steuern und Abgaben gleich sein,
@@ -2905,7 +2865,6 @@
 Total(Amt),Gesamtsumme,
 Total(Qty),Summe (Anzahl),
 Traceability,Rückverfolgbarkeit,
-Traceback,Zurück verfolgen,
 Track Leads by Lead Source.,Verfolgen Sie Leads nach Lead Quelle.,
 Transaction,Transaktion,
 Transaction Date,Transaktionsdatum,
@@ -2943,7 +2902,6 @@
 UOM Conversion factor is required in row {0},Maßeinheit-Umrechnungsfaktor ist erforderlich in der Zeile {0},
 UOM coversion factor required for UOM: {0} in Item: {1},Maßeinheit-Umrechnungsfaktor ist erforderlich für Maßeinheit: {0} bei Artikel: {1},
 URL,URL,
-Unable to find DocType {0},DocType {0} kann nicht gefunden werden.,
 Unable to find exchange rate for {0} to {1} for key date {2}. Please create a Currency Exchange record manually,Der Wechselkurs {0} zu {1} für den Stichtag {2} kann nicht gefunden werden. Bitte erstellen Sie den Datensatz für die Währungsumrechung manuell.,
 Unable to find score starting at {0}. You need to have standing scores covering 0 to 100,"Es konnte keine Punktzahl gefunden werden, die bei {0} beginnt. Sie benötigen eine Punktzahl zwischen 0 und 100.",
 Unable to find variable: ,Variable kann nicht gefunden werden:,
@@ -2973,7 +2931,6 @@
 Upload your letter head and logo. (you can edit them later).,Briefkopf und Logo hochladen. (Beides kann später noch bearbeitet werden.),
 Upper Income,Gehobenes Einkommen,
 Use Sandbox,Sandkastenmodus verwenden,
-Used Leaves,Genutzter Urlaub,
 User,Nutzer,
 User ID,Benutzer-ID,
 User ID not set for Employee {0},Benutzer-ID ist für Mitarbeiter {0} nicht eingegeben,
@@ -3064,7 +3021,6 @@
 Website Settings,Webseiten-Einstellungen,
 Wednesday,Mittwoch,
 Week,Woche,
-Weekdays,Wochentage,
 Weekly,Wöchentlich,
 "Weight is mentioned,\nPlease mention ""Weight UOM"" too","Gewicht ist angegeben, bitte auch ""Gewichts-Maßeinheit"" angeben",
 Welcome email sent,Willkommens-E-Mail versenden,
@@ -3085,7 +3041,6 @@
 Work Order {0} must be submitted,Arbeitsauftrag {0} muss eingereicht werden,
 Work Orders Created: {0},Arbeitsaufträge erstellt: {0},
 Work-in-Progress Warehouse is required before Submit,Fertigungslager wird vor dem Übertragen benötigt,
-Workflow,Workflow,
 Working,In Bearbeitung,
 Working Hours,Arbeitszeit,
 Workstation,Arbeitsplatz,
@@ -3115,7 +3070,6 @@
 You need to be a user other than Administrator with System Manager and Item Manager roles to register on Marketplace.,"Sie müssen ein anderer Benutzer als Administrator mit System Manager- und Element-Manager-Rollen sein, um sich auf Marketplace registrieren zu können.",
 You need to be a user with System Manager and Item Manager roles to add users to Marketplace.,"Sie müssen ein Benutzer mit System Manager- und Element-Manager-Rollen sein, um Benutzer zu Marketplace hinzuzufügen.",
 You need to be a user with System Manager and Item Manager roles to register on Marketplace.,"Sie müssen ein Benutzer mit System Manager- und Element-Manager-Rollen sein, um sich auf Marketplace registrieren zu können.",
-You need to be logged in to access this page,Sie müssen angemeldet sein um auf diese Seite zuzugreifen,
 You need to enable Shopping Cart,Sie müssen Ihren Einkaufswagen aktivieren.,
 You will lose records of previously generated invoices. Are you sure you want to restart this subscription?,Sie werden Datensätze von zuvor generierten Rechnungen verlieren. Möchten Sie dieses Abonnement wirklich neu starten?,
 Your Organization,Ihre Organisation,
@@ -3234,7 +3188,6 @@
 Assigned To,Zugewiesen zu,
 Chat,Unterhaltung,
 Completed By,Vervollständigt von,
-County,Landesbezirk/Gemeinde/Kreis,
 Day of Week,Tag der Woche,
 "Dear System Manager,","Sehr geehrter System Manager,",
 Default Value,Standardwert,
@@ -3245,31 +3198,21 @@
 Fieldtype,Feldtyp,
 Help Articles,Artikel-Hilfe,
 ID,ID,
-Images,Bilder,
 Import,Import,
 Language,Sprache,
 Likes,Likes,
 Merge with existing,Mit Existierenden zusammenführen,
-Office,Büro,
 Orientation,Orientierung,
 Parent,Übergeordnetes Element,
-Passive,Passiv,
 Payment Failed,Bezahlung fehlgeschlagen,
-Permanent,Dauerhaft,
 Personal,Persönlich,
-Plant,Fabrik,
 Post,Absenden,
-Postal,Post,
 Postal Code,Postleitzahl,
-Previous,Vorhergehende,
 Provider,Anbieter,
 Read Only,Schreibgeschützt,
 Recipient,Empfänger,
 Reviews,Bewertungen,
 Sender,Absender,
-Shop,Laden,
-Subsidiary,Tochtergesellschaft,
-There is some problem with the file url: {0},Es gibt irgend ein Problem mit der Datei-URL: {0},
 There were errors while sending email. Please try again.,Beim Versand der E-Mail ist ein Fehler aufgetreten. Bitte versuchen Sie es erneut.,
 Values Changed,Werte geändert,
 or,oder,
@@ -3296,19 +3239,16 @@
 Quality Feedback Template,Qualitäts-Feedback-Vorlage,
 Rules for applying different promotional schemes.,Regeln für die Anwendung verschiedener Werbemaßnahmen.,
 Show {0},{0} anzeigen,
-"Special Characters except '-', '#', '.', '/', '{{' and '}}' not allowed in naming series {0}","Sonderzeichen außer &quot;-&quot;, &quot;#&quot;, &quot;.&quot;, &quot;/&quot;, &quot;{{&quot; Und &quot;}}&quot; sind bei der Benennung von Serien nicht zulässig {0}",
 Target Details,Zieldetails,
 {0} already has a Parent Procedure {1}.,{0} hat bereits eine übergeordnete Prozedur {1}.,
 API,API,
 Annual,Jährlich,
 Change,Ändern,
 Contact Email,Kontakt-E-Mail,
-Export Type,Exporttyp,
 From Date,Von-Datum,
 Group By,Gruppiere nach,
 Invalid URL,ungültige URL,
 Landscape,Landschaft,
-Last Sync On,Letzte Synchronisierung an,
 Naming Series,Nummernkreis,
 No data to export,Keine zu exportierenden Daten,
 Portrait,Porträt,
@@ -3318,7 +3258,6 @@
 Show Document,Dokument anzeigen,
 Show Traceback,Traceback anzeigen,
 Video,Video,
-Webhook Secret,Webhook-Geheimnis,
 % Of Grand Total,% Der Gesamtsumme,
 <b>Company</b> is a mandatory filter.,<b>Unternehmen</b> ist ein Pflichtfilter.,
 <b>From Date</b> is a mandatory filter.,<b>Ab Datum</b> ist ein obligatorischer Filter.,
@@ -3375,7 +3314,6 @@
 BOM Comparison Tool,Stücklisten-Vergleichstool,
 BOM recursion: {0} cannot be child of {1},Stücklistenrekursion: {0} darf nicht untergeordnet zu {1} sein,
 BOM recursion: {0} cannot be parent or child of {1},Stücklistenrekursion: {0} kann nicht über- oder untergeordnet zu {1} sein,
-Back to Home,Zurück zur Startseite,
 Back to Messages,Zurück zu Nachrichten,
 Bank Data mapper doesn't exist,Bankdaten-Mapper existiert nicht,
 Bank Details,Bankdaten,
@@ -3413,7 +3351,7 @@
 Communication,Kommunikation,
 Compact Item Print,Artikel kompakt drucken,
 Company,Unternehmen,
-Company of asset {0} and purchase document {1} doesn't matches.,Das Unternehmen von Anlage {0} und Kaufbeleg {1} stimmt nicht überein.,
+Company of asset {0} and purchase document {1} doesn't matches.,Das Unternehmen von Anlage {0} und Eingangsbeleg {1} stimmt nicht überein.,
 Compare BOMs for changes in Raw Materials and Operations,Vergleichen Sie Stücklisten auf Änderungen in Rohstoffen und Vorgängen,
 Compare List function takes on list arguments,Die Funktion &quot;Liste vergleichen&quot; übernimmt Listenargumente,
 Complete,Komplett,
@@ -3439,7 +3377,6 @@
 Currency,Währung,
 Current Status,Aktueller Status,
 Customer PO,Kunden-Bestellung,
-Customize,Anpassen,
 Daily,Täglich,
 Date,Datum,
 Date of Birth cannot be greater than Joining Date.,Das Geburtsdatum darf nicht größer als das Beitrittsdatum sein.,
@@ -3473,7 +3410,6 @@
 ERPNext could not find any matching payment entry,ERPNext konnte keinen passenden Zahlungseintrag finden,
 Earliest Age,Frühestes Alter,
 Edit Details,Details bearbeiten,
-Edit Profile,Profil bearbeiten,
 Either GST Transporter ID or Vehicle No is required if Mode of Transport is Road,Bei Straßentransport ist entweder die GST-Transporter-ID oder die Fahrzeug-Nr. Erforderlich,
 Email,E-Mail,
 Email Campaigns,E-Mail-Kampagnen,
@@ -3501,7 +3437,6 @@
 Fetch Items from Warehouse,Abrufen von Artikeln aus dem Lager,
 Fetching...,Abrufen ...,
 Field,Feld,
-File Manager,Dateimanager,
 Filters,Filter,
 Finding linked payments,Verknüpfte Zahlungen finden,
 Fleet Management,Flottenverwaltung,
@@ -3540,7 +3475,6 @@
 Incorrect Warehouse,Falsches Lager,
 Invalid Barcode. There is no Item attached to this barcode.,Ungültiger Barcode. Es ist kein Artikel an diesen Barcode angehängt.,
 Invalid credentials,Ungültige Anmeldeinformationen,
-Invite as User,Als Benutzer einladen,
 Issue Priority.,Anfragepriorität.,
 Issue Type.,Problemtyp.,
 "It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","Es scheint, dass ein Problem mit der Stripe-Konfiguration des Servers vorliegt. Im Falle eines Fehlers wird der Betrag Ihrem Konto gutgeschrieben.",
@@ -3583,7 +3517,6 @@
 New Invoice,Neue Rechnung,
 New Payment,Neue Zahlung,
 New release date should be in the future,Das neue Erscheinungsdatum sollte in der Zukunft liegen,
-Newsletter,Newsletter,
 No Account matched these filters: {},Kein Konto entspricht diesen Filtern: {},
 No communication found.,Keine Kommunikation gefunden.,
 No correct answer is set for {0},Für {0} ist keine richtige Antwort festgelegt.,
@@ -3661,7 +3594,6 @@
 Please setup a default bank account for company {0},Bitte richten Sie ein Standard-Bankkonto für das Unternehmen {0} ein.,
 Please specify,Bitte angeben,
 Please specify a {0},Bitte geben Sie eine {0} an,lead
-Printing,Druck,
 Priority,Priorität,
 Priority has been changed to {0}.,Die Priorität wurde in {0} geändert.,
 Priority {0} has been repeated.,Die Priorität {0} wurde wiederholt.,
@@ -3670,7 +3602,6 @@
 Project,Projekt,
 Provide the academic year and set the starting and ending date.,Geben Sie das akademische Jahr an und legen Sie das Start- und Enddatum fest.,
 Public token is missing for this bank,Für diese Bank fehlt ein öffentlicher Token,
-Publish,Veröffentlichen,
 Publish 1 Item,1 Artikel veröffentlichen,
 Publish Items,Elemente veröffentlichen,
 Publish More Items,Veröffentlichen Sie weitere Elemente,
@@ -3680,7 +3611,7 @@
 Purchase Invoice cannot be made against an existing asset {0},Eingangsrechnung kann nicht für ein vorhandenes Asset erstellt werden {0},
 Purchase Invoices,Eingangsrechnungen,
 Purchase Orders,Kauforder,
-Purchase Receipt doesn't have any Item for which Retain Sample is enabled.,"Der Kaufbeleg enthält keinen Artikel, für den die Option &quot;Probe aufbewahren&quot; aktiviert ist.",
+Purchase Receipt doesn't have any Item for which Retain Sample is enabled.,"Der Eingangsbeleg enthält keinen Artikel, für den die Option &quot;Probe aufbewahren&quot; aktiviert ist.",
 Purchase Return,Warenrücksendung,
 Qty of Finished Goods Item,Menge des Fertigerzeugnisses,
 Quality Inspection required for Item {0} to submit,"Qualitätsprüfung erforderlich, damit Artikel {0} eingereicht werden kann",
@@ -3698,7 +3629,6 @@
 Reconciled,Versöhnt,
 Recruitment,Rekrutierung,
 Red,Rot,
-Refreshing,Aktualisiere,
 Release date must be in the future,Das Erscheinungsdatum muss in der Zukunft liegen,
 Relieving Date must be greater than or equal to Date of Joining,Das Ablösungsdatum muss größer oder gleich dem Beitrittsdatum sein,
 Rename,Umbenennen,
@@ -3742,7 +3672,6 @@
 Search for a payment,Suche nach einer Zahlung,
 Search for anything ...,Nach etwas suchen ...,
 Search results for,Suchergebnisse für,
-Select All,Alles auswählen,
 Select Difference Account,Wählen Sie Differenzkonto,
 Select a Default Priority.,Wählen Sie eine Standardpriorität.,
 Select a company,Wählen Sie eine Firma aus,
@@ -3765,7 +3694,6 @@
 Set Meta Tags,Festlegen von Meta-Tags,
 Set {0} in company {1},{0} in Firma {1} festlegen,
 Setup,Einstellungen,
-Setup Wizard,Setup-Assistent,
 Shift Management,Schichtverwaltung,
 Show Future Payments,Zukünftige Zahlungen anzeigen,
 Show Linked Delivery Notes,Verknüpfte Lieferscheine anzeigen,
@@ -3837,7 +3765,6 @@
 Unreconciled,Unversöhnt,
 Unsupported GST Category for E-Way Bill JSON generation,Nicht unterstützte GST-Kategorie für die E-Way-Bill-JSON-Generierung,
 Update,Aktualisieren,
-Update Details,Details aktualisieren,
 Update Taxes for Items,Steuern für Artikel aktualisieren,
 "Upload a bank statement, link or reconcile a bank account","Laden Sie einen Kontoauszug hoch, verknüpfen oder synchronisieren Sie ein Bankkonto",
 Upload a statement,Laden Sie eine Erklärung hoch,
@@ -3861,7 +3788,6 @@
 XML Files Processed,Verarbeitete XML-Dateien,
 Year,Jahr,
 Yearly,Jährlich,
-You,Benutzer,
 You are not allowed to enroll for this course,Sie dürfen sich nicht für diesen Kurs anmelden,
 You are not enrolled in program {0},Sie sind nicht im Programm {0} angemeldet.,
 You can Feature upto 8 items.,Sie können bis zu 8 Artikel anbieten.,
@@ -3878,7 +3804,6 @@
 e-Way Bill already exists for this document,Für dieses Dokument existiert bereits ein e-Way Bill,
 woocommerce - {0},Woocommerce - {0},
 {0} Coupon used are {1}. Allowed quantity is exhausted,Verwendeter {0} -Coupon ist {1}. Zulässige Menge ist erschöpft,
-{0} Name,{0} Name,
 {0} Operations: {1},{0} Operationen: {1},
 {0} bank transaction(s) created,{0} Banküberweisung (en) erstellt,
 {0} bank transaction(s) created and {1} errors,{0} Banküberweisung (en) erstellt und {1} Fehler,
@@ -3897,17 +3822,13 @@
 Total Income,Gesamteinkommen,
 Total Income This Year,Gesamteinkommen in diesem Jahr,
 Barcode,Barcode,
-Bold,Fett gedruckt,
-Center,Zentrieren,
 Clear,Löschen,
-Comment,Kommentar,
 Comments,Kommentare,
 DocType,DocType,
 Download,Herunterladen,
 Left,Links,
 Link,Verknüpfung,
 New,Neu,
-Not Found,Nicht gefunden,
 Print,Drucken,
 Reference Name,Referenzname,
 Refresh,Aktualisieren,
@@ -3930,7 +3851,6 @@
 {0} Created,{0} Erstellt,
 Email Id,E-Mail-ID,
 Reference Doctype,Referenz-DocType,
-User Id,Benutzeridentifikation,
 Actual ,Tatsächlich,
 Add to cart,In den Warenkorb legen,
 Budget,Budget,
@@ -4000,7 +3920,7 @@
 {0} {1} has accounting entries in currency {2} for company {3}. Please select a receivable or payable account with currency {2}.,{0} {1} hat Buchhaltungseinträge in Währung {2} für Firma {3}. Bitte wählen Sie ein Debitoren- oder Kreditorenkonto mit der Währung {2} aus.,
 Invalid Account,Ungültiger Account,
 Purchase Order Required,Bestellung erforderlich,
-Purchase Receipt Required,Kaufbeleg notwendig,
+Purchase Receipt Required,Eingangsbeleg notwendig,
 Account Missing,Konto fehlt,
 Requested,Angefordert,
 Partially Paid,Teilweise bezahlt,
@@ -4326,7 +4246,6 @@
 e.g Adjustments for:,zB Anpassungen für:,
 Section Subtotal,Abschnitt Zwischensumme,
 Section Footer,Abschnitt Fußzeile,
-Position,Position,
 Cash Flow Mapping,Cashflow-Mapping,
 Select Maximum Of 1,Wählen Sie Maximal 1 aus,
 Is Finance Cost,Ist Finanzen Kosten,
@@ -4597,7 +4516,7 @@
 POS Field,POS-Feld,
 POS Item Group,POS Artikelgruppe,
 Company Address,Anschrift des Unternehmens,
-Update Stock,Lagerbestand aktualisieren,
+Update Stock,Lagerbestand aktualisieren,
 Ignore Pricing Rule,Preisregel ignorieren,
 Applicable for Users,Anwendbar für Benutzer,
 Sales Invoice Payment,Ausgangsrechnung-Zahlungen,
@@ -4667,7 +4586,7 @@
 Tax Withholding Category,Steuereinbehalt Kategorie,
 Edit Posting Date and Time,Buchungsdatum und -uhrzeit bearbeiten,
 Is Paid,Ist bezahlt,
-Is Return (Debit Note),ist Rücklieferung (Lastschrift),
+Is Return (Debit Note),Ist Rechnungskorrektur (Retoure),
 Apply Tax Withholding Amount,Steuereinbehaltungsbetrag anwenden,
 Accounting Dimensions ,Buchhaltung Dimensionen,
 Supplier Invoice Details,Lieferant Rechnungsdetails,
@@ -4767,7 +4686,7 @@
 Item Tax Rate,Artikelsteuersatz,
 Tax detail table fetched from item master as a string and stored in this field.\nUsed for Taxes and Charges,Die Tabelle Steuerdetails wird aus dem Artikelstamm als Zeichenfolge entnommen und in diesem Feld gespeichert. Wird verwendet für Steuern und Abgaben,
 Purchase Order Item,Bestellartikel,
-Purchase Receipt Detail,Kaufbelegdetail,
+Purchase Receipt Detail,Eingangsbelegposition,
 Item Weight Details,Artikel Gewicht Details,
 Weight Per Unit,Gewicht pro Einheit,
 Total Weight,Gesamtgewicht,
@@ -4791,8 +4710,7 @@
 ACC-SINV-.YYYY.-,ACC-SINV-.JJJJ.-,
 Include Payment (POS),(POS) Zahlung einschließen,
 Offline POS Name,Offline-Verkaufsstellen-Name,
-Is Return (Credit Note),ist Rücklieferung (Gutschrift),
-Return Against Sales Invoice,Zurück zur Kundenrechnung,
+Is Return (Credit Note),Ist Rechnungskorrektur (Retoure),
 Update Billed Amount in Sales Order,Aktualisierung des Rechnungsbetrags im Auftrag,
 Customer PO Details,Auftragsdetails,
 Customer's Purchase Order,Bestellung des Kunden,
@@ -4961,7 +4879,6 @@
 Previous Business Day,Voriger Geschäftstag,
 Next Business Day,Nächster Arbeitstag,
 Urgent,Dringend,
-Crop,Ernte,
 Crop Name,Name der Frucht,
 Scientific Name,Wissenschaftlicher Name,
 "You can define all the tasks which need to carried out for this crop here. The day field is used to mention the day on which the task needs to be carried out, 1 being the 1st day, etc.. ","Sie können hier alle Aufgaben definieren, die für diese Kultur durchgeführt werden sollen. Das Tagesfeld wird verwendet, um den Tag zu nennen, an dem die Aufgabe ausgeführt werden muss, wobei 1 der 1. Tag usw. ist.",
@@ -5070,7 +4987,7 @@
 Maintenance Required,Wartung erforderlich,
 Check if Asset requires Preventive Maintenance or Calibration,"Überprüfen Sie, ob der Vermögenswert eine vorbeugende Wartung oder Kalibrierung erfordert",
 Booked Fixed Asset,Gebuchtes Anlagevermögen,
-Purchase Receipt Amount,Kaufbelegbetrag,
+Purchase Receipt Amount,Betrag Eingangsbeleg,
 Default Finance Book,Standardfinanzbuch,
 Quality Manager,Qualitätsmanager,
 Asset Category Name,Name Vermögenswertkategorie,
@@ -5190,7 +5107,7 @@
 Stock Uom,Lagermaßeinheit,
 Raw Material Item Code,Rohmaterial-Artikelnummer,
 Supplied Qty,Gelieferte Anzahl,
-Purchase Receipt Item Supplied,Kaufbeleg-Artikel geliefert,
+Purchase Receipt Item Supplied,Eingangsbeleg-Artikel geliefert,
 Current Stock,Aktueller Lagerbestand,
 PUR-RFQ-.YYYY.-,PUR-RFQ-.YYYY.-,
 For individual supplier,Für einzelne Anbieter,
@@ -5210,7 +5127,7 @@
 Represents Company,Repräsentiert das Unternehmen,
 Supplier Type,Lieferantentyp,
 Allow Purchase Invoice Creation Without Purchase Order,Erstellen von Eingangsrechnung ohne Bestellung zulassen,
-Allow Purchase Invoice Creation Without Purchase Receipt,Erstellen von Eingangsrechnung ohne Kaufbeleg ohne Kaufbeleg zulassen,
+Allow Purchase Invoice Creation Without Purchase Receipt,Erstellen von Eingangsrechnung ohne Eingangsbeleg zulassen,
 Warn RFQs,Warnung Ausschreibungen,
 Warn POs,Warnen Sie POs,
 Prevent RFQs,Vermeidung von Ausschreibungen,
@@ -5468,7 +5385,6 @@
 To TIme,Bis-Zeit,
 Course End Date,Kurs Enddatum,
 Course Topic,Kursthema,
-Topic,Thema,
 Topic Name,Thema Name,
 Education Settings,Bildungseinstellungen,
 Current Academic Year,Laufendes akademisches Jahr,
@@ -5543,7 +5459,6 @@
 Check this if the Student is residing at the Institute's Hostel.,"Überprüfen Sie dies, wenn der Student im Gasthaus des Instituts wohnt.",
 Walking,Gehen,
 Institute's Bus,Instituts-Bus,
-Public Transport,Öffentlicher Verkehr,
 Self-Driving Vehicle,Selbstfahrendes Fahrzeug,
 Pick/Drop by Guardian,Pick / Drop von Guardian,
 Enrolled courses,Eingeschriebene Kurse,
@@ -5724,7 +5639,6 @@
 Default Cost Center,Standardkostenstelle,
 Undeposited Funds Account,Konto für nicht eingezahlte Gelder,
 Shopify Log,Shopify-Protokoll,
-Request Data,Daten anfordern,
 Shopify Settings,Einstellungen bearbeiten,
 status html,Status HTML,
 Enable Shopify,Aktivieren Sie Shopify,
@@ -5844,7 +5758,6 @@
 Exercise Instructions,Übungsanleitung,
 Exercise Video,Übungsvideo,
 Exercise Steps,Übungsschritte,
-Steps,Schritte,
 Steps Table,Schritte Tabelle,
 Exercise Type Step,Übungstyp Schritt,
 Max number of visit,Maximaler Besuch,
@@ -6028,7 +5941,6 @@
 Patient Encounter Symptom,Symptom der Patientenbegegnung,
 HLC-PMR-.YYYY.-,HLC-PMR-.YYYY.-,
 Attach Medical Record,Krankenakte anhängen,
-Reference DocType,Referenz DocType,
 Spouse,Ehepartner,
 Family,Familie,
 Schedule Details,Zeitplandetails,
@@ -6774,8 +6686,8 @@
 From Lead,Aus Lead,
 Account Manager,Kundenberater,
 Accounts Manager,Buchhalter,
-Allow Sales Invoice Creation Without Sales Order,Ermöglichen Sie die Erstellung von Kundenrechnungen ohne Auftrag,
-Allow Sales Invoice Creation Without Delivery Note,Ermöglichen Sie die Erstellung einer Ausgangsrechnung ohne Lieferschein,
+Allow Sales Invoice Creation Without Sales Order,Ermöglichen Sie die Erstellung von Ausgangsrechnungen ohne Auftrag,
+Allow Sales Invoice Creation Without Delivery Note,Ermöglichen Sie die Erstellung von Ausgangsrechnungen ohne Lieferschein,
 Default Price List,Standardpreisliste,
 Primary Address and Contact,Hauptadresse und -kontakt,
 "Select, to make the customer searchable with these fields","Wählen Sie, um den Kunden mit diesen Feldern durchsuchbar zu machen",
@@ -7006,16 +6918,8 @@
 HTML / Banner that will show on the top of product list.,"HTML/Banner, das oben auf der Produktliste angezeigt wird.",
 Set prefix for numbering series on your transactions,Präfix für die Seriennummerierung Ihrer Transaktionen festlegen,
 Setup Series,Serie bearbeiten,
-Select Transaction,Bitte Transaktionen auswählen,
-Help HTML,HTML-Hilfe,
-Series List for this Transaction,Nummernkreise zu diesem Vorgang,
-User must always select,Benutzer muss immer auswählen,
-Check this if you want to force the user to select a series before saving. There will be no default if you check this.,"Hier aktivieren, wenn der Benutzer gezwungen sein soll, vor dem Speichern eine Serie auszuwählen. Bei Aktivierung gibt es keine Standardvorgabe.",
 Update Series,Nummernkreise aktualisieren,
 Change the starting / current sequence number of an existing series.,Anfangs- / Ist-Wert eines Nummernkreises ändern.,
-Prefix,Präfix,
-This is the number of the last created transaction with this prefix,Dies ist die Nummer der letzten erstellten Transaktion mit diesem Präfix,
-Update Series Number,Nummernkreis-Wert aktualisieren,
 Quotation Lost Reason,Grund für verlorenes Angebotes,
 A third party distributor / dealer / commission agent / affiliate / reseller who sells the companies products for a commission.,"Ein Drittanbieter/Händler/Kommissionär/verbundenes Unternehmen/Wiederverkäufer, der die Produkte auf Provisionsbasis verkauft.",
 Sales Partner Name,Name des Vertriebspartners,
@@ -7094,7 +6998,7 @@
 Tariff Number,Tarifnummer,
 Delivery To,Lieferung an,
 MAT-DN-.YYYY.-,MAT-DN-.YYYY.-,
-Is Return,Ist Rückgabe,
+Is Return,Ist Retoure,
 Issue Credit Note,Gutschrift ausgeben,
 Return Against Delivery Note,Zurück zum Lieferschein,
 Customer's Purchase Order No,Bestellnummer des Kunden,
@@ -7290,13 +7194,13 @@
 Receipt Document Type,Receipt Dokumenttyp,
 Receipt Document,Eingangsbeleg,
 Applicable Charges,Anfallende Gebühren,
-Purchase Receipt Item,Kaufbeleg-Artikel,
-Landed Cost Purchase Receipt,Einstandspreis-Kaufbeleg,
+Purchase Receipt Item,Eingangsbeleg-Artikel,
+Landed Cost Purchase Receipt,Einstandspreis-Eingangsbeleg,
 Landed Cost Taxes and Charges,Einstandspreis Steuern und Gebühren,
 Landed Cost Voucher,Beleg über Einstandskosten,
-Purchase Receipts,Kaufbelege,
-Purchase Receipt Items,Kaufbeleg-Artikel,
-Get Items From Purchase Receipts,Artikel vom Kaufbeleg übernehmen,
+Purchase Receipts,Eingangsbelege,
+Purchase Receipt Items,Eingangsbeleg-Artikel,
+Get Items From Purchase Receipts,Artikel vom Eingangsbeleg übernehmen,
 Distribute Charges Based On,Kosten auf folgender Grundlage verteilen,
 Landed Cost Help,Hilfe zum Einstandpreis,
 Manufacturers used in Items,Hersteller im Artikel verwendet,
@@ -7344,7 +7248,7 @@
 MAT-PRE-.YYYY.-,MAT-PRE-.JJJJ.-,
 Supplier Delivery Note,Lieferschein Nr.,
 Time at which materials were received,"Zeitpunkt, zu dem Materialien empfangen wurden",
-Return Against Purchase Receipt,Zurück zum Kaufbeleg,
+Return Against Purchase Receipt,Zurück zum Eingangsbeleg,
 Rate at which supplier's currency is converted to company's base currency,"Kurs, zu dem die Währung des Lieferanten in die Basiswährung des Unternehmens umgerechnet wird",
 Sets 'Accepted Warehouse' in each row of the items table.,Legt &#39;Akzeptiertes Lager&#39; in jeder Zeile der Artikeltabelle fest.,
 Sets 'Rejected Warehouse' in each row of the items table.,Legt &#39;Abgelehntes Lager&#39; in jeder Zeile der Artikeltabelle fest.,
@@ -7384,7 +7288,7 @@
 Quick Stock Balance,Schneller Lagerbestand,
 Available Quantity,verfügbare Anzahl,
 Distinct unit of an Item,Eindeutige Einheit eines Artikels,
-Warehouse can only be changed via Stock Entry / Delivery Note / Purchase Receipt,Lager kann nur über Lagerbuchung / Lieferschein / Kaufbeleg geändert werden,
+Warehouse can only be changed via Stock Entry / Delivery Note / Purchase Receipt,Lager kann nur über Lagerbuchung / Lieferschein / Eingangsbeleg geändert werden,
 Purchase / Manufacture Details,Einzelheiten zu Kauf / Herstellung,
 Creation Document Type,Belegerstellungs-Typ,
 Creation Document No,Belegerstellungs-Nr.,
@@ -7412,7 +7316,7 @@
 Send to Subcontractor,An Subunternehmer senden,
 Delivery Note No,Lieferschein-Nummer,
 Sales Invoice No,Ausgangsrechnungs-Nr.,
-Purchase Receipt No,Kaufbeleg Nr.,
+Purchase Receipt No,Eingangsbeleg Nr.,
 Inspection Required,Prüfung erforderlich,
 From BOM,Von Stückliste,
 For Quantity,Für Menge,
@@ -7441,7 +7345,7 @@
 Against Stock Entry,Gegen Lagerbuchung,
 Stock Entry Child,Stock Entry Child,
 PO Supplied Item,PO geliefertes Einzelteil,
-Reference Purchase Receipt,Referenz Kaufbeleg,
+Reference Purchase Receipt,Referenz Eingangsbeleg,
 Stock Ledger Entry,Buchung im Lagerbuch,
 Outgoing Rate,Verkaufspreis,
 Actual Qty After Transaction,Tatsächliche Anzahl nach Transaktionen,
@@ -7657,7 +7561,7 @@
 Received Qty Amount,Erhaltene Menge Menge,
 Billed Qty,Rechnungsmenge,
 Purchase Order Trends,Entwicklung Bestellungen,
-Purchase Receipt Trends,Trendanalyse Kaufbelege,
+Purchase Receipt Trends,Trendanalyse Eingangsbelege,
 Purchase Register,Übersicht über Einkäufe,
 Quotation Trends,Trendanalyse Angebote,
 Received Items To Be Billed,"Von Lieferanten gelieferte Artikel, die noch abgerechnet werden müssen",
@@ -7704,7 +7608,6 @@
 Warehouse wise Item Balance Age and Value,Lagerweise Item Balance Alter und Wert,
 Work Order Stock Report,Arbeitsauftragsbericht,
 Work Orders in Progress,Arbeitsaufträge in Bearbeitung,
-Validation Error,Validierungsfehler,
 Automatically Process Deferred Accounting Entry,Aufgeschobene Buchungsbuchung automatisch verarbeiten,
 Bank Clearance,Bankfreigabe,
 Bank Clearance Detail,Bankfreigabedetail,
@@ -7741,45 +7644,7 @@
 Therapy Plan: ,Therapieplan:,
 Total Counts Targeted: ,Gesamtzahl der angestrebten Zählungen:,
 Total Counts Completed: ,Gesamtzahl der abgeschlossenen Zählungen:,
-Andaman and Nicobar Islands,Andamanen und Nikobaren,
-Andhra Pradesh,Andhra Pradesh,
-Arunachal Pradesh,Arunachal Pradesh,
-Assam,Assam,
-Bihar,Bihar,
-Chandigarh,Chandigarh,
-Chhattisgarh,Chhattisgarh,
-Dadra and Nagar Haveli,Dadra und Nagar Haveli,
-Daman and Diu,Daman und Diu,
-Delhi,Delhi,
-Goa,Goa,
-Gujarat,Gujarat,
-Haryana,Haryana,
-Himachal Pradesh,Himachal Pradesh,
-Jammu and Kashmir,Jammu und Kashmir,
-Jharkhand,Jharkhand,
-Karnataka,Karnataka,
-Kerala,Kerala,
-Lakshadweep Islands,Lakshadweep-Inseln,
-Madhya Pradesh,Madhya Pradesh,
-Maharashtra,Maharashtra,
-Manipur,Manipur,
-Meghalaya,Meghalaya,
-Mizoram,Mizoram,
-Nagaland,Nagaland,
-Odisha,Odisha,
-Other Territory,Anderes Gebiet,
-Pondicherry,Pondicherry,
-Punjab,Punjab,
-Rajasthan,Rajasthan,
-Sikkim,Sikkim,
-Tamil Nadu,Tamil Nadu,
-Telangana,Telangana,
-Tripura,Tripura,
-Uttar Pradesh,Uttar Pradesh,
-Uttarakhand,Uttarakhand,
-West Bengal,West Bengal,
 Is Mandatory,Ist obligatorisch,
-Published on,Veröffentlicht auf,
 Service Received But Not Billed,"Service erhalten, aber nicht in Rechnung gestellt",
 Deferred Accounting Settings,Aufgeschobene Buchhaltungseinstellungen,
 Book Deferred Entries Based On,Buch verzögerte Einträge basierend auf,
@@ -7933,8 +7798,8 @@
 "By default, the Supplier Name is set as per the Supplier Name entered. If you want Suppliers to be named by a  ","Standardmäßig wird der Lieferantenname gemäß dem eingegebenen Lieferantennamen festgelegt. Wenn Sie möchten, dass Lieferanten von a benannt werden",
  choose the 'Naming Series' option.,Wählen Sie die Option &quot;Naming Series&quot;.,
 Configure the default Price List when creating a new Purchase transaction. Item prices will be fetched from this Price List.,Konfigurieren Sie die Standardpreisliste beim Erstellen einer neuen Kauftransaktion. Artikelpreise werden aus dieser Preisliste abgerufen.,
-"If this option is configured 'Yes', ERPNext will prevent you from creating a Purchase Invoice or Receipt without creating a Purchase Order first. This configuration can be overridden for a particular supplier by enabling the 'Allow Purchase Invoice Creation Without Purchase Order' checkbox in the Supplier master.","Wenn diese Option auf 'Ja' gesetzt ist, validiert ERPNext, dass Sie eine Bestellung angelegt haben, bevor Sie eine Eingangsrechnung oder einen Kaufbeleg erfassen können. Diese Konfiguration kann für einzelne Lieferanten überschrieben werden, indem Sie die Option 'Erstellung von Eingangsrechnungen ohne Bestellung zulassen' im Lieferantenstamm aktivieren.",
-"If this option is configured 'Yes', ERPNext will prevent you from creating a Purchase Invoice without creating a Purchase Receipt first. This configuration can be overridden for a particular supplier by enabling the 'Allow Purchase Invoice Creation Without Purchase Receipt' checkbox in the Supplier master.","Wenn diese Option auf 'Ja' gesetzt ist, validiert ERPNext, dass Sie einen Kaufbeleg angelegt haben, bevor Sie eine Eingangsrechnung erfasen können. Diese Konfiguration kann für einzelne Lieferanten überschrieben werden, indem Sie die Option 'Erstellung von Kaufrechnungen ohne Kaufbeleg zulassen' im Lieferantenstamm aktivieren.",
+"If this option is configured 'Yes', ERPNext will prevent you from creating a Purchase Invoice or Receipt without creating a Purchase Order first. This configuration can be overridden for a particular supplier by enabling the 'Allow Purchase Invoice Creation Without Purchase Order' checkbox in the Supplier master.","Wenn diese Option auf 'Ja' gesetzt ist, validiert ERPNext, dass Sie eine Bestellung angelegt haben, bevor Sie eine Eingangsrechnung oder einen Eingangsbeleg erfassen können. Diese Konfiguration kann für einzelne Lieferanten überschrieben werden, indem Sie die Option 'Erstellung von Eingangsrechnungen ohne Bestellung zulassen' im Lieferantenstamm aktivieren.",
+"If this option is configured 'Yes', ERPNext will prevent you from creating a Purchase Invoice without creating a Purchase Receipt first. This configuration can be overridden for a particular supplier by enabling the 'Allow Purchase Invoice Creation Without Purchase Receipt' checkbox in the Supplier master.","Wenn diese Option auf 'Ja' gesetzt ist, validiert ERPNext, dass Sie einen Eingangsbeleg angelegt haben, bevor Sie eine Eingangsrechnung erfassen können. Diese Konfiguration kann für einzelne Lieferanten überschrieben werden, indem Sie die Option 'Erstellung von Kaufrechnungen ohne Eingangsbeleg zulassen' im Lieferantenstamm aktivieren.",
 Quantity & Stock,Menge & Lager,
 Call Details,Anrufdetails,
 Authorised By,Authorisiert von,
@@ -8052,8 +7917,6 @@
 Worksheet Instructions,Arbeitsblatt Anweisungen,
 Result Legend Print,Ergebnis Legend Print,
 Print Position,Druckposition,
-Bottom,Unterseite,
-Top,oben,
 Both,Beide,
 Result Legend,Ergebnis Legende,
 Lab Tests,Labortests,
@@ -8098,12 +7961,10 @@
 Approvers,Genehmiger,
 The first Approver in the list will be set as the default Approver.,Der erste Genehmiger in der Liste wird als Standardgenehmiger festgelegt.,
 Shift Request Approver,Schichtanforderungsgenehmiger,
-PAN Number,PAN-Nummer,
 Provident Fund Account,Vorsorgefonds-Konto,
 MICR Code,MICR-Code,
 Repay unclaimed amount from salary,Nicht zurückgeforderten Betrag vom Gehalt zurückzahlen,
 Deduction from salary,Abzug vom Gehalt,
-Expired Leaves,Abgelaufene Blätter,
 If this is not checked the loan by default will be considered as a Demand Loan,"Wenn dies nicht aktiviert ist, wird das Darlehen standardmäßig als Nachfragedarlehen betrachtet",
 This account is used for booking loan repayments from the borrower and also disbursing loans to the borrower,Dieses Konto wird zur Buchung von Kreditrückzahlungen vom Kreditnehmer und zur Auszahlung von Krediten an den Kreditnehmer verwendet,
 This account is capital account which is used to allocate capital for loan disbursal account ,"Dieses Konto ist ein Kapitalkonto, das zur Zuweisung von Kapital für das Darlehensauszahlungskonto verwendet wird",
@@ -8178,7 +8039,6 @@
 Image Description,Bildbeschreibung,
 Transfer Status,Übertragungsstatus,
 MAT-PR-RET-.YYYY.-,MAT-PR-RET-.YYYY.-,
-Track this Purchase Receipt against any Project,Verfolgen Sie diesen Kaufbeleg für jedes Projekt,
 Please Select a Supplier,Bitte wählen Sie einen Lieferanten,
 Add to Transit,Zum Transit hinzufügen,
 Set Basic Rate Manually,Grundpreis manuell einstellen,
@@ -8603,8 +8463,8 @@
 Show Inclusive Tax in Print,Inklusive Steuern im Druck anzeigen,
 Only select this if you have set up the Cash Flow Mapper documents,"Wählen Sie diese Option nur, wenn Sie die Cash Flow Mapper-Dokumente eingerichtet haben",
 Payment Channel,Zahlungskanal,
-Is Purchase Order Required for Purchase Invoice & Receipt Creation?,Ist für die Erstellung von Kaufrechnungen und Quittungen eine Bestellung erforderlich?,
-Is Purchase Receipt Required for Purchase Invoice Creation?,Ist für die Erstellung der Kaufrechnung ein Kaufbeleg erforderlich?,
+Is Purchase Order Required for Purchase Invoice & Receipt Creation?,Ist für die Erstellung von Eingangsrechnungen und Quittungen eine Bestellung erforderlich?,
+Is Purchase Receipt Required for Purchase Invoice Creation?,Ist für die Erstellung der Eingangsrechnungen ein Eingangsbeleg erforderlich?,
 Maintain Same Rate Throughout the Purchase Cycle,Behalten Sie den gleichen Preis während des gesamten Kaufzyklus bei,
 Allow Item To Be Added Multiple Times in a Transaction,"Zulassen, dass ein Element in einer Transaktion mehrmals hinzugefügt wird",
 Suppliers,Lieferanten,
@@ -8662,8 +8522,8 @@
 Select Items,Gegenstände auswählen,
 Against Default Supplier,Gegen Standardlieferanten,
 Auto close Opportunity after the no. of days mentioned above,Gelegenheit zum automatischen Schließen nach der Nr. der oben genannten Tage,
-Is Sales Order Required for Sales Invoice & Delivery Note Creation?,Ist ein Auftrag für die Erstellung von Kundenrechnungen und Lieferscheinen erforderlich?,
-Is Delivery Note Required for Sales Invoice Creation?,Ist für die Erstellung der Ausgangsrechnung ein Lieferschein erforderlich?,
+Is Sales Order Required for Sales Invoice & Delivery Note Creation?,Ist ein Auftrag für die Erstellung von Ausgangsrechnungen und Lieferscheinen erforderlich?,
+Is Delivery Note Required for Sales Invoice Creation?,Ist ein Lieferschein für die Erstellung von Ausgangsrechnungen erforderlich?,
 How often should Project and Company be updated based on Sales Transactions?,Wie oft sollten Projekt und Unternehmen basierend auf Verkaufstransaktionen aktualisiert werden?,
 Allow User to Edit Price List Rate in Transactions,Benutzer darf Preisliste in Transaktionen bearbeiten,
 Allow Item to Be Added Multiple Times in a Transaction,"Zulassen, dass ein Element in einer Transaktion mehrmals hinzugefügt wird",
@@ -8678,7 +8538,7 @@
 Raise Material Request When Stock Reaches Re-order Level,"Erhöhen Sie die Materialanforderung, wenn der Lagerbestand die Nachbestellmenge erreicht",
 Notify by Email on Creation of Automatic Material Request,Benachrichtigen Sie per E-Mail über die Erstellung einer automatischen Materialanforderung,
 Allow Material Transfer from Delivery Note to Sales Invoice,Materialübertragung vom Lieferschein zur Ausgangsrechnung zulassen,
-Allow Material Transfer from Purchase Receipt to Purchase Invoice,Materialübertragung vom Kaufbeleg zur Eingangsrechnung zulassen,
+Allow Material Transfer from Purchase Receipt to Purchase Invoice,Materialübertragung vom Eingangsbeleg zur Eingangsrechnung zulassen,
 Freeze Stocks Older Than (Days),Aktien einfrieren älter als (Tage),
 Role Allowed to Edit Frozen Stock,Rolle darf eingefrorenes Material bearbeiten,
 The unallocated amount of Payment Entry {0} is greater than the Bank Transaction's unallocated amount,Der nicht zugewiesene Betrag der Zahlungseingabe {0} ist größer als der nicht zugewiesene Betrag der Banküberweisung,
@@ -8803,20 +8663,17 @@
 Please set default Cash or Bank account in Mode of Payments {},Bitte setzen Sie das Standard-Bargeld- oder Bankkonto im Zahlungsmodus {},
 Please ensure {} account is a Balance Sheet account. You can change the parent account to a Balance Sheet account or select a different account.,"Bitte stellen Sie sicher, dass das Konto {} ein Bilanzkonto ist. Sie können das übergeordnete Konto in ein Bilanzkonto ändern oder ein anderes Konto auswählen.",
 Please ensure {} account is a Payable account. Change the account type to Payable or select a different account.,"Bitte stellen Sie sicher, dass das Konto {} ein zahlbares Konto ist. Ändern Sie den Kontotyp in &quot;Verbindlichkeiten&quot; oder wählen Sie ein anderes Konto aus.",
-Row {}: Expense Head changed to {} ,Zeile {}: Ausgabenkopf geändert in {},
-because account {} is not linked to warehouse {} ,weil das Konto {} nicht mit dem Lager {} verknüpft ist,
-or it is not the default inventory account,oder es ist nicht das Standard-Inventarkonto,
-Expense Head Changed,Ausgabenkopf geändert,
-because expense is booked against this account in Purchase Receipt {},weil die Kosten für dieses Konto im Kaufbeleg {} gebucht werden,
-as no Purchase Receipt is created against Item {}. ,da für Artikel {} kein Kaufbeleg erstellt wird.,
-This is done to handle accounting for cases when Purchase Receipt is created after Purchase Invoice,"Dies erfolgt zur Abrechnung von Fällen, in denen der Kaufbeleg nach der Kaufrechnung erstellt wird",
+Row {0}: Expense Head changed to {1} because account {2} is not linked to warehouse {3} or it is not the default inventory account,"Zeile {0}: Aufwandskonto geändert zu {1}, weil das Konto {2} nicht mit dem Lager {3} verknüpft ist oder es nicht das Standard-Inventarkonto ist",
+Row {0}: Expense Head changed to {1} because expense is booked against this account in Purchase Receipt {2},"Zeile {0}: Aufwandskonto geändert zu {1}, da dieses bereits in Eingangsbeleg {2} verwendet wurde",
+Row {0}: Expense Head changed to {1} as no Purchase Receipt is created against Item {2}.,"Zeile {0}: Aufwandskonto geändert zu {1}, da kein Eingangsbeleg für Artikel {2} erstellt wird.",
+This is done to handle accounting for cases when Purchase Receipt is created after Purchase Invoice,"Dies erfolgt zur Abrechnung von Fällen, in denen der Eingangsbeleg nach der Eingangsrechnung erstellt wird",
 Purchase Order Required for item {},Bestellung erforderlich für Artikel {},
 To submit the invoice without purchase order please set {} ,"Um die Rechnung ohne Bestellung einzureichen, setzen Sie bitte {}",
 as {} in {},wie in {},
 Mandatory Purchase Order,Obligatorische Bestellung,
-Purchase Receipt Required for item {},Kaufbeleg für Artikel {} erforderlich,
-To submit the invoice without purchase receipt please set {} ,"Um die Rechnung ohne Kaufbeleg einzureichen, setzen Sie bitte {}",
-Mandatory Purchase Receipt,Obligatorischer Kaufbeleg,
+Purchase Receipt Required for item {},Eingangsbeleg für Artikel {} erforderlich,
+To submit the invoice without purchase receipt please set {} ,"Um die Rechnung ohne Eingangsbeleg einzureichen, setzen Sie bitte {}",
+Mandatory Purchase Receipt,Obligatorischer Eingangsbeleg,
 POS Profile {} does not belongs to company {},Das POS-Profil {} gehört nicht zur Firma {},
 User {} is disabled. Please select valid user/cashier,Benutzer {} ist deaktiviert. Bitte wählen Sie einen gültigen Benutzer / Kassierer aus,
 Row #{}: Original Invoice {} of return invoice {} is {}. ,Zeile # {}: Die Originalrechnung {} der Rücksenderechnung {} ist {}.,
@@ -8932,6 +8789,42 @@
 Is Alternative,Ist Alternative,
 Alternative Items,Alternativpositionen,
 Add Template,Vorlage einfügen,
-Prepend the template to the email message,Vorlage oberhalb der Email-Nachricht einfügen,
-Clear & Add Template,Leeren und Vorlage einfügen,
-Clear the email message and add the template,Email-Feld leeren und Vorlage einfügen,
+Add Comment,Kommentar hinzufügen,
+More...,Mehr...,
+Notes,Hinweise,
+Payment Gateway,Zahlungs-Gateways,
+Payment Gateway Name,Name des Zahlungsgateways,
+Payments,Zahlungen,
+Plan Name,Planname,
+Portal,Portal,
+Scan Barcode,Barcode scannen,
+Some information is missing,Einige Informationen fehlen,
+Successful,Erfolgreich,
+Tools,Werkzeuge,
+Use Sandbox,Sandkastenmodus verwenden,
+Busy,Beschäftigt,
+Completed By,Vervollständigt von,
+Is Template, Ist Vorlage,
+Payment Failed,Bezahlung fehlgeschlagen,
+Column {0},Spalte {0},
+Field Mapping,Feldzuordnung,
+Not Specified,Keine Angabe,
+Update Type,Aktualisierungsart,
+Dr,Soll,
+End Time,Endzeit,
+Fetching...,Abrufen ...,
+"It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","Es scheint, dass ein Problem mit der Stripe-Konfiguration des Servers vorliegt. Im Falle eines Fehlers wird der Betrag Ihrem Konto gutgeschrieben.",
+Looks like someone sent you to an incomplete URL. Please ask them to look into it.,"Sieht aus wie jemand, den Sie zu einer unvollständigen URL gesendet. Bitte fragen Sie sie, sich in sie.",
+Master,Vorlage,
+Pay,Zahlen,
+You can also copy-paste this link in your browser,Sie können diese Verknüpfung in Ihren Browser kopieren,
+Verified By,Überprüft von,
+Invalid naming series (. missing) for {0},Ungültige Namensreihe (. Fehlt) für {0},
+Phone Number,Telefonnummer,
+Account SID,Konto-SID,
+Global Defaults,Allgemeine Voreinstellungen,
+Is Mandatory,Ist obligatorisch,
+WhatsApp,WhatsApp,
+Make a call,Einen Anruf tätigen,
+Approve,Genehmigen,
+Reject,Ablehnen,
diff --git a/erpnext/translations/el.csv b/erpnext/translations/el.csv
index ae72c26..7a83cc5 100644
--- a/erpnext/translations/el.csv
+++ b/erpnext/translations/el.csv
@@ -113,7 +113,6 @@
 Add Items,Προσθήκη Ειδών,
 Add Leads,Προσθήκη προσθηκών,
 Add Multiple Tasks,Προσθήκη πολλών εργασιών,
-Add Row,Προσθήκη Γραμμής,
 Add Sales Partners,Προσθέστε συνεργάτες πωλήσεων,
 Add Serial No,Προσθήκη σειριακού αριθμού,
 Add Students,Προσθέστε Φοιτητές,
@@ -211,9 +210,7 @@
 An error occurred during the update process,Παρουσιάστηκε σφάλμα κατά τη διαδικασία ενημέρωσης,
 "An item exists with same name ({0}), please change the item group name or rename the item","Ένα είδος υπάρχει με το ίδιο όνομα ( {0} ), παρακαλώ να αλλάξετε το όνομα της ομάδας ειδών ή να μετονομάσετε το είδος",
 Analyst,Αναλυτής,
-Analytics,Analytics,
 Annual Billing: {0},Ετήσια Χρέωση: {0},
-Anonymous,Ανώνυμος,
 Another Budget record '{0}' already exists against {1} '{2}' and account '{3}' for fiscal year {4},Μια άλλη εγγραφή προϋπολογισμού «{0}» υπάρχει ήδη έναντι {1} &#39;{2}&#39; και του λογαριασμού &#39;{3}&#39; για τη χρήση {4},
 Another Period Closing Entry {0} has been made after {1},Μια ακόμη καταχώρηση κλεισίματος περιόδου {0} έχει γίνει μετά από {1},
 Another Sales Person {0} exists with the same Employee id,Ένα άλλο πρόσωπο Πωλήσεις {0} υπάρχει με την ίδια ταυτότητα υπαλλήλου,
@@ -283,14 +280,12 @@
 Attendance not submitted for {0} as {1} on leave.,Η συμμετοχή δεν υποβλήθηκε για {0} ως {1} στην άδεια.,
 Attribute table is mandatory,Τραπέζι χαρακτηριστικό γνώρισμα είναι υποχρεωτικό,
 Attribute {0} selected multiple times in Attributes Table,Χαρακτηριστικό {0} πολλές φορές σε πίνακα Χαρακτηριστικά,
-Author,Συγγραφέας,
 Authorized Signatory,Εξουσιοδοτημένο υπογράφοντα,
 Auto Material Requests Generated,Αυτόματη Υλικό αιτήσεις που δημιουργούνται,
 Auto Repeat,Αυτόματη επανάληψη,
 Auto repeat document updated,Το έγγραφο αυτόματης επανάληψης ενημερώθηκε,
 Automotive,Αυτοκίνητο,
 Available,Διαθέσιμος,
-Available Leaves,Διαθέσιμα φύλλα,
 Available Qty,Διαθέσιμη ποσότητα,
 Available Selling,Διαθέσιμη πώληση,
 Available for use date is required,Απαιτείται ημερομηνία διαθέσιμη για χρήση,
@@ -340,7 +335,6 @@
 Base URL,Βασική διεύθυνση URL,
 Based On,Με βάση την,
 Based On Payment Terms,Βασισμένο στους Όρους Πληρωμής,
-Basic,Βασικός,
 Batch,Παρτίδα,
 Batch Entries,Παρτίδες παρτίδας,
 Batch ID is mandatory,Το αναγνωριστικό παρτίδας είναι υποχρεωτικό,
@@ -361,7 +355,6 @@
 Billable Hours,Χρεωστικές ώρες,
 Billed,Χρεώνεται,
 Billed Amount,Χρεωμένο ποσό,
-Billing,Χρέωση,
 Billing Address,διεύθυνση χρέωσης,
 Billing Address is same as Shipping Address,Η διεύθυνση χρέωσης είναι ίδια με τη διεύθυνση αποστολής,
 Billing Amount,Ποσό χρέωσης,
@@ -560,7 +553,6 @@
 Consumed Qty,Ποσότητα που καταναλώθηκε,
 Consumer Products,Καταναλωτικά προιόντα,
 Contact,Επαφή,
-Contact Details,Στοιχεία επικοινωνίας επαφής,
 Contact Us,Επικοινωνήστε μαζί μας,
 Content,Περιεχόμενο,
 Content Masters,Μάστερ Περιεχομένου,
@@ -715,7 +707,6 @@
 Date of Joining,Ημερομηνία πρόσληψης,
 Date of Joining must be greater than Date of Birth,"Η ημερομηνία της πρόσληψης πρέπει να είναι μεταγενέστερη από ό, τι η ημερομηνία γέννησης",
 Date of Transaction,Ημερομηνία συναλλαγής,
-Datetime,Datetime,
 Day,Ημέρα,
 Debit,Χρέωση,
 Debit ({0}),Χρέωση ({0}),
@@ -874,7 +865,6 @@
 Employee cannot report to himself.,Ο υπάλληλος δεν μπορεί να αναφέρει στον ευατό του.,
 Employee {0} has already applied for {1} between {2} and {3} : ,Ο εργαζόμενος {0} έχει ήδη υποβάλει αίτηση για {1} μεταξύ {2} και {3}:,
 Employee {0} of grade {1} have no default leave policy,Ο υπάλληλος {0} βαθμού {1} δεν έχει πολιτική προεπιλογής,
-Enable,Ενεργοποίηση,
 Enable / disable currencies.,Ενεργοποίηση / απενεργοποίηση νομισμάτων.,
 Enabled,Ενεργοποιημένο,
 "Enabling 'Use for Shopping Cart', as Shopping Cart is enabled and there should be at least one Tax Rule for Shopping Cart","Ενεργοποίηση »Χρησιμοποιήστε για το καλάθι αγορών», όπως είναι ενεργοποιημένο το καλάθι αγορών και θα πρέπει να υπάρχει τουλάχιστον μία φορολογική Κανόνας για το καλάθι αγορών",
@@ -905,7 +895,6 @@
 Error: Not a valid id?,Σφάλμα: Δεν είναι ένα έγκυρο αναγνωριστικό;,
 Estimated Cost,Εκτιμώμενο κόστος,
 "Even if there are multiple Pricing Rules with highest priority, then following internal priorities are applied:","Ακόμα κι αν υπάρχουν πολλαπλοί κανόνες τιμολόγησης με την υψηλότερη προτεραιότητα, στη συνέχεια οι εσωτερικές προτεραιότητες θα εφαρμοστούν:",
-Event,Συμβάν,
 Exchange Gain/Loss,Ανταλλαγή Κέρδος / Ζημιά,
 Exchange Rate Revaluation master.,Κύρια αντιστάθμιση συναλλαγματικής ισοτιμίας.,
 Exchange Rate must be same as {0} {1} ({2}),Ισοτιμία πρέπει να είναι ίδιο με το {0} {1} ({2}),
@@ -1032,7 +1021,6 @@
 From value must be less than to value in row {0},Η ΄από τιμή' πρέπει να είναι μικρότερη από την 'έως τιμή' στη γραμμή {0},
 From {0} | {1} {2},Από {0} | {1} {2},
 Fulfillment,Εκπλήρωση,
-Full,Γεμάτος,
 Full Name,Ονοματεπώνυμο,
 Fully Depreciated,αποσβεσθεί πλήρως,
 Furnitures and Fixtures,Έπιπλα και φωτιστικών,
@@ -1133,7 +1121,6 @@
 Hub Sync ID,Αναγνωριστικό συγχρονισμού Hub,
 Human Resource,Ανθρώπινο δυναμικό,
 Human Resources,Ανθρώπινοι πόροι,
-IFSC Code,Κωδικός IFSC,
 IGST Amount,Ποσό IGST,
 IP Address,Διεύθυνση IP,
 ITC Available (whether in full op part),ITC Διαθέσιμο (είτε σε πλήρη op μέρος),
@@ -1185,7 +1172,6 @@
 Ineligible ITC,Μη επιλέξιμα ITC,
 Initiated,Ξεκίνησε,
 Inpatient Record,Εγγραφή στα νοσοκομεία,
-Insert,Εισαγωγή,
 Installation Note,Σημείωση εγκατάστασης,
 Installation Note {0} has already been submitted,Η σημείωση εγκατάστασης {0} έχει ήδη υποβληθεί,
 Installation date cannot be before delivery date for Item {0},Η ημερομηνία εγκατάστασης δεν μπορεί να είναι προγενέστερη της ημερομηνίας παράδοσης για το είδος {0},
@@ -1197,7 +1183,6 @@
 Insurance Start date should be less than Insurance End date,ημερομηνία Ασφαλιστική Αρχή θα πρέπει να είναι μικρότερη από την ημερομηνία λήξης Ασφαλιστική,
 Integrated Tax,Ολοκληρωμένος Φόρος,
 Inter-State Supplies,Διακρατικά προμήθειες,
-Interests,Ενδιαφέροντα,
 Internet Publishing,Δημοσίευση στο διαδίκτυο,
 Intra-State Supplies,Ενδοκράτους,
 Introduction,Εισαγωγή,
@@ -1316,7 +1301,6 @@
 Lab testing datetime cannot be before collection datetime,Ο χρόνος δοκιμής εργαστηρίου δεν μπορεί να είναι πριν από την ημερομηνία συλλογής,
 Label,Ετικέτα,
 Laboratory,Εργαστήριο,
-Language Name,γλώσσα Όνομα,
 Large,Μεγάλο,
 Last Communication,Τελευταία ανακοίνωση,
 Last Communication Date,Τελευταία ημερομηνία επικοινωνίας,
@@ -1347,8 +1331,6 @@
 Letter Heads for print templates.,Επικεφαλίδες επιστολόχαρτου για πρότυπα εκτύπωσης.,
 Level,Επίπεδο,
 Liability,Υποχρέωση,
-License,Αδεια,
-Limit,Όριο,
 Limit Crossed,όριο Crossed,
 Link to Material Request,Σύνδεση με το αίτημα υλικού,
 List of all share transactions,Κατάλογος όλων των συναλλαγών μετοχών,
@@ -1359,7 +1341,6 @@
 Loans (Liabilities),Δάνεια (παθητικό ),
 Loans and Advances (Assets),Δάνεια και προκαταβολές ( ενεργητικό ),
 Local,Τοπικός,
-Log,Κούτσουρο,
 Logs for maintaining sms delivery status,Logs για τη διατήρηση της κατάστασης παράδοσης sms,
 Lost,Απολεσθέν,
 Lost Reasons,Λόγοι που χάθηκαν,
@@ -1445,7 +1426,6 @@
 Medical Department,Ιατρικό Τμήμα,
 Medical Record,Ιατρικό αρχείο,
 Medium,Μέσο,
-Meeting,Συνάντηση,
 Member Activity,Δραστηριότητα μελών,
 Member ID,ταυτότητα μέλους,
 Member Name,Ονομα μέλους,
@@ -1495,7 +1475,6 @@
 Multiple Variants,Πολλαπλές παραλλαγές,
 Multiple fiscal years exist for the date {0}. Please set company in Fiscal Year,Υπάρχουν πολλαπλές χρήσεις για την ημερομηνία {0}. Παρακαλούμε να ορίσετε την εταιρεία κατά το οικονομικό έτος,
 Music,Μουσική,
-My Account,Ο Λογαριασμός Μου,
 Name error: {0},error Όνομα: {0},
 Name of new Account. Note: Please don't create accounts for Customers and Suppliers,Όνομα του νέου λογαριασμού. Σημείωση: Παρακαλώ μην δημιουργείτε λογαριασμούς για τους πελάτες και προμηθευτές,
 Name or Email is mandatory,Όνομα ή Email είναι υποχρεωτικό,
@@ -1538,7 +1517,6 @@
 New credit limit is less than current outstanding amount for the customer. Credit limit has to be atleast {0},Νέο πιστωτικό όριο είναι μικρότερο από το τρέχον οφειλόμενο ποσό για τον πελάτη. Πιστωτικό όριο πρέπει να είναι atleast {0},
 New task,Νέα εργασία,
 New {0} pricing rules are created,Νέοι κανόνες {0} τιμολόγησης δημιουργούνται,
-Newsletters,Ενημερωτικά δελτία,
 Newspaper Publishers,Εκδότες εφημερίδων,
 Next,Επόμενος,
 Next Contact By cannot be same as the Lead Email Address,Επόμενο Επικοινωνία Με το να μην μπορεί να είναι ίδιο με το Lead Διεύθυνση E-mail,
@@ -1686,7 +1664,6 @@
 Other,Άλλος,
 Other Reports,άλλες εκθέσεις,
 "Other outward supplies(Nil rated,Exempted)","Άλλες παροχές προς το εξωτερικό (μη διαβαθμισμένες, απαλλαγμένες)",
-Others,Άλλα,
 Out Qty,Ποσότητα εκτός,
 Out Value,από Αξία,
 Out of Order,Εκτός λειτουργίας,
@@ -1726,7 +1703,6 @@
 Party Type and Party is mandatory for {0} account,Ο τύπος συμβαλλόμενου μέρους και ο συμβαλλόμενος είναι υποχρεωτικός για λογαριασμό {0},
 Party Type is mandatory,Κόμμα Τύπος είναι υποχρεωτική,
 Party is mandatory,Κόμμα είναι υποχρεωτική,
-Password,Κωδικός,
 Past Due Date,Ημερομηνία Προθεσμίας,
 Patient,Υπομονετικος,
 Patient Appointment,Αναμονή ασθενούς,
@@ -1784,7 +1760,6 @@
 Pharmaceutical,Φαρμακευτικός,
 Pharmaceuticals,Φαρμακευτική,
 Physician,Γιατρός,
-Pincode,Κωδικός pin,
 Place Of Supply (State/UT),Τόπος παροχής (κράτος / UT),
 Place Order,Παραγγέλνω,
 Plan Name,Όνομα προγράμματος,
@@ -1896,7 +1871,6 @@
 Please select date,Παρακαλώ επιλέξτε ημερομηνία,
 Please select item code,Παρακαλώ επιλέξτε κωδικό είδους,
 Please select month and year,Παρακαλώ επιλέξτε μήνα και έτος,
-Please select prefix first,Παρακαλώ επιλέξτε πρόθεμα πρώτα,
 Please select the Company,Επιλέξτε την εταιρεία,
 Please select the Multiple Tier Program type for more than one collection rules.,Επιλέξτε τον τύπο πολλαπλού προγράμματος για περισσότερους από έναν κανόνες συλλογής.,
 Please select the assessment group other than 'All Assessment Groups',"Παρακαλώ επιλέξτε την ομάδα αξιολόγησης, εκτός από τις &quot;Όλες οι ομάδες αξιολόγησης&quot;",
@@ -1913,7 +1887,6 @@
 Please set Company filter blank if Group By is 'Company',"Ρυθμίστε το φίλτρο Εταιρεία κενό, εάν η ομάδα είναι &quot;Εταιρεία&quot;",
 Please set Default Payroll Payable Account in Company {0},Παρακαλούμε να ορίσετε Προεπιλογή Μισθοδοσίας Πληρωτέο Λογαριασμού Εταιρείας {0},
 Please set Depreciation related Accounts in Asset Category {0} or Company {1},Παρακαλούμε να ορίσετε τους σχετικούς λογαριασμούς Αποσβέσεις στο Asset Κατηγορία {0} ή της Εταιρείας {1},
-Please set Email Address,Παρακαλούμε να ορίσετε τη διεύθυνση ηλεκτρονικού ταχυδρομείου,
 Please set GST Accounts in GST Settings,Ορίστε λογαριασμούς GST στις ρυθμίσεις GST,
 Please set Hotel Room Rate on {},Παρακαλείστε να ορίσετε την τιμή δωματίου στην {},
 Please set Number of Depreciations Booked,Παρακαλούμε να ορίσετε Αριθμός Αποσβέσεις κράτηση,
@@ -1936,7 +1909,6 @@
 Please set the Email ID for the Student to send the Payment Request,Ορίστε το αναγνωριστικό ηλεκτρονικού ταχυδρομείου για τον σπουδαστή για να στείλετε το αίτημα πληρωμής,
 Please set the Item Code first,Ορίστε πρώτα τον Κωδικό στοιχείου,
 Please set the Payment Schedule,Ρυθμίστε το χρονοδιάγραμμα πληρωμών,
-Please set the series to be used.,Ορίστε τη σειρά που θα χρησιμοποιηθεί.,
 Please set {0} for address {1},Ρυθμίστε το {0} για τη διεύθυνση {1},
 Please setup Students under Student Groups,Ρυθμίστε τους φοιτητές κάτω από ομάδες φοιτητών,
 Please specify Company,Παρακαλώ ορίστε εταιρεία,
@@ -1953,7 +1925,6 @@
 Point-of-Sale,Point-of-Sale,
 Point-of-Sale Profile,Point-of-Sale Προφίλ,
 Portal,Πύλη,
-Portal Settings,portal Ρυθμίσεις,
 Possible Supplier,πιθανές Προμηθευτής,
 Postal Expenses,Ταχυδρομικές δαπάνες,
 Posting Date,Ημερομηνία αποστολής,
@@ -2152,12 +2123,10 @@
 Reference No is mandatory if you entered Reference Date,Ο αρ. αναφοράς είναι απαραίτητος εάν έχετε εισάγει ημερομηνία αναφοράς,
 Reference No.,Αρ. Αναφοράς,
 Reference Number,Αριθμός αναφοράς,
-Reference Owner,αναφορά Ιδιοκτήτης,
 Reference Type,Τύπος αναφοράς,
 "Reference: {0}, Item Code: {1} and Customer: {2}","Αναφορά: {0}, Κωδικός είδους: {1} και Πελάτης: {2}",
 References,Παραπομπές,
 Refresh Token,Ανανέωση Token,
-Region,Περιοχή,
 Register,Κανω ΕΓΓΡΑΦΗ,
 Rejected,Απορρίφθηκε,
 Related,Συγγενεύων,
@@ -2179,7 +2148,6 @@
 Replace BOM and update latest price in all BOMs,Αντικαταστήστε το BOM και ενημερώστε την τελευταία τιμή σε όλα τα BOM,
 Replied,Απαντήθηκε,
 Report,Έκθεση,
-Report Builder,Δημιουργός εκθέσεων,
 Report Type,Τύπος έκθεσης,
 Report Type is mandatory,Ο τύπος έκθεσης είναι υποχρεωτικός,
 Reports,αναφορές,
@@ -2355,13 +2323,11 @@
 Same Company is entered more than once,Ίδια Εταιρεία καταχωρήθηκε περισσότερο από μία φορά,
 Same item cannot be entered multiple times.,Ίδιο αντικείμενο δεν μπορεί να εισαχθεί πολλές φορές.,
 Same supplier has been entered multiple times,Ίδιο προμηθευτή έχει εισαχθεί πολλές φορές,
-Sample,Δείγμα,
 Sample Collection,Συλλογή δειγμάτων,
 Sample quantity {0} cannot be more than received quantity {1},Η ποσότητα δείγματος {0} δεν μπορεί να είναι μεγαλύτερη από την ποσότητα που ελήφθη {1},
 Sanctioned,Καθιερωμένος,
 Sand,Αμμος,
 Saturday,Σάββατο,
-Saved,Αποθηκεύτηκε,
 Saving {0},Αποθήκευση {0},
 Scan Barcode,Scan Barcode,
 Schedule,Χρονοδιάγραμμα,
@@ -2463,7 +2429,6 @@
 Series Updated,Η σειρά ενημερώθηκε,
 Series Updated Successfully,Η σειρά ενημερώθηκε με επιτυχία,
 Series is mandatory,Η σειρά είναι απαραίτητη,
-Series {0} already used in {1},Η σειρά {0} έχει ήδη χρησιμοποιηθεί σε {1},
 Service,Υπηρεσία,
 Service Level Agreement,Συμφωνία σε επίπεδο υπηρεσιών,
 Service Level Agreement.,Συμφωνία σε επίπεδο υπηρεσιών.,
@@ -2479,7 +2444,6 @@
 Set Tax Rule for shopping cart,Ορισμός φορολογική Κανόνας για το καλάθι αγορών,
 Set as Closed,Ορισμός ως Έκλεισε,
 Set as Completed,Ορίστε ως Ολοκληρώθηκε,
-Set as Default,Ορισμός ως προεπιλογή,
 Set as Lost,Ορισμός ως απολεσθέν,
 Set as Open,Ορισμός ως Ανοικτό,
 Set default inventory account for perpetual inventory,Ορίστε τον προεπιλεγμένο λογαριασμό αποθέματος για διαρκή απογραφή,
@@ -2511,7 +2475,6 @@
 Shareholder,Μέτοχος,
 Ship To State,Πλοίο προς κράτος,
 Shipments,Αποστολές,
-Shipping,Αποστολή,
 Shipping Address,Διεύθυνση αποστολής,
 "Shipping Address does not have country, which is required for this Shipping Rule","Η διεύθυνση αποστολής δεν έχει χώρα, η οποία απαιτείται για αυτόν τον κανόνα αποστολής",
 Shipping rule only applicable for Buying,Κανονισμός αποστολής ισχύει μόνο για την αγορά,
@@ -2564,7 +2527,6 @@
 Split Batch,Διαχωρίστε παρτίδα,
 Split Issue,Διαχωρίστε το ζήτημα,
 Sports,Αθλητισμός,
-Standard,Πρότυπο,
 Standard Buying,Πρότυπες αγορές,
 Standard Selling,Πρότυπες πωλήσεις,
 Standard contract terms for Sales or Purchase.,Πρότυποι όροι σύμβασης για πωλήσεις ή αγορές.,
@@ -2731,7 +2693,6 @@
 Terms and Conditions,Οροι και Προϋποθέσεις,
 Terms and Conditions Template,Πρότυπο όρων και προϋποθέσεων,
 Territory,Περιοχή,
-Test,Δοκιμή,
 Thank you for your business!,Ευχαριστούμε για την επιχείρησή σας!,
 The 'From Package No.' field must neither be empty nor it's value less than 1.,Το &#39;Από το Πακέτο Αρ.&#39; Το πεδίο δεν πρέπει να είναι κενό ούτε αξία μικρότερη από 1.,
 The Brand,Το εμπορικό σήμα,
@@ -2848,7 +2809,6 @@
 Total (Without Tax),Σύνολο (χωρίς Φόρο),
 Total Achieved,Σύνολο που επιτεύχθηκε,
 Total Actual,Πραγματικό σύνολο,
-Total Allocated Leaves,Συνολικά κατανεμημένα φύλλα,
 Total Amount,Συνολικό ποσό,
 Total Amount Credited,Συνολικό ποσό που πιστώνεται,
 Total Applicable Charges in Purchase Receipt Items table must be same as Total Taxes and Charges,Σύνολο χρεώσεων που επιβάλλονται στην Αγορά Παραλαβή Είδη πίνακα πρέπει να είναι ίδιο με το συνολικό φόροι και επιβαρύνσεις,
@@ -2892,7 +2852,6 @@
 Total(Amt),Σύνολο (ποσό),
 Total(Qty),Σύνολο (ποσότητα),
 Traceability,ιχνηλασιμότητα,
-Traceback,Ανατρέχω,
 Track Leads by Lead Source.,Το κομμάτι οδηγεί με βάση την πηγή.,
 Transaction,Συναλλαγή,
 Transaction Date,Ημερομηνία Συναλλαγής,
@@ -2930,7 +2889,6 @@
 UOM Conversion factor is required in row {0},Ο συντελεστής μετατροπής Μ.Μ. είναι απαραίτητος στη γραμμή {0},
 UOM coversion factor required for UOM: {0} in Item: {1},Ο παράγοντας μετατροπής Μ.Μ. απαιτείται για τη Μ.Μ.: {0} στο είδος: {1},
 URL,URL,
-Unable to find DocType {0},Δεν είναι δυνατή η εύρεση του DocType {0},
 Unable to find exchange rate for {0} to {1} for key date {2}. Please create a Currency Exchange record manually,Δεν βρέθηκε συναλλαγματική ισοτιμία {0} έως {1} για ημερομηνία κλειδιού {2}. Δημιουργήστε μια εγγραφή συναλλάγματος με μη αυτόματο τρόπο,
 Unable to find score starting at {0}. You need to have standing scores covering 0 to 100,Δεν είναι δυνατή η εύρεση βαθμολογίας ξεκινώντας από το {0}. Πρέπει να έχετε διαρκή βαθμολογίες που καλύπτουν από 0 έως 100,
 Unable to find variable: ,Δεν είναι δυνατή η εύρεση μεταβλητής:,
@@ -2960,7 +2918,6 @@
 Upload your letter head and logo. (you can edit them later).,Ανεβάστε την κεφαλίδα επιστολόχαρτου και το λογότυπό σας. (Μπορείτε να τα επεξεργαστείτε αργότερα).,
 Upper Income,Άνω εισοδήματος,
 Use Sandbox,χρήση Sandbox,
-Used Leaves,Χρησιμοποιημένα φύλλα,
 User,Χρήστης,
 User ID,ID χρήστη,
 User ID not set for Employee {0},Το ID χρήστη δεν έχει οριστεί για τον υπάλληλο {0},
@@ -3051,7 +3008,6 @@
 Website Settings,Ρυθμίσεις δικτυακού τόπου,
 Wednesday,Τετάρτη,
 Week,Εβδομάδα,
-Weekdays,Εργάσιμες,
 Weekly,Εβδομαδιαίος,
 "Weight is mentioned,\nPlease mention ""Weight UOM"" too","Το βάρος αναφέρεται, \nπαρακαλώ, αναφέρετε επίσης και τη μονάδα μέτρησης βάρους'",
 Welcome email sent,Το email καλωσορίσματος εστάλη.,
@@ -3072,7 +3028,6 @@
 Work Order {0} must be submitted,Η παραγγελία εργασίας {0} πρέπει να υποβληθεί,
 Work Orders Created: {0},Δημιουργούνται εντολές εργασίας: {0},
 Work-in-Progress Warehouse is required before Submit,Η αποθήκη εργασιών σε εξέλιξηαπαιτείται πριν την υποβολή,
-Workflow,Ροή εργασίας,
 Working,Εργασία,
 Working Hours,Ωρες εργασίας,
 Workstation,Σταθμός εργασίας,
@@ -3102,7 +3057,6 @@
 You need to be a user other than Administrator with System Manager and Item Manager roles to register on Marketplace.,Πρέπει να είστε χρήστης διαφορετικός από τον Διαχειριστή με τους Διαχειριστές Συστημάτων και τους ρόλους του Διαχειριστή είδους για να εγγραφείτε στο Marketplace.,
 You need to be a user with System Manager and Item Manager roles to add users to Marketplace.,Πρέπει να είστε χρήστης με ρόλους διαχείρισης συστήματος και διαχειριστή στοιχείων για να προσθέσετε χρήστες στο Marketplace.,
 You need to be a user with System Manager and Item Manager roles to register on Marketplace.,Πρέπει να είστε χρήστης με ρόλους του Διαχειριστή Συστήματος και Στοιχεία διαχειριστή στοιχείων για να εγγραφείτε στο Marketplace.,
-You need to be logged in to access this page,Θα πρέπει να συνδεθείτε για να αποκτήσετε πρόσβαση σε αυτήν τη σελίδα,
 You need to enable Shopping Cart,Χρειάζεται να ενεργοποιήσετε το καλάθι αγορών,
 You will lose records of previously generated invoices. Are you sure you want to restart this subscription?,Θα χάσετε τα αρχεία των τιμολογίων που δημιουργήσατε προηγουμένως. Είστε βέβαιοι ότι θέλετε να κάνετε επανεκκίνηση αυτής της συνδρομής;,
 Your Organization,Ο οργανισμός σας,
@@ -3218,7 +3172,6 @@
 Assigned To,Ανατέθηκε σε,
 Chat,Κουβέντα,
 Completed By,Ολοκληρώθηκε από,
-County,Κομητεία,
 Day of Week,Μερα της ΕΒΔΟΜΑΔΑΣ,
 "Dear System Manager,","Αγαπητέ Διευθυντή του Συστήματος,",
 Default Value,Προεπιλεγμένη τιμή,
@@ -3229,31 +3182,21 @@
 Fieldtype,Τύπος πεδίου,
 Help Articles,άρθρα Βοήθειας,
 ID,ταυτότητα,
-Images,εικόνες,
 Import,Εισαγωγή,
 Language,Γλώσσα,
 Likes,Μου αρέσουν,
 Merge with existing,Συγχώνευση με τις υπάρχουσες,
-Office,Γραφείο,
 Orientation,Προσανατολισμός,
 Parent,Γονέας,
-Passive,Αδρανής,
 Payment Failed,Η πληρωμή απέτυχε,
-Permanent,Μόνιμος,
 Personal,Προσωπικός,
-Plant,Βιομηχανικός εξοπλισμός,
 Post,Δημοσίευση,
-Postal,Ταχυδρομικός,
 Postal Code,Ταχυδρομικός Κώδικας,
-Previous,Προηγούμενο,
 Provider,Προμηθευτής,
 Read Only,Μόνο για ανάγνωση,
 Recipient,Παραλήπτης,
 Reviews,Κριτικές,
 Sender,Αποστολέας,
-Shop,Κατάστημα,
-Subsidiary,Θυγατρική,
-There is some problem with the file url: {0},Υπάρχει κάποιο πρόβλημα με το url αρχείο: {0},
 There were errors while sending email. Please try again.,Υπήρξαν σφάλματα κατά την αποστολή ηλεκτρονικού ταχυδρομείου. Παρακαλώ δοκιμάστε ξανά .,
 Values Changed,τιμές Άλλαξε,
 or,Ή,
@@ -3280,19 +3223,16 @@
 Quality Feedback Template,Πρότυπο σχολιασμού ποιότητας,
 Rules for applying different promotional schemes.,Κανόνες εφαρμογής διαφορετικών προγραμμάτων προώθησης.,
 Show {0},Εμφάνιση {0},
-"Special Characters except '-', '#', '.', '/', '{{' and '}}' not allowed in naming series {0}","Ειδικοί χαρακτήρες εκτός από &quot;-&quot;, &quot;#&quot;, &quot;.&quot;, &quot;/&quot;, &quot;{&quot; Και &quot;}}&quot; δεν επιτρέπονται στη σειρά ονομασίας {0}",
 Target Details,Στοιχεία στόχου,
 {0} already has a Parent Procedure {1}.,{0} έχει ήδη μια διαδικασία γονέα {1}.,
 API,API,
 Annual,Ετήσιος,
 Change,Αλλαγή,
 Contact Email,Email επαφής,
-Export Type,Τύπος εξαγωγής,
 From Date,Από ημερομηνία,
 Group By,Ομάδα με,
 Invalid URL,Μη έγκυρη διεύθυνση URL,
 Landscape,Τοπίο,
-Last Sync On,Ο τελευταίος συγχρονισμός είναι ενεργοποιημένος,
 Naming Series,Σειρά ονομασίας,
 No data to export,Δεν υπάρχουν δεδομένα για εξαγωγή,
 Portrait,Πορτρέτο,
@@ -3302,7 +3242,6 @@
 Show Document,Εμφάνιση εγγράφου,
 Show Traceback,Εμφάνιση ανίχνευσης,
 Video,βίντεο,
-Webhook Secret,Webhook Secret,
 % Of Grand Total,% Του συνολικού συνόλου,
 <b>Company</b> is a mandatory filter.,<b>Η εταιρεία</b> είναι υποχρεωτικό φίλτρο.,
 <b>From Date</b> is a mandatory filter.,<b>Από την ημερομηνία</b> είναι υποχρεωτικό φίλτρο.,
@@ -3358,7 +3297,6 @@
 BOM Comparison Tool,Εργαλείο σύγκρισης μεγέθους BOM,
 BOM recursion: {0} cannot be child of {1},Αναδρομή στο BOM: {0} δεν μπορεί να είναι παιδί {1},
 BOM recursion: {0} cannot be parent or child of {1},Bum recursion: {0} δεν μπορεί να είναι γονέας ή παιδί {1},
-Back to Home,Πίσω στο σπίτι,
 Back to Messages,Επιστροφή στα μηνύματα,
 Bank Data mapper doesn't exist,Ο χαρτογράφος τραπεζικών δεδομένων δεν υπάρχει,
 Bank Details,Στοιχεία τράπεζας,
@@ -3420,7 +3358,6 @@
 Currency,Νόμισμα,
 Current Status,Τρέχουσα κατάσταση,
 Customer PO,PO πελάτη,
-Customize,Προσαρμογή,
 Daily,Καθημερινά,
 Date,Ημερομηνία,
 Date of Birth cannot be greater than Joining Date.,Η ημερομηνία γέννησης δεν μπορεί να είναι μεγαλύτερη από την Ημερομηνία Σύνδεσης.,
@@ -3454,7 +3391,6 @@
 ERPNext could not find any matching payment entry,Το ERPNext δεν μπόρεσε να βρει κάποια καταχώρηση πληρωμής,
 Earliest Age,Πρώιμη εποχή,
 Edit Details,Επεξεργασία στοιχείων,
-Edit Profile,Επεξεργασία προφίλ,
 Either GST Transporter ID or Vehicle No is required if Mode of Transport is Road,Είτε το GST Transporter ID είτε ο αριθμός οχήματος δεν απαιτείται εάν ο τρόπος μεταφοράς είναι οδικός,
 Email,ΗΛΕΚΤΡΟΝΙΚΗ ΔΙΕΥΘΥΝΣΗ,
 Email Campaigns,Καμπάνιες ηλεκτρονικού ταχυδρομείου,
@@ -3482,7 +3418,6 @@
 Fetch Items from Warehouse,Λήψη στοιχείων από την αποθήκη,
 Fetching...,Γοητευτικός...,
 Field,Πεδίο,
-File Manager,Διαχείριση αρχείων,
 Filters,Φίλτρα,
 Finding linked payments,Εύρεση συνδεδεμένων πληρωμών,
 Fleet Management,Διαχείριση στόλου,
@@ -3521,7 +3456,6 @@
 Incorrect Warehouse,Εσφαλμένη αποθήκη,
 Invalid Barcode. There is no Item attached to this barcode.,Μη έγκυρος γραμμικός κώδικας. Δεν υπάρχει στοιχείο συνδεδεμένο σε αυτόν τον γραμμωτό κώδικα.,
 Invalid credentials,Ακυρα διαπιστευτήρια,
-Invite as User,Πρόσκληση ως χρήστη,
 Issue Priority.,Προτεραιότητα έκδοσης.,
 Issue Type.,Τύπος έκδοσης.,
 "It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","Φαίνεται ότι υπάρχει ένα πρόβλημα με τη διαμόρφωση της λωρίδας του διακομιστή. Σε περίπτωση αποτυχίας, το ποσό θα επιστραφεί στο λογαριασμό σας.",
@@ -3564,7 +3498,6 @@
 New Invoice,Νέο Τιμολόγιο,
 New Payment,Νέα Πληρωμή,
 New release date should be in the future,Νέα ημερομηνία κυκλοφορίας θα πρέπει να είναι στο μέλλον,
-Newsletter,Ενημερωτικό δελτίο,
 No Account matched these filters: {},Κανένας λογαριασμός δεν ταιριάζει με αυτά τα φίλτρα: {},
 No communication found.,Δεν βρέθηκε επικοινωνία.,
 No correct answer is set for {0},Δεν έχει οριστεί σωστή απάντηση για το {0},
@@ -3640,7 +3573,6 @@
 Please setup a default bank account for company {0},Ρυθμίστε έναν προεπιλεγμένο τραπεζικό λογαριασμό για την εταιρεία {0},
 Please specify,Παρακαλώ ορίστε,
 Please specify a {0},Προσδιορίστε ένα {0},lead
-Printing,Εκτύπωση,
 Priority,Προτεραιότητα,
 Priority has been changed to {0}.,Η προτεραιότητα έχει αλλάξει σε {0}.,
 Priority {0} has been repeated.,Η προτεραιότητα {0} έχει επαναληφθεί.,
@@ -3649,7 +3581,6 @@
 Project,Έργο,
 Provide the academic year and set the starting and ending date.,Παρέχετε το ακαδημαϊκό έτος και ορίστε την ημερομηνία έναρξης και λήξης.,
 Public token is missing for this bank,Δημόσιο διακριτικό λείπει για αυτήν την τράπεζα,
-Publish,Δημοσιεύω,
 Publish 1 Item,Δημοσιεύστε 1 στοιχείο,
 Publish Items,Δημοσίευση στοιχείων,
 Publish More Items,Δημοσιεύστε περισσότερα στοιχεία,
@@ -3677,7 +3608,6 @@
 Reconciled,Συγχωρήθηκε,
 Recruitment,Στρατολόγηση,
 Red,Κόκκινος,
-Refreshing,Ανανεώνεται,
 Release date must be in the future,Η ημερομηνία κυκλοφορίας πρέπει να είναι στο μέλλον,
 Relieving Date must be greater than or equal to Date of Joining,Η ημερομηνία ανακούφισης πρέπει να είναι μεγαλύτερη ή ίση με την Ημερομηνία Σύνδεσης,
 Rename,Μετονομασία,
@@ -3721,7 +3651,6 @@
 Search for a payment,Αναζήτηση πληρωμής,
 Search for anything ...,Αναζήτηση για οτιδήποτε ...,
 Search results for,Αποτελέσματα αναζήτησης για,
-Select All,Επιλέξτε All,
 Select Difference Account,Επιλέξτε Λογαριασμό Διαφοράς,
 Select a Default Priority.,Επιλέξτε μια προεπιλεγμένη προτεραιότητα.,
 Select a company,Επιλέξτε μια εταιρεία,
@@ -3740,11 +3669,9 @@
 Service Level Agreement has been changed to {0}.,Η συμφωνία επιπέδου υπηρεσιών έχει αλλάξει σε {0}.,
 Service Level Agreement was reset.,Η συμφωνία επιπέδου υπηρεσιών επαναφέρεται.,
 Service Level Agreement with Entity Type {0} and Entity {1} already exists.,Συμφωνία επιπέδου υπηρεσίας με τον τύπο οντότητας {0} και την οντότητα {1} υπάρχει ήδη.,
-Set,Σετ,
 Set Meta Tags,Ορίστε μεταγλωττιστές,
 Set {0} in company {1},Ορίστε {0} στην εταιρεία {1},
 Setup,Εγκατάσταση,
-Setup Wizard,Οδηγός εγκατάστασης,
 Shift Management,Διαχείριση μετατόπισης,
 Show Future Payments,Εμφάνιση μελλοντικών πληρωμών,
 Show Linked Delivery Notes,Εμφάνιση συνδεδεμένων σημειώσεων παραλαβής,
@@ -3815,7 +3742,6 @@
 Unreconciled,Δεν συμφωνείται,
 Unsupported GST Category for E-Way Bill JSON generation,Μη υποστηριζόμενη κατηγορία GST για την παραγωγή του Bill JSON μέσω e-Way,
 Update,Ενημέρωση,
-Update Details,Λεπτομέρειες ενημέρωσης,
 Update Taxes for Items,Ενημερώστε τους φόρους για τα στοιχεία,
 "Upload a bank statement, link or reconcile a bank account","Μεταφορτώστε μια τραπεζική εντολή, συνδέστε ή συμβιβαστείτε έναν τραπεζικό λογαριασμό",
 Upload a statement,Μεταφορτώστε μια δήλωση,
@@ -3839,7 +3765,6 @@
 XML Files Processed,Επεξεργασμένα αρχεία XML,
 Year,Έτος,
 Yearly,Ετήσια,
-You,Εσείς,
 You are not allowed to enroll for this course,Δεν επιτρέπεται να εγγραφείτε σε αυτό το μάθημα,
 You are not enrolled in program {0},Δεν είστε εγγεγραμμένοι στο πρόγραμμα {0},
 You can Feature upto 8 items.,Μπορείτε να διαθέσετε μέχρι 8 στοιχεία.,
@@ -3856,7 +3781,6 @@
 e-Way Bill already exists for this document,Το νομοσχέδιο e-Way υπάρχει ήδη για αυτό το έγγραφο,
 woocommerce - {0},woocommerce - {0},
 {0} Coupon used are {1}. Allowed quantity is exhausted,{0} Το κουπόνι που χρησιμοποιείται είναι {1}. Η επιτρεπόμενη ποσότητα έχει εξαντληθεί,
-{0} Name,{0} Όνομα,
 {0} Operations: {1},{0} Λειτουργίες: {1},
 {0} bank transaction(s) created,{0} δημιουργήθηκαν τραπεζικές συναλλαγές,
 {0} bank transaction(s) created and {1} errors,{0} τραπεζικές συναλλαγές που δημιουργήθηκαν και {1} λάθη,
@@ -3875,17 +3799,13 @@
 Total Income,Συνολικό εισόδημα,
 Total Income This Year,Συνολικό εισόδημα αυτό το έτος,
 Barcode,Barcode,
-Bold,Τολμηρός,
-Center,Κέντρο,
 Clear,Σαφή,
-Comment,Σχόλιο,
 Comments,Σχόλια,
 DocType,DocType,
 Download,Κατεβάστε,
 Left,Αριστερά,
 Link,Σύνδεσμος,
 New,Νέος,
-Not Found,Δεν βρέθηκε,
 Print,Τυπώνω,
 Reference Name,όνομα αναφοράς,
 Refresh,Ανανέωση,
@@ -3908,7 +3828,6 @@
 Email Id,Email ID,
 No,Οχι,
 Reference Doctype,Τύπος εγγράφου αναφοράς,
-User Id,Ταυτότητα χρήστη,
 Yes,Ναί,
 Actual ,Πραγματικός,
 Add to cart,Προσθήκη στο καλάθι,
@@ -4304,7 +4223,6 @@
 e.g Adjustments for:,π.χ. Προσαρμογές για:,
 Section Subtotal,Τμήμα Υποσύνολο,
 Section Footer,Υποσέλιδο ενότητας,
-Position,Θέση,
 Cash Flow Mapping,Χαρτογράφηση ταμειακών ροών,
 Select Maximum Of 1,Επιλέξτε Μέγιστο 1,
 Is Finance Cost,Είναι το κόστος χρηματοδότησης,
@@ -4936,7 +4854,6 @@
 Previous Business Day,Προηγούμενη εργάσιμη ημέρα,
 Next Business Day,Την επόμενη εργάσιμη ημέρα,
 Urgent,Επείγον,
-Crop,Καλλιέργεια,
 Crop Name,Ονομασία καλλιέργειας,
 Scientific Name,Επιστημονικό όνομα,
 "You can define all the tasks which need to carried out for this crop here. The day field is used to mention the day on which the task needs to be carried out, 1 being the 1st day, etc.. ","Μπορείτε να ορίσετε όλες τις εργασίες που πρέπει να εκτελεστούν για αυτή την καλλιέργεια εδώ. Το πεδίο ημέρας χρησιμοποιείται για να αναφέρει την ημέρα κατά την οποία πρέπει να εκτελεστεί η εργασία, 1 είναι η 1 η ημέρα κλπ.",
@@ -5441,7 +5358,6 @@
 To TIme,Έως ώρα,
 Course End Date,Φυσικά Ημερομηνία Λήξης,
 Course Topic,Θέμα μαθήματος,
-Topic,Θέμα,
 Topic Name,θέμα Όνομα,
 Education Settings,Ρυθμίσεις εκπαίδευσης,
 Current Academic Year,Τρέχον ακαδημαϊκό έτος,
@@ -5516,7 +5432,6 @@
 Check this if the Student is residing at the Institute's Hostel.,Ελέγξτε αν ο φοιτητής διαμένει στο Hostel του Ινστιτούτου.,
 Walking,Το περπάτημα,
 Institute's Bus,Bus του Ινστιτούτου,
-Public Transport,Δημόσια συγκοινωνία,
 Self-Driving Vehicle,Αυτοκίνητο όχημα,
 Pick/Drop by Guardian,Επιλέξτε / Σταματήστε από τον Guardian,
 Enrolled courses,Εγγραφεί μαθήματα,
@@ -5697,7 +5612,6 @@
 Default Cost Center,Προεπιλεγμένο κέντρο κόστους,
 Undeposited Funds Account,Λογαριασμός χωρίς καταθέσεις,
 Shopify Log,Κατάστημα καταγραφής,
-Request Data,Ζητήστε δεδομένα,
 Shopify Settings,Ρυθμίσεις Shopide,
 status html,κατάσταση html,
 Enable Shopify,Ενεργοποίηση του Shopify,
@@ -5817,7 +5731,6 @@
 Exercise Instructions,Οδηγίες άσκησης,
 Exercise Video,Άσκηση βίντεο,
 Exercise Steps,Βήματα άσκησης,
-Steps,Βήματα,
 Steps Table,Πίνακας βημάτων,
 Exercise Type Step,Βήμα τύπου άσκησης,
 Max number of visit,Μέγιστος αριθμός επισκέψεων,
@@ -6001,7 +5914,6 @@
 Patient Encounter Symptom,Σύμπτωμα αντιμετώπισης ασθενούς,
 HLC-PMR-.YYYY.-,HLC-PMR-.YYYY.-,
 Attach Medical Record,Επισυνάψτε ιατρικό αρχείο,
-Reference DocType,DocType αναφοράς,
 Spouse,Σύζυγος,
 Family,Οικογένεια,
 Schedule Details,Λεπτομέρειες προγράμματος,
@@ -6983,16 +6895,8 @@
 HTML / Banner that will show on the top of product list.,ΗΤΜΛ / banner που θα εμφανιστούν στην κορυφή της λίστας των προϊόντων.,
 Set prefix for numbering series on your transactions,Ορίστε πρόθεμα για τη σειρά αρίθμησης για τις συναλλαγές σας,
 Setup Series,Εγκατάσταση σειρών,
-Select Transaction,Επιλέξτε συναλλαγή,
-Help HTML,Βοήθεια ΗΤΜΛ,
-Series List for this Transaction,Λίστα σειράς για αυτή τη συναλλαγή,
-User must always select,Ο χρήστης πρέπει πάντα να επιλέγει,
-Check this if you want to force the user to select a series before saving. There will be no default if you check this.,"Ελέγξτε αυτό, αν θέλετε να αναγκάσει τον χρήστη να επιλέξει μια σειρά πριν από την αποθήκευση. Δεν θα υπάρξει καμία προεπιλογή αν επιλέξετε αυτό.",
 Update Series,Ενημέρωση σειράς,
 Change the starting / current sequence number of an existing series.,Αλλάξτε τον αρχικό/τρέχων αύξοντα αριθμός μιας υπάρχουσας σειράς.,
-Prefix,Πρόθεμα,
-This is the number of the last created transaction with this prefix,Αυτός είναι ο αριθμός της τελευταίας συναλλαγής που δημιουργήθηκε με αυτό το πρόθεμα,
-Update Series Number,Ενημέρωση αριθμού σειράς,
 Quotation Lost Reason,Λόγος απώλειας προσφοράς,
 A third party distributor / dealer / commission agent / affiliate / reseller who sells the companies products for a commission.,"Ένας ανεξάρτητος διανομέας / αντιπρόσωπος / πράκτορας με προμήθεια / affiliate / μεταπωλητής, ο οποίος πωλεί τα προϊόντα της εταιρείας για μια προμήθεια.",
 Sales Partner Name,Όνομα συνεργάτη πωλήσεων,
@@ -7687,7 +7591,6 @@
 Warehouse wise Item Balance Age and Value,Warehouse wise Υπόλοιπο ηλικίας και αξίας,
 Work Order Stock Report,Έκθεση αποθέματος παραγγελίας εργασίας,
 Work Orders in Progress,Παραγγελίες εργασίας σε εξέλιξη,
-Validation Error,Σφάλμα επικύρωσης,
 Automatically Process Deferred Accounting Entry,Αυτόματη επεξεργασία αναβαλλόμενης καταχώρησης λογιστικής,
 Bank Clearance,Εκκαθάριση τράπεζας,
 Bank Clearance Detail,Λεπτομέρεια εκκαθάρισης τράπεζας,
@@ -7724,45 +7627,7 @@
 Therapy Plan: ,Σχέδιο θεραπείας:,
 Total Counts Targeted: ,Σύνολο στοχευμένων μετρήσεων:,
 Total Counts Completed: ,Συνολικές μετρήσεις που ολοκληρώθηκαν:,
-Andaman and Nicobar Islands,Νησιά Ανταμάν και Νικομπάρ,
-Andhra Pradesh,Άντρα Πραντές,
-Arunachal Pradesh,Arunachal Pradesh,
-Assam,Άσαμ,
-Bihar,Μπιχάρ,
-Chandigarh,Τσάντιγκαρ,
-Chhattisgarh,Chhattisgarh,
-Dadra and Nagar Haveli,Dadra και Nagar Haveli,
-Daman and Diu,Daman και Diu,
-Delhi,Δελχί,
-Goa,Γκόα,
-Gujarat,Γκουτζαράτ,
-Haryana,Χαριάνα,
-Himachal Pradesh,Χιματσάλ Πραντές,
-Jammu and Kashmir,Τζαμού και Κασμίρ,
-Jharkhand,Τζάρκχαντ,
-Karnataka,Καρνατάκα,
-Kerala,Κεράλα,
-Lakshadweep Islands,Νησιά Lakshadweep,
-Madhya Pradesh,Madhya Pradesh,
-Maharashtra,Μαχαράστρα,
-Manipur,Μανιπούρ,
-Meghalaya,Meghalaya,
-Mizoram,Mizoram,
-Nagaland,Ναγκαλάντ,
-Odisha,Οδησσός,
-Other Territory,Άλλη επικράτεια,
-Pondicherry,Ποντίτσερι,
-Punjab,Πουντζάμπ,
-Rajasthan,Ρατζαστάν,
-Sikkim,Σικίμ,
-Tamil Nadu,Ταμίλ Ναντού,
-Telangana,Telangana,
-Tripura,Τριπούρα,
-Uttar Pradesh,Ουτάρ Πραντές,
-Uttarakhand,Ουταράχσαντ,
-West Bengal,Δυτική Βεγγάλη,
 Is Mandatory,Ειναι υποχρεωτικό,
-Published on,Δημοσιεύτηκε στις,
 Service Received But Not Billed,Η υπηρεσία ελήφθη αλλά δεν χρεώθηκε,
 Deferred Accounting Settings,Αναβαλλόμενες ρυθμίσεις λογιστικής,
 Book Deferred Entries Based On,Βιβλίο αναβαλλόμενων καταχωρίσεων βάσει,
@@ -8035,8 +7900,6 @@
 Worksheet Instructions,Οδηγίες φύλλου εργασίας,
 Result Legend Print,Αποτέλεσμα Legend Print,
 Print Position,Εκτύπωση θέσης,
-Bottom,Κάτω μέρος,
-Top,Μπλουζα,
 Both,Και τα δυο,
 Result Legend,Αποτέλεσμα θρύλου,
 Lab Tests,Δοκιμές εργαστηρίου,
@@ -8081,12 +7944,10 @@
 Approvers,Εγκρίνει,
 The first Approver in the list will be set as the default Approver.,Η πρώτη έγκριση στη λίστα θα οριστεί ως η προεπιλεγμένη έγκριση.,
 Shift Request Approver,Έγκριση αιτήματος Shift,
-PAN Number,Αριθμός PAN,
 Provident Fund Account,Λογαριασμός Ταμείου Προνοίας,
 MICR Code,Κωδικός MICR,
 Repay unclaimed amount from salary,Επιστρέψτε το ποσό που δεν ζητήθηκε από το μισθό,
 Deduction from salary,Έκπτωση από το μισθό,
-Expired Leaves,Έληξε φύλλα,
 If this is not checked the loan by default will be considered as a Demand Loan,"Εάν αυτό δεν ελεγχθεί, το δάνειο από προεπιλογή θα θεωρείται ως Δάνειο Ζήτησης",
 This account is used for booking loan repayments from the borrower and also disbursing loans to the borrower,Αυτός ο λογαριασμός χρησιμοποιείται για την κράτηση αποπληρωμών δανείου από τον δανειολήπτη και επίσης για την εκταμίευση δανείων προς τον οφειλέτη,
 This account is capital account which is used to allocate capital for loan disbursal account ,Αυτός ο λογαριασμός είναι λογαριασμός κεφαλαίου που χρησιμοποιείται για την κατανομή κεφαλαίου για λογαριασμό εκταμίευσης δανείου,
@@ -8844,3 +8705,41 @@
 Creating Purchase Order ...,Δημιουργία παραγγελίας αγοράς ...,
 "Select a Supplier from the Default Suppliers of the items below. On selection, a Purchase Order will be made against items belonging to the selected Supplier only.","Επιλέξτε έναν προμηθευτή από τους προεπιλεγμένους προμηθευτές των παρακάτω στοιχείων. Κατά την επιλογή, μια εντολή αγοράς θα πραγματοποιείται έναντι αντικειμένων που ανήκουν στον επιλεγμένο Προμηθευτή μόνο.",
 Row #{}: You must select {} serial numbers for item {}.,Σειρά # {}: Πρέπει να επιλέξετε {} σειριακούς αριθμούς για το στοιχείο {}.,
+Add Comment,Πρόσθεσε σχόλιο,
+More...,Περισσότερο...,
+Notes,Σημειώσεις,
+Payment Gateway,Πύλη Πληρωμών,
+Payment Gateway Name,Όνομα πύλης πληρωμής,
+Payments,Πληρωμές,
+Plan Name,Όνομα προγράμματος,
+Portal,Πύλη,
+Scan Barcode,Scan Barcode,
+Some information is missing,Ορισμένες πληροφορίες λείπουν,
+Successful,Επιτυχής,
+Tools,Εργαλεία,
+Use Sandbox,χρήση Sandbox,
+Busy,Απασχολημένος,
+Completed By,Ολοκληρώθηκε από,
+Payment Failed,Η πληρωμή απέτυχε,
+Column {0},Στήλη {0},
+Field Mapping,Χαρτογράφηση πεδίων,
+Not Specified,Δεν διευκρινίζεται,
+Update Type,Τύπος ενημέρωσης,
+Dr,Dr,
+End Time,Ώρα λήξης,
+Fetching...,Γοητευτικός...,
+"It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","Φαίνεται ότι υπάρχει ένα πρόβλημα με τη διαμόρφωση της λωρίδας του διακομιστή. Σε περίπτωση αποτυχίας, το ποσό θα επιστραφεί στο λογαριασμό σας.",
+Looks like someone sent you to an incomplete URL. Please ask them to look into it.,Μοιάζει με κάποιον που αποστέλλονται σε μια ελλιπή διεύθυνση URL. Παρακαλούμε να τους ζητήσει να εξετάσουμε το θέμα.,
+Master,Κύρια εγγραφή,
+Pay,Πληρωμή,
+You can also copy-paste this link in your browser,Μπορείτε επίσης να αντιγράψετε και να επικολλήσετε αυτό το σύνδεσμο στο πρόγραμμα περιήγησής σας,
+Verified By,Πιστοποιημένο από,
+Invalid naming series (. missing) for {0},Μη έγκυρη σειρά ονομάτων (. Λείπει) για {0},
+Phone Number,Τηλεφωνικό νούμερο,
+Account SID,Λογαριασμός SID,
+Global Defaults,Καθολικές προεπιλογές,
+Is Mandatory,Ειναι υποχρεωτικό,
+WhatsApp,WhatsApp,
+Make a call,Τηλεφώνησε,
+Approve,Εγκρίνω,
+Reject,Απορρίπτω,
diff --git a/erpnext/translations/en-GB.csv b/erpnext/translations/en-GB.csv
deleted file mode 100644
index e69de29..0000000
--- a/erpnext/translations/en-GB.csv
+++ /dev/null
diff --git a/erpnext/translations/es-BO.csv b/erpnext/translations/es-BO.csv
deleted file mode 100644
index e69de29..0000000
--- a/erpnext/translations/es-BO.csv
+++ /dev/null
diff --git a/erpnext/translations/es-DO.csv b/erpnext/translations/es-DO.csv
deleted file mode 100644
index e69de29..0000000
--- a/erpnext/translations/es-DO.csv
+++ /dev/null
diff --git a/erpnext/translations/es-GT.csv b/erpnext/translations/es-GT.csv
index 10e4e59..8c4603e 100644
--- a/erpnext/translations/es-GT.csv
+++ b/erpnext/translations/es-GT.csv
@@ -5,3 +5,4 @@
 Outstanding Amount,Saldo Pendiente,
 Outstanding,Pendiente,
 Lead must be set if Opportunity is made from Lead,La Iniciativa se debe establecer si la Oportunidad está hecha desde una Iniciativa,
+Other Settings,Otros Ajustes,
diff --git a/erpnext/translations/es-PE.csv b/erpnext/translations/es-PE.csv
index 0cb20b7..ed5d065 100644
--- a/erpnext/translations/es-PE.csv
+++ b/erpnext/translations/es-PE.csv
@@ -1,7 +1,6 @@
 This is a root sales person and cannot be edited.,Se trata de una persona de las ventas raíz y no se puede editar .
 "Set Default Values like Company, Currency, Current Fiscal Year, etc.","Establecer Valores Predeterminados , como Empresa , Moneda, Año Fiscal Actual, etc"
 Serial No {0} does not belong to Item {1},Número de orden {0} no pertenece al elemento {1}
-User must always select,Usuario elegirá siempre,
 Cost of Goods Sold,Costo de las Ventas,
 {0} {1} not in any active Fiscal Year.,{0} {1} no en algún año fiscal activo.
 Packing List,Lista de Envío,
@@ -72,7 +71,6 @@
 Operating Cost,Costo de Funcionamiento,
 Total Target,Totales del Objetivo,
 "Can not filter based on Voucher No, if grouped by Voucher","No se puede filtrar en función al 'No. de comprobante', si esta agrupado por 'nombre'"
-Help HTML,Ayuda HTML,
 Actual Operation Time,Tiempo de operación actual,
 To Deliver and Bill,Para Entregar y Bill,
 Warehouse required for stock Item {0},Almacén requerido para la acción del artículo {0}
@@ -213,7 +211,6 @@
 "Cannot declare as lost, because Quotation has been made.","No se puede declarar como perdido , porque la cotización ha sido hecha."
 user@example.com,user@example.com,
 Source Warehouse,fuente de depósito,
-No contacts added yet.,No se han añadido contactos todavía,
 Root Type is mandatory,Tipo Root es obligatorio,
 Scheduled,Programado,
 Depends on Leave Without Pay,Depende de ausencia sin pago,
@@ -689,9 +686,7 @@
 Your Products or Services,Sus productos o servicios,
 {0} is mandatory. Maybe Currency Exchange record is not created for {1} to {2}.,{0} es obligatorio. Tal vez tipo de cambio no se ha creado para {1} en {2}.
 To Time,Para Tiempo,
-No address added yet.,No se ha añadido ninguna dirección todavía.
 Terretory,Territorios,
-Series List for this Transaction,Lista de series para esta transacción,
 "This will be appended to the Item Code of the variant. For example, if your abbreviation is ""SM"", and the item code is ""T-SHIRT"", the item code of the variant will be ""T-SHIRT-SM""","Esto se añade al Código del Artículo de la variante. Por ejemplo, si su abreviatura es ""SM"", y el código del artículo es ""CAMISETA"", el código de artículo de la variante será ""CAMISETA-SM"""
 Wages,Salario,
 Outstanding for {0} cannot be less than zero ({1}),Sobresaliente para {0} no puede ser menor que cero ({1} )
@@ -889,7 +884,6 @@
 Nos,Números,
 Short biography for website and other publications.,Breve biografía de la página web y otras publicaciones.
 Sales Browser,Navegador de Ventas,
-Contact Details,Datos del Contacto,
 Warehouse {0} does not belong to company {1},Almacén {0} no pertenece a la empresa {1}
 The Item {0} cannot have Batch,El artículo {0} no puede tener lotes,
 Users who can approve a specific employee's leave applications,Los usuarios que pueden aprobar las solicitudes de licencia de un empleado específico,
@@ -972,3 +966,5 @@
 Serial Number Series,Número de Serie Serie,
 Product Bundle Help,Ayuda del conjunto/paquete de productos,
 Specify Exchange Rate to convert one currency into another,Especificar Tipo de Cambio para convertir una moneda en otra,
+Make ,Hacer,
+You can also copy-paste this link in your browser,También puede copiar y pegar este enlace en su navegador,
diff --git a/erpnext/translations/es.csv b/erpnext/translations/es.csv
index d931429..fadf7a7 100644
--- a/erpnext/translations/es.csv
+++ b/erpnext/translations/es.csv
@@ -113,7 +113,6 @@
 Add Items,Añadir los artículos,
 Add Leads,Añadir Prospectos,
 Add Multiple Tasks,Agregar Tareas Múltiples,
-Add Row,Añadir Fila,
 Add Sales Partners,Añadir socios de ventas,
 Add Serial No,Agregar No. de serie,
 Add Students,Añadir estudiantes,
@@ -211,9 +210,7 @@
 An error occurred during the update process,Se produjo un error durante el proceso de actualización,
 "An item exists with same name ({0}), please change the item group name or rename the item","Existe un elemento con el mismo nombre ({0} ) , cambie el nombre del grupo de artículos o cambiar el nombre del elemento",
 Analyst,Analista,
-Analytics,Analítica,
 Annual Billing: {0},Facturación anual: {0},
-Anonymous,Anónimo,
 Another Budget record '{0}' already exists against {1} '{2}' and account '{3}' for fiscal year {4},Ya existe otro registro de presupuesto &#39;{0}&#39; contra {1} &#39;{2}&#39; y cuenta &#39;{3}&#39; para el año fiscal {4},
 Another Period Closing Entry {0} has been made after {1},Otra entrada de Cierre de Período {0} se ha hecho después de {1},
 Another Sales Person {0} exists with the same Employee id,Existe otro vendedor {0} con el mismo ID de empleado,
@@ -283,14 +280,12 @@
 Attendance not submitted for {0} as {1} on leave.,Asistencia no enviada para {0} como {1} con permiso.,
 Attribute table is mandatory,Tabla de atributos es obligatoria,
 Attribute {0} selected multiple times in Attributes Table,Atributo {0} seleccionado varias veces en la tabla Atributos,
-Author,Autor,
 Authorized Signatory,Firmante autorizado,
 Auto Material Requests Generated,Solicitudes de Material Automáticamente Generadas,
 Auto Repeat,Repetición Automática,
 Auto repeat document updated,Documento automático editado,
 Automotive,Automotores,
 Available,Disponible,
-Available Leaves,Licencias Disponibles,
 Available Qty,Cantidad disponible,
 Available Selling,Venta disponible,
 Available for use date is required,Disponible para la fecha de uso es obligatorio,
@@ -340,7 +335,6 @@
 Base URL,URL Base,
 Based On,Basado en,
 Based On Payment Terms,Basada en Término de Pago,
-Basic,Base,
 Batch,Lote,
 Batch Entries,Entradas por lotes,
 Batch ID is mandatory,El ID de lote es obligatorio,
@@ -361,7 +355,6 @@
 Billable Hours,Horas facturables,
 Billed,Facturado,
 Billed Amount,Importe facturado,
-Billing,Facturación,
 Billing Address,Dirección de Facturación,
 Billing Address is same as Shipping Address,Dirección de facturación es la misma que la dirección de envío,
 Billing Amount,Monto de facturación,
@@ -560,7 +553,6 @@
 Consumed Qty,Cantidad consumida,
 Consumer Products,Productos de consumo,
 Contact,Contacto,
-Contact Details,Detalles de contacto,
 Contact Us,Contáctenos,
 Content,Contenido,
 Content Masters,Maestros de contenido,
@@ -715,7 +707,6 @@
 Date of Joining,Fecha de Ingreso,
 Date of Joining must be greater than Date of Birth,La fecha de ingreso debe ser mayor a la fecha de nacimiento,
 Date of Transaction,Fecha de la Transacción,
-Datetime,Fecha y Hora,
 Day,Día,
 Debit,Debe,
 Debit ({0}),Débito ({0}),
@@ -874,7 +865,6 @@
 Employee cannot report to himself.,El empleado no puede informar a sí mismo.,
 Employee {0} has already applied for {1} between {2} and {3} : ,El empleado {0} ya ha solicitado {1} entre {2} y {3}:,
 Employee {0} of grade {1} have no default leave policy,El Empleado {0} de la calificación {1} no tiene una política de licencia predeterminada,
-Enable,Habilitar,
 Enable / disable currencies.,Habilitar o deshabilitar el tipo de divisas,
 Enabled,Habilitado,
 "Enabling 'Use for Shopping Cart', as Shopping Cart is enabled and there should be at least one Tax Rule for Shopping Cart","Habilitar' Uso para el carro de la compra', ya que el carro de la compra está habilitado y debería haber al menos una regla de impuestos para el carro de la compra.",
@@ -905,7 +895,6 @@
 Error: Not a valid id?,Error: ¿No es un ID válido?,
 Estimated Cost,Costo estimado,
 "Even if there are multiple Pricing Rules with highest priority, then following internal priorities are applied:","Incluso si hay varias reglas de precios con mayor prioridad, se aplican entonces siguientes prioridades internas:",
-Event,Evento,
 Exchange Gain/Loss,Ganancia/Pérdida en Cambio,
 Exchange Rate Revaluation master.,Maestro de revaluación de tipo de cambio.,
 Exchange Rate must be same as {0} {1} ({2}),El tipo de cambio debe ser el mismo que {0} {1} ({2}),
@@ -1032,7 +1021,6 @@
 From value must be less than to value in row {0},El valor debe ser menor que el valor de la línea {0},
 From {0} | {1} {2},Desde {0} | {1} {2},
 Fulfillment,Cumplimiento,
-Full,Completo,
 Full Name,Nombre completo,
 Fully Depreciated,Totalmente depreciado,
 Furnitures and Fixtures,Muebles y accesorios,
@@ -1133,7 +1121,6 @@
 Hub Sync ID,ID de Sincronización del Hub,
 Human Resource,Recursos humanos,
 Human Resources,Recursos humanos,
-IFSC Code,Código IFSC,
 IGST Amount,Monto IGST,
 IP Address,Dirección IP,
 ITC Available (whether in full op part),ITC disponible (ya sea en la parte op completa),
@@ -1185,7 +1172,6 @@
 Ineligible ITC,ITC no elegible,
 Initiated,Iniciado,
 Inpatient Record,Registro de pacientes hospitalizados,
-Insert,Insertar,
 Installation Note,Nota de instalación,
 Installation Note {0} has already been submitted,La nota de instalación {0} ya se ha validado,
 Installation date cannot be before delivery date for Item {0},La fecha de instalación no puede ser antes de la fecha de entrega para el elemento {0},
@@ -1197,7 +1183,6 @@
 Insurance Start date should be less than Insurance End date,La fecha de comienzo del seguro debe ser menos que la fecha de fin del seguro,
 Integrated Tax,Impuesto integrado,
 Inter-State Supplies,Suministros interestatales,
-Interests,Intereses,
 Internet Publishing,Publicación por internet,
 Intra-State Supplies,Suministros intraestatales,
 Introduction,Introducción,
@@ -1316,7 +1301,6 @@
 Lab testing datetime cannot be before collection datetime,La hora de prueba de laboratorio no puede ser antes de la fecha de recopilación,
 Label,Etiqueta,
 Laboratory,Laboratorio,
-Language Name,Nombre del lenguaje,
 Large,Grande,
 Last Communication,Última comunicación,
 Last Communication Date,Fecha de la última comunicación,
@@ -1347,8 +1331,6 @@
 Letter Heads for print templates.,Membretes para las plantillas de impresión.,
 Level,Nivel,
 Liability,Obligaciones,
-License,Licencia,
-Limit,Límite,
 Limit Crossed,Límite cruzado,
 Link to Material Request,Enlace a la solicitud de material,
 List of all share transactions,Lista de todas las transacciones de acciones,
@@ -1359,7 +1341,6 @@
 Loans (Liabilities),Préstamos (Pasivos),
 Loans and Advances (Assets),INVERSIONES Y PRESTAMOS,
 Local,Local,
-Log,Log,
 Logs for maintaining sms delivery status,Estatus de mensajes SMS entregados,
 Lost,Perdido,
 Lost Reasons,Razones perdidas,
@@ -1445,7 +1426,6 @@
 Medical Department,Departamento médico,
 Medical Record,Registro Médico,
 Medium,Medio,
-Meeting,Reunión,
 Member Activity,Actividad para Miembros,
 Member ID,Identificación de miembro,
 Member Name,Nombre del Miembro,
@@ -1495,7 +1475,6 @@
 Multiple Variants,Multiples Variantes,
 Multiple fiscal years exist for the date {0}. Please set company in Fiscal Year,"Existen varios ejercicios para la fecha {0}. Por favor, establece la compañía en el año fiscal",
 Music,Música,
-My Account,Mi Cuenta,
 Name error: {0},Nombre de error: {0},
 Name of new Account. Note: Please don't create accounts for Customers and Suppliers,Nombre de la nueva cuenta. Nota: Por favor no crear cuentas de clientes y proveedores,
 Name or Email is mandatory,El nombre o e-mail es obligatorio,
@@ -1538,7 +1517,6 @@
 New credit limit is less than current outstanding amount for the customer. Credit limit has to be atleast {0},Nuevo límite de crédito es menor que la cantidad pendiente actual para el cliente. límite de crédito tiene que ser al menos {0},
 New task,Nueva tarea,
 New {0} pricing rules are created,Se crean nuevas {0} reglas de precios,
-Newsletters,Boletines,
 Newspaper Publishers,Editores de Periódicos,
 Next,Siguiente,
 Next Contact By cannot be same as the Lead Email Address,"Siguiente contacto por, no puede ser el mismo que la  dirección de correo electrónico de la Iniciativa",
@@ -1686,7 +1664,6 @@
 Other,Otro,
 Other Reports,Otros Reportes,
 "Other outward supplies(Nil rated,Exempted)","Otros suministros externos (sin calificación, exentos)",
-Others,Otros,
 Out Qty,Cant. enviada,
 Out Value,Fuera de Valor,
 Out of Order,Fuera de servicio,
@@ -1726,7 +1703,6 @@
 Party Type and Party is mandatory for {0} account,Tipo de Tercero y Tercero es obligatorio para la Cuenta {0},
 Party Type is mandatory,Tipo de parte es obligatorio,
 Party is mandatory,Parte es obligatoria,
-Password,Contraseña,
 Past Due Date,Fecha de vencimiento anterior,
 Patient,Paciente,
 Patient Appointment,Cita del paciente,
@@ -1784,7 +1760,6 @@
 Pharmaceutical,Farmacéutico,
 Pharmaceuticals,Productos farmacéuticos,
 Physician,Médico,
-Pincode,Código PIN,
 Place Of Supply (State/UT),Lugar de suministro (Estado / UT),
 Place Order,Realizar pedido,
 Plan Name,Nombre del Plan,
@@ -1896,7 +1871,6 @@
 Please select date,Por favor seleccione la fecha,
 Please select item code,"Por favor, seleccione el código del producto",
 Please select month and year,Por favor seleccione el mes y el año,
-Please select prefix first,"Por favor, seleccione primero el prefijo",
 Please select the Company,Por favor seleccione la Compañía,
 Please select the Multiple Tier Program type for more than one collection rules.,Seleccione el tipo de Programa de niveles múltiples para más de una reglas de recopilación.,
 Please select the assessment group other than 'All Assessment Groups',Seleccione el grupo de evaluación que no sea &#39;Todos los grupos de evaluación&#39;,
@@ -1913,7 +1887,6 @@
 Please set Company filter blank if Group By is 'Company',"Por favor, ponga el filtro de la Compañía en blanco si el Grupo Por es ' Empresa'.",
 Please set Default Payroll Payable Account in Company {0},"Por favor, defina la cuenta de pago de nómina predeterminada en la empresa {0}.",
 Please set Depreciation related Accounts in Asset Category {0} or Company {1},Por favor establezca Cuentas relacionadas con la depreciación en la Categoría de Activo {0} o Compañía {1}.,
-Please set Email Address,"Por favor, establece Dirección de correo electrónico",
 Please set GST Accounts in GST Settings,Configura las cuentas GST en la configuración de GST,
 Please set Hotel Room Rate on {},Configura la Tarifa de la Habitación del Hotel el {},
 Please set Number of Depreciations Booked,"Por favor, ajuste el número de amortizaciones Reservados",
@@ -1936,7 +1909,6 @@
 Please set the Email ID for the Student to send the Payment Request,Configure la ID de correo electrónico para que el estudiante envíe la solicitud de pago,
 Please set the Item Code first,Configure primero el Código del Artículo,
 Please set the Payment Schedule,Por favor establezca el calendario de pagos,
-Please set the series to be used.,"Por favor, configure la serie que se utilizará.",
 Please set {0} for address {1},Establezca {0} para la dirección {1},
 Please setup Students under Student Groups,"Por favor, configure los estudiantes en grupos de estudiantes",
 Please specify Company,"Por favor, especifique la compañía",
@@ -1953,7 +1925,6 @@
 Point-of-Sale,Punto de Venta (POS),
 Point-of-Sale Profile,Perfiles de punto de venta (POS),
 Portal,Portal,
-Portal Settings,Configuración del portal,
 Possible Supplier,Posible proveedor,
 Postal Expenses,Gastos postales,
 Posting Date,Fecha de Contabilización,
@@ -2152,12 +2123,10 @@
 Reference No is mandatory if you entered Reference Date,El No. de referencia es obligatoria si usted introdujo la fecha,
 Reference No.,Numero de referencia.,
 Reference Number,Número de referencia,
-Reference Owner,Propietario de Referencia,
 Reference Type,Tipo de referencia,
 "Reference: {0}, Item Code: {1} and Customer: {2}","Referencia: {0}, Código del artículo: {1} y Cliente: {2}",
 References,Referencias,
 Refresh Token,Actualizar Token,
-Region,Región,
 Register,Registro,
 Rejected,Rechazado,
 Related,Relacionado,
@@ -2179,7 +2148,6 @@
 Replace BOM and update latest price in all BOMs,Sustituya la Lista de Materiales (BOM)  y actualice el último precio en todas las listas de materiales,
 Replied,Respondido,
 Report,Reporte,
-Report Builder,Generador de reportes,
 Report Type,Tipo de reporte,
 Report Type is mandatory,El tipo de reporte es obligatorio,
 Reports,Informes,
@@ -2355,13 +2323,11 @@
 Same Company is entered more than once,La misma Compañia es ingresada mas de una vez,
 Same item cannot be entered multiple times.,El mismo artículo no se puede introducir varias veces.,
 Same supplier has been entered multiple times,Mismo proveedor se ha introducido varias veces,
-Sample,Muestra.,
 Sample Collection,Coleccion de muestra,
 Sample quantity {0} cannot be more than received quantity {1},La Cantidad de Muestra {0} no puede ser más que la Cantidad Recibida {1},
 Sanctioned,Sancionada,
 Sand,Arena,
 Saturday,Sábado,
-Saved,Guardado,
 Saving {0},Guardando {0},
 Scan Barcode,Escanear Código de Barras,
 Schedule,Programa,
@@ -2463,7 +2429,6 @@
 Series Updated,Secuencia actualizada,
 Series Updated Successfully,Secuencia actualizada correctamente,
 Series is mandatory,La secuencia es obligatoria,
-Series {0} already used in {1},Secuencia {0} ya utilizada en {1},
 Service,Servicios,
 Service Level Agreement,Acuerdo de nivel de servicio,
 Service Level Agreement.,Acuerdo de nivel de servicio.,
@@ -2479,7 +2444,6 @@
 Set Tax Rule for shopping cart,Establezca la regla fiscal (Impuestos) del carrito de compras,
 Set as Closed,Establecer como cerrado/a,
 Set as Completed,Establecer como completado,
-Set as Default,Establecer como Predeterminado,
 Set as Lost,Establecer como perdido,
 Set as Open,Establecer como abierto/a,
 Set default inventory account for perpetual inventory,Seleccionar la cuenta de inventario por defecto para el inventario perpetuo,
@@ -2511,7 +2475,6 @@
 Shareholder,Accionista,
 Ship To State,Enviar al Estado,
 Shipments,Envíos,
-Shipping,Envío.,
 Shipping Address,Dirección de Envío.,
 "Shipping Address does not have country, which is required for this Shipping Rule","Dirección de Envío no tiene país, que se requiere para esta Regla de Envío",
 Shipping rule only applicable for Buying,Regla de Envío solo aplicable para la Compra,
@@ -2564,7 +2527,6 @@
 Split Batch,Lote dividido,
 Split Issue,Problema de División,
 Sports,Deportes,
-Standard,Estándar,
 Standard Buying,Compra estandar,
 Standard Selling,Venta estándar,
 Standard contract terms for Sales or Purchase.,Contrato estándar de términos y condiciones para ventas y compras.,
@@ -2731,7 +2693,6 @@
 Terms and Conditions,Términos y Condiciones,
 Terms and Conditions Template,Plantillas de términos y condiciones,
 Territory,Territorio,
-Test,Prueba,
 Thank you for your business!,¡Gracias por hacer negocios!,
 The 'From Package No.' field must neither be empty nor it's value less than 1.,El campo 'Desde Paquete Nro' no debe estar vacío ni su valor es menor a 1.,
 The Brand,La marca,
@@ -2848,7 +2809,6 @@
 Total (Without Tax),Total (Sin Impuestos),
 Total Achieved,Total Conseguido,
 Total Actual,Total Actual,
-Total Allocated Leaves,Total de Licencias Asignadas,
 Total Amount,Importe total,
 Total Amount Credited,Monto Total Acreditado,
 Total Applicable Charges in Purchase Receipt Items table must be same as Total Taxes and Charges,Total de comisiones aplicables en la compra Tabla de recibos Los artículos deben ser iguales que las tasas totales y cargos,
@@ -2892,7 +2852,6 @@
 Total(Amt),Monto total,
 Total(Qty),Total (Cantidad),
 Traceability,Trazabilidad,
-Traceback,Rastrear,
 Track Leads by Lead Source.,Seguimiento de Oportunidades por fuente de Opotunidades.,
 Transaction,Transacción,
 Transaction Date,Fecha de Transacción,
@@ -2930,7 +2889,6 @@
 UOM Conversion factor is required in row {0},El factor de conversión de la (UdM) es requerido en la línea {0},
 UOM coversion factor required for UOM: {0} in Item: {1},Factor de conversion de la Unidad de Medida requerido para la Unidad de Medida {0} en el artículo: {1},
 URL,URL,
-Unable to find DocType {0},No se puede encontrar DocType {0},
 Unable to find exchange rate for {0} to {1} for key date {2}. Please create a Currency Exchange record manually,No se puede encontrar el tipo de cambio para {0} a {1} para la fecha clave {2}. Crea un registro de cambio de divisas manualmente,
 Unable to find score starting at {0}. You need to have standing scores covering 0 to 100,No se puede encontrar la puntuación a partir de {0}. Usted necesita tener puntuaciones en pie que cubren 0 a 100,
 Unable to find variable: ,No se puede encontrar la variable:,
@@ -2960,7 +2918,6 @@
 Upload your letter head and logo. (you can edit them later).,Cargue su membrete y el logotipo. (Estos pueden editarse más tarde).,
 Upper Income,Ingresos superior,
 Use Sandbox,Utilizar Sandbox,
-Used Leaves,Licencias Usadas,
 User,Usuario,
 User ID,ID de usuario,
 User ID not set for Employee {0},ID de usuario no establecido para el empleado {0},
@@ -3051,7 +3008,6 @@
 Website Settings,Configuración del Sitio Web,
 Wednesday,Miércoles,
 Week,Semana,
-Weekdays,Días de la Semana,
 Weekly,Semanal,
 "Weight is mentioned,\nPlease mention ""Weight UOM"" too","El peso está definido,\nPor favor indique ""UDM Peso"" también",
 Welcome email sent,Correo electrónico de bienvenida enviado,
@@ -3072,7 +3028,6 @@
 Work Order {0} must be submitted,La Órden de Trabajo {0} debe enviarse,
 Work Orders Created: {0},Órdenes de trabajo creadas: {0},
 Work-in-Progress Warehouse is required before Submit,Se requiere un almacén de trabajos en proceso antes de validar,
-Workflow,Flujos de Trabajo,
 Working,Trabajando,
 Working Hours,Horas de Trabajo,
 Workstation,Puesto de trabajo,
@@ -3102,7 +3057,6 @@
 You need to be a user other than Administrator with System Manager and Item Manager roles to register on Marketplace.,"Para poder registrarse en Marketplace, debe ser un usuario que no sea Administrador con funciones de Administrador del Sistema y Administrador de Artículos.",
 You need to be a user with System Manager and Item Manager roles to add users to Marketplace.,Debe ser un usuario con funciones de Administrador del sistema y Administrador de artículos para agregar usuarios a Marketplace.,
 You need to be a user with System Manager and Item Manager roles to register on Marketplace.,Debe ser un usuario con funciones de Administrador del sistema y Administrador de artículos para registrarse en Marketplace.,
-You need to be logged in to access this page,Tiene que estar registrado para acceder a esta página,
 You need to enable Shopping Cart,Necesita habilitar el carrito de compras,
 You will lose records of previously generated invoices. Are you sure you want to restart this subscription?,Perderá registros de facturas generadas previamente. ¿Seguro que quieres reiniciar esta suscripción?,
 Your Organization,Tu organización,
@@ -3218,7 +3172,6 @@
 Assigned To,Asignado a,
 Chat,Chat,
 Completed By,Completado Por,
-County,País,
 Day of Week,Día de la semana,
 "Dear System Manager,","Estimado administrador del sistema,",
 Default Value,Valor predeterminado,
@@ -3229,31 +3182,21 @@
 Fieldtype,FieldType,
 Help Articles,Artículos de Ayuda,
 ID,Identificador,
-Images,imágenes,
 Import,Importar / Exportar,
 Language,Idioma,
 Likes,Me Gustas,
 Merge with existing,Combinar con existente,
-Office,Oficina,
 Orientation,Orientación,
 Parent,Principal,
-Passive,Pasivo,
 Payment Failed,Pago Fallido,
-Permanent,Permanente,
 Personal,Personal,
-Plant,Planta,
 Post,Publicar,
-Postal,Postal,
 Postal Code,Codigo postal,
-Previous,Anterior,
 Provider,Proveedor,
 Read Only,Sólo lectura,
 Recipient,Beneficiario,
 Reviews,Comentarios,
 Sender,Remitente,
-Shop,Tienda.,
-Subsidiary,Subsidiaria,
-There is some problem with the file url: {0},Hay un poco de problema con la url del archivo: {0},
 There were errors while sending email. Please try again.,"Ha ocurrido un error al enviar el correo electrónico. Por favor, inténtelo de nuevo.",
 Values Changed,Valores Cambiados,
 or,o,
@@ -3280,19 +3223,16 @@
 Quality Feedback Template,Plantilla de comentarios de calidad,
 Rules for applying different promotional schemes.,Reglas para aplicar diferentes esquemas promocionales.,
 Show {0},Mostrar {0},
-"Special Characters except '-', '#', '.', '/', '{{' and '}}' not allowed in naming series {0}","Caracteres especiales excepto &quot;-&quot;, &quot;#&quot;, &quot;.&quot;, &quot;/&quot;, &quot;{{&quot; Y &quot;}}&quot; no están permitidos en las series de nombres {0}",
 Target Details,Detalles del objetivo,
 {0} already has a Parent Procedure {1}.,{0} ya tiene un Procedimiento principal {1}.,
 API,API,
 Annual,Anual,
 Change,Cambio,
 Contact Email,Correo electrónico de contacto,
-Export Type,Tipo de Exportación,
 From Date,Desde la fecha,
 Group By,Agrupar por,
 Invalid URL,URL invalida,
 Landscape,Paisaje,
-Last Sync On,Última Sincronización Activada,
 Naming Series,Secuencias e identificadores,
 No data to export,No hay datos para exportar,
 Portrait,Retrato,
@@ -3302,7 +3242,6 @@
 Show Document,Mostrar documento,
 Show Traceback,Mostrar rastreo,
 Video,Vídeo,
-Webhook Secret,Webhook Secret,
 % Of Grand Total,% Del total general,
 <b>Company</b> is a mandatory filter.,<b>La empresa</b> es un filtro obligatorio.,
 <b>From Date</b> is a mandatory filter.,<b>Desde la fecha</b> es un filtro obligatorio.,
@@ -3358,7 +3297,6 @@
 BOM Comparison Tool,Herramienta de comparación de lista de materiales,
 BOM recursion: {0} cannot be child of {1},Recurrencia de la lista de materiales: {0} no puede ser hijo de {1},
 BOM recursion: {0} cannot be parent or child of {1},Recurrencia de la lista de materiales: {0} no puede ser padre o hijo de {1},
-Back to Home,De vuelta a casa,
 Back to Messages,Regresar a Mensajes,
 Bank Data mapper doesn't exist,El mapeador de datos bancarios no existe,
 Bank Details,Detalles del banco,
@@ -3420,7 +3358,6 @@
 Currency,Divisa / Moneda,
 Current Status,Estado actual,
 Customer PO,PO del cliente,
-Customize,Personalización,
 Daily,Diario,
 Date,Fecha,
 Date of Birth cannot be greater than Joining Date.,La fecha de nacimiento no puede ser mayor que la fecha de ingreso.,
@@ -3454,7 +3391,6 @@
 ERPNext could not find any matching payment entry,ERPNext no pudo encontrar ninguna entrada de pago coincidente,
 Earliest Age,Edad más temprana,
 Edit Details,Editar detalles,
-Edit Profile,Editar perfil,
 Either GST Transporter ID or Vehicle No is required if Mode of Transport is Road,Se requiere la identificación del transportista GST o el número de vehículo si el modo de transporte es carretera,
 Email,Correo electrónico,
 Email Campaigns,Campañas de correo electrónico,
@@ -3482,7 +3418,6 @@
 Fetch Items from Warehouse,Obtener artículos del almacén,
 Fetching...,Atractivo...,
 Field,Campo,
-File Manager,Administrador de archivos,
 Filters,Filtros,
 Finding linked payments,Encontrar pagos vinculados,
 Fleet Management,Gestión de Flota,
@@ -3521,7 +3456,6 @@
 Incorrect Warehouse,Almacén incorrecto,
 Invalid Barcode. There is no Item attached to this barcode.,Código de barras inválido. No hay ningún elemento adjunto a este código de barras.,
 Invalid credentials,Credenciales no válidas,
-Invite as User,Invitar como usuario,
 Issue Priority.,Prioridad de emisión.,
 Issue Type.,Tipo de problema.,
 "It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","Parece que hay un problema con la configuración de la banda del servidor. En caso de falla, la cantidad será reembolsada a su cuenta.",
@@ -3564,7 +3498,6 @@
 New Invoice,Nueva factura,
 New Payment,Nuevo pago,
 New release date should be in the future,La nueva fecha de lanzamiento debe estar en el futuro,
-Newsletter,Boletín de noticias,
 No Account matched these filters: {},Ninguna cuenta coincide con estos filtros: {},
 No communication found.,No se encontró comunicación.,
 No correct answer is set for {0},No se establece una respuesta correcta para {0},
@@ -3640,7 +3573,6 @@
 Please setup a default bank account for company {0},Configure una cuenta bancaria predeterminada para la empresa {0},
 Please specify,"Por favor, especifique",
 Please specify a {0},"Por favor, especifique un {0}",lead
-Printing,Impresión,
 Priority,Prioridad,
 Priority has been changed to {0}.,La prioridad se ha cambiado a {0}.,
 Priority {0} has been repeated.,La prioridad {0} se ha repetido.,
@@ -3649,7 +3581,6 @@
 Project,Proyecto,
 Provide the academic year and set the starting and ending date.,Proporcione el año académico y establezca la fecha de inicio y finalización.,
 Public token is missing for this bank,Falta un token público para este banco,
-Publish,Publicar,
 Publish 1 Item,Publicar 1 artículo,
 Publish Items,Publicar artículos,
 Publish More Items,Publica más artículos,
@@ -3677,7 +3608,6 @@
 Reconciled,Reconciliado,
 Recruitment,Reclutamiento,
 Red,Rojo,
-Refreshing,Actualizando,
 Release date must be in the future,La fecha de lanzamiento debe ser en el futuro,
 Relieving Date must be greater than or equal to Date of Joining,La fecha de liberación debe ser mayor o igual que la fecha de incorporación,
 Rename,Renombrar,
@@ -3721,7 +3651,6 @@
 Search for a payment,Busca un pago,
 Search for anything ...,Busca cualquier cosa ...,
 Search results for,Resultados de la búsqueda para,
-Select All,Seleccionar todo,
 Select Difference Account,Seleccionar cuenta de diferencia,
 Select a Default Priority.,Seleccione una prioridad predeterminada.,
 Select a company,Selecciona una empresa,
@@ -3740,11 +3669,9 @@
 Service Level Agreement has been changed to {0}.,El acuerdo de nivel de servicio se ha cambiado a {0}.,
 Service Level Agreement was reset.,Se restableció el acuerdo de nivel de servicio.,
 Service Level Agreement with Entity Type {0} and Entity {1} already exists.,El acuerdo de nivel de servicio con el tipo de entidad {0} y la entidad {1} ya existe.,
-Set,Establecer,
 Set Meta Tags,Establecer metaetiquetas,
 Set {0} in company {1},Establecer {0} en la empresa {1},
 Setup,Configuración,
-Setup Wizard,Asistente de configuración.,
 Shift Management,Gestión de Turno,
 Show Future Payments,Mostrar pagos futuros,
 Show Linked Delivery Notes,Mostrar notas de entrega vinculadas,
@@ -3815,7 +3742,6 @@
 Unreconciled,No reconciliado,
 Unsupported GST Category for E-Way Bill JSON generation,Categoría GST no compatible para la generación E-Way Bill JSON,
 Update,Actualizar,
-Update Details,Detalles de actualización,
 Update Taxes for Items,Actualizar impuestos para artículos,
 "Upload a bank statement, link or reconcile a bank account","Cargue un extracto bancario, vincule o concilie una cuenta bancaria",
 Upload a statement,Subir una declaración,
@@ -3839,7 +3765,6 @@
 XML Files Processed,Archivos XML procesados,
 Year,Año,
 Yearly,Anual,
-You,Usted,
 You are not allowed to enroll for this course,No está permitido inscribirse en este curso.,
 You are not enrolled in program {0},No está inscrito en el programa {0},
 You can Feature upto 8 items.,Puede presentar hasta 8 elementos.,
@@ -3856,7 +3781,6 @@
 e-Way Bill already exists for this document,e-Way Bill ya existe para este documento,
 woocommerce - {0},woocommerce - {0},
 {0} Coupon used are {1}. Allowed quantity is exhausted,Los cupones {0} utilizados son {1}. La cantidad permitida se agota,
-{0} Name,{0} Nombre,
 {0} Operations: {1},{0} Operaciones: {1},
 {0} bank transaction(s) created,{0} transacciones bancarias creadas,
 {0} bank transaction(s) created and {1} errors,Se crearon {0} transacciones bancarias y {1} errores,
@@ -3875,17 +3799,13 @@
 Total Income,Ingresos totales,
 Total Income This Year,Ingresos totales este año,
 Barcode,Código de barras,
-Bold,Negrita,
-Center,Centro,
 Clear,Quitar,
-Comment,Comentario,
 Comments,Comentarios,
 DocType,DocType,
 Download,Descargar,
 Left,Inactivo/Fuera,
 Link,Enlace,
 New,Nuevo,
-Not Found,No encontrado,
 Print,Impresión,
 Reference Name,nombre de referencia,
 Refresh,Actualizar,
@@ -3908,7 +3828,6 @@
 Email Id,ID de Correo Electrónico,
 No,No,
 Reference Doctype,Referencia a 'DocType',
-User Id,ID de usuario,
 Yes,si,
 Actual ,Actual,
 Add to cart,Añadir a la Cesta,
@@ -4304,7 +4223,6 @@
 e.g Adjustments for:,"por ejemplo, Ajustes para:",
 Section Subtotal,Subtotal de la Sección,
 Section Footer,Sección Pie de Página,
-Position,Posición,
 Cash Flow Mapping,Asignación de Fujo de Caja,
 Select Maximum Of 1,Seleccione Máximo de 1,
 Is Finance Cost,Es el Costo de las Finanzas,
@@ -4936,7 +4854,6 @@
 Previous Business Day,Día Hábil Anterior,
 Next Business Day,Siguiente Día de Negocios,
 Urgent,Urgente,
-Crop,Cultivo,
 Crop Name,Nombre del Cultivo,
 Scientific Name,Nombre Científico,
 "You can define all the tasks which need to carried out for this crop here. The day field is used to mention the day on which the task needs to be carried out, 1 being the 1st day, etc.. ","Aquí puede definir todas las tareas que se deben llevar a cabo para este cultivo. El campo del día se usa para mencionar el día en que se debe llevar a cabo la tarea, 1 es el primer día, etc.",
@@ -5441,7 +5358,6 @@
 To TIme,Hasta hora,
 Course End Date,Fecha de finalización del curso,
 Course Topic,Tema del curso,
-Topic,Tema,
 Topic Name,Nombre del tema,
 Education Settings,Configuración de Educación,
 Current Academic Year,Año académico actual,
@@ -5516,7 +5432,6 @@
 Check this if the Student is residing at the Institute's Hostel.,Marque esto si el estudiante está residiendo en el albergue del Instituto.,
 Walking,Caminando,
 Institute's Bus,Autobús del Instituto,
-Public Transport,Transporte Público,
 Self-Driving Vehicle,Vehículo auto-manejado,
 Pick/Drop by Guardian,Recoger/Soltar por Tutor,
 Enrolled courses,Cursos matriculados,
@@ -5697,7 +5612,6 @@
 Default Cost Center,Centro de costos por defecto,
 Undeposited Funds Account,Cuenta de Fondos no Depositados,
 Shopify Log,Log de Shopify,
-Request Data,Datos de Solicitud,
 Shopify Settings,Configuración de Shopify,
 status html,estado html,
 Enable Shopify,Habilitar Shopify,
@@ -5817,7 +5731,6 @@
 Exercise Instructions,Instrucciones de ejercicio,
 Exercise Video,Video de ejercicio,
 Exercise Steps,Pasos del ejercicio,
-Steps,Pasos,
 Steps Table,Tabla de pasos,
 Exercise Type Step,Tipo de ejercicio Paso,
 Max number of visit,Número máximo de visitas,
@@ -6001,7 +5914,6 @@
 Patient Encounter Symptom,Síntoma de encuentro con el paciente,
 HLC-PMR-.YYYY.-,HLC-PMR-.YYYY.-,
 Attach Medical Record,Adjuntar historial médico,
-Reference DocType,DocType de referencia,
 Spouse,Esposa,
 Family,Familia,
 Schedule Details,Detalles del horario,
@@ -6983,16 +6895,8 @@
 HTML / Banner that will show on the top of product list.,HTML / Banner que aparecerá en la parte superior de la lista de productos.,
 Set prefix for numbering series on your transactions,Establezca los prefijos de las numeraciones en sus transacciones,
 Setup Series,Configurar secuencias,
-Select Transaction,Seleccione el tipo de transacción,
-Help HTML,Ayuda 'HTML',
-Series List for this Transaction,Lista de secuencias para esta transacción,
-User must always select,El usuario deberá elegir siempre,
-Check this if you want to force the user to select a series before saving. There will be no default if you check this.,Seleccione esta opción si desea obligar al usuario a seleccionar una serie antes de guardar. No habrá ninguna por defecto si marca ésta casilla.,
 Update Series,Definir Secuencia,
 Change the starting / current sequence number of an existing series.,Defina el nuevo número de secuencia para esta transacción.,
-Prefix,Prefijo,
-This is the number of the last created transaction with this prefix,Este es el número de la última transacción creada con este prefijo,
-Update Series Number,Actualizar número de serie,
 Quotation Lost Reason,Razón de la Pérdida,
 A third party distributor / dealer / commission agent / affiliate / reseller who sells the companies products for a commission.,Un distribuidor / proveedor / comisionista / afiliado / revendedor que vende productos de empresas a cambio de una comisión.,
 Sales Partner Name,Nombre de socio de ventas,
@@ -7687,7 +7591,6 @@
 Warehouse wise Item Balance Age and Value,Balance de Edad y Valor de Item por Almacén,
 Work Order Stock Report,Informe de stock de Órden de Trabajo,
 Work Orders in Progress,Órdenes de Trabajo en progreso,
-Validation Error,Error de validacion,
 Automatically Process Deferred Accounting Entry,Procesar automáticamente asientos contables diferidos,
 Bank Clearance,Liquidación bancaria,
 Bank Clearance Detail,Detalle de liquidación bancaria,
@@ -7724,45 +7627,7 @@
 Therapy Plan: ,Plan de terapia:,
 Total Counts Targeted: ,Recuentos totales objetivo:,
 Total Counts Completed: ,Conteos totales completados:,
-Andaman and Nicobar Islands,Islas Andaman y Nicobar,
-Andhra Pradesh,Andhra Pradesh,
-Arunachal Pradesh,Arunachal Pradesh,
-Assam,Assam,
-Bihar,Bihar,
-Chandigarh,Chandigarh,
-Chhattisgarh,Chhattisgarh,
-Dadra and Nagar Haveli,Dadra y Nagar Haveli,
-Daman and Diu,Daman y Diu,
-Delhi,Delhi,
-Goa,Ir a,
-Gujarat,Gujarat,
-Haryana,Haryana,
-Himachal Pradesh,Himachal Pradesh,
-Jammu and Kashmir,Jammu y Cachemira,
-Jharkhand,Jharkhand,
-Karnataka,Karnataka,
-Kerala,Kerala,
-Lakshadweep Islands,Islas Lakshadweep,
-Madhya Pradesh,Madhya Pradesh,
-Maharashtra,Maharashtra,
-Manipur,Manipur,
-Meghalaya,Meghalaya,
-Mizoram,Mizoram,
-Nagaland,Nagaland,
-Odisha,Odisha,
-Other Territory,Otro territorio,
-Pondicherry,Pondicherry,
-Punjab,Punjab,
-Rajasthan,Rajastán,
-Sikkim,Sikkim,
-Tamil Nadu,Tamil Nadu,
-Telangana,Telangana,
-Tripura,Tripura,
-Uttar Pradesh,Uttar Pradesh,
-Uttarakhand,Uttarakhand,
-West Bengal,al oeste de Bengala,
 Is Mandatory,Es obligatorio,
-Published on,Publicado en,
 Service Received But Not Billed,Servicio recibido pero no facturado,
 Deferred Accounting Settings,Configuración de contabilidad diferida,
 Book Deferred Entries Based On,Reservar entradas diferidas según,
@@ -8035,8 +7900,6 @@
 Worksheet Instructions,Instrucciones de la hoja de trabajo,
 Result Legend Print,Impresión de leyenda de resultado,
 Print Position,Posición de impresión,
-Bottom,Fondo,
-Top,Parte superior,
 Both,Ambos,
 Result Legend,Leyenda de resultados,
 Lab Tests,Pruebas de laboratorio,
@@ -8081,12 +7944,10 @@
 Approvers,Aprobadores,
 The first Approver in the list will be set as the default Approver.,El primer Aprobador de la lista se establecerá como Aprobador predeterminado.,
 Shift Request Approver,Aprobador de solicitud de turno,
-PAN Number,Número PAN,
 Provident Fund Account,Cuenta del fondo de previsión,
 MICR Code,Código MICR,
 Repay unclaimed amount from salary,Reembolsar la cantidad no reclamada del salario,
 Deduction from salary,Deducción del salario,
-Expired Leaves,Hojas caducadas,
 If this is not checked the loan by default will be considered as a Demand Loan,"Si no se marca, el préstamo por defecto se considerará Préstamo a la vista.",
 This account is used for booking loan repayments from the borrower and also disbursing loans to the borrower,Esta cuenta se utiliza para registrar los reembolsos de préstamos del prestatario y también para desembolsar préstamos al prestatario.,
 This account is capital account which is used to allocate capital for loan disbursal account ,Esta cuenta es una cuenta de capital que se utiliza para asignar capital para la cuenta de desembolso de préstamos.,
@@ -8844,3 +8705,41 @@
 Creating Purchase Order ...,Creando orden de compra ...,
 "Select a Supplier from the Default Suppliers of the items below. On selection, a Purchase Order will be made against items belonging to the selected Supplier only.","Seleccione un proveedor de los proveedores predeterminados de los artículos a continuación. En la selección, se realizará una orden de compra contra los artículos que pertenecen al proveedor seleccionado únicamente.",
 Row #{}: You must select {} serial numbers for item {}.,Fila # {}: debe seleccionar {} números de serie para el artículo {}.,
+Add Comment,Agregar comentario,
+More...,Más...,
+Notes,Notas,
+Payment Gateway,Pasarela de Pago,
+Payment Gateway Name,Nombre de Pasarela de Pago,
+Payments,Pagos.,
+Plan Name,Nombre del Plan,
+Portal,Portal,
+Scan Barcode,Escanear Código de Barras,
+Some information is missing,Falta información,
+Successful,Exitoso,
+Tools,Herramientas,
+Use Sandbox,Utilizar Sandbox,
+Busy,Ocupado,
+Completed By,Completado Por,
+Payment Failed,Pago Fallido,
+Column {0},Columna {0},
+Field Mapping,Mapeo de campo,
+Not Specified,No especificado,
+Update Type,Tipo de actualización,
+Dr,Dr.,
+End Time,Hora de finalización,
+Fetching...,Atractivo...,
+"It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","Parece que hay un problema con la configuración de la banda del servidor. En caso de falla, la cantidad será reembolsada a su cuenta.",
+Looks like someone sent you to an incomplete URL. Please ask them to look into it.,"Parece que alguien le envió a una URL incompleta. Por favor, pídeles que revisen.",
+Master,Maestro,
+Pay,Pagar,
+You can also copy-paste this link in your browser,Usted puede copiar y pegar este enlace en su navegador,
+Verified By,Verificado por,
+Invalid naming series (. missing) for {0},Serie de nombres no válida (falta.) Para {0},
+Phone Number,Número de teléfono,
+Account SID,SID de cuenta,
+Global Defaults,Predeterminados globales,
+Is Mandatory,Es obligatorio,
+WhatsApp,WhatsApp,
+Make a call,Haz una llamada,
+Approve,Aprobar,
+Reject,Rechazar,
diff --git a/erpnext/translations/et.csv b/erpnext/translations/et.csv
index 29e599b..4e26a82 100644
--- a/erpnext/translations/et.csv
+++ b/erpnext/translations/et.csv
@@ -113,7 +113,6 @@
 Add Items,Lisa tooteid,
 Add Leads,Lisa lehed,
 Add Multiple Tasks,Lisa mitu ülesannet,
-Add Row,Lisa Row,
 Add Sales Partners,Lisage müügipartnereid,
 Add Serial No,Lisa Järjekorranumber,
 Add Students,Lisa Õpilased,
@@ -211,9 +210,7 @@
 An error occurred during the update process,Värskendamise käigus tekkis viga,
 "An item exists with same name ({0}), please change the item group name or rename the item","Elementi on olemas sama nimega ({0}), siis muutke kirje grupi nimi või ümbernimetamiseks kirje",
 Analyst,Analüütik,
-Analytics,Analytics,
 Annual Billing: {0},Iga-aastane Arved: {0},
-Anonymous,Anonüümne,
 Another Budget record '{0}' already exists against {1} '{2}' and account '{3}' for fiscal year {4},Teine eelarvearve &quot;{0}&quot; on juba eelarveaasta {1} &quot;{2}&quot; ja konto &quot;{3}&quot; jaoks {4},
 Another Period Closing Entry {0} has been made after {1},Teine periood sulgemine Entry {0} on tehtud pärast {1},
 Another Sales Person {0} exists with the same Employee id,Teine Sales Person {0} on olemas sama Töötaja id,
@@ -283,14 +280,12 @@
 Attendance not submitted for {0} as {1} on leave.,Külalisi ei esitata {0} kui {1} puhkusel.,
 Attribute table is mandatory,Oskus tabelis on kohustuslik,
 Attribute {0} selected multiple times in Attributes Table,Oskus {0} valitakse mitu korda atribuudid Table,
-Author,autor,
 Authorized Signatory,Allkirjaõiguslik,
 Auto Material Requests Generated,Auto Material Taotlused Loodud,
 Auto Repeat,Automaatne kordamine,
 Auto repeat document updated,Auto kordusdokument uuendatud,
 Automotive,Autod,
 Available,Saadaval,
-Available Leaves,Saadaolevad lehed,
 Available Qty,Saadaval Kogus,
 Available Selling,Saadaval müügil,
 Available for use date is required,Kasutatav kasutuskuupäev on vajalik,
@@ -340,7 +335,6 @@
 Base URL,Base URL,
 Based On,Põhineb,
 Based On Payment Terms,Põhineb maksetingimustel,
-Basic,Põhiline,
 Batch,Partii,
 Batch Entries,Partii kirjed,
 Batch ID is mandatory,Partii nr on kohustuslik,
@@ -361,7 +355,6 @@
 Billable Hours,Arveldatavad tunnid,
 Billed,Maksustatakse,
 Billed Amount,Arve summa,
-Billing,Arved,
 Billing Address,Arve Aadress,
 Billing Address is same as Shipping Address,Arveldusaadress on sama mis saateaadress,
 Billing Amount,Arved summa,
@@ -560,7 +553,6 @@
 Consumed Qty,Tarbitud kogus,
 Consumer Products,Consumer Products,
 Contact,Kontakt,
-Contact Details,Kontaktandmed,
 Contact Us,Võta meiega ühendust,
 Content,Sisu,
 Content Masters,Sisu meistrid,
@@ -715,7 +707,6 @@
 Date of Joining,Liitumis,
 Date of Joining must be greater than Date of Birth,Liitumis peab olema suurem kui Sünniaeg,
 Date of Transaction,Tehingu kuupäev,
-Datetime,Date,
 Day,päev,
 Debit,Deebet,
 Debit ({0}),Deebet ({0}),
@@ -874,7 +865,6 @@
 Employee cannot report to himself.,Töötaja ei saa aru ise.,
 Employee {0} has already applied for {1} between {2} and {3} : ,Töötaja {0} on juba {1} jaoks taotlenud {2} ja {3} vahel:,
 Employee {0} of grade {1} have no default leave policy,Töötajal {0} palgaastmel {1} pole vaikimisi puhkusepoliitikat,
-Enable,võimaldama,
 Enable / disable currencies.,Võimalda / blokeeri valuutades.,
 Enabled,Lubatud,
 "Enabling 'Use for Shopping Cart', as Shopping Cart is enabled and there should be at least one Tax Rule for Shopping Cart","Lubamine &quot;kasutamine Ostukorv&quot;, kui Ostukorv on lubatud ja seal peaks olema vähemalt üks maksueeskiri ostukorv",
@@ -905,7 +895,6 @@
 Error: Not a valid id?,Viga: Ei kehtivat id?,
 Estimated Cost,Hinnanguline maksumus,
 "Even if there are multiple Pricing Rules with highest priority, then following internal priorities are applied:","Isegi kui on mitu Hinnakujundusreeglid esmajärjekorras, siis järgmised sisemised prioriteedid on rakendatud:",
-Event,Sündmus,
 Exchange Gain/Loss,Exchange kasum / kahjum,
 Exchange Rate Revaluation master.,Vahetuskursi ümberhindluse meister.,
 Exchange Rate must be same as {0} {1} ({2}),"Vahetuskurss peab olema sama, {0} {1} ({2})",
@@ -1032,7 +1021,6 @@
 From value must be less than to value in row {0},Siit peab olema väiksem kui väärtus järjest {0},
 From {0} | {1} {2},Siit {0} | {1} {2},
 Fulfillment,Täitmine,
-Full,Täis,
 Full Name,Täisnimi,
 Fully Depreciated,Täielikult amortiseerunud,
 Furnitures and Fixtures,Mööbel ja lambid,
@@ -1133,7 +1121,6 @@
 Hub Sync ID,Hub Sync ID,
 Human Resource,Inimressurss,
 Human Resources,Inimressursid,
-IFSC Code,IFSC kood,
 IGST Amount,IGST summa,
 IP Address,IP-aadress,
 ITC Available (whether in full op part),ITC saadaval (kas täielikult op),
@@ -1185,7 +1172,6 @@
 Ineligible ITC,Abikõlbmatu ITC,
 Initiated,Algatatud,
 Inpatient Record,Statsionaarne kirje,
-Insert,Sisesta,
 Installation Note,Paigaldamine Märkus,
 Installation Note {0} has already been submitted,Paigaldamine Märkus {0} on juba esitatud,
 Installation date cannot be before delivery date for Item {0},Paigaldamise kuupäev ei saa olla enne tarnekuupäev Punkt {0},
@@ -1197,7 +1183,6 @@
 Insurance Start date should be less than Insurance End date,Kindlustus Alguse kuupäev peaks olema väiksem kui Kindlustus Lõppkuupäev,
 Integrated Tax,Integreeritud maks,
 Inter-State Supplies,Riikidevahelised tarned,
-Interests,Huvid,
 Internet Publishing,Internet kirjastamine,
 Intra-State Supplies,Riigi sisesed tarned,
 Introduction,Kasutuselevõtt,
@@ -1316,7 +1301,6 @@
 Lab testing datetime cannot be before collection datetime,Lab test datetime ei saa olla enne kogumise kuupäeva,
 Label,Etikett,
 Laboratory,Laboratoorium,
-Language Name,keel Nimi,
 Large,Suur,
 Last Communication,viimase Side,
 Last Communication Date,Viimase Side kuupäev,
@@ -1347,8 +1331,6 @@
 Letter Heads for print templates.,Kiri Heads print malle.,
 Level,Level,
 Liability,Vastutus,
-License,Litsents,
-Limit,piir,
 Limit Crossed,Limit Crossed,
 Link to Material Request,Link Materiaalse päringule,
 List of all share transactions,Kõigi aktsiate tehingute nimekiri,
@@ -1359,7 +1341,6 @@
 Loans (Liabilities),Laenudega (kohustused),
 Loans and Advances (Assets),Laenud ja ettemaksed (vara),
 Local,Kohalik,
-Log,Logi,
 Logs for maintaining sms delivery status,Logid säilitamiseks sms tarneseisust,
 Lost,Kaotsi läinud,
 Lost Reasons,Kaotatud põhjused,
@@ -1445,7 +1426,6 @@
 Medical Department,Meditsiini osakond,
 Medical Record,Meditsiiniline kirje,
 Medium,Medium,
-Meeting,Kohtumine,
 Member Activity,Liikme tegevused,
 Member ID,Liikme ID,
 Member Name,Liikme nimi,
@@ -1495,7 +1475,6 @@
 Multiple Variants,Mitmed variandid,
 Multiple fiscal years exist for the date {0}. Please set company in Fiscal Year,Mitu eelarve aastatel on olemas kuupäev {0}. Palun määra firma eelarveaastal,
 Music,Muusika,
-My Account,Minu konto,
 Name error: {0},Nimi viga: {0},
 Name of new Account. Note: Please don't create accounts for Customers and Suppliers,Nimi uue konto. Märkus: Palun ärge kontosid luua klientide ja hankijate,
 Name or Email is mandatory,Nimi või e on kohustuslik,
@@ -1538,7 +1517,6 @@
 New credit limit is less than current outstanding amount for the customer. Credit limit has to be atleast {0},Uus krediidilimiit on alla praeguse tasumata summa kliendi jaoks. Krediidilimiit peab olema atleast {0},
 New task,Uus ülesanne,
 New {0} pricing rules are created,Loodud on uued {0} hinnareeglid,
-Newsletters,Infolehed,
 Newspaper Publishers,Ajaleht Publishers,
 Next,Järgmine,
 Next Contact By cannot be same as the Lead Email Address,Järgmine kontakteeruda ei saa olla sama Lead e-posti aadress,
@@ -1686,7 +1664,6 @@
 Other,Muud,
 Other Reports,Teised aruanded,
 "Other outward supplies(Nil rated,Exempted)","Muud välistarbed (null, erand)",
-Others,Teised,
 Out Qty,Out Kogus,
 Out Value,välja väärtus,
 Out of Order,Korrast ära,
@@ -1726,7 +1703,6 @@
 Party Type and Party is mandatory for {0} account,Päeva tüüp ja osapool on {0} konto jaoks kohustuslikud,
 Party Type is mandatory,Partei Type on kohustuslik,
 Party is mandatory,Partei on kohustuslik,
-Password,Salasõna,
 Past Due Date,Möödunud tähtaeg,
 Patient,Patsient,
 Patient Appointment,Patsiendi määramine,
@@ -1784,7 +1760,6 @@
 Pharmaceutical,Pharmaceutical,
 Pharmaceuticals,Farmaatsia,
 Physician,Arst,
-Pincode,PIN-koodi,
 Place Of Supply (State/UT),Tarnekoht (osariik / TÜ),
 Place Order,Esita tellimus,
 Plan Name,Plaani nimi,
@@ -1896,7 +1871,6 @@
 Please select date,Palun valige kuupäev,
 Please select item code,Palun valige objekti kood,
 Please select month and year,Palun valige kuu ja aasta,
-Please select prefix first,Palun valige eesliide esimene,
 Please select the Company,Palun vali ettevõte,
 Please select the Multiple Tier Program type for more than one collection rules.,Palun valige mitme tasandi programmi tüüp rohkem kui ühe kogumise reeglite jaoks.,
 Please select the assessment group other than 'All Assessment Groups',Palun valige hindamise rühm kui &quot;Kõik Hindamine Grupid&quot;,
@@ -1913,7 +1887,6 @@
 Please set Company filter blank if Group By is 'Company',"Määrake Company filtreerida tühjaks, kui rühm Autor on &quot;Firma&quot;",
 Please set Default Payroll Payable Account in Company {0},Palun määra Vaikimisi palgaarvestuse tasulised konto Company {0},
 Please set Depreciation related Accounts in Asset Category {0} or Company {1},Palun määra kulum seotud arvepidamise Põhivarakategoori {0} või ettevõtte {1},
-Please set Email Address,Palun määra e-posti aadress,
 Please set GST Accounts in GST Settings,Palun seadistage GST kontod GST-i seadetes,
 Please set Hotel Room Rate on {},Palun määrake hotelli hinnatase (),
 Please set Number of Depreciations Booked,Palun määra arv Amortisatsiooniaruanne Broneeritud,
@@ -1936,7 +1909,6 @@
 Please set the Email ID for the Student to send the Payment Request,Palun määrake Makseaadi saatmiseks õpilase e-posti aadress,
 Please set the Item Code first,Palun määra kõigepealt tootekood,
 Please set the Payment Schedule,Palun määrake maksegraafik,
-Please set the series to be used.,Palun määra kasutatud seeria.,
 Please set {0} for address {1},Palun määrake aadressiks {1} {0},
 Please setup Students under Student Groups,Palun seadke õpilased üliõpilastele,
 Please specify Company,Palun täpsustage Company,
@@ -1953,7 +1925,6 @@
 Point-of-Sale,Point-of-Sale,
 Point-of-Sale Profile,Point-of-Sale profiili,
 Portal,Portal,
-Portal Settings,portaal seaded,
 Possible Supplier,Võimalik tarnija,
 Postal Expenses,Postikulude,
 Posting Date,Postitamise kuupäev,
@@ -2152,12 +2123,10 @@
 Reference No is mandatory if you entered Reference Date,"Viitenumber on kohustuslik, kui sisestatud Viitekuupäev",
 Reference No.,Viitenumber.,
 Reference Number,Viitenumber,
-Reference Owner,viide Omanik,
 Reference Type,Viide Type,
 "Reference: {0}, Item Code: {1} and Customer: {2}","Viide: {0}, Kood: {1} ja kliendi: {2}",
 References,Viited,
 Refresh Token,Värskenda žetooni,
-Region,Piirkond,
 Register,Registreeru,
 Rejected,Tagasi lükatud,
 Related,Seotud,
@@ -2179,7 +2148,6 @@
 Replace BOM and update latest price in all BOMs,Vahetage BOM ja värskendage viimast hinda kõikides BOM-i,
 Replied,Vastanud,
 Report,Aruanne,
-Report Builder,Report Builder,
 Report Type,Aruande tüüp,
 Report Type is mandatory,Aruande tüüp on kohustuslik,
 Reports,Teated,
@@ -2355,13 +2323,11 @@
 Same Company is entered more than once,Sama firma on kantud rohkem kui üks kord,
 Same item cannot be entered multiple times.,Sama objekt ei saa sisestada mitu korda.,
 Same supplier has been entered multiple times,Sama tarnija on sisestatud mitu korda,
-Sample,Proov,
 Sample Collection,Proovide kogu,
 Sample quantity {0} cannot be more than received quantity {1},Proovi kogus {0} ei saa olla suurem kui saadud kogus {1},
 Sanctioned,sanktsioneeritud,
 Sand,Liiv,
 Saturday,Laupäev,
-Saved,Salvestatud,
 Saving {0},Saving {0},
 Scan Barcode,Skaneeri vöötkood,
 Schedule,Graafik,
@@ -2463,7 +2429,6 @@
 Series Updated,Seeria Uuendatud,
 Series Updated Successfully,Seeria edukalt uuendatud,
 Series is mandatory,Seeria on kohustuslik,
-Series {0} already used in {1},Seeria {0} on juba kasutatud {1},
 Service,Teenus,
 Service Level Agreement,Teenuse taseme leping,
 Service Level Agreement.,Teenuse taseme leping.,
@@ -2479,7 +2444,6 @@
 Set Tax Rule for shopping cart,Määra maksueeskiri ostukorv,
 Set as Closed,Pane suletud,
 Set as Completed,Määra lõpetatuks,
-Set as Default,Set as Default,
 Set as Lost,Määra Lost,
 Set as Open,Määra Open,
 Set default inventory account for perpetual inventory,Määra vaikimisi laoseisu konto jooksva inventuuri,
@@ -2511,7 +2475,6 @@
 Shareholder,Aktsionär,
 Ship To State,Laev riigile,
 Shipments,Saadetised,
-Shipping,Laevandus,
 Shipping Address,Kohaletoimetamise aadress,
 "Shipping Address does not have country, which is required for this Shipping Rule","Saatmisaadressil pole riik, mis on selle kohaletoimetamise reegli jaoks vajalik",
 Shipping rule only applicable for Buying,Kohaletoimetamise reegel kehtib ainult ostmise kohta,
@@ -2564,7 +2527,6 @@
 Split Batch,Split Partii,
 Split Issue,Jagatud probleem,
 Sports,Spordi-,
-Standard,Standard,
 Standard Buying,Standard ostmine,
 Standard Selling,Standard Selling,
 Standard contract terms for Sales or Purchase.,Lepingu tüüptingimused Müük või ost.,
@@ -2731,7 +2693,6 @@
 Terms and Conditions,Tingimused,
 Terms and Conditions Template,Tingimused Mall,
 Territory,Territoorium,
-Test,Test,
 Thank you for your business!,"Täname, et oma äri!",
 The 'From Package No.' field must neither be empty nor it's value less than 1.,Paketi number &quot; väli ei tohi olla tühi ega väärtus väiksem kui 1.,
 The Brand,Bränd,
@@ -2848,7 +2809,6 @@
 Total (Without Tax),Kokku (maksudeta),
 Total Achieved,Kokku saavutatud,
 Total Actual,Kokku Tegelik,
-Total Allocated Leaves,Kokku eraldatud lehed,
 Total Amount,Kogu summa,
 Total Amount Credited,Kogu summa krediteeritakse,
 Total Applicable Charges in Purchase Receipt Items table must be same as Total Taxes and Charges,Kokku kohaldatavate tasude kohta ostutšekk Esemed tabel peab olema sama Kokku maksud ja tasud,
@@ -2892,7 +2852,6 @@
 Total(Amt),Kokku (Amt),
 Total(Qty),Kokku (tk),
 Traceability,Jälgitavus,
-Traceback,Jälgimise,
 Track Leads by Lead Source.,Juhtivate allikate jälgimine.,
 Transaction,Tehing,
 Transaction Date,tehingu kuupäev,
@@ -2930,7 +2889,6 @@
 UOM Conversion factor is required in row {0},UOM Ümberarvutustegur on vaja järjest {0},
 UOM coversion factor required for UOM: {0} in Item: {1},UOM coversion tegur vajalik UOM: {0} punktis: {1},
 URL,URL,
-Unable to find DocType {0},DocType&#39;i leidmine nurjus {0},
 Unable to find exchange rate for {0} to {1} for key date {2}. Please create a Currency Exchange record manually,Ei leia Vahetuskurss {0} kuni {1} peamiste kuupäeva {2}. Looge Valuutavahetus rekord käsitsi,
 Unable to find score starting at {0}. You need to have standing scores covering 0 to 100,"Punkti ei leitud alates {0}. Sul peab olema alaline hinde, mis katab 0-100",
 Unable to find variable: ,Muutuja ei leitud,
@@ -2960,7 +2918,6 @@
 Upload your letter head and logo. (you can edit them later).,Laadi üles oma kirjas pea ja logo. (seda saab muuta hiljem).,
 Upper Income,Ülemine tulu,
 Use Sandbox,Kasuta liivakasti,
-Used Leaves,Kasutatud lehed,
 User,Kasutaja,
 User ID,kasutaja ID,
 User ID not set for Employee {0},Kasutaja ID ei seatud Töötaja {0},
@@ -3051,7 +3008,6 @@
 Website Settings,Koduleht Seaded,
 Wednesday,Kolmapäev,
 Week,nädal,
-Weekdays,Nädalapäevad,
 Weekly,Weekly,
 "Weight is mentioned,\nPlease mention ""Weight UOM"" too","Kaal on mainitud, \ nKui mainida &quot;Kaal UOM&quot; liiga",
 Welcome email sent,Tere saadetud e-,
@@ -3072,7 +3028,6 @@
 Work Order {0} must be submitted,Töökorraldus {0} tuleb esitada,
 Work Orders Created: {0},Loodud töökorraldused: {0},
 Work-in-Progress Warehouse is required before Submit,Lõpetamata Progress Warehouse on vaja enne Esita,
-Workflow,Töövoo,
 Working,Töö,
 Working Hours,Töötunnid,
 Workstation,Workstation,
@@ -3102,7 +3057,6 @@
 You need to be a user other than Administrator with System Manager and Item Manager roles to register on Marketplace.,"Turult registreerumiseks peate olema administraator, kellel on System Manager ja Item Manager.",
 You need to be a user with System Manager and Item Manager roles to add users to Marketplace.,"Kasutajate lisamiseks turuplatsile peate olema kasutaja, kellel on System Manager ja Item Manager.",
 You need to be a user with System Manager and Item Manager roles to register on Marketplace.,"Turult registreerumiseks peate olema kasutaja, kellel on süsteemihaldur ja üksuste juhtide roll.",
-You need to be logged in to access this page,"Sa pead olema sisselogitud, et pääseda sellele lehele",
 You need to enable Shopping Cart,Sa pead lubama Ostukorv,
 You will lose records of previously generated invoices. Are you sure you want to restart this subscription?,"Kaotad varem koostatud arvete andmed. Kas olete kindel, et soovite selle tellimuse uuesti käivitada?",
 Your Organization,teie organisatsiooni,
@@ -3218,7 +3172,6 @@
 Assigned To,Määratud,
 Chat,Vestlus,
 Completed By,Lõpule jõudnud,
-County,maakond,
 Day of Week,Nädalapäev,
 "Dear System Manager,","Lugupeetud System Manager,",
 Default Value,Vaikimisi väärtus,
@@ -3229,31 +3182,21 @@
 Fieldtype,Fieldtype,
 Help Articles,Abi artiklid,
 ID,ID,
-Images,images,
 Import,Import,
 Language,Keel,
 Likes,Likes,
 Merge with existing,Ühendamine olemasoleva,
-Office,Kontor,
 Orientation,orientatsioon,
 Parent,Lapsevanem,
-Passive,Passiivne,
 Payment Failed,makse ebaõnnestus,
-Permanent,püsiv,
 Personal,Personal,
-Plant,Taim,
 Post,Post,
-Postal,Posti-,
 Postal Code,Postiindeks,
-Previous,Eelmine,
 Provider,Pakkuja,
 Read Only,Loe ainult,
 Recipient,Saaja,
 Reviews,Ülevaated,
 Sender,Lähetaja,
-Shop,Kauplus,
-Subsidiary,Tütarettevõte,
-There is some problem with the file url: {0},Seal on mõned probleem faili url: {0},
 There were errors while sending email. Please try again.,Vigu samas saates email. Palun proovi uuesti.,
 Values Changed,väärtused muudetud,
 or,või,
@@ -3280,19 +3223,16 @@
 Quality Feedback Template,Kvaliteetse tagasiside mall,
 Rules for applying different promotional schemes.,Erinevate reklaamiskeemide rakenduseeskirjad.,
 Show {0},Kuva {0},
-"Special Characters except '-', '#', '.', '/', '{{' and '}}' not allowed in naming series {0}","Erimärgid, välja arvatud &quot;-&quot;, &quot;#&quot;, &quot;.&quot;, &quot;/&quot;, &quot;{{&quot; Ja &quot;}}&quot; pole sarjade nimetamisel lubatud {0}",
 Target Details,Sihtkoha üksikasjad,
 {0} already has a Parent Procedure {1}.,{0} juba on vanemamenetlus {1}.,
 API,API,
 Annual,Aastane,
 Change,Muuda,
 Contact Email,Kontakt E-,
-Export Type,Ekspordi tüüp,
 From Date,Siit kuupäev,
 Group By,Rühmita,
 Invalid URL,vigane URL,
 Landscape,Maastik,
-Last Sync On,Viimane sünkroonimine on sisse lülitatud,
 Naming Series,Nimetades Series,
 No data to export,Pole andmeid eksportimiseks,
 Portrait,Portree,
@@ -3302,7 +3242,6 @@
 Show Document,Kuva dokument,
 Show Traceback,Kuva jälgimisvõimalus,
 Video,Video,
-Webhook Secret,Webhooki saladus,
 % Of Grand Total,% Kogu summast,
 <b>Company</b> is a mandatory filter.,<b>Ettevõte</b> on kohustuslik filter.,
 <b>From Date</b> is a mandatory filter.,<b>Alates kuupäev</b> on kohustuslik filter.,
@@ -3358,7 +3297,6 @@
 BOM Comparison Tool,BOM-i võrdlusriist,
 BOM recursion: {0} cannot be child of {1},BOM-i rekursioon: {0} ei saa olla lapse {1} laps,
 BOM recursion: {0} cannot be parent or child of {1},BOM-i rekursioon: {0} ei saa olla {1} vanem ega laps,
-Back to Home,Tagasi koju,
 Back to Messages,Tagasi sõnumite juurde,
 Bank Data mapper doesn't exist,Pangaandmete kaardistajat pole olemas,
 Bank Details,Panga andmed,
@@ -3420,7 +3358,6 @@
 Currency,Valuuta,
 Current Status,Praegune seis,
 Customer PO,Kliendi PO,
-Customize,Kohanda,
 Daily,Iga päev,
 Date,Kuupäev,
 Date of Birth cannot be greater than Joining Date.,Sünnikuupäev ei saa olla suurem kui liitumiskuupäev.,
@@ -3454,7 +3391,6 @@
 ERPNext could not find any matching payment entry,ERPNext ei leidnud sobivat maksekirjet,
 Earliest Age,Varasem vanus,
 Edit Details,Redigeeri üksikasju,
-Edit Profile,Muuda profiili,
 Either GST Transporter ID or Vehicle No is required if Mode of Transport is Road,"Kui transpordiliik on maantee, pole nõutav GST vedaja ID või sõiduki nr",
 Email,E-kiri,
 Email Campaigns,E-posti kampaaniad,
@@ -3482,7 +3418,6 @@
 Fetch Items from Warehouse,Toodete laost toomine,
 Fetching...,Toomine ...,
 Field,väli,
-File Manager,Failihaldur,
 Filters,Filtrid,
 Finding linked payments,Lingitud maksete leidmine,
 Fleet Management,Fleet Management,
@@ -3521,7 +3456,6 @@
 Incorrect Warehouse,Vale ladu,
 Invalid Barcode. There is no Item attached to this barcode.,Kehtetu vöötkood. Sellele vöötkoodile pole lisatud üksust.,
 Invalid credentials,Kehtetud mandaadid,
-Invite as User,Kutsu Kasutaja,
 Issue Priority.,Väljaandmise prioriteet.,
 Issue Type.,Väljaande tüüp.,
 "It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","Tundub, et serveri riba konfiguratsiooniga on probleem. Ebaõnnestumise korral tagastatakse summa teie kontole.",
@@ -3564,7 +3498,6 @@
 New Invoice,Uus arve,
 New Payment,Uus makse,
 New release date should be in the future,Uus väljalaskekuupäev peaks olema tulevikus,
-Newsletter,Infobülletään,
 No Account matched these filters: {},Ükski konto ei vastanud nendele filtritele: {},
 No communication found.,Suhtlust ei leitud.,
 No correct answer is set for {0},{0} jaoks pole õiget vastust seatud,
@@ -3640,7 +3573,6 @@
 Please setup a default bank account for company {0},Seadistage ettevõtte {0} vaikekonto arvelduskonto,
 Please specify,Palun täpsusta,
 Please specify a {0},Palun täpsustage {0},lead
-Printing,Trükkimine,
 Priority,Prioriteet,
 Priority has been changed to {0}.,Prioriteet on muudetud väärtuseks {0}.,
 Priority {0} has been repeated.,Prioriteeti {0} on korratud.,
@@ -3649,7 +3581,6 @@
 Project,Project,
 Provide the academic year and set the starting and ending date.,Esitage õppeaasta ja määrake algus- ja lõppkuupäev.,
 Public token is missing for this bank,Selle panga jaoks puudub avalik luba,
-Publish,Avalda,
 Publish 1 Item,Avaldage 1 üksus,
 Publish Items,Avalda üksusi,
 Publish More Items,Avalda rohkem üksusi,
@@ -3677,7 +3608,6 @@
 Reconciled,Leppinud,
 Recruitment,Värbamine,
 Red,Red,
-Refreshing,Värskendav,
 Release date must be in the future,Väljalaskekuupäev peab olema tulevikus,
 Relieving Date must be greater than or equal to Date of Joining,Vabastamiskuupäev peab olema liitumiskuupäevast suurem või sellega võrdne,
 Rename,Nimeta,
@@ -3721,7 +3651,6 @@
 Search for a payment,Makse otsimine,
 Search for anything ...,Otsige midagi ...,
 Search results for,Otsi tulemusi,
-Select All,Vali kõik,
 Select Difference Account,Valige Erinevuste konto,
 Select a Default Priority.,Valige vaikimisi prioriteet.,
 Select a company,Valige ettevõte,
@@ -3740,11 +3669,9 @@
 Service Level Agreement has been changed to {0}.,Teenuse taseme leping on muudetud väärtuseks {0}.,
 Service Level Agreement was reset.,Teenuse taseme leping lähtestati.,
 Service Level Agreement with Entity Type {0} and Entity {1} already exists.,Teenuse taseme leping üksuse tüübiga {0} ja olemiga {1} on juba olemas.,
-Set,Seadke,
 Set Meta Tags,Määrake metasildid,
 Set {0} in company {1},Määrake ettevõttes {1} {0},
 Setup,Setup,
-Setup Wizard,Setup Wizard,
 Shift Management,Shift Management,
 Show Future Payments,Kuva tulevased maksed,
 Show Linked Delivery Notes,Kuva lingitud saatelehed,
@@ -3815,7 +3742,6 @@
 Unreconciled,Leppimata,
 Unsupported GST Category for E-Way Bill JSON generation,Toetamata GST-kategooria E-Way Bill JSON-i põlvkonna jaoks,
 Update,Uuenda,
-Update Details,Uuenda üksikasju,
 Update Taxes for Items,Uuendage üksuste makse,
 "Upload a bank statement, link or reconcile a bank account","Laadige üles pangaväljavõte, linkige või ühendage pangakonto",
 Upload a statement,Laadige avaldus üles,
@@ -3839,7 +3765,6 @@
 XML Files Processed,Töödeldakse XML-faile,
 Year,Aasta,
 Yearly,Iga-aastane,
-You,Sa,
 You are not allowed to enroll for this course,Sellel kursusel ei ole lubatud registreeruda,
 You are not enrolled in program {0},Te ei ole programmis {0},
 You can Feature upto 8 items.,Saate Featureerida kuni 8 eset.,
@@ -3856,7 +3781,6 @@
 e-Way Bill already exists for this document,e-Way Bill on selle dokumendi jaoks juba olemas,
 woocommerce - {0},veebikaubandus - {0},
 {0} Coupon used are {1}. Allowed quantity is exhausted,Kasutatav kupong on {1}. Lubatud kogus on ammendatud,
-{0} Name,{0} Nimi,
 {0} Operations: {1},{0} Toimingud: {1},
 {0} bank transaction(s) created,{0} pangatehing on loodud,
 {0} bank transaction(s) created and {1} errors,{0} pangatehing on loodud ja {1} vigu,
@@ -3875,17 +3799,13 @@
 Total Income,Kogutulu,
 Total Income This Year,Selle aasta kogutulud,
 Barcode,Vöötkood,
-Bold,Julge,
-Center,Keskpunkt,
 Clear,Selge,
-Comment,Kommenteeri,
 Comments,Kommentaarid,
 DocType,DocType,
 Download,Lae alla,
 Left,Vasakule,
 Link,Link,
 New,Uus,
-Not Found,Ei leitud,
 Print,Prindi,
 Reference Name,Viitenimi,
 Refresh,Värskenda,
@@ -3908,7 +3828,6 @@
 Email Id,Email ID,
 No,Ei ole,
 Reference Doctype,Viide DocType,
-User Id,Kasutaja ID,
 Yes,Jah,
 Actual ,Tegelik,
 Add to cart,Lisa ostukorvi,
@@ -4304,7 +4223,6 @@
 e.g Adjustments for:,nt korrigeerimised:,
 Section Subtotal,Jaotis Vaheartikkel,
 Section Footer,Sektsiooni jalus,
-Position,Positsioon,
 Cash Flow Mapping,Rahavoogude kaardistamine,
 Select Maximum Of 1,Valige maksimaalselt 1,
 Is Finance Cost,Kas rahakulu,
@@ -4936,7 +4854,6 @@
 Previous Business Day,Eelmine tööpäev,
 Next Business Day,Järgmine tööpäev,
 Urgent,Urgent,
-Crop,Kärpima,
 Crop Name,Taime nimetus,
 Scientific Name,Teaduslik nimi,
 "You can define all the tasks which need to carried out for this crop here. The day field is used to mention the day on which the task needs to be carried out, 1 being the 1st day, etc.. ","Saate määratleda kõik selle põllukultuuri jaoks vajalikud ülesanded siin. Päeva väli kasutatakse selleks, et mainida ülesannet täitmise päeva, 1 on 1. päev jne.",
@@ -5441,7 +5358,6 @@
 To TIme,Et aeg,
 Course End Date,Muidugi End Date,
 Course Topic,Kursuse teema,
-Topic,teema,
 Topic Name,Teema nimi,
 Education Settings,Hariduse seaded,
 Current Academic Year,Jooksva õppeaasta,
@@ -5516,7 +5432,6 @@
 Check this if the Student is residing at the Institute's Hostel.,"Märgi see, kui õpilane on elukoht instituudi Hostel.",
 Walking,kõndimine,
 Institute's Bus,Instituudi buss,
-Public Transport,Ühistransport,
 Self-Driving Vehicle,Isesõitva Sõiduki,
 Pick/Drop by Guardian,Pick / Drop Guardian,
 Enrolled courses,Kursustega,
@@ -5697,7 +5612,6 @@
 Default Cost Center,Vaikimisi Cost Center,
 Undeposited Funds Account,Rahuldamata rahaliste vahendite konto,
 Shopify Log,Shopify Logi,
-Request Data,Taotlege andmeid,
 Shopify Settings,Shopifyi seadeid,
 status html,olek html,
 Enable Shopify,Luba Shopify,
@@ -5817,7 +5731,6 @@
 Exercise Instructions,Harjutusjuhised,
 Exercise Video,Treeningvideo,
 Exercise Steps,Harjutusetapid,
-Steps,Sammud,
 Steps Table,Sammude tabel,
 Exercise Type Step,Harjutuse tüübi samm,
 Max number of visit,Maksimaalne külastuse arv,
@@ -6001,7 +5914,6 @@
 Patient Encounter Symptom,Patsiendi kohtumise sümptom,
 HLC-PMR-.YYYY.-,HLC-PMR-.YYYY.-,
 Attach Medical Record,Lisage haigusleht,
-Reference DocType,Viide DocType,
 Spouse,Abikaasa,
 Family,Perekond,
 Schedule Details,Ajakava üksikasjad,
@@ -6983,16 +6895,8 @@
 HTML / Banner that will show on the top of product list.,HTML / Banner mis näitavad peal toodet nimekirja.,
 Set prefix for numbering series on your transactions,Määra eesliide numeratsiooni seeria oma tehingute,
 Setup Series,Setup Series,
-Select Transaction,Vali Tehing,
-Help HTML,Abi HTML,
-Series List for this Transaction,Seeria nimekiri selle Tehing,
-User must always select,Kasutaja peab alati valida,
-Check this if you want to force the user to select a series before saving. There will be no default if you check this.,"Märgi see, kui soovid sundida kasutajal valida rida enne salvestamist. Ei toimu vaikimisi, kui te vaadata seda.",
 Update Series,Värskenda Series,
 Change the starting / current sequence number of an existing series.,Muuda algus / praegune järjenumber olemasoleva seeria.,
-Prefix,Eesliide,
-This is the number of the last created transaction with this prefix,See on mitmeid viimase loodud tehingu seda prefiksit,
-Update Series Number,Värskenda seerianumbri,
 Quotation Lost Reason,Tsitaat Lost Reason,
 A third party distributor / dealer / commission agent / affiliate / reseller who sells the companies products for a commission.,"Kolmas isik levitaja / edasimüüja / vahendaja / partner / edasimüüja, kes müüb ettevõtted tooted vahendustasu.",
 Sales Partner Name,Müük Partner nimi,
@@ -7687,7 +7591,6 @@
 Warehouse wise Item Balance Age and Value,Ladu tark Punkt Balance Vanus ja väärtus,
 Work Order Stock Report,Töökorralduse aruanne,
 Work Orders in Progress,Käimasolevad töökorraldused,
-Validation Error,Valideerimisviga,
 Automatically Process Deferred Accounting Entry,Töötle ajatatud raamatupidamise kanne automaatselt,
 Bank Clearance,Panga kliiring,
 Bank Clearance Detail,Panga kliiringu üksikasjad,
@@ -7724,45 +7627,7 @@
 Therapy Plan: ,Teraapiakava:,
 Total Counts Targeted: ,Sihitud arv kokku:,
 Total Counts Completed: ,Lõpetatud loendeid kokku:,
-Andaman and Nicobar Islands,Andamani ja Nicobari saared,
-Andhra Pradesh,Andhra Pradesh,
-Arunachal Pradesh,Arunachal Pradesh,
-Assam,Assam,
-Bihar,Bihar,
-Chandigarh,Chandigarh,
-Chhattisgarh,Chhattisgarh,
-Dadra and Nagar Haveli,Dadra ja Nagar Haveli,
-Daman and Diu,Daman ja Diu,
-Delhi,Delhi,
-Goa,Goa,
-Gujarat,Gujarat,
-Haryana,Haryana,
-Himachal Pradesh,Himachal Pradesh,
-Jammu and Kashmir,Jammu ja Kashmir,
-Jharkhand,Jharkhand,
-Karnataka,Karnataka,
-Kerala,Kerala,
-Lakshadweep Islands,Lakshadweepi saared,
-Madhya Pradesh,Madhya Pradesh,
-Maharashtra,Maharashtra,
-Manipur,Manipur,
-Meghalaya,Meghalaya,
-Mizoram,Mizoram,
-Nagaland,Nagaland,
-Odisha,Odisha,
-Other Territory,Muu territoorium,
-Pondicherry,Pondicherry,
-Punjab,Punjab,
-Rajasthan,Rajasthan,
-Sikkim,Sikkim,
-Tamil Nadu,Tamil Nadu,
-Telangana,Telangana,
-Tripura,Tripura,
-Uttar Pradesh,Uttar Pradesh,
-Uttarakhand,Uttarakhand,
-West Bengal,Lääne-Bengal,
 Is Mandatory,On kohustuslik,
-Published on,Avaldatud,
 Service Received But Not Billed,"Teenus saadud, kuid arveldamata",
 Deferred Accounting Settings,Edasilükatud raamatupidamise seaded,
 Book Deferred Entries Based On,Broneeri edasilükatud kanded selle põhjal,
@@ -8035,8 +7900,6 @@
 Worksheet Instructions,Töölehe juhised,
 Result Legend Print,Tulemus Legendi print,
 Print Position,Prindipositsioon,
-Bottom,Alumine,
-Top,Üles,
 Both,Mõlemad,
 Result Legend,Tulemuste legend,
 Lab Tests,Lab testid,
@@ -8081,12 +7944,10 @@
 Approvers,Heakskiitjad,
 The first Approver in the list will be set as the default Approver.,Loendi esimene heakskiitja määratakse vaikimisi kinnitajaks.,
 Shift Request Approver,Vahetustaotluse kinnitaja,
-PAN Number,PAN-number,
 Provident Fund Account,Providence Fundi konto,
 MICR Code,MICR-kood,
 Repay unclaimed amount from salary,Tagasimakstud summa palgast tagasi maksta,
 Deduction from salary,Palgast mahaarvamine,
-Expired Leaves,Aegunud lehed,
 If this is not checked the loan by default will be considered as a Demand Loan,"Kui seda ei kontrollita, käsitatakse laenu vaikimisi nõudmislaenuna",
 This account is used for booking loan repayments from the borrower and also disbursing loans to the borrower,Seda kontot kasutatakse laenusaaja tagasimaksete broneerimiseks ja ka laenuvõtjale laenude väljamaksmiseks,
 This account is capital account which is used to allocate capital for loan disbursal account ,"See konto on kapitalikonto, mida kasutatakse kapitali eraldamiseks laenu väljamaksekontole",
@@ -8844,3 +8705,41 @@
 Creating Purchase Order ...,Ostutellimuse loomine ...,
 "Select a Supplier from the Default Suppliers of the items below. On selection, a Purchase Order will be made against items belonging to the selected Supplier only.",Valige allpool olevate üksuste vaiketarnijatest tarnija. Valiku alusel tehakse ostutellimus ainult valitud tarnijale kuuluvate kaupade kohta.,
 Row #{}: You must select {} serial numbers for item {}.,Rida nr {}: peate valima {} üksuse seerianumbrid {}.,
+Add Comment,Lisa kommentaar,
+More...,Rohkem ...,
+Notes,Märkused,
+Payment Gateway,Payment Gateway,
+Payment Gateway Name,Makse gateway nimi,
+Payments,Maksed,
+Plan Name,Plaani nimi,
+Portal,Portal,
+Scan Barcode,Skaneeri vöötkood,
+Some information is missing,Mõned andmed puuduvad,
+Successful,Edukas,
+Tools,Töövahendid,
+Use Sandbox,Kasuta liivakasti,
+Busy,Hõivatud,
+Completed By,Lõpule jõudnud,
+Payment Failed,makse ebaõnnestus,
+Column {0},Veerg {0},
+Field Mapping,Väljade kaardistamine,
+Not Specified,Pole täpsustatud,
+Update Type,Värskenduse tüüp,
+Dr,Dr,
+End Time,End Time,
+Fetching...,Toomine ...,
+"It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","Tundub, et serveri riba konfiguratsiooniga on probleem. Ebaõnnestumise korral tagastatakse summa teie kontole.",
+Looks like someone sent you to an incomplete URL. Please ask them to look into it.,"Paistab, et keegi saatis teile mittetäielik URL. Palun paluge uurida seda.",
+Master,kapten,
+Pay,Maksma,
+You can also copy-paste this link in your browser,Võite kopeeri see link oma brauseri,
+Verified By,Kontrollitud,
+Invalid naming series (. missing) for {0},Kehtetu nimede seeria (. Puudub) domeenile {0},
+Phone Number,Telefoninumber,
+Account SID,Konto SID,
+Global Defaults,Global Vaikeväärtused,
+Is Mandatory,On kohustuslik,
+WhatsApp,WhatsApp,
+Make a call,Helistage,
+Approve,kinnitama,
+Reject,tagasi lükkama,
diff --git a/erpnext/translations/fa.csv b/erpnext/translations/fa.csv
index 4c5ab80..530965d 100644
--- a/erpnext/translations/fa.csv
+++ b/erpnext/translations/fa.csv
@@ -113,7 +113,6 @@
 Add Items,اضافه کردن محصولات,
 Add Leads,اضافه کردن موارد,
 Add Multiple Tasks,اضافه کردن کارهای چندگانه,
-Add Row,اضافه کردن ردیف,
 Add Sales Partners,اضافه کردن همکاران فروش,
 Add Serial No,اضافه کردن سریال بدون,
 Add Students,اضافه کردن دانش آموزان,
@@ -211,9 +210,7 @@
 An error occurred during the update process,یک خطا در طول فرایند به روز رسانی رخ داد,
 "An item exists with same name ({0}), please change the item group name or rename the item",یک مورد را با همین نام وجود دارد ({0})، لطفا نام گروه مورد تغییر یا تغییر نام آیتم,
 Analyst,روانکاو,
-Analytics,تجزیه و تحلیل ترافیک,
 Annual Billing: {0},صدور صورت حساب سالانه: {0},
-Anonymous,ناشناس,
 Another Budget record '{0}' already exists against {1} '{2}' and account '{3}' for fiscal year {4},یکی دیگر از حسابهای بودجه {0} در حال حاضر در برابر {1} &#39;{2}&#39; و حساب &#39;{3}&#39; برای سال مالی {4} وجود دارد,
 Another Period Closing Entry {0} has been made after {1},یکی دیگر از ورودی اختتامیه دوره {0} شده است پس از ساخته شده {1},
 Another Sales Person {0} exists with the same Employee id,یک نفر دیگر فروش {0} با شناسه کارمند همان وجود دارد,
@@ -283,14 +280,12 @@
 Attendance not submitted for {0} as {1} on leave.,حضور به دلیل {0} به عنوان {1} در بازنشستگی ارائه نشده است.,
 Attribute table is mandatory,جدول ویژگی الزامی است,
 Attribute {0} selected multiple times in Attributes Table,ویژگی {0} چند بار در صفات جدول انتخاب,
-Author,نویسنده,
 Authorized Signatory,امضای مجاز,
 Auto Material Requests Generated,درخواست مواد تولید خودکار,
 Auto Repeat,خودکار تکرار,
 Auto repeat document updated,تکرار خودکار سند به روز شد,
 Automotive,خودرو,
 Available,در دسترس,
-Available Leaves,برگهای موجود,
 Available Qty,در دسترس تعداد,
 Available Selling,فروش موجود,
 Available for use date is required,برای تاریخ استفاده لازم است,
@@ -340,7 +335,6 @@
 Base URL,URL پایه,
 Based On,بر اساس,
 Based On Payment Terms,براساس شرایط پرداخت,
-Basic,پایه,
 Batch,دسته,
 Batch Entries,ورودی های دسته ای,
 Batch ID is mandatory,دسته ID الزامی است,
@@ -361,7 +355,6 @@
 Billable Hours,ساعت قابل پرداخت,
 Billed,فاکتور شده,
 Billed Amount,مقدار فاکتور شده,
-Billing,صدور صورت حساب,
 Billing Address,نشانی صورتحساب,
 Billing Address is same as Shipping Address,آدرس صورتحساب همان آدرس حمل و نقل است,
 Billing Amount,مقدار حسابداری,
@@ -560,7 +553,6 @@
 Consumed Qty,مصرف تعداد,
 Consumer Products,محصولات مصرفی,
 Contact,تماس,
-Contact Details,اطلاعات تماس,
 Contact Us,تماس با ما,
 Content,مقدار,
 Content Masters,کارشناسی ارشد محتوا,
@@ -715,7 +707,6 @@
 Date of Joining,تاریخ پیوستن,
 Date of Joining must be greater than Date of Birth,تاریخ پیوستن باید بیشتر از تاریخ تولد شود,
 Date of Transaction,تاریخ معامله,
-Datetime,زمان قرار,
 Day,روز,
 Debit,بدهی,
 Debit ({0}),بده ({0}),
@@ -874,7 +865,6 @@
 Employee cannot report to himself.,کارمند نمی تواند به خود گزارش دهید.,
 Employee {0} has already applied for {1} between {2} and {3} : ,کارکنان {0} قبلا برای {1} بین {2} و {3} درخواست شده است:,
 Employee {0} of grade {1} have no default leave policy,کارمند {0} درجه {1} هیچ خط مشی پیش فرض ترک ندارد,
-Enable,قادر ساختن,
 Enable / disable currencies.,فعال / غیر فعال کردن ارز.,
 Enabled,فعال,
 "Enabling 'Use for Shopping Cart', as Shopping Cart is enabled and there should be at least one Tax Rule for Shopping Cart",فعال کردن «استفاده برای سبد خرید، به عنوان سبد خرید فعال باشد و باید حداقل یک قانون مالیاتی برای سبد خرید وجود داشته باشد,
@@ -905,7 +895,6 @@
 Error: Not a valid id?,خطا: نه یک شناسه معتبر است؟,
 Estimated Cost,هزینه تخمین زده شده,
 "Even if there are multiple Pricing Rules with highest priority, then following internal priorities are applied:",حتی اگر قوانین قیمت گذاری های متعدد را با بالاترین اولویت وجود دارد، سپس زیر اولویت های داخلی می شود:,
-Event,واقعه,
 Exchange Gain/Loss,تبادل کاهش / افزایش,
 Exchange Rate Revaluation master.,استاد ارزشیابی نرخ ارز.,
 Exchange Rate must be same as {0} {1} ({2}),نرخ ارز باید به همان صورت {0} {1} ({2}),
@@ -1032,7 +1021,6 @@
 From value must be less than to value in row {0},از مقدار باید کمتر از ارزش در ردیف شود {0},
 From {0} | {1} {2},از {0} | {1} {2},
 Fulfillment,انجام,
-Full,پر شده,
 Full Name,نام و نام خانوادگی,
 Fully Depreciated,به طور کامل مستهلک,
 Furnitures and Fixtures,مبلمان و لامپ,
@@ -1133,7 +1121,6 @@
 Hub Sync ID,شناسه همگام سازی هاب,
 Human Resource,منابع انسانی,
 Human Resources,منابع انسانی,
-IFSC Code,کد IFSC,
 IGST Amount,مقدار IGST,
 IP Address,نشانی آیپی,
 ITC Available (whether in full op part),ITC موجود (چه در بخش کامل عمل),
@@ -1185,7 +1172,6 @@
 Ineligible ITC,ITC واجد شرایط نیست,
 Initiated,آغاز,
 Inpatient Record,ضبط بستری,
-Insert,درج,
 Installation Note,نصب و راه اندازی توجه داشته باشید,
 Installation Note {0} has already been submitted,نصب و راه اندازی {0} توجه داشته باشید در حال حاضر ارائه شده است,
 Installation date cannot be before delivery date for Item {0},تاریخ نصب و راه اندازی نمی تواند قبل از تاریخ تحویل برای مورد است {0},
@@ -1197,7 +1183,6 @@
 Insurance Start date should be less than Insurance End date,تاریخ بیمه شروع باید کمتر از تاریخ پایان باشد بیمه,
 Integrated Tax,مالیات یکپارچه,
 Inter-State Supplies,لوازم بین دولتی,
-Interests,منافع,
 Internet Publishing,انتشارات اینترنت,
 Intra-State Supplies,لوازم داخل کشور,
 Introduction,معرفی,
@@ -1316,7 +1301,6 @@
 Lab testing datetime cannot be before collection datetime,datetime آزمایشی آزمایش قبل از تاریخ date collection نمی تواند باشد,
 Label,برچسب,
 Laboratory,آزمایشگاه,
-Language Name,نام زبان,
 Large,بزرگ,
 Last Communication,ارتباطات آخرین,
 Last Communication Date,آخرین تاریخ ارتباطات,
@@ -1347,8 +1331,6 @@
 Letter Heads for print templates.,سران نامه برای قالب چاپ.,
 Level,سطح,
 Liability,مسئوليت,
-License,مجوز,
-Limit,حد,
 Limit Crossed,محدودیت عبور,
 Link to Material Request,پیوند به درخواست مواد,
 List of all share transactions,فهرست همه تراکنشهای اشتراکی,
@@ -1359,7 +1341,6 @@
 Loans (Liabilities),وام (بدهی),
 Loans and Advances (Assets),وام و پیشرفت (دارایی),
 Local,محلی,
-Log,ورود,
 Logs for maintaining sms delivery status,سیاهههای مربوط به حفظ وضعیت تحویل اس ام اس,
 Lost,از دست رفته,
 Lost Reasons,دلایل گمشده,
@@ -1445,7 +1426,6 @@
 Medical Department,گروه پزشکی,
 Medical Record,پرونده پزشکی,
 Medium,متوسط,
-Meeting,ملاقات,
 Member Activity,فعالیت اعضاء,
 Member ID,شناسه عضو,
 Member Name,نام عضو,
@@ -1495,7 +1475,6 @@
 Multiple Variants,گزینه های چندگانه,
 Multiple fiscal years exist for the date {0}. Please set company in Fiscal Year,سال مالی متعدد برای تاریخ {0} وجود داشته باشد. لطفا شرکت راه در سال مالی,
 Music,موسیقی,
-My Account,حساب من,
 Name error: {0},error نام: {0},
 Name of new Account. Note: Please don't create accounts for Customers and Suppliers,نام حساب کاربری جدید. توجه: لطفا حساب برای مشتریان و تامین کنندگان ایجاد نمی,
 Name or Email is mandatory,نام و نام خانوادگی پست الکترونیک و یا اجباری است,
@@ -1538,7 +1517,6 @@
 New credit limit is less than current outstanding amount for the customer. Credit limit has to be atleast {0},حد اعتبار جدید کمتر از مقدار برجسته فعلی برای مشتری است. حد اعتبار به حداقل می شود {0},
 New task,وظیفه جدید,
 New {0} pricing rules are created,جدید {0} قوانین قیمت گذاری ایجاد می شود,
-Newsletters,خبرنامه,
 Newspaper Publishers,روزنامه,
 Next,بعد,
 Next Contact By cannot be same as the Lead Email Address,بعد تماس با نمی تواند همان آدرس ایمیل سرب,
@@ -1686,7 +1664,6 @@
 Other,دیگر,
 Other Reports,سایر گزارش,
 "Other outward supplies(Nil rated,Exempted)",سایر لوازم خارجی (امتیاز صفر ، معافیت),
-Others,دیگران,
 Out Qty,از تعداد,
 Out Value,ارزش از,
 Out of Order,خارج از سفارش,
@@ -1726,7 +1703,6 @@
 Party Type and Party is mandatory for {0} account,نوع حزب و حزب برای حساب {0} اجباری است,
 Party Type is mandatory,نوع حزب الزامی است,
 Party is mandatory,حزب الزامی است,
-Password,رمز عبور,
 Past Due Date,تاریخ تحویل گذشته,
 Patient,صبور,
 Patient Appointment,قرار ملاقات بیمار,
@@ -1784,7 +1760,6 @@
 Pharmaceutical,دارویی,
 Pharmaceuticals,داروسازی,
 Physician,پزشک,
-Pincode,Pincode,
 Place Of Supply (State/UT),محل عرضه (ایالت / UT),
 Place Order,محل سفارش,
 Plan Name,نام برنامه,
@@ -1896,7 +1871,6 @@
 Please select date,لطفا تاریخ را انتخاب کنید,
 Please select item code,لطفا کد مورد را انتخاب کنید,
 Please select month and year,لطفا ماه و سال را انتخاب کنید,
-Please select prefix first,لطفا ابتدا پیشوند انتخاب کنید,
 Please select the Company,لطفا شرکت را انتخاب کنید,
 Please select the Multiple Tier Program type for more than one collection rules.,لطفا نوع برنامه چند مرحله ای را برای بیش از یک مجموعه قوانین مجموعه انتخاب کنید.,
 Please select the assessment group other than 'All Assessment Groups',لطفا گروه ارزیابی غیر از &#39;همه گروه ارزیابی &quot;را انتخاب کنید,
@@ -1913,7 +1887,6 @@
 Please set Company filter blank if Group By is 'Company',لطفا مجموعه شرکت فیلتر خالی اگر گروه توسط است شرکت &#39;,
 Please set Default Payroll Payable Account in Company {0},لطفا پیش فرض حقوق و دستمزد پرداختنی حساب تعیین شده در شرکت {0},
 Please set Depreciation related Accounts in Asset Category {0} or Company {1},لطفا حساب مربوط استهلاک در دارایی رده {0} یا شرکت {1},
-Please set Email Address,لطفا آدرس ایمیل,
 Please set GST Accounts in GST Settings,لطفا حسابهای GST را در تنظیمات GST تنظیم کنید,
 Please set Hotel Room Rate on {},لطفا قیمت اتاق هتل را برای {} تنظیم کنید,
 Please set Number of Depreciations Booked,لطفا تعداد مجموعه ای از Depreciations رزرو,
@@ -1936,7 +1909,6 @@
 Please set the Email ID for the Student to send the Payment Request,لطفا برای شناسایی ایمیل برای دانشجو برای ارسال درخواست پرداخت تنظیم کنید,
 Please set the Item Code first,لطفا ابتدا کد مورد را تنظیم کنید,
 Please set the Payment Schedule,لطفا برنامه پرداخت را تنظیم کنید,
-Please set the series to be used.,لطفا مجموعه ای را که استفاده می کنید تنظیم کنید,
 Please set {0} for address {1},لطفا {0} را برای آدرس {1} تنظیم کنید,
 Please setup Students under Student Groups,لطفا دانشجویان را در گروه های دانشجویی قرار دهید,
 Please specify Company,لطفا شرکت مشخص,
@@ -1953,7 +1925,6 @@
 Point-of-Sale,نقطه از فروش,
 Point-of-Sale Profile,نقطه از فروش مشخصات,
 Portal,پرتال,
-Portal Settings,تنظیمات پورتال,
 Possible Supplier,کننده ممکن,
 Postal Expenses,هزینه پستی,
 Posting Date,تاریخ ارسال,
@@ -2152,12 +2123,10 @@
 Reference No is mandatory if you entered Reference Date,مرجع بدون اجباری است اگر شما وارد مرجع تاریخ,
 Reference No.,شماره مرجع.,
 Reference Number,شماره مرجع,
-Reference Owner,مرجع مالک,
 Reference Type,نوع مرجع,
 "Reference: {0}, Item Code: {1} and Customer: {2}",مرجع: {0}، کد مورد: {1} و ضوابط: {2},
 References,مراجع,
 Refresh Token,تازه کردن رمز,
-Region,منطقه,
 Register,ثبت نام,
 Rejected,رد,
 Related,مربوط,
@@ -2179,7 +2148,6 @@
 Replace BOM and update latest price in all BOMs,جایگزین BOM و به روز رسانی آخرین قیمت در تمام BOMs,
 Replied,پاسخ,
 Report,گزارش,
-Report Builder,گزارش ساز,
 Report Type,نوع گزارش,
 Report Type is mandatory,نوع گزارش الزامی است,
 Reports,گزارش ها,
@@ -2355,13 +2323,11 @@
 Same Company is entered more than once,همان شرکت است وارد بیش از یک بار,
 Same item cannot be entered multiple times.,آیتم همان نمی تواند وارد شود چند بار.,
 Same supplier has been entered multiple times,منبع همان وارد شده است چندین بار,
-Sample,نمونه,
 Sample Collection,مجموعه نمونه,
 Sample quantity {0} cannot be more than received quantity {1},مقدار نمونه {0} نمیتواند بیش از مقدار دریافتی باشد {1},
 Sanctioned,تحریم,
 Sand,شن,
 Saturday,روز شنبه,
-Saved,ذخیره,
 Saving {0},صرفه جویی در {0},
 Scan Barcode,اسکن بارکد,
 Schedule,برنامه,
@@ -2463,7 +2429,6 @@
 Series Updated,سری به روز رسانی,
 Series Updated Successfully,سری به روز رسانی با موفقیت,
 Series is mandatory,سری الزامی است,
-Series {0} already used in {1},سری {0} در حال حاضر در مورد استفاده {1},
 Service,سرویس,
 Service Level Agreement,توافق نامه سطح خدمات,
 Service Level Agreement.,توافق نامه سطح خدمات.,
@@ -2479,7 +2444,6 @@
 Set Tax Rule for shopping cart,مجموعه قوانین مالیاتی برای سبد خرید,
 Set as Closed,تنظیم به عنوان بسته,
 Set as Completed,تنظیم به عنوان تکمیل شده است,
-Set as Default,تنظیم به عنوان پیشفرض,
 Set as Lost,تنظیم به عنوان از دست رفته,
 Set as Open,تنظیم به عنوان گسترش,
 Set default inventory account for perpetual inventory,تنظیم حساب موجودی به طور پیش فرض برای موجودی دائمی,
@@ -2511,7 +2475,6 @@
 Shareholder,صاحب سهام,
 Ship To State,کشتی به دولت,
 Shipments,محموله,
-Shipping,حمل,
 Shipping Address,حمل و نقل آدرس,
 "Shipping Address does not have country, which is required for this Shipping Rule",آدرس حمل و نقل کشور ندارد، که برای این قانون حمل و نقل مورد نیاز است,
 Shipping rule only applicable for Buying,قوانین حمل و نقل فقط برای خرید قابل استفاده است,
@@ -2564,7 +2527,6 @@
 Split Batch,دسته تقسیم,
 Split Issue,موضوع تقسیم شده,
 Sports,ورزشی,
-Standard,استاندارد,
 Standard Buying,خرید استاندارد,
 Standard Selling,فروش استاندارد,
 Standard contract terms for Sales or Purchase.,شرایط قرارداد استاندارد برای فروش و یا خرید.,
@@ -2731,7 +2693,6 @@
 Terms and Conditions,شرایط و ضوابط,
 Terms and Conditions Template,شرایط و ضوابط الگو,
 Territory,منطقه,
-Test,تست,
 Thank you for your business!,از کار شما متشکرم!,
 The 'From Package No.' field must neither be empty nor it's value less than 1.,شماره &quot;از بسته بندی&quot; فیلد نباید خالی باشد و ارزش آن کمتر از 1 باشد.,
 The Brand,نام تجاری,
@@ -2848,7 +2809,6 @@
 Total (Without Tax),مجموع (بدون مالیات),
 Total Achieved,مجموع بهدستآمده,
 Total Actual,مجموع واقعی,
-Total Allocated Leaves,مجموع برگه های برگزیده,
 Total Amount,مقدار کل,
 Total Amount Credited,مبلغ کل اعتبار,
 Total Applicable Charges in Purchase Receipt Items table must be same as Total Taxes and Charges,مجموع اتهامات قابل اجرا در خرید اقلام دریافت جدول باید همان مجموع مالیات و هزینه شود,
@@ -2892,7 +2852,6 @@
 Total(Amt),مجموع (AMT),
 Total(Qty),مجموع (تعداد),
 Traceability,قابلیت ردیابی,
-Traceback,ردیابی,
 Track Leads by Lead Source.,پیگیری بر اساس منبع سرب,
 Transaction,معامله,
 Transaction Date,تاریخ تراکنش,
@@ -2930,7 +2889,6 @@
 UOM Conversion factor is required in row {0},عامل UOM تبدیل در ردیف مورد نیاز است {0},
 UOM coversion factor required for UOM: {0} in Item: {1},عامل coversion UOM مورد نیاز برای UOM: {0} در مورد: {1},
 URL,URL,
-Unable to find DocType {0},Unable to find DocType {0},
 Unable to find exchange rate for {0} to {1} for key date {2}. Please create a Currency Exchange record manually,قادر به پیدا کردن نرخ ارز برای {0} به {1} برای تاریخ های کلیدی {2}. لطفا یک رکورد ارز دستی ایجاد کنید,
 Unable to find score starting at {0}. You need to have standing scores covering 0 to 100,نمیتوان نتیجه را با {0} پیدا کرد. شما باید امتیازات ایستاده را پوشش دهید 0 تا 100,
 Unable to find variable: ,قادر به پیدا کردن متغیر نیست,
@@ -2960,7 +2918,6 @@
 Upload your letter head and logo. (you can edit them later).,آپلود سر نامه و آرم خود را. (شما می توانید آنها را بعد از ویرایش).,
 Upper Income,درآمد بالاتر,
 Use Sandbox,استفاده از گودال ماسهبازی,
-Used Leaves,برگهای مورد استفاده,
 User,کاربر,
 User ID,ID کاربر,
 User ID not set for Employee {0},ID کاربر برای کارمند تنظیم نشده {0},
@@ -3051,7 +3008,6 @@
 Website Settings,تنظیمات وب سایت,
 Wednesday,چهار شنبه,
 Week,هفته,
-Weekdays,روزهای کاری,
 Weekly,هفتگی,
 "Weight is mentioned,\nPlease mention ""Weight UOM"" too",وزن ذکر شده است، \ n لطفا ذکر &quot;وزن UOM&quot; بیش از حد,
 Welcome email sent,ایمیل ارسال,
@@ -3072,7 +3028,6 @@
 Work Order {0} must be submitted,سفارش کار {0} باید ارائه شود,
 Work Orders Created: {0},دستور کار ایجاد شده: {0},
 Work-in-Progress Warehouse is required before Submit,کار در حال پیشرفت انبار قبل از ارسال مورد نیاز است,
-Workflow,گردش کار,
 Working,کار,
 Working Hours,ساعات کاری,
 Workstation,ایستگاه های کاری,
@@ -3102,7 +3057,6 @@
 You need to be a user other than Administrator with System Manager and Item Manager roles to register on Marketplace.,برای ثبت نام در Marketplace، باید کاربر دیگری غیر از Administrator با مدیر سیستم و نقش Item باشد.,
 You need to be a user with System Manager and Item Manager roles to add users to Marketplace.,شما باید کاربر با مدیران سیستم و نقش مدیر گروه باشید تا کاربران را به Marketplace اضافه کنید.,
 You need to be a user with System Manager and Item Manager roles to register on Marketplace.,برای ثبت نام در Marketplace، باید کاربر با مدیر سیستم مدیریت و نقش آیتم باشد.,
-You need to be logged in to access this page,شما نیاز به ورود برای دسترسی به این صفحه,
 You need to enable Shopping Cart,شما نیاز به فعال کردن سبد خرید هستید,
 You will lose records of previously generated invoices. Are you sure you want to restart this subscription?,شما سوابق فاکتورهای قبلا تولید را از دست خواهید داد. آیا مطمئن هستید که می خواهید این اشتراک را مجددا راه اندازی کنید؟,
 Your Organization,سازمان شما,
@@ -3218,7 +3172,6 @@
 Assigned To,اختصاص یافته به,
 Chat,گپ زدن,
 Completed By,تکمیل شده توسط,
-County,شهرستان,
 Day of Week,روز هفته,
 "Dear System Manager,",مدیر محترم سیستم،,
 Default Value,مقدار پیش فرض,
@@ -3229,31 +3182,21 @@
 Fieldtype,Fieldtype,
 Help Articles,راهنما مقاله,
 ID,شناسه,
-Images,تصاویر,
 Import,واردات,
 Language,زبان,
 Likes,دوست دارد,
 Merge with existing,ادغام با موجود,
-Office,دفتر,
 Orientation,گرایش,
 Parent,والدین,
-Passive,غیر فعال,
 Payment Failed,پرداخت ناموفق,
-Permanent,دائمي,
 Personal,شخصی,
-Plant,گیاه,
 Post,پست,
-Postal,پستی,
 Postal Code,کد پستی,
-Previous,قبلی,
 Provider,ارائه دهنده,
 Read Only,فقط خواندنی,
 Recipient,گیرنده,
 Reviews,بررسی ها,
 Sender,فرستنده,
-Shop,فروشگاه,
-Subsidiary,فرعی,
-There is some problem with the file url: {0},بعضی از مشکل با آدرس فایل وجود دارد: {0},
 There were errors while sending email. Please try again.,بودند خطاهای هنگام ارسال ایمیل وجود دارد. لطفا دوباره تلاش کنید.,
 Values Changed,مقادیر تغییر,
 or,یا,
@@ -3280,19 +3223,16 @@
 Quality Feedback Template,الگوی بازخورد کیفیت,
 Rules for applying different promotional schemes.,قوانین استفاده از طرح های تبلیغاتی مختلف.,
 Show {0},نمایش {0},
-"Special Characters except '-', '#', '.', '/', '{{' and '}}' not allowed in naming series {0}",{0} کاراکترهای خاص به جز &quot;-&quot; ، &quot;#&quot; ، &quot;.&quot; ، &quot;/&quot; ، &quot;{{&quot; و &quot;}}&quot; در سریال نامگذاری مجاز نیستند,
 Target Details,جزئیات هدف,
 {0} already has a Parent Procedure {1}.,{0} در حال حاضر یک روش والدین {1} دارد.,
 API,API,
 Annual,سالیانه,
 Change,تغییر,
 Contact Email,تماس با ایمیل,
-Export Type,نوع صادرات,
 From Date,از تاریخ,
 Group By,دسته بندی بر اساس,
 Invalid URL,URL نامعتبر است,
 Landscape,چشم انداز,
-Last Sync On,آخرین همگام سازی در,
 Naming Series,نامگذاری سری,
 No data to export,داده ای برای صادرات وجود ندارد,
 Portrait,پرتره,
@@ -3302,7 +3242,6 @@
 Show Document,نمایش سند,
 Show Traceback,نمایش ردگیری,
 Video,فیلم,
-Webhook Secret,راز وب,
 % Of Grand Total,٪ از تعداد کل,
 <b>Company</b> is a mandatory filter.,<b>شرکت</b> فیلتر اجباری است.,
 <b>From Date</b> is a mandatory filter.,<b>از تاریخ</b> فیلتر اجباری است.,
@@ -3358,7 +3297,6 @@
 BOM Comparison Tool,ابزار مقایسه BOM,
 BOM recursion: {0} cannot be child of {1},بازگشت BOM: {0} نمی تواند فرزند {1 باشد,
 BOM recursion: {0} cannot be parent or child of {1},بازگشت BOM: {0} نمی تواند پدر و مادر یا فرزند {1 باشد,
-Back to Home,بازگشت به خانه,
 Back to Messages,بازگشت به پیام ها,
 Bank Data mapper doesn't exist,نقشه بردار داده بانکی وجود ندارد,
 Bank Details,جزئیات بانک,
@@ -3420,7 +3358,6 @@
 Currency,پول,
 Current Status,وضعیت فعلی,
 Customer PO,سفارش خرید مشتری,
-Customize,سفارشی,
 Daily,روزانه,
 Date,تاریخ,
 Date of Birth cannot be greater than Joining Date.,تاریخ تولد نمی تواند بیشتر از تاریخ عضویت باشد.,
@@ -3454,7 +3391,6 @@
 ERPNext could not find any matching payment entry,ERPNext نمی تواند هیچ ورودی پرداختی مطابق با آن را پیدا کند,
 Earliest Age,زودرس ترین سن,
 Edit Details,جزئیات ویرایش,
-Edit Profile,ویرایش پروفایل,
 Either GST Transporter ID or Vehicle No is required if Mode of Transport is Road,اگر حالت حمل و نقل جاده ای باشد ، یا GST Transporter ID یا وسیله نقلیه شماره لازم است,
 Email,پست الکترونیک,
 Email Campaigns,کمپین های ایمیل,
@@ -3482,7 +3418,6 @@
 Fetch Items from Warehouse,گرفتن موارد از انبار,
 Fetching...,واکشی ...,
 Field,رشته,
-File Manager,مدیریت فایل,
 Filters,فیلترها,
 Finding linked payments,یافتن پرداختهای مرتبط,
 Fleet Management,مدیریت ناوگان,
@@ -3521,7 +3456,6 @@
 Incorrect Warehouse,انبار نادرست,
 Invalid Barcode. There is no Item attached to this barcode.,بارکد نامعتبر است. هیچ موردی به این بارکد وصل نشده است.,
 Invalid credentials,گواهی نامه نامعتبر,
-Invite as User,دعوت به عنوان کاربر,
 Issue Priority.,اولویت شماره,
 Issue Type.,نوع مقاله.,
 "It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.",به نظر می رسد یک مشکل با پیکربندی نوار خط سرور وجود دارد. در صورت خرابی، مقدار به حساب شما بازپرداخت خواهد شد.,
@@ -3564,7 +3498,6 @@
 New Invoice,فاکتور جدید,
 New Payment,پرداخت جدید,
 New release date should be in the future,تاریخ انتشار جدید باید در آینده باشد,
-Newsletter,عضویت در خبرنامه,
 No Account matched these filters: {},هیچ حساب با این فیلترها مطابقت ندارد: {},
 No communication found.,هیچ ارتباطی یافت نشد,
 No correct answer is set for {0},هیچ پاسخ صحیحی برای {0 set تعیین نشده است,
@@ -3640,7 +3573,6 @@
 Please setup a default bank account for company {0},لطفاً یک حساب بانکی پیش فرض برای شرکت {0 تنظیم کنید,
 Please specify,لطفا مشخص کنید,
 Please specify a {0},لطفاً {0 را مشخص کنید,lead
-Printing,چاپ,
 Priority,اولویت,
 Priority has been changed to {0}.,اولویت به {0 تغییر یافته است.,
 Priority {0} has been repeated.,اولویت {0} تکرار شده است.,
@@ -3649,7 +3581,6 @@
 Project,پروژه,
 Provide the academic year and set the starting and ending date.,سال تحصیلی را تهیه کنید و تاریخ شروع و پایان را تعیین کنید.,
 Public token is missing for this bank,نشان عمومی برای این بانک وجود ندارد,
-Publish,انتشار,
 Publish 1 Item,انتشار 1 مورد,
 Publish Items,انتشار موارد,
 Publish More Items,انتشار موارد بیشتر,
@@ -3677,7 +3608,6 @@
 Reconciled,آشتی کرد,
 Recruitment,استخدام,
 Red,قرمز,
-Refreshing,تازه کردن,
 Release date must be in the future,تاریخ انتشار باید در آینده باشد,
 Relieving Date must be greater than or equal to Date of Joining,Relieve Date باید بیشتر یا مساوی تاریخ عضویت باشد,
 Rename,تغییر نام,
@@ -3721,7 +3651,6 @@
 Search for a payment,جستجوی پرداخت,
 Search for anything ...,جستجوی هر چیزی ...,
 Search results for,نتایج جستجو برای,
-Select All,انتخاب همه,
 Select Difference Account,حساب کاربری تفاوت را انتخاب کنید,
 Select a Default Priority.,اولویت پیش فرض را انتخاب کنید.,
 Select a company,شرکتی را انتخاب کنید,
@@ -3740,11 +3669,9 @@
 Service Level Agreement has been changed to {0}.,توافق نامه سطح خدمات به {0 changed تغییر یافته است.,
 Service Level Agreement was reset.,توافق نامه سطح خدمات دوباره تنظیم شد.,
 Service Level Agreement with Entity Type {0} and Entity {1} already exists.,توافق نامه سطح خدمات با نهاد نوع {0} و واحد 1} در حال حاضر وجود دارد.,
-Set,تنظیم,
 Set Meta Tags,برچسب های متا را تنظیم کنید,
 Set {0} in company {1},company 0} در شرکت {1,
 Setup,برپایی,
-Setup Wizard,راه اندازی جادوگر,
 Shift Management,مدیریت تغییر,
 Show Future Payments,نمایش پرداختهای آینده,
 Show Linked Delivery Notes,نمایش یادداشتهای تحویل پیوند شده,
@@ -3815,7 +3742,6 @@
 Unreconciled,نامشخص,
 Unsupported GST Category for E-Way Bill JSON generation,دسته پشتیبانی نشده پشتیبانی نشده برای نسل بیل بی سیم JSON,
 Update,به روز رسانی,
-Update Details,جزئیات را به روز کنید,
 Update Taxes for Items,مالیات ها را برای موارد به روز کنید,
 "Upload a bank statement, link or reconcile a bank account",بیانیه بانکی را بارگیری کنید ، پیوند دهید یا یک حساب بانکی آشتی دهید,
 Upload a statement,بیانیه را بارگذاری کنید,
@@ -3839,7 +3765,6 @@
 XML Files Processed,XML پرونده ها پردازش می شوند,
 Year,سال,
 Yearly,سالیانه,
-You,شما,
 You are not allowed to enroll for this course,شما مجاز به ثبت نام در این دوره نیستید,
 You are not enrolled in program {0},شما در برنامه ثبت نام نشده اید {0,
 You can Feature upto 8 items.,شما می توانید ویژگی های تا 8 مورد.,
@@ -3856,7 +3781,6 @@
 e-Way Bill already exists for this document,قبض e-Way قبلاً برای این سند موجود است,
 woocommerce - {0},woocommerce - {0},
 {0} Coupon used are {1}. Allowed quantity is exhausted,{0} کوپن مورد استفاده 1 {است. مقدار مجاز خسته است,
-{0} Name,{0} نام,
 {0} Operations: {1},{0} عملیات: {1,
 {0} bank transaction(s) created,transaction 0 transaction تراکنش بانکی ایجاد شده است,
 {0} bank transaction(s) created and {1} errors,transaction 0 transaction تراکنش های بانکی ایجاد شده و خطاهای 1 {,
@@ -3875,17 +3799,13 @@
 Total Income,درآمد کلی,
 Total Income This Year,درآمد کل امسال,
 Barcode,بارکد,
-Bold,جسورانه,
-Center,مرکز,
 Clear,پاک کردن,
-Comment,اظهار نظر,
 Comments,نظرات,
 DocType,DocType,
 Download,دانلود,
 Left,چپ,
 Link,ارتباط دادن,
 New,جدید,
-Not Found,پیدا نشد,
 Print,چاپ,
 Reference Name,نام مرجع,
 Refresh,تازه کردن,
@@ -3908,7 +3828,6 @@
 Email Id,آدرس ایمیل,
 No,بدون,
 Reference Doctype,Doctype مرجع,
-User Id,شناسه کاربر,
 Yes,بله,
 Actual ,واقعی,
 Add to cart,اضافه کردن به سبد,
@@ -4304,7 +4223,6 @@
 e.g Adjustments for:,به عنوان مثال تنظیمات برای:,
 Section Subtotal,زیرمجموعه بخش,
 Section Footer,پاورقی بخش,
-Position,موقعیت,
 Cash Flow Mapping,نمودار جریان نقدی,
 Select Maximum Of 1,حداکثر 1 را انتخاب کنید,
 Is Finance Cost,هزینه مالی است,
@@ -4936,7 +4854,6 @@
 Previous Business Day,روز کاری قبلی,
 Next Business Day,روز کسب و کار بعدی,
 Urgent,فوری,
-Crop,محصول,
 Crop Name,نام محصول,
 Scientific Name,نام علمی,
 "You can define all the tasks which need to carried out for this crop here. The day field is used to mention the day on which the task needs to be carried out, 1 being the 1st day, etc.. ",شما می توانید تمام وظایفی را که لازم است برای این محصول در اینجا انجام دهید تعریف کنید. فیلد روز برای اشاره به روزی که کار باید انجام شود، 1 روز اول و غیره است.,
@@ -5441,7 +5358,6 @@
 To TIme,به زمان,
 Course End Date,البته پایان تاریخ,
 Course Topic,موضوع دوره,
-Topic,موضوع,
 Topic Name,نام موضوع,
 Education Settings,تنظیمات تحصیلی,
 Current Academic Year,سال جاری علمی,
@@ -5516,7 +5432,6 @@
 Check this if the Student is residing at the Institute's Hostel.,این بررسی در صورتی که دانشجو است ساکن در خوابگاه مؤسسه است.,
 Walking,پیاده روی,
 Institute's Bus,اتوبوس موسسه,
-Public Transport,حمل و نقل عمومی,
 Self-Driving Vehicle,خودرو بدون راننده,
 Pick/Drop by Guardian,انتخاب / قطره های نگهبان,
 Enrolled courses,دوره های ثبت نام,
@@ -5697,7 +5612,6 @@
 Default Cost Center,مرکز هزینه به طور پیش فرض,
 Undeposited Funds Account,حساب صندوق غیرقانونی,
 Shopify Log,Shopify ورود,
-Request Data,درخواست داده,
 Shopify Settings,Shopify تنظیمات,
 status html,وضعیت HTML,
 Enable Shopify,فعال سازی Shopify,
@@ -5817,7 +5731,6 @@
 Exercise Instructions,دستورالعمل ورزش,
 Exercise Video,فیلم ورزش,
 Exercise Steps,مراحل ورزش,
-Steps,مراحل,
 Steps Table,جدول مراحل,
 Exercise Type Step,مرحله تمرین نوع,
 Max number of visit,حداکثر تعداد بازدید,
@@ -6001,7 +5914,6 @@
 Patient Encounter Symptom,علائم برخورد بیمار,
 HLC-PMR-.YYYY.-,HLC-PMR- .YYYY.-,
 Attach Medical Record,پرونده پزشکی را ضمیمه کنید,
-Reference DocType,DOCTYPE مرجع,
 Spouse,همسر,
 Family,خانواده,
 Schedule Details,جزئیات برنامه,
@@ -6983,16 +6895,8 @@
 HTML / Banner that will show on the top of product list.,HTML / بنر که در بالای لیست محصولات نشان خواهد داد.,
 Set prefix for numbering series on your transactions,تنظیم پیشوند برای شماره سری در معاملات خود را,
 Setup Series,راه اندازی سری,
-Select Transaction,انتخاب معامله,
-Help HTML,راهنما HTML,
-Series List for this Transaction,فهرست سری ها برای این تراکنش,
-User must always select,کاربر همیشه باید انتخاب کنید,
-Check this if you want to force the user to select a series before saving. There will be no default if you check this.,بررسی این اگر شما می خواهید به زور کاربر برای انتخاب یک سری قبل از ذخیره. خواهد شد وجود ندارد به طور پیش فرض اگر شما این تیک بزنید.,
 Update Series,به روز رسانی سری,
 Change the starting / current sequence number of an existing series.,تغییر شروع / شماره توالی فعلی از یک سری موجود است.,
-Prefix,پیشوند,
-This is the number of the last created transaction with this prefix,این تعداد از آخرین معامله ایجاد شده با این پیشوند است,
-Update Series Number,به روز رسانی سری شماره,
 Quotation Lost Reason,نقل قول را فراموش کرده اید دلیل,
 A third party distributor / dealer / commission agent / affiliate / reseller who sells the companies products for a commission.,توزیع کننده شخص ثالث / فروشنده / نماینده کمیسیون / وابسته به / نمایندگی فروش که به فروش می رساند محصولات شرکت برای کمیسیون.,
 Sales Partner Name,نام شریک فروش,
@@ -7687,7 +7591,6 @@
 Warehouse wise Item Balance Age and Value,انبار عاقل عنصر تعادل سن و ارزش,
 Work Order Stock Report,سفارش کار سفارش سفارش,
 Work Orders in Progress,دستور کار در حال پیشرفت است,
-Validation Error,خطای اعتبار سنجی,
 Automatically Process Deferred Accounting Entry,پردازش خودکار حساب کاربری معوق,
 Bank Clearance,ترخیص بانکی,
 Bank Clearance Detail,جزئیات ترخیص بانک,
@@ -7724,45 +7627,7 @@
 Therapy Plan: ,طرح درمانی:,
 Total Counts Targeted: ,تعداد کل مورد نظر:,
 Total Counts Completed: ,تعداد کل انجام شده:,
-Andaman and Nicobar Islands,جزایر آندامان و نیکوبار,
-Andhra Pradesh,آندرا پرادش,
-Arunachal Pradesh,آروناچال پرادش,
-Assam,آسام,
-Bihar,بیهار,
-Chandigarh,چندیگر,
-Chhattisgarh,چتیسگر,
-Dadra and Nagar Haveli,دادرا و ناگار هاولی,
-Daman and Diu,دامن و دیو,
-Delhi,دهلی,
-Goa,گوا,
-Gujarat,گجرات,
-Haryana,هاریانا,
-Himachal Pradesh,هیماچال پرادش,
-Jammu and Kashmir,جامو و کشمیر,
-Jharkhand,جارخند,
-Karnataka,کارناتاکا,
-Kerala,کرالا,
-Lakshadweep Islands,جزایر لاکشادویپ,
-Madhya Pradesh,مادیا پرادش,
-Maharashtra,ماهاراشترا,
-Manipur,مانیپور,
-Meghalaya,مگالایا,
-Mizoram,میزورام,
-Nagaland,ناگالند,
-Odisha,ادیشا,
-Other Territory,قلمرو دیگر,
-Pondicherry,Pondicherry,
-Punjab,پنجاب,
-Rajasthan,راجستان,
-Sikkim,سیکیم,
-Tamil Nadu,تامیل نادو,
-Telangana,تلانگانا,
-Tripura,تریپورا,
-Uttar Pradesh,اوتار پرادش,
-Uttarakhand,اوتاراکند,
-West Bengal,بنگال غربی,
 Is Mandatory,اجباری است,
-Published on,منتشر شده در,
 Service Received But Not Billed,خدمات دریافت شده اما قبض نشده است,
 Deferred Accounting Settings,تنظیمات حسابداری معوق,
 Book Deferred Entries Based On,مطالب به تعویق افتادن کتاب بر اساس,
@@ -8035,8 +7900,6 @@
 Worksheet Instructions,دستورالعمل کاربرگ,
 Result Legend Print,نتیجه چاپ افسانه,
 Print Position,موقعیت چاپ,
-Bottom,پایین,
-Top,بالا,
 Both,هر دو,
 Result Legend,نتیجه افسانه,
 Lab Tests,تست های آزمایشگاهی,
@@ -8081,12 +7944,10 @@
 Approvers,متقن,
 The first Approver in the list will be set as the default Approver.,اولین تأیید کننده در لیست به عنوان تأیید کننده پیش فرض تنظیم می شود.,
 Shift Request Approver,تأیید کننده درخواست شیفت,
-PAN Number,شماره PAN,
 Provident Fund Account,حساب صندوق تأمین مالی,
 MICR Code,کد MICR,
 Repay unclaimed amount from salary,مبلغ مطالبه نشده از حقوق را بازپرداخت کنید,
 Deduction from salary,کسر از حقوق,
-Expired Leaves,برگهای منقضی شده,
 If this is not checked the loan by default will be considered as a Demand Loan,اگر این مورد بررسی نشود ، وام به طور پیش فرض به عنوان وام تقاضا در نظر گرفته می شود,
 This account is used for booking loan repayments from the borrower and also disbursing loans to the borrower,این حساب برای رزرو بازپرداخت وام از وام گیرنده و همچنین پرداخت وام به وام گیرنده استفاده می شود,
 This account is capital account which is used to allocate capital for loan disbursal account ,این حساب حساب سرمایه ای است که برای تخصیص سرمایه برای حساب پرداخت وام استفاده می شود,
@@ -8844,3 +8705,41 @@
 Creating Purchase Order ...,در حال ایجاد سفارش خرید ...,
 "Select a Supplier from the Default Suppliers of the items below. On selection, a Purchase Order will be made against items belonging to the selected Supplier only.",از تامین کنندگان پیش فرض موارد زیر یک تأمین کننده انتخاب کنید. هنگام انتخاب ، سفارش خرید فقط در مورد کالاهای متعلق به تنها تامین کننده انتخاب شده انجام می شود.,
 Row #{}: You must select {} serial numbers for item {}.,ردیف شماره {}: شما باید {} شماره سریال را برای مورد {} انتخاب کنید.,
+Add Comment,اضافه کردن نظر,
+More...,بیش...,
+Notes,یادداشت,
+Payment Gateway,دروازه پرداخت,
+Payment Gateway Name,نام دروازه پرداخت,
+Payments,پرداخت,
+Plan Name,نام برنامه,
+Portal,پرتال,
+Scan Barcode,اسکن بارکد,
+Some information is missing,برخی از اطلاعات از دست رفته است,
+Successful,موفق شدن,
+Tools,ابزار,
+Use Sandbox,استفاده از گودال ماسهبازی,
+Busy,مشغول,
+Completed By,تکمیل شده توسط,
+Payment Failed,پرداخت ناموفق,
+Column {0},ستون {0,
+Field Mapping,نقشه برداری درست,
+Not Specified,مشخص نشده است,
+Update Type,نوع بروزرسانی,
+Dr,دکتر,
+End Time,پایان زمان,
+Fetching...,واکشی ...,
+"It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.",به نظر می رسد یک مشکل با پیکربندی نوار خط سرور وجود دارد. در صورت خرابی، مقدار به حساب شما بازپرداخت خواهد شد.,
+Looks like someone sent you to an incomplete URL. Please ask them to look into it.,به نظر می رسد کسی که شما را به URL های ناقص ارسال می شود. لطفا از آنها بخواهید به آن نگاه کنید.,
+Master,استاد,
+Pay,پرداخت,
+You can also copy-paste this link in your browser,شما همچنین می توانید این لینک را در مرورگر خود کپی-پیست کنید,
+Verified By,تایید شده توسط,
+Invalid naming series (. missing) for {0},سری نامگذاری نامعتبر است (. وجود ندارد) برای {0},
+Phone Number,شماره تلفن,
+Account SID,حساب SID,
+Global Defaults,به طور پیش فرض جهانی,
+Is Mandatory,اجباری است,
+WhatsApp,واتس اپ,
+Make a call,تماس بگیر,
+Approve,تایید,
+Reject,رد کردن,
diff --git a/erpnext/translations/fi.csv b/erpnext/translations/fi.csv
index c26441b..6e9380c 100644
--- a/erpnext/translations/fi.csv
+++ b/erpnext/translations/fi.csv
@@ -113,7 +113,6 @@
 Add Items,Lisää nimikkeitä,
 Add Leads,Lisää johtajia,
 Add Multiple Tasks,Lisää useita tehtäviä,
-Add Row,Lisää rivi,
 Add Sales Partners,Lisää myyntikumppanit,
 Add Serial No,Lisää sarjanumero,
 Add Students,Lisää Opiskelijat,
@@ -211,9 +210,7 @@
 An error occurred during the update process,Päivitysprosessissa tapahtui virhe,
 "An item exists with same name ({0}), please change the item group name or rename the item","Samanniminen nimike on jo olemassa ({0}), vaihda nimikeryhmän nimeä tai nimeä nimike uudelleen",
 Analyst,Analyytikko,
-Analytics,Analytiikka,
 Annual Billing: {0},Vuotuinen laskutus: {0},
-Anonymous,anonyymi,
 Another Budget record '{0}' already exists against {1} '{2}' and account '{3}' for fiscal year {4},Toinen budjetin tietue {0} on jo olemassa {1} &quot;{2}&quot; ja tili {3} &quot;tilivuonna {4},
 Another Period Closing Entry {0} has been made after {1},toinen jakson sulkukirjaus {0} on tehty {1} jälkeen,
 Another Sales Person {0} exists with the same Employee id,Toinen myyjä {0} on jo olemassa samalla tunnuksella,
@@ -283,14 +280,12 @@
 Attendance not submitted for {0} as {1} on leave.,Läsnäoloa ei ole lähetetty {0} as {1} lomalla.,
 Attribute table is mandatory,Taito pöytä on pakollinen,
 Attribute {0} selected multiple times in Attributes Table,Taito {0} valittu useita kertoja määritteet taulukossa,
-Author,kirjailija,
 Authorized Signatory,Valtuutettu allekirjoitus,
 Auto Material Requests Generated,Automaattinen hankintapyyntö luotu,
 Auto Repeat,Automaattinen toisto,
 Auto repeat document updated,Automaattinen toistuva asiakirja päivitetty,
 Automotive,Automotive,
 Available,saatavissa,
-Available Leaves,Saatavilla olevat lehdet,
 Available Qty,saatava yksikkömäärä,
 Available Selling,Saatavana myyntiin,
 Available for use date is required,Käytettävä päivämäärä on pakollinen,
@@ -340,7 +335,6 @@
 Base URL,Base URL,
 Based On,perustuu,
 Based On Payment Terms,Perustuu maksuehtoihin,
-Basic,perustiedot,
 Batch,erä,
 Batch Entries,Erämerkinnät,
 Batch ID is mandatory,Erätunnuksesi on pakollinen,
@@ -361,7 +355,6 @@
 Billable Hours,Laskutettavat tunnit,
 Billed,laskutetaan,
 Billed Amount,laskutettu,
-Billing,Laskutus,
 Billing Address,Laskutusosoite,
 Billing Address is same as Shipping Address,Laskutusosoite on sama kuin toimitusosoite,
 Billing Amount,laskutuksen arvomäärä,
@@ -560,7 +553,6 @@
 Consumed Qty,käytetty yksikkömäärä,
 Consumer Products,Kuluttajatuotteet,
 Contact,Yhteyshenkilö,
-Contact Details,"yhteystiedot, lisätiedot",
 Contact Us,Ota meihin yhteyttä,
 Content,sisältö,
 Content Masters,Sisällön mestarit,
@@ -715,7 +707,6 @@
 Date of Joining,liittymispäivä,
 Date of Joining must be greater than Date of Birth,liittymispäivä tulee olla syntymäpäivän jälkeen,
 Date of Transaction,Tapahtuman päivämäärä,
-Datetime,Päiväysaika,
 Day,Päivä,
 Debit,debet,
 Debit ({0}),Debit ({0}),
@@ -874,7 +865,6 @@
 Employee cannot report to himself.,työntekijä ei voi raportoida itselleen,
 Employee {0} has already applied for {1} between {2} and {3} : ,Työntekijä {0} on jo hakenut {1} välillä {2} ja {3}:,
 Employee {0} of grade {1} have no default leave policy,Työntekijä {0} palkkaluokkaan {1} ei ole oletuslupapolitiikkaa,
-Enable,ota käyttöön,
 Enable / disable currencies.,"aktivoi / poista käytöstä, valuutat",
 Enabled,Aktiivinen,
 "Enabling 'Use for Shopping Cart', as Shopping Cart is enabled and there should be at least one Tax Rule for Shopping Cart","""Käytä ostoskorille"" otettu käyttöön: Ostoskoritoiminto on käytössä ja ostoskorille tulisi olla ainakin yksi määritelty veroasetus.",
@@ -905,7 +895,6 @@
 Error: Not a valid id?,virhe: tunnus ei ole kelvollinen,
 Estimated Cost,Kustannusarvio,
 "Even if there are multiple Pricing Rules with highest priority, then following internal priorities are applied:","Vaikka korkeimmalla prioriteetilla olisi useita hinnoittelusääntöjä, seuraavia sisäisiä prioriteettejä noudatetaan:",
-Event,Tapahtuma,
 Exchange Gain/Loss,Exchange voitto / tappio,
 Exchange Rate Revaluation master.,Valuuttakurssien uudelleenarvostus mestari.,
 Exchange Rate must be same as {0} {1} ({2}),Valuuttakurssi on oltava sama kuin {0} {1} ({2}),
@@ -1032,7 +1021,6 @@
 From value must be less than to value in row {0},arvosta täytyy olla pienempi kuin arvo rivillä {0},
 From {0} | {1} {2},Keneltä {0} | {1} {2},
 Fulfillment,täyttymys,
-Full,Koko,
 Full Name,Koko nimi,
 Fully Depreciated,täydet poistot,
 Furnitures and Fixtures,Huonekaluja ja kalusteet,
@@ -1133,7 +1121,6 @@
 Hub Sync ID,Hub-synkronointitunnus,
 Human Resource,henkilöstöresurssi,
 Human Resources,Henkilöstöresurssit,
-IFSC Code,IFSC-koodi,
 IGST Amount,IGST Määrä,
 IP Address,IP-osoite,
 ITC Available (whether in full op part),ITC käytettävissä (onko täysin op-osa),
@@ -1185,7 +1172,6 @@
 Ineligible ITC,Kelpaamaton ITC,
 Initiated,aloitettu,
 Inpatient Record,Potilashoito,
-Insert,aseta,
 Installation Note,asennus huomautus,
 Installation Note {0} has already been submitted,Asennustosite {0} on jo vahvistettu,
 Installation date cannot be before delivery date for Item {0},asennuspäivä ei voi olla ennen tuotteen toimitusaikaa {0},
@@ -1197,7 +1183,6 @@
 Insurance Start date should be less than Insurance End date,Vakuutus Aloituspäivä pitäisi olla alle Insurance Päättymispäivä,
 Integrated Tax,Integroitu vero,
 Inter-State Supplies,Valtioiden väliset tarvikkeet,
-Interests,etu,
 Internet Publishing,internet julkaisu,
 Intra-State Supplies,Valtioiden sisäiset tarvikkeet,
 Introduction,esittely,
@@ -1316,7 +1301,6 @@
 Lab testing datetime cannot be before collection datetime,Lab-testaus datetime ei voi olla ennen keräys datetime,
 Label,Nimike,
 Laboratory,laboratorio,
-Language Name,Kielen Nimi,
 Large,Suuri,
 Last Communication,Viimeisin yhteydenotto,
 Last Communication Date,Viime yhteyspäivä,
@@ -1347,8 +1331,6 @@
 Letter Heads for print templates.,Tulosteotsakkeet mallineille,
 Level,Taso,
 Liability,vastattavat,
-License,lisenssi,
-Limit,Raja,
 Limit Crossed,Raja ylitetty,
 Link to Material Request,Linkki materiaalihakemukseen,
 List of all share transactions,Luettelo kaikista osakekaupoista,
@@ -1359,7 +1341,6 @@
 Loans (Liabilities),lainat (vastattavat),
 Loans and Advances (Assets),Lainat ja ennakot (vastaavat),
 Local,paikallinen,
-Log,Loki,
 Logs for maintaining sms delivery status,Lokit ylläpitämiseksi sms toimituksen tila,
 Lost,Hävitty,
 Lost Reasons,Menetyt syyt,
@@ -1445,7 +1426,6 @@
 Medical Department,Lääketieteen osasto,
 Medical Record,Sairauskertomus,
 Medium,Keskikokoinen,
-Meeting,Tapaaminen,
 Member Activity,Jäsentoiminta,
 Member ID,jäsentunnus,
 Member Name,Jäsen nimi,
@@ -1495,7 +1475,6 @@
 Multiple Variants,Useita vaihtoehtoja,
 Multiple fiscal years exist for the date {0}. Please set company in Fiscal Year,Useita verovuoden olemassa päivämäärän {0}. Määritä yritys verovuonna,
 Music,musiikki,
-My Account,Oma tili,
 Name error: {0},Nimivirhe: {0},
 Name of new Account. Note: Please don't create accounts for Customers and Suppliers,Nimi uusi tili. Huomautus: Älä luo asiakastilejä ja Toimittajat,
 Name or Email is mandatory,Nimi tai Sähköposti on pakollinen,
@@ -1538,7 +1517,6 @@
 New credit limit is less than current outstanding amount for the customer. Credit limit has to be atleast {0},Uusi luottoraja on pienempi kuin nykyinen jäljellä asiakkaalle. Luottoraja on oltava atleast {0},
 New task,Uusi tehtävä,
 New {0} pricing rules are created,Uudet {0} hinnasäännöt luodaan,
-Newsletters,uutiskirjeet,
 Newspaper Publishers,Newspaper Publishers,
 Next,Seuraava,
 Next Contact By cannot be same as the Lead Email Address,Seuraava Ota By voi olla sama kuin Lead Sähköpostiosoite,
@@ -1686,7 +1664,6 @@
 Other,muut,
 Other Reports,Muut raportit,
 "Other outward supplies(Nil rated,Exempted)","Muut ulkoiset tarvikkeet (nolla, vapautettu)",
-Others,Muut,
 Out Qty,ulkona yksikkömäärä,
 Out Value,out Arvo,
 Out of Order,Epäkunnossa,
@@ -1726,7 +1703,6 @@
 Party Type and Party is mandatory for {0} account,Puhelimen tyyppi ja puolue ovat pakollisia {0} -tilille,
 Party Type is mandatory,Osapuoli tyyppi on pakollinen,
 Party is mandatory,Osapuoli on pakollinen,
-Password,Salasana,
 Past Due Date,Erääntymispäivä,
 Patient,potilas,
 Patient Appointment,Potilaan nimittäminen,
@@ -1784,7 +1760,6 @@
 Pharmaceutical,lääkealan,
 Pharmaceuticals,Lääketeollisuuden tuotteet,
 Physician,Lääkäri,
-Pincode,PIN koodi,
 Place Of Supply (State/UT),Toimituspaikka (osavaltio / UT),
 Place Order,Tee tilaus,
 Plan Name,Plan Name,
@@ -1896,7 +1871,6 @@
 Please select date,Valitse päivämäärä,
 Please select item code,Valitse tuotekoodi,
 Please select month and year,Ole hyvä ja valitse kuukausi ja vuosi,
-Please select prefix first,Ole hyvä ja valitse etuliite ensin,
 Please select the Company,Valitse yritys,
 Please select the Multiple Tier Program type for more than one collection rules.,Valitse Usean tason ohjelmatyyppi useille keräyssäännöille.,
 Please select the assessment group other than 'All Assessment Groups',Valitse arvioinnin muu ryhmä kuin &quot;Kaikki arviointi Ryhmien,
@@ -1913,7 +1887,6 @@
 Please set Company filter blank if Group By is 'Company',Aseta Yritysfiltteri tyhjäksi jos Ryhmittelyperuste on &#39;yritys&#39;,
 Please set Default Payroll Payable Account in Company {0},Aseta Default Payroll maksullisia tilin Yrityksen {0},
 Please set Depreciation related Accounts in Asset Category {0} or Company {1},Aseta poistot liittyvät tilien instrumenttikohtaisilla {0} tai Company {1},
-Please set Email Address,Määritä sähköpostiosoite,
 Please set GST Accounts in GST Settings,Aseta GST-tilit GST-asetuksissa,
 Please set Hotel Room Rate on {},Aseta hotellihuoneen hinta {},
 Please set Number of Depreciations Booked,Aseta varattujen poistojen määrä,
@@ -1936,7 +1909,6 @@
 Please set the Email ID for the Student to send the Payment Request,Aseta opiskelijalle sähköpostiosoite lähettämään maksupyyntö,
 Please set the Item Code first,Aseta alkiotunnus ensin,
 Please set the Payment Schedule,Aseta maksuaikataulu,
-Please set the series to be used.,Aseta sarja käytettäväksi.,
 Please set {0} for address {1},Aseta osoitteelle {1} {0},
 Please setup Students under Student Groups,Aseta opiskelijat opiskelijaryhmissä,
 Please specify Company,Ilmoitathan Company,
@@ -1953,7 +1925,6 @@
 Point-of-Sale,Point-of-Sale,
 Point-of-Sale Profile,Point-of-Sale Profile,
 Portal,Portaali,
-Portal Settings,Portaalin asetukset,
 Possible Supplier,Mahdollinen toimittaja,
 Postal Expenses,Postituskulut,
 Posting Date,Tositepäivä,
@@ -2152,12 +2123,10 @@
 Reference No is mandatory if you entered Reference Date,viitenumero vaaditaan mykäli viitepäivä on annettu,
 Reference No.,Viitenumero,
 Reference Number,Viitenumero,
-Reference Owner,Viite omistaja,
 Reference Type,Viite tyyppi,
 "Reference: {0}, Item Code: {1} and Customer: {2}","Viite: {0}, kohta Koodi: {1} ja Asiakas: {2}",
 References,Viitteet,
 Refresh Token,Päivitä Token,
-Region,alue,
 Register,Rekisteröidy,
 Rejected,Hylätty,
 Related,Asiaan liittyvää,
@@ -2179,7 +2148,6 @@
 Replace BOM and update latest price in all BOMs,Korvaa BOM ja päivitä viimeisin hinta kaikkiin BOM-paketteihin,
 Replied,Vastasi,
 Report,Raportti,
-Report Builder,Raportin luontityökalu,
 Report Type,raportin tyyppi,
 Report Type is mandatory,raportin tyyppi vaaditaan,
 Reports,Raportit,
@@ -2355,13 +2323,11 @@
 Same Company is entered more than once,Sama yhtiö on merkitty enemmän kuin kerran,
 Same item cannot be entered multiple times.,Samaa kohdetta ei voi syöttää useita kertoja.,
 Same supplier has been entered multiple times,Sama toimittaja on syötetty useita kertoja,
-Sample,Näyte,
 Sample Collection,Näytteenottokokoelma,
 Sample quantity {0} cannot be more than received quantity {1},Näytteen määrä {0} ei voi olla suurempi kuin vastaanotettu määrä {1},
 Sanctioned,seuraamuksia,
 Sand,Hiekka,
 Saturday,Lauantai,
-Saved,Tallennettu,
 Saving {0},Tallenna {0},
 Scan Barcode,Skannaa viivakoodi,
 Schedule,Aikataulu,
@@ -2463,7 +2429,6 @@
 Series Updated,Sarja päivitetty,
 Series Updated Successfully,Sarja päivitetty onnistuneesti,
 Series is mandatory,Sarjat ovat pakollisia,
-Series {0} already used in {1},Sarjat {0} on käytetty {1},
 Service,Palvelu,
 Service Level Agreement,Palvelun tasoa koskeva sopimus,
 Service Level Agreement.,Palvelun tasoa koskeva sopimus.,
@@ -2479,7 +2444,6 @@
 Set Tax Rule for shopping cart,Aseta Tax Rule ostoskoriin,
 Set as Closed,Aseta suljetuksi,
 Set as Completed,Aseta valmiiksi,
-Set as Default,aseta oletukseksi,
 Set as Lost,Aseta kadonneeksi,
 Set as Open,Aseta avoimeksi,
 Set default inventory account for perpetual inventory,Aseta oletus varaston osuus investointikertymämenetelmän,
@@ -2511,7 +2475,6 @@
 Shareholder,osakas,
 Ship To State,Laiva valtioon,
 Shipments,Toimitukset,
-Shipping,Toimitus,
 Shipping Address,Toimitusosoite,
 "Shipping Address does not have country, which is required for this Shipping Rule","Toimitusosoitteella ei ole maata, joka vaaditaan tässä lähetyssäännössä",
 Shipping rule only applicable for Buying,Osto koskee vain toimitussääntöä,
@@ -2564,7 +2527,6 @@
 Split Batch,Split Erä,
 Split Issue,Split Issue,
 Sports,Urheilu,
-Standard,perus,
 Standard Buying,Perusosto,
 Standard Selling,perusmyynti,
 Standard contract terms for Sales or Purchase.,"perussopimusehdot, myynti tai osto",
@@ -2731,7 +2693,6 @@
 Terms and Conditions,Ehdot ja säännöt,
 Terms and Conditions Template,Ehdot ja säännöt mallipohja,
 Territory,Alue,
-Test,Testi,
 Thank you for your business!,Kiitos liiketoimintaa!,
 The 'From Package No.' field must neither be empty nor it's value less than 1.,&quot;Paketin nro&quot; kenttä ei saa olla tyhjä eikä sen arvo pienempi kuin 1.,
 The Brand,Brändi,
@@ -2848,7 +2809,6 @@
 Total (Without Tax),Yhteensä (ilman veroa),
 Total Achieved,"Yhteensä, saavutettu",
 Total Actual,Kiinteä summa yhteensä,
-Total Allocated Leaves,Kokonaisrajaiset lehdet,
 Total Amount,Yhteensä,
 Total Amount Credited,Laskettu kokonaismäärä,
 Total Applicable Charges in Purchase Receipt Items table must be same as Total Taxes and Charges,Saapumistositteen riveillä olevat maksut pitää olla sama kuin verot ja maksut osiossa,
@@ -2892,7 +2852,6 @@
 Total(Amt),yhteensä (summa),
 Total(Qty),yhteensä (yksikkömäärä),
 Traceability,jäljitettävyys,
-Traceback,Jäljittää,
 Track Leads by Lead Source.,Ratajohdot johdon lähteellä.,
 Transaction,tapahtuma,
 Transaction Date,tapahtuma päivä,
@@ -2930,7 +2889,6 @@
 UOM Conversion factor is required in row {0},Mittayksikön muuntokerroin vaaditaan rivillä {0},
 UOM coversion factor required for UOM: {0} in Item: {1},Mittayksikön muuntokerroin vaaditaan yksikölle {0} tuotteessa: {1},
 URL,URL,
-Unable to find DocType {0},DocType {0} ei löytynyt,
 Unable to find exchange rate for {0} to {1} for key date {2}. Please create a Currency Exchange record manually,Pysty löytämään vaihtokurssi {0} ja {1} avaimen päivämäärä {2}. Luo Valuutanvaihto ennätys manuaalisesti,
 Unable to find score starting at {0}. You need to have standing scores covering 0 to 100,"Pistettä ei löydy {0} alkaen. Sinun on oltava pysyviä pisteitä, jotka kattavat 0-100",
 Unable to find variable: ,Muuttujaa ei voitu löytää:,
@@ -2960,7 +2918,6 @@
 Upload your letter head and logo. (you can edit them later).,Tuo kirjeen ylätunniste ja logo. (voit muokata niitä myöhemmin),
 Upper Income,Ylemmät tulot,
 Use Sandbox,Käytä Sandbox,
-Used Leaves,Käytetyt lehdet,
 User,käyttäjä,
 User ID,käyttäjätunnus,
 User ID not set for Employee {0},Käyttäjätunnusta ei asetettu työntekijälle {0},
@@ -3051,7 +3008,6 @@
 Website Settings,Verkkosivuston asetukset,
 Wednesday,Keskiviikko,
 Week,Viikko,
-Weekdays,Arkisin,
 Weekly,Viikoittain,
 "Weight is mentioned,\nPlease mention ""Weight UOM"" too","Paino on mainittu, \ ssa mainitse myös ""Painoyksikkö""",
 Welcome email sent,Tervetuloa sähköposti lähetetään,
@@ -3072,7 +3028,6 @@
 Work Order {0} must be submitted,Työjärjestys {0} on toimitettava,
 Work Orders Created: {0},Luodut työmääräykset: {0},
 Work-in-Progress Warehouse is required before Submit,Keskeneräisten varasto vaaditaan ennen vahvistusta,
-Workflow,Työketju,
 Working,Työskennellään,
 Working Hours,Työaika,
 Workstation,työasema,
@@ -3102,7 +3057,6 @@
 You need to be a user other than Administrator with System Manager and Item Manager roles to register on Marketplace.,"Sinun on oltava muu kuin Järjestelmänvalvoja ja System Manager- ja Item Manager -roolit, jotta voit rekisteröityä Marketplacessa.",
 You need to be a user with System Manager and Item Manager roles to add users to Marketplace.,"Sinun on oltava käyttäjä, jolla on System Manager- ja Item Manager -roolit, jotta käyttäjät voidaan lisätä Marketplace-sivustoon.",
 You need to be a user with System Manager and Item Manager roles to register on Marketplace.,"Sinun on oltava käyttäjä, jolla System Manager- ja Item Manager -roolit ovat rekisteröityneet Marketplacessa.",
-You need to be logged in to access this page,Sinun täytyy olla kirjautuneena päästäksesi tälle sivulle,
 You need to enable Shopping Cart,Sinun tulee aktivoida ostoskori,
 You will lose records of previously generated invoices. Are you sure you want to restart this subscription?,Menetät aiemmin luotujen laskujen tiedot. Haluatko varmasti aloittaa tämän tilauksen uudelleen?,
 Your Organization,Organisaation,
@@ -3218,7 +3172,6 @@
 Assigned To,nimetty,
 Chat,Pikaviestintä,
 Completed By,Täydentänyt,
-County,Lääni,
 Day of Week,Viikonpäivä,
 "Dear System Manager,","järjestelmänhallito,",
 Default Value,oletus arvo,
@@ -3229,31 +3182,21 @@
 Fieldtype,Kenttätyyppi,
 Help Articles,Ohje Artikkelit,
 ID,ID,
-Images,Kuvat,
 Import,Tuo tietoja,
 Language,Kieli,
 Likes,Tykkäykset,
 Merge with existing,Yhdistä nykyiseen,
-Office,Toimisto,
 Orientation,Suuntautuminen,
 Parent,Vanhempi,
-Passive,Passiivinen,
 Payment Failed,Maksu epäonnistui,
-Permanent,Pysyvä,
 Personal,Henkilökohtainen,
-Plant,Laite,
 Post,Posti,
-Postal,Posti-,
 Postal Code,Postikoodi,
-Previous,Edellinen,
 Provider,toimittaja,
 Read Only,Vain luku,
 Recipient,vastaanottaja,
 Reviews,Arvostelut,
 Sender,Lähettäjä,
-Shop,Osta,
-Subsidiary,tytäryhtiö,
-There is some problem with the file url: {0},Tiedosto-URL:issa  {0} on ongelma,
 There were errors while sending email. Please try again.,"Lähetettäessä sähköpostia oli virheitä, yrita uudelleen",
 Values Changed,arvot Muuttunut,
 or,tai,
@@ -3280,19 +3223,16 @@
 Quality Feedback Template,Laadun palautteen malli,
 Rules for applying different promotional schemes.,Säännöt erilaisten myynninedistämisjärjestelmien soveltamisesta.,
 Show {0},Näytä {0},
-"Special Characters except '-', '#', '.', '/', '{{' and '}}' not allowed in naming series {0}","Erikoismerkit paitsi &quot;-&quot;, &quot;#&quot;, &quot;.&quot;, &quot;/&quot;, &quot;{{&quot; Ja &quot;}}&quot; eivät ole sallittuja nimeämissarjoissa {0}",
 Target Details,Kohteen yksityiskohdat,
 {0} already has a Parent Procedure {1}.,{0}: llä on jo vanhempainmenettely {1}.,
 API,API,
 Annual,Vuotuinen,
 Change,muutos,
 Contact Email,"yhteystiedot, sähköposti",
-Export Type,Vientityyppi,
 From Date,Päivästä,
 Group By,Ryhmittele,
 Invalid URL,Virheellinen URL,
 Landscape,Maisema,
-Last Sync On,Viimeisin synkronointi päällä,
 Naming Series,Nimeä sarjat,
 No data to export,Ei vietäviä tietoja,
 Portrait,Muotokuva,
@@ -3302,7 +3242,6 @@
 Show Document,Näytä asiakirja,
 Show Traceback,Näytä jäljitys,
 Video,Video,
-Webhook Secret,Webhook Secret,
 % Of Grand Total,% Kokonaismäärästä,
 <b>Company</b> is a mandatory filter.,<b>Yritys</b> on pakollinen suodatin.,
 <b>From Date</b> is a mandatory filter.,<b>Alkaen päivämäärä</b> on pakollinen suodatin.,
@@ -3358,7 +3297,6 @@
 BOM Comparison Tool,BOM-vertailutyökalu,
 BOM recursion: {0} cannot be child of {1},BOM-rekursio: {0} ei voi olla käyttäjän {1} lapsi,
 BOM recursion: {0} cannot be parent or child of {1},BOM-rekursio: {0} ei voi olla {1} vanhempi tai lapsi,
-Back to Home,Takaisin kotiin,
 Back to Messages,Takaisin viesteihin,
 Bank Data mapper doesn't exist,Pankkitietojen kartoittajaa ei ole,
 Bank Details,Pankkitiedot,
@@ -3420,7 +3358,6 @@
 Currency,Valuutta,
 Current Status,nykyinen tila,
 Customer PO,Asiakas PO,
-Customize,Mukauta,
 Daily,Päivittäinen,
 Date,Päiväys,
 Date of Birth cannot be greater than Joining Date.,Syntymäaika ei voi olla suurempi kuin Liittymispäivä.,
@@ -3454,7 +3391,6 @@
 ERPNext could not find any matching payment entry,ERPNext ei löytänyt vastaavaa maksumerkintää,
 Earliest Age,Varhaisin ikä,
 Edit Details,Muokkaa tietoja,
-Edit Profile,Muokkaa profiilia,
 Either GST Transporter ID or Vehicle No is required if Mode of Transport is Road,"Joko GST-kuljettajan tunnus tai ajoneuvonumero vaaditaan, jos kuljetusmuoto on tie",
 Email,Sähköpostiosoite,
 Email Campaigns,Sähköposti-kampanjat,
@@ -3482,7 +3418,6 @@
 Fetch Items from Warehouse,Hae tuotteet varastosta,
 Fetching...,Haetaan ...,
 Field,Ala,
-File Manager,Tiedostonhallinta,
 Filters,Suodattimet,
 Finding linked payments,Linkitettyjen maksujen löytäminen,
 Fleet Management,Kaluston hallinta,
@@ -3521,7 +3456,6 @@
 Incorrect Warehouse,Väärä varasto,
 Invalid Barcode. There is no Item attached to this barcode.,Virheellinen viivakoodi. Tähän viivakoodiin ei ole liitetty tuotetta.,
 Invalid credentials,Virheelliset käyttöoikeustiedot,
-Invite as User,Kutsu Käyttäjä,
 Issue Priority.,Aihejärjestys.,
 Issue Type.,Julkaisutyyppi.,
 "It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","Näyttää siltä, että palvelimen raidakokoonpano on ongelma. Vahingossa summa palautetaan tilillesi.",
@@ -3564,7 +3498,6 @@
 New Invoice,Uusi lasku,
 New Payment,Uusi maksu,
 New release date should be in the future,Uuden julkaisupäivän pitäisi olla tulevaisuudessa,
-Newsletter,Tiedote,
 No Account matched these filters: {},Mikään tili ei vastannut näitä suodattimia: {},
 No communication found.,Viestintää ei löytynyt.,
 No correct answer is set for {0},Oikealle vastaukselle ei ole asetettu {0},
@@ -3640,7 +3573,6 @@
 Please setup a default bank account for company {0},Aseta oletuspankkitili yritykselle {0},
 Please specify,Ilmoitathan,
 Please specify a {0},Määritä {0},lead
-Printing,Tulostus,
 Priority,prioriteetti,
 Priority has been changed to {0}.,Prioriteetti on muutettu arvoksi {0}.,
 Priority {0} has been repeated.,Prioriteetti {0} on toistettu.,
@@ -3649,7 +3581,6 @@
 Project,Projekti,
 Provide the academic year and set the starting and ending date.,Anna lukuvuosi ja aseta alkamis- ja päättymispäivä.,
 Public token is missing for this bank,Tästä pankista puuttuu julkinen tunnus,
-Publish,Julkaista,
 Publish 1 Item,Julkaise 1 tuote,
 Publish Items,Julkaise kohteita,
 Publish More Items,Julkaise lisää kohteita,
@@ -3677,7 +3608,6 @@
 Reconciled,täsmäytetty,
 Recruitment,rekrytointi,
 Red,Punainen,
-Refreshing,Virkistävä,
 Release date must be in the future,Julkaisupäivän on oltava tulevaisuudessa,
 Relieving Date must be greater than or equal to Date of Joining,Päivityspäivämäärän on oltava suurempi tai yhtä suuri kuin Liittymispäivä,
 Rename,Nimeä uudelleen,
@@ -3721,7 +3651,6 @@
 Search for a payment,Etsi maksu,
 Search for anything ...,Etsi mitään ...,
 Search results for,Etsi tuloksia,
-Select All,Valitse kaikki,
 Select Difference Account,Valitse Ero-tili,
 Select a Default Priority.,Valitse oletusprioriteetti.,
 Select a company,Valitse yritys,
@@ -3740,11 +3669,9 @@
 Service Level Agreement has been changed to {0}.,Palvelutasosopimus on muutettu arvoon {0}.,
 Service Level Agreement was reset.,Palvelutasosopimus palautettiin.,
 Service Level Agreement with Entity Type {0} and Entity {1} already exists.,Palvelutasosopimus entiteettityypin {0} ja kokonaisuuden {1} kanssa on jo olemassa.,
-Set,Aseta,
 Set Meta Tags,Aseta metakoodit,
 Set {0} in company {1},Aseta {0} yrityksessä {1},
 Setup,Asetukset,
-Setup Wizard,Määritys työkalu,
 Shift Management,Vaihtonhallinta,
 Show Future Payments,Näytä tulevat maksut,
 Show Linked Delivery Notes,Näytä linkitetyt toimitusilmoitukset,
@@ -3815,7 +3742,6 @@
 Unreconciled,Täsmäyttämätön,
 Unsupported GST Category for E-Way Bill JSON generation,Ei tuettu GST-luokka E-Way Bill JSON-sukupolvelle,
 Update,Muuta,
-Update Details,Päivitä yksityiskohdat,
 Update Taxes for Items,Päivitä kohteiden verot,
 "Upload a bank statement, link or reconcile a bank account","Lataa pankkitili, liitä tai sovi pankkitili",
 Upload a statement,Lataa lausunto,
@@ -3839,7 +3765,6 @@
 XML Files Processed,XML-tiedostot prosessoitu,
 Year,vuosi,
 Yearly,Vuosi,
-You,Sinä,
 You are not allowed to enroll for this course,Et voi ilmoittautua tälle kurssille,
 You are not enrolled in program {0},Et ole ilmoittautunut ohjelmaan {0},
 You can Feature upto 8 items.,Voit esitellä jopa 8 kohdetta.,
@@ -3856,7 +3781,6 @@
 e-Way Bill already exists for this document,e-Way Bill on jo olemassa tälle asiakirjalle,
 woocommerce - {0},verkkokauppa - {0},
 {0} Coupon used are {1}. Allowed quantity is exhausted,{0} Käytetty kuponki on {1}. Sallittu määrä on käytetty loppuun,
-{0} Name,{0} Nimi,
 {0} Operations: {1},{0} Operaatiot: {1},
 {0} bank transaction(s) created,{0} pankkitapahtumat luotu,
 {0} bank transaction(s) created and {1} errors,{0} pankkitapahtumat luotu ja {1} virheitä,
@@ -3875,17 +3799,13 @@
 Total Income,Kokonaistulot,
 Total Income This Year,Tämän vuoden kokonaistulot,
 Barcode,Viivakoodi,
-Bold,Lihavoitu,
-Center,keskus,
 Clear,Asia selvä,
-Comment,Kommentti,
 Comments,Kommentit,
 DocType,DOCTYPE,
 Download,ladata,
 Left,Ei työsuhteessa,
 Link,Linkki,
 New,Uusi,
-Not Found,Not Found,
 Print,Tulosta,
 Reference Name,Viitenimi,
 Refresh,Lataa uudelleen,
@@ -3908,7 +3828,6 @@
 Email Id,sähköpostitunnus,
 No,Ei,
 Reference Doctype,Viite-tietuetyyppi,
-User Id,Käyttäjätunnus,
 Yes,Kyllä,
 Actual ,kiinteä määrä,
 Add to cart,Lisää koriin,
@@ -4304,7 +4223,6 @@
 e.g Adjustments for:,esim. Säätö:,
 Section Subtotal,Osasto Yhteensä,
 Section Footer,Osa-alatunniste,
-Position,asento,
 Cash Flow Mapping,Kassavirran kartoitus,
 Select Maximum Of 1,Valitse maksimi 1,
 Is Finance Cost,Onko rahoituskustannus,
@@ -4936,7 +4854,6 @@
 Previous Business Day,Edellinen työpäivä,
 Next Business Day,Seuraava työpäivä,
 Urgent,Kiireellinen,
-Crop,sato,
 Crop Name,Rajaa nimi,
 Scientific Name,Tieteellinen nimi,
 "You can define all the tasks which need to carried out for this crop here. The day field is used to mention the day on which the task needs to be carried out, 1 being the 1st day, etc.. ","Voit määrittää kaikki tehtävät, jotka on suoritettava tälle satoa varten. Päiväkenttään mainitaan päivämäärä, jona tehtävä on suoritettava, 1 on ensimmäinen päivä jne.",
@@ -5441,7 +5358,6 @@
 To TIme,Aikaan,
 Course End Date,Tietenkin Päättymispäivä,
 Course Topic,Kurssin aihe,
-Topic,Aihe,
 Topic Name,Aihe Name,
 Education Settings,Koulutusasetukset,
 Current Academic Year,Nykyinen Lukuvuosi,
@@ -5516,7 +5432,6 @@
 Check this if the Student is residing at the Institute's Hostel.,Valitse tämä jos opiskelija oleskelee instituutin Hostel.,
 Walking,Kävely,
 Institute's Bus,Instituutin bussi,
-Public Transport,Julkinen liikenne,
 Self-Driving Vehicle,Itsestään kulkevaa ajoneuvoa,
 Pick/Drop by Guardian,Pick / Drop Guardian,
 Enrolled courses,ilmoittautunut kursseja,
@@ -5697,7 +5612,6 @@
 Default Cost Center,Oletus kustannuspaikka,
 Undeposited Funds Account,Undeposited Funds Account,
 Shopify Log,Shopify Log,
-Request Data,Pyydä tietoja,
 Shopify Settings,Shopify Asetukset,
 status html,status html,
 Enable Shopify,Ota Shopify käyttöön,
@@ -5817,7 +5731,6 @@
 Exercise Instructions,Harjoitusohjeet,
 Exercise Video,Liikunta video,
 Exercise Steps,Harjoitusvaiheet,
-Steps,Askeleet,
 Steps Table,Vaiheitaulukko,
 Exercise Type Step,Harjoitustyypin vaihe,
 Max number of visit,Vierailun enimmäismäärä,
@@ -6001,7 +5914,6 @@
 Patient Encounter Symptom,Potilaan kohtaamisoire,
 HLC-PMR-.YYYY.-,HLC-PMR-.YYYY.-,
 Attach Medical Record,Liitä potilastiedot,
-Reference DocType,Viite DocType,
 Spouse,puoliso,
 Family,Perhe,
 Schedule Details,Aikataulun tiedot,
@@ -6983,16 +6895,8 @@
 HTML / Banner that will show on the top of product list.,HTML / banneri joka näkyy tuoteluettelon päällä,
 Set prefix for numbering series on your transactions,Aseta sarjojen numeroinnin etuliite tapahtumiin,
 Setup Series,Sarjojen määritys,
-Select Transaction,Valitse tapahtuma,
-Help HTML,"HTML, ohje",
-Series List for this Transaction,Sarjalistaus tähän tapahtumaan,
-User must always select,Käyttäjän tulee aina valita,
-Check this if you want to force the user to select a series before saving. There will be no default if you check this.,"täppää mikäli haluat pakottaa käyttäjän valitsemaan sarjan ennen tallennusta, täpästä ei synny oletusta",
 Update Series,Päivitä sarjat,
 Change the starting / current sequence number of an existing series.,muuta aloitusta / nykyselle järjestysnumerolle tai olemassa oleville sarjoille,
-Prefix,Etuliite,
-This is the number of the last created transaction with this prefix,Viimeinen tapahtuma on tehty tällä numerolla ja tällä etuliitteellä,
-Update Series Number,Päivitä sarjanumerot,
 Quotation Lost Reason,"Tarjous hävitty, syy",
 A third party distributor / dealer / commission agent / affiliate / reseller who sells the companies products for a commission.,"Ulkopuolinen välittäjä / edustaja / agentti / jälleenmyyjä, joka myy yrityksen tavaraa provisiolla.",
 Sales Partner Name,Myyntikumppani nimi,
@@ -7687,7 +7591,6 @@
 Warehouse wise Item Balance Age and Value,Varasto viisas Item Balance Age and Value,
 Work Order Stock Report,Työjärjestyksen raportti,
 Work Orders in Progress,Työjärjestykset ovat käynnissä,
-Validation Error,Vahvistusvirhe,
 Automatically Process Deferred Accounting Entry,Käsittele laskennallinen kirjanpito automaattisesti,
 Bank Clearance,Pankin selvitys,
 Bank Clearance Detail,Pankkitilien tarkistus,
@@ -7724,45 +7627,7 @@
 Therapy Plan: ,Hoitosuunnitelma:,
 Total Counts Targeted: ,Kohdistetut määrät yhteensä:,
 Total Counts Completed: ,Suoritetut kokonaismäärät yhteensä:,
-Andaman and Nicobar Islands,Andamanin ja Nicobarin saaret,
-Andhra Pradesh,Andhra Pradesh,
-Arunachal Pradesh,Arunachal Pradesh,
-Assam,Assam,
-Bihar,Bihar,
-Chandigarh,Chandigarh,
-Chhattisgarh,Chhattisgarh,
-Dadra and Nagar Haveli,Dadra ja Nagar Haveli,
-Daman and Diu,Daman ja Diu,
-Delhi,Delhi,
-Goa,Goa,
-Gujarat,Gujarat,
-Haryana,Haryana,
-Himachal Pradesh,Himachal Pradesh,
-Jammu and Kashmir,Jammu ja Kashmir,
-Jharkhand,Jharkhand,
-Karnataka,Karnataka,
-Kerala,Kerala,
-Lakshadweep Islands,Lakshadweepin saaret,
-Madhya Pradesh,Madhya Pradesh,
-Maharashtra,Maharashtra,
-Manipur,Manipur,
-Meghalaya,Meghalaya,
-Mizoram,Mizoram,
-Nagaland,Nagaland,
-Odisha,Odisha,
-Other Territory,Muu alue,
-Pondicherry,Pondicherry,
-Punjab,Punjab,
-Rajasthan,Rajasthan,
-Sikkim,Sikkim,
-Tamil Nadu,Tamil Nadu,
-Telangana,Telangana,
-Tripura,Tripura,
-Uttar Pradesh,Uttar Pradesh,
-Uttarakhand,Uttarakhand,
-West Bengal,Länsi-Bengali,
 Is Mandatory,On pakollinen,
-Published on,Julkaistu,
 Service Received But Not Billed,"Palvelu vastaanotettu, mutta sitä ei laskuteta",
 Deferred Accounting Settings,Laskennalliset kirjanpitoasetukset,
 Book Deferred Entries Based On,Kirjaa lykätyt merkinnät,
@@ -8035,8 +7900,6 @@
 Worksheet Instructions,Laskentataulukon ohjeet,
 Result Legend Print,Tulos Selite Tulosta,
 Print Position,Tulostuksen sijainti,
-Bottom,Pohja,
-Top,Yläosa,
 Both,Molemmat,
 Result Legend,Tulos Selitys,
 Lab Tests,Laboratoriotestit,
@@ -8081,12 +7944,10 @@
 Approvers,Hyväksyjät,
 The first Approver in the list will be set as the default Approver.,Luettelon ensimmäinen hyväksyntä asetetaan oletuksen hyväksyjäksi.,
 Shift Request Approver,Vaihtopyynnön hyväksyntä,
-PAN Number,PAN-numero,
 Provident Fund Account,Provident Fund -tili,
 MICR Code,MICR-koodi,
 Repay unclaimed amount from salary,Palauta takaisin perimät palkat,
 Deduction from salary,Vähennys palkasta,
-Expired Leaves,Vanhentuneet lehdet,
 If this is not checked the loan by default will be considered as a Demand Loan,"Jos tätä ei ole valittu, laina katsotaan oletuksena kysyntälainaksi",
 This account is used for booking loan repayments from the borrower and also disbursing loans to the borrower,Tätä tiliä käytetään lainan takaisinmaksun varaamiseen luotonsaajalta ja lainojen maksamiseen myös luotonottajalle,
 This account is capital account which is used to allocate capital for loan disbursal account ,"Tämä tili on pääomatili, jota käytetään pääoman kohdistamiseen lainan maksamiseen",
@@ -8844,3 +8705,41 @@
 Creating Purchase Order ...,Luodaan ostotilausta ...,
 "Select a Supplier from the Default Suppliers of the items below. On selection, a Purchase Order will be made against items belonging to the selected Supplier only.",Valitse toimittaja alla olevien tuotteiden oletustoimittajista. Valinnan yhteydessä ostotilaus tehdään vain valitulle toimittajalle kuuluvista tuotteista.,
 Row #{}: You must select {} serial numbers for item {}.,Rivi # {}: Sinun on valittava {} tuotteen sarjanumerot {}.,
+Add Comment,Lisää kommentti,
+More...,Lisää...,
+Notes,Muistiinpanot,
+Payment Gateway,Payment Gateway,
+Payment Gateway Name,Maksun yhdyskäytävän nimi,
+Payments,maksut,
+Plan Name,Plan Name,
+Portal,Portaali,
+Scan Barcode,Skannaa viivakoodi,
+Some information is missing,Joitakin tietoja puuttuu,
+Successful,onnistunut,
+Tools,Työkalut,
+Use Sandbox,Käytä Sandbox,
+Busy,Kiireinen,
+Completed By,Täydentänyt,
+Payment Failed,Maksu epäonnistui,
+Column {0},Sarake {0},
+Field Mapping,Kenttäkartta,
+Not Specified,Ei määritelty,
+Update Type,Päivitystyyppi,
+Dr,Tri,
+End Time,ajan loppu,
+Fetching...,Haetaan ...,
+"It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","Näyttää siltä, että palvelimen raidakokoonpano on ongelma. Vahingossa summa palautetaan tilillesi.",
+Looks like someone sent you to an incomplete URL. Please ask them to look into it.,"Näyttää siltä, että joku on lähettänyt teidät epätäydellisen URL. Pyydä heitä tutkimaan sitä.",
+Master,valvonta,
+Pay,Maksaa,
+You can also copy-paste this link in your browser,voit kopioida ja liittää tämän linkin selaimeesi,
+Verified By,Vahvistanut,
+Invalid naming series (. missing) for {0},Virheellinen nimeämissarja (. Puuttuu) verkkotunnukselle {0},
+Phone Number,Puhelinnumero,
+Account SID,Tilin SID,
+Global Defaults,Yleiset oletusasetukset,
+Is Mandatory,On pakollinen,
+WhatsApp,WhatsApp,
+Make a call,Soita,
+Approve,Hyväksyä,
+Reject,Hylätä,
diff --git a/erpnext/translations/fil.csv b/erpnext/translations/fil.csv
deleted file mode 100644
index e69de29..0000000
--- a/erpnext/translations/fil.csv
+++ /dev/null
diff --git a/erpnext/translations/fr.csv b/erpnext/translations/fr.csv
index 801604a..32fe9ff 100644
--- a/erpnext/translations/fr.csv
+++ b/erpnext/translations/fr.csv
@@ -113,7 +113,6 @@
 Add Items,Ajouter des articles,
 Add Leads,Créer des Leads,
 Add Multiple Tasks,Ajouter plusieurs tâches,
-Add Row,Ajouter une Ligne,
 Add Sales Partners,Ajouter des partenaires commerciaux,
 Add Serial No,Ajouter un numéro de série,
 Add Students,Ajouter des étudiants,
@@ -211,9 +210,7 @@
 An error occurred during the update process,Une erreur s'est produite lors du processus de mise à jour,
 "An item exists with same name ({0}), please change the item group name or rename the item","Un article existe avec le même nom ({0}), veuillez changer le nom du groupe d'article ou renommer l'article",
 Analyst,Analyste,
-Analytics,Analytique,
 Annual Billing: {0},Facturation Annuelle : {0},
-Anonymous,Anonyme,
 Another Budget record '{0}' already exists against {1} '{2}' and account '{3}' for fiscal year {4},Un autre enregistrement Budget '{0}' existe déjà pour {1} '{2}' et pour le compte '{3}' pour l'exercice {4}.,
 Another Period Closing Entry {0} has been made after {1},Une autre Entrée de Clôture de Période {0} a été faite après {1},
 Another Sales Person {0} exists with the same Employee id,Un autre Commercial {0} existe avec le même ID d'Employé,
@@ -283,14 +280,12 @@
 Attendance not submitted for {0} as {1} on leave.,Présence de {0} non soumise car {1} est en congés.,
 Attribute table is mandatory,Table d'Attribut est obligatoire,
 Attribute {0} selected multiple times in Attributes Table,Attribut {0} sélectionné à plusieurs reprises dans le Tableau des Attributs,
-Author,Auteur,
 Authorized Signatory,Signataire Autorisé,
 Auto Material Requests Generated,Demandes de Matériel Générées Automatiquement,
 Auto Repeat,Répétition automatique,
 Auto repeat document updated,Document de répétition automatique mis à jour,
 Automotive,Automobile,
 Available,Disponible,
-Available Leaves,Congés disponibles,
 Available Qty,Qté disponible,
 Available Selling,Vente disponible,
 Available for use date is required,La date de mise en service est nécessaire,
@@ -340,7 +335,6 @@
 Base URL,URL de base,
 Based On,Basé Sur,
 Based On Payment Terms,Basé sur les conditions de paiement,
-Basic,De base,
 Batch,Lot,
 Batch Entries,Entrées de lot,
 Batch ID is mandatory,Le N° du lot est obligatoire,
@@ -361,7 +355,6 @@
 Billable Hours,Heures facturables,
 Billed,Facturé,
 Billed Amount,Montant facturé,
-Billing,Facturation,
 Billing Address,Adresse de facturation,
 Billing Address is same as Shipping Address,L'adresse de facturation est identique à l'adresse de livraison,
 Billing Amount,Montant de Facturation,
@@ -560,7 +553,6 @@
 Consumed Qty,Qté Consommée,
 Consumer Products,Produits de Consommation,
 Contact,Contact,
-Contact Details,Coordonnées,
 Contact Us,Contactez nous,
 Content,Contenu,
 Content Masters,Masters de contenu,
@@ -715,7 +707,6 @@
 Date of Joining,Date d'Embauche,
 Date of Joining must be greater than Date of Birth,La Date d'Embauche doit être après à la Date de Naissance,
 Date of Transaction,Date de transaction,
-Datetime,Date/Heure,
 Day,Jour,
 Debit,Débit,
 Debit ({0}),Débit ({0}),
@@ -874,7 +865,6 @@
 Employee cannot report to himself.,L'employé ne peut pas rendre de compte à lui-même.,
 Employee {0} has already applied for {1} between {2} and {3} : ,L'employé {0} a déjà postulé pour {1} entre {2} et {3}:,
 Employee {0} of grade {1} have no default leave policy,L'employé {0} avec l'échelon {1} n'a pas de politique de congé par défaut,
-Enable,Activer,
 Enable / disable currencies.,Activer / Désactiver les devises,
 Enabled,Activé,
 "Enabling 'Use for Shopping Cart', as Shopping Cart is enabled and there should be at least one Tax Rule for Shopping Cart","Activation de 'Utiliser pour Panier', comme le Panier est activé et qu'il devrait y avoir au moins une Règle de Taxes pour le Panier",
@@ -905,7 +895,6 @@
 Error: Not a valid id?,Erreur : Pas un identifiant valide ?,
 Estimated Cost,Coût estimé,
 "Even if there are multiple Pricing Rules with highest priority, then following internal priorities are applied:","Même s'il existe plusieurs Règles de Tarification avec une plus haute priorité, les priorités internes suivantes sont appliquées :",
-Event,Événement,
 Exchange Gain/Loss,Profits / Pertes sur Change,
 Exchange Rate Revaluation master.,Master de réévaluation du taux de change.,
 Exchange Rate must be same as {0} {1} ({2}),Taux de Change doit être le même que {0} {1} ({2}),
@@ -1032,7 +1021,6 @@
 From value must be less than to value in row {0},De la valeur doit être inférieure à la valeur de la ligne {0},
 From {0} | {1} {2},Du {0} | {1} {2},
 Fulfillment,Livraison,
-Full,Complet,
 Full Name,Nom Complet,
 Fully Depreciated,Complètement Déprécié,
 Furnitures and Fixtures,Meubles et Accessoires,
@@ -1133,7 +1121,6 @@
 Hub Sync ID,Hub Sync ID,
 Human Resource,Ressource humaine,
 Human Resources,Ressources humaines,
-IFSC Code,Code IFSC,
 IGST Amount,IGST Montant,
 IP Address,Adresse IP,
 ITC Available (whether in full op part),CIT Disponible (que ce soit en partie op),
@@ -1185,7 +1172,6 @@
 Ineligible ITC,CTI non éligible,
 Initiated,Initié,
 Inpatient Record,Dossier d'hospitalisation,
-Insert,Insérer,
 Installation Note,Note d'Installation,
 Installation Note {0} has already been submitted,Note d'Installation {0} à déjà été sousmise,
 Installation date cannot be before delivery date for Item {0},Date d'installation ne peut pas être avant la date de livraison pour l'Article {0},
@@ -1197,7 +1183,6 @@
 Insurance Start date should be less than Insurance End date,Date de Début d'Assurance devrait être antérieure à la Date de Fin d'Assurance,
 Integrated Tax,Taxe intégrée,
 Inter-State Supplies,Fournitures inter-Etats,
-Interests,Intérêts,
 Internet Publishing,Publication Internet,
 Intra-State Supplies,Fournitures intra-étatiques,
 Introduction,Introduction,
@@ -1316,7 +1301,6 @@
 Lab testing datetime cannot be before collection datetime,La date et l'heure du test de laboratoire ne peuvent pas être avant la date et l'heure de collecte,
 Label,Étiquette,
 Laboratory,Laboratoire,
-Language Name,Nom de la Langue,
 Large,Grand,
 Last Communication,Dernière communication,
 Last Communication Date,Date de la Dernière Communication,
@@ -1346,8 +1330,6 @@
 Letter Heads for print templates.,En-Têtes pour les modèles d'impression.,
 Level,Niveau,
 Liability,Passif,
-License,Licence,
-Limit,Limite,
 Limit Crossed,Limite Dépassée,
 Link to Material Request,Lien vers la demande de matériel,
 List of all share transactions,Liste de toutes les transactions sur actions,
@@ -1358,7 +1340,6 @@
 Loans (Liabilities),Prêts (Passif),
 Loans and Advances (Assets),Prêts et avances (actif),
 Local,Locale,
-Log,Journal,
 Logs for maintaining sms delivery status,Journaux pour maintenir le statut de livraison des sms,
 Lost,Perdu,
 Lost Reasons,Raisons perdues,
@@ -1444,7 +1425,6 @@
 Medical Department,Département médical,
 Medical Record,Dossier médical,
 Medium,Moyen,
-Meeting,Réunion,
 Member Activity,Activité des membres,
 Member ID,ID du membre,
 Member Name,Nom de membre,
@@ -1494,7 +1474,6 @@
 Multiple Variants,Variantes multiples,
 Multiple fiscal years exist for the date {0}. Please set company in Fiscal Year,Plusieurs Exercices existent pour la date {0}. Veuillez définir la société dans l'Exercice,
 Music,musique,
-My Account,Mon Compte,
 Name error: {0},Erreur de nom: {0},
 Name of new Account. Note: Please don't create accounts for Customers and Suppliers,Nom du Nouveau Compte. Note: Veuillez ne pas créer de comptes Clients et Fournisseurs,
 Name or Email is mandatory,Nom ou Email est obligatoire,
@@ -1537,7 +1516,6 @@
 New credit limit is less than current outstanding amount for the customer. Credit limit has to be atleast {0},Nouvelle limite de crédit est inférieure à l'encours actuel pour le client. Limite de crédit doit être au moins de {0},
 New task,Nouvelle tâche,
 New {0} pricing rules are created,De nouvelles règles de tarification {0} sont créées.,
-Newsletters,Newsletters,
 Newspaper Publishers,Éditeurs de journaux,
 Next,Suivant,
 Next Contact By cannot be same as the Lead Email Address,Prochain Contact Par ne peut être identique à l’Adresse Email du Lead,
@@ -1685,7 +1663,6 @@
 Other,Autre,
 Other Reports,Autres rapports,
 "Other outward supplies(Nil rated,Exempted)","Autres livraisons sortantes (cotations nulles, exemptées)",
-Others,Autres,
 Out Qty,Qté Sortante,
 Out Value,Valeur Sortante,
 Out of Order,Hors service,
@@ -1725,7 +1702,6 @@
 Party Type and Party is mandatory for {0} account,Le type de tiers et le tiers sont obligatoires pour le compte {0},
 Party Type is mandatory,Type de Tiers Obligatoire,
 Party is mandatory,Le Tiers est obligatoire,
-Password,Mot de Passe,
 Past Due Date,Date d'échéance dépassée,
 Patient,Patient,
 Patient Appointment,Rendez-vous patient,
@@ -1783,7 +1759,6 @@
 Pharmaceutical,Pharmaceutique,
 Pharmaceuticals,Médicaments,
 Physician,Médecin,
-Pincode,Code Postal,
 Place Of Supply (State/UT),Lieu d'approvisionnement (State / UT),
 Place Order,Passer la commande,
 Plan Name,Nom du Plan,
@@ -1895,7 +1870,6 @@
 Please select date,Veuillez sélectionner une date,
 Please select item code,Veuillez sélectionner un code d'article,
 Please select month and year,Veuillez sélectionner le mois et l'année,
-Please select prefix first,Veuillez d’abord sélectionner un préfixe,
 Please select the Company,Veuillez sélectionner la société,
 Please select the Multiple Tier Program type for more than one collection rules.,Veuillez sélectionner le type de programme à plusieurs niveaux pour plus d'une règle de collecte.,
 Please select the assessment group other than 'All Assessment Groups',Sélectionnez un groupe d'évaluation autre que «Tous les Groupes d'Évaluation»,
@@ -1912,7 +1886,6 @@
 Please set Company filter blank if Group By is 'Company',Veuillez laisser le filtre de la Société vide si Group By est 'Société',
 Please set Default Payroll Payable Account in Company {0},Veuillez définir le Compte Créditeur de Paie par Défaut pour la Société {0},
 Please set Depreciation related Accounts in Asset Category {0} or Company {1},Veuillez définir le Compte relatif aux Amortissements dans la Catégorie d’Actifs {0} ou la Société {1},
-Please set Email Address,Veuillez définir une Adresse Email,
 Please set GST Accounts in GST Settings,Veuillez définir les comptes GST dans les paramètres de la GST,
 Please set Hotel Room Rate on {},Veuillez définir le tarif de la chambre d'hôtel le {},
 Please set Number of Depreciations Booked,Veuillez définir le Nombre d’Amortissements Comptabilisés,
@@ -1935,7 +1908,6 @@
 Please set the Email ID for the Student to send the Payment Request,Configurez l'ID de courrier électronique pour que l'Élève envoie la Demande de Paiement,
 Please set the Item Code first,Veuillez définir le Code d'Article en premier,
 Please set the Payment Schedule,Veuillez définir le calendrier de paiement,
-Please set the series to be used.,Veuillez définir la série à utiliser.,
 Please set {0} for address {1},Définissez {0} pour l'adresse {1}.,
 Please setup Students under Student Groups,Veuillez configurer les Étudiants sous des groupes d'Étudiants,
 Please specify Company,Veuillez spécifier la Société,
@@ -1952,7 +1924,6 @@
 Point-of-Sale,Point-de-Vente,
 Point-of-Sale Profile,Profil de Point-De-Vente,
 Portal,Portail,
-Portal Settings,Paramètres du Portail,
 Possible Supplier,Fournisseur Potentiel,
 Postal Expenses,Frais postaux,
 Posting Date,Date de Comptabilisation,
@@ -2151,12 +2122,10 @@
 Reference No is mandatory if you entered Reference Date,N° de Référence obligatoire si vous avez entré une date,
 Reference No.,Numéro de référence,
 Reference Number,Numéro de réference,
-Reference Owner,Responsable de la Référence,
 Reference Type,Type de référence,
 "Reference: {0}, Item Code: {1} and Customer: {2}","Référence: {0}, Code de l'article: {1} et Client: {2}",
 References,Références,
 Refresh Token,Jeton de Rafraîchissement,
-Region,Région,
 Register,registre,
 Rejected,Rejeté,
 Related,en relation,
@@ -2178,7 +2147,6 @@
 Replace BOM and update latest price in all BOMs,Remplacer la nomenclature et actualiser les prix les plus récents dans toutes les nomenclatures,
 Replied,Répondu,
 Report,Rapport,
-Report Builder,Éditeur de Rapports,
 Report Type,Type de Rapport,
 Report Type is mandatory,Le Type de Rapport est nécessaire,
 Reports,Rapports,
@@ -2354,13 +2322,11 @@
 Same Company is entered more than once,La même Société a été entrée plus d'une fois,
 Same item cannot be entered multiple times.,Le même article ne peut pas être entré plusieurs fois.,
 Same supplier has been entered multiple times,Le même fournisseur a été saisi plusieurs fois,
-Sample,Échantillon,
 Sample Collection,Collecte d'Échantillons,
 Sample quantity {0} cannot be more than received quantity {1},La quantité d'échantillon {0} ne peut pas dépasser la quantité reçue {1},
 Sanctioned,Sanctionné,
 Sand,Le sable,
 Saturday,Samedi,
-Saved,Enregistré,
 Saving {0},Enregistrement {0},
 Scan Barcode,Scan Code Barre,
 Schedule,Calendrier,
@@ -2462,7 +2428,6 @@
 Series Updated,Série mise à jour,
 Series Updated Successfully,Mise à jour des Séries Réussie,
 Series is mandatory,Série est obligatoire,
-Series {0} already used in {1},Séries {0} déjà utilisé dans {1},
 Service,Service,
 Service Level Agreement,Contrat de niveau de service,
 Service Level Agreement.,Contrat de niveau de service.,
@@ -2478,7 +2443,6 @@
 Set Tax Rule for shopping cart,Définir la Règle d'Impôt pour le panier,
 Set as Closed,Définir comme fermé,
 Set as Completed,Définir comme terminé,
-Set as Default,Définir par défaut,
 Set as Lost,Définir comme perdu,
 Set as Open,Définir comme ouvert,
 Set default inventory account for perpetual inventory,Configurer le compte d'inventaire par défaut pour l'inventaire perpétuel,
@@ -2510,7 +2474,6 @@
 Shareholder,Actionnaire,
 Ship To State,Ship To State,
 Shipments,Livraisons,
-Shipping,livraison,
 Shipping Address,Adresse de livraison,
 "Shipping Address does not have country, which is required for this Shipping Rule","L'adresse de livraison n'a pas de pays, ce qui est requis pour cette règle d'expédition",
 Shipping rule only applicable for Buying,Règle d'expédition applicable uniquement pour l'achat,
@@ -2563,7 +2526,6 @@
 Split Batch,Lot Fractionné,
 Split Issue,Diviser le ticket,
 Sports,Sportif,
-Standard,Standard,
 Standard Buying,Achat standard,
 Standard Selling,Vente standard,
 Standard contract terms for Sales or Purchase.,Termes contractuels standards pour Ventes ou Achats,
@@ -2730,7 +2692,6 @@
 Terms and Conditions,Termes et conditions,
 Terms and Conditions Template,Modèle des Termes et Conditions,
 Territory,Région,
-Test,Test,
 Thank you for your business!,Merci pour votre entreprise !,
 The 'From Package No.' field must neither be empty nor it's value less than 1.,Le champ 'N° de Paquet' ne doit pas être vide ni sa valeur être inférieure à 1.,
 The Brand,La marque,
@@ -2848,7 +2809,6 @@
 Total (Without Tax),Total (hors taxes),
 Total Achieved,Total Obtenu,
 Total Actual,Total réel,
-Total Allocated Leaves,Total des congés alloués,
 Total Amount,Montant total,
 Total Amount Credited,Montant total crédité,
 Total Applicable Charges in Purchase Receipt Items table must be same as Total Taxes and Charges,Total des Frais Applicables dans la Table des Articles de Reçus d’Achat doit être égal au Total des Taxes et Frais,
@@ -2892,7 +2852,6 @@
 Total(Amt),Total (Mnt),
 Total(Qty),Total (Qté),
 Traceability,Traçabilité,
-Traceback,Retraçage,
 Track Leads by Lead Source.,Suivre les leads par sources,
 Transaction,Transaction,
 Transaction Date,Date de la transaction,
@@ -2930,7 +2889,6 @@
 UOM Conversion factor is required in row {0},Facteur de conversion de l'UdM est obligatoire dans la ligne {0},
 UOM coversion factor required for UOM: {0} in Item: {1},Facteur de coversion UdM requis pour l'UdM : {0} dans l'Article : {1},
 URL,URL,
-Unable to find DocType {0},Impossible de trouver le DocType {0},
 Unable to find exchange rate for {0} to {1} for key date {2}. Please create a Currency Exchange record manually,Impossible de trouver le taux de change pour {0} à {1} pour la date clé {2}. Veuillez créer une entrée de taux de change manuellement,
 Unable to find score starting at {0}. You need to have standing scores covering 0 to 100,Impossible de trouver un score démarrant à {0}. Vous devez avoir des scores couvrant 0 à 100,
 Unable to find variable: ,Impossible de trouver une variable:,
@@ -2960,7 +2918,6 @@
 Upload your letter head and logo. (you can edit them later).,Charger votre en-tête et logo. (vous pouvez les modifier ultérieurement).,
 Upper Income,Revenu Élevé,
 Use Sandbox,Utiliser Sandbox,
-Used Leaves,Congés utilisés,
 User,Utilisateur,
 User ID,Identifiant d'utilisateur,
 User ID not set for Employee {0},ID de l'Utilisateur non défini pour l'Employé {0},
@@ -3051,7 +3008,6 @@
 Website Settings,Paramètres du Site web,
 Wednesday,Mercredi,
 Week,Semaine,
-Weekdays,Jours de la semaine,
 Weekly,Hebdomadaire,
 "Weight is mentioned,\nPlease mention ""Weight UOM"" too","Poids est mentionné,\nVeuillez aussi mentionner ""UdM de Poids""",
 Welcome email sent,Email de bienvenue envoyé,
@@ -3072,7 +3028,6 @@
 Work Order {0} must be submitted,L'ordre de fabrication {0} doit être soumis,
 Work Orders Created: {0},Ordres de travail créés: {0},
 Work-in-Progress Warehouse is required before Submit,L'entrepôt des Travaux en Cours est nécessaire avant de Valider,
-Workflow,Flux de Travail,
 Working,Travail en cours,
 Working Hours,Heures de travail,
 Workstation,Station de travail,
@@ -3101,7 +3056,6 @@
 You need to be a user other than Administrator with System Manager and Item Manager roles to register on Marketplace.,Vous devez être un utilisateur autre que l'administrateur avec les rôles System Manager et Item Manager pour vous inscrire sur Marketplace.,
 You need to be a user with System Manager and Item Manager roles to add users to Marketplace.,Vous devez être un utilisateur doté de rôles System Manager et Item Manager pour ajouter des utilisateurs à Marketplace.,
 You need to be a user with System Manager and Item Manager roles to register on Marketplace.,Vous devez être un utilisateur avec des rôles System Manager et Item Manager pour vous inscrire sur Marketplace.,
-You need to be logged in to access this page,Vous devez être connecté pour pouvoir accéder à cette page,
 You need to enable Shopping Cart,Vous devez activer le panier,
 You will lose records of previously generated invoices. Are you sure you want to restart this subscription?,Vous perdrez des enregistrements de factures précédemment générées. Êtes-vous sûr de vouloir redémarrer cet abonnement?,
 Your Organization,Votre Organisation,
@@ -3217,7 +3171,6 @@
 Assigned To,Assigné À,
 Chat,Chat,
 Completed By,Effectué par,
-County,Canton,
 Day of Week,Jour de la semaine,
 "Dear System Manager,","Cher Administrateur Système ,",
 Default Value,Valeur par Défaut,
@@ -3228,31 +3181,21 @@
 Fieldtype,Type de Champ,
 Help Articles,Articles d'Aide,
 ID,ID,
-Images,Images,
 Import,Importer,
 Language,Langue,
 Likes,Aime,
 Merge with existing,Fusionner avec existant,
-Office,Bureau,
 Orientation,Orientation,
 Parent,Parent,
-Passive,Passif,
 Payment Failed,Le Paiement a Échoué,
-Permanent,Permanent,
 Personal,Personnel,
-Plant,Usine,
 Post,Poster,
-Postal,Postal,
 Postal Code,code postal,
-Previous,Précedent,
 Provider,Fournisseur,
 Read Only,Lecture Seule,
 Recipient,Destinataire,
 Reviews,Avis,
 Sender,Expéditeur,
-Shop,Magasin,
-Subsidiary,Filiale,
-There is some problem with the file url: {0},Il y a un problème avec l'url du fichier : {0},
 There were errors while sending email. Please try again.,Il y a eu des erreurs lors de l'envoi d’emails. Veuillez essayer à nouveau.,
 Values Changed,Valeurs Modifiées,
 or,ou,
@@ -3279,20 +3222,17 @@
 Quality Feedback Template,Modèle de commentaires sur la qualité,
 Rules for applying different promotional schemes.,Règles d'application de différents programmes promotionnels.,
 Show {0},Montrer {0},
-"Special Characters except '-', '#', '.', '/', '{{' and '}}' not allowed in naming series {0}","Caractères spéciaux sauf &quot;-&quot;, &quot;#&quot;, &quot;.&quot;, &quot;/&quot;, &quot;{{&quot; Et &quot;}}&quot; non autorisés dans les séries de nommage {0}",
 Target Details,Détails de la cible,
 {0} already has a Parent Procedure {1}.,{0} a déjà une procédure parent {1}.,
 API,API,
 Annual,Annuel,
 Change,Changement,
 Contact Email,Email du Contact,
-Export Type,Type d'Exportation,
 From Date,A partir du,
 Group By,Par groupe,
 Invalid URL,URL invalide,
 Landscape,Paysage,
-Last Sync On,Dernière synchronisation le,
-Naming Series,Nom de série,
+Naming Series,Masque de numérotation,
 No data to export,Aucune donnée à exporter,
 Portrait,Portrait,
 Print Heading,Imprimer Titre,
@@ -3301,7 +3241,6 @@
 Show Document,Afficher le document,
 Show Traceback,Afficher le traçage,
 Video,Vidéo,
-Webhook Secret,Webhook Secret,
 % Of Grand Total,% Du grand total,
 <b>Company</b> is a mandatory filter.,<b>La société</b> est un filtre obligatoire.,
 <b>From Date</b> is a mandatory filter.,<b>De la date</b> est un filtre obligatoire.,
@@ -3357,7 +3296,6 @@
 BOM Comparison Tool,Outil de comparaison de nomenclature,
 BOM recursion: {0} cannot be child of {1},Récursion de nomenclature: {0} ne peut pas être enfant de {1},
 BOM recursion: {0} cannot be parent or child of {1},Récursion de nomenclature: {0} ne peut pas être le parent ou l'enfant de {1},
-Back to Home,De retour à la maison,
 Back to Messages,Retour aux messages,
 Bank Data mapper doesn't exist,Bank Data Mapper n'existe pas,
 Bank Details,Coordonnées bancaires,
@@ -3419,7 +3357,6 @@
 Currency,Devise,
 Current Status,Statut Actuel,
 Customer PO,Commande d'Achat client,
-Customize,Personnaliser,
 Daily,Quotidien,
 Date,Date,
 Date of Birth cannot be greater than Joining Date.,La date de naissance ne peut pas être supérieure à la date d'adhésion.,
@@ -3453,7 +3390,6 @@
 ERPNext could not find any matching payment entry,ERPNext n'a trouvé aucune entrée de paiement correspondante,
 Earliest Age,Âge le plus précoce,
 Edit Details,Modifier les détails,
-Edit Profile,Modifier le Profil,
 Either GST Transporter ID or Vehicle No is required if Mode of Transport is Road,Un numéro d'identification de transporteur ou un numéro de véhicule est requis si le mode de transport est la route.,
 Email,Email,
 Email Campaigns,Campagnes de courrier électronique,
@@ -3481,7 +3417,6 @@
 Fetch Items from Warehouse,Récupérer des articles de l'entrepôt,
 Fetching...,Aller chercher...,
 Field,Champ,
-File Manager,Gestionnaire de Fichiers,
 Filters,Filtres,
 Finding linked payments,Trouver des paiements liés,
 Fleet Management,Gestion de flotte,
@@ -3520,7 +3455,6 @@
 Incorrect Warehouse,Entrepôt incorrect,
 Invalid Barcode. There is no Item attached to this barcode.,Code à barres invalide. Il n'y a pas d'article attaché à ce code à barres.,
 Invalid credentials,les informations d'identification invalides,
-Invite as User,Inviter en tant qu'Utilisateur,
 Issue Priority.,Priorité d'émission.,
 Issue Type.,Type de probleme.,
 "It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","Il semble qu'il y a un problème avec la configuration de Stripe sur le serveur. En cas d'erreur, le montant est remboursé sur votre compte.",
@@ -3563,7 +3497,6 @@
 New Invoice,Nouvelle facture,
 New Payment,Nouveau paiement,
 New release date should be in the future,La nouvelle date de sortie devrait être dans le futur,
-Newsletter,Newsletter,
 No Account matched these filters: {},Aucun compte ne correspond à ces filtres: {},
 No communication found.,Aucune communication trouvée.,
 No correct answer is set for {0},Aucune réponse correcte n'est définie pour {0}.,
@@ -3639,7 +3572,6 @@
 Please setup a default bank account for company {0},Veuillez configurer un compte bancaire par défaut pour la société {0}.,
 Please specify,Veuillez spécifier,
 Please specify a {0},Veuillez spécifier un {0},lead
-Printing,Impression,
 Priority,Priorité,
 Priority has been changed to {0}.,La priorité a été changée en {0}.,
 Priority {0} has been repeated.,La priorité {0} a été répétée.,
@@ -3648,7 +3580,6 @@
 Project,Projet,
 Provide the academic year and set the starting and ending date.,Indiquez l'année universitaire et définissez la date de début et de fin.,
 Public token is missing for this bank,Un jeton public est manquant pour cette banque,
-Publish,Publier,
 Publish 1 Item,Publier 1 élément,
 Publish Items,Publier des articles,
 Publish More Items,Publier plus d'articles,
@@ -3676,7 +3607,6 @@
 Reconciled,Réconcilié,
 Recruitment,Recrutement,
 Red,Rouge,
-Refreshing,Rafraîchissant,
 Release date must be in the future,La date de sortie doit être dans le futur,
 Relieving Date must be greater than or equal to Date of Joining,La date de libération doit être supérieure ou égale à la date d'adhésion,
 Rename,Renommer,
@@ -3720,7 +3650,6 @@
 Search for a payment,Rechercher un paiement,
 Search for anything ...,Rechercher n'importe quoi ...,
 Search results for,Résultats de recherche pour,
-Select All,Sélectionner Tout,
 Select Difference Account,Sélectionnez compte différentiel,
 Select a Default Priority.,Sélectionnez une priorité par défaut.,
 Select a company,Sélectionnez une entreprise,
@@ -3739,11 +3668,9 @@
 Service Level Agreement has been changed to {0}.,L'accord de niveau de service a été remplacé par {0}.,
 Service Level Agreement was reset.,L'accord de niveau de service a été réinitialisé.,
 Service Level Agreement with Entity Type {0} and Entity {1} already exists.,L'accord de niveau de service avec le type d'entité {0} et l'entité {1} existe déjà.,
-Set,Définir,
 Set Meta Tags,Définir les balises méta,
 Set {0} in company {1},Définissez {0} dans l'entreprise {1},
 Setup,Configuration,
-Setup Wizard,Assistant de Configuration,
 Shift Management,Gestion des quarts,
 Show Future Payments,Afficher les paiements futurs,
 Show Linked Delivery Notes,Afficher les bons de livraison liés,
@@ -3814,7 +3741,6 @@
 Unreconciled,Non réconcilié,
 Unsupported GST Category for E-Way Bill JSON generation,Catégorie GST non prise en charge pour la génération e-Way Bill JSON,
 Update,Mettre à Jour,
-Update Details,Détails de mise à jour,
 Update Taxes for Items,Mettre à jour les taxes pour les articles,
 "Upload a bank statement, link or reconcile a bank account","Télécharger un relevé bancaire, un lien ou un rapprochement d'un compte bancaire",
 Upload a statement,Télécharger une déclaration,
@@ -3838,7 +3764,6 @@
 XML Files Processed,Fichiers XML traités,
 Year,Année,
 Yearly,Annuel,
-You,Vous,
 You are not allowed to enroll for this course,Vous n'êtes pas autorisé à vous inscrire à ce cours,
 You are not enrolled in program {0},Vous n'êtes pas inscrit au programme {0},
 You can Feature upto 8 items.,Vous pouvez présenter jusqu'à 8 éléments.,
@@ -3855,7 +3780,6 @@
 e-Way Bill already exists for this document,e-Way Bill existe déjà pour ce document,
 woocommerce - {0},woocommerce - {0},
 {0} Coupon used are {1}. Allowed quantity is exhausted,Le {0} coupon utilisé est {1}. La quantité autorisée est épuisée,
-{0} Name,{0} Nom,
 {0} Operations: {1},{0} Opérations: {1},
 {0} bank transaction(s) created,{0} transaction (s) bancaire (s) créée (s),
 {0} bank transaction(s) created and {1} errors,{0} transaction (s) bancaire (s) créée (s) et {1} erreur (s),
@@ -3874,17 +3798,13 @@
 Total Income,Revenu total,
 Total Income This Year,Revenu total cette année,
 Barcode,code à barre,
-Bold,Audacieux,
-Center,Centre,
 Clear,Clair,
-Comment,Commentaire,
 Comments,Commentaires,
 DocType,DocType,
 Download,Télécharger,
 Left,Parti,
 Link,Lien,
 New,Nouveau,
-Not Found,Non Trouvé,
 Print,Impression,
 Reference Name,Nom de référence,
 Refresh,Actualiser,
@@ -3907,7 +3827,6 @@
 Email Id,Identifiant Email,
 No,Non,
 Reference Doctype,DocType de la Référence,
-User Id,Identifiant d'utilisateur,
 Yes,Oui,
 Actual ,Réel,
 Add to cart,Ajouter au Panier,
@@ -3962,7 +3881,7 @@
 Draft,Brouillon,"docstatus,=,0"
 Cancelled,Annulé,"docstatus,=,2"
 Please setup Instructor Naming System in Education > Education Settings,Veuillez configurer le système de dénomination de l'instructeur dans Éducation&gt; Paramètres de l'éducation,
-Please set Naming Series for {0} via Setup > Settings > Naming Series,Veuillez définir la série de noms pour {0} via Configuration&gt; Paramètres&gt; Série de noms,
+Please set Naming Series for {0} via Setup > Settings > Naming Series,Veuillez définir le masque de numérotation pour {0} via Configuration&gt; Paramètres&gt; Série de noms,
 UOM Conversion factor ({0} -> {1}) not found for item: {2},Facteur de conversion UdM ({0} -&gt; {1}) introuvable pour l'article: {2},
 Item Code > Item Group > Brand,Code article&gt; Groupe d'articles&gt; Marque,
 Customer > Customer Group > Territory,Client&gt; Groupe de clients&gt; Territoire,
@@ -3973,7 +3892,7 @@
 "Outward taxable supplies(other than zero rated, nil rated and exempted)","Fournitures taxables sortantes (autres que détaxées, nulles et exonérées)",
 "To allow different rates, disable the {0} checkbox in {1}.","Pour autoriser différents tarifs, désactivez la {0} case à cocher dans {1}.",
 Asset{} {assets_link} created for {},Élément {} {assets_link} créé pour {},
-Row {}: Asset Naming Series is mandatory for the auto creation for item {},Ligne {}: la série de noms d'éléments est obligatoire pour la création automatique de l'élément {},
+Row {}: Asset Naming Series is mandatory for the auto creation for item {},Ligne {}: Le masque de numérotation d'éléments est obligatoire pour la création automatique de l'élément {},
 Assets not created for {0}. You will have to create asset manually.,Éléments non créés pour {0}. Vous devrez créer un actif manuellement.,
 {0} {1} has accounting entries in currency {2} for company {3}. Please select a receivable or payable account with currency {2}.,{0} {1} a des écritures comptables dans la devise {2} pour l'entreprise {3}. Veuillez sélectionner un compte à recevoir ou à payer avec la devise {2}.,
 Invalid Account,Compte invalide,
@@ -3997,7 +3916,7 @@
 Path,Chemin,
 Components,Composants,
 Verified By,Vérifié Par,
-Invalid naming series (. missing) for {0},Série de noms non valide (. Manquante) pour {0},
+Invalid naming series (. missing) for {0},Masque de numérotation non valide (. Manquante) pour {0},
 Filter Based On,Filtre basé sur,
 Reqd by date,Reqd par date,
 Manufacturer Part Number <b>{0}</b> is invalid,Le numéro de <b>pièce du</b> fabricant <b>{0}</b> n'est pas valide,
@@ -4303,7 +4222,6 @@
 e.g Adjustments for:,Par exemple des ajustements pour:,
 Section Subtotal,Sous-total de la section,
 Section Footer,Pied de section,
-Position,Position,
 Cash Flow Mapping,Mapping des Flux de Trésorerie,
 Select Maximum Of 1,Sélectionnez un maximum de 1,
 Is Finance Cost,Est un coût financier,
@@ -4937,7 +4855,6 @@
 Previous Business Day,Jour ouvrable précédent,
 Next Business Day,Le jour ouvrable suivant,
 Urgent,Urgent,
-Crop,Culture,
 Crop Name,Nom de la culture,
 Scientific Name,Nom scientifique,
 "You can define all the tasks which need to carried out for this crop here. The day field is used to mention the day on which the task needs to be carried out, 1 being the 1st day, etc.. ","Vous pouvez définir ici toutes les tâches à effectuer pour cette culture. Le champ de jour est utilisé pour mentionner le jour où la tâche doit être effectuée, 1 étant le 1er jour, etc.",
@@ -5441,7 +5358,6 @@
 To TIme,Horaire de Fin,
 Course End Date,Date de Fin du Cours,
 Course Topic,Sujet du cours,
-Topic,Sujet,
 Topic Name,Nom du Sujet,
 Education Settings,Paramètres d'éducation,
 Current Academic Year,Année Académique Actuelle,
@@ -5516,7 +5432,6 @@
 Check this if the Student is residing at the Institute's Hostel.,Vérifiez si l'Étudiant réside à la Résidence de l'Institut.,
 Walking,En Marchant,
 Institute's Bus,Bus de l'Institut,
-Public Transport,Transports Publics,
 Self-Driving Vehicle,Véhicule Autonome,
 Pick/Drop by Guardian,Déposé/Récupéré par le Tuteur,
 Enrolled courses,Cours Inscrits,
@@ -5587,7 +5502,7 @@
 Minimum Age,Âge Minimum,
 Maximum Age,Âge Maximum,
 Application Fee,Frais de Dossier,
-Naming Series (for Student Applicant),Nom de série (pour un candidat étudiant),
+Naming Series (for Student Applicant),Masque de numérotation (pour un candidat étudiant),
 LMS Only,LMS seulement,
 EDU-APP-.YYYY.-,EDU-APP-YYYY.-,
 Application Date,Date de la Candidature,
@@ -5697,7 +5612,6 @@
 Default Cost Center,Centre de Coûts par Défaut,
 Undeposited Funds Account,Compte de fonds non déposés,
 Shopify Log,Log Shopify,
-Request Data,Données de la requête,
 Shopify Settings,Paramètres de Shopify,
 status html,Statut,
 Enable Shopify,Activer Shopify,
@@ -5817,7 +5731,6 @@
 Exercise Instructions,Instructions d'exercice,
 Exercise Video,Vidéo d'exercice,
 Exercise Steps,Étapes de l'exercice,
-Steps,Pas,
 Steps Table,Tableau des étapes,
 Exercise Type Step,Étape de type d'exercice,
 Max number of visit,Nombre maximum de visites,
@@ -6001,7 +5914,6 @@
 Patient Encounter Symptom,Symptôme de rencontre du patient,
 HLC-PMR-.YYYY.-,HLC-PMR-.YYYY.-,
 Attach Medical Record,Joindre le dossier médical,
-Reference DocType,Référence DocType,
 Spouse,Époux,
 Family,Famille,
 Schedule Details,Détails du programme,
@@ -6074,7 +5986,7 @@
 Hotel Room Reservation Item,Article de réservation de la chambre d'hôtel,
 Hotel Settings,Paramètres d'Hotel,
 Default Taxes and Charges,Taxes et frais par défaut,
-Default Invoice Naming Series,Numéro de série par défaut pour les factures,
+Default Invoice Naming Series,Masque de numérotation par défaut pour les factures,
 HR,RH,
 Date on which this component is applied,Date à laquelle ce composant est appliqué,
 Salary Slip,Fiche de Paie,
@@ -6983,16 +6895,8 @@
 HTML / Banner that will show on the top of product list.,HTML / bannière qui apparaîtra sur le haut de la liste des produits.,
 Set prefix for numbering series on your transactions,Définir le préfixe des séries numérotées pour vos transactions,
 Setup Series,Configuration des Séries,
-Select Transaction,Sélectionner la Transaction,
-Help HTML,Aide HTML,
-Series List for this Transaction,Liste des Séries pour cette Transaction,
-User must always select,L'utilisateur doit toujours sélectionner,
-Check this if you want to force the user to select a series before saving. There will be no default if you check this.,Cochez cette case si vous voulez forcer l'utilisateur à sélectionner une série avant de l'enregistrer. Il n'y aura pas de série par défaut si vous cochez cette case.,
 Update Series,Mettre à Jour les Séries,
 Change the starting / current sequence number of an existing series.,Changer le numéro initial/actuel d'une série existante.,
-Prefix,Préfixe,
-This is the number of the last created transaction with this prefix,Numéro de la dernière transaction créée avec ce préfixe,
-Update Series Number,Mettre à Jour la Série,
 Quotation Lost Reason,Raison de la Perte du Devis,
 A third party distributor / dealer / commission agent / affiliate / reseller who sells the companies products for a commission.,Un tiers distributeur / commerçant / commissionnaire / affilié / revendeur qui vend les produits de l'entreprise en échange d'une commission.,
 Sales Partner Name,Nom du Partenaire de Vente,
@@ -7136,7 +7040,7 @@
 Maintain Stock,Maintenir Stock,
 Standard Selling Rate,Prix de Vente Standard,
 Auto Create Assets on Purchase,Création automatique d'actifs à l'achat,
-Asset Naming Series,Nom de série de l'actif,
+Asset Naming Series,Masque de numérotation de l'actif,
 Over Delivery/Receipt Allowance (%),Surlivrance / indemnité de réception (%),
 Barcodes,Codes-barres,
 Shelf Life In Days,Durée de conservation en jours,
@@ -7155,7 +7059,7 @@
 Has Batch No,A un Numéro de Lot,
 Automatically Create New Batch,Créer un Nouveau Lot Automatiquement,
 Batch Number Series,Série de numéros de lots,
-"Example: ABCD.#####. If series is set and Batch No is not mentioned in transactions, then automatic batch number will be created based on this series. If you always want to explicitly mention Batch No for this item, leave this blank. Note: this setting will take priority over the Naming Series Prefix in Stock Settings.","Exemple: ABCD. #####. Si la série est définie et que le numéro de lot n'est pas mentionné dans les transactions, un numéro de lot sera automatiquement créé en avec cette série. Si vous préferez mentionner explicitement et systématiquement le numéro de lot pour cet article, laissez ce champ vide. Remarque: ce paramètre aura la priorité sur le préfixe de la série dans les paramètres de stock.",
+"Example: ABCD.#####. If series is set and Batch No is not mentioned in transactions, then automatic batch number will be created based on this series. If you always want to explicitly mention Batch No for this item, leave this blank. Note: this setting will take priority over the Naming Series Prefix in Stock Settings.","Exemple: ABCD. #####. Si le masque est définie et que le numéro de lot n'est pas mentionné dans les transactions, un numéro de lot sera automatiquement créé en avec ce masque. Si vous préferez mentionner explicitement et systématiquement le numéro de lot pour cet article, laissez ce champ vide. Remarque: ce paramètre aura la priorité sur le préfixe du masque dans les paramètres de stock.",
 Has Expiry Date,A une date d'expiration,
 Retain Sample,Conserver l'échantillon,
 Max Sample Quantity,Quantité maximum d'échantillon,
@@ -7188,8 +7092,8 @@
 No of Months,Nombre de mois,
 Customer Items,Articles du clients,
 Inspection Criteria,Critères d'Inspection,
-Inspection Required before Purchase,Inspection Requise avant Achat,
-Inspection Required before Delivery,Inspection Requise avant Livraison,
+Inspection Required before Purchase,Inspection Requise à la réception,
+Inspection Required before Delivery,Inspection Requise à l'expedition,
 Default BOM,Nomenclature par Défaut,
 Supply Raw Materials for Purchase,Fournir les Matières Premières pour l'Achat,
 If subcontracted to a vendor,Si sous-traité à un fournisseur,
@@ -7455,8 +7359,8 @@
 Freeze Stock Entries,Geler les Entrées de Stocks,
 Stock Frozen Upto,Stock Gelé Jusqu'au,
 Batch Identification,Identification par lots,
-Use Naming Series,Utiliser la série de noms,
-Naming Series Prefix,Préfix du nom de série,
+Use Naming Series,Utiliser le masque de numérotation,
+Naming Series Prefix,Préfix du masque de numérotation,
 UOM Category,Catégorie d'unité de mesure (UdM),
 UOM Conversion Detail,Détails de Conversion de l'UdM,
 Variant Field,Champ de Variante,
@@ -7687,7 +7591,6 @@
 Warehouse wise Item Balance Age and Value,Balance des articles par entrepôt,
 Work Order Stock Report,Rapport de stock d'ordre de fabrication,
 Work Orders in Progress,Ordres de travail en cours,
-Validation Error,erreur de validation,
 Automatically Process Deferred Accounting Entry,Traiter automatiquement l'écriture comptable différée,
 Bank Clearance,Liquidation bancaire,
 Bank Clearance Detail,Détail de l'apurement bancaire,
@@ -7724,45 +7627,7 @@
 Therapy Plan: ,Plan de thérapie:,
 Total Counts Targeted: ,Nombre total ciblé:,
 Total Counts Completed: ,Nombre total de dénombrements effectués:,
-Andaman and Nicobar Islands,Îles Andaman et Nicobar,
-Andhra Pradesh,Andhra Pradesh,
-Arunachal Pradesh,Arunachal Pradesh,
-Assam,Assam,
-Bihar,Bihar,
-Chandigarh,Chandigarh,
-Chhattisgarh,Chhattisgarh,
-Dadra and Nagar Haveli,Dadra et Nagar Haveli,
-Daman and Diu,Daman et Diu,
-Delhi,Delhi,
-Goa,Goa,
-Gujarat,Gujarat,
-Haryana,Haryana,
-Himachal Pradesh,Himachal Pradesh,
-Jammu and Kashmir,Jammu et Cachemire,
-Jharkhand,Jharkhand,
-Karnataka,Karnataka,
-Kerala,Kerala,
-Lakshadweep Islands,Îles Lakshadweep,
-Madhya Pradesh,Madhya Pradesh,
-Maharashtra,Maharashtra,
-Manipur,Manipur,
-Meghalaya,Meghalaya,
-Mizoram,Mizoram,
-Nagaland,Nagaland,
-Odisha,Odisha,
-Other Territory,Autre territoire,
-Pondicherry,Pondichéry,
-Punjab,Punjab,
-Rajasthan,Rajasthan,
-Sikkim,Sikkim,
-Tamil Nadu,Tamil Nadu,
-Telangana,Telangana,
-Tripura,Tripura,
-Uttar Pradesh,Uttar Pradesh,
-Uttarakhand,Uttarakhand,
-West Bengal,Bengale-Occidental,
 Is Mandatory,Est obligatoire,
-Published on,Publié le,
 Service Received But Not Billed,Service reçu mais non facturé,
 Deferred Accounting Settings,Paramètres de comptabilité différée,
 Book Deferred Entries Based On,Enregistrer les entrées différées en fonction de,
@@ -7914,7 +7779,7 @@
 Purchase Details,Détails d'achat,
 Depreciation Posting Date,Date comptable de l'amortissement,
 "By default, the Supplier Name is set as per the Supplier Name entered. If you want Suppliers to be named by a  ","Par défaut, le nom du fournisseur est défini selon le nom du fournisseur saisi. Si vous souhaitez que les fournisseurs soient nommés par un",
- choose the 'Naming Series' option.,choisissez l'option 'Naming Series'.,
+ choose the 'Naming Series' option.,choisissez l'option 'Masque de numérotation'.,
 Configure the default Price List when creating a new Purchase transaction. Item prices will be fetched from this Price List.,Configurez la liste de prix par défaut lors de la création d'une nouvelle transaction d'achat. Les prix des articles seront extraits de cette liste de prix.,
 "If this option is configured 'Yes', ERPNext will prevent you from creating a Purchase Invoice or Receipt without creating a Purchase Order first. This configuration can be overridden for a particular supplier by enabling the 'Allow Purchase Invoice Creation Without Purchase Order' checkbox in the Supplier master.","Si cette option est configurée «Oui», ERPNext vous empêchera de créer une facture d'achat ou un reçu sans créer d'abord une Commande d'Achat. Cette configuration peut être remplacée pour un fournisseur particulier en cochant la case «Autoriser la création de facture d'achat sans commmande d'achat» dans la fiche fournisseur.",
 "If this option is configured 'Yes', ERPNext will prevent you from creating a Purchase Invoice without creating a Purchase Receipt first. This configuration can be overridden for a particular supplier by enabling the 'Allow Purchase Invoice Creation Without Purchase Receipt' checkbox in the Supplier master.","Si cette option est configurée «Oui», ERPNext vous empêchera de créer une facture d'achat sans créer d'abord un reçu d'achat. Cette configuration peut être remplacée pour un fournisseur particulier en cochant la case &quot;Autoriser la création de facture d'achat sans reçu d'achat&quot; dans la fiche fournisseur.",
@@ -8031,8 +7896,6 @@
 Worksheet Instructions,Instructions sur la feuille de travail,
 Result Legend Print,Impression de la légende des résultats,
 Print Position,Position d'impression,
-Bottom,Bas,
-Top,Haut,
 Both,Tous les deux,
 Result Legend,Légende des résultats,
 Lab Tests,Tests en laboratoire,
@@ -8077,12 +7940,10 @@
 Approvers,Approbateurs,
 The first Approver in the list will be set as the default Approver.,Le premier approbateur de la liste sera défini comme approbateur par défaut.,
 Shift Request Approver,Approbateur de demande de quart,
-PAN Number,Numéro PAN,
 Provident Fund Account,Compte de prévoyance,
 MICR Code,Code MICR,
 Repay unclaimed amount from salary,Rembourser le montant non réclamé sur le salaire,
 Deduction from salary,Déduction du salaire,
-Expired Leaves,Feuilles expirées,
 If this is not checked the loan by default will be considered as a Demand Loan,"Si cette case n'est pas cochée, le prêt par défaut sera considéré comme un prêt à vue",
 This account is used for booking loan repayments from the borrower and also disbursing loans to the borrower,Ce compte est utilisé pour enregistrer les remboursements de prêts de l'emprunteur et également pour décaisser les prêts à l'emprunteur,
 This account is capital account which is used to allocate capital for loan disbursal account ,Ce compte est un compte de capital qui est utilisé pour allouer du capital au compte de décaissement du prêt,
@@ -8871,7 +8732,7 @@
 Update Existing Price List Rate,Mise a jour automatique du prix dans les listes de prix,
 Show Barcode Field in Stock Transactions,Afficher le champ Code Barre dans les transactions de stock,
 Convert Item Description to Clean HTML in Transactions,Convertir les descriptions d'articles en HTML valide lors des transactions,
-Have Default Naming Series for Batch ID?,Nom de série par défaut pour les Lots ou Séries,
+Have Default Naming Series for Batch ID?,Masque de numérotation par défaut pour les Lots ou Séries,
 "The percentage you are allowed to transfer more against the quantity ordered. For example, if you have ordered 100 units, and your Allowance is 10%, then you are allowed transfer 110 units","Le pourcentage de quantité que vous pourrez réceptionner en plus de la quantité commandée. Par exemple, vous avez commandé 100 unités, votre pourcentage de dépassement est de 10%, vous pourrez réceptionner 110 unités"
 Allowed Items,Articles autorisés,
 Party Specific Item,Restriction d'article disponible,
@@ -8907,7 +8768,6 @@
 Unrealized Profit / Loss Account,Compte de perte,
 Enable Provisional Accounting For Non Stock Items,Activer la provision pour les articles non stockés,
 Publish in Website,Publier sur le Site Web,
-List View,Vue en liste,
 Allow Excess Material Transfer,Autoriser les transfert de stock supérieurs à l'attendue,
 Allow transferring raw materials even after the Required Quantity is fulfilled,Autoriser les transfert  de matiéres premiére mais si la quantité requise est atteinte,
 Add Corrective Operation Cost in Finished Good Valuation,Ajouter des opérations de correction de coût pour la valorisation des produits finis,
@@ -8925,3 +8785,71 @@
 Enable Recommendations,Activer les recommendations,
 Item Search Settings,Paramétrage de la recherche d'article,
 Purchase demande,Demande de materiel,
+Internal Customer,Client interne
+Internal Supplier,Fournisseur interne
+Contact & Address,Contact et Adresse
+Primary Address and Contact,Adresse et contact principal
+Supplier Primary Contact,Contact fournisseur principal
+Supplier Primary Address,Adresse fournisseur principal
+From Opportunity,Depuis l'opportunité
+Default Receivable Accounts,Compte de débit par défaut
+Receivable Accounts,Compte de débit
+Mention if a non-standard receivable account,Veuillez mentionner s'il s'agit d'un compte débiteur non standard
+Allow Purchase,Autoriser à l'achat
+Inventory Settings,Paramétrage de l'inventaire
+Add Comment,Ajouter un Commentaire,
+More...,Plus...,
+Notes,Remarques,
+Payment Gateway,Passerelle de Paiement,
+Payment Gateway Name,Nom de la passerelle de paiement,
+Payments,Paiements,
+Plan Name,Nom du Plan,
+Portal,Portail,
+Scan Barcode,Scan Code Barre,
+Some information is missing,Certaines informations sont manquantes,
+Successful,Réussi,
+Tools,Outils,
+Use Sandbox,Utiliser Sandbox,
+Busy,Occupé,
+Completed By,Effectué par,
+Payment Failed,Le Paiement a Échoué,
+Column {0},Colonne {0},
+Field Mapping,Cartographie des champs,
+Not Specified,Non précisé,
+Update Type,Type de mise à jour,
+Dr,Dr,
+End Time,Heure de Fin,
+Fetching...,Aller chercher...,
+"It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","Il semble qu'il y a un problème avec la configuration de Stripe sur le serveur. En cas d'erreur, le montant est remboursé sur votre compte.",
+Looks like someone sent you to an incomplete URL. Please ask them to look into it.,On dirait que quelqu'un vous a envoyé vers URL incomplète. Veuillez leur demander d’analyser l’erreur.,
+Master,Maître,
+Pay,Payer,
+You can also copy-paste this link in your browser,Vous pouvez également copier-coller ce lien dans votre navigateur,
+Verified By,Vérifié Par,
+Invalid naming series (. missing) for {0},Masque de numérotation non valide (. Manquante) pour {0},
+Phone Number,Numéro de téléphone,
+Account SID,Compte SID,
+Global Defaults,Valeurs par Défaut Globales,
+Is Mandatory,Est obligatoire,
+WhatsApp,WhatsApp,
+Make a call,Passer un coup de téléphone,
+No of Employees,Nb de salarié(e)s
+No. of Employees,Nb de salarié(e)s
+Annual Revenue,CA annuel
+Qualified By,Qualifié par
+Qualified on,Qualifié le
+Open Tasks,Tâche à faire ouverte
+No open task,Pas de Tâche à faire ouverte
+Open Events,Evénements ouvert
+No open event,Pas Evénements ouvert
+New Task,Nv. Tâche à faire
+No Notes,Pas de note
+New Note,Nouvelle Note
+Prospect Owner,Resp. du Prospect
+Deal Owner,Resp. de l'opportunité
+Stage,Etape
+Probability,Probabilité
+Closing,Clôture
+Allow Sales,Autoriser à la vente
+Approve,Approuver,
+Reject,Rejeter,
diff --git a/erpnext/translations/gu.csv b/erpnext/translations/gu.csv
index 5691597..e2de8ce 100644
--- a/erpnext/translations/gu.csv
+++ b/erpnext/translations/gu.csv
@@ -113,7 +113,6 @@
 Add Items,વસ્તુઓ ઉમેરો,
 Add Leads,લીડ્સ ઉમેરો,
 Add Multiple Tasks,મલ્ટીપલ ટાસ્ક ઉમેરો,
-Add Row,પંક્તિ ઉમેરો,
 Add Sales Partners,વેચાણ ભાગીદારો ઉમેરો,
 Add Serial No,સીરીયલ કોઈ ઉમેરો,
 Add Students,વિદ્યાર્થીઓ ઉમેરી,
@@ -211,9 +210,7 @@
 An error occurred during the update process,અપડેટ પ્રક્રિયા દરમિયાન ભૂલ આવી,
 "An item exists with same name ({0}), please change the item group name or rename the item","એક વસ્તુ જ નામ સાથે હાજર ({0}), આઇટમ જૂથ નામ બદલવા અથવા વસ્તુ નામ બદલી કૃપા કરીને",
 Analyst,એનાલિસ્ટ,
-Analytics,ઍનલિટિક્સ,
 Annual Billing: {0},વાર્ષિક બિલિંગ: {0},
-Anonymous,અનામિક,
 Another Budget record '{0}' already exists against {1} '{2}' and account '{3}' for fiscal year {4},અન્ય બજેટ રેકોર્ડ &#39;{0}&#39; પહેલેથી જ {1} &#39;{2}&#39; અને નાણાકીય વર્ષ માટે &#39;{3}&#39; સામે અસ્તિત્વમાં છે {4},
 Another Period Closing Entry {0} has been made after {1},અન્ય પીરિયડ બંધ એન્ટ્રી {0} પછી કરવામાં આવી છે {1},
 Another Sales Person {0} exists with the same Employee id,અન્ય વેચાણ વ્યક્તિ {0} એ જ કર્મચારીનું ID સાથે અસ્તિત્વમાં,
@@ -283,14 +280,12 @@
 Attendance not submitted for {0} as {1} on leave.,રજા પર {1} તરીકે {1} તરીકેની હાજરી નથી.,
 Attribute table is mandatory,એટ્રીબ્યુટ ટેબલ ફરજિયાત છે,
 Attribute {0} selected multiple times in Attributes Table,એટ્રીબ્યુટ {0} લક્ષણો ટેબલ ઘણી વખત પસંદ,
-Author,લેખક,
 Authorized Signatory,અધિકૃત હસ્તાક્ષર,
 Auto Material Requests Generated,ઓટો સામગ્રી અરજીઓ પેદા,
 Auto Repeat,સ્વતઃ પુનરાવર્તન કરો,
 Auto repeat document updated,સ્વતઃ પુનરાવર્તિત દસ્તાવેજ અપડેટ થયો,
 Automotive,ઓટોમોટિવ,
 Available,ઉપલબ્ધ,
-Available Leaves,ઉપલબ્ધ પાંદડા,
 Available Qty,ઉપલબ્ધ Qty,
 Available Selling,ઉપલબ્ધ વેચાણ,
 Available for use date is required,ઉપયોગ તારીખ માટે ઉપલબ્ધ જરૂરી છે,
@@ -340,7 +335,6 @@
 Base URL,બેઝ URL,
 Based On,પર આધારિત,
 Based On Payment Terms,ચુકવણીની શરતોના આધારે,
-Basic,મૂળભૂત,
 Batch,બેચ,
 Batch Entries,બેચ પ્રવેશો,
 Batch ID is mandatory,બૅચ ID ફરજિયાત છે,
@@ -361,7 +355,6 @@
 Billable Hours,બિલ કરી શકાય તેવા કલાકો,
 Billed,ગણાવી,
 Billed Amount,ગણાવી રકમ,
-Billing,બિલિંગ,
 Billing Address,બિલિંગ સરનામું,
 Billing Address is same as Shipping Address,બિલિંગ સરનામું શિપિંગ સરનામાં જેવું જ છે,
 Billing Amount,બિલિંગ રકમ,
@@ -560,7 +553,6 @@
 Consumed Qty,કમ્પોનન્ટ Qty,
 Consumer Products,કન્ઝ્યુમર પ્રોડક્ટ્સ,
 Contact,સંપર્ક,
-Contact Details,સંપર્ક વિગતો,
 Contact Us,અમારો સંપર્ક કરો,
 Content,સામગ્રી,
 Content Masters,સામગ્રી માસ્ટર્સ,
@@ -715,7 +707,6 @@
 Date of Joining,જોડાયા તારીખ,
 Date of Joining must be greater than Date of Birth,જોડાયા જન્મ તારીખ તારીખ કરતાં મોટી હોવી જ જોઈએ,
 Date of Transaction,ટ્રાન્ઝેક્શનની તારીખ,
-Datetime,તારીખ સમય,
 Day,દિવસ,
 Debit,ડેબિટ,
 Debit ({0}),ડેબિટ ({0}),
@@ -874,7 +865,6 @@
 Employee cannot report to himself.,કર્મચારીનું પોતાની જાતને જાણ કરી શકો છો.,
 Employee {0} has already applied for {1} between {2} and {3} : ,{2} અને {3} વચ્ચે {1} માટે કર્મચારી {0} પહેલેથી જ લાગુ છે:,
 Employee {0} of grade {1} have no default leave policy,ગ્રેડ {1} નો કર્મચારી {0} પાસે કોઈ મૂળભૂત રજા નીતિ નથી,
-Enable,સક્ષમ કરો,
 Enable / disable currencies.,/ અક્ષમ કરો કરન્સી સક્રિય કરો.,
 Enabled,સક્ષમ,
 "Enabling 'Use for Shopping Cart', as Shopping Cart is enabled and there should be at least one Tax Rule for Shopping Cart","સક્રિય, &#39;શોપિંગ કાર્ટ માટે ઉપયોગ&#39; શોપિંગ કાર્ટ તરીકે સક્રિય છે અને શોપિંગ કાર્ટ માટે ઓછામાં ઓછી એક કર નિયમ ત્યાં પ્રયત્ન કરીશું",
@@ -905,7 +895,6 @@
 Error: Not a valid id?,ભૂલ: માન્ય ID ને?,
 Estimated Cost,અંદાજીત કિંમત,
 "Even if there are multiple Pricing Rules with highest priority, then following internal priorities are applied:","સૌથી વધુ પ્રાધાન્ય સાથે બહુવિધ પ્રાઇસીંગ નિયમો હોય છે, પણ જો, તો પછી નીચેના આંતરિક પ્રાથમિકતાઓ લાગુ પડે છે:",
-Event,ઇવેન્ટ,
 Exchange Gain/Loss,એક્સચેન્જ મેળવી / નુકશાન,
 Exchange Rate Revaluation master.,વિનિમય દર મૂલ્યાંકન માસ્ટર.,
 Exchange Rate must be same as {0} {1} ({2}),વિનિમય દર તરીકે જ હોવી જોઈએ {0} {1} ({2}),
@@ -1032,7 +1021,6 @@
 From value must be less than to value in row {0},કિંમત પંક્તિ માં કિંમત કરતાં ઓછી હોવી જોઈએ થી {0},
 From {0} | {1} {2},પ્રતિ {0} | {1} {2},
 Fulfillment,પરિપૂર્ણતા,
-Full,પૂર્ણ,
 Full Name,આખુ નામ,
 Fully Depreciated,સંપૂર્ણપણે અવમૂલ્યન,
 Furnitures and Fixtures,Furnitures અને ફિક્સર,
@@ -1133,7 +1121,6 @@
 Hub Sync ID,હબ સમન્વયન ID,
 Human Resource,માનવ સંસાધન,
 Human Resources,માનવ સંસાધન,
-IFSC Code,આઈએફએસસી કોડ,
 IGST Amount,IGST રકમ,
 IP Address,IP સરનામું,
 ITC Available (whether in full op part),આઇટીસી ઉપલબ્ધ છે (સંપૂર્ણ ઓપ ભાગમાં છે કે નહીં),
@@ -1185,7 +1172,6 @@
 Ineligible ITC,અયોગ્ય આઇટીસી,
 Initiated,શરૂ,
 Inpatient Record,ઇનપેશન્ટ રેકોર્ડ,
-Insert,સામેલ કરો,
 Installation Note,સ્થાપન નોંધ,
 Installation Note {0} has already been submitted,સ્થાપન નોંધ {0} પહેલાથી જ સબમિટ કરવામાં આવી છે,
 Installation date cannot be before delivery date for Item {0},સ્થાપન તારીખ વસ્તુ માટે બોલ તારીખ પહેલાં ન હોઈ શકે {0},
@@ -1197,7 +1183,6 @@
 Insurance Start date should be less than Insurance End date,વીમા પ્રારંભ તારીખ કરતાં વીમા અંતિમ તારીખ ઓછી હોવી જોઈએ,
 Integrated Tax,એકીકૃત કર,
 Inter-State Supplies,આંતર-રાજ્ય પુરવઠો,
-Interests,રૂચિ,
 Internet Publishing,ઈન્ટરનેટ પબ્લિશિંગ,
 Intra-State Supplies,ઇન્ટ્રા સ્ટેટ સપ્લાય,
 Introduction,પરિચય,
@@ -1316,7 +1301,6 @@
 Lab testing datetime cannot be before collection datetime,લેબ પરીક્ષણ ડેટાટાઇમ સંગ્રહ સમયનો સમય પહેલાં ન હોઈ શકે,
 Label,લેબલ,
 Laboratory,લેબોરેટરી,
-Language Name,ભાષા નામ,
 Large,મોટા,
 Last Communication,છેલ્લે કોમ્યુનિકેશન,
 Last Communication Date,છેલ્લે કોમ્યુનિકેશન તારીખ,
@@ -1347,8 +1331,6 @@
 Letter Heads for print templates.,પ્રિન્ટ નમૂનાઓ માટે પત્ર ચેતવણી.,
 Level,સ્તર,
 Liability,જવાબદારી,
-License,લાઈસન્સ,
-Limit,મર્યાદા,
 Limit Crossed,મર્યાદા ઓળંગી,
 Link to Material Request,લિંક મટીરિયલ વિનંતી,
 List of all share transactions,બધા શેર લેવડ્સની સૂચિ,
@@ -1359,7 +1341,6 @@
 Loans (Liabilities),લોન્સ (જવાબદારીઓ),
 Loans and Advances (Assets),લોન અને એડવાન્સિસ (અસ્ક્યામત),
 Local,સ્થાનિક,
-Log,પ્રવેશ કરો,
 Logs for maintaining sms delivery status,SMS વિતરણ સ્થિતિ જાળવવા માટે લોગ,
 Lost,લોસ્ટ,
 Lost Reasons,લોસ્ટ કારણો,
@@ -1445,7 +1426,6 @@
 Medical Department,તબીબી વિભાગ,
 Medical Record,તબીબી રેકોર્ડ,
 Medium,મધ્યમ,
-Meeting,બેઠક,
 Member Activity,સભ્ય પ્રવૃત્તિ,
 Member ID,સભ્ય ID,
 Member Name,સભ્યનું નામ,
@@ -1495,7 +1475,6 @@
 Multiple Variants,મલ્ટીપલ વેરિયન્ટ્સ,
 Multiple fiscal years exist for the date {0}. Please set company in Fiscal Year,મલ્ટીપલ નાણાકીય વર્ષ તારીખ {0} માટે અસ્તિત્વ ધરાવે છે. નાણાકીય વર્ષ કંપની સુયોજિત કરો,
 Music,સંગીત,
-My Account,મારું ખાતું,
 Name error: {0},નામ ભૂલ: {0},
 Name of new Account. Note: Please don't create accounts for Customers and Suppliers,નવા એકાઉન્ટ ના નામ. નોંધ: ગ્રાહકો અને સપ્લાયર્સ માટે એકાઉન્ટ્સ બનાવી નથી કરો,
 Name or Email is mandatory,નામ અથવા ઇમેઇલ ફરજિયાત છે,
@@ -1538,7 +1517,6 @@
 New credit limit is less than current outstanding amount for the customer. Credit limit has to be atleast {0},નવું ક્રેડિટ મર્યાદા ગ્રાહક માટે વર્તમાન બાકી રકમ કરતાં ઓછી છે. ક્રેડિટ મર્યાદા ઓછામાં ઓછા હોઈ શકે છે {0},
 New task,નવી કાર્ય,
 New {0} pricing rules are created,નવા {0} ભાવો નિયમો બનાવવામાં આવે છે,
-Newsletters,ન્યૂઝલેટર્સ,
 Newspaper Publishers,અખબાર પ્રકાશકો,
 Next,આગળ,
 Next Contact By cannot be same as the Lead Email Address,આગામી સંપર્ક આગેવાની ઇમેઇલ સરનામું તરીકે જ ન હોઈ શકે,
@@ -1686,7 +1664,6 @@
 Other,અન્ય,
 Other Reports,અન્ય અહેવાલો,
 "Other outward supplies(Nil rated,Exempted)","અન્ય બાહ્ય પુરવઠો (નીલ રેટેડ, મુકત)",
-Others,અન્ય,
 Out Qty,Qty આઉટ,
 Out Value,મૂલ્ય,
 Out of Order,હુકમ બહાર,
@@ -1726,7 +1703,6 @@
 Party Type and Party is mandatory for {0} account,{0} એકાઉન્ટ માટે પક્ષના પ્રકાર અને પાર્ટી ફરજિયાત છે,
 Party Type is mandatory,પાર્ટી પ્રકાર ફરજિયાત છે,
 Party is mandatory,પાર્ટી ફરજિયાત છે,
-Password,પાસવર્ડ,
 Past Due Date,પાછલા બાકીની તારીખ,
 Patient,પેશન્ટ,
 Patient Appointment,પેશન્ટ નિમણૂંક,
@@ -1784,7 +1760,6 @@
 Pharmaceutical,ફાર્માસ્યુટિકલ,
 Pharmaceuticals,ફાર્માસ્યુટિકલ્સ,
 Physician,ફિઝિશિયન,
-Pincode,પીન કોડ,
 Place Of Supply (State/UT),પુરવઠા સ્થળ (રાજ્ય / કેન્દ્રશાસિત કેન્દ્ર),
 Place Order,ઓર્ડર કરો,
 Plan Name,યોજનાનું નામ,
@@ -1896,7 +1871,6 @@
 Please select date,કૃપા કરીને તારીખ પસંદ,
 Please select item code,આઇટમ કોડ પસંદ કરો,
 Please select month and year,મહિનો અને વર્ષ પસંદ કરો,
-Please select prefix first,પ્રથમ ઉપસર્ગ પસંદ કરો,
 Please select the Company,કંપની પસંદ કરો,
 Please select the Multiple Tier Program type for more than one collection rules.,કૃપા કરીને એકથી વધુ સંગ્રહ નિયમો માટે મલ્ટીપલ ટાયર પ્રોગ્રામ પ્રકાર પસંદ કરો,
 Please select the assessment group other than 'All Assessment Groups',કૃપા કરીને આકારણી &#39;તમામ એસેસમેન્ટ જૂથો&#39; કરતાં અન્ય જૂથ પસંદ,
@@ -1913,7 +1887,6 @@
 Please set Company filter blank if Group By is 'Company',કૃપા કરીને કંપની ખાલી ફિલ્ટર સેટ જો ગ્રુપ દ્વારા &#39;કંપની&#39; છે,
 Please set Default Payroll Payable Account in Company {0},કંપની મૂળભૂત પગારપત્રક ચૂકવવાપાત્ર એકાઉન્ટ સેટ કૃપા કરીને {0},
 Please set Depreciation related Accounts in Asset Category {0} or Company {1},એસેટ વર્ગ {0} અથવા કંપની અવમૂલ્યન સંબંધિત એકાઉન્ટ્સ સુયોજિત કરો {1},
-Please set Email Address,ઇમેઇલ સરનામું સેટ કૃપા કરીને,
 Please set GST Accounts in GST Settings,કૃપા કરીને GST સેટિંગ્સમાં GST એકાઉન્ટ્સ સેટ કરો,
 Please set Hotel Room Rate on {},{} પર હોટેલ રૂમ રેટ સેટ કરો,
 Please set Number of Depreciations Booked,Depreciations સંખ્યા નક્કી સુયોજિત કરો,
@@ -1936,7 +1909,6 @@
 Please set the Email ID for the Student to send the Payment Request,વિદ્યાર્થી માટે ચુકવણી વિનંતી મોકલવા માટે કૃપા કરીને ઇમેઇલ આઈડી સેટ કરો,
 Please set the Item Code first,આઇટમ કોડને પહેલા સેટ કરો,
 Please set the Payment Schedule,કૃપા કરીને ચુકવણીનું સમયપત્રક સેટ કરો,
-Please set the series to be used.,કૃપા કરી શ્રેણીનો ઉપયોગ કરવા માટે સેટ કરો,
 Please set {0} for address {1},કૃપા કરીને સરનામાં માટે {0} સેટ કરો {1},
 Please setup Students under Student Groups,વિદ્યાર્થી જૂથો હેઠળ વિદ્યાર્થી સુયોજિત કરો,
 Please specify Company,કંપની સ્પષ્ટ કરો,
@@ -1953,7 +1925,6 @@
 Point-of-Sale,પોઇન્ટ ઓફ સેલ,
 Point-of-Sale Profile,પોઇન્ટ ઓફ સેલ પ્રોફાઇલ,
 Portal,પોર્ટલ,
-Portal Settings,પોર્ટલ સેટિંગ્સ,
 Possible Supplier,શક્ય પુરવઠોકર્તા,
 Postal Expenses,ટપાલ ખર્ચ,
 Posting Date,પોસ્ટ તારીખ,
@@ -2152,12 +2123,10 @@
 Reference No is mandatory if you entered Reference Date,તમે સંદર્ભ તારીખ દાખલ જો સંદર્ભ કોઈ ફરજિયાત છે,
 Reference No.,સંદર્ભ ક્રમાંક.,
 Reference Number,સંદર્ભ નંબર,
-Reference Owner,સંદર્ભ માલિક,
 Reference Type,સંદર્ભ પ્રકાર,
 "Reference: {0}, Item Code: {1} and Customer: {2}","સંદર્ભ: {0}, આઇટમ કોડ: {1} અને ગ્રાહક: {2}",
 References,સંદર્ભો,
 Refresh Token,પુનઃતાજું ટોકન,
-Region,પ્રદેશ,
 Register,નોંધણી કરો,
 Rejected,નકારેલું,
 Related,સંબંધિત,
@@ -2179,7 +2148,6 @@
 Replace BOM and update latest price in all BOMs,BOM ને બદલો અને તમામ BOM માં નવીનતમ ભાવ અપડેટ કરો,
 Replied,જવાબ આપ્યો,
 Report,રિપોર્ટ,
-Report Builder,રિપોર્ટ બિલ્ડર,
 Report Type,રિપોર્ટ પ્રકાર,
 Report Type is mandatory,રિપોર્ટ પ્રકાર ફરજિયાત છે,
 Reports,અહેવાલ,
@@ -2355,13 +2323,11 @@
 Same Company is entered more than once,સેમ કંપની એક કરતા વધુ વખત દાખલ થયેલ,
 Same item cannot be entered multiple times.,એ જ વસ્તુ ઘણી વખત દાખલ કરી શકાતી નથી.,
 Same supplier has been entered multiple times,જ સપ્લાયર ઘણી વખત દાખલ કરવામાં આવી છે,
-Sample,નમૂના,
 Sample Collection,નમૂનાનો સંગ્રહ,
 Sample quantity {0} cannot be more than received quantity {1},નમૂના જથ્થો {0} પ્રાપ્ત જથ્થા કરતા વધુ હોઈ શકતી નથી {1},
 Sanctioned,મંજૂર,
 Sand,રેતી,
 Saturday,શનિવારે,
-Saved,સાચવેલા,
 Saving {0},સાચવી રહ્યું છે {0},
 Scan Barcode,બારકોડ સ્કેન કરો,
 Schedule,સૂચિ,
@@ -2463,7 +2429,6 @@
 Series Updated,સિરીઝ સુધારાશે,
 Series Updated Successfully,સિરીઝ સફળતાપૂર્વક અપડેટ,
 Series is mandatory,સિરીઝ ફરજિયાત છે,
-Series {0} already used in {1},પહેલેથી ઉપયોગમાં સિરીઝ {0} {1},
 Service,સેવા,
 Service Level Agreement,સેવા સ્તર કરાર,
 Service Level Agreement.,સેવા સ્તર કરાર.,
@@ -2479,7 +2444,6 @@
 Set Tax Rule for shopping cart,શોપિંગ કાર્ટ માટે સેટ ટેક્સ નિયમ,
 Set as Closed,બંધ કરો,
 Set as Completed,પૂર્ણ તરીકે સેટ કરો,
-Set as Default,ડિફૉલ્ટ તરીકે સેટ કરો,
 Set as Lost,લોસ્ટ તરીકે સેટ કરો,
 Set as Open,ઓપન તરીકે સેટ કરો,
 Set default inventory account for perpetual inventory,શાશ્વત યાદી માટે ડિફોલ્ટ યાદી એકાઉન્ટ સેટ,
@@ -2511,7 +2475,6 @@
 Shareholder,શેરહોલ્ડર,
 Ship To State,શિપ ટુ સ્ટેટ,
 Shipments,આવેલા શિપમેન્ટની,
-Shipping,વહાણ પરિવહન,
 Shipping Address,પહોંચાડવાનું સરનામું,
 "Shipping Address does not have country, which is required for this Shipping Rule","શિપિંગ સરનામું પાસે દેશ નથી, જે આ શીપીંગ નિયમ માટે જરૂરી છે",
 Shipping rule only applicable for Buying,શીપીંગ નિયમ ફક્ત ખરીદી માટે લાગુ પડે છે,
@@ -2564,7 +2527,6 @@
 Split Batch,સ્પ્લિટ બેચ,
 Split Issue,સ્પ્લિટ ઇશ્યૂ,
 Sports,રમતો,
-Standard,સ્ટાન્ડર્ડ,
 Standard Buying,સ્ટાન્ડર્ડ ખરીદી,
 Standard Selling,ધોરણ વેચાણ,
 Standard contract terms for Sales or Purchase.,સેલ્સ અથવા ખરીદી માટે નિયમ કરાર શરતો.,
@@ -2731,7 +2693,6 @@
 Terms and Conditions,નિયમો અને શરત,
 Terms and Conditions Template,નિયમો અને શરતો ઢાંચો,
 Territory,પ્રદેશ,
-Test,ટેસ્ટ,
 Thank you for your business!,તમારા વ્યવસાય માટે આભાર!,
 The 'From Package No.' field must neither be empty nor it's value less than 1.,&#39;પેકેજ નંબરથી&#39; ક્ષેત્ર ખાલી હોવું જોઈએ નહીં અથવા તે 1 કરતાં ઓછું મૂલ્ય નથી.,
 The Brand,આ બ્રાન્ડ,
@@ -2848,7 +2809,6 @@
 Total (Without Tax),કુલ (કર વગર),
 Total Achieved,કુલ પ્રાપ્ત,
 Total Actual,વાસ્તવિક કુલ,
-Total Allocated Leaves,કુલ ફાળવેલ પાંદડા,
 Total Amount,કુલ રકમ,
 Total Amount Credited,કુલ રકમનો શ્રેય,
 Total Applicable Charges in Purchase Receipt Items table must be same as Total Taxes and Charges,ખરીદી રસીદ વસ્તુઓ ટેબલ કુલ લાગુ ખર્ચ કુલ કર અને ખર્ચ તરીકે જ હોવી જોઈએ,
@@ -2892,7 +2852,6 @@
 Total(Amt),કુલ (એએમટી),
 Total(Qty),કુલ (Qty),
 Traceability,traceability,
-Traceback,ટ્રેસબેક,
 Track Leads by Lead Source.,લીડ સોર્સ દ્વારા ટ્રેક લીડ,
 Transaction,ટ્રાન્ઝેક્શન,
 Transaction Date,ટ્રાન્ઝેક્શન તારીખ,
@@ -2930,7 +2889,6 @@
 UOM Conversion factor is required in row {0},UOM રૂપાંતર પરિબળ પંક્તિ જરૂરી છે {0},
 UOM coversion factor required for UOM: {0} in Item: {1},UOM માટે જરૂરી UOM coversion પરિબળ: {0} વસ્તુ: {1},
 URL,URL ને,
-Unable to find DocType {0},ડૉકટાઇપ {0} શોધવામાં અસમર્થ,
 Unable to find exchange rate for {0} to {1} for key date {2}. Please create a Currency Exchange record manually,માટે વિનિમય દર શોધવામાં અસમર્થ {0} પર {1} કી તારીખ માટે {2}. ચલણ વિનિમય રેકોર્ડ મેન્યુઅલી બનાવવા કૃપા કરીને,
 Unable to find score starting at {0}. You need to have standing scores covering 0 to 100,{0} થી શરૂ થતાં સ્કોર શોધવા માટે અસમર્થ. તમારે 0 થી 100 સુધીના સ્કોર્સ ધરાવતી સ્કોર્સ હોવી જરૂરી છે,
 Unable to find variable: ,ચલ શોધવામાં અસમર્થ:,
@@ -2960,7 +2918,6 @@
 Upload your letter head and logo. (you can edit them later).,તમારો પત્ર વડા અને લોગો અપલોડ કરો. (જો તમે પછીથી તેમને ફેરફાર કરી શકો છો).,
 Upper Income,ઉચ્ચ આવક,
 Use Sandbox,ઉપયોગ સેન્ડબોક્સ,
-Used Leaves,વપરાયેલ પાંદડા,
 User,વપરાશકર્તા,
 User ID,વપરાશકર્તા ID,
 User ID not set for Employee {0},વપરાશકર્તા ID કર્મચારી માટે સેટ નથી {0},
@@ -3051,7 +3008,6 @@
 Website Settings,વેબસાઇટ સેટિંગ્સ,
 Wednesday,બુધવારે,
 Week,અઠવાડિયું,
-Weekdays,અઠવાડિયાના દિવસો,
 Weekly,અઠવાડિક,
 "Weight is mentioned,\nPlease mention ""Weight UOM"" too","વજન \ n કૃપા કરીને પણ &quot;વજન UOM&quot; ઉલ્લેખ, ઉલ્લેખ કર્યો છે",
 Welcome email sent,આપનું સ્વાગત છે ઇમેઇલ મોકલવામાં,
@@ -3072,7 +3028,6 @@
 Work Order {0} must be submitted,વર્ક ઓર્ડર {0} સબમિટ હોવો આવશ્યક છે,
 Work Orders Created: {0},વર્ક ઓર્ડર્સ બનાવ્યાં: {0},
 Work-in-Progress Warehouse is required before Submit,વર્ક ઈન પ્રોગ્રેસ વેરહાઉસ સબમિટ પહેલાં જરૂરી છે,
-Workflow,વર્કફ્લો,
 Working,કામ,
 Working Hours,કામ નાં કલાકો,
 Workstation,વર્કસ્ટેશન,
@@ -3102,7 +3057,6 @@
 You need to be a user other than Administrator with System Manager and Item Manager roles to register on Marketplace.,માર્કેટમેન પર નોંધણી કરવા માટે તમે સિસ્ટમ વ્યવસ્થાપક અને આઇટમ મેનેજર ભૂમિકાઓ સાથે એડમિનિસ્ટ્રેટર સિવાયના એક વપરાશકર્તા બનવાની જરૂર છે.,
 You need to be a user with System Manager and Item Manager roles to add users to Marketplace.,માર્કેટપ્લેસમાં વપરાશકર્તાઓ ઉમેરવા માટે તમારે સિસ્ટમ મેનેજર અને આઇટમ મેનેજર ભૂમિકાઓ સાથે વપરાશકર્તા બનવાની જરૂર છે.,
 You need to be a user with System Manager and Item Manager roles to register on Marketplace.,તમે બજાર પર રજીસ્ટર કરવા માટે સિસ્ટમ મેનેજર અને આઇટમ મેનેજર ભૂમિકાઓ સાથે વપરાશકર્તા બનવાની જરૂર છે.,
-You need to be logged in to access this page,તમે આ પાનું ઍક્સેસ કરવા માટે લૉગ ઇન કરવાની જરૂર,
 You need to enable Shopping Cart,તમે શોપિંગ કાર્ટ સક્રિય કરવાની જરૂર છે,
 You will lose records of previously generated invoices. Are you sure you want to restart this subscription?,તમે અગાઉ બનાવેલ ઇન્વૉઇસેસના રેકોર્ડ ગુમાવશો. શું તમે ખરેખર આ સબ્સ્ક્રિપ્શન ફરીથી શરૂ કરવા માંગો છો?,
 Your Organization,તમારી સંસ્થા,
@@ -3218,7 +3172,6 @@
 Assigned To,સોંપેલ,
 Chat,ચેટ,
 Completed By,દ્વારા પૂર્ણ,
-County,કાઉન્ટી,
 Day of Week,અઠવાડિયાના દિવસ,
 "Dear System Manager,","પ્રિય સિસ્ટમ વ્યવસ્થાપક,",
 Default Value,મૂળભૂત કિંમત,
@@ -3229,31 +3182,21 @@
 Fieldtype,Fieldtype,
 Help Articles,મદદ લેખો,
 ID,આઈડી,
-Images,છબીઓ,
 Import,આયાત,
 Language,ભાષા,
 Likes,પસંદ,
 Merge with existing,વર્તમાન સાથે મર્જ,
-Office,ઓફિસ,
 Orientation,ઓરિએન્ટેશન,
 Parent,પિતૃ,
-Passive,નિષ્ક્રીય,
 Payment Failed,ચુકવણી કરવામાં નિષ્ફળ,
-Permanent,કાયમી,
 Personal,વ્યક્તિગત,
-Plant,પ્લાન્ટ,
 Post,પોસ્ટ,
-Postal,ટપાલ,
 Postal Code,પોસ્ટ કોડ,
-Previous,Next અગાઉના આગળ,
 Provider,પ્રદાતા,
 Read Only,ફક્ત વાંચી,
 Recipient,પ્રાપ્તકર્તા,
 Reviews,સમીક્ષાઓ,
 Sender,પ્રેષક,
-Shop,દુકાન,
-Subsidiary,સબસિડીયરી,
-There is some problem with the file url: {0},ફાઈલ URL સાથે કેટલાક સમસ્યા છે: {0},
 There were errors while sending email. Please try again.,ઇમેઇલ મોકલતી વખતે ભૂલો આવી હતી. ફરી પ્રયત્ન કરો.,
 Values Changed,મૂલ્યો બદલી,
 or,અથવા,
@@ -3280,19 +3223,16 @@
 Quality Feedback Template,ગુણવત્તા પ્રતિસાદ Templateાંચો,
 Rules for applying different promotional schemes.,વિવિધ પ્રમોશનલ યોજનાઓ લાગુ કરવાના નિયમો.,
 Show {0},બતાવો {0},
-"Special Characters except '-', '#', '.', '/', '{{' and '}}' not allowed in naming series {0}","&quot;-&quot;, &quot;#&quot;, &quot;.&quot;, &quot;/&quot;, &quot;{{&quot; અને &quot;}}&quot; સિવાયના વિશેષ અક્ષરો નામકરણ શ્રેણીમાં મંજૂરી નથી {0}",
 Target Details,લક્ષ્યાંક વિગતો,
 {0} already has a Parent Procedure {1}.,{0} પાસે પહેલેથી જ પિતૃ કાર્યવાહી છે {1}.,
 API,API,
 Annual,વાર્ષિક,
 Change,બદલો,
 Contact Email,સંપર્ક ઇમેઇલ,
-Export Type,નિકાસ પ્રકાર,
 From Date,તારીખ થી,
 Group By,જૂથ દ્વારા,
 Invalid URL,અમાન્ય URL,
 Landscape,લેન્ડસ્કેપ,
-Last Sync On,છેલ્લું સમન્વયન ચાલુ કરો,
 Naming Series,નામકરણ સિરીઝ,
 No data to export,નિકાસ કરવા માટે કોઈ ડેટા નથી,
 Portrait,પોટ્રેટ,
@@ -3302,7 +3242,6 @@
 Show Document,દસ્તાવેજ બતાવો,
 Show Traceback,ટ્રેસબેક બતાવો,
 Video,વિડિઓ,
-Webhook Secret,વેબહૂક સિક્રેટ,
 % Of Grand Total,ગ્રાન્ડ કુલનો%,
 <b>Company</b> is a mandatory filter.,<b>કંપની</b> ફરજિયાત ફિલ્ટર છે.,
 <b>From Date</b> is a mandatory filter.,<b>તારીખથી</b> ફરજિયાત ફિલ્ટર છે.,
@@ -3358,7 +3297,6 @@
 BOM Comparison Tool,BOM તુલના સાધન,
 BOM recursion: {0} cannot be child of {1},BOM રિકર્ઝન: {0 એ {1 of નું બાળક હોઈ શકતું નથી,
 BOM recursion: {0} cannot be parent or child of {1},BOM રિકર્ઝન: {0 માતાપિતા અથવા {1} ના બાળક હોઈ શકતું નથી,
-Back to Home,ઘરે પાછા,
 Back to Messages,સંદેશા પર પાછા,
 Bank Data mapper doesn't exist,બેંક ડેટા મેપર અસ્તિત્વમાં નથી,
 Bank Details,બેંકની વિગત,
@@ -3420,7 +3358,6 @@
 Currency,કરન્સી,
 Current Status,વર્તમાન સ્થિતિ,
 Customer PO,ગ્રાહક પો.સ્ટે,
-Customize,કસ્ટમાઇઝ,
 Daily,દૈનિક,
 Date,તારીખ,
 Date of Birth cannot be greater than Joining Date.,જન્મની તારીખ જોડાવાની તારીખ કરતા મોટી હોઇ શકે નહીં.,
@@ -3454,7 +3391,6 @@
 ERPNext could not find any matching payment entry,ERPNext કોઈપણ મેળ ખાતી પેમેન્ટ એન્ટ્રી શોધી શક્યા નથી,
 Earliest Age,પ્રારંભિક ઉંમર,
 Edit Details,વિગતો સંપાદિત કરો,
-Edit Profile,પ્રોફાઇલ સંપાદિત કરો,
 Either GST Transporter ID or Vehicle No is required if Mode of Transport is Road,જો પરિવહન મોડનો માર્ગ હોય તો ક્યાં તો જીએસટી ટ્રાન્સપોર્ટર આઈડી અથવા વાહન નંબર આવશ્યક નથી,
 Email,ઇમેઇલ,
 Email Campaigns,ઇમેઇલ ઝુંબેશ,
@@ -3482,7 +3418,6 @@
 Fetch Items from Warehouse,વેરહાઉસમાંથી આઇટમ્સ લાવો,
 Fetching...,લાવી રહ્યું છે ...,
 Field,ક્ષેત્ર,
-File Manager,ફાઇલ વ્યવસ્થાપક,
 Filters,ગાળકો,
 Finding linked payments,કડી થયેલ ચુકવણીઓ શોધવી,
 Fleet Management,ફ્લીટ મેનેજમેન્ટ,
@@ -3521,7 +3456,6 @@
 Incorrect Warehouse,ખોટો વેરહાઉસ,
 Invalid Barcode. There is no Item attached to this barcode.,અમાન્ય બારકોડ. આ બારકોડ સાથે કોઈ આઇટમ જોડાયેલ નથી.,
 Invalid credentials,અમાન્ય ઓળખાણપત્ર,
-Invite as User,વપરાશકર્તા તરીકે આમંત્રણ આપો,
 Issue Priority.,અગ્રતા અદા કરો.,
 Issue Type.,ઇશ્યુનો પ્રકાર.,
 "It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","એવું લાગે છે કે સર્વરની પટ્ટી ગોઠવણી સાથે સમસ્યા છે. નિષ્ફળતાના કિસ્સામાં, રકમ તમારા એકાઉન્ટમાં પરત કરાશે.",
@@ -3564,7 +3498,6 @@
 New Invoice,નવું ભરતિયું,
 New Payment,નવી ચુકવણી,
 New release date should be in the future,નવી પ્રકાશન તારીખ ભવિષ્યમાં હોવી જોઈએ,
-Newsletter,ન્યૂઝલેટર,
 No Account matched these filters: {},આ ફિલ્ટર્સ સાથે કોઈ એકાઉન્ટ મેળ ખાતું નથી: {},
 No communication found.,કોઈ વાતચીત મળી નથી.,
 No correct answer is set for {0},Correct 0 for માટે કોઈ સાચો જવાબ સેટ નથી,
@@ -3640,7 +3573,6 @@
 Please setup a default bank account for company {0},કૃપા કરીને કંપની for 0} માટે ડિફ defaultલ્ટ બેંક એકાઉન્ટ સેટ કરો.,
 Please specify,કૃપયા ચોક્કસ ઉલ્લેખ કરો,
 Please specify a {0},કૃપા કરી {0 specify નો ઉલ્લેખ કરો,lead
-Printing,પ્રિન્ટિંગ,
 Priority,પ્રાધાન્યતા,
 Priority has been changed to {0}.,પ્રાધાન્યતાને બદલીને {0} કરી દેવામાં આવી છે.,
 Priority {0} has been repeated.,પ્રાધાન્યતા {0} પુનરાવર્તન કરવામાં આવી છે.,
@@ -3649,7 +3581,6 @@
 Project,પ્રોજેક્ટ,
 Provide the academic year and set the starting and ending date.,શૈક્ષણિક વર્ષ પ્રદાન કરો અને પ્રારંભિક અને અંતિમ તારીખ સેટ કરો.,
 Public token is missing for this bank,આ બેંક માટે સાર્વજનિક ટોકન ખૂટે છે,
-Publish,પ્રકાશિત કરો,
 Publish 1 Item,1 આઇટમ પ્રકાશિત કરો,
 Publish Items,આઇટમ્સ પ્રકાશિત કરો,
 Publish More Items,વધુ વસ્તુઓ પ્રકાશિત કરો,
@@ -3677,7 +3608,6 @@
 Reconciled,સમાધાન,
 Recruitment,ભરતી,
 Red,Red,
-Refreshing,પ્રેરણાદાયક,
 Release date must be in the future,પ્રકાશન તારીખ ભવિષ્યમાં હોવી આવશ્યક છે,
 Relieving Date must be greater than or equal to Date of Joining,રાહત આપવાની તારીખ જોડાવાની તારીખથી મોટી અથવા તેના જેટલી હોવી જોઈએ,
 Rename,નામ બદલો,
@@ -3721,7 +3651,6 @@
 Search for a payment,ચુકવણી માટે શોધ કરો,
 Search for anything ...,કંઈપણ માટે શોધ કરો ...,
 Search results for,માટે શોધ પરિણામ,
-Select All,બધા પસંદ કરો,
 Select Difference Account,ડિફરન્સ એકાઉન્ટ પસંદ કરો,
 Select a Default Priority.,ડિફોલ્ટ પ્રાધાન્યતા પસંદ કરો.,
 Select a company,કોઈ કંપની પસંદ કરો,
@@ -3740,11 +3669,9 @@
 Service Level Agreement has been changed to {0}.,સેવા સ્તર કરારને બદલીને {0} કરવામાં આવ્યો છે.,
 Service Level Agreement was reset.,સેવા સ્તર કરાર ફરીથી સેટ કરવામાં આવ્યો હતો.,
 Service Level Agreement with Entity Type {0} and Entity {1} already exists.,એન્ટિટી પ્રકાર Service 0} અને એન્ટિટી {1 with સાથે સર્વિસ લેવલ એગ્રીમેન્ટ પહેલાથી અસ્તિત્વમાં છે.,
-Set,સેટ,
 Set Meta Tags,મેટા ટ Tagsગ્સ સેટ કરો,
 Set {0} in company {1},કંપનીમાં {0 Set સેટ કરો {1},
 Setup,સ્થાપના,
-Setup Wizard,સેટઅપ વિઝાર્ડ,
 Shift Management,શીફ્ટ મેનેજમેન્ટ,
 Show Future Payments,ભાવિ ચુકવણીઓ બતાવો,
 Show Linked Delivery Notes,લિંક્ડ ડિલિવરી નોટ્સ બતાવો,
@@ -3815,7 +3742,6 @@
 Unreconciled,અનકન્ક્સ્ડ,
 Unsupported GST Category for E-Way Bill JSON generation,ઇ-વે બિલ JSON જનરેશન માટે અસમર્થિત જીએસટી કેટેગરી,
 Update,સુધારો,
-Update Details,અપડેટ વિગતો,
 Update Taxes for Items,આઇટમ્સ માટે કર સુધારો,
 "Upload a bank statement, link or reconcile a bank account","કોઈ બેંક સ્ટેટમેન્ટ અપલોડ કરો, બેંક એકાઉન્ટને લિંક કરો અથવા સમાધાન કરો",
 Upload a statement,નિવેદન અપલોડ કરો,
@@ -3839,7 +3765,6 @@
 XML Files Processed,XML ફાઇલો પ્રોસેસ્ડ,
 Year,વર્ષ,
 Yearly,વાર્ષિક,
-You,તમે,
 You are not allowed to enroll for this course,તમને આ કોર્સ માટે નોંધણી કરવાની મંજૂરી નથી,
 You are not enrolled in program {0},તમે પ્રોગ્રામ rol 0 in માં નોંધાયેલા નથી,
 You can Feature upto 8 items.,તમે 8 વસ્તુઓ સુધી ફીચર કરી શકો છો.,
@@ -3856,7 +3781,6 @@
 e-Way Bill already exists for this document,આ દસ્તાવેજ માટે ઇ-વે બિલ પહેલાથી અસ્તિત્વમાં છે,
 woocommerce - {0},WooCommerce - {0},
 {0} Coupon used are {1}. Allowed quantity is exhausted,Used 0 used વપરાયેલ કૂપન {1} છે. માન્ય જથ્થો ખતમ થઈ ગયો છે,
-{0} Name,{0} નામ,
 {0} Operations: {1},{0} કામગીરી: {1},
 {0} bank transaction(s) created,} 0} બેંક ટ્રાંઝેક્શન (ઓ) બનાવ્યું,
 {0} bank transaction(s) created and {1} errors,} 0} બેંક ટ્રાંઝેક્શન (ઓ) બનાવ્યાં છે અને {1} ભૂલો,
@@ -3875,17 +3799,13 @@
 Total Income,કુલ આવક,
 Total Income This Year,આ વર્ષે કુલ આવક,
 Barcode,બારકોડ,
-Bold,બોલ્ડ,
-Center,કેન્દ્ર,
 Clear,ચોખ્ખુ,
-Comment,ટિપ્પણી,
 Comments,ટિપ્પણીઓ,
 DocType,ડ Docકટાઇપ,
 Download,ડાઉનલોડ કરો,
 Left,ડાબે,
 Link,કડી,
 New,નવું,
-Not Found,મળ્યું નથી,
 Print,છાપો,
 Reference Name,સંદર્ભ નામ,
 Refresh,પુનઃતાજું,
@@ -3908,7 +3828,6 @@
 Email Id,ઇમેઇલ ને,
 No,કોઈ,
 Reference Doctype,સંદર્ભ Doctype,
-User Id,વપરાશકર્તા આઈડી,
 Yes,હા,
 Actual ,વાસ્તવિક,
 Add to cart,સૂચી માં સામેલ કરો,
@@ -4304,7 +4223,6 @@
 e.g Adjustments for:,દા.ત. એડજસ્ટમેન્ટ્સ:,
 Section Subtotal,વિભાગ પેટાસરવાળો,
 Section Footer,વિભાગ ફૂટર,
-Position,પોઝિશન,
 Cash Flow Mapping,કેશ ફ્લો મેપિંગ,
 Select Maximum Of 1,1 ની મહત્તમ પસંદ કરો,
 Is Finance Cost,નાણા ખર્ચ છે,
@@ -4936,7 +4854,6 @@
 Previous Business Day,પાછલા વ્યવસાય દિવસ,
 Next Business Day,આગલું વ્યાપાર દિવસ,
 Urgent,અર્જન્ટ,
-Crop,પાક,
 Crop Name,ક્રોપ નામ,
 Scientific Name,વૈજ્ઞાનિક નામ,
 "You can define all the tasks which need to carried out for this crop here. The day field is used to mention the day on which the task needs to be carried out, 1 being the 1st day, etc.. ","તમે આ કાર્યો માટે તમામ કાર્યોને નિર્ધારિત કરી શકો છો. દિવસનો દિવસ એ દિવસનો ઉલ્લેખ કરવા માટે વપરાય છે કે જેના પર કાર્ય કરવું જરૂરી છે, પહેલી દિવસ છે, વગેરે.",
@@ -5441,7 +5358,6 @@
 To TIme,સમય,
 Course End Date,કોર્સ સમાપ્તિ તારીખ,
 Course Topic,કોર્સ વિષય,
-Topic,વિષય,
 Topic Name,વિષય નામ,
 Education Settings,શિક્ષણ સેટિંગ્સ,
 Current Academic Year,વર્તમાન શૈક્ષણિક વર્ષ,
@@ -5516,7 +5432,6 @@
 Check this if the Student is residing at the Institute's Hostel.,આ તપાસો જો વિદ્યાર્થી સંસ્થાના છાત્રાલય ખાતે રહેતા છે.,
 Walking,વોકીંગ,
 Institute's Bus,સંસ્થા બસ,
-Public Transport,જાહેર પરિવહન,
 Self-Driving Vehicle,સેલ્ફ ડ્રાઈવીંગ વાહન,
 Pick/Drop by Guardian,ચૂંટો / પાલક દ્વારા ડ્રોપ,
 Enrolled courses,પ્રવેશ અભ્યાસક્રમો,
@@ -5697,7 +5612,6 @@
 Default Cost Center,મૂળભૂત ખર્ચ કેન્દ્રને,
 Undeposited Funds Account,અનપેક્ષિત ફંડ્સ એકાઉન્ટ,
 Shopify Log,Shopify લોગ,
-Request Data,વિનંતી ડેટા,
 Shopify Settings,Shopify સેટિંગ્સ,
 status html,સ્થિતિ HTML,
 Enable Shopify,Shopify સક્ષમ કરો,
@@ -5817,7 +5731,6 @@
 Exercise Instructions,વ્યાયામ સૂચનાઓ,
 Exercise Video,કસરત વિડિઓ,
 Exercise Steps,વ્યાયામનાં પગલાં,
-Steps,પગલાં,
 Steps Table,સ્ટેપ્સ ટેબલ,
 Exercise Type Step,વ્યાયામ પ્રકાર પગલું,
 Max number of visit,મુલાકાતની મહત્તમ સંખ્યા,
@@ -6001,7 +5914,6 @@
 Patient Encounter Symptom,દર્દી એન્કાઉન્ટર લક્ષણ,
 HLC-PMR-.YYYY.-,એચએલસી-પી.એમ.આર.-વાય. વાયવાયવાય.-,
 Attach Medical Record,તબીબી રેકોર્ડ જોડો,
-Reference DocType,સંદર્ભ ડોકટાઇપ,
 Spouse,જીવનસાથી,
 Family,કૌટુંબિક,
 Schedule Details,સમયપત્રક વિગતો,
@@ -6983,16 +6895,8 @@
 HTML / Banner that will show on the top of product list.,ઉત્પાદન યાદી ટોચ પર બતાવશે કે html / બેનર.,
 Set prefix for numbering series on your transactions,તમારા વ્યવહારો પર શ્રેણી નંબર માટે સેટ ઉપસર્ગ,
 Setup Series,સેટઅપ સિરીઝ,
-Select Transaction,પસંદ ટ્રાન્ઝેક્શન,
-Help HTML,મદદ HTML,
-Series List for this Transaction,આ સોદા માટે સિરીઝ યાદી,
-User must always select,વપરાશકર્તા હંમેશા પસંદ કરવી જ પડશે,
-Check this if you want to force the user to select a series before saving. There will be no default if you check this.,"તમે બચત પહેલાં શ્રેણી પસંદ કરો વપરાશકર્તા પર દબાણ કરવા માંગો છો, તો આ તપાસો. તમે આ તપાસો જો કોઈ મૂળભૂત હશે.",
 Update Series,સુધારા સિરીઝ,
 Change the starting / current sequence number of an existing series.,હાલની શ્રેણી શરૂ / વર્તમાન ક્રમ નંબર બદલો.,
-Prefix,પૂર્વગ,
-This is the number of the last created transaction with this prefix,આ ઉપસર્ગ સાથે છેલ્લા બનાવવામાં વ્યવહાર સંખ્યા છે,
-Update Series Number,સુધારા સિરીઝ સંખ્યા,
 Quotation Lost Reason,અવતરણ લોસ્ટ કારણ,
 A third party distributor / dealer / commission agent / affiliate / reseller who sells the companies products for a commission.,એક કમિશન માટે કંપનીઓ ઉત્પાદનો વેચે છે તે તૃતીય પક્ષ ડિસ્ટ્રીબ્યુટર / વેપારી / કમિશન એજન્ટ / સંલગ્ન / પુનર્વિક્રેતા.,
 Sales Partner Name,વેચાણ ભાગીદાર નામ,
@@ -7687,7 +7591,6 @@
 Warehouse wise Item Balance Age and Value,વેરહાઉસ મુજબની વસ્તુ બેલેન્સ એજ અને વેલ્યુ,
 Work Order Stock Report,વર્ક ઓર્ડર સ્ટોક રિપોર્ટ,
 Work Orders in Progress,પ્રગતિમાં કાર્ય ઓર્ડર્સ,
-Validation Error,માન્યતા ભૂલ,
 Automatically Process Deferred Accounting Entry,ડિફર્ડ એકાઉન્ટિંગ એન્ટ્રી આપમેળે પ્રોસેસ કરો,
 Bank Clearance,બેંક ક્લિયરન્સ,
 Bank Clearance Detail,બેંક ક્લિયરન્સ વિગત,
@@ -7724,45 +7627,7 @@
 Therapy Plan: ,ઉપચાર યોજના:,
 Total Counts Targeted: ,લક્ષ્યાંકિત કુલ ગણતરીઓ:,
 Total Counts Completed: ,પૂર્ણ થયેલી કુલ ગણતરીઓ:,
-Andaman and Nicobar Islands,આંદામાન અને નિકોબાર આઇલેન્ડ્સ,
-Andhra Pradesh,આંધ્રપ્રદેશ,
-Arunachal Pradesh,અરુણાચલ પ્રદેશ,
-Assam,આસામ,
-Bihar,બિહાર,
-Chandigarh,ચંદીગ.,
-Chhattisgarh,છત્તીસગ.,
-Dadra and Nagar Haveli,દાદરા અને નગર હવેલી,
-Daman and Diu,દમણ અને દીવ,
-Delhi,દિલ્હી,
-Goa,ગોવા,
-Gujarat,ગુજરાત,
-Haryana,હરિયાણા,
-Himachal Pradesh,હિમાચલ પ્રદેશ,
-Jammu and Kashmir,જમ્મુ કાશ્મીર,
-Jharkhand,ઝારખંડ,
-Karnataka,કર્ણાટક,
-Kerala,કેરળ,
-Lakshadweep Islands,લક્ષદ્વીપ ટાપુઓ,
-Madhya Pradesh,મધ્યપ્રદેશ,
-Maharashtra,મહારાષ્ટ્ર,
-Manipur,મણિપુર,
-Meghalaya,મેઘાલય,
-Mizoram,મિઝોરમ,
-Nagaland,નાગાલેન્ડ,
-Odisha,ઓડિશા,
-Other Territory,અન્ય પ્રદેશ,
-Pondicherry,પોંડિચેરી,
-Punjab,પંજાબ,
-Rajasthan,રાજસ્થાન,
-Sikkim,સિક્કિમ,
-Tamil Nadu,તામિલનાડુ,
-Telangana,તેલંગાણા,
-Tripura,ત્રિપુરા,
-Uttar Pradesh,ઉત્તરપ્રદેશ,
-Uttarakhand,ઉત્તરાખંડ,
-West Bengal,પશ્ચિમ બંગાળ,
 Is Mandatory,ફરજિયાત છે,
-Published on,પર પ્રકાશિત,
 Service Received But Not Billed,સેવા પ્રાપ્ત થઈ પરંતુ બિલ નથી કરાયું,
 Deferred Accounting Settings,સ્થગિત એકાઉન્ટિંગ સેટિંગ્સ,
 Book Deferred Entries Based On,પુસ્તક સ્થગિત પ્રવેશો આધારે,
@@ -8035,8 +7900,6 @@
 Worksheet Instructions,વર્કશીટ સૂચનાઓ,
 Result Legend Print,લિજેન્ડ પ્રિન્ટ પરિણામ,
 Print Position,મુદ્રણ સ્થિતિ,
-Bottom,નીચે,
-Top,ટોચ,
 Both,બંને,
 Result Legend,પરિણામ દંતકથા,
 Lab Tests,લેબ ટેસ્ટ,
@@ -8081,12 +7944,10 @@
 Approvers,વિવાદ,
 The first Approver in the list will be set as the default Approver.,સૂચિમાં પ્રથમ મંજૂરી આપનારને ડિફ defaultલ્ટ મંજૂરી તરીકે સેટ કરવામાં આવશે.,
 Shift Request Approver,શિફ્ટ વિનંતી મંજૂરી,
-PAN Number,પાન નંબર,
 Provident Fund Account,પ્રોવિડન્ટ ફંડ એકાઉન્ટ,
 MICR Code,એમઆઈસીઆર કોડ,
 Repay unclaimed amount from salary,પગારમાંથી દાવેદારી રકમ પરત કરો,
 Deduction from salary,પગારમાંથી કપાત,
-Expired Leaves,સમાપ્ત પાંદડા,
 If this is not checked the loan by default will be considered as a Demand Loan,જો આને તપાસવામાં નહીં આવે તો ડિફોલ્ટ રૂપે લોનને ડિમાન્ડ લોન માનવામાં આવશે,
 This account is used for booking loan repayments from the borrower and also disbursing loans to the borrower,આ એકાઉન્ટનો ઉપયોગ orણ લેનારા પાસેથી લોન ચુકવણી બુક કરવા અને લેનારાને લોન વહેંચવા માટે થાય છે.,
 This account is capital account which is used to allocate capital for loan disbursal account ,આ એકાઉન્ટ કેપિટલ એકાઉન્ટ છે જેનો ઉપયોગ લોન વિતરણ ખાતા માટે મૂડી ફાળવવા માટે થાય છે,
@@ -8844,3 +8705,41 @@
 Creating Purchase Order ...,ખરીદી Orderર્ડર બનાવી રહ્યાં છે ...,
 "Select a Supplier from the Default Suppliers of the items below. On selection, a Purchase Order will be made against items belonging to the selected Supplier only.","નીચેની આઇટમ્સના ડિફaultલ્ટ સપ્લાયર્સમાંથી સપ્લાયર પસંદ કરો. પસંદગી પર, ફક્ત પસંદ કરેલા સપ્લાયરની વસ્તુઓ સામે ખરીદ ઓર્ડર આપવામાં આવશે.",
 Row #{}: You must select {} serial numbers for item {}.,પંક્તિ # {}: તમારે આઇટમ for for માટે સીરીયલ નંબરો પસંદ કરવા આવશ્યક છે.,
+Add Comment,ટિપ્પણી ઉમેરો,
+More...,વધુ ...,
+Notes,નોંધો,
+Payment Gateway,પેમેન્ટ ગેટવે,
+Payment Gateway Name,પેમેન્ટ ગેટવે નામ,
+Payments,ચુકવણીઓ,
+Plan Name,યોજનાનું નામ,
+Portal,પોર્ટલ,
+Scan Barcode,બારકોડ સ્કેન કરો,
+Some information is missing,કેટલીક માહિતી ગુમ થયેલ હોય,
+Successful,સફળ,
+Tools,સાધનો,
+Use Sandbox,ઉપયોગ સેન્ડબોક્સ,
+Busy,વ્યસ્ત,
+Completed By,દ્વારા પૂર્ણ,
+Payment Failed,ચુકવણી કરવામાં નિષ્ફળ,
+Column {0},કumnલમ {0},
+Field Mapping,ફીલ્ડ મેપિંગ,
+Not Specified,ઉલ્લેખ નથી,
+Update Type,સુધારા પ્રકાર,
+Dr,ડૉ,
+End Time,અંત સમય,
+Fetching...,લાવી રહ્યું છે ...,
+"It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","એવું લાગે છે કે સર્વરની પટ્ટી ગોઠવણી સાથે સમસ્યા છે. નિષ્ફળતાના કિસ્સામાં, રકમ તમારા એકાઉન્ટમાં પરત કરાશે.",
+Looks like someone sent you to an incomplete URL. Please ask them to look into it.,જેમ કોઈને એક અપૂર્ણ URL પર તમે મોકલી જુએ છે. તેમને તે તપાસ કરવા માટે પૂછો.,
+Master,માસ્ટર,
+Pay,પે,
+You can also copy-paste this link in your browser,તમે પણ તમારા બ્રાઉઝરમાં આ લિંક કોપી પેસ્ટ કરી શકો છો,
+Verified By,દ્વારા ચકાસવામાં,
+Invalid naming series (. missing) for {0},{0 for માટે અમાન્ય નામકરણ શ્રેણી (. ગુમ),
+Phone Number,ફોન નંબર,
+Account SID,એકાઉન્ટ એસ.આઇ.ડી.,
+Global Defaults,વૈશ્વિક ડિફૉલ્ટ્સ,
+Is Mandatory,ફરજિયાત છે,
+WhatsApp,વોટ્સેપ,
+Make a call,કોલ કરો,
+Approve,મંજૂર,
+Reject,નકારો,
diff --git a/erpnext/translations/he.csv b/erpnext/translations/he.csv
index 9aa152c..6cd900a 100644
--- a/erpnext/translations/he.csv
+++ b/erpnext/translations/he.csv
@@ -113,7 +113,6 @@
 Add Items,הוסף פריטים,
 Add Leads,הוסף לידים,
 Add Multiple Tasks,הוסף משימות מרובות,
-Add Row,להוסיף שורה,
 Add Sales Partners,הוסף שותפי מכירות,
 Add Serial No,להוסיף מספר סידורי,
 Add Students,הוסף סטודנטים,
@@ -211,9 +210,7 @@
 An error occurred during the update process,אירעה שגיאה בתהליך העדכון,
 "An item exists with same name ({0}), please change the item group name or rename the item","פריט קיים באותו שם ({0}), בבקשה לשנות את שם קבוצת פריט או לשנות את שם הפריט",
 Analyst,אנליסט,
-Analytics,Analytics,
 Annual Billing: {0},חיוב שנתי: {0},
-Anonymous,בעילום שם,
 Another Budget record '{0}' already exists against {1} '{2}' and account '{3}' for fiscal year {4},רשומת תקציב נוספת &#39;{0}&#39; כבר קיימת כנגד {1} &#39;{2}&#39; וחשבון &#39;{3}&#39; לשנת הכספים {4},
 Another Period Closing Entry {0} has been made after {1},עוד כניסת סגירת תקופת {0} נעשתה לאחר {1},
 Another Sales Person {0} exists with the same Employee id,אדם אחר מכירות {0} קיים עם אותו זיהוי העובד,
@@ -283,14 +280,12 @@
 Attendance not submitted for {0} as {1} on leave.,הנוכחות לא הוגשה ל- {0} בתור {1} בחופשה.,
 Attribute table is mandatory,שולחן תכונה הוא חובה,
 Attribute {0} selected multiple times in Attributes Table,תכונה {0} נבחר מספר פעמים בטבלה תכונות,
-Author,מְחַבֵּר,
 Authorized Signatory,מורשה חתימה,
 Auto Material Requests Generated,בקשות אוטומטיות חומר שנוצרו,
 Auto Repeat,חזור אוטומטי,
 Auto repeat document updated,מסמך חזרה אוטומטית עודכן,
 Automotive,רכב,
 Available,זמין,
-Available Leaves,עלים זמינים,
 Available Qty,כמות זמינה,
 Available Selling,מכירה זמינה,
 Available for use date is required,נדרש לתאריך השימוש,
@@ -340,7 +335,6 @@
 Base URL,כתובת URL בסיסית,
 Based On,המבוסס על,
 Based On Payment Terms,מבוסס על תנאי תשלום,
-Basic,בסיסי,
 Batch,אצווה,
 Batch Entries,ערכי אצווה,
 Batch ID is mandatory,מזהה אצווה הוא חובה,
@@ -361,7 +355,6 @@
 Billable Hours,שעות חיוב,
 Billed,מחויב,
 Billed Amount,סכום חיוב,
-Billing,חיוב,
 Billing Address,כתובת לחיוב,
 Billing Address is same as Shipping Address,כתובת החיוב זהה לכתובת המשלוח,
 Billing Amount,סכום חיוב,
@@ -560,7 +553,6 @@
 Consumed Qty,כמות הנצרכת,
 Consumer Products,מוצרים צריכה,
 Contact,צור קשר עם,
-Contact Details,פרטי,
 Contact Us,צור קשר,
 Content,תוכן,
 Content Masters,מאסטרים בתוכן,
@@ -715,7 +707,6 @@
 Date of Joining,תאריך ההצטרפות,
 Date of Joining must be greater than Date of Birth,תאריך ההצטרפות חייב להיות גדול מתאריך לידה,
 Date of Transaction,תאריך העסקה,
-Datetime,Datetime,
 Day,יְוֹם,
 Debit,חיוב,
 Debit ({0}),חיוב ({0}),
@@ -874,7 +865,6 @@
 Employee cannot report to himself.,עובד לא יכול לדווח לעצמו.,
 Employee {0} has already applied for {1} between {2} and {3} : ,עובד {0} כבר הגיש בקשה ל {1} בין {2} ל- {3}:,
 Employee {0} of grade {1} have no default leave policy,לעובד {0} בכיתה {1} אין מדיניות חופשות לברירת מחדל,
-Enable,אפשר,
 Enable / disable currencies.,הפעלה / השבתה של מטבעות.,
 Enabled,מופעל,
 "Enabling 'Use for Shopping Cart', as Shopping Cart is enabled and there should be at least one Tax Rule for Shopping Cart","&#39;השתמש עבור סל קניות&#39; האפשור, כמו סל הקניות מופעל ולא צריך להיות לפחות כלל מס אחד עבור סל קניות",
@@ -905,7 +895,6 @@
 Error: Not a valid id?,שגיאה: לא מזהה בתוקף?,
 Estimated Cost,מחיר משוער,
 "Even if there are multiple Pricing Rules with highest priority, then following internal priorities are applied:","גם אם יש כללי תמחור מרובים עם העדיפות הגבוהה ביותר, סדרי עדיפויות פנימיים אז להלן מיושמות:",
-Event,אירוע,
 Exchange Gain/Loss,Exchange רווח / הפסד,
 Exchange Rate Revaluation master.,מאסטר שערוך שער חליפין.,
 Exchange Rate must be same as {0} {1} ({2}),שער החליפין חייב להיות זהה {0} {1} ({2}),
@@ -1032,7 +1021,6 @@
 From value must be less than to value in row {0},מהערך חייב להיות פחות משווי בשורת {0},
 From {0} | {1} {2},מ {0} | {1} {2},
 Fulfillment,הַגשָׁמָה,
-Full,מלא,
 Full Name,שם מלא,
 Fully Depreciated,לגמרי מופחת,
 Furnitures and Fixtures,ריהוט ואבזרים,
@@ -1133,7 +1121,6 @@
 Hub Sync ID,מזהה סנכרון רכזת,
 Human Resource,משאבי אנוש,
 Human Resources,משאבי אנוש,
-IFSC Code,קוד IFSC,
 IGST Amount,סכום IGST,
 IP Address,כתובת ה - IP,
 ITC Available (whether in full op part),ITC זמין (אם בחלק אופ מלא),
@@ -1185,7 +1172,6 @@
 Ineligible ITC,ITC שאינו כשיר,
 Initiated,יָזוּם,
 Inpatient Record,שיא אשפוז,
-Insert,הכנס,
 Installation Note,הערה התקנה,
 Installation Note {0} has already been submitted,הערה התקנת {0} כבר הוגשה,
 Installation date cannot be before delivery date for Item {0},תאריך התקנה לא יכול להיות לפני מועד אספקה לפריט {0},
@@ -1197,7 +1183,6 @@
 Insurance Start date should be less than Insurance End date,תאריך התחלת הביטוח צריך להיות פחות מתאריך הסיום של הביטוח,
 Integrated Tax,מס משולב,
 Inter-State Supplies,אספקה בין מדינתית,
-Interests,אינטרסים,
 Internet Publishing,הוצאה לאור באינטרנט,
 Intra-State Supplies,אספקה בין מדינות,
 Introduction,מבוא,
@@ -1316,7 +1301,6 @@
 Lab testing datetime cannot be before collection datetime,זמן הבדיקה במעבדה לא יכול להיות לפני זמן האיסוף,
 Label,תווית,
 Laboratory,מַעבָּדָה,
-Language Name,שם השפה,
 Large,גדול,
 Last Communication,תקשורת אחרונה,
 Last Communication Date,תאריך תקשורת אחרון,
@@ -1347,8 +1331,6 @@
 Letter Heads for print templates.,ראשי מכתב לתבניות הדפסה.,
 Level,רמה,
 Liability,אחריות,
-License,רישיון,
-Limit,לְהַגבִּיל,
 Limit Crossed,הגבל Crossed,
 Link to Material Request,קישור לבקשת חומרים,
 List of all share transactions,רשימה של כל עסקאות המניות,
@@ -1359,7 +1341,6 @@
 Loans (Liabilities),הלוואות (התחייבויות),
 Loans and Advances (Assets),הלוואות ומקדמות (נכסים),
 Local,מקומי,
-Log,עֵץ,
 Logs for maintaining sms delivery status,יומנים לשמירה על סטטוס משלוח SMS,
 Lost,איבדתי,
 Lost Reasons,סיבות אבודות,
@@ -1445,7 +1426,6 @@
 Medical Department,מחלקה רפואית,
 Medical Record,תיק רפואי,
 Medium,בינוני,
-Meeting,פְּגִישָׁה,
 Member Activity,פעילות חברים,
 Member ID,תעודת חבר,
 Member Name,שם חבר,
@@ -1495,7 +1475,6 @@
 Multiple Variants,גרסאות מרובות,
 Multiple fiscal years exist for the date {0}. Please set company in Fiscal Year,שנתי כספים מרובות קיימות במועד {0}. אנא להגדיר חברה בשנת הכספים,
 Music,מוסיקה,
-My Account,החשבון שלי,
 Name error: {0},שגיאת שם: {0},
 Name of new Account. Note: Please don't create accounts for Customers and Suppliers,שם חשבון חדש. הערה: נא לא ליצור חשבונות ללקוחות וספקים,
 Name or Email is mandatory,שם או דוא&quot;ל הוא חובה,
@@ -1538,7 +1517,6 @@
 New credit limit is less than current outstanding amount for the customer. Credit limit has to be atleast {0},מסגרת אשראי חדשה נמוכה מהסכום המצטבר הנוכחי עבור הלקוח. מסגרת האשראי חייבת להיות לפחות {0},
 New task,משימה חדשה,
 New {0} pricing rules are created,נוצרים כללי תמחור חדשים {0},
-Newsletters,ידיעונים,
 Newspaper Publishers,מוציאים לאור עיתון,
 Next,הבא,
 Next Contact By cannot be same as the Lead Email Address,איש הקשר הבא על ידי לא יכול להיות זהה לכתובת הדוא&quot;ל של הליד,
@@ -1686,7 +1664,6 @@
 Other,אחר,
 Other Reports,דוחות נוספים,
 "Other outward supplies(Nil rated,Exempted)","אספקה חיצונית אחרת (מדורג אפס, פטור)",
-Others,אחרים,
 Out Qty,מתוך כמות,
 Out Value,ערך מתוך,
 Out of Order,מקולקל,
@@ -1726,7 +1703,6 @@
 Party Type and Party is mandatory for {0} account,סוג המפלגה והמפלגה הם חובה עבור חשבון {0},
 Party Type is mandatory,סוג המפלגה הוא חובה,
 Party is mandatory,המפלגה היא חובה,
-Password,סיסמא,
 Past Due Date,תאריך פירעון שעבר,
 Patient,סבלני,
 Patient Appointment,מינוי מטופל,
@@ -1784,7 +1760,6 @@
 Pharmaceutical,תרופות,
 Pharmaceuticals,תרופות,
 Physician,רוֹפֵא,
-Pincode,Pincode,
 Place Of Supply (State/UT),מקום אספקה (מדינה / UT),
 Place Order,להזמין מקום,
 Plan Name,שם התוכנית,
@@ -1896,7 +1871,6 @@
 Please select date,אנא בחר תאריך,
 Please select item code,אנא בחר קוד פריט,
 Please select month and year,אנא בחר חודש והשנה,
-Please select prefix first,אנא בחר תחילה קידומת,
 Please select the Company,אנא בחר את החברה,
 Please select the Multiple Tier Program type for more than one collection rules.,אנא בחר בסוג תוכנית מרובת שכבות עבור יותר מכללי איסוף אחד.,
 Please select the assessment group other than 'All Assessment Groups',אנא בחר בקבוצת ההערכה למעט &#39;כל קבוצות ההערכה&#39;,
@@ -1913,7 +1887,6 @@
 Please set Company filter blank if Group By is 'Company',אנא הגדר מסנן חברה ריק אם Group By הוא &#39;חברה&#39;.,
 Please set Default Payroll Payable Account in Company {0},הגדר חשבון ברירת מחדל לתשלום שכר בחברה {0},
 Please set Depreciation related Accounts in Asset Category {0} or Company {1},אנא להגדיר חשבונות הקשורים פחת קטגוריה Asset {0} או החברה {1},
-Please set Email Address,אנא הגדר כתובת דוא&quot;ל,
 Please set GST Accounts in GST Settings,הגדר חשבונות GST בהגדרות GST,
 Please set Hotel Room Rate on {},אנא הגדירו את מחיר החדר במלון ב- {},
 Please set Number of Depreciations Booked,אנא להגדיר מספר הפחת הוזמן,
@@ -1936,7 +1909,6 @@
 Please set the Email ID for the Student to send the Payment Request,אנא הגדר את מזהה הדוא&quot;ל לתלמיד כדי לשלוח את בקשת התשלום,
 Please set the Item Code first,אנא הגדר קודם את קוד הפריט,
 Please set the Payment Schedule,אנא הגדירו את לוח התשלומים,
-Please set the series to be used.,אנא הגדר את הסדרה לשימוש.,
 Please set {0} for address {1},הגדר {0} לכתובת {1},
 Please setup Students under Student Groups,אנא הגדר סטודנטים תחת קבוצות סטודנטים,
 Please specify Company,נא לציין את החברה,
@@ -1953,7 +1925,6 @@
 Point-of-Sale,נקודת מכירה,
 Point-of-Sale Profile,נקודה-של-מכירת פרופיל,
 Portal,שַׁעַר,
-Portal Settings,הגדרות Portal,
 Possible Supplier,ספק אפשרי,
 Postal Expenses,הוצאות דואר,
 Posting Date,תאריך פרסום,
@@ -2152,12 +2123,10 @@
 Reference No is mandatory if you entered Reference Date,התייחסות לא חובה אם אתה נכנס תאריך ההפניה,
 Reference No.,מספר סימוכין,
 Reference Number,מספר ההתייחסות,
-Reference Owner,בעלי ההפניה,
 Reference Type,סוג ההתייחסות,
 "Reference: {0}, Item Code: {1} and Customer: {2}","הפניה: {0}, קוד פריט: {1} ולקוח: {2}",
 References,אזכור,
 Refresh Token,רענן אסימון,
-Region,אזור,
 Register,הירשם,
 Rejected,נדחה,
 Related,קָשׁוּר,
@@ -2179,7 +2148,6 @@
 Replace BOM and update latest price in all BOMs,החלף את BOM ועדכן את המחיר העדכני ביותר בכל ה- BOM,
 Replied,ענה,
 Report,"דו""ח",
-Report Builder,Report Builder,
 Report Type,סוג הדוח,
 Report Type is mandatory,סוג הדוח הוא חובה,
 Reports,דיווחים,
@@ -2355,13 +2323,11 @@
 Same Company is entered more than once,אותו החברה נכנסה יותר מפעם אחת,
 Same item cannot be entered multiple times.,לא ניתן להזין את אותו פריט מספר פעמים.,
 Same supplier has been entered multiple times,ספק זהה הוזן מספר פעמים,
-Sample,לדוגמא,
 Sample Collection,אוסף לדוגמא,
 Sample quantity {0} cannot be more than received quantity {1},כמות הדוגמה {0} לא יכולה להיות יותר מהכמות שהתקבלה {1},
 Sanctioned,סנקציה,
 Sand,חוֹל,
 Saturday,יום שבת,
-Saved,הציל,
 Saving {0},שומר את {0},
 Scan Barcode,סרוק ברקוד,
 Schedule,לוח זמנים,
@@ -2463,7 +2429,6 @@
 Series Updated,סדרת עדכון,
 Series Updated Successfully,סדרת עדכון בהצלחה,
 Series is mandatory,סדרה היא חובה,
-Series {0} already used in {1},סדרת {0} כבר בשימוש {1},
 Service,שירות,
 Service Level Agreement,הסכם רמת שירות,
 Service Level Agreement.,הסכם רמת שירות.,
@@ -2479,7 +2444,6 @@
 Set Tax Rule for shopping cart,כלל מס שנקבע לעגלת קניות,
 Set as Closed,קבע כסגור,
 Set as Completed,הגדר כמושלם,
-Set as Default,קבע כברירת מחדל,
 Set as Lost,קבע כאבוד,
 Set as Open,קבע כלהרחיב,
 Set default inventory account for perpetual inventory,הגדר חשבון מלאי ברירת מחדל עבור מלאי תמידי,
@@ -2511,7 +2475,6 @@
 Shareholder,בעל מניות,
 Ship To State,ספינה למדינה,
 Shipments,משלוחים,
-Shipping,משלוח,
 Shipping Address,כתובת למשלוח,
 "Shipping Address does not have country, which is required for this Shipping Rule","לכתובת למשלוח אין מדינה, הנדרשת עבור כלל משלוח זה",
 Shipping rule only applicable for Buying,כלל משלוח חל רק על קנייה,
@@ -2564,7 +2527,6 @@
 Split Batch,אצווה מפוצלת,
 Split Issue,גיליון מפוצל,
 Sports,ספורט,
-Standard,סטנדרטי,
 Standard Buying,קנייה סטנדרטית,
 Standard Selling,מכירה סטנדרטית,
 Standard contract terms for Sales or Purchase.,תנאי חוזה סטנדרטי למכירות או רכש.,
@@ -2731,7 +2693,6 @@
 Terms and Conditions,תנאים והגבלות,
 Terms and Conditions Template,תבנית תנאים והגבלות,
 Territory,שטח,
-Test,מבחן,
 Thank you for your business!,תודה על העסק שלך!,
 The 'From Package No.' field must neither be empty nor it's value less than 1.,ה- &#39;מתוך חבילה מס&#39;. השדה לא צריך להיות ריק וגם הערך שלו פחות מ -1.,
 The Brand,המותג,
@@ -2848,7 +2809,6 @@
 Total (Without Tax),סה&quot;כ (ללא מס),
 Total Achieved,"סה""כ הושג",
 Total Actual,"סה""כ בפועל",
-Total Allocated Leaves,סה&quot;כ עלים שהוקצו,
 Total Amount,"סה""כ לתשלום",
 Total Amount Credited,סכום כולל אשראי,
 Total Applicable Charges in Purchase Receipt Items table must be same as Total Taxes and Charges,סה&quot;כ החיובים החלים בטבלת פריטי קבלה לרכישה חייבים להיות זהים לסכומי המסים והחיובים,
@@ -2892,7 +2852,6 @@
 Total(Amt),"סה""כ (AMT)",
 Total(Qty),"סה""כ (כמות)",
 Traceability,עקיב,
-Traceback,להתחקות,
 Track Leads by Lead Source.,עקוב אחר לידים לפי מקור ליד.,
 Transaction,עסקה,
 Transaction Date,תאריך עסקה,
@@ -2930,7 +2889,6 @@
 UOM Conversion factor is required in row {0},גורם של אוני 'מישגן ההמרה נדרש בשורת {0},
 UOM coversion factor required for UOM: {0} in Item: {1},גורם coversion של אוני 'מישגן נדרש לאונים' מישגן: {0} בפריט: {1},
 URL,כתובת האתר,
-Unable to find DocType {0},לא ניתן למצוא את DocType {0},
 Unable to find exchange rate for {0} to {1} for key date {2}. Please create a Currency Exchange record manually,לא ניתן למצוא שער חליפין של {0} ל- {1} עבור תאריך המפתח {2}. אנא צור רשומת המרת מטבע ידנית,
 Unable to find score starting at {0}. You need to have standing scores covering 0 to 100,לא ניתן למצוא ציון החל מ- {0}. אתה צריך ציונים עומדים המכסים 0 עד 100,
 Unable to find variable: ,לא ניתן למצוא משתנה:,
@@ -2960,7 +2918,6 @@
 Upload your letter head and logo. (you can edit them later).,העלה ראש המכתב ואת הלוגו שלך. (אתה יכול לערוך אותם מאוחר יותר).,
 Upper Income,עליון הכנסה,
 Use Sandbox,השתמש בארגז חול,
-Used Leaves,עלים משומשים,
 User,מִשׁתַמֵשׁ,
 User ID,זיהוי משתמש,
 User ID not set for Employee {0},זיהוי משתמש לא נקבע לעובדים {0},
@@ -3051,7 +3008,6 @@
 Website Settings,הגדרות אתר,
 Wednesday,יום רביעי,
 Week,שָׁבוּעַ,
-Weekdays,ימי חול,
 Weekly,שבועי,
 "Weight is mentioned,\nPlease mention ""Weight UOM"" too","המשקל מוזכר, \ n להזכיר ""משקל של אוני 'מישגן"" מדי",
 Welcome email sent,דואר אלקטרוני שנשלח ברוכים הבאים,
@@ -3072,7 +3028,6 @@
 Work Order {0} must be submitted,יש להגיש הזמנת עבודה {0},
 Work Orders Created: {0},הזמנות עבודה נוצרו: {0},
 Work-in-Progress Warehouse is required before Submit,עבודה ב-התקדמות המחסן נדרש לפני הגשה,
-Workflow,זרימת עבודה,
 Working,עבודה,
 Working Hours,שעות עבודה,
 Workstation,Workstation,
@@ -3102,7 +3057,6 @@
 You need to be a user other than Administrator with System Manager and Item Manager roles to register on Marketplace.,עליך להיות משתמש שאינו מנהל עם תפקידים מנהל המערכת ומנהל הפריטים כדי להירשם ב- Marketplace.,
 You need to be a user with System Manager and Item Manager roles to add users to Marketplace.,עליך להיות משתמש בעל תפקידים מנהל המערכת ומנהל הפריטים כדי להוסיף משתמשים ל- Marketplace.,
 You need to be a user with System Manager and Item Manager roles to register on Marketplace.,עליך להיות משתמש בעל תפקידים של מנהל המערכת ומנהל הפריטים כדי להירשם ל- Marketplace.,
-You need to be logged in to access this page,עליך להיות מחובר בכדי לגשת לדף זה,
 You need to enable Shopping Cart,אתה צריך לאפשר סל קניות,
 You will lose records of previously generated invoices. Are you sure you want to restart this subscription?,תאבד רשומות של חשבוניות שנוצרו בעבר. האם אתה בטוח שברצונך להפעיל מחדש את המנוי הזה?,
 Your Organization,הארגון שלך,
@@ -3218,7 +3172,6 @@
 Assigned To,מוקצה ל,
 Chat,צ'אט,
 Completed By,הושלם על ידי,
-County,מָחוֹז,
 Day of Week,יום בשבוע,
 "Dear System Manager,","מנהל מערכת יקר,",
 Default Value,ערך ברירת מחדל,
@@ -3229,31 +3182,21 @@
 Fieldtype,Fieldtype,
 Help Articles,מאמרי עזרה,
 ID,תְעוּדַת זֶהוּת,
-Images,תמונות,
 Import,יבוא,
 Language,שפה,
 Likes,אוהב,
 Merge with existing,מיזוג עם קיים,
-Office,משרד,
 Orientation,נטייה,
 Parent,הורה,
-Passive,פסיבי,
 Payment Failed,התשלום נכשל,
-Permanent,קבוע,
 Personal,אישי,
-Plant,מפעל,
 Post,הודעה,
-Postal,דואר,
 Postal Code,מיקוד,
-Previous,קודם,
 Provider,ספק,
 Read Only,קריאה בלבד,
 Recipient,נמען,
 Reviews,ביקורות,
 Sender,שולח,
-Shop,חנות,
-Subsidiary,חברת בת,
-There is some problem with the file url: {0},יש קצת בעיה עם כתובת אתר הקובץ: {0},
 There were errors while sending email. Please try again.,היו שגיאות בעת שליחת דואר אלקטרוני. אנא נסה שוב.,
 Values Changed,ערכים השתנו,
 or,או,
@@ -3280,19 +3223,16 @@
 Quality Feedback Template,תבנית משוב איכותית,
 Rules for applying different promotional schemes.,כללים ליישום תוכניות קידום מכירות שונות.,
 Show {0},הצג את {0},
-"Special Characters except '-', '#', '.', '/', '{{' and '}}' not allowed in naming series {0}","{0} תווים מיוחדים למעט &quot;-&quot;, &quot;#&quot;, &quot;.&quot;, &quot;/&quot;, &quot;{{&quot; ו- &quot;}}&quot; אינם מורשים בסדרות שמות",
 Target Details,פרטי יעד,
 {0} already has a Parent Procedure {1}.,{0} כבר יש נוהל הורים {1}.,
 API,ממשק API,
 Annual,שנתי,
 Change,שינוי,
 Contact Email,"דוא""ל ליצירת קשר",
-Export Type,סוג ייצוא,
 From Date,מתאריך,
 Group By,קבץ לפי,
 Invalid URL,כתובת אתר לא חוקית,
 Landscape,נוֹף,
-Last Sync On,הסנכרון האחרון פועל,
 Naming Series,סדרת שמות,
 No data to export,אין נתונים לייצוא,
 Portrait,דְיוֹקָן,
@@ -3302,7 +3242,6 @@
 Show Document,הצג מסמך,
 Show Traceback,הראה מסלול,
 Video,וִידֵאוֹ,
-Webhook Secret,ווההוק סוד,
 % Of Grand Total,סך הכל,
 <b>Company</b> is a mandatory filter.,<b>החברה</b> היא פילטר חובה.,
 <b>From Date</b> is a mandatory filter.,<b>מ- Date</b> הוא מסנן חובה.,
@@ -3358,7 +3297,6 @@
 BOM Comparison Tool,כלי השוואת BOM,
 BOM recursion: {0} cannot be child of {1},רקורסיה של BOM: {0} לא יכול להיות ילד של {1},
 BOM recursion: {0} cannot be parent or child of {1},רקורסיה של BOM: {0} לא יכול להיות הורה או ילד של {1},
-Back to Home,בחזרה לבית,
 Back to Messages,חזרה להודעות,
 Bank Data mapper doesn't exist,מיפוי נתוני בנק אינו קיים,
 Bank Details,פרטי בנק,
@@ -3420,7 +3358,6 @@
 Currency,מטבע,
 Current Status,מצב נוכחי,
 Customer PO,לקוחות לקוחות,
-Customize,התאמה אישית של,
 Daily,יומי,
 Date,תאריך,
 Date of Birth cannot be greater than Joining Date.,תאריך הלידה לא יכול להיות גדול מתאריך ההצטרפות.,
@@ -3454,7 +3391,6 @@
 ERPNext could not find any matching payment entry,ERPNext לא הצליח למצוא הזנת תשלום תואמת,
 Earliest Age,העידן הקדום ביותר,
 Edit Details,לערוך פרטים,
-Edit Profile,ערוך פרופיל,
 Either GST Transporter ID or Vehicle No is required if Mode of Transport is Road,תעודת זהות של GST או רכב לא נדרשת אם אמצעי התחבורה הוא דרך,
 Email,"דוא""ל",
 Email Campaigns,קמפיינים בדוא&quot;ל,
@@ -3482,7 +3418,6 @@
 Fetch Items from Warehouse,אחזר פריטים מהמחסן,
 Fetching...,מַקסִים...,
 Field,שדה,
-File Manager,מנהל קבצים,
 Filters,מסננים,
 Finding linked payments,מציאת תשלומים מקושרים,
 Fleet Management,ניהול צי,
@@ -3521,7 +3456,6 @@
 Incorrect Warehouse,מחסן שגוי,
 Invalid Barcode. There is no Item attached to this barcode.,ברקוד לא חוקי. אין פריט המצורף לברקוד זה.,
 Invalid credentials,אישורים לא חוקיים,
-Invite as User,הזמן כמשתמש,
 Issue Priority.,עדיפות בנושא.,
 Issue Type.,סוג הבעיה.,
 "It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","נראה שיש בעיה בתצורת הפס של השרת. במקרה של כישלון, הסכום יוחזר לחשבונך.",
@@ -3564,7 +3498,6 @@
 New Invoice,חשבונית חדשה,
 New Payment,תשלום חדש,
 New release date should be in the future,תאריך השחרור החדש אמור להיות בעתיד,
-Newsletter,עלון,
 No Account matched these filters: {},אף חשבון לא תאם למסננים הבאים: {},
 No communication found.,לא נמצאה תקשורת.,
 No correct answer is set for {0},לא מוגדרת תשובה נכונה עבור {0},
@@ -3640,7 +3573,6 @@
 Please setup a default bank account for company {0},הגדר חשבון בנק ברירת מחדל לחברה {0},
 Please specify,אנא ציין,
 Please specify a {0},אנא ציין {0},lead
-Printing,הדפסה,
 Priority,עדיפות,
 Priority has been changed to {0}.,העדיפות שונתה ל- {0}.,
 Priority {0} has been repeated.,עדיפות {0} חזרה על עצמה.,
@@ -3649,7 +3581,6 @@
 Project,פרויקט,
 Provide the academic year and set the starting and ending date.,ספק את שנת הלימודים וקבע את תאריך ההתחלה והסיום.,
 Public token is missing for this bank,אסימון ציבורי חסר לבנק זה,
-Publish,לְפַרְסֵם,
 Publish 1 Item,פרסם פריט אחד,
 Publish Items,פרסם פריטים,
 Publish More Items,פרסם פריטים נוספים,
@@ -3677,7 +3608,6 @@
 Reconciled,מפויסים,
 Recruitment,גיוס,
 Red,אדום,
-Refreshing,מְרַעֲנֵן,
 Release date must be in the future,תאריך השחרור חייב להיות בעתיד,
 Relieving Date must be greater than or equal to Date of Joining,תאריך הקלה חייב להיות גדול או שווה לתאריך ההצטרפות,
 Rename,שינוי שם,
@@ -3721,7 +3651,6 @@
 Search for a payment,חפש תשלום,
 Search for anything ...,חפש כל דבר ...,
 Search results for,תוצאות חיפוש עבור,
-Select All,בחר הכל,
 Select Difference Account,בחר חשבון ההבדל,
 Select a Default Priority.,בחר עדיפות ברירת מחדל.,
 Select a company,בחר חברה,
@@ -3740,11 +3669,9 @@
 Service Level Agreement has been changed to {0}.,הסכם רמת השירות שונה ל- {0}.,
 Service Level Agreement was reset.,הסכם רמת השירות אופס.,
 Service Level Agreement with Entity Type {0} and Entity {1} already exists.,הסכם רמת שירות עם סוג הישות {0} והישות {1} כבר קיים.,
-Set,הגדר,
 Set Meta Tags,הגדר מטא תגים,
 Set {0} in company {1},הגדר {0} בחברה {1},
 Setup,התקנה,
-Setup Wizard,אשף התקנה,
 Shift Management,ניהול משמרות,
 Show Future Payments,הראה תשלומים עתידיים,
 Show Linked Delivery Notes,הצג הערות משלוח מקושרות,
@@ -3815,7 +3742,6 @@
 Unreconciled,לא מפויס,
 Unsupported GST Category for E-Way Bill JSON generation,קטגוריית GST לא נתמכת לדור JSON של Bill E-Way,
 Update,עדכון,
-Update Details,עדכן פרטים,
 Update Taxes for Items,עדכן מיסים לפריטים,
 "Upload a bank statement, link or reconcile a bank account","העלה חשבון בנק, קישור או התאמת חשבון בנק",
 Upload a statement,העלה הצהרה,
@@ -3839,7 +3765,6 @@
 XML Files Processed,עיבוד קבצי XML,
 Year,שנה,
 Yearly,שנתי,
-You,אתה,
 You are not allowed to enroll for this course,אינך רשאי להירשם לקורס זה,
 You are not enrolled in program {0},אינך רשום לתוכנית {0},
 You can Feature upto 8 items.,אתה יכול להציג עד 8 פריטים.,
@@ -3856,7 +3781,6 @@
 e-Way Bill already exists for this document,הצעת חוק אלקטרונית כבר קיימת עבור מסמך זה,
 woocommerce - {0},מסחר מקוון - {0},
 {0} Coupon used are {1}. Allowed quantity is exhausted,{0} הקופון בשימוש הוא {1}. הכמות המותרת מוצתה,
-{0} Name,{0} שם,
 {0} Operations: {1},{0} פעולות: {1},
 {0} bank transaction(s) created,{0} עסקאות בנקאיות נוצרו,
 {0} bank transaction(s) created and {1} errors,{0} עסקאות בנקאיות נוצרו ושגיאות {1},
@@ -3875,17 +3799,13 @@
 Total Income,הכנסה כוללת,
 Total Income This Year,סך ההכנסה השנה,
 Barcode,ברקוד,
-Bold,נוֹעָז,
-Center,מרכז,
 Clear,ברור,
-Comment,תגובה,
 Comments,תגובות,
 DocType,DocType,
 Download,הורד,
 Left,עזב,
 Link,קישור,
 New,חָדָשׁ,
-Not Found,לא נמצא,
 Print,הדפס,
 Reference Name,שם הפניה,
 Refresh,רענן,
@@ -3908,7 +3828,6 @@
 Email Id,מזהה דוא&quot;ל,
 No,לא,
 Reference Doctype,DOCTYPE התייחסות,
-User Id,זיהוי משתמש,
 Yes,כן,
 Actual ,בפועל,
 Add to cart,הוסף לסל,
@@ -4304,7 +4223,6 @@
 e.g Adjustments for:,למשל התאמות עבור:,
 Section Subtotal,סה&quot;כ סעיף משנה,
 Section Footer,כותרת תחתונה של החלק,
-Position,עמדה,
 Cash Flow Mapping,מיפוי תזרים מזומנים,
 Select Maximum Of 1,בחר מקסימום של 1,
 Is Finance Cost,האם עלות מימון,
@@ -4936,7 +4854,6 @@
 Previous Business Day,יום העסקים הקודם,
 Next Business Day,יום העסקים הבא,
 Urgent,דחוף,
-Crop,יְבוּל,
 Crop Name,שם היבול,
 Scientific Name,שם מדעי,
 "You can define all the tasks which need to carried out for this crop here. The day field is used to mention the day on which the task needs to be carried out, 1 being the 1st day, etc.. ","אתה יכול להגדיר את כל המשימות שיש לבצע עבור היבול הזה כאן. שדה היום משמש לציון היום בו יש לבצע את המשימה, כאשר 1 הוא היום הראשון וכו &#39;.",
@@ -5441,7 +5358,6 @@
 To TIme,לעת,
 Course End Date,תאריך סיום קורס,
 Course Topic,נושא הקורס,
-Topic,נוֹשֵׂא,
 Topic Name,שם נושא,
 Education Settings,הגדרות חינוך,
 Current Academic Year,השנה האקדמית הנוכחית,
@@ -5516,7 +5432,6 @@
 Check this if the Student is residing at the Institute's Hostel.,בדוק זאת אם הסטודנט מתגורר באכסניה של המכון.,
 Walking,הליכה,
 Institute's Bus,אוטובוס המכון,
-Public Transport,תחבורה ציבורית,
 Self-Driving Vehicle,רכב עם נהיגה עצמית,
 Pick/Drop by Guardian,בחר / שחרר על ידי שומר,
 Enrolled courses,קורסים רשומים,
@@ -5697,7 +5612,6 @@
 Default Cost Center,מרכז עלות ברירת מחדל,
 Undeposited Funds Account,חשבון כספים שלא הופקד,
 Shopify Log,Shopify יומן,
-Request Data,בקש נתונים,
 Shopify Settings,הגדרות Shopify,
 status html,סטטוס HTML,
 Enable Shopify,הפעל את Shopify,
@@ -5817,7 +5731,6 @@
 Exercise Instructions,הוראות תרגיל,
 Exercise Video,סרטון תרגיל,
 Exercise Steps,שלבי התעמלות,
-Steps,צעדים,
 Steps Table,שולחן צעדים,
 Exercise Type Step,שלב סוג התרגיל,
 Max number of visit,מספר ביקורים מרבי,
@@ -6001,7 +5914,6 @@
 Patient Encounter Symptom,תסמין המפגש עם המטופל,
 HLC-PMR-.YYYY.-,HLC-PMR-.YYYY.-,
 Attach Medical Record,צרף רשומה רפואית,
-Reference DocType,הפניה ל- DocType,
 Spouse,בן זוג,
 Family,מִשׁפָּחָה,
 Schedule Details,פרטי לוח הזמנים,
@@ -6983,16 +6895,8 @@
 HTML / Banner that will show on the top of product list.,HTML / אנר זה ייראה על החלק העליון של רשימת מוצרים.,
 Set prefix for numbering series on your transactions,קידומת להגדיר למספור סדרה על העסקות שלך,
 Setup Series,סדרת התקנה,
-Select Transaction,עסקה בחר,
-Help HTML,העזרה HTML,
-Series List for this Transaction,רשימת סדרות לעסקה זו,
-User must always select,משתמש חייב תמיד לבחור,
-Check this if you want to force the user to select a series before saving. There will be no default if you check this.,לבדוק את זה אם אתה רוצה להכריח את המשתמש לבחור סדרה לפני השמירה. לא יהיה ברירת מחדל אם תבדקו את זה.,
 Update Series,סדרת עדכון,
 Change the starting / current sequence number of an existing series.,לשנות את מתחיל / מספר הרצף הנוכחי של סדרות קיימות.,
-Prefix,קידומת,
-This is the number of the last created transaction with this prefix,זהו המספר של העסקה יצרה האחרונה עם קידומת זו,
-Update Series Number,עדכון סדרת מספר,
 Quotation Lost Reason,סיבה אבודה ציטוט,
 A third party distributor / dealer / commission agent / affiliate / reseller who sells the companies products for a commission.,/ סוחר / סוכן / שותפים / משווק עמלת מפיץ הצד שלישי שמוכר את המוצרים עבור חברות בועדה.,
 Sales Partner Name,שם שותף מכירות,
@@ -7687,7 +7591,6 @@
 Warehouse wise Item Balance Age and Value,מאזן פריטים חכם מחסן גיל וערך,
 Work Order Stock Report,דוח מלאי על הזמנת עבודה,
 Work Orders in Progress,הזמנות עבודה בתהליך,
-Validation Error,שגיאת אימות,
 Automatically Process Deferred Accounting Entry,עיבוד אוטומטי של ערך חשבונאות נדחה,
 Bank Clearance,פינוי בנק,
 Bank Clearance Detail,פירוט פינוי בנק,
@@ -7724,45 +7627,7 @@
 Therapy Plan: ,תוכנית טיפול:,
 Total Counts Targeted: ,סה&quot;כ ספירות ממוקדות:,
 Total Counts Completed: ,סה&quot;כ ספירות שהושלמו:,
-Andaman and Nicobar Islands,איי אנדמן וניקובר,
-Andhra Pradesh,אנדרה פרדש,
-Arunachal Pradesh,ארונאצ&#39;אל פראדש,
-Assam,אסאם,
-Bihar,ביהר,
-Chandigarh,צ&#39;נדיגאר,
-Chhattisgarh,צ&#39;אטיסגאר,
-Dadra and Nagar Haveli,דדרה ונגר האוולי,
-Daman and Diu,דמן ודיו,
-Delhi,דלהי,
-Goa,גואה,
-Gujarat,גוג&#39;ראט,
-Haryana,הריאנה,
-Himachal Pradesh,הימאצ&#39;אל פראדש,
-Jammu and Kashmir,ג&#39;אמו וקשמיר,
-Jharkhand,ג&#39;הרקהאנד,
-Karnataka,קרנטקה,
-Kerala,קראלה,
-Lakshadweep Islands,איי Lakshadweep,
-Madhya Pradesh,Madhya Pradesh,
-Maharashtra,מהרשטרה,
-Manipur,מניפור,
-Meghalaya,מגלאיה,
-Mizoram,מיזורם,
-Nagaland,נגאלנד,
-Odisha,אודישה,
-Other Territory,טריטוריה אחרת,
-Pondicherry,פונדיצ&#39;רי,
-Punjab,פונג&#39;אב,
-Rajasthan,רג&#39;סטאן,
-Sikkim,סיקים,
-Tamil Nadu,טאמיל נאדו,
-Telangana,טלנגנה,
-Tripura,טריפורה,
-Uttar Pradesh,אוטר פרדש,
-Uttarakhand,אוטארקהאנד,
-West Bengal,מערב בנגל,
 Is Mandatory,זה חובה,
-Published on,פורסם ב,
 Service Received But Not Billed,שירות שהתקבל אך לא מחויב,
 Deferred Accounting Settings,הגדרות חשבונאות נדחות,
 Book Deferred Entries Based On,ספר ערכים נדחים בהתבסס על,
@@ -8035,8 +7900,6 @@
 Worksheet Instructions,הוראות גליון עבודה,
 Result Legend Print,הדפסת אגדה של התוצאה,
 Print Position,מיקום הדפסה,
-Bottom,תַחתִית,
-Top,חלק עליון,
 Both,שניהם,
 Result Legend,אגדת תוצאות,
 Lab Tests,בדיקות מעבדה,
@@ -8081,12 +7944,10 @@
 Approvers,מחלוקת,
 The first Approver in the list will be set as the default Approver.,המאשר הראשון ברשימה יוגדר כמאשר ברירת המחדל.,
 Shift Request Approver,אישור בקשת משמרת,
-PAN Number,מספר PAN,
 Provident Fund Account,חשבון קופת גמל,
 MICR Code,קוד MICR,
 Repay unclaimed amount from salary,החזר סכום שלא נתבע מהמשכורת,
 Deduction from salary,ניכוי משכר,
-Expired Leaves,עלים שפג תוקפם,
 If this is not checked the loan by default will be considered as a Demand Loan,אם זה לא מסומן ההלוואה כברירת מחדל תיחשב כהלוואת דרישה,
 This account is used for booking loan repayments from the borrower and also disbursing loans to the borrower,חשבון זה משמש להזמנת החזרי הלוואות מהלווה וגם להוצאת הלוואות ללווה,
 This account is capital account which is used to allocate capital for loan disbursal account ,חשבון זה הוא חשבון הון המשמש להקצאת הון לחשבון פרסום הלוואות,
@@ -8844,3 +8705,41 @@
 Creating Purchase Order ...,יוצר הזמנת רכש ...,
 "Select a Supplier from the Default Suppliers of the items below. On selection, a Purchase Order will be made against items belonging to the selected Supplier only.","בחר ספק מבין ספקי ברירת המחדל של הפריטים למטה. בבחירה, הזמנת רכש תתבצע כנגד פריטים השייכים לספק שנבחר בלבד.",
 Row #{}: You must select {} serial numbers for item {}.,שורה מספר {}: עליך לבחור {} מספרים סידוריים לפריט {}.,
+Add Comment,הוסף תגובה,
+More...,יותר...,
+Notes,הערות,
+Payment Gateway,תשלום Gateway,
+Payment Gateway Name,שם שער התשלום,
+Payments,תשלומים,
+Plan Name,שם התוכנית,
+Portal,שַׁעַר,
+Scan Barcode,סרוק ברקוד,
+Some information is missing,מידע חסר,
+Successful,מוּצלָח,
+Tools,כלים,
+Use Sandbox,השתמש בארגז חול,
+Busy,עסוק,
+Completed By,הושלם על ידי,
+Payment Failed,התשלום נכשל,
+Column {0},עמודה {0},
+Field Mapping,מיפוי שדות,
+Not Specified,לא מוגדר,
+Update Type,סוג עדכון,
+Dr,"ד""ר",
+End Time,שעת סיום,
+Fetching...,מַקסִים...,
+"It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","נראה שיש בעיה בתצורת הפס של השרת. במקרה של כישלון, הסכום יוחזר לחשבונך.",
+Looks like someone sent you to an incomplete URL. Please ask them to look into it.,נראה שמישהו שלח אותך לכתובת אתר לא שלמה. אנא בקש מהם לבדוק את זה.,
+Master,Master,
+Pay,שלם,
+You can also copy-paste this link in your browser,אתה יכול גם להעתיק ולהדביק את הקישור הזה בדפדפן שלך,
+Verified By,מאומת על ידי,
+Invalid naming series (. missing) for {0},סדרת שמות לא חוקית (. חסרה) עבור {0},
+Phone Number,מספר טלפון,
+Account SID,חשבון SID,
+Global Defaults,ברירות מחדל גלובליות,
+Is Mandatory,זה חובה,
+WhatsApp,ווטסאפ,
+Make a call,להתקשר,
+Approve,לְאַשֵׁר,
+Reject,לִדחוֹת,
diff --git a/erpnext/translations/hi.csv b/erpnext/translations/hi.csv
index d56dcec..388b502 100644
--- a/erpnext/translations/hi.csv
+++ b/erpnext/translations/hi.csv
@@ -113,7 +113,6 @@
 Add Items,सामगंरियां जोड़ें,
 Add Leads,लीड्स जोड़ें,
 Add Multiple Tasks,एकाधिक कार्य जोड़ें,
-Add Row,लाइन जोड़ो,
 Add Sales Partners,बिक्री भागीदार जोड़ें,
 Add Serial No,धारावाहिक नहीं जोड़ें,
 Add Students,छात्रों को जोड़ें,
@@ -211,9 +210,7 @@
 An error occurred during the update process,अद्यतन प्रक्रिया के दौरान एक त्रुटि हुई,
 "An item exists with same name ({0}), please change the item group name or rename the item","एक आइटम ( {0}) , मद समूह का नाम बदलने के लिए या आइटम का नाम बदलने के लिए कृपया एक ही नाम के साथ मौजूद है",
 Analyst,विश्लेषक,
-Analytics,एनालिटिक्स,
 Annual Billing: {0},वार्षिक बिलिंग: {0},
-Anonymous,गुमनाम,
 Another Budget record '{0}' already exists against {1} '{2}' and account '{3}' for fiscal year {4},वित्तीय बजट के लिए {1} &#39;{2}&#39; और खाता &#39;{3}&#39; के खिलाफ एक और बजट रिकॉर्ड &#39;{0}&#39; पहले से मौजूद है {4},
 Another Period Closing Entry {0} has been made after {1},अन्य समयावधि अंतिम लेखा {0} के बाद किया गया है {1},
 Another Sales Person {0} exists with the same Employee id,एक और बिक्री व्यक्ति {0} एक ही कर्मचारी आईडी के साथ मौजूद है,
@@ -283,14 +280,12 @@
 Attendance not submitted for {0} as {1} on leave.,छुट्टी पर {0} के रूप में उपस्थिति {1} के रूप में प्रस्तुत नहीं किया गया है।,
 Attribute table is mandatory,गुण तालिका अनिवार्य है,
 Attribute {0} selected multiple times in Attributes Table,गुण {0} गुण तालिका में कई बार चुना,
-Author,लेखक,
 Authorized Signatory,अधिकृत हस्ताक्षरकर्ता,
 Auto Material Requests Generated,ऑटो सामग्री अनुरोध सृजित,
 Auto Repeat,ऑटो दोहराना,
 Auto repeat document updated,ऑटो दोहराना दस्तावेज़ अद्यतन,
 Automotive,मोटर वाहन,
 Available,उपलब्ध,
-Available Leaves,उपलब्ध पत्तियां,
 Available Qty,उपलब्ध मात्रा,
 Available Selling,उपलब्ध बेचना,
 Available for use date is required,उपयोग की तारीख के लिए उपलब्ध है,
@@ -340,7 +335,6 @@
 Base URL,आधार URL,
 Based On,के आधार पर,
 Based On Payment Terms,भुगतान की शर्तों के आधार पर,
-Basic,बुनियादी,
 Batch,बैच,
 Batch Entries,बैच प्रविष्टियाँ,
 Batch ID is mandatory,बैच आईडी अनिवार्य है,
@@ -361,7 +355,6 @@
 Billable Hours,जमानती घंटे,
 Billed,का बिल,
 Billed Amount,बिल की राशि,
-Billing,बिलिंग,
 Billing Address,बिलिंग पता,
 Billing Address is same as Shipping Address,बिलिंग पता शिपिंग पते के समान है,
 Billing Amount,बिलिंग राशि,
@@ -560,7 +553,6 @@
 Consumed Qty,खपत मात्रा,
 Consumer Products,उपभोक्ता उत्पाद,
 Contact,संपर्क,
-Contact Details,जानकारी के लिए संपर्क,
 Contact Us,हमसे संपर्क करें,
 Content,सामग्री,
 Content Masters,सामग्री मास्टर्स,
@@ -715,7 +707,6 @@
 Date of Joining,शामिल होने की तिथि,
 Date of Joining must be greater than Date of Birth,शामिल होने की तिथि जन्म तिथि से अधिक होना चाहिए,
 Date of Transaction,लेनदेन की तारीख,
-Datetime,Datetime,
 Day,दिन,
 Debit,नामे,
 Debit ({0}),डेबिट ({0}),
@@ -874,7 +865,6 @@
 Employee cannot report to himself.,कर्मचारी खुद को रिपोर्ट नहीं कर सकते हैं।,
 Employee {0} has already applied for {1} between {2} and {3} : ,कर्मचारी {0} पहले से {2} और {3} के बीच {1} के लिए आवेदन कर चुका है:,
 Employee {0} of grade {1} have no default leave policy,ग्रेड {1} के कर्मचारी {0} में कोई डिफ़ॉल्ट छुट्टी नीति नहीं है,
-Enable,सक्षम,
 Enable / disable currencies.,/ निष्क्रिय मुद्राओं सक्षम करें.,
 Enabled,Enabled,
 "Enabling 'Use for Shopping Cart', as Shopping Cart is enabled and there should be at least one Tax Rule for Shopping Cart","सक्षम करने से, &#39;शॉपिंग कार्ट के लिए उपयोग करें&#39; खरीदारी की टोकरी के रूप में सक्षम है और शॉपिंग कार्ट के लिए कम से कम एक कर नियम होना चाहिए",
@@ -905,7 +895,6 @@
 Error: Not a valid id?,त्रुटि: नहीं एक वैध पहचान?,
 Estimated Cost,अनुमानित लागत,
 "Even if there are multiple Pricing Rules with highest priority, then following internal priorities are applied:","सर्वोच्च प्राथमिकता के साथ कई मूल्य निर्धारण नियम हैं, भले ही उसके बाद निम्न आंतरिक प्राथमिकताओं लागू कर रहे हैं:",
-Event,घटना,
 Exchange Gain/Loss,मुद्रा लाभ / हानि,
 Exchange Rate Revaluation master.,एक्सचेंज रेट रिवैल्यूएशन मास्टर।,
 Exchange Rate must be same as {0} {1} ({2}),विनिमय दर के रूप में ही किया जाना चाहिए {0} {1} ({2}),
@@ -1032,7 +1021,6 @@
 From value must be less than to value in row {0},मूल्य से पंक्ति में मान से कम होना चाहिए {0},
 From {0} | {1} {2},से {0} | {1} {2},
 Fulfillment,पूर्ति,
-Full,पूर्ण,
 Full Name,पूरा नाम,
 Fully Depreciated,पूरी तरह से घिस,
 Furnitures and Fixtures,Furnitures और फिक्सर,
@@ -1133,7 +1121,6 @@
 Hub Sync ID,हब सिंक आईडी,
 Human Resource,मानव संसाधन,
 Human Resources,मानवीय संसाधन,
-IFSC Code,आईएफएससी कोड,
 IGST Amount,आईजीएसटी राशि,
 IP Address,आईपी पता,
 ITC Available (whether in full op part),ITC उपलब्ध (पूर्ण ऑप भाग में),
@@ -1185,7 +1172,6 @@
 Ineligible ITC,अयोग्य आईटीसी,
 Initiated,शुरू की,
 Inpatient Record,रोगी रिकॉर्ड,
-Insert,सम्मिलित करें,
 Installation Note,स्थापना नोट,
 Installation Note {0} has already been submitted,स्थापना नोट {0} पहले से ही प्रस्तुत किया गया है,
 Installation date cannot be before delivery date for Item {0},स्थापना दिनांक मद के लिए डिलीवरी की तारीख से पहले नहीं किया जा सकता {0},
@@ -1197,7 +1183,6 @@
 Insurance Start date should be less than Insurance End date,बीमा प्रारंभ दिनांक से बीमा समाप्ति की तारीख कम होना चाहिए,
 Integrated Tax,एकीकृत कर,
 Inter-State Supplies,अंतर-राज्यीय आपूर्ति,
-Interests,रूचियाँ,
 Internet Publishing,इंटरनेट प्रकाशन,
 Intra-State Supplies,इंट्रा-स्टेट आपूर्ति,
 Introduction,परिचय,
@@ -1316,7 +1301,6 @@
 Lab testing datetime cannot be before collection datetime,लैब परीक्षण datetime संग्रह तिथि समय से पहले नहीं हो सकता,
 Label,लेबल,
 Laboratory,प्रयोगशाला,
-Language Name,भाषा का नाम,
 Large,बड़ा,
 Last Communication,अंतिम संचार,
 Last Communication Date,अंतिम संचार दिनांक,
@@ -1347,8 +1331,6 @@
 Letter Heads for print templates.,प्रिंट टेम्पलेट्स के लिए पत्र सिर .,
 Level,स्तर,
 Liability,दायित्व,
-License,लाइसेंस,
-Limit,हद,
 Limit Crossed,सीमा पार,
 Link to Material Request,सामग्री अनुरोध से लिंक करें,
 List of all share transactions,सभी शेयर लेनदेन की सूची,
@@ -1359,7 +1341,6 @@
 Loans (Liabilities),ऋण (देनदारियों),
 Loans and Advances (Assets),ऋण और अग्रिम ( संपत्ति),
 Local,स्थानीय,
-Log,लॉग,
 Logs for maintaining sms delivery status,एसएमएस वितरण की स्थिति बनाए रखने के लिए लॉग,
 Lost,खोया,
 Lost Reasons,हार के कारण,
@@ -1445,7 +1426,6 @@
 Medical Department,चिकित्सा विभाग,
 Medical Record,मेडिकल रिकॉर्ड,
 Medium,मध्यम,
-Meeting,मुलाकात,
 Member Activity,सदस्य गतिविधि,
 Member ID,सदस्य आईडी,
 Member Name,सदस्य का नाम,
@@ -1495,7 +1475,6 @@
 Multiple Variants,एकाधिक विविधताएं,
 Multiple fiscal years exist for the date {0}. Please set company in Fiscal Year,एकाधिक वित्तीय वर्ष की तारीख {0} के लिए मौजूद हैं। वित्त वर्ष में कंपनी सेट करें,
 Music,संगीत,
-My Account,मेरा खाता,
 Name error: {0},नाम में त्रुटि: {0},
 Name of new Account. Note: Please don't create accounts for Customers and Suppliers,नए खाते का नाम। नोट: ग्राहकों और आपूर्तिकर्ताओं के लिए खातों मत बनाएँ,
 Name or Email is mandatory,नाम या ईमेल अनिवार्य है,
@@ -1538,7 +1517,6 @@
 New credit limit is less than current outstanding amount for the customer. Credit limit has to be atleast {0},नई क्रेडिट सीमा ग्राहक के लिए वर्तमान बकाया राशि की तुलना में कम है। क्रेडिट सीमा कम से कम हो गया है {0},
 New task,नया कार्य,
 New {0} pricing rules are created,नए {0} मूल्य निर्धारण नियम बनाए गए हैं,
-Newsletters,समाचारपत्रिकाएँ,
 Newspaper Publishers,अखबार के प्रकाशक,
 Next,अगला,
 Next Contact By cannot be same as the Lead Email Address,अगले संपर्क के द्वारा सीसा ईमेल एड्रेस के रूप में ही नहीं किया जा सकता,
@@ -1686,7 +1664,6 @@
 Other,अन्य,
 Other Reports,अन्य रिपोर्टें,
 "Other outward supplies(Nil rated,Exempted)","अन्य बाहरी आपूर्ति (निल रेटेड, छूट)",
-Others,दूसरों,
 Out Qty,मात्रा बाहर,
 Out Value,आउट मान,
 Out of Order,खराब,
@@ -1726,7 +1703,6 @@
 Party Type and Party is mandatory for {0} account,{0} खाते के लिए पार्टी प्रकार और पार्टी अनिवार्य है,
 Party Type is mandatory,पार्टी प्रकार अनिवार्य है,
 Party is mandatory,पार्टी अनिवार्य है,
-Password,पासवर्ड,
 Past Due Date,पिछले देय तिथि,
 Patient,मरीज,
 Patient Appointment,रोगी की नियुक्ति,
@@ -1784,7 +1760,6 @@
 Pharmaceutical,औषधि,
 Pharmaceuticals,औषधीय,
 Physician,चिकित्सक,
-Pincode,Pincode,
 Place Of Supply (State/UT),आपूर्ति का स्थान (राज्य / केन्द्र शासित प्रदेश),
 Place Order,आदेश देना,
 Plan Name,योजना का नाम,
@@ -1896,7 +1871,6 @@
 Please select date,कृपया तिथि का चयन,
 Please select item code,आइटम कोड का चयन करें,
 Please select month and year,माह और वर्ष का चयन करें,
-Please select prefix first,पहले उपसर्ग का चयन करें,
 Please select the Company,कृपया कंपनी का चयन करें,
 Please select the Multiple Tier Program type for more than one collection rules.,कृपया एक से अधिक संग्रह नियमों के लिए एकाधिक श्रेणी प्रोग्राम प्रकार का चयन करें।,
 Please select the assessment group other than 'All Assessment Groups',कृपया &#39;सभी मूल्यांकन समूह&#39; के अलावा अन्य मूल्यांकन समूह का चयन करें,
@@ -1913,7 +1887,6 @@
 Please set Company filter blank if Group By is 'Company',अगर ग्रुप बाय &#39;कंपनी&#39; है तो कंपनी को फिल्टर रिक्त करें,
 Please set Default Payroll Payable Account in Company {0},कंपनी में डिफ़ॉल्ट पेरोल देय खाता सेट करें {0},
 Please set Depreciation related Accounts in Asset Category {0} or Company {1},में परिसंपत्ति वर्ग {0} या कंपनी मूल्यह्रास संबंधित खाते सेट करें {1},
-Please set Email Address,ई-मेल पता सेट करें,
 Please set GST Accounts in GST Settings,कृपया जीएसटी सेटिंग्स जीएसटी सेटिंग्स में सेट करें,
 Please set Hotel Room Rate on {},कृपया होटल कक्ष दर {} पर सेट करें,
 Please set Number of Depreciations Booked,Depreciations की संख्या बुक सेट करें,
@@ -1936,7 +1909,6 @@
 Please set the Email ID for the Student to send the Payment Request,छात्र के लिए भुगतान अनुरोध भेजने के लिए कृपया ईमेल आईडी सेट करें,
 Please set the Item Code first,कृपया आइटम कोड पहले सेट करें,
 Please set the Payment Schedule,कृपया भुगतान अनुसूची निर्धारित करें,
-Please set the series to be used.,कृपया उपयोग की जाने वाली श्रृंखला सेट करें,
 Please set {0} for address {1},पता {1} के लिए {0} सेट करें,
 Please setup Students under Student Groups,छात्रों के समूह के तहत छात्र सेट करें,
 Please specify Company,कंपनी निर्दिष्ट करें,
@@ -1953,7 +1925,6 @@
 Point-of-Sale,बिक्री केन्द्र,
 Point-of-Sale Profile,प्वाइंट-ऑफ-सेल प्रोफ़ाइल,
 Portal,द्वार,
-Portal Settings,पोर्टल सेटिंग,
 Possible Supplier,संभव प्रदायक,
 Postal Expenses,पोस्टल व्यय,
 Posting Date,तिथि पोस्टिंग,
@@ -2152,12 +2123,10 @@
 Reference No is mandatory if you entered Reference Date,"आप संदर्भ तिथि में प्रवेश किया , तो संदर्भ कोई अनिवार्य है",
 Reference No.,संदर्भ संख्या।,
 Reference Number,संदर्भ संख्या,
-Reference Owner,संदर्भ मालिक,
 Reference Type,संदर्भ प्रकार,
 "Reference: {0}, Item Code: {1} and Customer: {2}","संदर्भ: {0}, मद कोड: {1} और ग्राहक: {2}",
 References,संदर्भ,
 Refresh Token,ताज़ा टोकन,
-Region,प्रदेश,
 Register,रजिस्टर,
 Rejected,अस्वीकृत,
 Related,सम्बंधित,
@@ -2179,7 +2148,6 @@
 Replace BOM and update latest price in all BOMs,बीओएम को बदलें और सभी बीओएम में नवीनतम मूल्य अपडेट करें,
 Replied,उत्तर,
 Report,रिपोर्ट,
-Report Builder,रिपोर्ट बिल्डर,
 Report Type,टाइप रिपोर्ट,
 Report Type is mandatory,रिपोर्ट प्रकार अनिवार्य है,
 Reports,रिपोर्ट,
@@ -2355,13 +2323,11 @@
 Same Company is entered more than once,एक ही कंपनी के एक से अधिक बार दर्ज किया जाता है,
 Same item cannot be entered multiple times.,एक ही मद कई बार दर्ज नहीं किया जा सकता है।,
 Same supplier has been entered multiple times,एक ही सप्लायर कई बार दर्ज किया गया है,
-Sample,नमूना,
 Sample Collection,नमूना संग्रह,
 Sample quantity {0} cannot be more than received quantity {1},नमूना मात्रा {0} प्राप्त मात्रा से अधिक नहीं हो सकती {1},
 Sanctioned,स्वीकृत,
 Sand,रेत,
 Saturday,शनिवार,
-Saved,सहेजा गया,
 Saving {0},सहेजा जा रहा है {0},
 Scan Barcode,स्कैन बारकोड,
 Schedule,अनुसूची,
@@ -2463,7 +2429,6 @@
 Series Updated,सीरीज नवीनीकृत,
 Series Updated Successfully,सीरीज सफलतापूर्वक अपडेट,
 Series is mandatory,सीरीज अनिवार्य है,
-Series {0} already used in {1},सीरीज {0} पहले से ही प्रयोग किया जाता में {1},
 Service,सेवा,
 Service Level Agreement,सेवा स्तर समझौता,
 Service Level Agreement.,सेवा स्तर समझौता।,
@@ -2479,7 +2444,6 @@
 Set Tax Rule for shopping cart,शॉपिंग कार्ट के लिए सेट कर नियम,
 Set as Closed,बंद के रूप में सेट करें,
 Set as Completed,पूर्ण के रूप में सेट करें,
-Set as Default,डिफ़ॉल्ट रूप में सेट करें,
 Set as Lost,खोया के रूप में सेट करें,
 Set as Open,ओपन के रूप में सेट करें,
 Set default inventory account for perpetual inventory,सतत सूची के लिए डिफ़ॉल्ट इन्वेंट्री खाता सेट करें,
@@ -2511,7 +2475,6 @@
 Shareholder,शेयरहोल्डर,
 Ship To State,जहाज के लिए राज्य,
 Shipments,लदान,
-Shipping,शिपिंग,
 Shipping Address,शिपिंग पता,
 "Shipping Address does not have country, which is required for this Shipping Rule","नौवहन पते के पास देश नहीं है, जो इस शिपिंग नियम के लिए आवश्यक है",
 Shipping rule only applicable for Buying,नौवहन नियम केवल खरीद के लिए लागू है,
@@ -2564,7 +2527,6 @@
 Split Batch,स्प्लिट बैच,
 Split Issue,स्प्लिट इश्यू,
 Sports,खेल,
-Standard,मानक,
 Standard Buying,मानक खरीद,
 Standard Selling,मानक बेच,
 Standard contract terms for Sales or Purchase.,बिक्री या खरीद के लिए मानक अनुबंध शर्तों .,
@@ -2731,7 +2693,6 @@
 Terms and Conditions,नियम और शर्तें,
 Terms and Conditions Template,नियमों और शर्तों टेम्पलेट,
 Territory,क्षेत्र,
-Test,परीक्षण,
 Thank you for your business!,आपके व्यापार के लिए धन्यवाद!,
 The 'From Package No.' field must neither be empty nor it's value less than 1.,&#39;पैकेज नंबर से&#39; फ़ील्ड रिक्त न हो और न ही 1 से भी कम का मान होना चाहिए।,
 The Brand,ब्रांड,
@@ -2848,7 +2809,6 @@
 Total (Without Tax),कुल (कर के बिना),
 Total Achieved,कुल प्राप्त,
 Total Actual,वास्तविक कुल,
-Total Allocated Leaves,कुल आवंटित पत्तियां,
 Total Amount,कुल राशि,
 Total Amount Credited,कुल राशि क्रेडिट,
 Total Applicable Charges in Purchase Receipt Items table must be same as Total Taxes and Charges,खरीद रसीद आइटम तालिका में कुल लागू शुल्कों के कुल करों और शुल्कों के रूप में ही होना चाहिए,
@@ -2892,7 +2852,6 @@
 Total(Amt),कुल (राशि),
 Total(Qty),कुल मात्रा),
 Traceability,पता लगाने की क्षमता,
-Traceback,वापस ट्रेस करें,
 Track Leads by Lead Source.,लीड स्रोत द्वारा ट्रैक लीड्स,
 Transaction,लेन - देन,
 Transaction Date,लेनदेन की तारीख,
@@ -2930,7 +2889,6 @@
 UOM Conversion factor is required in row {0},UOM रूपांतरण कारक पंक्ति में आवश्यक है {0},
 UOM coversion factor required for UOM: {0} in Item: {1},UOM के लिए आवश्यक UOM coversion पहलू: {0} मद में: {1},
 URL,यूआरएल,
-Unable to find DocType {0},डॉकटाइप खोज में असमर्थ {0},
 Unable to find exchange rate for {0} to {1} for key date {2}. Please create a Currency Exchange record manually,कुंजी दिनांक {2} के लिए {0} से {0} के लिए विनिमय दर खोजने में असमर्थ कृपया मैन्युअल रूप से एक मुद्रा विनिमय रिकॉर्ड बनाएं,
 Unable to find score starting at {0}. You need to have standing scores covering 0 to 100,{0} से शुरू अंक ढूंढने में असमर्थ आपको 0 से 100 तक के स्कोर वाले खड़े होने की जरूरत है,
 Unable to find variable: ,वेरिएबल खोजने में असमर्थ:,
@@ -2960,7 +2918,6 @@
 Upload your letter head and logo. (you can edit them later).,अपने पत्र सिर और लोगो अपलोड करें। (आप उन्हें बाद में संपादित कर सकते हैं)।,
 Upper Income,ऊपरी आय,
 Use Sandbox,उपयोग सैंडबॉक्स,
-Used Leaves,प्रयुक्त पत्तियां,
 User,उपयोगकर्ता,
 User ID,प्रयोक्ता आईडी,
 User ID not set for Employee {0},यूजर आईडी कर्मचारी के लिए सेट नहीं {0},
@@ -3051,7 +3008,6 @@
 Website Settings,वेबसाइट सेटिंग,
 Wednesday,बुधवार,
 Week,सप्ताह,
-Weekdays,काम करने के दिन,
 Weekly,साप्ताहिक,
 "Weight is mentioned,\nPlease mention ""Weight UOM"" too","वजन भी ""वजन UOM"" का उल्लेख कृपया \n, उल्लेख किया गया है",
 Welcome email sent,स्वागत ईमेल भेजा,
@@ -3072,7 +3028,6 @@
 Work Order {0} must be submitted,कार्य क्रम {0} प्रस्तुत किया जाना चाहिए,
 Work Orders Created: {0},निर्मित कार्य आदेश: {0},
 Work-in-Progress Warehouse is required before Submit,वर्क प्रगति वेयरहाउस प्रस्तुत करने से पहले आवश्यक है,
-Workflow,कार्यप्रवाह,
 Working,कार्य,
 Working Hours,कार्य के घंटे,
 Workstation,वर्कस्टेशन,
@@ -3102,7 +3057,6 @@
 You need to be a user other than Administrator with System Manager and Item Manager roles to register on Marketplace.,बाज़ार प्रबंधक पर पंजीकरण करने के लिए आपको सिस्टम मैनेजर और आइटम प्रबंधक भूमिकाओं के साथ प्रशासक के अलावा अन्य उपयोगकर्ता होने की आवश्यकता है।,
 You need to be a user with System Manager and Item Manager roles to add users to Marketplace.,बाज़ार में उपयोगकर्ताओं को जोड़ने के लिए आपको सिस्टम मैनेजर और आइटम मैनेजर भूमिकाओं के साथ एक उपयोगकर्ता होने की आवश्यकता है।,
 You need to be a user with System Manager and Item Manager roles to register on Marketplace.,बाज़ार प्रबंधक पर पंजीकरण करने के लिए आपको सिस्टम मैनेजर और आइटम मैनेजर भूमिकाओं के साथ एक उपयोगकर्ता होने की आवश्यकता है।,
-You need to be logged in to access this page,आप इस पेज को उपयोग में लॉग इन करने की आवश्यकता,
 You need to enable Shopping Cart,आप खरीदारी की टोकरी में सक्रिय करने की जरूरत,
 You will lose records of previously generated invoices. Are you sure you want to restart this subscription?,आप पहले जेनरेट किए गए चालान के रिकॉर्ड खो देंगे। क्या आप वाकई इस सदस्यता को पुनरारंभ करना चाहते हैं?,
 Your Organization,आपकी संगठन,
@@ -3218,7 +3172,6 @@
 Assigned To,को सौंपा,
 Chat,बातचीत,
 Completed By,द्वारा पूरा किया गया,
-County,काउंटी,
 Day of Week,सप्ताह के दिन,
 "Dear System Manager,","प्रिय सिस्टम मैनेजर,",
 Default Value,डिफ़ॉल्ट मान,
@@ -3229,31 +3182,21 @@
 Fieldtype,क्षेत्र प्रकार,
 Help Articles,सहायता आलेख,
 ID,आईडी,
-Images,इमेजिस,
 Import,आयात,
 Language,भाषा,
 Likes,पसंद,
 Merge with existing,मौजूदा साथ मर्ज,
-Office,कार्यालय,
 Orientation,अभिविन्यास,
 Parent,माता-पिता,
-Passive,निष्क्रिय,
 Payment Failed,भुगतान असफल हुआ,
-Permanent,स्थायी,
 Personal,व्यक्तिगत,
-Plant,पौधा,
 Post,पद,
-Postal,डाक का,
 Postal Code,डाक कोड,
-Previous,पिछला,
 Provider,प्रदाता,
 Read Only,केवल पठनीय,
 Recipient,प्राप्तकर्ता,
 Reviews,समीक्षा,
 Sender,प्रेषक,
-Shop,दुकान,
-Subsidiary,सहायक,
-There is some problem with the file url: {0},फ़ाइल यूआरएल के साथ कुछ समस्या है: {0},
 There were errors while sending email. Please try again.,ईमेल भेजने के दौरान त्रुटि . पुन: प्रयास करें .,
 Values Changed,मूल्यों को बदल,
 or,या,
@@ -3280,19 +3223,16 @@
 Quality Feedback Template,गुणवत्ता प्रतिक्रिया टेम्पलेट,
 Rules for applying different promotional schemes.,विभिन्न प्रचार योजनाओं को लागू करने के लिए नियम।,
 Show {0},{0} दिखाएं,
-"Special Characters except '-', '#', '.', '/', '{{' and '}}' not allowed in naming series {0}","&quot;-&quot;, &quot;#&quot;, &quot;।&quot;, &quot;/&quot;, &quot;{{&quot; और &quot;}}&quot; को छोड़कर विशेष वर्ण श्रृंखला {0} में अनुमति नहीं है",
 Target Details,लक्ष्य विवरण,
 {0} already has a Parent Procedure {1}.,{0} पहले से ही एक पेरेंट प्रोसीजर {1} है।,
 API,एपीआई,
 Annual,वार्षिक,
 Change,परिवर्तन,
 Contact Email,संपर्क ईमेल,
-Export Type,निर्यात प्रकार,
 From Date,दिनांक से,
 Group By,समूह द्वारा,
 Invalid URL,अवैध यूआरएल,
 Landscape,परिदृश्य,
-Last Sync On,अंतिम सिंक ऑन,
 Naming Series,श्रृंखला का नामकरण,
 No data to export,निर्यात करने के लिए कोई डेटा नहीं,
 Portrait,चित्र,
@@ -3302,7 +3242,6 @@
 Show Document,दस्तावेज़ दिखाएं,
 Show Traceback,ट्रेसेबैक दिखाएं,
 Video,वीडियो,
-Webhook Secret,वेबहूक सीक्रेट,
 % Of Grand Total,कुल का%,
 <b>Company</b> is a mandatory filter.,<b>कंपनी</b> एक अनिवार्य फ़िल्टर है।,
 <b>From Date</b> is a mandatory filter.,<b>दिनांक</b> से एक अनिवार्य फिल्टर है।,
@@ -3358,7 +3297,6 @@
 BOM Comparison Tool,बीओएम तुलना उपकरण,
 BOM recursion: {0} cannot be child of {1},BOM पुनरावर्तन: {0} {1} का बच्चा नहीं हो सकता,
 BOM recursion: {0} cannot be parent or child of {1},BOM पुनरावर्तन: {0} माता-पिता या {1} का बच्चा नहीं हो सकता,
-Back to Home,घर वापिस जा रहा हूँ,
 Back to Messages,संदेशों पर वापस जाएं,
 Bank Data mapper doesn't exist,बैंक डेटा मैपर मौजूद नहीं है,
 Bank Details,बैंक विवरण,
@@ -3420,7 +3358,6 @@
 Currency,मुद्रा,
 Current Status,वर्तमान स्थिति,
 Customer PO,ग्राहक पीओ,
-Customize,को मनपसंद,
 Daily,दैनिक,
 Date,तारीख,
 Date of Birth cannot be greater than Joining Date.,"जन्म तिथि, जॉइनिंग डेट से अधिक नहीं हो सकती।",
@@ -3454,7 +3391,6 @@
 ERPNext could not find any matching payment entry,ERPNext को कोई भी भुगतान भुगतान प्रविष्टि नहीं मिली,
 Earliest Age,प्राचीनतम युग,
 Edit Details,विवरण संपादित करें,
-Edit Profile,प्रोफ़ाइल संपादित करें,
 Either GST Transporter ID or Vehicle No is required if Mode of Transport is Road,यदि मोड ऑफ रोड है तो या तो जीएसटी ट्रांसपोर्टर आईडी या वाहन संख्या की आवश्यकता नहीं है,
 Email,ईमेल,
 Email Campaigns,ईमेल अभियान,
@@ -3482,7 +3418,6 @@
 Fetch Items from Warehouse,गोदाम से आइटम प्राप्त करें,
 Fetching...,ला रहा है ...,
 Field,खेत,
-File Manager,फ़ाइल प्रबंधक,
 Filters,फिल्टर,
 Finding linked payments,लिंक किए गए भुगतान ढूँढना,
 Fleet Management,बेड़े प्रबंधन,
@@ -3521,7 +3456,6 @@
 Incorrect Warehouse,गलत वेयरहाउस,
 Invalid Barcode. There is no Item attached to this barcode.,अमान्य बारकोड। इस बारकोड से कोई आइटम संलग्न नहीं है।,
 Invalid credentials,अवैध प्रत्यय पत्र,
-Invite as User,उपयोगकर्ता के रूप में आमंत्रित,
 Issue Priority.,मुद्दा प्राथमिकता।,
 Issue Type.,समस्या का प्रकार।,
 "It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","ऐसा लगता है कि सर्वर की पट्टी विन्यास के साथ कोई समस्या है। विफलता के मामले में, राशि आपके खाते में वापस कर दी जाएगी।",
@@ -3564,7 +3498,6 @@
 New Invoice,नया चालान,
 New Payment,नया भुगतान,
 New release date should be in the future,नई रिलीज की तारीख भविष्य में होनी चाहिए,
-Newsletter,न्यूज़लैटर,
 No Account matched these filters: {},कोई खाता इन फ़िल्टर से मेल नहीं खाता: {},
 No communication found.,कोई संचार नहीं मिला।,
 No correct answer is set for {0},कोई सही उत्तर {0} के लिए सेट नहीं है,
@@ -3640,7 +3573,6 @@
 Please setup a default bank account for company {0},कृपया कंपनी के लिए एक डिफ़ॉल्ट बैंक खाता सेट करें {0},
 Please specify,कृपया बताएं,
 Please specify a {0},कृपया एक {0} निर्दिष्ट करें,lead
-Printing,मुद्रण,
 Priority,प्राथमिकता,
 Priority has been changed to {0}.,प्राथमिकता को {0} में बदल दिया गया है।,
 Priority {0} has been repeated.,प्राथमिकता {0} दोहराई गई है।,
@@ -3649,7 +3581,6 @@
 Project,परियोजना,
 Provide the academic year and set the starting and ending date.,शैक्षणिक वर्ष प्रदान करें और आरंभ और समाप्ति तिथि निर्धारित करें।,
 Public token is missing for this bank,इस बैंक के लिए सार्वजनिक टोकन गायब है,
-Publish,प्रकाशित करना,
 Publish 1 Item,1 आइटम प्रकाशित करें,
 Publish Items,आइटम प्रकाशित करें,
 Publish More Items,अधिक आइटम प्रकाशित करें,
@@ -3677,7 +3608,6 @@
 Reconciled,मेल मिलाप,
 Recruitment,भरती,
 Red,लाल,
-Refreshing,ताज़ा किया जा रहा,
 Release date must be in the future,रिलीज की तारीख भविष्य में होनी चाहिए,
 Relieving Date must be greater than or equal to Date of Joining,"राहत की तारीख, ज्वाइनिंग की तारीख से अधिक या उसके बराबर होनी चाहिए",
 Rename,नाम बदलें,
@@ -3721,7 +3651,6 @@
 Search for a payment,भुगतान के लिए खोजें,
 Search for anything ...,कुछ भी खोजें ...,
 Search results for,के लिए खोज परिणाम,
-Select All,सभी का चयन,
 Select Difference Account,अंतर खाता चुनें,
 Select a Default Priority.,एक डिफ़ॉल्ट प्राथमिकता चुनें।,
 Select a company,एक कंपनी का चयन करें,
@@ -3740,11 +3669,9 @@
 Service Level Agreement has been changed to {0}.,सेवा स्तर समझौते को बदलकर {0} कर दिया गया है।,
 Service Level Agreement was reset.,सेवा स्तर का समझौता रीसेट किया गया था।,
 Service Level Agreement with Entity Type {0} and Entity {1} already exists.,एंटिटी टाइप {0} और एंटिटी {1} सर्विस लेवल एग्रीमेंट पहले से मौजूद है।,
-Set,समूह,
 Set Meta Tags,मेटा टैग सेट करें,
 Set {0} in company {1},कंपनी {1} में {0} सेट करें,
 Setup,व्यवस्था,
-Setup Wizard,सेटअप विज़ार्ड,
 Shift Management,शिफ्ट प्रबंधन,
 Show Future Payments,भविष्य के भुगतान दिखाएं,
 Show Linked Delivery Notes,लिंक्ड डिलीवरी नोट्स दिखाएं,
@@ -3815,7 +3742,6 @@
 Unreconciled,Unreconciled,
 Unsupported GST Category for E-Way Bill JSON generation,ई-वे बिल JSON पीढ़ी के लिए असमर्थित GST श्रेणी,
 Update,अद्यतन,
-Update Details,अद्यतन विवरण,
 Update Taxes for Items,आइटम के लिए अद्यतन कर,
 "Upload a bank statement, link or reconcile a bank account","बैंक स्टेटमेंट अपलोड करें, बैंक अकाउंट लिंक करें या मेल करें",
 Upload a statement,एक बयान अपलोड करें,
@@ -3839,7 +3765,6 @@
 XML Files Processed,XML फ़ाइलें संसाधित,
 Year,वर्ष,
 Yearly,वार्षिक,
-You,तुमने,
 You are not allowed to enroll for this course,आपको इस पाठ्यक्रम के लिए नामांकन करने की अनुमति नहीं है,
 You are not enrolled in program {0},आप प्रोग्राम {0} में नामांकित नहीं हैं,
 You can Feature upto 8 items.,आप 8 आइटम तक देख सकते हैं।,
@@ -3856,7 +3781,6 @@
 e-Way Bill already exists for this document,इस दस्तावेज़ के लिए ई-वे बिल पहले से मौजूद है,
 woocommerce - {0},वूकॉमर्स - {0},
 {0} Coupon used are {1}. Allowed quantity is exhausted,{0} कूपन का उपयोग किया जाता है {1}। अनुमति मात्रा समाप्त हो गई है,
-{0} Name,{0} नाम,
 {0} Operations: {1},{0} संचालन: {1},
 {0} bank transaction(s) created,{0} बैंक लेन-देन,
 {0} bank transaction(s) created and {1} errors,{0} बैंक लेन-देन (ओं) का निर्माण और {1} त्रुटियां,
@@ -3875,17 +3799,13 @@
 Total Income,कुल आय,
 Total Income This Year,इस वर्ष कुल आय,
 Barcode,बारकोड,
-Bold,साहसिक,
-Center,केंद्र,
 Clear,स्पष्ट,
-Comment,टिप्पणी,
 Comments,टिप्पणियां,
 DocType,doctype,
 Download,डाउनलोड,
 Left,वाम,
 Link,संपर्क,
 New,नया,
-Not Found,नहीं मिला,
 Print,छाप,
 Reference Name,संदर्भ नाम,
 Refresh,ताज़ा करे,
@@ -3908,7 +3828,6 @@
 Email Id,ईमेल आईडी,
 No,नहीं,
 Reference Doctype,संदर्भ टैग,
-User Id,यूज़र आईडी,
 Yes,हाँ,
 Actual ,वास्तविक,
 Add to cart,कार्ट में जोड़ें,
@@ -4304,7 +4223,6 @@
 e.g Adjustments for:,उदाहरण के लिए समायोजन:,
 Section Subtotal,अनुभाग उप-योग,
 Section Footer,धारा फुटर,
-Position,पद,
 Cash Flow Mapping,कैश फ्लो मैपिंग,
 Select Maximum Of 1,1 का अधिकतम चुनें,
 Is Finance Cost,वित्त लागत है,
@@ -4936,7 +4854,6 @@
 Previous Business Day,पिछला व्यापार दिवस,
 Next Business Day,अगला व्यवसाय दिवस,
 Urgent,अत्यावश्यक,
-Crop,फ़सल,
 Crop Name,क्रॉप नाम,
 Scientific Name,वैज्ञानिक नाम,
 "You can define all the tasks which need to carried out for this crop here. The day field is used to mention the day on which the task needs to be carried out, 1 being the 1st day, etc.. ","आप यहां इस फसल के लिए सभी कार्यों को परिभाषित कर सकते हैं। दिन का फ़ील्ड उस दिन का उल्लेख करने के लिए उपयोग किया जाता है जिस पर कार्य करने की जरूरत है, 1 दिन पहले दिन, आदि।",
@@ -5441,7 +5358,6 @@
 To TIme,समय के लिए,
 Course End Date,कोर्स समाप्ति तिथि,
 Course Topic,पाठ्यक्रम विषय,
-Topic,विषय,
 Topic Name,विषय नाम,
 Education Settings,शिक्षा सेटिंग्स,
 Current Academic Year,वर्तमान शैक्षणिक वर्ष,
@@ -5516,7 +5432,6 @@
 Check this if the Student is residing at the Institute's Hostel.,यह जाँच लें कि छात्र संस्थान के छात्रावास में रह रहा है।,
 Walking,चलना,
 Institute's Bus,संस्थान की बस,
-Public Transport,सार्वजनिक परिवाहन,
 Self-Driving Vehicle,स्व-ड्राइविंग वाहन,
 Pick/Drop by Guardian,गार्जियन द्वारा उठाओ / ड्रॉप,
 Enrolled courses,नामांकित पाठ्यक्रम,
@@ -5697,7 +5612,6 @@
 Default Cost Center,डिफ़ॉल्ट लागत केंद्र,
 Undeposited Funds Account,Undeposited फंड खाता,
 Shopify Log,शॉपिफा लॉग करें,
-Request Data,अनुरोध डेटा,
 Shopify Settings,दुकान सेटिंग्स,
 status html,स्थिति एचटीएमएल,
 Enable Shopify,Shopify सक्षम करें,
@@ -5817,7 +5731,6 @@
 Exercise Instructions,व्यायाम निर्देश,
 Exercise Video,व्यायाम वीडियो,
 Exercise Steps,एक्सरसाइज स्टेप्स,
-Steps,कदम,
 Steps Table,स्टेप्स टेबल,
 Exercise Type Step,एक्सरसाइज टाइप स्टेप,
 Max number of visit,विज़िट की अधिकतम संख्या,
@@ -6001,7 +5914,6 @@
 Patient Encounter Symptom,रोगी मुठभेड़ लक्षण,
 HLC-PMR-.YYYY.-,उच्च स्तरीय समिति-PMR-.YYYY.-,
 Attach Medical Record,मेडिकल रिकॉर्ड संलग्न करें,
-Reference DocType,संदर्भ DocType,
 Spouse,पति या पत्नी,
 Family,परिवार,
 Schedule Details,अनुसूची का विवरण,
@@ -6983,16 +6895,8 @@
 HTML / Banner that will show on the top of product list.,HTML बैनर / कि उत्पाद सूची के शीर्ष पर दिखाई देगा.,
 Set prefix for numbering series on your transactions,अपने लेनदेन पर श्रृंखला नंबरिंग के लिए उपसर्ग सेट,
 Setup Series,सेटअप सीरीज,
-Select Transaction,लेन - देन का चयन करें,
-Help HTML,HTML मदद,
-Series List for this Transaction,इस लेन - देन के लिए सीरीज सूची,
-User must always select,उपयोगकर्ता हमेशा का चयन करना होगा,
-Check this if you want to force the user to select a series before saving. There will be no default if you check this.,यह जाँच लें कि आप उपयोगकर्ता बचत से पहले एक श्रृंखला का चयन करने के लिए मजबूर करना चाहते हैं. कोई डिफ़ॉल्ट हो सकता है अगर आप इस जाँच करेगा.,
 Update Series,अद्यतन श्रृंखला,
 Change the starting / current sequence number of an existing series.,एक मौजूदा श्रृंखला के शुरू / वर्तमान अनुक्रम संख्या बदलें.,
-Prefix,उपसर्ग,
-This is the number of the last created transaction with this prefix,यह इस उपसर्ग के साथ पिछले बनाई गई लेन - देन की संख्या,
-Update Series Number,अद्यतन सीरीज नंबर,
 Quotation Lost Reason,कोटेशन कारण खोया,
 A third party distributor / dealer / commission agent / affiliate / reseller who sells the companies products for a commission.,एक आयोग के लिए कंपनियों के उत्पादों को बेचता है एक तीसरे पक्ष जो वितरक / डीलर / कमीशन एजेंट / सहबद्ध / पुनर्विक्रेता।,
 Sales Partner Name,बिक्री भागीदार नाम,
@@ -7687,7 +7591,6 @@
 Warehouse wise Item Balance Age and Value,गोदाम के अनुसार आइटम संतुलन आयु और मूल्य,
 Work Order Stock Report,कार्य आदेश शेयर रिपोर्ट,
 Work Orders in Progress,प्रगति में कार्य आदेश,
-Validation Error,मान्यता त्रुटि,
 Automatically Process Deferred Accounting Entry,स्वचालित रूप से प्रक्रिया आस्थगित लेखांकन प्रविष्टि,
 Bank Clearance,बैंक क्लीयरेंस,
 Bank Clearance Detail,बैंक क्लियरेंस डिटेल,
@@ -7724,45 +7627,7 @@
 Therapy Plan: ,थेरेपी योजना:,
 Total Counts Targeted: ,कुल लक्षित संख्या:,
 Total Counts Completed: ,कुल गणना पूरी:,
-Andaman and Nicobar Islands,अंडमान व नोकोबार द्वीप समूह,
-Andhra Pradesh,आंध्र प्रदेश,
-Arunachal Pradesh,अरुणाचल प्रदेश,
-Assam,असम,
-Bihar,बिहार,
-Chandigarh,चंडीगढ़,
-Chhattisgarh,छत्तीसगढ़,
-Dadra and Nagar Haveli,दादरा और नगर हवेली,
-Daman and Diu,दमन और दीव,
-Delhi,दिल्ली,
-Goa,गोवा,
-Gujarat,गुजरात,
-Haryana,हरियाणा,
-Himachal Pradesh,हिमाचल प्रदेश,
-Jammu and Kashmir,जम्मू और कश्मीर,
-Jharkhand,झारखंड,
-Karnataka,कर्नाटक,
-Kerala,केरल,
-Lakshadweep Islands,लक्षद्वीप द्वीपसमूह,
-Madhya Pradesh,मध्य प्रदेश,
-Maharashtra,महाराष्ट्र,
-Manipur,मणिपुर,
-Meghalaya,मेघालय,
-Mizoram,मिजोरम,
-Nagaland,नगालैंड,
-Odisha,ओडिशा,
-Other Territory,अन्य क्षेत्र,
-Pondicherry,पांडिचेरी,
-Punjab,पंजाब,
-Rajasthan,राजस्थान Rajasthan,
-Sikkim,सिक्किम,
-Tamil Nadu,तमिलनाडु,
-Telangana,तेलंगाना,
-Tripura,त्रिपुरा,
-Uttar Pradesh,उत्तर प्रदेश,
-Uttarakhand,उत्तराखंड,
-West Bengal,पश्चिम बंगाल,
 Is Mandatory,अनिवार्य है,
-Published on,पर प्रकाशित,
 Service Received But Not Billed,"सेवा प्राप्त हुई, लेकिन बिल नहीं दिया गया",
 Deferred Accounting Settings,आस्थगित लेखा सेटिंग्स,
 Book Deferred Entries Based On,पुस्तक आस्थगित प्रविष्टियाँ आधारित,
@@ -8035,8 +7900,6 @@
 Worksheet Instructions,कार्यपत्रक निर्देश,
 Result Legend Print,परिणाम लेजेंड प्रिंट,
 Print Position,प्रिंट स्थिति,
-Bottom,तल,
-Top,ऊपर,
 Both,दोनों,
 Result Legend,परिणाम किंवदंती,
 Lab Tests,लैब टेस्ट,
@@ -8081,12 +7944,10 @@
 Approvers,approvers,
 The first Approver in the list will be set as the default Approver.,सूची में पहले अनुमोदन डिफ़ॉल्ट डिफ़ॉल्ट के रूप में सेट किया जाएगा।,
 Shift Request Approver,शिफ्ट रिक्वेस्ट अप्रूवर,
-PAN Number,पैन नंबर,
 Provident Fund Account,भविष्य निधि खाता,
 MICR Code,MICR कोड,
 Repay unclaimed amount from salary,वेतन से लावारिस राशि को चुकाएं,
 Deduction from salary,वेतन से कटौती,
-Expired Leaves,समय सीमा समाप्त,
 If this is not checked the loan by default will be considered as a Demand Loan,"यदि यह डिफ़ॉल्ट रूप से ऋण की जाँच नहीं है, तो इसे डिमांड लोन माना जाएगा",
 This account is used for booking loan repayments from the borrower and also disbursing loans to the borrower,इस खाते का उपयोग उधारकर्ता से ऋण चुकौती की बुकिंग के लिए किया जाता है और उधारकर्ता को ऋण का वितरण भी किया जाता है,
 This account is capital account which is used to allocate capital for loan disbursal account ,यह खाता पूंजी खाता है जिसका उपयोग ऋण वितरण खाते के लिए पूंजी आवंटित करने के लिए किया जाता है,
@@ -8844,3 +8705,41 @@
 Creating Purchase Order ...,क्रय आदेश बनाना ...,
 "Select a Supplier from the Default Suppliers of the items below. On selection, a Purchase Order will be made against items belonging to the selected Supplier only.","नीचे दी गई वस्तुओं के डिफ़ॉल्ट आपूर्तिकर्ता से एक आपूर्तिकर्ता का चयन करें। चयन पर, केवल चयनित आपूर्तिकर्ता से संबंधित वस्तुओं के खिलाफ एक खरीद ऑर्डर किया जाएगा।",
 Row #{}: You must select {} serial numbers for item {}.,पंक्ति # {}: आपको आइटम {} के लिए {} सीरियल नंबर का चयन करना होगा।,
+Add Comment,टिप्पणी जोड़ें,
+More...,अधिक...,
+Notes,नोट्स,
+Payment Gateway,भुगतान के लिए रास्ता,
+Payment Gateway Name,भुगतान गेटवे नाम,
+Payments,भुगतान,
+Plan Name,योजना का नाम,
+Portal,द्वार,
+Scan Barcode,स्कैन बारकोड,
+Some information is missing,कुछ जानकारी गायब है,
+Successful,सफल,
+Tools,उपकरण,
+Use Sandbox,उपयोग सैंडबॉक्स,
+Busy,व्यस्त,
+Completed By,द्वारा पूरा किया गया,
+Payment Failed,भुगतान असफल हुआ,
+Column {0},कॉलम {0},
+Field Mapping,फील्ड मैपिंग,
+Not Specified,निर्दिष्ट नहीं है,
+Update Type,अद्यतन प्रकार,
+Dr,डा,
+End Time,अंतिम समय,
+Fetching...,ला रहा है ...,
+"It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","ऐसा लगता है कि सर्वर की पट्टी विन्यास के साथ कोई समस्या है। विफलता के मामले में, राशि आपके खाते में वापस कर दी जाएगी।",
+Looks like someone sent you to an incomplete URL. Please ask them to look into it.,जैसे किसी ने एक अधूरी यूआरएल के लिए भेजा लग रहा है। उन्हें इस पर गौर करने के लिए कहें।,
+Master,मास्टर,
+Pay,वेतन,
+You can also copy-paste this link in your browser,आप भी इस लिंक को अपने ब्राउज़र में कॉपी-पेस्ट कर सकते है।,
+Verified By,द्वारा सत्यापित,
+Invalid naming series (. missing) for {0},{0} के लिए अमान्य नामकरण श्रृंखला (गुम है),
+Phone Number,फ़ोन नंबर,
+Account SID,खाता एसआईडी,
+Global Defaults,वैश्विक मूलभूत,
+Is Mandatory,अनिवार्य है,
+WhatsApp,WhatsApp,
+Make a call,कॉल करें,
+Approve,मंजूर,
+Reject,अस्वीकार,
diff --git a/erpnext/translations/hr.csv b/erpnext/translations/hr.csv
index 827ae2c..b44babc 100644
--- a/erpnext/translations/hr.csv
+++ b/erpnext/translations/hr.csv
@@ -113,7 +113,6 @@
 Add Items,Dodaj artikle,
 Add Leads,Dodaj vodi,
 Add Multiple Tasks,Dodaj više zadataka,
-Add Row,Dodaj Row,
 Add Sales Partners,Dodajte partnere za prodaju,
 Add Serial No,Dodaj serijski broj,
 Add Students,Dodaj studente,
@@ -211,9 +210,7 @@
 An error occurred during the update process,Došlo je do pogreške tijekom postupka ažuriranja,
 "An item exists with same name ({0}), please change the item group name or rename the item","Stavka postoji s istim imenom ( {0} ) , molimo promijenite ime stavku grupe ili preimenovati stavku",
 Analyst,Analitičar,
-Analytics,Analitika,
 Annual Billing: {0},Godišnji naplatu: {0},
-Anonymous,anoniman,
 Another Budget record '{0}' already exists against {1} '{2}' and account '{3}' for fiscal year {4},Još jedan proračunski zapis &#39;{0}&#39; već postoji za {1} &#39;{2}&#39; i račun &#39;{3}&#39; za fiskalnu godinu {4},
 Another Period Closing Entry {0} has been made after {1},Drugi period Zatvaranje Stupanje {0} je postignut nakon {1},
 Another Sales Person {0} exists with the same Employee id,Još jedna prodaja Osoba {0} postoji s istim ID zaposlenika,
@@ -283,14 +280,12 @@
 Attendance not submitted for {0} as {1} on leave.,Sudjelovanje nije poslano za {0} kao {1} na dopustu.,
 Attribute table is mandatory,Osobina stol je obavezno,
 Attribute {0} selected multiple times in Attributes Table,Osobina {0} izabrani više puta u Svojstva tablice,
-Author,Autor,
 Authorized Signatory,Ovlašteni potpisnik,
 Auto Material Requests Generated,Automatski zahtjev za materijalom odobren,
 Auto Repeat,Automatsko ponavljanje,
 Auto repeat document updated,Ažurira se automatski ponavljanje dokumenta,
 Automotive,Automobilska industrija,
 Available,Dostupno,
-Available Leaves,Dostupni lišće,
 Available Qty,Dostupno Količina,
 Available Selling,Dostupna prodaja,
 Available for use date is required,Dostupan je za datum upotrebe,
@@ -340,7 +335,6 @@
 Base URL,Osnovni URL,
 Based On,Na temelju,
 Based On Payment Terms,Na temelju uvjeta plaćanja,
-Basic,Osnovni,
 Batch,serija,
 Batch Entries,Ulazne serije,
 Batch ID is mandatory,ID serije obvezan je,
@@ -361,7 +355,6 @@
 Billable Hours,Sati naplate,
 Billed,naplaćeno,
 Billed Amount,Naplaćeni iznos,
-Billing,Naplata,
 Billing Address,Adresa za naplatu,
 Billing Address is same as Shipping Address,Adresa za naplatu jednaka je adresi za dostavu,
 Billing Amount,Naplata Iznos,
@@ -560,7 +553,6 @@
 Consumed Qty,Potrošeno Kol,
 Consumer Products,Consumer Products,
 Contact,Kontakt,
-Contact Details,Kontakt podaci,
 Contact Us,Kontaktirajte nas,
 Content,Sadržaj,
 Content Masters,Sadržaji,
@@ -715,7 +707,6 @@
 Date of Joining,Datum pristupa,
 Date of Joining must be greater than Date of Birth,Datum pristupa mora biti veći od datuma rođenja,
 Date of Transaction,Datum transakcije,
-Datetime,Datum i vrijeme,
 Day,Dan,
 Debit,Zaduženje,
 Debit ({0}),Debit ({0}),
@@ -874,7 +865,6 @@
 Employee cannot report to himself.,Zaposlenik se ne može prijaviti na sebe.,
 Employee {0} has already applied for {1} between {2} and {3} : ,Zaposlenik {0} već je podnio zahtjev za {1} između {2} i {3}:,
 Employee {0} of grade {1} have no default leave policy,Zaposlenik {0} razreda {1} nema zadanu politiku odlaska,
-Enable,omogućiti,
 Enable / disable currencies.,Omogućiti / onemogućiti valute .,
 Enabled,Omogućeno,
 "Enabling 'Use for Shopping Cart', as Shopping Cart is enabled and there should be at least one Tax Rule for Shopping Cart","Omogućavanje &#39;Koristi za košaricu&#39;, kao što Košarica je omogućena i tamo bi trebao biti barem jedan Porezna pravila za Košarica",
@@ -905,7 +895,6 @@
 Error: Not a valid id?,Pogreška: Nije valjana id?,
 Estimated Cost,Procjena cijene,
 "Even if there are multiple Pricing Rules with highest priority, then following internal priorities are applied:","Čak i ako postoji više Cijene pravila s najvišim prioritetom, onda sljedeći interni prioriteti primjenjuje se:",
-Event,Događaj,
 Exchange Gain/Loss,Razmjena dobit / gubitak,
 Exchange Rate Revaluation master.,Master master revalorizacije tečaja,
 Exchange Rate must be same as {0} {1} ({2}),Tečaj mora biti ista kao {0} {1} ({2}),
@@ -1032,7 +1021,6 @@
 From value must be less than to value in row {0},Od vrijednosti mora biti manje nego vrijednosti u redu {0},
 From {0} | {1} {2},Od {0} | {1} {2},
 Fulfillment,Ispunjenje,
-Full,puni,
 Full Name,Ime i prezime,
 Fully Depreciated,potpuno amortizirana,
 Furnitures and Fixtures,Namještaja i rasvjete,
@@ -1133,7 +1121,6 @@
 Hub Sync ID,ID sinkronizacije huba,
 Human Resource,Ljudski resursi,
 Human Resources,Ljudski resursi,
-IFSC Code,IFSC kod,
 IGST Amount,Iznos IGST,
 IP Address,IP adresa,
 ITC Available (whether in full op part),Dostupan ITC (bilo u cijelom op. Dijelu),
@@ -1185,7 +1172,6 @@
 Ineligible ITC,Neprihvatljiv ITC,
 Initiated,pokrenut,
 Inpatient Record,Popis bolesnika,
-Insert,Insert,
 Installation Note,Napomena instalacije,
 Installation Note {0} has already been submitted,Napomena instalacije {0} je već potvrđena,
 Installation date cannot be before delivery date for Item {0},Datum Instalacija ne može biti prije datuma isporuke za točke {0},
@@ -1197,7 +1183,6 @@
 Insurance Start date should be less than Insurance End date,Osiguranje Datum početka mora biti manja od osiguranja datum završetka,
 Integrated Tax,Integrirani porez,
 Inter-State Supplies,Međudržavne potrepštine,
-Interests,interesi,
 Internet Publishing,Internet izdavaštvo,
 Intra-State Supplies,Unutarnje države,
 Introduction,Uvod,
@@ -1316,7 +1301,6 @@
 Lab testing datetime cannot be before collection datetime,Datetime testiranja laboratorija ne može biti prije datetime prikupljanja,
 Label,Oznaka,
 Laboratory,Laboratorija,
-Language Name,Jezik Naziv,
 Large,veliki,
 Last Communication,Posljednja komunikacija,
 Last Communication Date,Posljednji datum komunikacije,
@@ -1347,8 +1331,6 @@
 Letter Heads for print templates.,Zaglavlja za ispis predložaka.,
 Level,Razina,
 Liability,Odgovornost,
-License,licenca,
-Limit,Ograničiti,
 Limit Crossed,Ograničenje Crossed,
 Link to Material Request,Veza na Zahtjev materijala,
 List of all share transactions,Popis svih transakcija dionica,
@@ -1359,7 +1341,6 @@
 Loans (Liabilities),Zajmovi (pasiva),
 Loans and Advances (Assets),Zajmovi i predujmovi (aktiva),
 Local,Lokalno,
-Log,Prijava,
 Logs for maintaining sms delivery status,Trupci za održavanje statusa isporuke sms,
 Lost,izgubljen,
 Lost Reasons,Izgubljeni razlozi,
@@ -1445,7 +1426,6 @@
 Medical Department,Medicinski odjel,
 Medical Record,Medicinski zapis,
 Medium,Srednji,
-Meeting,Sastanak,
 Member Activity,Aktivnost članova,
 Member ID,članska iskaznica,
 Member Name,Ime člana,
@@ -1495,7 +1475,6 @@
 Multiple Variants,Višestruke inačice,
 Multiple fiscal years exist for the date {0}. Please set company in Fiscal Year,Više fiskalne godine postoji za sada {0}. Molimo postavite tvrtka u fiskalnoj godini,
 Music,glazba,
-My Account,Moj Račun,
 Name error: {0},greška Ime: {0},
 Name of new Account. Note: Please don't create accounts for Customers and Suppliers,Naziv novog računa. Napomena: Molimo vas da ne stvaraju račune za kupce i dobavljače,
 Name or Email is mandatory,Ime ili e-mail je obavezno,
@@ -1538,7 +1517,6 @@
 New credit limit is less than current outstanding amount for the customer. Credit limit has to be atleast {0},Novi kreditni limit je manja od trenutne preostali iznos za kupca. Kreditni limit mora biti atleast {0},
 New task,Novi zadatak,
 New {0} pricing rules are created,Stvorena su nova {0} pravila o cijenama,
-Newsletters,Newsletteri,
 Newspaper Publishers,Novinski izdavači,
 Next,Sljedeći,
 Next Contact By cannot be same as the Lead Email Address,Sljedeća Kontakt Po ne može biti ista kao što je vodeći e-mail adresa,
@@ -1686,7 +1664,6 @@
 Other,Drugi,
 Other Reports,Ostala izvješća,
 "Other outward supplies(Nil rated,Exempted)","Ostale vanjske zalihe (ocjenjivano bez vrijednosti, izuzeće)",
-Others,Ostali,
 Out Qty,Od kol,
 Out Value,Iz vrijednost,
 Out of Order,Izvanredno,
@@ -1726,7 +1703,6 @@
 Party Type and Party is mandatory for {0} account,Vrsta stranke i stranka obvezni su za {0} račun,
 Party Type is mandatory,Tip stranka je obvezna,
 Party is mandatory,Stranka je obvezna,
-Password,Zaporka,
 Past Due Date,Prošli rok dospijeća,
 Patient,Pacijent,
 Patient Appointment,Imenovanje pacijenata,
@@ -1784,7 +1760,6 @@
 Pharmaceutical,Farmaceutski,
 Pharmaceuticals,Farmaceutske,
 Physician,Liječnik,
-Pincode,Poštanski broj,
 Place Of Supply (State/UT),Mjesto opskrbe (država / UT),
 Place Order,Naručiti,
 Plan Name,Naziv plana,
@@ -1896,7 +1871,6 @@
 Please select date,Odaberite datum,
 Please select item code,Odaberite Šifra,
 Please select month and year,Molimo odaberite mjesec i godinu,
-Please select prefix first,Odaberite prefiks prvi,
 Please select the Company,Odaberite tvrtku,
 Please select the Multiple Tier Program type for more than one collection rules.,Odaberite višestruki tip programa za više pravila za naplatu.,
 Please select the assessment group other than 'All Assessment Groups',Odaberite grupu za procjenu osim &quot;Sve grupe za procjenu&quot;,
@@ -1913,7 +1887,6 @@
 Please set Company filter blank if Group By is 'Company',Postavite prazan filtar Tvrtke ako je Skupna pošta &quot;Tvrtka&quot;,
 Please set Default Payroll Payable Account in Company {0},Molimo postavite zadanog Platne naplativo račun u Društvu {0},
 Please set Depreciation related Accounts in Asset Category {0} or Company {1},Molimo postavite Amortizacija se odnose računi u imovini Kategorija {0} ili Društvo {1},
-Please set Email Address,Molimo postavite adresu e-pošte,
 Please set GST Accounts in GST Settings,Postavite GST račune u GST postavkama,
 Please set Hotel Room Rate on {},Molimo postavite Hotel Room Rate na {},
 Please set Number of Depreciations Booked,Molimo postavite Broj deprecijaciju Rezervirano,
@@ -1936,7 +1909,6 @@
 Please set the Email ID for the Student to send the Payment Request,Postavite ID e-pošte za učenika da pošalje zahtjev za plaćanjem,
 Please set the Item Code first,Najprije postavite šifru stavke,
 Please set the Payment Schedule,Molimo postavite Raspored plaćanja,
-Please set the series to be used.,Postavite seriju koja će se koristiti.,
 Please set {0} for address {1},Postavite {0} za adresu {1},
 Please setup Students under Student Groups,Postavite učenike u studentske grupe,
 Please specify Company,Navedite tvrtke,
@@ -1953,7 +1925,6 @@
 Point-of-Sale,Prodajno mjesto,
 Point-of-Sale Profile,Point-of-prodaju Profil,
 Portal,Portal,
-Portal Settings,Postavke portala,
 Possible Supplier,Mogući dobavljač,
 Postal Expenses,Poštanski troškovi,
 Posting Date,Datum objave,
@@ -2152,12 +2123,10 @@
 Reference No is mandatory if you entered Reference Date,Reference Ne obvezno ako ušao referentnog datuma,
 Reference No.,Referentni broj,
 Reference Number,Referentni broj,
-Reference Owner,Referentni vlasnika,
 Reference Type,Referentna Tip,
 "Reference: {0}, Item Code: {1} and Customer: {2}","Referenca: {0}, šifra stavke: {1} i klijent: {2}",
 References,Reference,
 Refresh Token,Osvježi token,
-Region,Regija,
 Register,Registrirajte se,
 Rejected,Odbijen,
 Related,povezan,
@@ -2179,7 +2148,6 @@
 Replace BOM and update latest price in all BOMs,Zamijenite BOM i ažurirajte najnoviju cijenu u svim BOM-ovima,
 Replied,Odgovoreno,
 Report,Prijavi,
-Report Builder,Report Builder,
 Report Type,Prijavi Vid,
 Report Type is mandatory,Vrsta izvješća je obvezno,
 Reports,Izvješća,
@@ -2355,13 +2323,11 @@
 Same Company is entered more than once,Ista tvrtka je ušao više od jednom,
 Same item cannot be entered multiple times.,Isti predmet ne može se upisati više puta.,
 Same supplier has been entered multiple times,Isti dobavljač je unesen više puta,
-Sample,Uzorak,
 Sample Collection,Prikupljanje uzoraka,
 Sample quantity {0} cannot be more than received quantity {1},Uzorak {0} ne može biti veći od primljene količine {1},
 Sanctioned,kažnjeni,
 Sand,Pijesak,
 Saturday,Subota,
-Saved,Spremljeno,
 Saving {0},Spremanje {0},
 Scan Barcode,Skenirajte crtični kod,
 Schedule,Raspored,
@@ -2463,7 +2429,6 @@
 Series Updated,Serija ažurirana,
 Series Updated Successfully,Serija je uspješno ažurirana,
 Series is mandatory,Serija je obvezno,
-Series {0} already used in {1},Serija {0} se već koristi u {1},
 Service,usluga,
 Service Level Agreement,Ugovor o razini usluge,
 Service Level Agreement.,Ugovor o razini usluge.,
@@ -2479,7 +2444,6 @@
 Set Tax Rule for shopping cart,Postavite Porezni Pravilo za košaricu,
 Set as Closed,Postavi kao zatvoreno,
 Set as Completed,Postavite kao dovršeno,
-Set as Default,Postavi kao zadano,
 Set as Lost,Postavi kao Lost,
 Set as Open,Postavi kao Opena,
 Set default inventory account for perpetual inventory,Postavite zadani oglasni prostor za trajni oglasni prostor,
@@ -2511,7 +2475,6 @@
 Shareholder,dioničar,
 Ship To State,Brod u državu,
 Shipments,pošiljke,
-Shipping,Utovar,
 Shipping Address,Dostava Adresa,
 "Shipping Address does not have country, which is required for this Shipping Rule",Adresa za isporuku nema državu koja je potrebna za ovaj Pravilnik za isporuku,
 Shipping rule only applicable for Buying,Pravilo isporuke primjenjivo je samo za kupnju,
@@ -2564,7 +2527,6 @@
 Split Batch,Split Batch,
 Split Issue,Split Issue,
 Sports,sportovi,
-Standard,Standard,
 Standard Buying,Standardna kupnju,
 Standard Selling,Standardna prodaja,
 Standard contract terms for Sales or Purchase.,Standardni uvjeti ugovora za prodaju ili kupnju.,
@@ -2731,7 +2693,6 @@
 Terms and Conditions,Odredbe i uvjeti,
 Terms and Conditions Template,Uvjeti i odredbe - šprance,
 Territory,Teritorij,
-Test,Test,
 Thank you for your business!,Hvala vam na poslovanju!,
 The 'From Package No.' field must neither be empty nor it's value less than 1.,&#39;Iz paketa br.&#39; polje ne smije biti prazno niti vrijednost manja od 1.,
 The Brand,Brand,
@@ -2848,7 +2809,6 @@
 Total (Without Tax),Ukupno (bez poreza),
 Total Achieved,Ukupno Ostvareno,
 Total Actual,Ukupno Stvarni,
-Total Allocated Leaves,Ukupno dopuštena lišća,
 Total Amount,Ukupan iznos,
 Total Amount Credited,Ukupan iznos je odobren,
 Total Applicable Charges in Purchase Receipt Items table must be same as Total Taxes and Charges,Ukupno odgovarajuće naknade u potvrdi o kupnji stavke stolu mora biti ista kao i Total poreza i naknada,
@@ -2892,7 +2852,6 @@
 Total(Amt),Ukupno (AMT),
 Total(Qty),Ukupno (Kol),
 Traceability,sljedivost,
-Traceback,Traceback,
 Track Leads by Lead Source.,Prati vodio izvorom olova.,
 Transaction,Transakcija,
 Transaction Date,Transakcija Datum,
@@ -2930,7 +2889,6 @@
 UOM Conversion factor is required in row {0},Faktor UOM pretvorbe je potrebno u redu {0},
 UOM coversion factor required for UOM: {0} in Item: {1},UOM faktor coversion potrebna za UOM: {0} u točki: {1},
 URL,URL,
-Unable to find DocType {0},Nije moguće pronaći DocType {0},
 Unable to find exchange rate for {0} to {1} for key date {2}. Please create a Currency Exchange record manually,Nije moguće pronaći kurs za {0} do {1} za ključni datum {2}. Ručno stvorite zapis za mjenjačnicu,
 Unable to find score starting at {0}. You need to have standing scores covering 0 to 100,Nije moguće pronaći rezultat koji započinje na {0}. Morate imati postignute rezultate koji pokrivaju 0 do 100,
 Unable to find variable: ,Nije moguće pronaći varijablu:,
@@ -2960,7 +2918,6 @@
 Upload your letter head and logo. (you can edit them later).,Upload Vaše pismo glavu i logotip. (Možete ih uređivati kasnije).,
 Upper Income,Gornja Prihodi,
 Use Sandbox,Sandbox,
-Used Leaves,Koristi lišće,
 User,Korisnik,
 User ID,Korisnički ID,
 User ID not set for Employee {0},Korisnik ID nije postavljen za zaposlenika {0},
@@ -3051,7 +3008,6 @@
 Website Settings,Postavke web stranice,
 Wednesday,Srijeda,
 Week,Tjedan,
-Weekdays,Radnim danom,
 Weekly,Tjedni,
 "Weight is mentioned,\nPlease mention ""Weight UOM"" too","Težina se spomenuto, \n Molimo spomenuti ""težinu UOM"" previše",
 Welcome email sent,Poslao Dobrodošli e-mail,
@@ -3072,7 +3028,6 @@
 Work Order {0} must be submitted,Mora se poslati radni nalog {0},
 Work Orders Created: {0},Kreirani radni nalozi: {0},
 Work-in-Progress Warehouse is required before Submit,Rad u tijeku Warehouse je potrebno prije Podnijeti,
-Workflow,Hodogram,
 Working,Radni,
 Working Hours,Radnih sati,
 Workstation,Radna stanica,
@@ -3102,7 +3057,6 @@
 You need to be a user other than Administrator with System Manager and Item Manager roles to register on Marketplace.,Morate biti korisnik koji nije administrator s ulogama upravitelja sustava i upravitelja stavki da biste se registrirali na tržištu.,
 You need to be a user with System Manager and Item Manager roles to add users to Marketplace.,Morate biti korisnik s ulogama upravitelja sustava i upravitelja stavki kako biste korisnike dodali na tržište.,
 You need to be a user with System Manager and Item Manager roles to register on Marketplace.,Morate biti korisnik s ulogama upravitelja sustava i upravitelja stavki da biste se registrirali na tržištu.,
-You need to be logged in to access this page,Morate biti prijavljeni da biste pristupili ovoj stranici,
 You need to enable Shopping Cart,Morate omogućiti košaricu,
 You will lose records of previously generated invoices. Are you sure you want to restart this subscription?,Izgubit ćete evidenciju prethodno generiranih faktura. Jeste li sigurni da želite ponovno pokrenuti ovu pretplatu?,
 Your Organization,Vaša organizacija,
@@ -3218,7 +3172,6 @@
 Assigned To,Dodijeljeno,
 Chat,Razgovor,
 Completed By,Završio,
-County,Okrug,
 Day of Week,Dan u tjednu,
 "Dear System Manager,","Dragi System Manager,",
 Default Value,Zadana vrijednost,
@@ -3229,31 +3182,21 @@
 Fieldtype,Fieldtype,
 Help Articles,Članci pomoći,
 ID,ID,
-Images,Slike,
 Import,Uvoz,
 Language,Jezik,
 Likes,Voli,
 Merge with existing,Spoji sa postojećim,
-Office,Ured,
 Orientation,Orijentacija,
 Parent,Nadređen,
-Passive,Pasiva,
 Payment Failed,Plaćanje nije uspjelo,
-Permanent,trajan,
 Personal,Osobno,
-Plant,Biljka,
 Post,poslije,
-Postal,Poštanski,
 Postal Code,poštanski broj,
-Previous,prijašnji,
 Provider,davatelj,
 Read Only,Read Only,
 Recipient,Primalac,
 Reviews,Recenzije,
 Sender,Pošiljalac,
-Shop,Dućan,
-Subsidiary,Podružnica,
-There is some problem with the file url: {0},Postoji neki problem s datotečnog URL: {0},
 There were errors while sending email. Please try again.,Bilo je grešaka tijekom slanja e-pošte. Molimo pokušajte ponovno .,
 Values Changed,Vrijednosti promjene,
 or,ili,
@@ -3280,19 +3223,16 @@
 Quality Feedback Template,Predložak povratne informacije o kvaliteti,
 Rules for applying different promotional schemes.,Pravila za primjenu različitih promotivnih shema.,
 Show {0},Prikaži {0},
-"Special Characters except '-', '#', '.', '/', '{{' and '}}' not allowed in naming series {0}","Posebni znakovi osim &quot;-&quot;, &quot;#&quot;, &quot;.&quot;, &quot;/&quot;, &quot;{{&quot; I &quot;}}&quot; nisu dopušteni u imenovanju serija {0}",
 Target Details,Pojedinosti cilja,
 {0} already has a Parent Procedure {1}.,{0} već ima roditeljski postupak {1}.,
 API,API,
 Annual,godišnji,
 Change,Promjena,
 Contact Email,Kontakt email,
-Export Type,Vrsta izvoza,
 From Date,Od datuma,
 Group By,Grupiranje prema,
 Invalid URL,Neispravan URL,
 Landscape,pejzaž,
-Last Sync On,Posljednja sinkronizacija uključena,
 Naming Series,Imenovanje serije,
 No data to export,Nema podataka za izvoz,
 Portrait,Portret,
@@ -3302,7 +3242,6 @@
 Show Document,Prikaži dokument,
 Show Traceback,Prikaži Traceback,
 Video,Video,
-Webhook Secret,Webhook Secret,
 % Of Grand Total,% Od ukupnog broja,
 <b>Company</b> is a mandatory filter.,<b>Tvrtka</b> je obvezan filtar.,
 <b>From Date</b> is a mandatory filter.,<b>From Date</b> je obavezan filtar.,
@@ -3358,7 +3297,6 @@
 BOM Comparison Tool,Alat za usporedbu BOM-a,
 BOM recursion: {0} cannot be child of {1},BOM rekurzija: {0} ne može biti dijete od {1},
 BOM recursion: {0} cannot be parent or child of {1},BOM rekurzija: {0} ne može biti roditelj ili dijete od {1},
-Back to Home,Povratak kući,
 Back to Messages,Natrag na poruke,
 Bank Data mapper doesn't exist,Karti za bankovne podatke ne postoje,
 Bank Details,Bankovni detalji,
@@ -3420,7 +3358,6 @@
 Currency,Valuta,
 Current Status,Trenutni status,
 Customer PO,Kupci PO,
-Customize,Prilagodba,
 Daily,Svakodnevno,
 Date,Datum,
 Date of Birth cannot be greater than Joining Date.,Datum rođenja ne može biti veći od datuma pridruživanja.,
@@ -3454,7 +3391,6 @@
 ERPNext could not find any matching payment entry,ERPNext nije mogao pronaći nijedan odgovarajući unos za plaćanje,
 Earliest Age,Najranije doba,
 Edit Details,Uredi pojedinosti,
-Edit Profile,Uredi profil,
 Either GST Transporter ID or Vehicle No is required if Mode of Transport is Road,"Ako je način prijevoza cestovni, nije potreban ili GST Transporter ID ili vozilo",
 Email,E-mail,
 Email Campaigns,Kampanje e-pošte,
@@ -3482,7 +3418,6 @@
 Fetch Items from Warehouse,Dohvaćanje predmeta iz skladišta,
 Fetching...,Preuzimanje u tijeku ...,
 Field,Polje,
-File Manager,Upravitelj datoteka,
 Filters,Filteri,
 Finding linked payments,Pronalaženje povezanih plaćanja,
 Fleet Management,Mornarički menađer,
@@ -3521,7 +3456,6 @@
 Incorrect Warehouse,Pogrešno skladište,
 Invalid Barcode. There is no Item attached to this barcode.,Nevažeći barkod. Nijedna stavka nije priložena ovom barkodu.,
 Invalid credentials,Nevažeće vjerodajnice,
-Invite as User,Pozovi kao korisnik,
 Issue Priority.,Prioritet pitanja.,
 Issue Type.,Vrsta izdanja,
 "It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","Čini se da postoji problem s konfiguracijom trake poslužitelja. U slučaju neuspjeha, iznos će biti vraćen na vaš račun.",
@@ -3564,7 +3498,6 @@
 New Invoice,Nova faktura,
 New Payment,Novo plaćanje,
 New release date should be in the future,Novi datum izlaska trebao bi biti u budućnosti,
-Newsletter,Bilten,
 No Account matched these filters: {},Nijedan račun ne odgovara tim filterima: {},
 No communication found.,Nije pronađena komunikacija.,
 No correct answer is set for {0},Nije postavljen ispravan odgovor za {0},
@@ -3640,7 +3573,6 @@
 Please setup a default bank account for company {0},Postavite zadani bankovni račun za tvrtku {0},
 Please specify,Navedite,
 Please specify a {0},Navedite {0},lead
-Printing,Tiskanje,
 Priority,Prioritet,
 Priority has been changed to {0}.,Prioritet je promijenjen u {0}.,
 Priority {0} has been repeated.,Prioritet {0} je ponovljen.,
@@ -3649,7 +3581,6 @@
 Project,Projekt,
 Provide the academic year and set the starting and ending date.,Navedite akademsku godinu i postavite datum početka i završetka.,
 Public token is missing for this bank,Javni token nedostaje za ovu banku,
-Publish,Objaviti,
 Publish 1 Item,Objavite 1 predmet,
 Publish Items,Objavite stavke,
 Publish More Items,Objavite još predmeta,
@@ -3677,7 +3608,6 @@
 Reconciled,pomiren,
 Recruitment,regrutacija,
 Red,Crvena,
-Refreshing,Osvježavajući,
 Release date must be in the future,Datum izlaska mora biti u budućnosti,
 Relieving Date must be greater than or equal to Date of Joining,Datum oslobađanja mora biti veći ili jednak datumu pridruživanja,
 Rename,Preimenuj,
@@ -3721,7 +3651,6 @@
 Search for a payment,Traži plaćanje,
 Search for anything ...,Traži bilo što ...,
 Search results for,Rezultati pretrage za,
-Select All,Odaberite sve,
 Select Difference Account,Odaberite račun razlike,
 Select a Default Priority.,Odaberite zadani prioritet.,
 Select a company,Odaberite tvrtku,
@@ -3740,11 +3669,9 @@
 Service Level Agreement has been changed to {0}.,Ugovor o razini usluge promijenjen je u {0}.,
 Service Level Agreement was reset.,Ugovor o razini usluge vraćen je na zadano.,
 Service Level Agreement with Entity Type {0} and Entity {1} already exists.,Ugovor o razini usluge s tipom entiteta {0} i entitetom {1} već postoji.,
-Set,set,
 Set Meta Tags,Postavljanje metaoznaka,
 Set {0} in company {1},Postavite {0} u tvrtki {1},
 Setup,Postavke,
-Setup Wizard,Čarobnjak za postavljanje,
 Shift Management,Upravljanje pomakom,
 Show Future Payments,Prikaži buduće isplate,
 Show Linked Delivery Notes,Prikaži povezane bilješke o isporuci,
@@ -3815,7 +3742,6 @@
 Unreconciled,nesaglašen,
 Unsupported GST Category for E-Way Bill JSON generation,Nepodržana GST kategorija za e-Way Bill JSON generacije,
 Update,Ažuriraj,
-Update Details,Ažuriraj pojedinosti,
 Update Taxes for Items,Ažurirajte poreze na stavke,
 "Upload a bank statement, link or reconcile a bank account","Prenesite bankovni izvod, povežite ili usklađujete bankovni račun",
 Upload a statement,Prenesite izjavu,
@@ -3839,7 +3765,6 @@
 XML Files Processed,Obrađene su XML datoteke,
 Year,Godina,
 Yearly,Godišnji,
-You,Vi,
 You are not allowed to enroll for this course,Nije vam dopušteno upisati se na ovaj tečaj,
 You are not enrolled in program {0},Niste upisani u program {0},
 You can Feature upto 8 items.,Možete predstaviti do 8 predmeta.,
@@ -3856,7 +3781,6 @@
 e-Way Bill already exists for this document,Za ovaj dokument već postoji e-Way Bill,
 woocommerce - {0},woocommerce - {0},
 {0} Coupon used are {1}. Allowed quantity is exhausted,{0} Kuponi se koriste {1}. Dozvoljena količina se iscrpljuje,
-{0} Name,{0} Name,
 {0} Operations: {1},{0} Operacije: {1},
 {0} bank transaction(s) created,{0} stvorene bankovne transakcije,
 {0} bank transaction(s) created and {1} errors,{0} stvorene bankovne transakcije i {1} pogreške,
@@ -3875,17 +3799,13 @@
 Total Income,Ukupni prihod,
 Total Income This Year,Ukupni prihod u ovoj godini,
 Barcode,Barkod,
-Bold,odvažan,
-Center,Centar,
 Clear,Čisto,
-Comment,Komentar,
 Comments,Komentari,
 DocType,DOCTYPE,
 Download,preuzimanje datoteka,
 Left,Lijevo,
 Link,Veza,
 New,Novi,
-Not Found,Nije pronađeno,
 Print,otisak,
 Reference Name,Naziv poveznice,
 Refresh,Osvježi stranicu,
@@ -3908,7 +3828,6 @@
 Email Id,E-mail ID,
 No,Br,
 Reference Doctype,Referentna DOCTYPEhtml,
-User Id,ID korisnika,
 Yes,Da,
 Actual ,stvaran,
 Add to cart,Dodaj u košaricu,
@@ -4304,7 +4223,6 @@
 e.g Adjustments for:,npr. prilagodbe za:,
 Section Subtotal,Podskupina odjeljka,
 Section Footer,Podnožje podatka,
-Position,Položaj,
 Cash Flow Mapping,Mapiranje novčanog toka,
 Select Maximum Of 1,Odaberite Maksimalno od 1,
 Is Finance Cost,Je li trošak financiranja,
@@ -4936,7 +4854,6 @@
 Previous Business Day,Prethodni radni dan,
 Next Business Day,Sljedeći radni dan,
 Urgent,Hitan,
-Crop,Usjev,
 Crop Name,Naziv usjeva,
 Scientific Name,Znanstveno ime,
 "You can define all the tasks which need to carried out for this crop here. The day field is used to mention the day on which the task needs to be carried out, 1 being the 1st day, etc.. ","Ovdje možete definirati sve zadatke koji su potrebni za ovaj usjev. Dnevno polje se koristi za spominjanje dana kada se zadatak treba obaviti, 1 je 1. dan itd.",
@@ -5441,7 +5358,6 @@
 To TIme,Za vrijeme,
 Course End Date,Naravno Datum završetka,
 Course Topic,Tema predmeta,
-Topic,Tema,
 Topic Name,tema Naziv,
 Education Settings,Postavke za obrazovanje,
 Current Academic Year,Tekuća akademska godina,
@@ -5516,7 +5432,6 @@
 Check this if the Student is residing at the Institute's Hostel.,Provjerite je li student boravio u Hostelu Instituta.,
 Walking,Hodanje,
 Institute's Bus,Autobus instituta,
-Public Transport,Javni prijevoz,
 Self-Driving Vehicle,Vozila samostojećih,
 Pick/Drop by Guardian,Pick / Drop od strane Guardian,
 Enrolled courses,Upisani tečajevi,
@@ -5697,7 +5612,6 @@
 Default Cost Center,Zadana troškovnih centara,
 Undeposited Funds Account,Neraspoređeni račun sredstava,
 Shopify Log,Zapisnik trgovine,
-Request Data,Zatražite podatke,
 Shopify Settings,Postavke trgovine,
 status html,status html,
 Enable Shopify,Omogući Shopify,
@@ -5817,7 +5731,6 @@
 Exercise Instructions,Upute za vježbu,
 Exercise Video,Video za vježbu,
 Exercise Steps,Koraci vježbanja,
-Steps,Koraci,
 Steps Table,Tablica koraka,
 Exercise Type Step,Vrsta vježbe Korak,
 Max number of visit,Maksimalni broj posjeta,
@@ -6001,7 +5914,6 @@
 Patient Encounter Symptom,Simptom susreta s pacijentom,
 HLC-PMR-.YYYY.-,FHP-PMR-.YYYY.-,
 Attach Medical Record,Priložite medicinsku evidenciju,
-Reference DocType,Referentni DocType,
 Spouse,Suprug,
 Family,Obitelj,
 Schedule Details,Pojedinosti rasporeda,
@@ -6983,16 +6895,8 @@
 HTML / Banner that will show on the top of product list.,HTML / baner koji će se prikazivati na vrhu liste proizvoda.,
 Set prefix for numbering series on your transactions,Postavite prefiks za numeriranje niza na svoje transakcije,
 Setup Series,Postavljanje Serija,
-Select Transaction,Odaberite transakciju,
-Help HTML,HTML pomoć,
-Series List for this Transaction,Serija Popis za ovu transakciju,
-User must always select,Korisničko uvijek mora odabrati,
-Check this if you want to force the user to select a series before saving. There will be no default if you check this.,Označite ovo ako želite prisiliti korisniku odabir seriju prije spremanja. Tu će biti zadana ako to provjerili.,
 Update Series,Update serija,
 Change the starting / current sequence number of an existing series.,Promjena polaznu / tekući redni broj postojeće serije.,
-Prefix,Prefiks,
-This is the number of the last created transaction with this prefix,To je broj zadnjeg stvorio transakcije s ovim prefiksom,
-Update Series Number,Update serije Broj,
 Quotation Lost Reason,Razlog nerealizirane ponude,
 A third party distributor / dealer / commission agent / affiliate / reseller who sells the companies products for a commission.,Vanjski distributer / trgovac / trgovački zastupnik / suradnik / prodavač koji prodaje proizvode tvrtke za proviziju.,
 Sales Partner Name,Naziv prodajnog partnera,
@@ -7687,7 +7591,6 @@
 Warehouse wise Item Balance Age and Value,Skladište mudar Stavka Stanje Dob i vrijednost,
 Work Order Stock Report,Izvješće o stanju na radnom mjestu,
 Work Orders in Progress,Radni nalozi u tijeku,
-Validation Error,Pogreška provjere valjanosti,
 Automatically Process Deferred Accounting Entry,Automatski obradi odgođeni knjigovodstveni unos,
 Bank Clearance,Potvrda banke,
 Bank Clearance Detail,Pojedinosti o odobrenju banke,
@@ -7724,45 +7627,7 @@
 Therapy Plan: ,Plan terapije:,
 Total Counts Targeted: ,Ukupno ciljano brojanje:,
 Total Counts Completed: ,Ukupno izvršeno brojanje:,
-Andaman and Nicobar Islands,Otoci Andaman i Nicobar,
-Andhra Pradesh,Andhra Pradesh,
-Arunachal Pradesh,Arunachal Pradesh,
-Assam,Assam,
-Bihar,Bihar,
-Chandigarh,Chandigarh,
-Chhattisgarh,Chhattisgarh,
-Dadra and Nagar Haveli,Dadra i Nagar Haveli,
-Daman and Diu,Daman i Diu,
-Delhi,Delhi,
-Goa,Goa,
-Gujarat,Gudžarat,
-Haryana,Haryana,
-Himachal Pradesh,Himachal Pradesh,
-Jammu and Kashmir,Džamu i Kašmir,
-Jharkhand,Jharkhand,
-Karnataka,Karnataka,
-Kerala,Kerala,
-Lakshadweep Islands,Otoci Lakshadweep,
-Madhya Pradesh,Madhya Pradesh,
-Maharashtra,Maharaštra,
-Manipur,Manipur,
-Meghalaya,Meghalaya,
-Mizoram,Mizoram,
-Nagaland,Nagaland,
-Odisha,Odisha,
-Other Territory,Ostali teritorij,
-Pondicherry,Pondicherry,
-Punjab,Pandžab,
-Rajasthan,Rajasthan,
-Sikkim,Sikkim,
-Tamil Nadu,Tamil Nadu,
-Telangana,Telangana,
-Tripura,Tripura,
-Uttar Pradesh,Uttar Pradesh,
-Uttarakhand,Uttarakhand,
-West Bengal,Zapadni Bengal,
 Is Mandatory,Je obavezno,
-Published on,Objavljeno dana,
 Service Received But Not Billed,"Usluga primljena, ali ne i naplaćena",
 Deferred Accounting Settings,Postavke odgođenog računovodstva,
 Book Deferred Entries Based On,Rezervirajte unose na osnovi,
@@ -8035,8 +7900,6 @@
 Worksheet Instructions,Upute za radni list,
 Result Legend Print,Rezultat Legenda Ispis,
 Print Position,Položaj ispisa,
-Bottom,Dno,
-Top,Vrh,
 Both,Oba,
 Result Legend,Legenda rezultata,
 Lab Tests,Laboratorijski testovi,
@@ -8081,12 +7944,10 @@
 Approvers,Odobrivači,
 The first Approver in the list will be set as the default Approver.,Prvi odobravatelj s popisa postavit će se kao zadani odobravatelj.,
 Shift Request Approver,Odobritelj zahtjeva za smjenom,
-PAN Number,PAN broj,
 Provident Fund Account,Račun osiguravajućeg fonda,
 MICR Code,MICR kod,
 Repay unclaimed amount from salary,Otplatite neiskorišteni iznos iz plaće,
 Deduction from salary,Odbitak od plaće,
-Expired Leaves,Isteklo lišće,
 If this is not checked the loan by default will be considered as a Demand Loan,"Ako se ovo ne potvrdi, zajam će se prema zadanim postavkama smatrati zajmom na zahtjev",
 This account is used for booking loan repayments from the borrower and also disbursing loans to the borrower,Ovaj se račun koristi za rezerviranje otplate zajma od zajmoprimca i za isplatu zajmova zajmoprimcu,
 This account is capital account which is used to allocate capital for loan disbursal account ,Ovaj račun je račun kapitala koji se koristi za raspodjelu kapitala za račun izdvajanja zajma,
@@ -8844,3 +8705,41 @@
 Creating Purchase Order ...,Izrada narudžbenice ...,
 "Select a Supplier from the Default Suppliers of the items below. On selection, a Purchase Order will be made against items belonging to the selected Supplier only.","Odaberite dobavljača od zadanih dobavljača dolje navedenih stavki. Nakon odabira, narudžbenica će se izvršiti samo za proizvode koji pripadaju odabranom dobavljaču.",
 Row #{}: You must select {} serial numbers for item {}.,Redak {{}: Morate odabrati {} serijske brojeve za stavku {}.,
+Add Comment,Dodaj komentar,
+More...,Više...,
+Notes,Zabilješke,
+Payment Gateway,Payment Gateway,
+Payment Gateway Name,Ime platnog prolaza,
+Payments,Plaćanja,
+Plan Name,Naziv plana,
+Portal,Portal,
+Scan Barcode,Skenirajte crtični kod,
+Some information is missing,Neki podaci nedostaju,
+Successful,uspješan,
+Tools,Alati,
+Use Sandbox,Sandbox,
+Busy,Zaposlen,
+Completed By,Završio,
+Payment Failed,Plaćanje nije uspjelo,
+Column {0},Stupac {0},
+Field Mapping,Kartiranje polja,
+Not Specified,Nije specificirano,
+Update Type,Vrsta ažuriranja,
+Dr,Doktor,
+End Time,Kraj vremena,
+Fetching...,Preuzimanje u tijeku ...,
+"It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","Čini se da postoji problem s konfiguracijom trake poslužitelja. U slučaju neuspjeha, iznos će biti vraćen na vaš račun.",
+Looks like someone sent you to an incomplete URL. Please ask them to look into it.,Izgleda da ti je netko poslao nepotpune URL. Zamolite ih gledati u nju.,
+Master,Master,
+Pay,Platiti,
+You can also copy-paste this link in your browser,Također možete kopirati ovaj link u Vaš preglednik,
+Verified By,Ovjeren od strane,
+Invalid naming series (. missing) for {0},Nevažeća serija imenovanja (. Nedostaje) za {0},
+Phone Number,Broj telefona,
+Account SID,SID računa,
+Global Defaults,Globalne zadane postavke,
+Is Mandatory,Je obavezno,
+WhatsApp,Što ima,
+Make a call,Uputi poziv,
+Approve,Odobriti,
+Reject,Odbiti,
diff --git a/erpnext/translations/hu.csv b/erpnext/translations/hu.csv
index e68b56f..4ea5b9a 100644
--- a/erpnext/translations/hu.csv
+++ b/erpnext/translations/hu.csv
@@ -113,7 +113,6 @@
 Add Items,Tételek hozzáadása,
 Add Leads,Lehetőségek hozzáadása,
 Add Multiple Tasks,Több feladat hozzáadása,
-Add Row,Sor hozzáadás,
 Add Sales Partners,Értékesítési partnerek hozzáadása,
 Add Serial No,Széria szám hozzáadása,
 Add Students,Add diákok,
@@ -211,9 +210,7 @@
 An error occurred during the update process,Hiba történt a frissítési folyamat során,
 "An item exists with same name ({0}), please change the item group name or rename the item","Egy tétel létezik azonos névvel ({0}), kérjük, változtassa meg a tétel csoport nevét, vagy nevezze át a tételt",
 Analyst,Elemző,
-Analytics,Elemzés,
 Annual Billing: {0},Éves számlázás: {0},
-Anonymous,Névtelen,
 Another Budget record '{0}' already exists against {1} '{2}' and account '{3}' for fiscal year {4},Másik költségvetési főkönyvi belyegyzés '{0}' már létezik ehhez {1} '{2}' és ezen a folyószámlán '{3}' erre a pénzügyi évre {4},
 Another Period Closing Entry {0} has been made after {1},Egy újabb Időszak záró bejegyzés {0} létre lett hozva ez után: {1},
 Another Sales Person {0} exists with the same Employee id,Egy másik Értékesítő személy {0} létezik a  azonos alkalmazotti azonosító Id-vel,
@@ -283,14 +280,12 @@
 Attendance not submitted for {0} as {1} on leave.,"Részvételt nem jelölte {0} , mert {1} -en távolléten volt.",
 Attribute table is mandatory,Jellemzők tábla kötelező,
 Attribute {0} selected multiple times in Attributes Table,{0} jellemzők többször kiválasztásra kerültek a jellemzők táblázatban,
-Author,Szerző,
 Authorized Signatory,Hitelesített aláírás,
 Auto Material Requests Generated,Auto Anyagigénylés létrehozott,
 Auto Repeat,Automatikus ismétlés,
 Auto repeat document updated,Az automatikus ismétlődő dokumentum frissítve,
 Automotive,Autóipar,
 Available,Elérhető,
-Available Leaves,Lehetséges távollétek,
 Available Qty,Elérhető Menny.,
 Available Selling,Elérhető értékesítés,
 Available for use date is required,Rendelkezésre állási dátum szükséges,
@@ -340,7 +335,6 @@
 Base URL,Alapértelmezett URL,
 Based On,Alapuló,
 Based On Payment Terms,Fizetési feltételek alapján,
-Basic,Alapvető,
 Batch,Köteg,
 Batch Entries,Kötegelt tételek,
 Batch ID is mandatory,Kötegazonosító kötelező,
@@ -361,7 +355,6 @@
 Billable Hours,Számlázható órák,
 Billed,Számlázott,
 Billed Amount,Számlázott összeg,
-Billing,Számlázás,
 Billing Address,számlázási cím,
 Billing Address is same as Shipping Address,A számlázási cím megegyezik a szállítási címmel,
 Billing Amount,Számlaérték,
@@ -560,7 +553,6 @@
 Consumed Qty,Fogyasztott Menny,
 Consumer Products,Vásárlói termékek,
 Contact,Kapcsolat,
-Contact Details,Kapcsolattartó részletei,
 Contact Us,Lépjen kapcsolatba velünk,
 Content,Tartalom,
 Content Masters,Tartalom Mesterek,
@@ -715,7 +707,6 @@
 Date of Joining,Csatlakozás dátuma,
 Date of Joining must be greater than Date of Birth,A csatlakozás dátumának nagyobbnak kell lennie a születési dátumnál,
 Date of Transaction,A tranzakció dátuma,
-Datetime,Dátum,
 Day,Nap,
 Debit,tartozás,
 Debit ({0}),Tartozás ({0}),
@@ -874,7 +865,6 @@
 Employee cannot report to himself.,Alkalmazott nem jelent magának.,
 Employee {0} has already applied for {1} between {2} and {3} : ,A (z) {0} alkalmazott már {2} és {3} között kérte a következőket {1}:,
 Employee {0} of grade {1} have no default leave policy,Az {1} besorolási fokozat {0} alkalmazottjának nincs alapértelmezett szabadságpolitikája,
-Enable,Engedélyezve,
 Enable / disable currencies.,Pénznemek engedélyezése / tiltása,
 Enabled,Engedélyezve,
 "Enabling 'Use for Shopping Cart', as Shopping Cart is enabled and there should be at least one Tax Rule for Shopping Cart","A 'Kosár használata' engedélyezése, mint kosár bekapcsolása, mely mellett ott kell lennie legalább egy adó szabálynak a Kosárra vonatkozólag",
@@ -905,7 +895,6 @@
 Error: Not a valid id?,Hiba: Érvénytelen id azonosító?,
 Estimated Cost,Becsült költség,
 "Even if there are multiple Pricing Rules with highest priority, then following internal priorities are applied:","Még ha több árképzési szabály is van kiemelve, akkor a következő belső prioritások kerülnek alkalmazásra:",
-Event,Esemény,
 Exchange Gain/Loss,Árfolyamnyereség / veszteség,
 Exchange Rate Revaluation master.,Árfolyam-átértékelési mester.,
 Exchange Rate must be same as {0} {1} ({2}),Az Átváltási aránynak ugyanannak kell lennie mint {0} {1} ({2}),
@@ -1032,7 +1021,6 @@
 From value must be less than to value in row {0},"Űrlap értéke kisebb legyen, mint az érték ebben a sorban {0}",
 From {0} | {1} {2},Feladó: {0} | {1} {2},
 Fulfillment,Teljesítés,
-Full,Tele,
 Full Name,Teljes név,
 Fully Depreciated,Teljesen amortizálódott,
 Furnitures and Fixtures,Bútorok és világítótestek,
@@ -1133,7 +1121,6 @@
 Hub Sync ID,Hub szinkronizálási azonosító ID,
 Human Resource,Emberi Erőforrás HR,
 Human Resources,Emberi erőforrások HR,
-IFSC Code,IFSC kód,
 IGST Amount,IGST összeg,
 IP Address,IP-cím,
 ITC Available (whether in full op part),ITC elérhető (teljes opcióban),
@@ -1185,7 +1172,6 @@
 Ineligible ITC,Nem támogatható ITC,
 Initiated,kezdeményezett,
 Inpatient Record,Betegkönyv,
-Insert,Beszúr,
 Installation Note,Telepítési feljegyzés,
 Installation Note {0} has already been submitted,Telepítési feljegyzés {0} már benyújtott,
 Installation date cannot be before delivery date for Item {0},"A telepítés időpontja nem lehet korábbi, mint a szállítási határidő erre a Tételre: {0}",
@@ -1197,7 +1183,6 @@
 Insurance Start date should be less than Insurance End date,"Biztosítás kezdeti dátumának kisebbnek kell lennie, mint a biztosítás befejezés dátuma",
 Integrated Tax,Integrált adó,
 Inter-State Supplies,Állatok közötti ellátás,
-Interests,Érdekek,
 Internet Publishing,Internetes közzététel,
 Intra-State Supplies,Államon belüli készletek,
 Introduction,Bevezetés,
@@ -1316,7 +1301,6 @@
 Lab testing datetime cannot be before collection datetime,A laboratóriumi tesztidő  dátuma nem lehet a gyűjtési adatidő dátuma előtti,
 Label,Felirat,
 Laboratory,Laboratórium,
-Language Name,Nyelv neve,
 Large,Nagy,
 Last Communication,Utolsó kommunikáció,
 Last Communication Date,Utolsó kommunikáció dátuma,
@@ -1347,8 +1331,6 @@
 Letter Heads for print templates.,Levél fejlécek a nyomtatási sablonokhoz.,
 Level,Szint,
 Liability,Kötelezettség,
-License,Licenc,
-Limit,Korlátozás,
 Limit Crossed,Határérték átlépve,
 Link to Material Request,Anyag igényhez társít,
 List of all share transactions,Az összes megosztott tranzakciók listája,
@@ -1359,7 +1341,6 @@
 Loans (Liabilities),Hitelek (kötelezettségek),
 Loans and Advances (Assets),A hitelek és előlegek (Tárgyi eszközök),
 Local,Helyi,
-Log,Napló,
 Logs for maintaining sms delivery status,Napló az sms küldési állapot figyelésére,
 Lost,Elveszett,
 Lost Reasons,Elveszett okok,
@@ -1445,7 +1426,6 @@
 Medical Department,Orvosi osztály,
 Medical Record,Orvosi karton,
 Medium,Közepes,
-Meeting,Találkozó,
 Member Activity,Tag tevékenység,
 Member ID,tag-azonosító,
 Member Name,Tag neve,
@@ -1495,7 +1475,6 @@
 Multiple Variants,Több változat,
 Multiple fiscal years exist for the date {0}. Please set company in Fiscal Year,"Több pénzügyi éve létezik a dátum: {0}. Kérjük, állítsa be a céget a pénzügyi évben",
 Music,Zene,
-My Account,Fiókom,
 Name error: {0},Név hiba: {0},
 Name of new Account. Note: Please don't create accounts for Customers and Suppliers,"Új fiók  neve. Megjegyzés: Kérjük, ne hozzon létre Vevő és Beszállítói fiókokat.",
 Name or Email is mandatory,Név vagy e-mail kötelező,
@@ -1538,7 +1517,6 @@
 New credit limit is less than current outstanding amount for the customer. Credit limit has to be atleast {0},"Új hitelkeret kevesebb, mint a jelenlegi fennálló összeget a vevő számára. Hitelkeretnek minimum ennyinek kell lennie {0}",
 New task,Új feladat,
 New {0} pricing rules are created,Új {0} árképzési szabályok készülnek,
-Newsletters,hírlevelek,
 Newspaper Publishers,Hírlevél publikálók,
 Next,Következő,
 Next Contact By cannot be same as the Lead Email Address,"Következő kapcsolat evvel nem lehet ugyanaz, mint az érdeklődő e-mail címe",
@@ -1686,7 +1664,6 @@
 Other,Egyéb,
 Other Reports,Más jelentések,
 "Other outward supplies(Nil rated,Exempted)","Egyéb külső készletek (nulla, mentes)",
-Others,Egyéb,
 Out Qty,Mennyiségen kívül,
 Out Value,Értéken kívül,
 Out of Order,Üzemen kívül,
@@ -1726,7 +1703,6 @@
 Party Type and Party is mandatory for {0} account,Ügyfél típus és Ügyfél kötelező a {0} főkönyvi számlára,
 Party Type is mandatory,Ügyfél típus kötelező,
 Party is mandatory,Ügyfél kötelező,
-Password,Jelszó,
 Past Due Date,Lejárt esedékesség,
 Patient,Beteg,
 Patient Appointment,A betegek vizit látogatása,
@@ -1784,7 +1760,6 @@
 Pharmaceutical,Gyógyszeripari,
 Pharmaceuticals,Gyógyszeriparok,
 Physician,Orvos,
-Pincode,Irányítószám,
 Place Of Supply (State/UT),Átadás helye (állam / UT),
 Place Order,Rendelés helye,
 Plan Name,Terv megnevezése,
@@ -1896,7 +1871,6 @@
 Please select date,"Kérjük, válasszon dátumot",
 Please select item code,"Kérjük, jelölje ki a tétel kódot",
 Please select month and year,"Kérjük, válasszon hónapot és évet",
-Please select prefix first,"Kérjük, válasszon prefix először",
 Please select the Company,"Kérjük, válassza ki a Vállalkozást",
 Please select the Multiple Tier Program type for more than one collection rules.,"Kérjük, válassza ki a többszintű program típusát egynél több gyűjtési szabályhoz.",
 Please select the assessment group other than 'All Assessment Groups',"Kérjük, válasszon értékelés csoprotot ami más mint  'Az összes Értékelési csoportok'",
@@ -1913,7 +1887,6 @@
 Please set Company filter blank if Group By is 'Company',"Kérjük, állítsa Vállakozás szűrését üresre, ha a csoportosítás beállítása 'Vállalkozás'",
 Please set Default Payroll Payable Account in Company {0},"Kérjük, állítsa be alapértelmezett Bérszámfejtés fizetendő számlát a cégben: {0}",
 Please set Depreciation related Accounts in Asset Category {0} or Company {1},"Kérjük, állítsa be Értékcsökkenéssel kapcsolatos számlákat ebben a Vagyoni-eszköz  kategóriában {0} vagy vállalkozásban {1}",
-Please set Email Address,"Kérjük, állítsa be az e-mail címet",
 Please set GST Accounts in GST Settings,"Kérjük, állítsa be a GST-számla fiókokat a GST-beállításokban",
 Please set Hotel Room Rate on {},"Kérjük, állítsa be a szobaárakat a {}",
 Please set Number of Depreciations Booked,"Kérjük, állítsa be a könyvelt amortizációk számát",
@@ -1936,7 +1909,6 @@
 Please set the Email ID for the Student to send the Payment Request,"Kérjük, állítsa be az e-mail azonosítót a hallgatónak a fizetési igény kérelem elküldéséhez",
 Please set the Item Code first,"Kérjük, először állítsa be a tételkódot",
 Please set the Payment Schedule,"Kérjük, állítsa be a fizetési ütemezést",
-Please set the series to be used.,"Kérjük, állítsa be a használni kívánt sorozatokat.",
 Please set {0} for address {1},"Kérjük, állítsa be a (z) {0} címet a (z) {1} címhez",
 Please setup Students under Student Groups,"Kérjük, állíts be a Diákokat a Hallgatói csoportok alatt",
 Please specify Company,Kérjük adja meg a vállalkozás nevét,
@@ -1953,7 +1925,6 @@
 Point-of-Sale,Értékesítés-hely-kassza,
 Point-of-Sale Profile,Értékesítési hely profil,
 Portal,Portál,
-Portal Settings,Portál Beállítások,
 Possible Supplier,Lehetséges Beszállító,
 Postal Expenses,Postai költségek,
 Posting Date,Rögzítés dátuma,
@@ -2152,12 +2123,10 @@
 Reference No is mandatory if you entered Reference Date,"Hivatkozási szám kötelező, amennyiben megadta Referencia dátumot",
 Reference No.,Hivatkozási szám.,
 Reference Number,Referencia szám,
-Reference Owner,Referencia Képviselő,
 Reference Type,Referencia típusa,
 "Reference: {0}, Item Code: {1} and Customer: {2}","Referencia: {0}, pont kód: {1} és az ügyfél: {2}",
 References,Referenciák,
 Refresh Token,Token frissítése,
-Region,Régió,
 Register,Regisztrál,
 Rejected,Elutasítva,
 Related,Kapcsolódó,
@@ -2179,7 +2148,6 @@
 Replace BOM and update latest price in all BOMs,"Helyezze vissza a ANYAGJ-et, és frissítse a legújabb árat minden ANYAGJ-ben",
 Replied,Megválaszolt,
 Report,Jelentés,
-Report Builder,Jelentéskészítő,
 Report Type,Report Type,
 Report Type is mandatory,Report Type kötelező,
 Reports,jelentések,
@@ -2355,13 +2323,11 @@
 Same Company is entered more than once,Ugyanez a vállalat szerepel többször,
 Same item cannot be entered multiple times.,Ugyanazt a tételt nem lehet beírni többször.,
 Same supplier has been entered multiple times,Ugyanaz a szállító már többször megjelenik,
-Sample,Minta,
 Sample Collection,Mintagyűjtés,
 Sample quantity {0} cannot be more than received quantity {1},"A minta {0} mennyisége nem lehet több, mint a kapott  {1} mennyiség",
 Sanctioned,Szankcionált,
 Sand,Homok,
 Saturday,Szombat,
-Saved,Mentett,
 Saving {0},A {0},
 Scan Barcode,Barcode beolvasás,
 Schedule,Ütemezés,
@@ -2463,7 +2429,6 @@
 Series Updated,Sorozat Frissítve,
 Series Updated Successfully,Sorozat sikeresen frissítve,
 Series is mandatory,Sorozat kötelező,
-Series {0} already used in {1},{0} sorozat már használva van itt: {1},
 Service,Szervíz,
 Service Level Agreement,Szolgáltatási szint Megállapodás,
 Service Level Agreement.,Szolgáltatási szint Megállapodás.,
@@ -2479,7 +2444,6 @@
 Set Tax Rule for shopping cart,Adózási szabály megadása a bevásárlókosárhoz,
 Set as Closed,Lezárttá állít,
 Set as Completed,Beállítás készként,
-Set as Default,Beállítás alapértelmezettnek,
 Set as Lost,Elveszetté állít,
 Set as Open,Megnyitottá állít,
 Set default inventory account for perpetual inventory,Alapértelmezett készlet számla beállítása a folyamatos készlethez,
@@ -2511,7 +2475,6 @@
 Shareholder,Rész birtokos,
 Ship To State,Hajóállam,
 Shipments,szállítások,
-Shipping,Szállítás,
 Shipping Address,szállítási cím,
 "Shipping Address does not have country, which is required for this Shipping Rule","A szállítási címnek nincs országa, amely szükséges ehhez a szállítási szabályhoz",
 Shipping rule only applicable for Buying,Csak a beszerzésre vonatkozó szállítási szabály,
@@ -2564,7 +2527,6 @@
 Split Batch,Osztott Batch,
 Split Issue,Split Issue,
 Sports,Sportok,
-Standard,Általános,
 Standard Buying,Alapértelmezett beszerzési,
 Standard Selling,Alapértelmezett értékesítési,
 Standard contract terms for Sales or Purchase.,Az általános szerződési feltételek az értékesítéshez vagy beszerzéshez.,
@@ -2731,7 +2693,6 @@
 Terms and Conditions,Általános Szerződési Feltételek,
 Terms and Conditions Template,Általános szerződési feltételek sablon,
 Territory,Terület,
-Test,Teszt,
 Thank you for your business!,Köszönjük a közreműködését!,
 The 'From Package No.' field must neither be empty nor it's value less than 1.,"A 'Csomagból száma' mezőnek sem üres, sem kisebb mint 1 érték nem lehet.",
 The Brand,A márka,
@@ -2848,7 +2809,6 @@
 Total (Without Tax),Összesen (adó nélkül/nettó),
 Total Achieved,Összes Elért,
 Total Actual,Összes Aktuális,
-Total Allocated Leaves,Teljes elosztott távollétek száma,
 Total Amount,Összesen,
 Total Amount Credited,Összesen jóváírt összeg,
 Total Applicable Charges in Purchase Receipt Items table must be same as Total Taxes and Charges,Összesen alkalmazandó díjak a vásárlási nyugta tételek táblázatban egyeznie kell az Összes adókkal és illetékekkel,
@@ -2892,7 +2852,6 @@
 Total(Amt),Összesen (Menny),
 Total(Qty),Összesen(db),
 Traceability,A nyomon követhetőség,
-Traceback,Visszakövet,
 Track Leads by Lead Source.,Érdeklődések nyomon követése az érdeklődés forrásból.,
 Transaction,Tranzakció,
 Transaction Date,Ügylet dátuma,
@@ -2930,7 +2889,6 @@
 UOM Conversion factor is required in row {0},ME átváltási arányra is szükség van ebben a sorban {0},
 UOM coversion factor required for UOM: {0} in Item: {1},ME átváltási tényező szükséges erre a mértékegységre: {0} ebben a tételben: {1},
 URL,URL,
-Unable to find DocType {0},Nem sikerült megtalálni ezt: DocType {0},
 Unable to find exchange rate for {0} to {1} for key date {2}. Please create a Currency Exchange record manually,"Nem található árfolyam erre {0}eddig {1} a kulcs dátum: {2}. Kérjük, hozzon létre egy pénzváltó rekordot manuálisan",
 Unable to find score starting at {0}. You need to have standing scores covering 0 to 100,Nem sikerült megtalálni a (z) {0} ponttól kezdődő pontszámot.  0-100-ig terjedő álló pontszámokat kell megadnia,
 Unable to find variable: ,Nem sikerült megtalálni a változót:,
@@ -2960,7 +2918,6 @@
 Upload your letter head and logo. (you can edit them later).,Kérjük töltse fel levele fejlécét és logo-ját. (Ezeket később szerkesztheti).,
 Upper Income,Magasabb jövedelem,
 Use Sandbox,Sandbox felhasználása,
-Used Leaves,Felhasznált távollétek,
 User,használó,
 User ID,Felhasználó ID,
 User ID not set for Employee {0},Felhasználói azonosítót nem állított be az Alkalmazotthoz: {0},
@@ -3051,7 +3008,6 @@
 Website Settings,Weboldal beállítások,
 Wednesday,Szerda,
 Week,Hét,
-Weekdays,Hétköznapok,
 Weekly,Heti,
 "Weight is mentioned,\nPlease mention ""Weight UOM"" too","Súlyt említik, \ nKérlek említsd meg a ""Súly mértékegység"" is",
 Welcome email sent,Üdvözölő e-mail kiküldve,
@@ -3072,7 +3028,6 @@
 Work Order {0} must be submitted,A {0} munka megrendelést be kell nyújtani,
 Work Orders Created: {0},Létrehozott munka rendelések : {0},
 Work-in-Progress Warehouse is required before Submit,"Munkavégzés raktárra van szükség, beküldés előtt",
-Workflow,Munkafolyamat,
 Working,Folyamatban,
 Working Hours,Munkaidő,
 Workstation,munkaállomás,
@@ -3102,7 +3057,6 @@
 You need to be a user other than Administrator with System Manager and Item Manager roles to register on Marketplace.,A Rendszergazda és a Tételkezelő szerepköröként a Rendszergazdaon kívül más felhasználónak kell lennie.,
 You need to be a user with System Manager and Item Manager roles to add users to Marketplace.,"Felhasználónak kell lennie a System Manager és a Item Manager szerepkörökkel, hogy felvehesse a felhasználókat a Marketplace-be.",
 You need to be a user with System Manager and Item Manager roles to register on Marketplace.,"Ahhoz, hogy regisztráljon a Marketplace-re, be kell jelentkeznie a System Manager és a Item Manager szerepekkel.",
-You need to be logged in to access this page,"Be kell jelentkezie, hogy elérje ezt az oldalt",
 You need to enable Shopping Cart,Engedélyeznie kell a bevásárló kosárat,
 You will lose records of previously generated invoices. Are you sure you want to restart this subscription?,Elveszti a korábban generált számlák nyilvántartását. Biztosan újra szeretné kezdeni ezt az előfizetést?,
 Your Organization,A szervezete,
@@ -3218,7 +3172,6 @@
 Assigned To,Felelős érte,
 Chat,Csevegés,
 Completed By,Által befejeztve,
-County,Megye,
 Day of Week,A hét napja,
 "Dear System Manager,","Tisztelt Rendszergazda,",
 Default Value,Alapértelmezett érték,
@@ -3229,31 +3182,21 @@
 Fieldtype,MezőTípus,
 Help Articles,Súgóbejegyzések,
 ID,ID,
-Images,Képek,
 Import,Importálás,
 Language,Nyelv,
 Likes,Kedvtelések,
 Merge with existing,Meglévővel összefésülni,
-Office,Iroda,
 Orientation,Irányultság,
 Parent,Fő,
-Passive,Passzív,
 Payment Failed,Fizetés meghiúsult,
-Permanent,Állandó,
 Personal,Személyes,
-Plant,Géppark,
 Post,Hozzászólás,
-Postal,Postai,
 Postal Code,Irányítószám,
-Previous,Előző,
 Provider,Ellátó,
 Read Only,Csak olvasható,
 Recipient,Címzett,
 Reviews,Vélemények,
 Sender,Küldő,
-Shop,Bolt,
-Subsidiary,Leányvállalat,
-There is some problem with the file url: {0},Van valami probléma a fájl URL-el: {0},
 There were errors while sending email. Please try again.,"Email küldés közben hibák voltak. Kérjük, próbálja újra.",
 Values Changed,Értékek megváltoztak,
 or,vagy,
@@ -3280,19 +3223,16 @@
 Quality Feedback Template,Minőségi visszajelző sablon,
 Rules for applying different promotional schemes.,Különböző promóciós rendszerek alkalmazásának szabályai.,
 Show {0},Mutasd {0},
-"Special Characters except '-', '#', '.', '/', '{{' and '}}' not allowed in naming series {0}","Speciális karakterek, kivéve &quot;-&quot;, &quot;#&quot;, &quot;.&quot;, &quot;/&quot;, &quot;{{&quot; És &quot;}}&quot;, a sorozatok elnevezése nem megengedett {0}",
 Target Details,Cél részletei,
 {0} already has a Parent Procedure {1}.,A (z) {0} már rendelkezik szülői eljárással {1}.,
 API,API,
 Annual,Éves,
 Change,Változás,
 Contact Email,Kapcsolattartó e-mailcíme,
-Export Type,Export típusa,
 From Date,Dátumtól,
 Group By,Csoportosít,
 Invalid URL,érvénytelen URL,
 Landscape,Tájkép,
-Last Sync On,Utolsó szinkronizálás ekkor,
 Naming Series,Elnevezési sorozatok,
 No data to export,Nincs adat exportálni,
 Portrait,portré,
@@ -3302,7 +3242,6 @@
 Show Document,A dokumentum megjelenítése,
 Show Traceback,A Traceback megjelenítése,
 Video,Videó,
-Webhook Secret,Webhook titkos,
 % Of Grand Total,A teljes összeg% -a,
 <b>Company</b> is a mandatory filter.,<b>A társaság</b> kötelező szűrő.,
 <b>From Date</b> is a mandatory filter.,<b>A dátumtól</b> kötelező szűrő.,
@@ -3358,7 +3297,6 @@
 BOM Comparison Tool,BOM összehasonlító eszköz,
 BOM recursion: {0} cannot be child of {1},BOM rekurzió: {0} nem lehet {1} gyermek,
 BOM recursion: {0} cannot be parent or child of {1},BOM rekurzió: {0} nem lehet {1} szülő vagy gyermek.,
-Back to Home,Vissza a főoldalra,
 Back to Messages,Vissza az üzenetekhez,
 Bank Data mapper doesn't exist,A Bank Data mapper nem létezik,
 Bank Details,Banki adatok,
@@ -3420,7 +3358,6 @@
 Currency,Pénznem,
 Current Status,Aktuális állapot,
 Customer PO,Ügyfél PO,
-Customize,Testreszabás,
 Daily,Napi,
 Date,Dátum,
 Date of Birth cannot be greater than Joining Date.,"Születési ideje nem lehet nagyobb, mint a csatlakozási dátum.",
@@ -3454,7 +3391,6 @@
 ERPNext could not find any matching payment entry,Az ERPNext nem talált megfelelő fizetési bejegyzést,
 Earliest Age,A legkorábbi életkor,
 Edit Details,Részletek szerkesztése,
-Edit Profile,Profil szerkesztése,
 Either GST Transporter ID or Vehicle No is required if Mode of Transport is Road,"Ha a szállítás módja közúti, akkor sem GST szállítóazonosítóra, sem járműszámra nincs szükség",
 Email,Email,
 Email Campaigns,E-mail kampányok,
@@ -3482,7 +3418,6 @@
 Fetch Items from Warehouse,Tételek letöltése a raktárból,
 Fetching...,Elragadó...,
 Field,Mező,
-File Manager,Fájlkezelő,
 Filters,Szűrők,
 Finding linked payments,Kapcsolódó kifizetések keresése,
 Fleet Management,Flotta kezelés,
@@ -3521,7 +3456,6 @@
 Incorrect Warehouse,Helytelen raktár,
 Invalid Barcode. There is no Item attached to this barcode.,Érvénytelen vonalkód. Ehhez a vonalkódhoz nincs csatolt elem.,
 Invalid credentials,Érvénytelen hitelesítő adatok,
-Invite as User,Meghívás Felhasználóként,
 Issue Priority.,Kiállítási prioritás.,
 Issue Type.,Probléma típus.,
 "It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","Úgy tűnik, hogy probléma van a kiszolgáló sávszélesség konfigurációjával. Hiba esetén az összeg visszafizetésre kerül a számlájára.",
@@ -3564,7 +3498,6 @@
 New Invoice,Új számla,
 New Payment,Új fizetés,
 New release date should be in the future,Az új kiadási dátumnak a jövőben kell lennie,
-Newsletter,Hírlevél,
 No Account matched these filters: {},Egyik fiók sem felel meg ezeknek a szűrőknek: {},
 No communication found.,Nem található kommunikáció.,
 No correct answer is set for {0},Nincs helyes válasz a (z) {0} számára,
@@ -3640,7 +3573,6 @@
 Please setup a default bank account for company {0},"Kérjük, állítson be egy alapértelmezett bankszámlát a (z) {0} cég számára",
 Please specify,"Kérjük, határozza meg",
 Please specify a {0},"Kérjük, adjon meg egy {0}",lead
-Printing,Nyomtatás,
 Priority,Prioritás,
 Priority has been changed to {0}.,A prioritás {0} -re változott.,
 Priority {0} has been repeated.,A (z) {0} prioritást megismételtük.,
@@ -3649,7 +3581,6 @@
 Project,Projekt téma,
 Provide the academic year and set the starting and ending date.,"Adja meg a tanévet, és állítsa be a kezdő és záró dátumot.",
 Public token is missing for this bank,Hiányzik a bank nyilvános tokenje,
-Publish,közzétesz,
 Publish 1 Item,1 tétel közzététele,
 Publish Items,Tételek közzététele,
 Publish More Items,További tételek közzététele,
@@ -3677,7 +3608,6 @@
 Reconciled,Egyeztetett,
 Recruitment,Toborzás,
 Red,Piros,
-Refreshing,Üdítő,
 Release date must be in the future,A kiadás dátumának a jövőben kell lennie,
 Relieving Date must be greater than or equal to Date of Joining,A megváltás dátumának legalább a csatlakozás dátumával kell egyenlőnek lennie,
 Rename,Átnevezés,
@@ -3721,7 +3651,6 @@
 Search for a payment,Keressen fizetést,
 Search for anything ...,Bármi keresése ...,
 Search results for,Keressen eredményeket erre,
-Select All,Mindent kijelöl,
 Select Difference Account,Válassza a Különbség fiókot,
 Select a Default Priority.,Válasszon alapértelmezett prioritást.,
 Select a company,Válasszon társaságot,
@@ -3740,11 +3669,9 @@
 Service Level Agreement has been changed to {0}.,A szolgáltatási szint megállapodás megváltozott {0} -ra.,
 Service Level Agreement was reset.,A szolgáltatási szintű megállapodást visszaállították.,
 Service Level Agreement with Entity Type {0} and Entity {1} already exists.,Szolgáltatási szintű megállapodás a (z) {0} típusú entitással és a {1} entitással már létezik.,
-Set,Beállítás,
 Set Meta Tags,Metacímkék beállítása,
 Set {0} in company {1},Állítsa be a (z) {0} szót a (z) {1} társaságban,
 Setup,Telepítés,
-Setup Wizard,Telepítés varázsló,
 Shift Management,Turnus kezelés,
 Show Future Payments,Mutassa a jövőbeli kifizetéseket,
 Show Linked Delivery Notes,Kapcsolódó kézbesítési jegyzetek megjelenítése,
@@ -3815,7 +3742,6 @@
 Unreconciled,Nem egyeztetett,
 Unsupported GST Category for E-Way Bill JSON generation,Nem támogatott GST kategória az E-Way Bill JSON generációhoz,
 Update,frissítés,
-Update Details,Frissítse a részleteket,
 Update Taxes for Items,Frissítse az elemek adóit,
 "Upload a bank statement, link or reconcile a bank account","Töltsön fel bankszámlakivonatokat, összekapcsoljon vagy egyeztessen bankszámlát",
 Upload a statement,Tölts fel egy nyilatkozatot,
@@ -3839,7 +3765,6 @@
 XML Files Processed,XML fájlok feldolgozva,
 Year,Év,
 Yearly,Évi,
-You,Ön,
 You are not allowed to enroll for this course,Nem léphet fel erre a kurzusra,
 You are not enrolled in program {0},Ön nem regisztrált a (z) {0} programba,
 You can Feature upto 8 items.,Legfeljebb 8 elem jellemzése.,
@@ -3856,7 +3781,6 @@
 e-Way Bill already exists for this document,Az e-Way Bill már létezik ehhez a dokumentumhoz,
 woocommerce - {0},woocommerce - {0},
 {0} Coupon used are {1}. Allowed quantity is exhausted,A használt kupon {1}. Az engedélyezett mennyiség kimerült,
-{0} Name,{0} Név,
 {0} Operations: {1},{0} Műveletek: {1},
 {0} bank transaction(s) created,{0} banki tranzakció létrehozva,
 {0} bank transaction(s) created and {1} errors,{0} banki tranzakció létrehozva és {1} hiba történt,
@@ -3875,17 +3799,13 @@
 Total Income,Teljes bevétel,
 Total Income This Year,Teljes jövedelem ebben az évben,
 Barcode,Vonalkód,
-Bold,Bátor,
-Center,Központ,
 Clear,Egyértelmű,
-Comment,Megjegyzés,
 Comments,Hozzászólások,
 DocType,DocType,
 Download,Letöltés,
 Left,Elhagyja,
 Link,Link,
 New,Új,
-Not Found,Nem található,
 Print,Nyomtatás,
 Reference Name,Referencia név,
 Refresh,Frissítés,
@@ -3908,7 +3828,6 @@
 Email Id,E-mail ID azonosító,
 No,Nem,
 Reference Doctype,Referencia Doctype,
-User Id,Felhasználói azonosító,
 Yes,Igen,
 Actual ,Tényleges,
 Add to cart,Adja a kosárhoz,
@@ -4304,7 +4223,6 @@
 e.g Adjustments for:,pl. kiigazítások erre:,
 Section Subtotal,Szekció rész összeg,
 Section Footer,Szekció lábléc,
-Position,Pozíció,
 Cash Flow Mapping,Pénzforgalom térképezés,
 Select Maximum Of 1,Válassza a maximum 1 értéket,
 Is Finance Cost,Ez pénzügyi költség,
@@ -4936,7 +4854,6 @@
 Previous Business Day,Előző munkanap,
 Next Business Day,Következő munka nap,
 Urgent,Sürgős,
-Crop,Termés,
 Crop Name,Termés neve,
 Scientific Name,Tudományos név,
 "You can define all the tasks which need to carried out for this crop here. The day field is used to mention the day on which the task needs to be carried out, 1 being the 1st day, etc.. ","Itt megadhatja az összes olyan feladatot, amelyet ehhez a terméshez el kell elvégeznie. A napi mezőt arra használjuk, hogy megemlítsük azt a napot, amikor a feladatot végre kell hajtani, 1 az első nap, stb.",
@@ -5441,7 +5358,6 @@
 To TIme,Ideig,
 Course End Date,Tanfolyam befejező dátum,
 Course Topic,Tanfolyam téma,
-Topic,Téma,
 Topic Name,Téma neve,
 Education Settings,Oktatás beállításai,
 Current Academic Year,Aktuális folyó tanév,
@@ -5516,7 +5432,6 @@
 Check this if the Student is residing at the Institute's Hostel.,"Jelölje be ezt, ha a diák lakóhelye az intézet diákszállása.",
 Walking,Gyalog,
 Institute's Bus,Intézmény busza,
-Public Transport,Tömegközlekedés,
 Self-Driving Vehicle,Önvezető jármű,
 Pick/Drop by Guardian,Kiálasztás / Csökkenés helyettesítőnként,
 Enrolled courses,Regisztrált tanfolyamok,
@@ -5697,7 +5612,6 @@
 Default Cost Center,Alapértelmezett költséghely,
 Undeposited Funds Account,Nem támogatott alapok számlája,
 Shopify Log,Shopify napló,
-Request Data,Adat kérés,
 Shopify Settings,Shopify beállítások,
 status html,állapot html,
 Enable Shopify,Engedélyezze a Shopify alkalmazást,
@@ -5817,7 +5731,6 @@
 Exercise Instructions,Gyakorlási utasítások,
 Exercise Video,Gyakorlási videó,
 Exercise Steps,Gyakorlási lépések,
-Steps,Lépések,
 Steps Table,Lépések táblázat,
 Exercise Type Step,Gyakorlat típusa lépés,
 Max number of visit,Látogatások max.  száma,
@@ -6001,7 +5914,6 @@
 Patient Encounter Symptom,A beteg találkozásának tünete,
 HLC-PMR-.YYYY.-,HLC-PMR-.YYYY.-,
 Attach Medical Record,Csatolja a kórlapot,
-Reference DocType,Referencia DocType,
 Spouse,Házastárs,
 Family,Család,
 Schedule Details,Ütemezés részletei,
@@ -6983,16 +6895,8 @@
 HTML / Banner that will show on the top of product list.,HTML / Szalagcím a tételek listájának tetején fog megjelenni.,
 Set prefix for numbering series on your transactions,Sorozat számozás előtag beállítása a  tranzakciókhoz,
 Setup Series,Sorszámozás telepítése,
-Select Transaction,Válasszon Tranzakciót,
-Help HTML,Súgó HTML,
-Series List for this Transaction,Sorozat List ehhez a tranzakcióhoz,
-User must always select,Felhasználónak mindig választani kell,
-Check this if you want to force the user to select a series before saving. There will be no default if you check this.,"Jelölje be, ha azt akarja, hogy a felhasználó válassza ki a sorozatokat mentés előtt. Nem lesz alapértelmezett, ha bejelöli.",
 Update Series,Sorszámozás frissítése,
 Change the starting / current sequence number of an existing series.,Megváltoztatni a kezdő / aktuális sorszámot egy meglévő sorozatban.,
-Prefix,Előtag,
-This is the number of the last created transaction with this prefix,"Ez az a szám, az ilyen előtaggal utoljára létrehozott tranzakciónak",
-Update Series Number,Széria szám frissítése,
 Quotation Lost Reason,Árajánlat elutasításának oka,
 A third party distributor / dealer / commission agent / affiliate / reseller who sells the companies products for a commission.,"Egy forgalmazó / kereskedő / bizományos / társulat / viszonteladó harmadik fél, aki jutalákért eladja a vállalatok termékeit.",
 Sales Partner Name,Vevő partner neve,
@@ -7687,7 +7591,6 @@
 Warehouse wise Item Balance Age and Value,Raktáronkénti Tétel mérleg kor és érték,
 Work Order Stock Report,Munkamegrendelés raktári jelentés,
 Work Orders in Progress,Folyamatban lévő munka megrendelések,
-Validation Error,Ellenőrzési hiba,
 Automatically Process Deferred Accounting Entry,A halasztott könyvelési bejegyzés automatikus feldolgozása,
 Bank Clearance,Banki elszámolás,
 Bank Clearance Detail,Banki elszámolás részletei,
@@ -7724,45 +7627,7 @@
 Therapy Plan: ,Terápiás terv:,
 Total Counts Targeted: ,Célzott összes szám:,
 Total Counts Completed: ,Teljesített összes szám:,
-Andaman and Nicobar Islands,Andamán és Nicobar-szigetek,
-Andhra Pradesh,Andhra Pradesh,
-Arunachal Pradesh,Arunachal Pradesh,
-Assam,Assam,
-Bihar,Bihar,
-Chandigarh,Chandigarh,
-Chhattisgarh,Chhattisgarh,
-Dadra and Nagar Haveli,Dadra és Nagar Haveli,
-Daman and Diu,Daman és Diu,
-Delhi,Delhi,
-Goa,Goa,
-Gujarat,Gujarat,
-Haryana,Haryana,
-Himachal Pradesh,Himachal Pradesh,
-Jammu and Kashmir,Dzsammu és Kasmír,
-Jharkhand,Jharkhand,
-Karnataka,Karnataka,
-Kerala,Kerala,
-Lakshadweep Islands,Lakshadweep-szigetek,
-Madhya Pradesh,Madhya Pradesh,
-Maharashtra,Maharashtra,
-Manipur,Manipur,
-Meghalaya,Meghalaya,
-Mizoram,Mizoram,
-Nagaland,Nagaland,
-Odisha,Odisha,
-Other Territory,Egyéb terület,
-Pondicherry,Pondicherry,
-Punjab,Pandzsáb,
-Rajasthan,Radzsasztán,
-Sikkim,Sikkim,
-Tamil Nadu,Tamil Nadu,
-Telangana,Telangana,
-Tripura,Tripura,
-Uttar Pradesh,Uttar Pradesh,
-Uttarakhand,Uttarakhand,
-West Bengal,Nyugat-Bengál,
 Is Mandatory,Kötelező,
-Published on,Megjelent,
 Service Received But Not Billed,"Szolgáltatás fogadott, de nem számlázott",
 Deferred Accounting Settings,Halasztott könyvelési beállítások,
 Book Deferred Entries Based On,Halasztott bejegyzések könyvelése ennek alapján,
@@ -8035,8 +7900,6 @@
 Worksheet Instructions,Munkalap utasítások,
 Result Legend Print,Eredmény Jelmagyarázat Nyomtatás,
 Print Position,Nyomtatási pozíció,
-Bottom,Alsó,
-Top,Felül,
 Both,Mindkét,
 Result Legend,Eredmény Jelmagyarázat,
 Lab Tests,Laboratóriumi tesztek,
@@ -8081,12 +7944,10 @@
 Approvers,Jóváhagyó,
 The first Approver in the list will be set as the default Approver.,A lista első jóváhagyója lesz az alapértelmezett jóváhagyó.,
 Shift Request Approver,Shift Request Approver,
-PAN Number,PAN szám,
 Provident Fund Account,Provident Fund számla,
 MICR Code,MICR kód,
 Repay unclaimed amount from salary,Visszafizetni az igényelt összeget a fizetésből,
 Deduction from salary,A fizetés levonása,
-Expired Leaves,Lejárt levelek,
 If this is not checked the loan by default will be considered as a Demand Loan,"Ha ez nincs bejelölve, akkor a hitelt alapértelmezés szerint Igény szerinti kölcsönnek kell tekinteni",
 This account is used for booking loan repayments from the borrower and also disbursing loans to the borrower,"Ezt a számlát arra használják, hogy foglalják le a hiteltől származó hiteltörlesztéseket, és kölcsönöket is folyósítanak a hitelfelvevőnek",
 This account is capital account which is used to allocate capital for loan disbursal account ,"Ez a számla tőkeszámla, amelyet a hitel folyósítási számlájához szükséges tőke allokálására használnak",
@@ -8844,3 +8705,41 @@
 Creating Purchase Order ...,Megrendelés létrehozása ...,
 "Select a Supplier from the Default Suppliers of the items below. On selection, a Purchase Order will be made against items belonging to the selected Supplier only.",Válasszon szállítót az alábbi elemek alapértelmezett szállítói közül. A kiválasztáskor csak a kiválasztott szállítóhoz tartozó termékekre készül megrendelés.,
 Row #{}: You must select {} serial numbers for item {}.,#. Sor:} {0} sorszámokat kell kiválasztania.,
+Add Comment,Megjegyzés hozzáadása,
+More...,Több...,
+Notes,Jegyzetek,
+Payment Gateway,Fizetési átjáró,
+Payment Gateway Name,Fizetési átjáró elnevezése,
+Payments,Kifizetések,
+Plan Name,Terv megnevezése,
+Portal,Portál,
+Scan Barcode,Barcode beolvasás,
+Some information is missing,Néhány információ hiányzik,
+Successful,Sikeres,
+Tools,Eszközök,
+Use Sandbox,Sandbox felhasználása,
+Busy,Elfoglalt,
+Completed By,Által befejeztve,
+Payment Failed,Fizetés meghiúsult,
+Column {0},{0} oszlop,
+Field Mapping,Field Mapping,
+Not Specified,Nem meghatározott,
+Update Type,Frissítés típusa,
+Dr,Dr,
+End Time,Befejezés dátuma,
+Fetching...,Elragadó...,
+"It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","Úgy tűnik, hogy probléma van a kiszolgáló sávszélesség konfigurációjával. Hiba esetén az összeg visszafizetésre kerül a számlájára.",
+Looks like someone sent you to an incomplete URL. Please ask them to look into it.,"Úgy néz ki, mintha valaki küldött egy hiányos URL-t. Kérjük, kérje meg, hogy nézzen utána.",
+Master,Fő adat,
+Pay,Fizet,
+You can also copy-paste this link in your browser,Másol-beillesztheti ezt az elérési linket a böngészőben,
+Verified By,Ellenőrizte,
+Invalid naming series (. missing) for {0},Érvénytelen névsor (. Hiányzik) a következőhöz: {0},
+Phone Number,Telefonszám,
+Account SID,Fiók SID,
+Global Defaults,Általános beállítások,
+Is Mandatory,Kötelező,
+WhatsApp,WhatsApp,
+Make a call,Hívást kezdeményezni,
+Approve,Jóváhagy,
+Reject,Elutasít,
diff --git a/erpnext/translations/id.csv b/erpnext/translations/id.csv
index 67311a1..d84c3fd 100644
--- a/erpnext/translations/id.csv
+++ b/erpnext/translations/id.csv
@@ -113,7 +113,6 @@
 Add Items,Tambahkan Item,
 Add Leads,Tambahkan Prospek,
 Add Multiple Tasks,Tambahkan Beberapa Tugas,
-Add Row,Menambahkan Baris,
 Add Sales Partners,Tambahkan Mitra Penjualan,
 Add Serial No,Tambahkan Nomor Serial,
 Add Students,Tambahkan Siswa,
@@ -211,9 +210,7 @@
 An error occurred during the update process,Kesalahan terjadi selama proses pembaruan,
 "An item exists with same name ({0}), please change the item group name or rename the item","Sebuah item yang ada dengan nama yang sama ({0}), silakan mengubah nama kelompok Stok Barang atau mengubah nama item",
 Analyst,Analis,
-Analytics,Analytics,
 Annual Billing: {0},Tagihan Tahunan: {0},
-Anonymous,Anonim,
 Another Budget record '{0}' already exists against {1} '{2}' and account '{3}' for fiscal year {4},Rekaman Anggaran lain &#39;{0}&#39; sudah ada terhadap {1} &#39;{2}&#39; dan akun &#39;{3}&#39; untuk tahun fiskal {4},
 Another Period Closing Entry {0} has been made after {1},Lain Periode Pendaftaran penutupan {0} telah dibuat setelah {1},
 Another Sales Person {0} exists with the same Employee id,Sales Person lain {0} ada dengan id Karyawan yang sama,
@@ -283,14 +280,12 @@
 Attendance not submitted for {0} as {1} on leave.,Kehadiran tidak dikirimkan untuk {0} sebagai {1} saat cuti.,
 Attribute table is mandatory,Tabel atribut wajib,
 Attribute {0} selected multiple times in Attributes Table,Atribut {0} karena beberapa kali dalam Atribut Tabel,
-Author,Penulis,
 Authorized Signatory,Penandatangan yang sah,
 Auto Material Requests Generated,Pembuatan Form Permintaan Material Otomatis,
 Auto Repeat,Ulangi Otomatis,
 Auto repeat document updated,Pembaruan dokumen otomatis diperbarui,
 Automotive,Otomotif,
 Available,Tersedia,
-Available Leaves,Cuti Yang Tersedia,
 Available Qty,Qty Tersedia,
 Available Selling,Jual Beli,
 Available for use date is required,Tersedia untuk tanggal penggunaan diperlukan,
@@ -340,7 +335,6 @@
 Base URL,URL dasar,
 Based On,Berdasarkan,
 Based On Payment Terms,Berdasarkan Ketentuan Pembayaran,
-Basic,Dasar,
 Batch,Kumpulan,
 Batch Entries,Entri Batch,
 Batch ID is mandatory,Batch ID adalah wajib,
@@ -361,7 +355,6 @@
 Billable Hours,Jam yang Dapat Ditagih,
 Billed,Ditagih,
 Billed Amount,Nilai Tagihan,
-Billing,Penagihan,
 Billing Address,Alamat Penagihan,
 Billing Address is same as Shipping Address,Alamat Penagihan sama dengan Alamat Pengiriman,
 Billing Amount,Jumlah Penagihan,
@@ -560,7 +553,6 @@
 Consumed Qty,Qty Dikonsumsi,
 Consumer Products,Produk Pelanggan,
 Contact,Kontak,
-Contact Details,Kontak Detail,
 Contact Us,Hubungi kami,
 Content,Isi Halaman,
 Content Masters,Master Konten,
@@ -715,7 +707,6 @@
 Date of Joining,Tanggal Bergabung,
 Date of Joining must be greater than Date of Birth,Tanggal Bergabung harus lebih besar dari Tanggal Lahir,
 Date of Transaction,Tanggal Transaksi,
-Datetime,Datetime,
 Day,Hari,
 Debit,Debet,
 Debit ({0}),Debit ({0}),
@@ -874,7 +865,6 @@
 Employee cannot report to himself.,Karyawan tidak bisa melaporkan kepada dirinya sendiri.,
 Employee {0} has already applied for {1} between {2} and {3} : ,Karyawan {0} telah mengajukan permohonan untuk {1} antara {2} dan {3}:,
 Employee {0} of grade {1} have no default leave policy,Karyawan {0} kelas {1} tidak memiliki kebijakan cuti default,
-Enable,Aktifkan,
 Enable / disable currencies.,Mengaktifkan / menonaktifkan mata uang.,
 Enabled,Diaktifkan,
 "Enabling 'Use for Shopping Cart', as Shopping Cart is enabled and there should be at least one Tax Rule for Shopping Cart","Mengaktifkan &#39;Gunakan untuk Keranjang Belanja&#39;, sebagai Keranjang Belanja diaktifkan dan harus ada setidaknya satu Rule Pajak untuk Belanja",
@@ -905,7 +895,6 @@
 Error: Not a valid id?,Kesalahan: Tidak id valid?,
 Estimated Cost,Estimasi biaya,
 "Even if there are multiple Pricing Rules with highest priority, then following internal priorities are applied:","Bahkan jika ada beberapa Aturan Harga dengan prioritas tertinggi, kemudian mengikuti prioritas internal diterapkan:",
-Event,Acara,
 Exchange Gain/Loss,Efek Gain / Loss,
 Exchange Rate Revaluation master.,Master Revaluasi Nilai Tukar.,
 Exchange Rate must be same as {0} {1} ({2}),Kurs harus sama dengan {0} {1} ({2}),
@@ -1032,7 +1021,6 @@
 From value must be less than to value in row {0},Dari nilai harus kurang dari nilai dalam baris {0},
 From {0} | {1} {2},Dari {0} | {1} {2},
 Fulfillment,Pemenuhan,
-Full,Penuh,
 Full Name,Nama Lengkap,
 Fully Depreciated,Sepenuhnya Disusutkan,
 Furnitures and Fixtures,Mebel dan Perlengkapan,
@@ -1133,7 +1121,6 @@
 Hub Sync ID,Hub Sync ID,
 Human Resource,Sumber daya manusia,
 Human Resources,Sumber daya manusia,
-IFSC Code,Kode IFSC,
 IGST Amount,Jumlah IGST,
 IP Address,Alamat IP,
 ITC Available (whether in full op part),ITC Tersedia (baik dalam bagian op penuh),
@@ -1185,7 +1172,6 @@
 Ineligible ITC,ITC yang tidak memenuhi syarat,
 Initiated,Diprakarsai,
 Inpatient Record,Rekam Rawat Inap,
-Insert,Insert,
 Installation Note,Nota Installasi,
 Installation Note {0} has already been submitted,Instalasi Catatan {0} telah Terkirim,
 Installation date cannot be before delivery date for Item {0},Tanggal instalasi tidak bisa sebelum tanggal pengiriman untuk Item {0},
@@ -1197,7 +1183,6 @@
 Insurance Start date should be less than Insurance End date,Tanggal asuransi mulai harus kurang dari tanggal asuransi End,
 Integrated Tax,Pajak Terpadu,
 Inter-State Supplies,Persediaan Antar Negara,
-Interests,minat,
 Internet Publishing,Penerbitan Internet,
 Intra-State Supplies,Persediaan Antar Negara,
 Introduction,Pendahuluan,
@@ -1316,7 +1301,6 @@
 Lab testing datetime cannot be before collection datetime,Lab testing datetime tidak bisa sebelum koleksi datetime,
 Label,Label,
 Laboratory,Laboratorium,
-Language Name,Nama bahasa,
 Large,Besar,
 Last Communication,Komunikasi Terakhir,
 Last Communication Date,Tanggal Komunikasi Terakhir,
@@ -1347,8 +1331,6 @@
 Letter Heads for print templates.,Surat Kepala untuk mencetak template.,
 Level,Level,
 Liability,Kewajiban,
-License,Lisensi,
-Limit,Membatasi,
 Limit Crossed,batas Dilalui,
 Link to Material Request,Tautan ke Permintaan Material,
 List of all share transactions,Daftar semua transaksi saham,
@@ -1359,7 +1341,6 @@
 Loans (Liabilities),Kredit (Kewajiban),
 Loans and Advances (Assets),Pinjaman Uang Muka dan (Aset),
 Local,[Daerah,
-Log,Log,
 Logs for maintaining sms delivery status,Log untuk mempertahankan status pengiriman sms,
 Lost,Kalah,
 Lost Reasons,Alasan yang Hilang,
@@ -1445,7 +1426,6 @@
 Medical Department,Departemen Kesehatan,
 Medical Record,Rekam medis,
 Medium,Sedang,
-Meeting,Pertemuan,
 Member Activity,Aktivitas Anggota,
 Member ID,Tanda Anggota,
 Member Name,Nama anggota,
@@ -1495,7 +1475,6 @@
 Multiple Variants,Beberapa varian,
 Multiple fiscal years exist for the date {0}. Please set company in Fiscal Year,Beberapa tahun fiskal ada untuk tanggal {0}. Silakan set perusahaan di Tahun Anggaran,
 Music,musik musik,
-My Account,Akun Saya,
 Name error: {0},Nama error: {0},
 Name of new Account. Note: Please don't create accounts for Customers and Suppliers,Nama Akun baru. Catatan: Jangan membuat akun untuk Pelanggan dan Pemasok,
 Name or Email is mandatory,Nama atau Email adalah wajib,
@@ -1538,7 +1517,6 @@
 New credit limit is less than current outstanding amount for the customer. Credit limit has to be atleast {0},batas kredit baru kurang dari jumlah yang luar biasa saat ini bagi pelanggan. batas kredit harus minimal {0},
 New task,Tugas baru,
 New {0} pricing rules are created,{0} aturan penetapan harga baru dibuat,
-Newsletters,Surat edaran,
 Newspaper Publishers,Penerbit Berita,
 Next,Lanjut,
 Next Contact By cannot be same as the Lead Email Address,Dikontak Oleh berikut tidak bisa sama dengan Alamat Email Prospek,
@@ -1686,7 +1664,6 @@
 Other,Lain-lain,
 Other Reports,Laporan Lainnya,
 "Other outward supplies(Nil rated,Exempted)","Persediaan luar lainnya (nilai nol, Dibebaskan)",
-Others,Lainnya,
 Out Qty,Out Qty,
 Out Value,out Nilai,
 Out of Order,Habis,
@@ -1726,7 +1703,6 @@
 Party Type and Party is mandatory for {0} account,Jenis dan Pesta Pihak adalah wajib untuk {0} akun,
 Party Type is mandatory,Partai Type adalah wajib,
 Party is mandatory,Partai adalah wajib,
-Password,Kata sandi,
 Past Due Date,Tanggal Jatuh Tempo,
 Patient,Pasien,
 Patient Appointment,Penunjukan Pasien,
@@ -1784,7 +1760,6 @@
 Pharmaceutical,Farmasi,
 Pharmaceuticals,Farmasi,
 Physician,Dokter,
-Pincode,Kode PIN,
 Place Of Supply (State/UT),Tempat Persediaan (Negara Bagian / UT),
 Place Order,Order,
 Plan Name,Nama rencana,
@@ -1896,7 +1871,6 @@
 Please select date,Silakan pilih tanggal,
 Please select item code,Silahkan pilih kode Stok Barang,
 Please select month and year,Silakan pilih bulan dan tahun,
-Please select prefix first,Silakan pilih awalan terlebih dahulu,
 Please select the Company,Silahkan pilih Perusahaan,
 Please select the Multiple Tier Program type for more than one collection rules.,Silakan pilih tipe Program Multi Tier untuk lebih dari satu aturan koleksi.,
 Please select the assessment group other than 'All Assessment Groups',Harap pilih kelompok penilaian selain &#39;Semua Kelompok Penilaian&#39;,
@@ -1913,7 +1887,6 @@
 Please set Company filter blank if Group By is 'Company',Harap tentukan filter Perusahaan jika Group By &#39;Company&#39;,
 Please set Default Payroll Payable Account in Company {0},Silahkan mengatur default Payroll Hutang Akun di Perusahaan {0},
 Please set Depreciation related Accounts in Asset Category {0} or Company {1},Silahkan mengatur Penyusutan Akun terkait Aset Kategori {0} atau Perusahaan {1},
-Please set Email Address,Silahkan tetapkan Alamat Email,
 Please set GST Accounts in GST Settings,Harap setel akun GST di GST Settings,
 Please set Hotel Room Rate on {},Harap atur Tarif Kamar Hotel di {},
 Please set Number of Depreciations Booked,Silakan mengatur Jumlah Penyusutan Dipesan,
@@ -1936,7 +1909,6 @@
 Please set the Email ID for the Student to send the Payment Request,Harap atur ID Email untuk Siswa untuk mengirim Permintaan Pembayaran,
 Please set the Item Code first,Harap set Kode Item terlebih dahulu,
 Please set the Payment Schedule,Silakan atur Jadwal Pembayaran,
-Please set the series to be used.,Silakan mengatur seri yang akan digunakan.,
 Please set {0} for address {1},Silakan atur {0} untuk alamat {1},
 Please setup Students under Student Groups,Tolong atur Siswa di Kelompok Siswa,
 Please specify Company,Silakan tentukan Perusahaan,
@@ -1953,7 +1925,6 @@
 Point-of-Sale,POS,
 Point-of-Sale Profile,Profil Point of Sale,
 Portal,Pintu gerbang,
-Portal Settings,Pengaturan Portal,
 Possible Supplier,mungkin Pemasok,
 Postal Expenses,Beban pos,
 Posting Date,Tanggal Posting,
@@ -2152,12 +2123,10 @@
 Reference No is mandatory if you entered Reference Date,Referensi ada adalah wajib jika Anda memasukkan Referensi Tanggal,
 Reference No.,Nomor referensi.,
 Reference Number,Nomor referensi,
-Reference Owner,referensi Pemilik,
 Reference Type,Referensi Type,
 "Reference: {0}, Item Code: {1} and Customer: {2}","Referensi: {0}, Kode Item: {1} dan Pelanggan: {2}",
 References,Referensi,
 Refresh Token,Segarkan Token,
-Region,Wilayah,
 Register,Daftar,
 Rejected,Ditolak,
 Related,Terkait,
@@ -2179,7 +2148,6 @@
 Replace BOM and update latest price in all BOMs,Ganti BOM dan perbarui harga terbaru di semua BOM,
 Replied,Menjawab,
 Report,Laporan,
-Report Builder,Report Builder,
 Report Type,Jenis Laporan,
 Report Type is mandatory,Jenis Laporan adalah wajib,
 Reports,Laporan,
@@ -2355,13 +2323,11 @@
 Same Company is entered more than once,Perusahaan yang sama dimasukkan lebih dari sekali,
 Same item cannot be entered multiple times.,Item yang sama tidak dapat dimasukkan beberapa kali.,
 Same supplier has been entered multiple times,Pemasok yang sama telah dimasukkan beberapa kali,
-Sample,Sampel,
 Sample Collection,Koleksi Sampel,
 Sample quantity {0} cannot be more than received quantity {1},Kuantitas sampel {0} tidak boleh lebih dari jumlah yang diterima {1},
 Sanctioned,Sanksi,
 Sand,Pasir,
 Saturday,Sabtu,
-Saved,Disimpan,
 Saving {0},Hemat {0},
 Scan Barcode,Pindai Kode Batang,
 Schedule,Jadwal,
@@ -2463,7 +2429,6 @@
 Series Updated,Nomor Seri Diperbarui,
 Series Updated Successfully,Nomor Seri Berhasil Diperbarui,
 Series is mandatory,Series adalah wajib,
-Series {0} already used in {1},Seri {0} sudah digunakan dalam {1},
 Service,Jasa,
 Service Level Agreement,Persetujuan tingkat layanan,
 Service Level Agreement.,Persetujuan tingkat layanan.,
@@ -2479,7 +2444,6 @@
 Set Tax Rule for shopping cart,Set Peraturan Pajak untuk keranjang belanja,
 Set as Closed,Tetapkan untuk ditutup,
 Set as Completed,Setel sebagai Selesai,
-Set as Default,Set sebagai Default,
 Set as Lost,Set as Hilang/Kalah,
 Set as Open,Ditetapkan sebagai Terbuka,
 Set default inventory account for perpetual inventory,Tetapkan akun inventaris default untuk persediaan perpetual,
@@ -2511,7 +2475,6 @@
 Shareholder,Pemegang saham,
 Ship To State,Kirim Ke Negara,
 Shipments,Pengiriman,
-Shipping,pengiriman,
 Shipping Address,Alamat Pengiriman,
 "Shipping Address does not have country, which is required for this Shipping Rule","Alamat Pengiriman tidak memiliki negara, yang diperlukan untuk Aturan Pengiriman ini",
 Shipping rule only applicable for Buying,Aturan pengiriman hanya berlaku untuk Pembelian,
@@ -2564,7 +2527,6 @@
 Split Batch,Split Batch,
 Split Issue,Terbagi Masalah,
 Sports,Olahraga,
-Standard,Standar,
 Standard Buying,Standar Pembelian,
 Standard Selling,Standard Jual,
 Standard contract terms for Sales or Purchase.,Ketentuan kontrak standar untuk Penjualan atau Pembelian.,
@@ -2731,7 +2693,6 @@
 Terms and Conditions,Syarat dan ketentuan,
 Terms and Conditions Template,Syarat dan Ketentuan Template,
 Territory,Wilayah,
-Test,tes,
 Thank you for your business!,Terima kasih untuk bisnis Anda!,
 The 'From Package No.' field must neither be empty nor it's value less than 1.,&#39;Dari Paket No.&#39; lapangan tidak boleh kosong atau nilainya kurang dari 1.,
 The Brand,Merek,
@@ -2848,7 +2809,6 @@
 Total (Without Tax),Total (Tanpa Pajak),
 Total Achieved,Total Dicapai,
 Total Actual,Total Aktual,
-Total Allocated Leaves,Total Cuti Yang Dialokasikan,
 Total Amount,Nilai Total,
 Total Amount Credited,Jumlah Total Dikreditkan,
 Total Applicable Charges in Purchase Receipt Items table must be same as Total Taxes and Charges,Total Biaya Berlaku di Purchase meja Jenis Penerimaan harus sama dengan jumlah Pajak dan Biaya,
@@ -2892,7 +2852,6 @@
 Total(Amt),Total (Amt),
 Total(Qty),Total (Qty),
 Traceability,Lacak,
-Traceback,Melacak kembali,
 Track Leads by Lead Source.,Lacak Memimpin oleh Sumber Utama.,
 Transaction,Transaksi,
 Transaction Date,Transaction Tanggal,
@@ -2930,7 +2889,6 @@
 UOM Conversion factor is required in row {0},Faktor UOM Konversi diperlukan berturut-turut {0},
 UOM coversion factor required for UOM: {0} in Item: {1},Faktor coversion UOM diperlukan untuk UOM: {0} di Item: {1},
 URL,URL,
-Unable to find DocType {0},Tidak dapat menemukan DocType {0},
 Unable to find exchange rate for {0} to {1} for key date {2}. Please create a Currency Exchange record manually,Tidak dapat menemukan nilai tukar untuk {0} sampai {1} untuk tanggal kunci {2}. Buat catatan Currency Exchange secara manual,
 Unable to find score starting at {0}. You need to have standing scores covering 0 to 100,Tidak dapat menemukan skor mulai dari {0}. Anda harus memiliki nilai berdiri yang mencakup 0 sampai 100,
 Unable to find variable: ,Tidak dapat menemukan variabel:,
@@ -2960,7 +2918,6 @@
 Upload your letter head and logo. (you can edit them later).,Unggah kop surat dan logo. (Anda dapat mengubahnya nanti).,
 Upper Income,Penghasilan Atas,
 Use Sandbox,Gunakan Sandbox,
-Used Leaves,Cuti Yang Telah Digunakan,
 User,Pengguna,
 User ID,ID Pengguna,
 User ID not set for Employee {0},User ID tidak ditetapkan untuk Karyawan {0},
@@ -3051,7 +3008,6 @@
 Website Settings,Pengaturan situs web,
 Wednesday,Rabu,
 Week,Minggu,
-Weekdays,Hari kerja,
 Weekly,Mingguan,
 "Weight is mentioned,\nPlease mention ""Weight UOM"" too","Berat disebutkan, \n Sebutkan ""Berat UOM"" terlalu",
 Welcome email sent,Email Selamat Datang telah dikirim,
@@ -3072,7 +3028,6 @@
 Work Order {0} must be submitted,Perintah Kerja {0} harus diserahkan,
 Work Orders Created: {0},Pesanan Pekerjaan Dibuat: {0},
 Work-in-Progress Warehouse is required before Submit,Kerja-in-Progress Gudang diperlukan sebelum Submit,
-Workflow,Alur Kerja,
 Working,Kerja,
 Working Hours,Jam kerja,
 Workstation,Workstation,
@@ -3102,7 +3057,6 @@
 You need to be a user other than Administrator with System Manager and Item Manager roles to register on Marketplace.,Anda harus menjadi pengguna selain Administrator dengan Manajer Sistem dan peran Pengelola Item untuk mendaftar di Marketplace.,
 You need to be a user with System Manager and Item Manager roles to add users to Marketplace.,Anda harus menjadi pengguna dengan peran Manajer Sistem dan Manajer Item untuk menambahkan pengguna ke Marketplace.,
 You need to be a user with System Manager and Item Manager roles to register on Marketplace.,Anda harus menjadi pengguna dengan peran Manajer Sistem dan Manajer Item untuk mendaftar di Marketplace.,
-You need to be logged in to access this page,Anda harus login untuk mengakses halaman ini,
 You need to enable Shopping Cart,Anda harus mengaktifkan Keranjang Belanja,
 You will lose records of previously generated invoices. Are you sure you want to restart this subscription?,Anda akan kehilangan rekaman faktur yang dibuat sebelumnya. Anda yakin ingin memulai ulang langganan ini?,
 Your Organization,Organisasi Anda,
@@ -3218,7 +3172,6 @@
 Assigned To,Ditugaskan Kepada,
 Chat,Obrolan,
 Completed By,Diselesaikan oleh,
-County,daerah,
 Day of Week,Hari dalam seminggu,
 "Dear System Manager,","Kepada System Manager Yth.,",
 Default Value,Nilai Awal,
@@ -3229,31 +3182,21 @@
 Fieldtype,Fieldtype,
 Help Articles,Bantuan Artikel,
 ID,ID,
-Images,Gambar,
 Import,Impor,
 Language,Bahasa,
 Likes,Suka,
 Merge with existing,Merger dengan yang ada,
-Office,Kantor,
 Orientation,Orientasi,
 Parent,Induk,
-Passive,Pasif,
 Payment Failed,Pembayaran gagal,
-Permanent,Permanen,
 Personal,Pribadi,
-Plant,Tanaman,
 Post,Post,
-Postal,Pos,
 Postal Code,kode Pos,
-Previous,Kembali,
 Provider,Pemberi,
 Read Only,Read Only,
 Recipient,Penerima,
 Reviews,Ulasan,
 Sender,Pengirim,
-Shop,Toko,
-Subsidiary,Anak Perusahaan,
-There is some problem with the file url: {0},Ada beberapa masalah dengan url berkas: {0},
 There were errors while sending email. Please try again.,Ada kesalahan saat mengirim email. Silakan coba lagi.,
 Values Changed,Nilai Berubah,
 or,atau,
@@ -3280,19 +3223,16 @@
 Quality Feedback Template,Template Umpan Balik Kualitas,
 Rules for applying different promotional schemes.,Aturan untuk menerapkan berbagai skema promosi.,
 Show {0},Tampilkan {0},
-"Special Characters except '-', '#', '.', '/', '{{' and '}}' not allowed in naming series {0}","Karakter Khusus kecuali &quot;-&quot;, &quot;#&quot;, &quot;.&quot;, &quot;/&quot;, &quot;{{&quot; Dan &quot;}}&quot; tidak diizinkan dalam rangkaian penamaan {0}",
 Target Details,Detail Target,
 {0} already has a Parent Procedure {1}.,{0} sudah memiliki Prosedur Induk {1}.,
 API,API,
 Annual,Tahunan,
 Change,Perubahan,
 Contact Email,Email Kontak,
-Export Type,Jenis ekspor,
 From Date,Dari Tanggal,
 Group By,Dikelompokkan oleh,
 Invalid URL,URL tidak valid,
 Landscape,Pemandangan,
-Last Sync On,Sinkron Terakhir Aktif,
 Naming Series,Series Penamaan,
 No data to export,Tidak ada data untuk diekspor,
 Portrait,Potret,
@@ -3302,7 +3242,6 @@
 Show Document,Perlihatkan Dokumen,
 Show Traceback,Perlihatkan Traceback,
 Video,Video,
-Webhook Secret,Rahasia Webhook,
 % Of Grand Total,% Dari Total Grand,
 <b>Company</b> is a mandatory filter.,<b>Perusahaan</b> adalah filter wajib.,
 <b>From Date</b> is a mandatory filter.,<b>From Date</b> adalah filter wajib.,
@@ -3358,7 +3297,6 @@
 BOM Comparison Tool,Alat Perbandingan BOM,
 BOM recursion: {0} cannot be child of {1},Rekursi BOM: {0} tidak boleh anak dari {1},
 BOM recursion: {0} cannot be parent or child of {1},Rekursi BOM: {0} tidak boleh orang tua atau anak dari {1},
-Back to Home,Kembali ke rumah,
 Back to Messages,Kembali ke Pesan,
 Bank Data mapper doesn't exist,Mapper Data Bank tidak ada,
 Bank Details,Rincian bank,
@@ -3420,7 +3358,6 @@
 Currency,Mata uang,
 Current Status,Status saat ini,
 Customer PO,PO pelanggan,
-Customize,Sesuaikan,
 Daily,Sehari-hari,
 Date,Tanggal,
 Date of Birth cannot be greater than Joining Date.,Tanggal Lahir tidak boleh lebih dari Tanggal Bergabung.,
@@ -3454,7 +3391,6 @@
 ERPNext could not find any matching payment entry,ERPNext tidak dapat menemukan entri pembayaran yang cocok,
 Earliest Age,Usia paling awal,
 Edit Details,Edit Detail,
-Edit Profile,Edit Profile,
 Either GST Transporter ID or Vehicle No is required if Mode of Transport is Road,ID Transporter GST atau No Kendaraan diperlukan jika Mode Transportasi adalah Jalan,
 Email,Surel,
 Email Campaigns,Kampanye Email,
@@ -3482,7 +3418,6 @@
 Fetch Items from Warehouse,Ambil Item dari Gudang,
 Fetching...,Mengambil ...,
 Field,Bidang,
-File Manager,File Manager,
 Filters,Penyaring,
 Finding linked payments,Menemukan pembayaran yang tertaut,
 Fleet Management,Manajemen armada,
@@ -3521,7 +3456,6 @@
 Incorrect Warehouse,Gudang Tidak Benar,
 Invalid Barcode. There is no Item attached to this barcode.,Kode Batang Tidak Valid. Tidak ada Barang yang terlampir pada barcode ini.,
 Invalid credentials,Kredensial tidak valid,
-Invite as User,Undang sebagai Pengguna,
 Issue Priority.,Prioritas Masalah.,
 Issue Type.,Jenis Masalah.,
 "It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","Tampaknya ada masalah dengan konfigurasi strip server. Jika terjadi kegagalan, jumlah itu akan dikembalikan ke akun Anda.",
@@ -3564,7 +3498,6 @@
 New Invoice,Faktur Baru,
 New Payment,Pembayaran Baru,
 New release date should be in the future,Tanggal rilis baru harus di masa depan,
-Newsletter,Laporan berkala,
 No Account matched these filters: {},Tidak ada Akun yang cocok dengan filter ini: {},
 No communication found.,Tidak ada komunikasi yang ditemukan.,
 No correct answer is set for {0},Tidak ada jawaban yang benar untuk {0},
@@ -3640,7 +3573,6 @@
 Please setup a default bank account for company {0},Harap siapkan rekening bank default untuk perusahaan {0},
 Please specify,Silakan tentukan,
 Please specify a {0},Silakan tentukan {0},lead
-Printing,Pencetakan,
 Priority,Prioritas,
 Priority has been changed to {0}.,Prioritas telah diubah menjadi {0}.,
 Priority {0} has been repeated.,Prioritas {0} telah diulang.,
@@ -3649,7 +3581,6 @@
 Project,Proyek,
 Provide the academic year and set the starting and ending date.,Berikan tahun akademik dan tetapkan tanggal mulai dan berakhir.,
 Public token is missing for this bank,Token publik tidak ada untuk bank ini,
-Publish,Menerbitkan,
 Publish 1 Item,Publikasikan 1 Item,
 Publish Items,Publikasikan Item,
 Publish More Items,Publikasikan Item Lainnya,
@@ -3677,7 +3608,6 @@
 Reconciled,Berdamai,
 Recruitment,Pengerahan,
 Red,Merah,
-Refreshing,Segar,
 Release date must be in the future,Tanggal rilis harus di masa mendatang,
 Relieving Date must be greater than or equal to Date of Joining,Tanggal pelepasan harus lebih besar dari atau sama dengan Tanggal Bergabung,
 Rename,Ubah nama,
@@ -3721,7 +3651,6 @@
 Search for a payment,Cari pembayaran,
 Search for anything ...,Cari apa saja ...,
 Search results for,Hasil pencarian,
-Select All,Pilih semua,
 Select Difference Account,Pilih Perbedaan Akun,
 Select a Default Priority.,Pilih Prioritas Default.,
 Select a company,Pilih perusahaan,
@@ -3740,11 +3669,9 @@
 Service Level Agreement has been changed to {0}.,Perjanjian Tingkat Layanan telah diubah menjadi {0}.,
 Service Level Agreement was reset.,Perjanjian Tingkat Layanan telah diatur ulang.,
 Service Level Agreement with Entity Type {0} and Entity {1} already exists.,Perjanjian Tingkat Layanan dengan Jenis Entitas {0} dan Entitas {1} sudah ada.,
-Set,Tetapkan,
 Set Meta Tags,Setel Tag Meta,
 Set {0} in company {1},Setel {0} di perusahaan {1},
 Setup,Pengaturan,
-Setup Wizard,Setup Wizard,
 Shift Management,Manajemen Pergeseran,
 Show Future Payments,Tampilkan Pembayaran di Masa Mendatang,
 Show Linked Delivery Notes,Tampilkan Catatan Pengiriman Tertaut,
@@ -3815,7 +3742,6 @@
 Unreconciled,Tidak direkonsiliasi,
 Unsupported GST Category for E-Way Bill JSON generation,Kategori GST yang tidak didukung untuk pembuatan JSON e-Way Bill,
 Update,Perbaruan,
-Update Details,Perbarui Rincian,
 Update Taxes for Items,Perbarui Pajak untuk Barang,
 "Upload a bank statement, link or reconcile a bank account","Unggah laporan bank, tautkan atau rekonsiliasi rekening bank",
 Upload a statement,Unggah pernyataan,
@@ -3839,7 +3765,6 @@
 XML Files Processed,File XML Diproses,
 Year,Tahun,
 Yearly,Tahunan,
-You,Anda,
 You are not allowed to enroll for this course,Anda tidak diizinkan mendaftar untuk kursus ini,
 You are not enrolled in program {0},Anda tidak terdaftar dalam program {0},
 You can Feature upto 8 items.,Anda dapat Fitur hingga 8 item.,
@@ -3856,7 +3781,6 @@
 e-Way Bill already exists for this document,RUU e-Way sudah ada untuk dokumen ini,
 woocommerce - {0},woocommerce - {0},
 {0} Coupon used are {1}. Allowed quantity is exhausted,{0} Kupon yang digunakan adalah {1}. Kuantitas yang diizinkan habis,
-{0} Name,{0} Nama,
 {0} Operations: {1},{0} Operasi: {1},
 {0} bank transaction(s) created,{0} transaksi bank dibuat,
 {0} bank transaction(s) created and {1} errors,{0} transaksi bank dibuat dan {1} kesalahan,
@@ -3875,17 +3799,13 @@
 Total Income,Jumlah pemasukan,
 Total Income This Year,Total Penghasilan Tahun Ini,
 Barcode,Kode batang,
-Bold,Mencolok,
-Center,Pusat,
 Clear,Bersih,
-Comment,Komentar,
 Comments,Komentar,
 DocType,DocType,
 Download,Unduh,
 Left,Waktu tersisa,
 Link,Tautan,
 New,Baru,
-Not Found,Tidak ditemukan,
 Print,Mencetak,
 Reference Name,nama referensi,
 Refresh,Segarkan,
@@ -3908,7 +3828,6 @@
 Email Id,Id Email,
 No,No,
 Reference Doctype,Referensi DocType,
-User Id,Identitas pengguna,
 Yes,Ya,
 Actual ,Aktual,
 Add to cart,Tambahkan ke Keranjang Belanja,
@@ -4304,7 +4223,6 @@
 e.g Adjustments for:,misalnya Penyesuaian untuk:,
 Section Subtotal,Bagian Subtotal,
 Section Footer,Bagian footer,
-Position,Posisi,
 Cash Flow Mapping,Pemetaan Arus Kas,
 Select Maximum Of 1,Pilih Maksimum 1,
 Is Finance Cost,Apakah Biaya Keuangan?,
@@ -4936,7 +4854,6 @@
 Previous Business Day,Hari Bisnis Sebelumnya,
 Next Business Day,Hari bisnis selanjutnya,
 Urgent,Mendesak,
-Crop,Tanaman,
 Crop Name,Nama tanaman,
 Scientific Name,Nama ilmiah,
 "You can define all the tasks which need to carried out for this crop here. The day field is used to mention the day on which the task needs to be carried out, 1 being the 1st day, etc.. ","Anda dapat menentukan semua tugas yang perlu dilakukan untuk tanaman ini di sini. Bidang hari digunakan untuk menyebutkan hari dimana tugas tersebut perlu dilakukan, 1 menjadi hari pertama, dll.",
@@ -5441,7 +5358,6 @@
 To TIme,Untuk Waktu,
 Course End Date,Tentu saja Tanggal Akhir,
 Course Topic,Topik Kursus,
-Topic,Tema,
 Topic Name,topik Nama,
 Education Settings,Pengaturan Pendidikan,
 Current Academic Year,Tahun Akademik Saat Ini,
@@ -5516,7 +5432,6 @@
 Check this if the Student is residing at the Institute's Hostel.,Periksa ini jika Siswa berada di Institute&#39;s Hostel.,
 Walking,Berjalan,
 Institute's Bus,Bus Institut,
-Public Transport,Transportasi umum,
 Self-Driving Vehicle,Kendaraan Mengemudi Sendiri,
 Pick/Drop by Guardian,Pick / Drop oleh Guardian,
 Enrolled courses,Kursus yang terdaftar,
@@ -5697,7 +5612,6 @@
 Default Cost Center,Standar Biaya Pusat,
 Undeposited Funds Account,Rekening Dana yang Belum Ditentukan,
 Shopify Log,Shopify Log,
-Request Data,Meminta Data,
 Shopify Settings,Pengaturan Shopify,
 status html,status html,
 Enable Shopify,Aktifkan Shopify,
@@ -5817,7 +5731,6 @@
 Exercise Instructions,Instruksi Latihan,
 Exercise Video,Video Latihan,
 Exercise Steps,Langkah Latihan,
-Steps,Langkah,
 Steps Table,Tabel Langkah,
 Exercise Type Step,Langkah Jenis Latihan,
 Max number of visit,Jumlah kunjungan maksimal,
@@ -6001,7 +5914,6 @@
 Patient Encounter Symptom,Gejala Pertemuan Pasien,
 HLC-PMR-.YYYY.-,HLC-PMR-.YYYY.-,
 Attach Medical Record,Lampirkan Rekam Medis,
-Reference DocType,Referensi DocType,
 Spouse,Pasangan,
 Family,Keluarga,
 Schedule Details,Detail Jadwal,
@@ -6983,16 +6895,8 @@
 HTML / Banner that will show on the top of product list.,HTML / Banner yang akan muncul di bagian atas daftar produk.,
 Set prefix for numbering series on your transactions,Mengatur awalan untuk penomoran seri pada transaksi Anda,
 Setup Series,Pengaturan Series,
-Select Transaction,Pilih Transaksi,
-Help HTML,Bantuan HTML,
-Series List for this Transaction,Daftar Series Transaksi ini,
-User must always select,Pengguna harus selalu pilih,
-Check this if you want to force the user to select a series before saving. There will be no default if you check this.,Periksa ini jika Anda ingin untuk memaksa pengguna untuk memilih seri sebelum menyimpan. Tidak akan ada default jika Anda memeriksa ini.,
 Update Series,Perbarui Seri,
 Change the starting / current sequence number of an existing series.,Mengubah mulai / nomor urut saat ini dari seri yang ada.,
-Prefix,Awalan,
-This is the number of the last created transaction with this prefix,Ini adalah jumlah transaksi yang diciptakan terakhir dengan awalan ini,
-Update Series Number,Perbarui Nomor Seri,
 Quotation Lost Reason,Alasan Kalah Penawaran,
 A third party distributor / dealer / commission agent / affiliate / reseller who sells the companies products for a commission.,Seorang distributor pihak ketiga / agen / komisi agen / affiliate / reseller yang menjual produk-produk perusahaan untuk komisi.,
 Sales Partner Name,Penjualan Mitra Nama,
@@ -7687,7 +7591,6 @@
 Warehouse wise Item Balance Age and Value,Gudang Item yang bijak Saldo Umur dan Nilai,
 Work Order Stock Report,Laporan Stock Pesanan Kerja,
 Work Orders in Progress,Perintah Kerja Sedang Berlangsung,
-Validation Error,Kesalahan Validasi,
 Automatically Process Deferred Accounting Entry,Secara Otomatis Memproses Entri Akuntansi yang Ditangguhkan,
 Bank Clearance,Izin Bank,
 Bank Clearance Detail,Detail Izin Bank,
@@ -7724,45 +7627,7 @@
 Therapy Plan: ,Rencana Terapi:,
 Total Counts Targeted: ,Jumlah Total yang Ditargetkan:,
 Total Counts Completed: ,Jumlah Total Selesai:,
-Andaman and Nicobar Islands,Kepulauan Andaman dan Nicobar,
-Andhra Pradesh,Andhra Pradesh,
-Arunachal Pradesh,Arunachal Pradesh,
-Assam,Assam,
-Bihar,Bihar,
-Chandigarh,Chandigarh,
-Chhattisgarh,Chhattisgarh,
-Dadra and Nagar Haveli,Dadra dan Nagar Haveli,
-Daman and Diu,Daman dan Diu,
-Delhi,Delhi,
-Goa,Goa,
-Gujarat,Gujarat,
-Haryana,Haryana,
-Himachal Pradesh,Himachal Pradesh,
-Jammu and Kashmir,Jammu dan Kashmir,
-Jharkhand,Jharkhand,
-Karnataka,Karnataka,
-Kerala,Kerala,
-Lakshadweep Islands,Kepulauan Lakshadweep,
-Madhya Pradesh,Madhya Pradesh,
-Maharashtra,Maharashtra,
-Manipur,Manipur,
-Meghalaya,Meghalaya,
-Mizoram,Mizoram,
-Nagaland,Nagaland,
-Odisha,Odisha,
-Other Territory,Wilayah Lain,
-Pondicherry,Pondicherry,
-Punjab,Punjab,
-Rajasthan,Rajasthan,
-Sikkim,Sikkim,
-Tamil Nadu,Tamil Nadu,
-Telangana,Telangana,
-Tripura,Tripura,
-Uttar Pradesh,Uttar Pradesh,
-Uttarakhand,Uttarakhand,
-West Bengal,Benggala Barat,
 Is Mandatory,Apakah Wajib,
-Published on,Diterbitkan di,
 Service Received But Not Billed,Layanan Diterima Tapi Tidak Ditagih,
 Deferred Accounting Settings,Pengaturan Akuntansi yang Ditangguhkan,
 Book Deferred Entries Based On,Buku Entri Ditunda Berdasarkan,
@@ -8035,8 +7900,6 @@
 Worksheet Instructions,Instruksi Lembar Kerja,
 Result Legend Print,Hasil Legenda Cetak,
 Print Position,Posisi Cetak,
-Bottom,Bawah,
-Top,Puncak,
 Both,Kedua,
 Result Legend,Hasil Legenda,
 Lab Tests,Tes Lab,
@@ -8081,12 +7944,10 @@
 Approvers,Pemberi persetujuan,
 The first Approver in the list will be set as the default Approver.,Pemberi Persetujuan pertama dalam daftar akan ditetapkan sebagai Pemberi Persetujuan default.,
 Shift Request Approver,Penyetuju Permintaan Shift,
-PAN Number,Nomor PAN,
 Provident Fund Account,Rekening Dana Provident,
 MICR Code,Kode MICR,
 Repay unclaimed amount from salary,Membayar kembali jumlah gaji yang belum diklaim,
 Deduction from salary,Pemotongan gaji,
-Expired Leaves,Daun kadaluarsa,
 If this is not checked the loan by default will be considered as a Demand Loan,"Jika tidak dicentang, pinjaman secara default akan dianggap sebagai Pinjaman Permintaan",
 This account is used for booking loan repayments from the borrower and also disbursing loans to the borrower,Rekening ini digunakan untuk membukukan pembayaran pinjaman dari peminjam dan juga menyalurkan pinjaman kepada peminjam,
 This account is capital account which is used to allocate capital for loan disbursal account ,Akun ini adalah akun modal yang digunakan untuk mengalokasikan modal ke akun pencairan pinjaman,
@@ -8844,3 +8705,41 @@
 Creating Purchase Order ...,Membuat Pesanan Pembelian ...,
 "Select a Supplier from the Default Suppliers of the items below. On selection, a Purchase Order will be made against items belonging to the selected Supplier only.","Pilih Pemasok dari Pemasok Default item di bawah ini. Saat dipilih, Pesanan Pembelian akan dibuat terhadap barang-barang milik Pemasok terpilih saja.",
 Row #{}: You must select {} serial numbers for item {}.,Baris # {}: Anda harus memilih {} nomor seri untuk item {}.,
+Add Comment,Tambahkan komentar,
+More...,Lebih...,
+Notes,Catatan,
+Payment Gateway,Gerbang pembayaran,
+Payment Gateway Name,Nama Gateway Pembayaran,
+Payments,2. Payment (Pembayaran),
+Plan Name,Nama rencana,
+Portal,Pintu gerbang,
+Scan Barcode,Pindai Kode Batang,
+Some information is missing,Beberapa informasi yang hilang,
+Successful,Sukses,
+Tools,Alat-alat,
+Use Sandbox,Gunakan Sandbox,
+Busy,Sibuk,
+Completed By,Diselesaikan oleh,
+Payment Failed,Pembayaran gagal,
+Column {0},Kolom {0},
+Field Mapping,Pemetaan Bidang,
+Not Specified,Tidak ditentukan,
+Update Type,Jenis Pembaruan,
+Dr,Dr,
+End Time,Waktu Akhir,
+Fetching...,Mengambil ...,
+"It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","Tampaknya ada masalah dengan konfigurasi strip server. Jika terjadi kegagalan, jumlah itu akan dikembalikan ke akun Anda.",
+Looks like someone sent you to an incomplete URL. Please ask them to look into it.,Sepertinya seseorang mengirimkan ke URL yang tidak lengkap. Silakan meminta mereka untuk melihat ke dalamnya.,
+Master,Nahkoda,
+Pay,Membayar,
+You can also copy-paste this link in your browser,Anda juga dapat copy-paste link ini di browser Anda,
+Verified By,Diverifikasi oleh,
+Invalid naming series (. missing) for {0},Seri penamaan tidak valid (. Hilang) untuk {0},
+Phone Number,Nomor telepon,
+Account SID,SID Akun,
+Global Defaults,Standar Global,
+Is Mandatory,Apakah Wajib,
+WhatsApp,Ada apa,
+Make a call,Menelpon,
+Approve,Menyetujui,
+Reject,Menolak,
diff --git a/erpnext/translations/is.csv b/erpnext/translations/is.csv
index 1bf6b4c..7687e4a 100644
--- a/erpnext/translations/is.csv
+++ b/erpnext/translations/is.csv
@@ -113,7 +113,6 @@
 Add Items,Bæta Hlutir,
 Add Leads,Bæta við leiðum,
 Add Multiple Tasks,Bæta við mörgum verkefnum,
-Add Row,Bæta Row,
 Add Sales Partners,Bæta við söluaðilum,
 Add Serial No,Bæta Serial Nei,
 Add Students,Bæta Nemendur,
@@ -211,9 +210,7 @@
 An error occurred during the update process,Villa kom upp við uppfærsluferlið,
 "An item exists with same name ({0}), please change the item group name or rename the item",Atriði til staðar með sama nafni ({0}) skaltu breyta liður heiti hópsins eða endurnefna hlutinn,
 Analyst,Analyst,
-Analytics,Analytics,
 Annual Billing: {0},Árleg Billing: {0},
-Anonymous,Nafnlaus,
 Another Budget record '{0}' already exists against {1} '{2}' and account '{3}' for fiscal year {4},Annað fjárhagsáætlun &quot;{0}&quot; er nú þegar fyrir hendi við {1} &#39;{2}&#39; og reikning &#39;{3}&#39; fyrir reikningsár {4},
 Another Period Closing Entry {0} has been made after {1},Annar Tímabil Lokar Entry {0} hefur verið gert eftir {1},
 Another Sales Person {0} exists with the same Employee id,Annar velta manneskja {0} staðar með sama Starfsmannafélag id,
@@ -283,14 +280,12 @@
 Attendance not submitted for {0} as {1} on leave.,Þáttur ekki sendur fyrir {0} sem {1} í leyfi.,
 Attribute table is mandatory,Eiginleiki borð er nauðsynlegur,
 Attribute {0} selected multiple times in Attributes Table,Eiginleiki {0} valin mörgum sinnum í eigindum töflu,
-Author,Höfundur,
 Authorized Signatory,Leyft Undirritaður,
 Auto Material Requests Generated,Auto Efni Beiðnir Myndað,
 Auto Repeat,Sjálfvirk endurtaka,
 Auto repeat document updated,Sjálfvirk endurtaka skjal uppfært,
 Automotive,Automotive,
 Available,Laus,
-Available Leaves,Lausar blöð,
 Available Qty,Laus magn,
 Available Selling,Laus selja,
 Available for use date is required,Til staðar er hægt að nota dagsetninguna,
@@ -340,7 +335,6 @@
 Base URL,Undirstaða vefslóð,
 Based On,Byggt á,
 Based On Payment Terms,Byggt á greiðsluskilmálum,
-Basic,Basic,
 Batch,Hópur,
 Batch Entries,Hópafærslur,
 Batch ID is mandatory,Hópur auðkenni er nauðsynlegur,
@@ -361,7 +355,6 @@
 Billable Hours,Reikningstímar,
 Billed,billed,
 Billed Amount,billed Upphæð,
-Billing,innheimtu,
 Billing Address,Greiðslufang,
 Billing Address is same as Shipping Address,Innheimtu heimilisfang er það sama og póstfang,
 Billing Amount,Innheimta Upphæð,
@@ -560,7 +553,6 @@
 Consumed Qty,neytt Magn,
 Consumer Products,Consumer Products,
 Contact,Viltu samband við,
-Contact Details,Tengiliðaupplýsingar,
 Contact Us,Hafðu samband við okkur,
 Content,innihald,
 Content Masters,Innihald meistarar,
@@ -715,7 +707,6 @@
 Date of Joining,Dagsetning Tengja,
 Date of Joining must be greater than Date of Birth,Dagsetning Tengja verður að vera meiri en Fæðingardagur,
 Date of Transaction,Dagsetning viðskipta,
-Datetime,datetime,
 Day,dagur,
 Debit,debet,
 Debit ({0}),Skuldfærslu ({0}),
@@ -874,7 +865,6 @@
 Employee cannot report to himself.,Starfsmaður getur ekki skýrslu við sjálfan sig.,
 Employee {0} has already applied for {1} between {2} and {3} : ,Starfsmaður {0} hefur þegar sótt um {1} á milli {2} og {3}:,
 Employee {0} of grade {1} have no default leave policy,Starfsmaður {0} í einkunn {1} hefur ekki sjálfgefið eftirlitsstefnu,
-Enable,Virkja,
 Enable / disable currencies.,Virkja / slökkva á gjaldmiðla.,
 Enabled,virkt,
 "Enabling 'Use for Shopping Cart', as Shopping Cart is enabled and there should be at least one Tax Rule for Shopping Cart","Virkjun &#39;Nota fyrir Shopping Cart&#39;, eins og Shopping Cart er virkt og það ætti að vera að minnsta kosti einn Tax Rule fyrir Shopping Cart",
@@ -905,7 +895,6 @@
 Error: Not a valid id?,Villa: Ekki gild id?,
 Estimated Cost,Áætlaður kostnaður,
 "Even if there are multiple Pricing Rules with highest priority, then following internal priorities are applied:","Jafnvel ef það eru margar Verðlagning Reglur með hæsta forgang, eru þá eftirfarandi innri forgangsmál beitt:",
-Event,Event,
 Exchange Gain/Loss,Gengishagnaður / tap,
 Exchange Rate Revaluation master.,Gjaldeyrismatsmeistari.,
 Exchange Rate must be same as {0} {1} ({2}),Gengi að vera það sama og {0} {1} ({2}),
@@ -1032,7 +1021,6 @@
 From value must be less than to value in row {0},Frá gildi verður að vera minna en að verðmæti í röð {0},
 From {0} | {1} {2},Frá {0} | {1} {2},
 Fulfillment,fylling,
-Full,Fullt,
 Full Name,Fullt nafn,
 Fully Depreciated,Alveg afskrifaðar,
 Furnitures and Fixtures,Húsgögnum og innréttingum,
@@ -1133,7 +1121,6 @@
 Hub Sync ID,Hub Sync ID,
 Human Resource,Mannauðs,
 Human Resources,Mannauður,
-IFSC Code,IFSC-kóði,
 IGST Amount,IGST upphæð,
 IP Address,IP-tölu,
 ITC Available (whether in full op part),ITC í boði (hvort sem það er í heild hluta),
@@ -1185,7 +1172,6 @@
 Ineligible ITC,Óhæfur ITC,
 Initiated,hafin,
 Inpatient Record,Sjúkraskrá,
-Insert,Setja inn,
 Installation Note,uppsetning Note,
 Installation Note {0} has already been submitted,Uppsetning Ath {0} hefur þegar verið lögð fram,
 Installation date cannot be before delivery date for Item {0},Uppsetning dagsetning getur ekki verið áður fæðingardag fyrir lið {0},
@@ -1197,7 +1183,6 @@
 Insurance Start date should be less than Insurance End date,Tryggingar Start dagsetning ætti að vera minna en tryggingar lokadagsetning,
 Integrated Tax,Samþættur skattur,
 Inter-State Supplies,Ríkisbirgðir,
-Interests,Áhugasvið,
 Internet Publishing,internet Publishing,
 Intra-State Supplies,Innanríkisbirgðir,
 Introduction,kynning,
@@ -1316,7 +1301,6 @@
 Lab testing datetime cannot be before collection datetime,Lab prófunartímabil getur ekki verið fyrir dagsetningu söfnunartíma,
 Label,Label,
 Laboratory,Rannsóknarstofa,
-Language Name,Tungumál Name,
 Large,stór,
 Last Communication,Síðasta samskipti,
 Last Communication Date,Síðasti samskiptadagur,
@@ -1347,8 +1331,6 @@
 Letter Heads for print templates.,Bréf Heads fyrir prenta sniðmát.,
 Level,Level,
 Liability,Ábyrgð,
-License,License,
-Limit,Limit,
 Limit Crossed,Limit Crossed,
 Link to Material Request,Tengill við efnisbeiðni,
 List of all share transactions,Listi yfir alla hlutafjáreignir,
@@ -1359,7 +1341,6 @@
 Loans (Liabilities),Lán (skulda),
 Loans and Advances (Assets),Útlán og kröfur (inneign),
 Local,Local,
-Log,Log,
 Logs for maintaining sms delivery status,Logs fyrir að viðhalda SMS-sendingar stöðu,
 Lost,Lost,
 Lost Reasons,Týndar ástæður,
@@ -1445,7 +1426,6 @@
 Medical Department,Medical Department,
 Medical Record,Læknisskýrsla,
 Medium,Medium,
-Meeting,Fundur,
 Member Activity,Meðlimur Meðlimur,
 Member ID,Lykilorð,
 Member Name,Nafn Nafn,
@@ -1495,7 +1475,6 @@
 Multiple Variants,Margfeldi afbrigði,
 Multiple fiscal years exist for the date {0}. Please set company in Fiscal Year,Margar reikningsárin til fyrir dagsetningu {0}. Vinsamlegast settu fyrirtæki í Fiscal Year,
 Music,Tónlist,
-My Account,Minn reikningur,
 Name error: {0},Nafn villa: {0},
 Name of new Account. Note: Please don't create accounts for Customers and Suppliers,Nafn nýja reikninginn. Ath: Vinsamlegast bý ekki reikninga fyrir viðskiptavini og birgja,
 Name or Email is mandatory,Nafn eða netfang er nauðsynlegur,
@@ -1538,7 +1517,6 @@
 New credit limit is less than current outstanding amount for the customer. Credit limit has to be atleast {0},Ný hámarksupphæð er minna en núverandi útistandandi upphæð fyrir viðskiptavininn. Hámarksupphæð þarf að vera atleast {0},
 New task,Nýtt verkefni,
 New {0} pricing rules are created,Nýjar {0} verðlagningarreglur eru búnar til,
-Newsletters,Fréttabréf,
 Newspaper Publishers,dagblað Publishers,
 Next,næsta,
 Next Contact By cannot be same as the Lead Email Address,Næsta Samband með getur ekki verið sama og Lead netfanginu,
@@ -1686,7 +1664,6 @@
 Other,Annað,
 Other Reports,Aðrar skýrslur,
 "Other outward supplies(Nil rated,Exempted)","Aðrar birgðir út á við (ekki metnar, undanþegnar)",
-Others,Aðrir,
 Out Qty,Út magn,
 Out Value,út Value,
 Out of Order,Bilað,
@@ -1726,7 +1703,6 @@
 Party Type and Party is mandatory for {0} account,Samningsgerð og flokkur er nauðsynlegur fyrir {0} reikning,
 Party Type is mandatory,Party Type er nauðsynlegur,
 Party is mandatory,Party er nauðsynlegur,
-Password,Lykilorð,
 Past Due Date,Fyrri gjalddaga,
 Patient,Sjúklingur,
 Patient Appointment,Sjúklingaráð,
@@ -1784,7 +1760,6 @@
 Pharmaceutical,Pharmaceutical,
 Pharmaceuticals,Pharmaceuticals,
 Physician,Læknir,
-Pincode,PIN númer,
 Place Of Supply (State/UT),Framboðsstaður (ríki / UT),
 Place Order,Panta,
 Plan Name,Áætlun Nafn,
@@ -1896,7 +1871,6 @@
 Please select date,Vinsamlegast veldu dagsetningu,
 Please select item code,Vinsamlegast veldu atriði kóða,
 Please select month and year,Vinsamlegast veldu mánuði og ár,
-Please select prefix first,Vinsamlegast veldu forskeyti fyrst,
 Please select the Company,Vinsamlegast veldu félagið,
 Please select the Multiple Tier Program type for more than one collection rules.,Vinsamlegast veldu margfeldi tier program tegund fyrir fleiri en eina safn reglur.,
 Please select the assessment group other than 'All Assessment Groups',Vinsamlegast veldu matshópinn annað en &#39;Öll matshópa&#39;,
@@ -1913,7 +1887,6 @@
 Please set Company filter blank if Group By is 'Company',Vinsamlegast stilltu Fyrirtæki sía eyða ef Group By er &#39;Company&#39;,
 Please set Default Payroll Payable Account in Company {0},Vinsamlegast settu Default Launaskrá Greiðist reikning í félaginu {0},
 Please set Depreciation related Accounts in Asset Category {0} or Company {1},Vinsamlegast settu Fyrningar tengjast Accounts í eignaflokki {0} eða félaginu {1},
-Please set Email Address,Vinsamlegast setja netfangið,
 Please set GST Accounts in GST Settings,Vinsamlegast settu GST reikninga í GST stillingum,
 Please set Hotel Room Rate on {},Vinsamlegast settu herbergi fyrir herbergi á {},
 Please set Number of Depreciations Booked,Vinsamlegast settu Fjöldi Afskriftir Bókað,
@@ -1936,7 +1909,6 @@
 Please set the Email ID for the Student to send the Payment Request,Vinsamlegast stilltu netfangið fyrir nemandann til að senda greiðslubeiðni,
 Please set the Item Code first,Vinsamlegast settu vörulistann fyrst,
 Please set the Payment Schedule,Vinsamlegast stilltu greiðsluáætlunina,
-Please set the series to be used.,Vinsamlegast stilltu röðina sem á að nota.,
 Please set {0} for address {1},Vinsamlegast stilltu {0} fyrir heimilisfang {1},
 Please setup Students under Student Groups,Vinsamlegast settu upp nemendur undir nemendahópum,
 Please specify Company,Vinsamlegast tilgreinið Company,
@@ -1953,7 +1925,6 @@
 Point-of-Sale,Sölustaður,
 Point-of-Sale Profile,Point-af-sölu Profile,
 Portal,Portal,
-Portal Settings,Portal Stillingar,
 Possible Supplier,Möguleg birgir,
 Postal Expenses,pósti Útgjöld,
 Posting Date,staða Date,
@@ -2152,12 +2123,10 @@
 Reference No is mandatory if you entered Reference Date,Tilvísunarnúmer er nauðsynlegt ef þú færð viðmiðunardagur,
 Reference No.,Tilvísunarnúmer,
 Reference Number,Tilvísunarnúmer,
-Reference Owner,Tilvísun Eigandi,
 Reference Type,Tilvísun Type,
 "Reference: {0}, Item Code: {1} and Customer: {2}","Tilvísun: {0}, Liður: {1} og Viðskiptavinur: {2}",
 References,Tilvísanir,
 Refresh Token,Uppfæra Token,
-Region,Region,
 Register,Nýskráning,
 Rejected,hafnað,
 Related,Tengdar,
@@ -2179,7 +2148,6 @@
 Replace BOM and update latest price in all BOMs,Skiptu um BOM og uppfærðu nýjustu verð í öllum BOMs,
 Replied,svaraði,
 Report,skýrsla,
-Report Builder,skýrsla Builder,
 Report Type,Tegund skýrslu,
 Report Type is mandatory,Tegund skýrslu er nauðsynlegur,
 Reports,skýrslur,
@@ -2355,13 +2323,11 @@
 Same Company is entered more than once,Sama fyrirtæki er slegið oftar en einu sinni,
 Same item cannot be entered multiple times.,Sama atriði er ekki hægt inn mörgum sinnum.,
 Same supplier has been entered multiple times,Sama birgir hefur verið slegið mörgum sinnum,
-Sample,Dæmi um,
 Sample Collection,Sýnishorn,
 Sample quantity {0} cannot be more than received quantity {1},Sýni magn {0} getur ekki verið meira en móttekin magn {1},
 Sanctioned,bundnar,
 Sand,Sandur,
 Saturday,laugardagur,
-Saved,Vistað,
 Saving {0},Vistar {0},
 Scan Barcode,Skannaðu strikamerki,
 Schedule,Dagskrá,
@@ -2463,7 +2429,6 @@
 Series Updated,Series Uppfært,
 Series Updated Successfully,Series Uppfært Tókst,
 Series is mandatory,Series er nauðsynlegur,
-Series {0} already used in {1},Series {0} nú þegar notuð í {1},
 Service,þjónusta,
 Service Level Agreement,Þjónustustigssamningur,
 Service Level Agreement.,Þjónustustigssamningur.,
@@ -2479,7 +2444,6 @@
 Set Tax Rule for shopping cart,Setja Tax Regla fyrir körfunni,
 Set as Closed,Setja sem lokað,
 Set as Completed,Stillt sem lokið,
-Set as Default,Setja sem sjálfgefið,
 Set as Lost,Setja sem Lost,
 Set as Open,Setja sem Open,
 Set default inventory account for perpetual inventory,Stilltu sjálfgefinn birgðareikning fyrir varanlegan birgða,
@@ -2511,7 +2475,6 @@
 Shareholder,Hluthafi,
 Ship To State,Skip til ríkis,
 Shipments,Sendingar,
-Shipping,Sendingar,
 Shipping Address,Sendingar Address,
 "Shipping Address does not have country, which is required for this Shipping Rule","Sendingar Heimilisfang hefur ekki land, sem er krafist fyrir þessa Shipping Regla",
 Shipping rule only applicable for Buying,Sendingarregla gildir aðeins um kaup,
@@ -2564,7 +2527,6 @@
 Split Batch,Skipta lotu,
 Split Issue,Split Issue,
 Sports,Íþróttir,
-Standard,Standard,
 Standard Buying,Standard Buying,
 Standard Selling,Standard Selja,
 Standard contract terms for Sales or Purchase.,Stöðluð samningsskilyrði til sölu eða kaup.,
@@ -2731,7 +2693,6 @@
 Terms and Conditions,Skilmálar og skilyrði,
 Terms and Conditions Template,Skilmálar og skilyrði Snið,
 Territory,Territory,
-Test,próf,
 Thank you for your business!,Takk fyrir viðskiptin!,
 The 'From Package No.' field must neither be empty nor it's value less than 1.,&quot;Frá pakkningarnúmerinu&quot; sviði verður hvorki að vera tómt né það er minna en 1.,
 The Brand,The Brand,
@@ -2848,7 +2809,6 @@
 Total (Without Tax),Samtals (án skatta),
 Total Achieved,alls Náð,
 Total Actual,alls Raunveruleg,
-Total Allocated Leaves,Samtals úthlutað blöð,
 Total Amount,Heildarupphæð,
 Total Amount Credited,Heildarfjárhæð innheimt,
 Total Applicable Charges in Purchase Receipt Items table must be same as Total Taxes and Charges,Samtals greiðsla í kvittun atriðum borðið verður að vera það sama og Samtals skatta og gjöld,
@@ -2892,7 +2852,6 @@
 Total(Amt),Alls (Amt),
 Total(Qty),Alls (Magn),
 Traceability,Rekjanleiki,
-Traceback,Rekja aftur,
 Track Leads by Lead Source.,Fylgjast með leiðsögn með leiðsögn.,
 Transaction,Færsla,
 Transaction Date,Færsla Dagsetning,
@@ -2930,7 +2889,6 @@
 UOM Conversion factor is required in row {0},UOM viðskipta þáttur er krafist í röð {0},
 UOM coversion factor required for UOM: {0} in Item: {1},UOM coversion þáttur sem þarf til UOM: {0} í lið: {1},
 URL,URL,
-Unable to find DocType {0},Gat ekki fundið DocType {0},
 Unable to find exchange rate for {0} to {1} for key date {2}. Please create a Currency Exchange record manually,Ekki er hægt að finna gengi fyrir {0} til {1} fyrir lykilatriði {2}. Vinsamlegast búðu til gjaldeyrisviðskipti handvirkt,
 Unable to find score starting at {0}. You need to have standing scores covering 0 to 100,Ekki er hægt að finna stig sem byrjar á {0}. Þú þarft að standa frammistöðu sem nær yfir 0 til 100,
 Unable to find variable: ,Ekki tókst að finna breytu:,
@@ -2960,7 +2918,6 @@
 Upload your letter head and logo. (you can edit them later).,Hlaða bréf höfuðið og merki. (Þú getur breytt þeim síðar).,
 Upper Income,Efri tekjur,
 Use Sandbox,Nota Sandbox,
-Used Leaves,Notaðar blöð,
 User,Notandi,
 User ID,notandanafn,
 User ID not set for Employee {0},User ID ekki sett fyrir Starfsmaður {0},
@@ -3051,7 +3008,6 @@
 Website Settings,Vefsíða Stillingar,
 Wednesday,miðvikudagur,
 Week,vika,
-Weekdays,Virka daga,
 Weekly,Vikuleg,
 "Weight is mentioned,\nPlease mention ""Weight UOM"" too","Þyngd er getið, \ nVinsamlega nefna &quot;Þyngd UOM&quot; of",
 Welcome email sent,Velkomin sendur,
@@ -3072,7 +3028,6 @@
 Work Order {0} must be submitted,Vinnuskilyrði {0} verður að senda inn,
 Work Orders Created: {0},Vinna Pantanir Búið til: {0},
 Work-in-Progress Warehouse is required before Submit,Work-í-gangi Warehouse er krafist áður Senda,
-Workflow,workflow,
 Working,Vinna,
 Working Hours,Vinnutími,
 Workstation,Workstation,
@@ -3102,7 +3057,6 @@
 You need to be a user other than Administrator with System Manager and Item Manager roles to register on Marketplace.,Þú þarft að vera notandi annar en Stjórnandi með kerfisstjóra og hlutverkastjóra hlutverk til að skrá þig á markaðssvæði.,
 You need to be a user with System Manager and Item Manager roles to add users to Marketplace.,Þú þarft að vera notandi með kerfisstjóra og hlutverkastjóra hlutverk til að bæta notendum við markaðssvæði.,
 You need to be a user with System Manager and Item Manager roles to register on Marketplace.,Þú þarft að vera notandi með kerfisstjóra og hlutverkastjóra hlutverk til að skrá þig á markaðssvæðinu.,
-You need to be logged in to access this page,Þú þarft að vera innskráður til að opna þessa síðu,
 You need to enable Shopping Cart,Þú þarft að virkja Shopping Cart,
 You will lose records of previously generated invoices. Are you sure you want to restart this subscription?,Þú munt missa skrár af áður búin reikningum. Ertu viss um að þú viljir endurræsa þessa áskrift?,
 Your Organization,Stofnunin þín,
@@ -3218,7 +3172,6 @@
 Assigned To,Úthlutað til,
 Chat,Spjallaðu,
 Completed By,Lokið við,
-County,County,
 Day of Week,Vikudagur,
 "Dear System Manager,","Kæri System Manager,",
 Default Value,sjálfgefna gildið,
@@ -3229,31 +3182,21 @@
 Fieldtype,Fieldtype,
 Help Articles,Hjálp Greinar,
 ID,ID,
-Images,myndir,
 Import,innflutningur,
 Language,Tungumál,
 Likes,líkar,
 Merge with existing,Sameinast núverandi,
-Office,Office,
 Orientation,stefnumörkun,
 Parent,Parent,
-Passive,Hlutlaus,
 Payment Failed,greiðsla mistókst,
-Permanent,Varanleg,
 Personal,Starfsfólk,
-Plant,Plant,
 Post,Post,
-Postal,pósti,
 Postal Code,póstnúmer,
-Previous,fyrri,
 Provider,Útgefandi,
 Read Only,Lesið aðeins,
 Recipient,viðtakandi,
 Reviews,Umsagnir,
 Sender,sendanda,
-Shop,Shop,
-Subsidiary,dótturfélag,
-There is some problem with the file url: {0},Það er einhver vandamál með skrá url: {0},
 There were errors while sending email. Please try again.,Það komu upp villur við að senda tölvupóst. Vinsamlegast reyndu aftur.,
 Values Changed,gildi Breytt,
 or,eða,
@@ -3280,19 +3223,16 @@
 Quality Feedback Template,Sniðmát fyrir gæði gæða,
 Rules for applying different promotional schemes.,Reglur um beitingu mismunandi kynningarkerfa.,
 Show {0},Sýna {0},
-"Special Characters except '-', '#', '.', '/', '{{' and '}}' not allowed in naming series {0}","Sérstafir nema &quot;-&quot;, &quot;#&quot;, &quot;.&quot;, &quot;/&quot;, &quot;{{&quot; Og &quot;}}&quot; ekki leyfðar í nafngiftiröð {0}",
 Target Details,Upplýsingar um markmið,
 {0} already has a Parent Procedure {1}.,{0} er þegar með foreldraferli {1}.,
 API,API,
 Annual,Árleg,
 Change,Breyta,
 Contact Email,Netfang tengiliðar,
-Export Type,Útflutningsgerð,
 From Date,frá Dagsetning,
 Group By,Hópa eftir,
 Invalid URL,Ógild slóð,
 Landscape,Landslag,
-Last Sync On,Síðasta samstilling á,
 Naming Series,nafngiftir Series,
 No data to export,Engin gögn til útflutnings,
 Portrait,Andlitsmynd,
@@ -3302,7 +3242,6 @@
 Show Document,Sýna skjal,
 Show Traceback,Sýna Traceback,
 Video,Myndband,
-Webhook Secret,Webhook Secret,
 % Of Grand Total,% Af Grand Total,
 <b>Company</b> is a mandatory filter.,<b>Fyrirtækið</b> er lögboðin sía.,
 <b>From Date</b> is a mandatory filter.,<b>Frá Date</b> er lögboðin sía.,
@@ -3358,7 +3297,6 @@
 BOM Comparison Tool,BOM samanburðarverkfæri,
 BOM recursion: {0} cannot be child of {1},Endurkoma BOM: {0} getur ekki verið barn af {1},
 BOM recursion: {0} cannot be parent or child of {1},Endurkoma BOM: {0} getur ekki verið foreldri eða barn af {1},
-Back to Home,Aftur heim,
 Back to Messages,Aftur í skilaboð,
 Bank Data mapper doesn't exist,Bankagagnagrunnur er ekki til,
 Bank Details,Bankaupplýsingar,
@@ -3420,7 +3358,6 @@
 Currency,Gjaldmiðill,
 Current Status,Núverandi staða,
 Customer PO,Viðskiptavinur PO,
-Customize,sérsníða,
 Daily,Daily,
 Date,Dagsetning,
 Date of Birth cannot be greater than Joining Date.,Fæðingardagur má ekki vera stærri en dagsetningardagur.,
@@ -3454,7 +3391,6 @@
 ERPNext could not find any matching payment entry,ERPNext gat ekki fundið neina samsvarandi greiðslufærslu,
 Earliest Age,Elstu aldur,
 Edit Details,Breyta upplýsingum,
-Edit Profile,Edit Profile,
 Either GST Transporter ID or Vehicle No is required if Mode of Transport is Road,Annaðhvort er ID GST flutningsaðila eða ökutæki nr,
 Email,Tölvupóstur,
 Email Campaigns,Netfang herferðir,
@@ -3482,7 +3418,6 @@
 Fetch Items from Warehouse,Sæktu hluti úr vöruhúsinu,
 Fetching...,Sækir ...,
 Field,Field,
-File Manager,File Manager,
 Filters,síur,
 Finding linked payments,Finndu tengdar greiðslur,
 Fleet Management,Lo Stjórn,
@@ -3521,7 +3456,6 @@
 Incorrect Warehouse,Röng vöruhús,
 Invalid Barcode. There is no Item attached to this barcode.,Ógild strikamerki. Það er enginn hlutur festur við þennan strikamerki.,
 Invalid credentials,Ógild skilríki,
-Invite as User,Bjóða eins Notandi,
 Issue Priority.,Forgangsröð útgáfu.,
 Issue Type.,Útgáfutegund.,
 "It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.",Það virðist sem það er vandamál með rétta stillingu miðlarans. Ef bilun er fyrir hendi verður fjárhæðin endurgreitt á reikninginn þinn.,
@@ -3564,7 +3498,6 @@
 New Invoice,Nýr reikningur,
 New Payment,Ný greiðsla,
 New release date should be in the future,Nýr útgáfudagur ætti að vera í framtíðinni,
-Newsletter,Fréttabréf,
 No Account matched these filters: {},Enginn reikningur passaði við þessar síur: {},
 No communication found.,Engin samskipti fundust.,
 No correct answer is set for {0},Ekkert rétt svar er stillt fyrir {0},
@@ -3640,7 +3573,6 @@
 Please setup a default bank account for company {0},Settu upp sjálfgefinn bankareikning fyrir {0} fyrirtæki,
 Please specify,vinsamlegast tilgreindu,
 Please specify a {0},Vinsamlegast tilgreindu {0},lead
-Printing,Prentun,
 Priority,Forgangur,
 Priority has been changed to {0}.,Forgangi hefur verið breytt í {0}.,
 Priority {0} has been repeated.,Forgangsröð {0} hefur verið endurtekin.,
@@ -3649,7 +3581,6 @@
 Project,Project,
 Provide the academic year and set the starting and ending date.,Veittu námsárið og stilltu upphafs- og lokadagsetningu.,
 Public token is missing for this bank,Það vantar opinberan tákn fyrir þennan banka,
-Publish,Birta,
 Publish 1 Item,Birta 1 hlut,
 Publish Items,Birta hluti,
 Publish More Items,Birta fleiri hluti,
@@ -3677,7 +3608,6 @@
 Reconciled,Sátt,
 Recruitment,Ráðningar,
 Red,Red,
-Refreshing,Frískandi,
 Release date must be in the future,Útgáfudagur verður að vera í framtíðinni,
 Relieving Date must be greater than or equal to Date of Joining,Slökunardagur verður að vera meiri en eða jafn og dagsetningardagur,
 Rename,endurnefna,
@@ -3721,7 +3651,6 @@
 Search for a payment,Leitaðu að greiðslu,
 Search for anything ...,Leitaðu að neinu ...,
 Search results for,Leitarniðurstöður fyrir,
-Select All,Velja allt,
 Select Difference Account,Veldu mismunareikning,
 Select a Default Priority.,Veldu sjálfgefið forgang.,
 Select a company,Veldu fyrirtæki,
@@ -3740,11 +3669,9 @@
 Service Level Agreement has been changed to {0}.,Þjónustustigssamningi hefur verið breytt í {0}.,
 Service Level Agreement was reset.,Þjónustustigssamningur var endurstilltur.,
 Service Level Agreement with Entity Type {0} and Entity {1} already exists.,Samningur um þjónustustig með einingategund {0} og eining {1} er þegar til.,
-Set,Setja,
 Set Meta Tags,Setja Meta tags,
 Set {0} in company {1},Stilltu {0} í fyrirtæki {1},
 Setup,Setja upp,
-Setup Wizard,skipulag Wizard,
 Shift Management,Shift Stjórnun,
 Show Future Payments,Sýna framtíðargreiðslur,
 Show Linked Delivery Notes,Sýna tengda afhendingarbréf,
@@ -3815,7 +3742,6 @@
 Unreconciled,Ósamræmd,
 Unsupported GST Category for E-Way Bill JSON generation,Óstuddur GST flokkur fyrir E-Way Bill JSON kynslóð,
 Update,Uppfæra,
-Update Details,Uppfæra upplýsingar,
 Update Taxes for Items,Uppfæra skatta fyrir hluti,
 "Upload a bank statement, link or reconcile a bank account","Hladdu upp bankayfirliti, tengdu eða sættaðu bankareikning",
 Upload a statement,Hladdu upp yfirlýsingu,
@@ -3839,7 +3765,6 @@
 XML Files Processed,XML skrár unnar,
 Year,ár,
 Yearly,Árlega,
-You,þú,
 You are not allowed to enroll for this course,Þú hefur ekki leyfi til að skrá þig á þetta námskeið,
 You are not enrolled in program {0},Þú ert ekki skráður í forritið {0},
 You can Feature upto 8 items.,Þú getur haft allt að 8 atriði.,
@@ -3856,7 +3781,6 @@
 e-Way Bill already exists for this document,E-Way Bill er þegar til fyrir þetta skjal,
 woocommerce - {0},woocommerce - {0},
 {0} Coupon used are {1}. Allowed quantity is exhausted,{0} afsláttarmiða notaður er {1}. Leyfilegt magn er uppurið,
-{0} Name,{0} Heiti,
 {0} Operations: {1},{0} Aðgerðir: {1},
 {0} bank transaction(s) created,{0} bankaviðskipti stofnuð,
 {0} bank transaction(s) created and {1} errors,{0} bankaviðskipti stofnuð og {1} villur,
@@ -3875,17 +3799,13 @@
 Total Income,Heildartekjur,
 Total Income This Year,Heildartekjur í ár,
 Barcode,Strikamerki,
-Bold,Djarfur,
-Center,Center,
 Clear,Tær,
-Comment,Athugasemd,
 Comments,Comments,
 DocType,DocType,
 Download,Niðurhal,
 Left,vinstri,
 Link,Hlekkur,
 New,Nýtt,
-Not Found,Ekki fundið,
 Print,Prenta,
 Reference Name,Tilvísunarnafn,
 Refresh,Uppfæra,
@@ -3908,7 +3828,6 @@
 Email Id,Netfang,
 No,engin,
 Reference Doctype,Tilvísun DOCTYPE,
-User Id,Notandanafn,
 Yes,Já,
 Actual ,Raunveruleg,
 Add to cart,Bæta í körfu,
@@ -4304,7 +4223,6 @@
 e.g Adjustments for:,td leiðréttingar fyrir:,
 Section Subtotal,Hluti undirliða,
 Section Footer,Section Footer,
-Position,Staða,
 Cash Flow Mapping,Cash Flow Kortlagning,
 Select Maximum Of 1,Veldu hámark 1,
 Is Finance Cost,Er fjármagnskostnaður,
@@ -4936,7 +4854,6 @@
 Previous Business Day,Fyrri viðskiptadagur,
 Next Business Day,Næsta viðskiptadagur,
 Urgent,Urgent,
-Crop,Skera,
 Crop Name,Skera nafn,
 Scientific Name,Vísindalegt nafn,
 "You can define all the tasks which need to carried out for this crop here. The day field is used to mention the day on which the task needs to be carried out, 1 being the 1st day, etc.. ","Þú getur skilgreint öll þau verkefni sem þurfa að fara fram fyrir þessa ræktun hér. Dagurinn er notaður til að nefna þann dag sem verkefnið þarf að fara fram, 1 er fyrsta daginn, osfrv.",
@@ -5441,7 +5358,6 @@
 To TIme,til Time,
 Course End Date,Auðvitað Lokadagur,
 Course Topic,Málefni námskeiðsins,
-Topic,Topic,
 Topic Name,Topic Name,
 Education Settings,Menntastillingar,
 Current Academic Year,Núverandi námsár,
@@ -5516,7 +5432,6 @@
 Check this if the Student is residing at the Institute's Hostel.,Kannaðu þetta ef nemandi er búsettur í gistihúsinu.,
 Walking,Ganga,
 Institute's Bus,Rútur stofnunarinnar,
-Public Transport,Almenningssamgöngur,
 Self-Driving Vehicle,Sjálfknúin ökutæki,
 Pick/Drop by Guardian,Pick / Drop með forráðamanni,
 Enrolled courses,Skráðir námskeið,
@@ -5697,7 +5612,6 @@
 Default Cost Center,Sjálfgefið Kostnaður Center,
 Undeposited Funds Account,Óheimilt sjóðsreikningur,
 Shopify Log,Shopify Log,
-Request Data,Beiðni gagna,
 Shopify Settings,Shopify Stillingar,
 status html,stöðu html,
 Enable Shopify,Virkja Shopify,
@@ -5817,7 +5731,6 @@
 Exercise Instructions,Leiðbeiningar um hreyfingu,
 Exercise Video,Hreyfimyndband,
 Exercise Steps,Æfingarskref,
-Steps,Skref,
 Steps Table,Stigatafla,
 Exercise Type Step,Æfing Tegund Skref,
 Max number of visit,Hámarksfjöldi heimsókna,
@@ -6001,7 +5914,6 @@
 Patient Encounter Symptom,Einkenni sjúklinga,
 HLC-PMR-.YYYY.-,HLC-PMR-.YYYY.-,
 Attach Medical Record,Hengdu við sjúkraskrá,
-Reference DocType,Tilvísun DocType,
 Spouse,Maki,
 Family,Fjölskylda,
 Schedule Details,Upplýsingar um áætlun,
@@ -6983,16 +6895,8 @@
 HTML / Banner that will show on the top of product list.,HTML / Banner sem mun sýna á efst á listanum vöru.,
 Set prefix for numbering series on your transactions,Setja forskeyti fyrir númerakerfi röð á viðskiptum þínum,
 Setup Series,skipulag Series,
-Select Transaction,Veldu Transaction,
-Help HTML,Hjálp HTML,
-Series List for this Transaction,Series List fyrir þessa færslu,
-User must always select,Notandi verður alltaf að velja,
-Check this if you want to force the user to select a series before saving. There will be no default if you check this.,Hakaðu við þetta ef þú vilt að þvinga notendur til að velja röð áður en þú vistar. Það verður ekkert sjálfgefið ef þú athuga þetta.,
 Update Series,Uppfæra Series,
 Change the starting / current sequence number of an existing series.,Breyta upphafsdegi / núverandi raðnúmer núverandi röð.,
-Prefix,forskeyti,
-This is the number of the last created transaction with this prefix,Þetta er fjöldi síðustu búin færslu með þessu forskeyti,
-Update Series Number,Uppfæra Series Number,
 Quotation Lost Reason,Tilvitnun Lost Ástæða,
 A third party distributor / dealer / commission agent / affiliate / reseller who sells the companies products for a commission.,Þriðji aðili dreifingaraðila / söluaðila / umboðsmanns / tengja / sölumaður sem selur fyrirtæki vörur fyrir þóknun.,
 Sales Partner Name,Heiti Sales Partner,
@@ -7687,7 +7591,6 @@
 Warehouse wise Item Balance Age and Value,Vörugeymsla vitur Varajöfnuður Aldur og gildi,
 Work Order Stock Report,Vinnu Order Stock Report,
 Work Orders in Progress,Vinna Pantanir í gangi,
-Validation Error,Staðfestingarvilla,
 Automatically Process Deferred Accounting Entry,Vinna sjálfkrafa með frestaða bókhaldsfærslu,
 Bank Clearance,Úthreinsun banka,
 Bank Clearance Detail,Upplýsingar um úthreinsun banka,
@@ -7724,45 +7627,7 @@
 Therapy Plan: ,Meðferðaráætlun:,
 Total Counts Targeted: ,Miðað við heildarfjölda:,
 Total Counts Completed: ,Fjöldi talninga lokið:,
-Andaman and Nicobar Islands,Andaman og Nicobar eyjar,
-Andhra Pradesh,Andhra Pradesh,
-Arunachal Pradesh,Arunachal Pradesh,
-Assam,Assam,
-Bihar,Bihar,
-Chandigarh,Chandigarh,
-Chhattisgarh,Chhattisgarh,
-Dadra and Nagar Haveli,Dadra og Nagar Haveli,
-Daman and Diu,Daman og Diu,
-Delhi,Delhi,
-Goa,Goa,
-Gujarat,Gujarat,
-Haryana,Haryana,
-Himachal Pradesh,Himachal Pradesh,
-Jammu and Kashmir,Jammu og Kashmir,
-Jharkhand,Jharkhand,
-Karnataka,Karnataka,
-Kerala,Kerala,
-Lakshadweep Islands,Lakshadweep Islands,
-Madhya Pradesh,Madhya Pradesh,
-Maharashtra,Maharashtra,
-Manipur,Manipur,
-Meghalaya,Meghalaya,
-Mizoram,Mizoram,
-Nagaland,Nagaland,
-Odisha,Odisha,
-Other Territory,Annað landsvæði,
-Pondicherry,Pondicherry,
-Punjab,Punjab,
-Rajasthan,Rajasthan,
-Sikkim,Sikkim,
-Tamil Nadu,Tamil Nadu,
-Telangana,Telangana,
-Tripura,Tripura,
-Uttar Pradesh,Uttar Pradesh,
-Uttarakhand,Uttarakhand,
-West Bengal,Vestur-Bengal,
 Is Mandatory,Er skylda,
-Published on,Birt þann,
 Service Received But Not Billed,Þjónusta móttekin en ekki innheimt,
 Deferred Accounting Settings,Frestaðar bókhaldsstillingar,
 Book Deferred Entries Based On,Bókaðu frestaðar færslur byggðar á,
@@ -8035,8 +7900,6 @@
 Worksheet Instructions,Leiðbeiningar um vinnublað,
 Result Legend Print,Útgáfu þjóðsaga prentun,
 Print Position,Prenta stöðu,
-Bottom,Neðst,
-Top,Toppur,
 Both,Báðir,
 Result Legend,Niðurstaða þjóðsaga,
 Lab Tests,Rannsóknarstofupróf,
@@ -8081,12 +7944,10 @@
 Approvers,Ágreiningsmenn,
 The first Approver in the list will be set as the default Approver.,Fyrsti samþykkur listans verður stilltur sem sjálfgefinn samþykkur.,
 Shift Request Approver,Samþykki vaktabeiðni,
-PAN Number,PAN númer,
 Provident Fund Account,Reikningur sjóðsins,
 MICR Code,MICR kóði,
 Repay unclaimed amount from salary,Endurgreiða óheimta upphæð af launum,
 Deduction from salary,Frádráttur frá launum,
-Expired Leaves,Útrunnið lauf,
 If this is not checked the loan by default will be considered as a Demand Loan,Ef ekki er hakað við þetta verður lánið sjálfgefið litið á sem eftirspurnarlán,
 This account is used for booking loan repayments from the borrower and also disbursing loans to the borrower,Þessi reikningur er notaður til að bóka endurgreiðslur lána frá lántakanda og einnig til að greiða út lán til lántakanda,
 This account is capital account which is used to allocate capital for loan disbursal account ,Þessi reikningur er fjármagnsreikningur sem er notaður til að úthluta fjármagni til útborgunarreiknings lána,
@@ -8844,3 +8705,41 @@
 Creating Purchase Order ...,Býr til innkaupapöntun ...,
 "Select a Supplier from the Default Suppliers of the items below. On selection, a Purchase Order will be made against items belonging to the selected Supplier only.",Veldu birgja frá sjálfgefnum birgjum hlutanna hér að neðan. Við val verður eingöngu gerð innkaupapöntun á hlutum sem tilheyra völdum birgi.,
 Row #{}: You must select {} serial numbers for item {}.,Röð nr. {}: Þú verður að velja {} raðnúmer fyrir hlut {}.,
+Add Comment,Bæta við athugasemd,
+More...,Meira ...,
+Notes,Skýringar,
+Payment Gateway,greiðsla Gateway,
+Payment Gateway Name,Greiðsla Gateway Nafn,
+Payments,greiðslur,
+Plan Name,Áætlun Nafn,
+Portal,Portal,
+Scan Barcode,Skannaðu strikamerki,
+Some information is missing,Sumir upplýsingar vantar,
+Successful,Árangursrík,
+Tools,Verkfæri,
+Use Sandbox,Nota Sandbox,
+Busy,Upptekinn,
+Completed By,Lokið við,
+Payment Failed,greiðsla mistókst,
+Column {0},Dálkur {0},
+Field Mapping,Reitakortlagning,
+Not Specified,Ekki tilgreint,
+Update Type,Gerð uppfærslu,
+Dr,dr,
+End Time,End Time,
+Fetching...,Sækir ...,
+"It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.",Það virðist sem það er vandamál með rétta stillingu miðlarans. Ef bilun er fyrir hendi verður fjárhæðin endurgreitt á reikninginn þinn.,
+Looks like someone sent you to an incomplete URL. Please ask them to look into it.,Lítur út eins og einhver sent þig til ófullnægjandi vefslóð. Vinsamlegast biðja þá að líta inn í það.,
+Master,Master,
+Pay,Greitt,
+You can also copy-paste this link in your browser,Þú getur líka afrita líma þennan tengil í vafranum þínum,
+Verified By,staðfest af,
+Invalid naming series (. missing) for {0},Ógild nafnaflokkur (. Vantar) fyrir {0},
+Phone Number,Símanúmer,
+Account SID,Reikningur SID,
+Global Defaults,Global Vanskil,
+Is Mandatory,Er skylda,
+WhatsApp,WhatsApp,
+Make a call,Hringja,
+Approve,Samþykkja,
+Reject,Hafna,
diff --git a/erpnext/translations/it.csv b/erpnext/translations/it.csv
index f96b1aa..b88cada 100644
--- a/erpnext/translations/it.csv
+++ b/erpnext/translations/it.csv
@@ -113,7 +113,6 @@
 Add Items,Aggiungi articoli,
 Add Leads,Aggiungi leads,
 Add Multiple Tasks,Aggiungi attività multiple,
-Add Row,Aggiungi riga,
 Add Sales Partners,Aggiungi partner di vendita,
 Add Serial No,Aggiungi numero di serie,
 Add Students,Aggiungi studenti,
@@ -211,9 +210,7 @@
 An error occurred during the update process,Si è verificato un errore durante il processo di aggiornamento,
 "An item exists with same name ({0}), please change the item group name or rename the item","Un elemento esiste con lo stesso nome ( {0} ) , si prega di cambiare il nome del gruppo o di rinominare la voce",
 Analyst,Analista,
-Analytics,Analisi dei dati,
 Annual Billing: {0},Fatturazione annuale: {0},
-Anonymous,Anonimo,
 Another Budget record '{0}' already exists against {1} '{2}' and account '{3}' for fiscal year {4},Un altro record di budget &#39;{0}&#39; esiste già contro {1} &#39;{2}&#39; e account &#39;{3}&#39; per l&#39;anno fiscale {4},
 Another Period Closing Entry {0} has been made after {1},Un'altra voce periodo di chiusura {0} è stato fatto dopo {1},
 Another Sales Person {0} exists with the same Employee id,Un&#39;altra Sales Person {0} esiste con lo stesso ID Employee,
@@ -283,14 +280,12 @@
 Attendance not submitted for {0} as {1} on leave.,Presenza non inviata per {0} come {1} in congedo.,
 Attribute table is mandatory,Tavolo attributo è obbligatorio,
 Attribute {0} selected multiple times in Attributes Table,Attributo {0} selezionato più volte in Attributi Tabella,
-Author,Autore,
 Authorized Signatory,Firma autorizzata,
 Auto Material Requests Generated,Richieste materiale generata automaticamente,
 Auto Repeat,Ripetizione automatica,
 Auto repeat document updated,Ripetizione automatica aggiornata,
 Automotive,Automotive,
 Available,Disponibile,
-Available Leaves,Ferie disponibili,
 Available Qty,Disponibile Quantità,
 Available Selling,Vendita disponibile,
 Available for use date is required,Disponibile per la data di utilizzo è richiesto,
@@ -340,7 +335,6 @@
 Base URL,URL di base,
 Based On,Basato su,
 Based On Payment Terms,Basato sui termini di pagamento,
-Basic,Base,
 Batch,Lotto,
 Batch Entries,Voci in lotti,
 Batch ID is mandatory,L&#39;ID batch è obbligatorio,
@@ -361,7 +355,6 @@
 Billable Hours,Ore fatturabili,
 Billed,Addebbitato,
 Billed Amount,Importo fatturato,
-Billing,Fatturazione,
 Billing Address,Indirizzo Di Fatturazione,
 Billing Address is same as Shipping Address,L&#39;indirizzo di fatturazione è uguale all&#39;indirizzo di spedizione,
 Billing Amount,Importo della fattura,
@@ -560,7 +553,6 @@
 Consumed Qty,Q.tà Consumata,
 Consumer Products,Prodotti di consumo,
 Contact,Contatto,
-Contact Details,Dettagli Contatto,
 Contact Us,Contattaci,
 Content,Contenuto,
 Content Masters,Master dei contenuti,
@@ -715,7 +707,6 @@
 Date of Joining,Data Assunzione,
 Date of Joining must be greater than Date of Birth,Data di assunzione deve essere maggiore della data di nascita,
 Date of Transaction,Data della transazione,
-Datetime,Data e ora,
 Day,Giorno,
 Debit,Dare,
 Debit ({0}),Debito ({0}),
@@ -874,7 +865,6 @@
 Employee cannot report to himself.,Il dipendente non può riportare a se stesso.,
 Employee {0} has already applied for {1} between {2} and {3} : ,Il Dipendente {0} ha già fatto domanda per {1} tra {2} e {3}:,
 Employee {0} of grade {1} have no default leave policy,Il dipendente {0} del grado {1} non ha alcuna politica di congedo predefinita,
-Enable,permettere,
 Enable / disable currencies.,Abilitare / disabilitare valute.,
 Enabled,Attivato,
 "Enabling 'Use for Shopping Cart', as Shopping Cart is enabled and there should be at least one Tax Rule for Shopping Cart","L&#39;attivazione di &#39;utilizzare per il Carrello&#39;, come Carrello è abilitato e ci dovrebbe essere almeno una regola imposta per Carrello",
@@ -905,7 +895,6 @@
 Error: Not a valid id?,Errore: Non è un documento di identità valido?,
 Estimated Cost,Costo stimato,
 "Even if there are multiple Pricing Rules with highest priority, then following internal priorities are applied:","Anche se ci sono più regole sui prezzi con la priorità più alta, si applicano quindi le seguenti priorità interne:",
-Event,Evento,
 Exchange Gain/Loss,Guadagno Exchange / Perdita,
 Exchange Rate Revaluation master.,Master di rivalutazione del tasso di cambio.,
 Exchange Rate must be same as {0} {1} ({2}),Tasso di cambio deve essere uguale a {0} {1} ({2}),
@@ -1032,7 +1021,6 @@
 From value must be less than to value in row {0},Dal valore deve essere inferiore al valore nella riga {0},
 From {0} | {1} {2},Da {0} | {1} {2},
 Fulfillment,Compimento,
-Full,Pieno,
 Full Name,Nome Completo,
 Fully Depreciated,completamente ammortizzato,
 Furnitures and Fixtures,Mobili e infissi,
@@ -1133,7 +1121,6 @@
 Hub Sync ID,ID di sincronizzazione Hub,
 Human Resource,Risorsa Umana,
 Human Resources,Risorse umane,
-IFSC Code,Codice IFSC,
 IGST Amount,Quantità IGST,
 IP Address,Indirizzo IP,
 ITC Available (whether in full op part),ITC disponibile (sia nella parte operativa completa),
@@ -1185,7 +1172,6 @@
 Ineligible ITC,ITC non idoneo,
 Initiated,Iniziato,
 Inpatient Record,Record ospedaliero,
-Insert,Inserire,
 Installation Note,Nota Installazione,
 Installation Note {0} has already been submitted,Nota Installazione {0} già inserita,
 Installation date cannot be before delivery date for Item {0},La data di installazione non può essere precedente alla data di consegna per l'Articolo {0},
@@ -1197,7 +1183,6 @@
 Insurance Start date should be less than Insurance End date,Assicurazione Data di inizio deve essere inferiore a Assicurazione Data Fine,
 Integrated Tax,Imposta integrata,
 Inter-State Supplies,Forniture interstatali,
-Interests,Interessi,
 Internet Publishing,Internet Publishing,
 Intra-State Supplies,Forniture intra-statali,
 Introduction,Presentazione,
@@ -1316,7 +1301,6 @@
 Lab testing datetime cannot be before collection datetime,Test di laboratorio datetime non può essere prima della raccolta datetime,
 Label,Etichetta,
 Laboratory,Laboratorio,
-Language Name,Nome lingua,
 Large,Grande,
 Last Communication,Ultima comunicazione,
 Last Communication Date,Ultima data di comunicazione,
@@ -1347,8 +1331,6 @@
 Letter Heads for print templates.,Lettera intestazioni per modelli di stampa .,
 Level,Livello,
 Liability,Responsabilità,
-License,Licenza,
-Limit,Limite,
 Limit Crossed,limite Crossed,
 Link to Material Request,Collega a Richiesta di Materiale,
 List of all share transactions,Elenco di tutte le transazioni condivise,
@@ -1359,7 +1341,6 @@
 Loans (Liabilities),Prestiti (passività ),
 Loans and Advances (Assets),Crediti ( Assets ),
 Local,Locale,
-Log,Log,
 Logs for maintaining sms delivery status,I registri per il mantenimento dello stato di consegna sms,
 Lost,Perso,
 Lost Reasons,Ragioni perse,
@@ -1445,7 +1426,6 @@
 Medical Department,Dipartimento medico,
 Medical Record,Cartella medica,
 Medium,Media,
-Meeting,Incontro,
 Member Activity,Attività dei membri,
 Member ID,ID membro,
 Member Name,Nome del membro,
@@ -1495,7 +1475,6 @@
 Multiple Variants,Varianti multiple,
 Multiple fiscal years exist for the date {0}. Please set company in Fiscal Year,esistono più esercizi per la data {0}. Si prega di impostare società l&#39;anno fiscale,
 Music,Musica,
-My Account,Il Mio Account,
 Name error: {0},Nome errore: {0},
 Name of new Account. Note: Please don't create accounts for Customers and Suppliers,Nome del nuovo conto. Nota: Si prega di non creare account per Clienti e Fornitori,
 Name or Email is mandatory,Nome o e-mail è obbligatorio,
@@ -1538,7 +1517,6 @@
 New credit limit is less than current outstanding amount for the customer. Credit limit has to be atleast {0},Il Nuovo limite di credito è inferiore all'attuale importo dovuto dal cliente. Il limite di credito deve essere almeno {0},
 New task,Nuova attività,
 New {0} pricing rules are created,Vengono create nuove regole di tariffazione {0},
-Newsletters,Newsletters,
 Newspaper Publishers,Editori Giornali,
 Next,Successivo,
 Next Contact By cannot be same as the Lead Email Address,Successivo Contatto Con non può coincidere con l'email del Lead,
@@ -1686,7 +1664,6 @@
 Other,Altro,
 Other Reports,Altri Reports,
 "Other outward supplies(Nil rated,Exempted)","Altre forniture esterne (esenti da zero, esenti)",
-Others,Altri,
 Out Qty,out Quantità,
 Out Value,Valore out,
 Out of Order,Guasto,
@@ -1726,7 +1703,6 @@
 Party Type and Party is mandatory for {0} account,Tipo di partito e festa sono obbligatori per l&#39;account {0},
 Party Type is mandatory,Tipo Partner è obbligatorio,
 Party is mandatory,Il Partner è obbligatorio,
-Password,Password,
 Past Due Date,Data già scaduta,
 Patient,Paziente,
 Patient Appointment,Appuntamento paziente,
@@ -1784,7 +1760,6 @@
 Pharmaceutical,farmaceutico,
 Pharmaceuticals,Farmaceutici,
 Physician,Medico,
-Pincode,CAP,
 Place Of Supply (State/UT),Luogo di fornitura (stato / UT),
 Place Order,Inserisci ordine,
 Plan Name,Nome piano,
@@ -1896,7 +1871,6 @@
 Please select date,Seleziona la data,
 Please select item code,Si prega di selezionare il codice articolo,
 Please select month and year,Si prega di selezionare mese e anno,
-Please select prefix first,Si prega di selezionare il prefisso prima,
 Please select the Company,Si prega di selezionare la società,
 Please select the Multiple Tier Program type for more than one collection rules.,Seleziona il tipo di Programma a più livelli per più di una regola di raccolta.,
 Please select the assessment group other than 'All Assessment Groups',Seleziona il gruppo di valutazione diverso da &#39;Tutti i gruppi di valutazione&#39;,
@@ -1913,7 +1887,6 @@
 Please set Company filter blank if Group By is 'Company',Impostare il filtro aziendale vuoto se Group By è &#39;Azienda&#39;,
 Please set Default Payroll Payable Account in Company {0},Si prega di impostare di default Payroll conto da pagare in azienda {0},
 Please set Depreciation related Accounts in Asset Category {0} or Company {1},Si prega di impostare gli account relativi ammortamenti nel settore Asset Categoria {0} o {1} società,
-Please set Email Address,Si prega di impostare l&#39;indirizzo e-mail,
 Please set GST Accounts in GST Settings,Si prega di impostare account GST in Impostazioni GST,
 Please set Hotel Room Rate on {},Si prega di impostare la tariffa della camera dell&#39;hotel su {},
 Please set Number of Depreciations Booked,Si prega di impostare Numero di ammortamenti Prenotato,
@@ -1936,7 +1909,6 @@
 Please set the Email ID for the Student to send the Payment Request,Impostare l&#39;ID di posta elettronica per lo studente per inviare la richiesta di pagamento,
 Please set the Item Code first,Impostare prima il codice dell&#39;articolo,
 Please set the Payment Schedule,Si prega di impostare il programma di pagamento,
-Please set the series to be used.,Si prega di impostare la serie da utilizzare.,
 Please set {0} for address {1},Si prega di impostare {0} per l&#39;indirizzo {1},
 Please setup Students under Student Groups,Impostare gli studenti in gruppi di studenti,
 Please specify Company,Si prega di specificare Azienda,
@@ -1953,7 +1925,6 @@
 Point-of-Sale,Punto vendita,
 Point-of-Sale Profile,Point-of-Sale Profilo,
 Portal,Portale,
-Portal Settings,Impostazioni del portale,
 Possible Supplier,Fornitore Possibile,
 Postal Expenses,Spese postali,
 Posting Date,Data di Registrazione,
@@ -2152,12 +2123,10 @@
 Reference No is mandatory if you entered Reference Date,N. di riferimento è obbligatoria se hai inserito Reference Data,
 Reference No.,Numero di riferimento,
 Reference Number,Numero di riferimento,
-Reference Owner,Riferimento proprietario,
 Reference Type,Tipo di riferimento,
 "Reference: {0}, Item Code: {1} and Customer: {2}","Riferimento: {0}, codice dell&#39;articolo: {1} e cliente: {2}",
 References,Riferimenti,
 Refresh Token,Aggiorna Token,
-Region,Regione,
 Register,Registrare,
 Rejected,Rifiutato,
 Related,Collegamento,
@@ -2179,7 +2148,6 @@
 Replace BOM and update latest price in all BOMs,Sostituire il BOM e aggiornare il prezzo più recente in tutte le BOM,
 Replied,Ha risposto,
 Report,Report,
-Report Builder,Report Builder,
 Report Type,Tipo Report,
 Report Type is mandatory,Tipo di Report è obbligatorio,
 Reports,Report,
@@ -2355,13 +2323,11 @@
 Same Company is entered more than once,La stessa azienda viene inserito più di una volta,
 Same item cannot be entered multiple times.,Lo stesso articolo non può essere inserito più volte.,
 Same supplier has been entered multiple times,Lo stesso fornitore è stato inserito più volte,
-Sample,Esempio,
 Sample Collection,Raccolta di campioni,
 Sample quantity {0} cannot be more than received quantity {1},La quantità di esempio {0} non può essere superiore alla quantità ricevuta {1},
 Sanctioned,sanzionato,
 Sand,Sabbia,
 Saturday,Sabato,
-Saved,Salvato,
 Saving {0},Salvataggio di {0},
 Scan Barcode,Scansione Barcode,
 Schedule,Pianificare,
@@ -2463,7 +2429,6 @@
 Series Updated,Serie aggiornata,
 Series Updated Successfully,Serie aggiornata con successo,
 Series is mandatory,La serie è obbligatoria,
-Series {0} already used in {1},Serie {0} già utilizzata in {1},
 Service,servizio,
 Service Level Agreement,Accordo sul livello di servizio,
 Service Level Agreement.,Accordo sul livello di servizio.,
@@ -2479,7 +2444,6 @@
 Set Tax Rule for shopping cart,Set di regole fiscali per carrello della spesa,
 Set as Closed,Imposta come Chiuso,
 Set as Completed,Imposta come completato,
-Set as Default,Imposta come predefinito,
 Set as Lost,Imposta come persa,
 Set as Open,Imposta come aperto,
 Set default inventory account for perpetual inventory,Imposta l&#39;account di inventario predefinito per l&#39;inventario perpetuo,
@@ -2511,7 +2475,6 @@
 Shareholder,Azionista,
 Ship To State,Spedire allo stato,
 Shipments,Spedizioni,
-Shipping,spedizione,
 Shipping Address,indirizzo di spedizione,
 "Shipping Address does not have country, which is required for this Shipping Rule","Indirizzo di spedizione non ha paese, che è richiesto per questa regola di spedizione",
 Shipping rule only applicable for Buying,Regola di spedizione applicabile solo per l&#39;acquisto,
@@ -2564,7 +2527,6 @@
 Split Batch,Split Batch,
 Split Issue,Dividi Problema,
 Sports,sportivo,
-Standard,Standard,
 Standard Buying,Listino d'Acquisto,
 Standard Selling,Listino di Vendita,
 Standard contract terms for Sales or Purchase.,Condizioni contrattuali standard per la vendita o di acquisto.,
@@ -2731,7 +2693,6 @@
 Terms and Conditions,Termini e condizioni,
 Terms and Conditions Template,Termini e condizioni Template,
 Territory,Territorio,
-Test,Test,
 Thank you for your business!,Grazie per il tuo business!,
 The 'From Package No.' field must neither be empty nor it's value less than 1.,Il &#39;Da n. Pacchetto&#39; il campo non deve essere vuoto o il suo valore è inferiore a 1.,
 The Brand,Il marchio / brand,
@@ -2848,7 +2809,6 @@
 Total (Without Tax),Totale (senza tasse),
 Total Achieved,Totale raggiunto,
 Total Actual,Totale Actual,
-Total Allocated Leaves,Ferie totali allocate,
 Total Amount,Totale Importo,
 Total Amount Credited,Importo totale accreditato,
 Total Applicable Charges in Purchase Receipt Items table must be same as Total Taxes and Charges,Totale oneri addebitati in Acquisto tabella di carico Gli articoli devono essere uguale Totale imposte e oneri,
@@ -2892,7 +2852,6 @@
 Total(Amt),Totale (Amt),
 Total(Qty),Totale (Quantità),
 Traceability,tracciabilità,
-Traceback,Rintracciare,
 Track Leads by Lead Source.,Monitora lead per lead source.,
 Transaction,Transazioni,
 Transaction Date,Transaction Data,
@@ -2930,7 +2889,6 @@
 UOM Conversion factor is required in row {0},Fattore di conversione Unità di Misurà è obbligatoria sulla riga {0},
 UOM coversion factor required for UOM: {0} in Item: {1},Fattore di conversione Unità di Misura è obbligatorio per Unità di Misura: {0} alla voce: {1},
 URL,URL,
-Unable to find DocType {0},Impossibile trovare DocType {0},
 Unable to find exchange rate for {0} to {1} for key date {2}. Please create a Currency Exchange record manually,Impossibile trovare il tasso di cambio per {0} a {1} per la data chiave {2}. Si prega di creare un record Exchange Exchange manualmente,
 Unable to find score starting at {0}. You need to have standing scores covering 0 to 100,Impossibile trovare il punteggio partendo da {0}. È necessario avere punteggi in piedi che coprono 0 a 100,
 Unable to find variable: ,Impossibile trovare la variabile:,
@@ -2960,7 +2918,6 @@
 Upload your letter head and logo. (you can edit them later).,Carica la tua testa lettera e logo. (È possibile modificare in un secondo momento).,
 Upper Income,Reddito superiore,
 Use Sandbox,Usa Sandbox,
-Used Leaves,Ferie Usate,
 User,Utente,
 User ID,ID utente,
 User ID not set for Employee {0},ID utente non impostato per Dipedente {0},
@@ -3051,7 +3008,6 @@
 Website Settings,Impostazioni Sito,
 Wednesday,Mercoledì,
 Week,Settimana,
-Weekdays,Nei giorni feriali,
 Weekly,Settimanale,
 "Weight is mentioned,\nPlease mention ""Weight UOM"" too","Il peso è menzionato, \n prega di citare ""Peso UOM"" troppo",
 Welcome email sent,Email di benvenuto inviata con successo,
@@ -3072,7 +3028,6 @@
 Work Order {0} must be submitted,L&#39;ordine di lavoro {0} deve essere inviato,
 Work Orders Created: {0},Ordini di lavoro creati: {0},
 Work-in-Progress Warehouse is required before Submit,Specificare il magazzino Work- in- Progress prima della Conferma,
-Workflow,Flusso di lavoro,
 Working,Lavorando,
 Working Hours,Orari di lavoro,
 Workstation,stazione di lavoro,
@@ -3102,7 +3057,6 @@
 You need to be a user other than Administrator with System Manager and Item Manager roles to register on Marketplace.,Devi essere un utente diverso dall&#39;amministratore con i ruoli di System Manager e Item Manager da registrare sul Marketplace.,
 You need to be a user with System Manager and Item Manager roles to add users to Marketplace.,Devi essere un utente con i ruoli di System Manager e Item Manager per aggiungere utenti al Marketplace.,
 You need to be a user with System Manager and Item Manager roles to register on Marketplace.,Devi essere un utente con i ruoli di System Manager e Item Manager da registrare sul Marketplace.,
-You need to be logged in to access this page,Devi essere loggato per accedere a questa pagina,
 You need to enable Shopping Cart,È necessario abilitare Carrello,
 You will lose records of previously generated invoices. Are you sure you want to restart this subscription?,Perderai i record delle fatture generate in precedenza. Sei sicuro di voler riavviare questo abbonamento?,
 Your Organization,La tua organizzazione,
@@ -3218,7 +3172,6 @@
 Assigned To,Assegnato a,
 Chat,Chat,
 Completed By,Completato da,
-County,Contea,
 Day of Week,Giorno della settimana,
 "Dear System Manager,","Spettabile Responsabile di Sistema,",
 Default Value,Valore Predefinito,
@@ -3229,31 +3182,21 @@
 Fieldtype,Tipo di campo,
 Help Articles,Aiuto articoli,
 ID,ID,
-Images,Immagini,
 Import,Importazione,
 Language,Lingua,
 Likes,Piace,
 Merge with existing,Unisci con esistente,
-Office,Ufficio,
 Orientation,Orientamento,
 Parent,Genitore,
-Passive,Passivo,
 Payment Failed,Pagamento fallito,
-Permanent,Permanente,
 Personal,Personale,
-Plant,Impianto,
 Post,Messaggio,
-Postal,Postale,
 Postal Code,Codice Postale,
-Previous,Precedente,
 Provider,Provider,
 Read Only,Solo lettura,
 Recipient,Destinatario,
 Reviews,Recensioni,
 Sender,Mittente,
-Shop,Negozio,
-Subsidiary,Sussidiario,
-There is some problem with the file url: {0},C&#39;è qualche problema con il file url: {0},
 There were errors while sending email. Please try again.,Ci sono stati errori durante l'invio email. Riprova.,
 Values Changed,valori modificati,
 or,oppure,
@@ -3280,19 +3223,16 @@
 Quality Feedback Template,Modello di feedback sulla qualità,
 Rules for applying different promotional schemes.,Regole per l&#39;applicazione di diversi schemi promozionali.,
 Show {0},Mostra {0},
-"Special Characters except '-', '#', '.', '/', '{{' and '}}' not allowed in naming series {0}","Caratteri speciali tranne &quot;-&quot;, &quot;#&quot;, &quot;.&quot;, &quot;/&quot;, &quot;{{&quot; E &quot;}}&quot; non consentiti nelle serie di nomi {0}",
 Target Details,Dettagli target,
 {0} already has a Parent Procedure {1}.,{0} ha già una procedura padre {1}.,
 API,API,
 Annual,Annuale,
 Change,Cambia,
 Contact Email,Email Contatto,
-Export Type,Tipo di esportazione,
 From Date,Da Data,
 Group By,Raggruppare per,
 Invalid URL,URL non valido,
 Landscape,Paesaggio,
-Last Sync On,Ultima sincronizzazione attivata,
 Naming Series,Denominazione Serie,
 No data to export,Nessun dato da esportare,
 Portrait,Ritratto,
@@ -3302,7 +3242,6 @@
 Show Document,Mostra documento,
 Show Traceback,Mostra traccia,
 Video,video,
-Webhook Secret,Segreto Webhook,
 % Of Grand Total,% Del totale complessivo,
 <b>Company</b> is a mandatory filter.,<b>La società</b> è un filtro obbligatorio.,
 <b>From Date</b> is a mandatory filter.,<b>Dalla data</b> è un filtro obbligatorio.,
@@ -3358,7 +3297,6 @@
 BOM Comparison Tool,Strumento di confronto della distinta base,
 BOM recursion: {0} cannot be child of {1},Ricorsione DBA: {0} non può essere figlio di {1},
 BOM recursion: {0} cannot be parent or child of {1},Ricorsione DBA: {0} non può essere genitore o figlio di {1},
-Back to Home,Tornare a casa,
 Back to Messages,Torna ai messaggi,
 Bank Data mapper doesn't exist,Il mappatore dei dati bancari non esiste,
 Bank Details,Coordinate bancarie,
@@ -3420,7 +3358,6 @@
 Currency,Valuta,
 Current Status,Stato Corrente,
 Customer PO,PO cliente,
-Customize,Personalizza,
 Daily,Giornaliero,
 Date,Data,
 Date of Birth cannot be greater than Joining Date.,La data di nascita non può essere superiore alla data di iscrizione.,
@@ -3454,7 +3391,6 @@
 ERPNext could not find any matching payment entry,ERPNext non è stato possibile trovare alcuna voce di pagamento corrispondente,
 Earliest Age,Prima età,
 Edit Details,Modifica i dettagli,
-Edit Profile,Modifica Profilo,
 Either GST Transporter ID or Vehicle No is required if Mode of Transport is Road,È richiesto l&#39;ID del trasportatore GST o il numero del veicolo se la modalità di trasporto è su strada,
 Email,E-mail,
 Email Campaigns,Campagne e-mail,
@@ -3482,7 +3418,6 @@
 Fetch Items from Warehouse,Recupera articoli dal magazzino,
 Fetching...,Recupero ...,
 Field,Campo,
-File Manager,File Manager,
 Filters,Filtri,
 Finding linked payments,Trovare pagamenti collegati,
 Fleet Management,Gestione della flotta,
@@ -3521,7 +3456,6 @@
 Incorrect Warehouse,Magazzino errato,
 Invalid Barcode. There is no Item attached to this barcode.,Codice a barre non valido. Non ci sono articoli collegati a questo codice a barre.,
 Invalid credentials,Credenziali non valide,
-Invite as User,Invita come utente,
 Issue Priority.,Priorità al problema.,
 Issue Type.,Tipo di problema.,
 "It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","Sembra che ci sia un problema con la configurazione delle strisce del server. In caso di fallimento, l&#39;importo verrà rimborsato sul tuo conto.",
@@ -3564,7 +3498,6 @@
 New Invoice,Nuova fattura,
 New Payment,Nuovo pagamento,
 New release date should be in the future,La nuova data di uscita dovrebbe essere in futuro,
-Newsletter,Newsletter,
 No Account matched these filters: {},Nessun account corrisponde a questi filtri: {},
 No communication found.,Nessuna comunicazione trovata.,
 No correct answer is set for {0},Non è stata impostata una risposta corretta per {0},
@@ -3640,7 +3573,6 @@
 Please setup a default bank account for company {0},Configura un conto bancario predefinito per la società {0},
 Please specify,Si prega di specificare,
 Please specify a {0},Si prega di specificare un {0},lead
-Printing,Stampa,
 Priority,Priorità,
 Priority has been changed to {0}.,La priorità è stata cambiata in {0}.,
 Priority {0} has been repeated.,La priorità {0} è stata ripetuta.,
@@ -3649,7 +3581,6 @@
 Project,Progetto,
 Provide the academic year and set the starting and ending date.,Fornire l&#39;anno accademico e impostare la data di inizio e di fine.,
 Public token is missing for this bank,Token pubblico mancante per questa banca,
-Publish,Pubblicare,
 Publish 1 Item,Pubblica 1 oggetto,
 Publish Items,Pubblica articoli,
 Publish More Items,Pubblica più articoli,
@@ -3677,7 +3608,6 @@
 Reconciled,riconciliati,
 Recruitment,Reclutamento,
 Red,Rosso,
-Refreshing,Aggiornamento,
 Release date must be in the future,La data di uscita deve essere in futuro,
 Relieving Date must be greater than or equal to Date of Joining,La data di rilascio deve essere maggiore o uguale alla data di iscrizione,
 Rename,Rinomina,
@@ -3721,7 +3651,6 @@
 Search for a payment,Cerca un pagamento,
 Search for anything ...,Cerca qualcosa ...,
 Search results for,cerca risultati per,
-Select All,Seleziona tutto,
 Select Difference Account,Seleziona Conto differenze,
 Select a Default Priority.,Seleziona una priorità predefinita.,
 Select a company,Seleziona un&#39;azienda,
@@ -3740,11 +3669,9 @@
 Service Level Agreement has been changed to {0}.,L&#39;accordo sul livello di servizio è stato modificato in {0}.,
 Service Level Agreement was reset.,L&#39;accordo sul livello di servizio è stato ripristinato.,
 Service Level Agreement with Entity Type {0} and Entity {1} already exists.,Accordo sul livello di servizio con il tipo di entità {0} e l&#39;entità {1} esiste già.,
-Set,set,
 Set Meta Tags,Imposta meta tag,
 Set {0} in company {1},Imposta {0} nella società {1},
 Setup,Setup,
-Setup Wizard,Installazione guidata,
 Shift Management,Gestione dei turni,
 Show Future Payments,Mostra pagamenti futuri,
 Show Linked Delivery Notes,Mostra note di consegna collegate,
@@ -3815,7 +3742,6 @@
 Unreconciled,unreconciled,
 Unsupported GST Category for E-Way Bill JSON generation,Categoria GST non supportata per la generazione JSON di E-Way Bill,
 Update,Aggiornare,
-Update Details,Dettagli aggiornamento,
 Update Taxes for Items,Aggiorna tasse per articoli,
 "Upload a bank statement, link or reconcile a bank account","Carica un estratto conto, collega o riconcilia un conto bancario",
 Upload a statement,Carica una dichiarazione,
@@ -3839,7 +3765,6 @@
 XML Files Processed,File XML elaborati,
 Year,Anno,
 Yearly,Annuale,
-You,Tu,
 You are not allowed to enroll for this course,Non ti è permesso iscriverti a questo corso,
 You are not enrolled in program {0},Non sei iscritto al programma {0},
 You can Feature upto 8 items.,Puoi presentare fino a 8 elementi.,
@@ -3856,7 +3781,6 @@
 e-Way Bill already exists for this document,e-Way Bill esiste già per questo documento,
 woocommerce - {0},woocommerce - {0},
 {0} Coupon used are {1}. Allowed quantity is exhausted,{0} I coupon utilizzati sono {1}. La quantità consentita è esaurita,
-{0} Name,{0} Nome,
 {0} Operations: {1},{0} Operazioni: {1},
 {0} bank transaction(s) created,{0} transazioni bancarie create,
 {0} bank transaction(s) created and {1} errors,{0} transazioni bancarie create e errori {1},
@@ -3875,17 +3799,13 @@
 Total Income,Reddito totale,
 Total Income This Year,Reddito totale quest&#39;anno,
 Barcode,Codice a barre,
-Bold,Grassetto,
-Center,Centro,
 Clear,Chiaro,
-Comment,Commento,
 Comments,Commenti,
 DocType,DocType,
 Download,Scarica,
 Left,Sinistra,
 Link,collegamento,
 New,Nuovo,
-Not Found,Non trovato,
 Print,Stampa,
 Reference Name,nome di riferimento,
 Refresh,Aggiorna,
@@ -3908,7 +3828,6 @@
 Email Id,ID Email,
 No,No,
 Reference Doctype,Riferimento DocType,
-User Id,ID utente,
 Yes,sì,
 Actual ,Attuale,
 Add to cart,Aggiungi al carrello,
@@ -4304,7 +4223,6 @@
 e.g Adjustments for:,Ad es. regolazioni per:,
 Section Subtotal,Sezione Totale parziale,
 Section Footer,Sezione piè di pagina,
-Position,Posizione,
 Cash Flow Mapping,Mappatura del flusso di cassa,
 Select Maximum Of 1,Seleziona Massimo di 1,
 Is Finance Cost,È il costo finanziario,
@@ -4936,7 +4854,6 @@
 Previous Business Day,Giorno lavorativo precedente,
 Next Business Day,Il prossimo giorno lavorativo,
 Urgent,Urgente,
-Crop,raccolto,
 Crop Name,Nome del raccolto,
 Scientific Name,Nome scientifico,
 "You can define all the tasks which need to carried out for this crop here. The day field is used to mention the day on which the task needs to be carried out, 1 being the 1st day, etc.. ","Puoi definire tutte le attività che devono essere eseguite per questo raccolto qui. Il campo del giorno viene utilizzato per indicare il giorno in cui è necessario eseguire l&#39;attività, 1 è il 1 ° giorno, ecc.",
@@ -5441,7 +5358,6 @@
 To TIme,Per Tempo,
 Course End Date,Corso Data fine,
 Course Topic,Argomento del corso,
-Topic,Argomento,
 Topic Name,Nome argomento,
 Education Settings,Impostazioni di educazione,
 Current Academic Year,Anno Accademico Corrente,
@@ -5516,7 +5432,6 @@
 Check this if the Student is residing at the Institute's Hostel.,Controllare questo se lo studente è residente presso l&#39;Ostello dell&#39;Istituto.,
 Walking,A passeggio,
 Institute's Bus,Bus dell&#39;Istituto,
-Public Transport,Trasporto pubblico,
 Self-Driving Vehicle,Autovettura,
 Pick/Drop by Guardian,Pick / Drop di Guardian,
 Enrolled courses,Corsi iscritti,
@@ -5697,7 +5612,6 @@
 Default Cost Center,Centro di costo predefinito,
 Undeposited Funds Account,Conto fondi non trasferiti,
 Shopify Log,Log di Shopify,
-Request Data,Richiesta dati,
 Shopify Settings,Impostazioni di Shopify,
 status html,stato html,
 Enable Shopify,Abilita Shopify,
@@ -5817,7 +5731,6 @@
 Exercise Instructions,Istruzioni per l&#39;esercizio,
 Exercise Video,Video di esercizi,
 Exercise Steps,Fasi dell&#39;esercizio,
-Steps,Passi,
 Steps Table,Tabella dei passaggi,
 Exercise Type Step,Tipo di esercizio Step,
 Max number of visit,Numero massimo di visite,
@@ -6001,7 +5914,6 @@
 Patient Encounter Symptom,Sintomo dell&#39;incontro con il paziente,
 HLC-PMR-.YYYY.-,HLC-PMR-.YYYY.-,
 Attach Medical Record,Allega cartella clinica,
-Reference DocType,Riferimento DocType,
 Spouse,Sposa,
 Family,Famiglia,
 Schedule Details,Dettagli pianificazione,
@@ -6983,16 +6895,8 @@
 HTML / Banner that will show on the top of product list.,HTML / Banner che verrà mostrato nella parte superiore della lista dei prodotti.,
 Set prefix for numbering series on your transactions,Impostare prefisso per numerazione serie sulle transazioni,
 Setup Series,Imposta Serie,
-Select Transaction,Selezionare Transaction,
-Help HTML,Aiuto HTML,
-Series List for this Transaction,Lista Serie per questa transazione,
-User must always select,L&#39;utente deve sempre selezionare,
-Check this if you want to force the user to select a series before saving. There will be no default if you check this.,"Seleziona se vuoi forzare l'utente a selezionare una serie prima di salvare, non ci sarà un valore di default.",
 Update Series,Aggiorna Serie,
 Change the starting / current sequence number of an existing series.,Cambia l'inizio/numero sequenza corrente per una serie esistente,
-Prefix,Prefisso,
-This is the number of the last created transaction with this prefix,Questo è il numero dell&#39;ultimo transazione creata con questo prefisso,
-Update Series Number,Aggiorna Numero della Serie,
 Quotation Lost Reason,Motivo per la mancata vendita,
 A third party distributor / dealer / commission agent / affiliate / reseller who sells the companies products for a commission.,Un distributore / agenzia / affiliato / rivenditore che vende i prodotti delle aziende per una commissione.,
 Sales Partner Name,Nome partner vendite,
@@ -7687,7 +7591,6 @@
 Warehouse wise Item Balance Age and Value,Magazzino saggio Saldo Età e valore,
 Work Order Stock Report,Rapporto di stock ordine di lavoro,
 Work Orders in Progress,Ordini di lavoro in corso,
-Validation Error,errore di convalida,
 Automatically Process Deferred Accounting Entry,Elaborazione automatica registrazione contabile differita,
 Bank Clearance,Liquidazione bancaria,
 Bank Clearance Detail,Dettaglio liquidazione bancaria,
@@ -7724,45 +7627,7 @@
 Therapy Plan: ,Piano terapeutico:,
 Total Counts Targeted: ,Conteggi totali mirati:,
 Total Counts Completed: ,Conteggi totali completati:,
-Andaman and Nicobar Islands,Isole Andamane e Nicobare,
-Andhra Pradesh,Andhra Pradesh,
-Arunachal Pradesh,Arunachal Pradesh,
-Assam,Assam,
-Bihar,Bihar,
-Chandigarh,Chandigarh,
-Chhattisgarh,Chhattisgarh,
-Dadra and Nagar Haveli,Dadra e Nagar Haveli,
-Daman and Diu,Daman e Diu,
-Delhi,Delhi,
-Goa,Goa,
-Gujarat,Gujarat,
-Haryana,Haryana,
-Himachal Pradesh,Himachal Pradesh,
-Jammu and Kashmir,Jammu e Kashmir,
-Jharkhand,Jharkhand,
-Karnataka,Karnataka,
-Kerala,Kerala,
-Lakshadweep Islands,Isole Lakshadweep,
-Madhya Pradesh,Madhya Pradesh,
-Maharashtra,Maharashtra,
-Manipur,Manipur,
-Meghalaya,Meghalaya,
-Mizoram,Mizoram,
-Nagaland,Nagaland,
-Odisha,Odisha,
-Other Territory,Altro territorio,
-Pondicherry,Pondicherry,
-Punjab,Punjab,
-Rajasthan,Rajasthan,
-Sikkim,Sikkim,
-Tamil Nadu,Tamil Nadu,
-Telangana,Telangana,
-Tripura,Tripura,
-Uttar Pradesh,Uttar Pradesh,
-Uttarakhand,Uttarakhand,
-West Bengal,Bengala occidentale,
 Is Mandatory,È obbligatorio,
-Published on,pubblicato su,
 Service Received But Not Billed,Servizio ricevuto ma non fatturato,
 Deferred Accounting Settings,Impostazioni di contabilità differita,
 Book Deferred Entries Based On,Registra voci differite basate su,
@@ -8035,8 +7900,6 @@
 Worksheet Instructions,Istruzioni del foglio di lavoro,
 Result Legend Print,Stampa della legenda dei risultati,
 Print Position,Posizione di stampa,
-Bottom,Parte inferiore,
-Top,Superiore,
 Both,Tutti e due,
 Result Legend,Legenda dei risultati,
 Lab Tests,Test di laboratorio,
@@ -8081,12 +7944,10 @@
 Approvers,Approvatori,
 The first Approver in the list will be set as the default Approver.,Il primo approvatore nell&#39;elenco verrà impostato come approvatore predefinito.,
 Shift Request Approver,Approvatore richiesta di turno,
-PAN Number,Numero PAN,
 Provident Fund Account,Conto del fondo di previdenza,
 MICR Code,Codice MICR,
 Repay unclaimed amount from salary,Rimborsare l&#39;importo non reclamato dallo stipendio,
 Deduction from salary,Detrazione dallo stipendio,
-Expired Leaves,Foglie scadute,
 If this is not checked the loan by default will be considered as a Demand Loan,"Se questa opzione non è selezionata, il prestito di default sarà considerato come un prestito a vista",
 This account is used for booking loan repayments from the borrower and also disbursing loans to the borrower,Questo conto viene utilizzato per la prenotazione del rimborso del prestito dal mutuatario e anche per l&#39;erogazione dei prestiti al mutuatario,
 This account is capital account which is used to allocate capital for loan disbursal account ,Questo conto è un conto capitale utilizzato per allocare il capitale per il conto di erogazione del prestito,
@@ -8844,3 +8705,41 @@
 Creating Purchase Order ...,Creazione dell&#39;ordine di acquisto ...,
 "Select a Supplier from the Default Suppliers of the items below. On selection, a Purchase Order will be made against items belonging to the selected Supplier only.","Seleziona un fornitore dai fornitori predefiniti degli articoli seguenti. Alla selezione, verrà effettuato un Ordine di acquisto solo per gli articoli appartenenti al Fornitore selezionato.",
 Row #{}: You must select {} serial numbers for item {}.,Riga # {}: è necessario selezionare i {} numeri di serie per l&#39;articolo {}.,
+Add Comment,Aggiungi un commento,
+More...,Di Più...,
+Notes,Note,
+Payment Gateway,Gateway di pagamento,
+Payment Gateway Name,Nome gateway di pagamento,
+Payments,pagamenti,
+Plan Name,Nome piano,
+Portal,Portale,
+Scan Barcode,Scansione Barcode,
+Some information is missing,Alcune informazioni manca,
+Successful,Riuscito,
+Tools,Strumenti,
+Use Sandbox,Usa Sandbox,
+Busy,Occupato,
+Completed By,Completato da,
+Payment Failed,Pagamento fallito,
+Column {0},Colonna {0},
+Field Mapping,Mappatura dei campi,
+Not Specified,Non specificato,
+Update Type,Tipo di aggiornamento,
+Dr,Dr,
+End Time,Ora fine,
+Fetching...,Recupero ...,
+"It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","Sembra che ci sia un problema con la configurazione delle strisce del server. In caso di fallimento, l&#39;importo verrà rimborsato sul tuo conto.",
+Looks like someone sent you to an incomplete URL. Please ask them to look into it.,Sembra che qualcuno ti ha mandato a un URL incompleto. Si prega di chiedere loro di esaminare il problema.,
+Master,Maestro,
+Pay,Paga,
+You can also copy-paste this link in your browser,È possibile anche copiare e incollare questo link nel tuo browser,
+Verified By,Verificato da,
+Invalid naming series (. missing) for {0},Serie di denominazione non valida (. Mancante) per {0},
+Phone Number,Numero di telefono,
+Account SID,Account SID,
+Global Defaults,Predefiniti Globali,
+Is Mandatory,È obbligatorio,
+WhatsApp,WhatsApp,
+Make a call,Effettuare una chiamata,
+Approve,Approva,
+Reject,Rifiutare,
diff --git a/erpnext/translations/ja.csv b/erpnext/translations/ja.csv
index e5ebeb3..11455bd 100644
--- a/erpnext/translations/ja.csv
+++ b/erpnext/translations/ja.csv
@@ -113,7 +113,6 @@
 Add Items,アイテム追加,
 Add Leads,リードを追加,
 Add Multiple Tasks,複数のタスクを追加する,
-Add Row,行の追加,
 Add Sales Partners,セールスパートナーを追加,
 Add Serial No,シリアル番号を追加,
 Add Students,生徒追加,
@@ -211,9 +210,7 @@
 An error occurred during the update process,更新処理中にエラーが発生しました,
 "An item exists with same name ({0}), please change the item group name or rename the item",同名のアイテム（{0}）が存在しますので、アイテムグループ名を変えるか、アイテム名を変更してください,
 Analyst,アナリスト,
-Analytics,分析,
 Annual Billing: {0},年次請求：{0},
-Anonymous,匿名,
 Another Budget record '{0}' already exists against {1} '{2}' and account '{3}' for fiscal year {4},会計年度{4}の{1} &#39;{2}&#39;とアカウント &#39;{3}&#39;に対してもう1つの予算レコード &#39;{0}&#39;が存在します,
 Another Period Closing Entry {0} has been made after {1},別の期間の決算仕訳 {0} が {1} の後に作成されています,
 Another Sales Person {0} exists with the same Employee id,他の営業担当者 {0} が同じ従業員IDとして存在します,
@@ -283,14 +280,12 @@
 Attendance not submitted for {0} as {1} on leave.,退出時に{0}に出席しなかった出席は{1}です。,
 Attribute table is mandatory,属性表は必須です,
 Attribute {0} selected multiple times in Attributes Table,属性 {0} は属性表内で複数回選択されています,
-Author,著者,
 Authorized Signatory,決裁者,
 Auto Material Requests Generated,自動資材要求生成済,
 Auto Repeat,自動繰り返し,
 Auto repeat document updated,自動繰り返し文書が更新されました,
 Automotive,自動車,
 Available,利用可,
-Available Leaves,利用可能な葉,
 Available Qty,利用可能な数量,
 Available Selling,販売可能,
 Available for use date is required,使用可能な日付が必要です,
@@ -340,7 +335,6 @@
 Base URL,ベースURL,
 Based On,参照元,
 Based On Payment Terms,支払条件に基づく,
-Basic,基本,
 Batch,バッチ,
 Batch Entries,バッチエントリ,
 Batch ID is mandatory,バッチIDは必須です,
@@ -361,7 +355,6 @@
 Billable Hours,請求可能時間,
 Billed,課金,
 Billed Amount,請求金額,
-Billing,請求,
 Billing Address,請求先住所,
 Billing Address is same as Shipping Address,請求先住所は配送先住所と同じです,
 Billing Amount,請求額,
@@ -560,7 +553,6 @@
 Consumed Qty,消費数量,
 Consumer Products,消費者製品,
 Contact,連絡先,
-Contact Details,連絡先の詳細,
 Contact Us,お問い合わせ,
 Content,内容,
 Content Masters,コンテンツマスター,
@@ -715,7 +707,6 @@
 Date of Joining,入社日,
 Date of Joining must be greater than Date of Birth,入社日は誕生日よりも後でなければなりません,
 Date of Transaction,取引日,
-Datetime,日時,
 Day,日,
 Debit,借方,
 Debit ({0}),デビット（{0}）,
@@ -874,7 +865,6 @@
 Employee cannot report to himself.,従業員は自分自身に報告することはできません。,
 Employee {0} has already applied for {1} between {2} and {3} : ,従業員{0}は{2}から{3}の間で既に{1}を申請しています：,
 Employee {0} of grade {1} have no default leave policy,{1}の従業員{0}にデフォルト休暇ポリシーはありません,
-Enable,有効にする,
 Enable / disable currencies.,通貨の有効／無効を切り替え,
 Enabled,有効,
 "Enabling 'Use for Shopping Cart', as Shopping Cart is enabled and there should be at least one Tax Rule for Shopping Cart",「ショッピングカートを使用」を有効にするには、ショッピングカートが有効でありかつショッピングカートに最低１つの税ルールが指定されていなければなりません,
@@ -905,7 +895,6 @@
 Error: Not a valid id?,エラー：有効なIDではない？,
 Estimated Cost,推定費用,
 "Even if there are multiple Pricing Rules with highest priority, then following internal priorities are applied:",最高優先度を持つ複数の価格設定ルールがあった場合でも、次の内部優先順位が適用されます,
-Event,イベント,
 Exchange Gain/Loss,取引利益/損失,
 Exchange Rate Revaluation master.,為替レート再評価マスタ。,
 Exchange Rate must be same as {0} {1} ({2}),為替レートは {0} と同じでなければなりません {1}（{2}）,
@@ -1032,7 +1021,6 @@
 From value must be less than to value in row {0},行{0}の値以下の値でなければなりません,
 From {0} | {1} {2},{0}から | {1} {2},
 Fulfillment,フルフィルメント,
-Full,フル,
 Full Name,氏名,
 Fully Depreciated,完全に減価償却,
 Furnitures and Fixtures,家具や備品,
@@ -1133,7 +1121,6 @@
 Hub Sync ID,ハブ同期ID,
 Human Resource,人材,
 Human Resources,人事,
-IFSC Code,IFSCコード,
 IGST Amount,IGST金額,
 IP Address,IPアドレス,
 ITC Available (whether in full op part),利用可能なITC（完全な一部かどうかにかかわらず）,
@@ -1185,7 +1172,6 @@
 Ineligible ITC,対象外ITC,
 Initiated,開始,
 Inpatient Record,入院記録,
-Insert,挿入,
 Installation Note,設置票,
 Installation Note {0} has already been submitted,設置票{0}はすでに提出されています,
 Installation date cannot be before delivery date for Item {0},設置日は、アイテム{0}の納品日より前にすることはできません,
@@ -1197,7 +1183,6 @@
 Insurance Start date should be less than Insurance End date,保険開始日は、保険終了日未満でなければなりません,
 Integrated Tax,統合税,
 Inter-State Supplies,州間物資,
-Interests,興味,
 Internet Publishing,インターネット出版,
 Intra-State Supplies,州内物資,
 Introduction,はじめに,
@@ -1316,7 +1301,6 @@
 Lab testing datetime cannot be before collection datetime,ラボテストdatetimeはコレクションdatetimeの前にはありません,
 Label,ラベル,
 Laboratory,研究室,
-Language Name,言語名,
 Large,L,
 Last Communication,最後のコミュニケーション,
 Last Communication Date,最終連絡日,
@@ -1347,8 +1331,6 @@
 Letter Heads for print templates.,印刷テンプレートのレターヘッド。,
 Level,レベル,
 Liability,負債,
-License,運転免許,
-Limit,リミット,
 Limit Crossed,リミットクロス,
 Link to Material Request,品目依頼へのリンク,
 List of all share transactions,すべての株式取引のリスト,
@@ -1359,7 +1341,6 @@
 Loans (Liabilities),ローン（負債）,
 Loans and Advances (Assets),ローンと貸付金（資産）,
 Local,現地,
-Log,ログ,
 Logs for maintaining sms delivery status,SMSの配信状態を維持管理するためのログ,
 Lost,失われた,
 Lost Reasons,失われた理由,
@@ -1445,7 +1426,6 @@
 Medical Department,医療部,
 Medical Record,医療記録,
 Medium,普通,
-Meeting,会議,
 Member Activity,メンバーの活動,
 Member ID,メンバーID,
 Member Name,メンバー名,
@@ -1495,7 +1475,6 @@
 Multiple Variants,複数のバリエーション,
 Multiple fiscal years exist for the date {0}. Please set company in Fiscal Year,日付 {0} には複数の会計年度が存在します。会計年度に会社を設定してください,
 Music,音楽,
-My Account,自分のアカウント,
 Name error: {0},名前エラー：{0},
 Name of new Account. Note: Please don't create accounts for Customers and Suppliers,新しいアカウント名。注：顧客やサプライヤーのためにアカウントを作成しないでください,
 Name or Email is mandatory,名前またはメールアドレスが必須です,
@@ -1538,7 +1517,6 @@
 New credit limit is less than current outstanding amount for the customer. Credit limit has to be atleast {0},新たな与信限度は顧客の現在の残高よりも少なくなっています。与信限度は少なくとも {0} である必要があります,
 New task,新しいタスク,
 New {0} pricing rules are created,新しい{0}料金設定ルールが作成されました,
-Newsletters,ニュースレター,
 Newspaper Publishers,新聞社,
 Next,次,
 Next Contact By cannot be same as the Lead Email Address,次の接触によっては、リードメールアドレスと同じにすることはできません,
@@ -1686,7 +1664,6 @@
 Other,その他,
 Other Reports,その他のレポート,
 "Other outward supplies(Nil rated,Exempted)",その他の外部供給品（定格なし、免除）,
-Others,その他,
 Out Qty,出量,
 Out Value,タイムアウト値,
 Out of Order,故障中,
@@ -1726,7 +1703,6 @@
 Party Type and Party is mandatory for {0} account,パーティータイプとパーティーは{0}アカウントで必須です,
 Party Type is mandatory,当事者タイプは必須です,
 Party is mandatory,当事者は必須です,
-Password,パスワード,
 Past Due Date,過去の期日,
 Patient,患者,
 Patient Appointment,患者予約,
@@ -1784,7 +1760,6 @@
 Pharmaceutical,医薬品,
 Pharmaceuticals,医薬品,
 Physician,医師,
-Pincode,郵便番号,
 Place Of Supply (State/UT),供給地（州/ユタ州）,
 Place Order,注文する,
 Plan Name,計画名,
@@ -1896,7 +1871,6 @@
 Please select date,日付を選択してください,
 Please select item code,アイテムコードを選択してください。,
 Please select month and year,月と年を選択してください,
-Please select prefix first,接頭辞を選択してください,
 Please select the Company,会社を選択してください,
 Please select the Multiple Tier Program type for more than one collection rules.,複数のコレクションルールに複数のティアプログラムタイプを選択してください。,
 Please select the assessment group other than 'All Assessment Groups',「すべての評価グループ」以外の評価グループを選択してください,
@@ -1913,7 +1887,6 @@
 Please set Company filter blank if Group By is 'Company',Group Byが &#39;Company&#39;の場合、Companyフィルターを空白に設定してください,
 Please set Default Payroll Payable Account in Company {0},当社ではデフォルトの給与支払ってくださいアカウントを設定してください{0},
 Please set Depreciation related Accounts in Asset Category {0} or Company {1},資産カテゴリー{0}または当社との減価償却に関連するアカウントを設定してください。{1},
-Please set Email Address,メールアドレスを設定してください,
 Please set GST Accounts in GST Settings,GST設定でGSTアカウントを設定してください,
 Please set Hotel Room Rate on {},{}にホテルの客室料金を設定してください,
 Please set Number of Depreciations Booked,予約された減価償却の数を設定してください,
@@ -1936,7 +1909,6 @@
 Please set the Email ID for the Student to send the Payment Request,支払依頼を送信する生徒のメールIDを設定してください,
 Please set the Item Code first,最初に商品コードを設定してください,
 Please set the Payment Schedule,支払いスケジュールを設定してください,
-Please set the series to be used.,使用するシリーズを設定してください。,
 Please set {0} for address {1},アドレス{1}に{0}を設定してください,
 Please setup Students under Student Groups,生徒グループ下に生徒を設定してください,
 Please specify Company,会社を指定してください,
@@ -1953,7 +1925,6 @@
 Point-of-Sale,POS,
 Point-of-Sale Profile,POSプロフィール,
 Portal,ポータル,
-Portal Settings,ポータル設定,
 Possible Supplier,可能性のあるサプライヤー,
 Postal Expenses,郵便経費,
 Posting Date,転記日付,
@@ -2152,12 +2123,10 @@
 Reference No is mandatory if you entered Reference Date,参照日を入力した場合は参照番号が必須です,
 Reference No.,参照番号,
 Reference Number,参照番号,
-Reference Owner,参照オーナー,
 Reference Type,参照タイプ,
 "Reference: {0}, Item Code: {1} and Customer: {2}",参照：{0}・アイテムコード：{1}・顧客：{2},
 References,参照,
 Refresh Token,トークン再発行,
-Region,地域,
 Register,登録,
 Rejected,拒否,
 Related,関連しました,
@@ -2179,7 +2148,6 @@
 Replace BOM and update latest price in all BOMs,BOMを交換し、すべてのBOMで最新価格を更新する,
 Replied,返答,
 Report,レポート,
-Report Builder,レポートビルダ,
 Report Type,レポートタイプ,
 Report Type is mandatory,レポートタイプは必須です,
 Reports,レポート,
@@ -2355,13 +2323,11 @@
 Same Company is entered more than once,同じ会社が複数回入力されています,
 Same item cannot be entered multiple times.,同じアイテムを複数回入力することはできません。,
 Same supplier has been entered multiple times,同じサプライヤーが複数回入力されています,
-Sample,サンプル,
 Sample Collection,サンプル収集,
 Sample quantity {0} cannot be more than received quantity {1},サンプル数{0}は受信数量{1}を超えることはできません,
 Sanctioned,認可済,
 Sand,砂,
 Saturday,土曜日,
-Saved,保存済,
 Saving {0},{0}を保存しています,
 Scan Barcode,バーコードをスキャン,
 Schedule,スケジュール,
@@ -2463,7 +2429,6 @@
 Series Updated,シリーズ更新,
 Series Updated Successfully,シリーズを正常に更新しました,
 Series is mandatory,シリーズは必須です,
-Series {0} already used in {1},シリーズは、{0}はすでに{1}で使用されています,
 Service,サービス,
 Service Level Agreement,サービスレベル契約,
 Service Level Agreement.,サービスレベル契約。,
@@ -2479,7 +2444,6 @@
 Set Tax Rule for shopping cart,ショッピングカート用の税ルールを設定,
 Set as Closed,クローズに設定,
 Set as Completed,完了として設定,
-Set as Default,デフォルトに設定,
 Set as Lost,失注として設定,
 Set as Open,オープンに設定,
 Set default inventory account for perpetual inventory,永続在庫のデフォルト在庫アカウントの設定,
@@ -2511,7 +2475,6 @@
 Shareholder,株主,
 Ship To State,船への状態,
 Shipments,出荷,
-Shipping,出荷,
 Shipping Address,発送先,
 "Shipping Address does not have country, which is required for this Shipping Rule",配送ルールに必要な国が配送先住所に存在しません,
 Shipping rule only applicable for Buying,配送ルールは購入にのみ適用されます,
@@ -2564,7 +2527,6 @@
 Split Batch,バッチ分割,
 Split Issue,分割問題,
 Sports,スポーツ,
-Standard,標準,
 Standard Buying,標準購入,
 Standard Selling,標準販売,
 Standard contract terms for Sales or Purchase.,販売・仕入用の標準的な契約条件,
@@ -2731,7 +2693,6 @@
 Terms and Conditions,規約,
 Terms and Conditions Template,規約のテンプレート,
 Territory,地域,
-Test,テスト,
 Thank you for your business!,お買い上げありがとうございます！,
 The 'From Package No.' field must neither be empty nor it's value less than 1.,「From Package No.」は、フィールドは空でも値も1未満でなければなりません。,
 The Brand,ブランド,
@@ -2848,7 +2809,6 @@
 Total (Without Tax),合計（税なし）,
 Total Achieved,達成計,
 Total Actual,実費計,
-Total Allocated Leaves,割り当てられた合計葉,
 Total Amount,合計,
 Total Amount Credited,合計金額,
 Total Applicable Charges in Purchase Receipt Items table must be same as Total Taxes and Charges,購入レシートItemsテーブル内の合計有料合計税金、料金と同じでなければなりません,
@@ -2892,7 +2852,6 @@
 Total(Amt),合計（数）,
 Total(Qty),合計（量）,
 Traceability,トレーサビリティ,
-Traceback,トレースバック,
 Track Leads by Lead Source.,リードソースによるリードの追跡,
 Transaction,取引,
 Transaction Date,取引日,
@@ -2930,7 +2889,6 @@
 UOM Conversion factor is required in row {0},行{0}には数量単位変換係数が必要です,
 UOM coversion factor required for UOM: {0} in Item: {1},アイテム{1}の{0}には数量単位変換係数が必要です,
 URL,URL,
-Unable to find DocType {0},DocType {0}を見つけることができません,
 Unable to find exchange rate for {0} to {1} for key date {2}. Please create a Currency Exchange record manually,キー日付{2}の{0}から{1}への為替レートを見つけることができません。通貨レコードを手動で作成してください,
 Unable to find score starting at {0}. You need to have standing scores covering 0 to 100,{0}から始まるスコアを見つけることができません。あなたは、0〜100までの既定のスコアを持つ必要があります,
 Unable to find variable: ,変数を見つけることができません：,
@@ -2960,7 +2918,6 @@
 Upload your letter head and logo. (you can edit them later).,レターヘッドとロゴをアップロードします（後で編集可能です）,
 Upper Income,高収益,
 Use Sandbox,サンドボックスを使用,
-Used Leaves,中古の葉,
 User,ユーザー,
 User ID,ユーザー ID,
 User ID not set for Employee {0},従業員{0}のユーザーIDが未設定です。,
@@ -3051,7 +3008,6 @@
 Website Settings,Webサイト設定,
 Wednesday,水曜日,
 Week,週,
-Weekdays,平日,
 Weekly,毎週,
 "Weight is mentioned,\nPlease mention ""Weight UOM"" too",重量が記載されていますので、あわせて「重量単位」を記載してください,
 Welcome email sent,ウェルカムメールが送信されました。,
@@ -3072,7 +3028,6 @@
 Work Order {0} must be submitted,作業指示書{0}を提出する必要があります,
 Work Orders Created: {0},作成された作業オーダー：{0},
 Work-in-Progress Warehouse is required before Submit,提出する前に作業中の倉庫が必要です,
-Workflow,ワークフロー,
 Working,進行中,
 Working Hours,労働時間,
 Workstation,作業所,
@@ -3102,7 +3057,6 @@
 You need to be a user other than Administrator with System Manager and Item Manager roles to register on Marketplace.,Marketplaceに登録するには、System ManagerおよびItem Managerの役割を持つ管理者以外のユーザーである必要があります。,
 You need to be a user with System Manager and Item Manager roles to add users to Marketplace.,ユーザーをMarketplaceに追加するには、System ManagerおよびItem Managerの役割を持つユーザーである必要があります。,
 You need to be a user with System Manager and Item Manager roles to register on Marketplace.,Marketplaceに登録するには、System ManagerおよびItem Managerの役割を持つユーザーである必要があります。,
-You need to be logged in to access this page,このページにアクセスするにはログインする必要があります,
 You need to enable Shopping Cart,「ショッピングカート」を有効にしてください,
 You will lose records of previously generated invoices. Are you sure you want to restart this subscription?,以前に生成された請求書のレコードは失われます。この定期購入を再開してもよろしいですか？,
 Your Organization,あなたの組織,
@@ -3218,7 +3172,6 @@
 Assigned To,割当先,
 Chat,チャット,
 Completed By,完了者,
-County,郡,
 Day of Week,曜日,
 "Dear System Manager,",システムマネージャーさん,
 Default Value,デフォルト値,
@@ -3229,31 +3182,21 @@
 Fieldtype,フィールドタイプ,
 Help Articles,ヘルプ記事,
 ID,ID,
-Images,画像,
 Import,インポート,
 Language,言語,
 Likes,いいね！,
 Merge with existing,既存のものとマージ,
-Office,事務所,
 Orientation,オリエンテーション,
 Parent,親,
-Passive,消極的,
 Payment Failed,支払いできませんでした,
-Permanent,恒久的な,
 Personal,個人情報,
-Plant,プラント,
 Post,投稿,
-Postal,郵便,
 Postal Code,郵便番号,
-Previous,前,
 Provider,プロバイダ,
 Read Only,読み取り専用,
 Recipient,受信者,
 Reviews,レビュー,
 Sender,送信者,
-Shop,店,
-Subsidiary,子会社,
-There is some problem with the file url: {0},ファイルURLに問題があります：{0},
 There were errors while sending email. Please try again.,メールの送信中にエラーが発生しました。もう一度お試しください。,
 Values Changed,変更された値,
 or,または,
@@ -3280,19 +3223,16 @@
 Quality Feedback Template,品質フィードバックテンプレート,
 Rules for applying different promotional schemes.,さまざまなプロモーションスキームを適用するための規則。,
 Show {0},{0}を表示,
-"Special Characters except '-', '#', '.', '/', '{{' and '}}' not allowed in naming series {0}",&quot; - &quot;、 &quot;＃&quot;、 &quot;。&quot;、 &quot;/&quot;、 &quot;{{&quot;、および &quot;}}&quot;以外の特殊文字は、一連の名前付けでは使用できません {0},
 Target Details,ターゲット詳細,
 {0} already has a Parent Procedure {1}.,{0}にはすでに親プロシージャー{1}があります。,
 API,API,
 Annual,年次,
 Change,変更,
 Contact Email,連絡先 メール,
-Export Type,輸出タイプ,
 From Date,開始日,
 Group By,グループ化,
 Invalid URL,無効なURL,
 Landscape,景観,
-Last Sync On,最後の同期オン,
 Naming Series,シリーズ名を付ける,
 No data to export,エクスポートするデータがありません,
 Portrait,ポートレート,
@@ -3302,7 +3242,6 @@
 Show Document,ドキュメントを表示,
 Show Traceback,トレースバックを表示,
 Video,ビデオ,
-Webhook Secret,Webhookシークレット,
 % Of Grand Total,総計の％,
 <b>Company</b> is a mandatory filter.,<b>会社</b>は必須フィルターです。,
 <b>From Date</b> is a mandatory filter.,<b>開始日</b>は必須フィルターです。,
@@ -3358,7 +3297,6 @@
 BOM Comparison Tool,BOM比較ツール,
 BOM recursion: {0} cannot be child of {1},BOM再帰：{0}は{1}の子にはできません,
 BOM recursion: {0} cannot be parent or child of {1},BOM再帰：{0}を{1}の親または子にすることはできません,
-Back to Home,家に帰る,
 Back to Messages,メッセージに戻る,
 Bank Data mapper doesn't exist,銀行データマッパーが存在しません,
 Bank Details,銀行の詳細,
@@ -3420,7 +3358,6 @@
 Currency,通貨,
 Current Status,現在のステータス,
 Customer PO,得意先PO,
-Customize,カスタマイズ,
 Daily,日次,
 Date,日付,
 Date of Birth cannot be greater than Joining Date.,生年月日は入会日より大きくすることはできません。,
@@ -3454,7 +3391,6 @@
 ERPNext could not find any matching payment entry,ERPNextが一致する支払いエントリを見つけることができませんでした,
 Earliest Age,最古の時代,
 Edit Details,詳細を編集する,
-Edit Profile,プロフィール編集,
 Either GST Transporter ID or Vehicle No is required if Mode of Transport is Road,交通手段が道路の場合は、GSTトランスポータIDまたは車両番号のいずれかが必要です。,
 Email,Eメール,
 Email Campaigns,メールキャンペーン,
@@ -3482,7 +3418,6 @@
 Fetch Items from Warehouse,倉庫からアイテムを取得する,
 Fetching...,取得しています...,
 Field,フィールド,
-File Manager,ファイルマネージャー,
 Filters,フィルター,
 Finding linked payments,リンクされた支払いを探す,
 Fleet Management,フリート管理,
@@ -3521,7 +3456,6 @@
 Incorrect Warehouse,間違った倉庫,
 Invalid Barcode. There is no Item attached to this barcode.,無効なバーコード。このバーコードに添付されたアイテムはありません。,
 Invalid credentials,無効な資格情報,
-Invite as User,ユーザーとして招待,
 Issue Priority.,優先順位を発行します。,
 Issue Type.,問題の種類。,
 "It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.",サーバーのストライプ構成に問題があるようです。不具合が発生した場合、その金額はお客様のアカウントに払い戻されます。,
@@ -3564,7 +3498,6 @@
 New Invoice,新しい請求書,
 New Payment,新しい支払い,
 New release date should be in the future,新しいリリース日は将来になるはずです,
-Newsletter,ニュースレター,
 No Account matched these filters: {},これらのフィルタに一致するアカウントはありません：{},
 No communication found.,通信が見つかりませんでした。,
 No correct answer is set for {0},{0}に正しい答えが設定されていません,
@@ -3640,7 +3573,6 @@
 Please setup a default bank account for company {0},会社{0}のデフォルトの銀行口座を設定してください,
 Please specify,指定してください,
 Please specify a {0},{0}を指定してください,lead
-Printing,印刷,
 Priority,優先度,
 Priority has been changed to {0}.,優先順位が{0}に変更されました。,
 Priority {0} has been repeated.,優先順位{0}が繰り返されました。,
@@ -3649,7 +3581,6 @@
 Project,プロジェクト,
 Provide the academic year and set the starting and ending date.,学年を入力し、開始日と終了日を設定します。,
 Public token is missing for this bank,この銀行の公開トークンがありません,
-Publish,公開,
 Publish 1 Item,1アイテムを公開,
 Publish Items,アイテムを公開する,
 Publish More Items,他のアイテムを公開する,
@@ -3677,7 +3608,6 @@
 Reconciled,調整済み,
 Recruitment,求人,
 Red,レッド,
-Refreshing,リフレッシュ,
 Release date must be in the future,発売日は未来でなければなりません,
 Relieving Date must be greater than or equal to Date of Joining,免除日は参加日以上でなければなりません,
 Rename,名称変更,
@@ -3721,7 +3651,6 @@
 Search for a payment,支払いを検索する,
 Search for anything ...,何でも検索...,
 Search results for,検索結果,
-Select All,すべて選択,
 Select Difference Account,差額勘定を選択,
 Select a Default Priority.,デフォルトの優先順位を選択します。,
 Select a company,会社を選択,
@@ -3740,11 +3669,9 @@
 Service Level Agreement has been changed to {0}.,サービスレベル契約が{0}に変更されました。,
 Service Level Agreement was reset.,サービスレベル契約がリセットされました。,
 Service Level Agreement with Entity Type {0} and Entity {1} already exists.,エンティティタイプ{0}とエンティティ{1}のサービスレベル契約が既に存在します。,
-Set,設定,
 Set Meta Tags,メタタグを設定する,
 Set {0} in company {1},会社{1}に{0}を設定します,
 Setup,セットアップ,
-Setup Wizard,セットアップウィザード,
 Shift Management,シフト管理,
 Show Future Payments,将来の支払いを表示,
 Show Linked Delivery Notes,リンクされた納品書を表示,
@@ -3815,7 +3742,6 @@
 Unreconciled,未調整,
 Unsupported GST Category for E-Way Bill JSON generation,e-Way Bill JSON生成用のサポートされていないGSTカテゴリ,
 Update,更新,
-Update Details,更新の詳細,
 Update Taxes for Items,アイテムの税金を更新,
 "Upload a bank statement, link or reconcile a bank account",銀行取引明細書のアップロード、銀行口座へのリンクまたは調整,
 Upload a statement,明細書をアップロードする,
@@ -3839,7 +3765,6 @@
 XML Files Processed,処理されたXMLファイル,
 Year,年,
 Yearly,毎年,
-You,あなた,
 You are not allowed to enroll for this course,このコースに登録することは許可されていません,
 You are not enrolled in program {0},あなたはプログラム{0}に登録されていません,
 You can Feature upto 8 items.,最大8つのアイテムをフィーチャーできます。,
@@ -3856,7 +3781,6 @@
 e-Way Bill already exists for this document,この文書に対するe-Way Billはすでに存在します,
 woocommerce - {0},woocommerce-{0},
 {0} Coupon used are {1}. Allowed quantity is exhausted,{0}使用されるクーポンは{1}です。許容量を使い果たしました,
-{0} Name,{0}の名前,
 {0} Operations: {1},{0}操作：{1},
 {0} bank transaction(s) created,{0}の銀行取引が作成されました,
 {0} bank transaction(s) created and {1} errors,{0}銀行取引が作成され、{1}エラーが発生しました,
@@ -3875,17 +3799,13 @@
 Total Income,総収入,
 Total Income This Year,今年の総収入,
 Barcode,バーコード,
-Bold,大胆な,
-Center,中央,
 Clear,晴れ,
-Comment,コメント,
 Comments,コメント,
 DocType,DocType,
 Download,ダウンロード,
 Left,退職,
 Link,リンク,
 New,新着,
-Not Found,見つかりません,
 Print,印刷する,
 Reference Name,参照名,
 Refresh,再読込,
@@ -3908,7 +3828,6 @@
 Email Id,メールアドレス,
 No,いいえ,
 Reference Doctype,参照文書型,
-User Id,ユーザーID,
 Yes,はい,
 Actual ,実際,
 Add to cart,カートに追加,
@@ -4304,7 +4223,6 @@
 e.g Adjustments for:,例：,
 Section Subtotal,セクション小計,
 Section Footer,セクションフッター,
-Position,ポジション,
 Cash Flow Mapping,キャッシュフローマッピング,
 Select Maximum Of 1,最大1を選択,
 Is Finance Cost,財務コスト,
@@ -4936,7 +4854,6 @@
 Previous Business Day,前営業日,
 Next Business Day,翌営業日,
 Urgent,緊急,
-Crop,作物,
 Crop Name,トリミングの名前,
 Scientific Name,学名,
 "You can define all the tasks which need to carried out for this crop here. The day field is used to mention the day on which the task needs to be carried out, 1 being the 1st day, etc.. ",ここでは、この作物に必要な全てのタスクを定義することができます。日フィールドは、タスクの実行が必要な日（1が1日など）を指定するために使用されます。,
@@ -5441,7 +5358,6 @@
 To TIme,終了時間,
 Course End Date,コース終了日,
 Course Topic,コーストピック,
-Topic,トピック,
 Topic Name,トピック名,
 Education Settings,教育設定,
 Current Academic Year,現在のアカデミックイヤー,
@@ -5516,7 +5432,6 @@
 Check this if the Student is residing at the Institute's Hostel.,学生が研究所のホステルに住んでいる場合はこれをチェックしてください。,
 Walking,徒歩,
 Institute's Bus,研究所のバス,
-Public Transport,公共交通機関,
 Self-Driving Vehicle,自動運転車,
 Pick/Drop by Guardian,ガーディアンによるピック/ドロップ,
 Enrolled courses,入学したコース,
@@ -5697,7 +5612,6 @@
 Default Cost Center,デフォルトコストセンター,
 Undeposited Funds Account,未払い資金口座,
 Shopify Log,Shopifyログ,
-Request Data,リクエストデータ,
 Shopify Settings,Shopifyの設定,
 status html,ステータスHTML,
 Enable Shopify,Shopifyを有効にする,
@@ -5817,7 +5731,6 @@
 Exercise Instructions,運動指導,
 Exercise Video,エクササイズビデオ,
 Exercise Steps,演習手順,
-Steps,ステップ,
 Steps Table,ステップ表,
 Exercise Type Step,エクササイズタイプステップ,
 Max number of visit,訪問の最大数,
@@ -6001,7 +5914,6 @@
 Patient Encounter Symptom,患者との遭遇症状,
 HLC-PMR-.YYYY.-,HLC-PMR-.YYYY.-,
 Attach Medical Record,医療記録を添付する,
-Reference DocType,参照DocType,
 Spouse,配偶者,
 Family,家族,
 Schedule Details,スケジュールの詳細,
@@ -6983,16 +6895,8 @@
 HTML / Banner that will show on the top of product list.,製品リストの一番上に表示されるHTML／バナー,
 Set prefix for numbering series on your transactions,取引に連番の接頭辞を設定,
 Setup Series,シリーズ設定,
-Select Transaction,取引を選択,
-Help HTML,HTMLヘルプ,
-Series List for this Transaction,この取引のシリーズ一覧,
-User must always select,ユーザーは常に選択する必要があります,
-Check this if you want to force the user to select a series before saving. There will be no default if you check this.,あなたが保存する前に、一連の選択をユーザに強制したい場合は、これを確認してください。これをチェックするとデフォルトはありません。,
 Update Series,シリーズ更新,
 Change the starting / current sequence number of an existing series.,既存のシリーズについて、開始／現在の連続番号を変更します。,
-Prefix,接頭辞,
-This is the number of the last created transaction with this prefix,この接頭辞が付いた最新の取引番号です,
-Update Series Number,シリーズ番号更新,
 Quotation Lost Reason,失注理由,
 A third party distributor / dealer / commission agent / affiliate / reseller who sells the companies products for a commission.,コミッションのための企業の製品を販売している第三者の代理店/ディーラー/コミッションエージェント/アフィリエイト/リセラー。,
 Sales Partner Name,販売パートナー名,
@@ -7687,7 +7591,6 @@
 Warehouse wise Item Balance Age and Value,倉庫賢明なアイテムのバランス年齢と価値,
 Work Order Stock Report,作業命令在庫レポート,
 Work Orders in Progress,作業オーダーの進行中,
-Validation Error,検証エラー,
 Automatically Process Deferred Accounting Entry,繰延会計仕訳を自動的に処理する,
 Bank Clearance,銀行決済,
 Bank Clearance Detail,銀行決済の詳細,
@@ -7724,45 +7627,7 @@
 Therapy Plan: ,治療計画：,
 Total Counts Targeted: ,対象となる総数：,
 Total Counts Completed: ,完了した合計カウント：,
-Andaman and Nicobar Islands,アンダマンニコバル諸島,
-Andhra Pradesh,アンドラプラデーシュ,
-Arunachal Pradesh,アルナーチャルプラデーシュ州,
-Assam,アッサム,
-Bihar,ビハール,
-Chandigarh,チャンディーガル,
-Chhattisgarh,チャッティースガル,
-Dadra and Nagar Haveli,ダドラとナガルハベリ,
-Daman and Diu,ダマンディーウ,
-Delhi,デリー,
-Goa,行きます,
-Gujarat,グジャラート,
-Haryana,ハリヤナ,
-Himachal Pradesh,ヒマーチャルプラデーシュ州,
-Jammu and Kashmir,ジャンムー・カシミール,
-Jharkhand,ジャールカンド,
-Karnataka,カルナータカ,
-Kerala,ケララ,
-Lakshadweep Islands,ラクシャディープ諸島,
-Madhya Pradesh,マディヤプラデーシュ,
-Maharashtra,マハラシュトラ,
-Manipur,マニプール,
-Meghalaya,メガラヤ,
-Mizoram,ミゾラム,
-Nagaland,ナガランド,
-Odisha,オリッサ,
-Other Territory,その他の地域,
-Pondicherry,ポンディシェリ,
-Punjab,パンジャーブ,
-Rajasthan,ラージャスターン,
-Sikkim,シッキム,
-Tamil Nadu,タミル・ナードゥ,
-Telangana,テランガーナ,
-Tripura,トリプラ,
-Uttar Pradesh,ウッタルプラデーシュ,
-Uttarakhand,ウッタラーカンド州,
-West Bengal,西ベンガル,
 Is Mandatory,必須です,
-Published on,に公開,
 Service Received But Not Billed,サービスを受けたが請求されていない,
 Deferred Accounting Settings,据え置き会計設定,
 Book Deferred Entries Based On,に基づいて延期されたエントリを予約する,
@@ -8035,8 +7900,6 @@
 Worksheet Instructions,ワークシートの説明,
 Result Legend Print,結果凡例印刷,
 Print Position,印刷位置,
-Bottom,下,
-Top,上,
 Both,両方,
 Result Legend,結果の凡例,
 Lab Tests,ラボテスト,
@@ -8081,12 +7944,10 @@
 Approvers,承認者,
 The first Approver in the list will be set as the default Approver.,リストの最初の承認者がデフォルトの承認者として設定されます。,
 Shift Request Approver,シフトリクエスト承認者,
-PAN Number,PAN番号,
 Provident Fund Account,プロビデントファンドアカウント,
 MICR Code,MICRコード,
 Repay unclaimed amount from salary,未請求額を給与から返済する,
 Deduction from salary,給与からの控除,
-Expired Leaves,期限切れの葉,
 If this is not checked the loan by default will be considered as a Demand Loan,これがチェックされていない場合、デフォルトでローンはデマンドローンと見なされます,
 This account is used for booking loan repayments from the borrower and also disbursing loans to the borrower,このアカウントは、借り手からのローン返済の予約と、借り手へのローンの支払いに使用されます。,
 This account is capital account which is used to allocate capital for loan disbursal account ,この口座は、ローン実行口座に資本を割り当てるために使用される資本口座です。,
@@ -8844,3 +8705,41 @@
 Creating Purchase Order ...,注文書の作成..。,
 "Select a Supplier from the Default Suppliers of the items below. On selection, a Purchase Order will be made against items belonging to the selected Supplier only.",以下の項目のデフォルトサプライヤーからサプライヤーを選択します。選択時に、選択したサプライヤーに属するアイテムに対してのみ発注書が作成されます。,
 Row #{}: You must select {} serial numbers for item {}.,行＃{}：アイテム{}の{}シリアル番号を選択する必要があります。,
+Add Comment,コメント追加,
+More...,もっと...,
+Notes,ノート,
+Payment Gateway,ペイメントゲートウェイ,
+Payment Gateway Name,支払いゲートウェイ名,
+Payments,支払,
+Plan Name,計画名,
+Portal,ポータル,
+Scan Barcode,バーコードをスキャン,
+Some information is missing,一部の情報が欠落しています,
+Successful,成功した,
+Tools,ツール,
+Use Sandbox,サンドボックスを使用,
+Busy,取り込み中,
+Completed By,完了者,
+Payment Failed,支払いできませんでした,
+Column {0},列{0},
+Field Mapping,フィールドマッピング,
+Not Specified,指定されていない,
+Update Type,更新タイプ,
+Dr,借方,
+End Time,終了時間,
+Fetching...,取得しています...,
+"It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.",サーバーのストライプ構成に問題があるようです。不具合が発生した場合、その金額はお客様のアカウントに払い戻されます。,
+Looks like someone sent you to an incomplete URL. Please ask them to look into it.,あなたが不完全なURLに送信された誰かのように見えます。それに見て、それらを依頼してください。,
+Master,マスター,
+Pay,支払,
+You can also copy-paste this link in your browser,このリンクをコピー＆ペーストできます,
+Verified By,検証者,
+Invalid naming series (. missing) for {0},{0}の命名シリーズが無効です（。欠落しています）,
+Phone Number,電話番号,
+Account SID,アカウントSID,
+Global Defaults,共通デフォルト設定,
+Is Mandatory,必須です,
+WhatsApp,WhatsApp,
+Make a call,電話を掛ける,
+Approve,承認,
+Reject,拒否,
diff --git a/erpnext/translations/km.csv b/erpnext/translations/km.csv
index 0dbecca..46dcaba 100644
--- a/erpnext/translations/km.csv
+++ b/erpnext/translations/km.csv
@@ -113,7 +113,6 @@
 Add Items,បញ្ចូលមុខទំនិញ,
 Add Leads,បន្ថែមមេ,
 Add Multiple Tasks,បន្ថែមភារកិច្ចច្រើន,
-Add Row,បន្ថែមជួរដេក,
 Add Sales Partners,បន្ថែមដៃគូលក់,
 Add Serial No,បន្ថែមគ្មានសៀរៀល,
 Add Students,បន្ថែមសិស្ស,
@@ -211,9 +210,7 @@
 An error occurred during the update process,កំហុសមួយបានកើតឡើងកំឡុងពេលធ្វើបច្ចុប្បន្នភាព,
 "An item exists with same name ({0}), please change the item group name or rename the item","ធាតុមួយមានឈ្មោះដូចគ្នា ({0}), សូមផ្លាស់ប្តូរឈ្មោះធាតុឬប្ដូរឈ្មោះក្រុមធាតុ",
 Analyst,អ្នកវិភាគ,
-Analytics,វិធីវិភាគ,
 Annual Billing: {0},វិក័យប័ត្រប្រចាំឆ្នាំ: {0},
-Anonymous,អនាមិក,
 Another Budget record '{0}' already exists against {1} '{2}' and account '{3}' for fiscal year {4},កំណត់ត្រាថវិកាមួយទៀត &#39;{0}&#39; មានរួចហើយប្រឆាំងនឹង {1} &#39;{2}&#39; និងគណនី &#39;{3}&#39; សម្រាប់ឆ្នាំសារពើពន្ធ {4},
 Another Period Closing Entry {0} has been made after {1},មួយទៀតការចូលបិទរយៈពេល {0} ត្រូវបានធ្វើឡើងបន្ទាប់ពី {1},
 Another Sales Person {0} exists with the same Employee id,បុគ្គលលក់មួយផ្សេងទៀត {0} មានដែលមានលេខសម្គាល់និយោជិតដូចគ្នា,
@@ -283,14 +280,12 @@
 Attendance not submitted for {0} as {1} on leave.,ការចូលរួមមិនត្រូវបានដាក់ស្នើសម្រាប់ {0} ជា {1} នៅលើការឈប់សម្រាក។,
 Attribute table is mandatory,តារាងគុណលក្ខណៈគឺជាការចាំបាច់,
 Attribute {0} selected multiple times in Attributes Table,គុណលក្ខណៈ {0} បានជ្រើសរើសច្រើនដងក្នុងតារាងគុណលក្ខណៈ,
-Author,អ្នកនិពន្ធ,
 Authorized Signatory,ហត្ថលេខីដែលបានអនុញ្ញាត,
 Auto Material Requests Generated,សម្ភារៈដោយស្វ័យប្រវត្តិសំណើបង្កើត,
 Auto Repeat,ធ្វើម្តងទៀតដោយស្វ័យប្រវត្តិ,
 Auto repeat document updated,បានធ្វើបច្ចុប្បន្នភាពឯកសារដោយស្វ័យប្រវត្តិ,
 Automotive,រថយន្ដ,
 Available,ដែលអាចប្រើបាន,
-Available Leaves,មានស្លឹក,
 Available Qty,ដែលអាចប្រើបាន Qty,
 Available Selling,លក់ដែលអាចប្រើបាន,
 Available for use date is required,អាចរកបានសម្រាប់កាលបរិច្ឆេទប្រើ,
@@ -340,7 +335,6 @@
 Base URL,URL មូលដ្ឋាន,
 Based On,ដោយផ្អែកលើការ,
 Based On Payment Terms,ផ្អែកលើល័ក្ខខ័ណ្ឌទូទាត់។,
-Basic,ជាមូលដ្ឋាន,
 Batch,ជំនាន់ទី,
 Batch Entries,ធាតុបាច់។,
 Batch ID is mandatory,លេខសម្គាល់បាច់ជាការចាំបាច់,
@@ -361,7 +355,6 @@
 Billable Hours,ម៉ោងដែលអាចចេញវិក្កយបត្របាន។,
 Billed,ផ្សព្វផ្សាយ,
 Billed Amount,ចំនួនទឹកប្រាក់ដែលបានផ្សព្វផ្សាយ,
-Billing,វិក័យប័ត្រ,
 Billing Address,វិក័យប័ត្រអាសយដ្ឋាន,
 Billing Address is same as Shipping Address,អាសយដ្ឋានវិក្កយបត្រគឺដូចគ្នានឹងអាសយដ្ឋានដឹកជញ្ជូនដែរ។,
 Billing Amount,ចំនួនវិក័យប័ត្រ,
@@ -560,7 +553,6 @@
 Consumed Qty,ប្រើប្រាស់ Qty,
 Consumer Products,ផលិតផលទំនិញប្រើប្រាស់,
 Contact,ការទំនាក់ទំនង,
-Contact Details,ពត៌មានទំនាក់ទំនង,
 Contact Us,ទាក់ទងមកពួកយើង,
 Content,មាតិការ,
 Content Masters,អនុបណ្ឌិតមាតិកា។,
@@ -715,7 +707,6 @@
 Date of Joining,កាលបរិច្ឆេទនៃការចូលរួម,
 Date of Joining must be greater than Date of Birth,កាលបរិច្ឆេទនៃការចូលរួមត្រូវតែធំជាងថ្ងៃខែឆ្នាំកំណើត,
 Date of Transaction,កាលបរិច្ឆេទនៃប្រតិបត្តិការ,
-Datetime,Datetime,
 Day,ថ្ងៃ,
 Debit,ឥណពន្ធ,
 Debit ({0}),ឥណពន្ធ ({0}),
@@ -874,7 +865,6 @@
 Employee cannot report to himself.,បុគ្គលិកមិនអាចរាយការណ៍ទៅខ្លួនឯង។,
 Employee {0} has already applied for {1} between {2} and {3} : ,និយោជិក {0} បានអនុវត្តរួចហើយសម្រាប់ {1} រវាង {2} និង {3}:,
 Employee {0} of grade {1} have no default leave policy,និយោជក {0} នៃថ្នាក់ {1} មិនមានគោលនយោបាយចាកចេញទេ,
-Enable,អនុញ្ញាត,
 Enable / disable currencies.,អនុញ្ញាត / មិនអនុញ្ញាតឱ្យរូបិយប័ណ្ណ។,
 Enabled,បានបើក,
 "Enabling 'Use for Shopping Cart', as Shopping Cart is enabled and there should be at least one Tax Rule for Shopping Cart",បើក &#39;ប្រើសម្រាប់ការកន្រ្តកទំនិញដូចដែលត្រូវបានអនុញ្ញាតកន្រ្តកទំនិញនិងគួរតែមានច្បាប់ពន្ធយ៉ាងហោចណាស់មួយសម្រាប់ការកន្រ្តកទំនិញ,
@@ -905,7 +895,6 @@
 Error: Not a valid id?,កំហុស: មិនមានអត្តសញ្ញាណប័ណ្ណដែលមានសុពលភាព?,
 Estimated Cost,តំលៃ,
 "Even if there are multiple Pricing Rules with highest priority, then following internal priorities are applied:",បើទោះបីជាមានច្បាប់តម្លៃច្រើនដែលមានអាទិភាពខ្ពស់បំផុតបន្ទាប់មកបន្ទាប់ពីមានអាទិភាពផ្ទៃក្នុងត្រូវបានអនុវត្ត:,
-Event,ព្រឹត្តការណ៍,
 Exchange Gain/Loss,អត្រាប្តូរប្រាក់ចំណេញ / បាត់បង់,
 Exchange Rate Revaluation master.,មេវាយតម្លៃវាយតម្លៃអត្រាប្តូរប្រាក់។,
 Exchange Rate must be same as {0} {1} ({2}),អត្រាប្តូរប្រាក់ត្រូវតែមានដូចគ្នា {0} {1} ({2}),
@@ -1032,7 +1021,6 @@
 From value must be less than to value in row {0},ពីតម្លៃត្រូវតែតិចជាងទៅនឹងតម្លៃនៅក្នុងជួរដេក {0},
 From {0} | {1} {2},ពី {0} | {1} {2},
 Fulfillment,ការបំពេញ,
-Full,ពេញ,
 Full Name,ឈ្មោះពេញ,
 Fully Depreciated,ធ្លាក់ថ្លៃយ៉ាងពេញលេញ,
 Furnitures and Fixtures,គ្រឿងសង្ហារឹមនិងព្រឹត្តិការណ៍ប្រកួត,
@@ -1133,7 +1121,6 @@
 Hub Sync ID,Hub Sync ID,
 Human Resource,ធនធានមនុស្ស,
 Human Resources,ធនធានមនុស្ស,
-IFSC Code,កូដ IFSC,
 IGST Amount,បរិមាណ IGST,
 IP Address,អាសយដ្ឋាន IP,
 ITC Available (whether in full op part),មានអាយ។ ស៊ី។ ធី។ (មិនថាជាផ្នែកពេញលេញ),
@@ -1185,7 +1172,6 @@
 Ineligible ITC,អាយធីស៊ីមិនមានលក្ខណៈសម្បត្តិគ្រប់គ្រាន់។,
 Initiated,ផ្តួចផ្តើម,
 Inpatient Record,កំណត់ត្រាអ្នកជំងឺក្នុងមន្ទីរពេទ្យ,
-Insert,បញ្ចូល,
 Installation Note,ចំណាំការដំឡើង,
 Installation Note {0} has already been submitted,ការដំឡើងចំណាំ {0} ត្រូវបានដាក់ស្នើរួចទៅហើយ,
 Installation date cannot be before delivery date for Item {0},កាលបរិច្ឆេទដំឡើងមិនអាចជាមុនកាលបរិច្ឆេទចែកចាយសម្រាប់ធាតុ {0},
@@ -1197,7 +1183,6 @@
 Insurance Start date should be less than Insurance End date,កាលបរិច្ឆេទការធានារ៉ាប់រងការចាប់ផ្តើមគួរតែតិចជាងកាលបរិច្ឆេទធានារ៉ាប់រងបញ្ចប់,
 Integrated Tax,ពន្ធរួម។,
 Inter-State Supplies,ការផ្គត់ផ្គង់អន្តររដ្ឋ។,
-Interests,ចំណាប់អារម្មណ៍,
 Internet Publishing,ការបោះពុម្ពអ៊ីធឺណិត,
 Intra-State Supplies,ការផ្គត់ផ្គង់ខាងក្នុងរដ្ឋ។,
 Introduction,សេចក្តីផ្តើម,
@@ -1316,7 +1301,6 @@
 Lab testing datetime cannot be before collection datetime,កាលបរិច្ឆេទសាកល្បងរបស់មន្ទីរពិសោធន៍មិនអាចនៅមុនកាលបរិច្ឆេទប្រមូលបានទេ,
 Label,ស្លាក,
 Laboratory,មន្ទីរពិសោធន៍,
-Language Name,ឈ្មោះភាសា,
 Large,ដែលមានទំហំធំ,
 Last Communication,ការទំនាក់ទំនងចុងក្រោយ,
 Last Communication Date,កាលបរិច្ឆេទចុងក្រោយការទំនាក់ទំនង,
@@ -1347,8 +1331,6 @@
 Letter Heads for print templates.,ប្រមុខលិខិតសម្រាប់ពុម្ពអក្សរ។,
 Level,កំរិត,
 Liability,ការទទួលខុសត្រូវ,
-License,អាជ្ញាប័ណ្ណ,
-Limit,ដែនកំណត់,
 Limit Crossed,ដែនកំណត់កាត់,
 Link to Material Request,ភ្ជាប់ទៅសំណើសម្ភារៈ,
 List of all share transactions,បញ្ជីប្រតិបត្តិការទាំងអស់,
@@ -1359,7 +1341,6 @@
 Loans (Liabilities),ការផ្តល់ប្រាក់កម្ចី (បំណុល),
 Loans and Advances (Assets),ឥណទាននិងបុរេប្រទាន (ទ្រព្យសម្បត្តិ),
 Local,ក្នុងតំបន់,
-Log,កំណត់ហេតុ,
 Logs for maintaining sms delivery status,កំណត់ហេតុសម្រាប់ការរក្សាស្ថានភាពចែកចាយផ្ញើសារជាអក្សរ,
 Lost,ការបាត់បង់,
 Lost Reasons,ហេតុផលបាត់បង់។,
@@ -1445,7 +1426,6 @@
 Medical Department,នាយកដ្ឋានវេជ្ជសាស្ត្រ,
 Medical Record,កំណត់ត្រាវេជ្ជសាស្រ្ត,
 Medium,មធ្យម,
-Meeting,កិច្ចប្រជុំ,
 Member Activity,សកម្មភាពសមាជិក,
 Member ID,លេខសម្គាល់សមាជិក,
 Member Name,ឈ្មោះសមាជិក,
@@ -1495,7 +1475,6 @@
 Multiple Variants,វ៉ារ្យ៉ង់ច្រើន,
 Multiple fiscal years exist for the date {0}. Please set company in Fiscal Year,ឆ្នាំសារពើពន្ធច្រើនមានសម្រាប់កាលបរិច្ឆេទ {0} ។ សូមកំណត់ក្រុមហ៊ុននៅក្នុងឆ្នាំសារពើពន្ធ,
 Music,តន្ត្រី,
-My Account,គណនីរបស់ខ្ញុំ,
 Name error: {0},កំហុសឈ្មោះ: {0},
 Name of new Account. Note: Please don't create accounts for Customers and Suppliers,ឈ្មោះនៃគណនីថ្មី។ ចំណាំ: សូមកុំបង្កើតគណនីសម្រាប់អតិថិជននិងអ្នកផ្គត់ផ្គង់,
 Name or Email is mandatory,ឈ្មោះឬអ៊ីម៉ែលចាំបាច់,
@@ -1538,7 +1517,6 @@
 New credit limit is less than current outstanding amount for the customer. Credit limit has to be atleast {0},កំណត់ឥណទានថ្មីនេះគឺមានចំនួនតិចជាងប្រាក់ដែលលេចធ្លោនាពេលបច្ចុប្បន្នសម្រាប់អតិថិជន។ ចំនួនកំណត់ឥណទានមានដើម្បីឱ្យមានយ៉ាងហោចណាស់ {0},
 New task,ភារកិច្ចថ្មី,
 New {0} pricing rules are created,ច្បាប់កំណត់តម្លៃ {0} ថ្មីត្រូវបានបង្កើត។,
-Newsletters,ព្រឹត្តិបត្រ,
 Newspaper Publishers,កាសែតបោះពុម្ពផ្សាយ,
 Next,បន្ទាប់,
 Next Contact By cannot be same as the Lead Email Address,បន្ទាប់ទំនាក់ទំនងដោយមិនអាចជាដូចគ្នានឹងអាសយដ្ឋានអ៊ីមែលនាំមុខ,
@@ -1686,7 +1664,6 @@
 Other,ផ្សេងទៀត,
 Other Reports,របាយការណ៍ផ្សេងទៀត,
 "Other outward supplies(Nil rated,Exempted)",ការផ្គត់ផ្គង់ខាងក្រៅផ្សេងទៀត (បានវាយតម្លៃមិនលើកលែង),
-Others,អ្នកផ្សេងទៀត,
 Out Qty,ចេញ Qty,
 Out Value,តម្លៃចេញ,
 Out of Order,ចេញពីលំដាប់,
@@ -1726,7 +1703,6 @@
 Party Type and Party is mandatory for {0} account,ប្រភេទគណបក្សនិងគណបក្សគឺចាំបាច់សម្រាប់គណនី {0},
 Party Type is mandatory,គណបក្សជាការចាំបាច់ប្រភេទ,
 Party is mandatory,គណបក្សជាការចាំបាច់,
-Password,ពាក្យសម្ងាត់,
 Past Due Date,កាលបរិច្ឆេទហួសកាលកំណត់,
 Patient,អ្នកជំងឺ,
 Patient Appointment,ការតែងតាំងអ្នកជំងឺ,
@@ -1784,7 +1760,6 @@
 Pharmaceutical,ឱសថ,
 Pharmaceuticals,ឱសថ,
 Physician,គ្រូពេទ្យ,
-Pincode,Pincode,
 Place Of Supply (State/UT),កន្លែងផ្គត់ផ្គង់ (រដ្ឋ / យូ។ ធី។ ),
 Place Order,លំដាប់ទីកន្លែង,
 Plan Name,ឈ្មោះផែនការ,
@@ -1896,7 +1871,6 @@
 Please select date,សូមជ្រើសរើសកាលបរិច្ឆេទ,
 Please select item code,សូមជ្រើសរើសលេខកូដធាតុ,
 Please select month and year,សូមជ្រើសខែនិងឆ្នាំ,
-Please select prefix first,សូមជ្រើសបុព្វបទជាលើកដំបូង,
 Please select the Company,សូមជ្រើសរើសក្រុមហ៊ុន,
 Please select the Multiple Tier Program type for more than one collection rules.,សូមជ្រើសរើសប្រភេទកម្មវិធីច្រើនជាន់សម្រាប់ច្បាប់ប្រមូលច្រើនជាងមួយ។,
 Please select the assessment group other than 'All Assessment Groups',សូមជ្រើសក្រុមការវាយតម្លៃផ្សេងទៀតជាង &quot;ក្រុមវាយតម្លៃទាំងអស់ &#39;,
@@ -1913,7 +1887,6 @@
 Please set Company filter blank if Group By is 'Company',សូមកំណត់ក្រុមហ៊ុនត្រងនៅទទេប្រសិនបើក្រុមតាមគឺ &#39;ក្រុមហ៊ុន&#39;,
 Please set Default Payroll Payable Account in Company {0},សូមកំណត់បើកប្រាក់បៀវត្សគណនីទូទាត់លំនាំដើមក្នុងក្រុមហ៊ុន {0},
 Please set Depreciation related Accounts in Asset Category {0} or Company {1},សូមកំណត់ដែលទាក់ទងនឹងការរំលស់ក្នុងគណនីទ្រព្យសកម្មប្រភេទឬ {0} {1} ក្រុមហ៊ុន,
-Please set Email Address,សូមកំណត់អាសយដ្ឋានអ៊ីមែល,
 Please set GST Accounts in GST Settings,សូមកំណត់គណនី GST ក្នុងការកំណត់ GST,
 Please set Hotel Room Rate on {},សូមកំណត់តម្លៃបន្ទប់សណ្ឋាគារលើ {},
 Please set Number of Depreciations Booked,សូមកំណត់ចំនួននៃរំលស់បានកក់,
@@ -1936,7 +1909,6 @@
 Please set the Email ID for the Student to send the Payment Request,សូមកំណត់លេខសម្គាល់អ៊ីម៉ែលសម្រាប់សិស្សដើម្បីផ្ញើសំណើទូទាត់,
 Please set the Item Code first,សូមកំណត់កូដធាតុជាមុនសិន,
 Please set the Payment Schedule,សូមកំណត់កាលវិភាគទូទាត់។,
-Please set the series to be used.,សូមកំណត់ស៊េរីដែលត្រូវប្រើ។,
 Please set {0} for address {1},សូមកំណត់ {0} សម្រាប់អាសយដ្ឋាន {1},
 Please setup Students under Student Groups,សូមរៀបចំនិស្សិតក្រោមក្រុមនិស្សិត,
 Please specify Company,សូមបញ្ជាក់ក្រុមហ៊ុន,
@@ -1953,7 +1925,6 @@
 Point-of-Sale,ចំណុចនៃការលក់,
 Point-of-Sale Profile,ចំណុចនៃការលក់ពត៌មានផ្ទាល់ខ្លួន,
 Portal,វិបផតថល,
-Portal Settings,ការកំណត់ផតថល,
 Possible Supplier,ហាងទំនិញដែលអាចធ្វើបាន,
 Postal Expenses,ចំណាយប្រៃសណីយ៍,
 Posting Date,ការប្រកាសកាលបរិច្ឆេទ,
@@ -2152,12 +2123,10 @@
 Reference No is mandatory if you entered Reference Date,សេចក្តីយោងមិនមានជាការចាំបាច់បំផុតប្រសិនបើអ្នកបានបញ្ចូលសេចក្តីយោងកាលបរិច្ឆេទ,
 Reference No.,សេចក្តីយោងលេខ,
 Reference Number,សេចក្តីយោងលេខ,
-Reference Owner,ម្ចាស់ឯកសារយោង,
 Reference Type,ប្រភេទឯកសារយោង,
 "Reference: {0}, Item Code: {1} and Customer: {2}","ឯកសារយោង: {0}, លេខកូដធាតុ: {1} និងអតិថិជន: {2}",
 References,ឯកសារយោង,
 Refresh Token,ធ្វើឱ្យស្រស់ Token,
-Region,តំបន់,
 Register,ចុះឈ្មោះ,
 Rejected,ច្រានចោល,
 Related,ដែលទាក់ទង,
@@ -2179,7 +2148,6 @@
 Replace BOM and update latest price in all BOMs,ដាក់ BOM និងធ្វើបច្ចុប្បន្នភាពតម្លៃចុងក្រោយបំផុតនៅក្នុងគ្រប់ប័ណ្ឌទាំងអស់,
 Replied,ឆ្លើយតបថា:,
 Report,របាយការណ៏,
-Report Builder,កម្មវិធីបង្កើតរបាយការណ៍,
 Report Type,ប្រភេទរបាយការណ៍,
 Report Type is mandatory,របាយការណ៏ចាំបាច់ប្រភេទ,
 Reports,របាយការណ៍,
@@ -2355,13 +2323,11 @@
 Same Company is entered more than once,ក្រុមហ៊ុនដូចគ្នាត្រូវបានបញ្ចូលច្រើនជាងម្ដង,
 Same item cannot be entered multiple times.,ធាតុដូចគ្នាមិនអាចត្រូវបានបញ្ចូលច្រើនដង។,
 Same supplier has been entered multiple times,ក្រុមហ៊ុនផ្គត់ផ្គង់ដូចគ្នាត្រូវបានបញ្ចូលច្រើនដង,
-Sample,គំរូ,
 Sample Collection,ការប្រមូលគំរូ,
 Sample quantity {0} cannot be more than received quantity {1},បរិមាណគំរូ {0} មិនអាចច្រើនជាងបរិមាណដែលទទួលបាននោះទេ {1},
 Sanctioned,អនុញ្ញាត,
 Sand,ខ្សាច់,
 Saturday,ថ្ងៃសៅរ៍,
-Saved,ដែលបានរក្សាទុក,
 Saving {0},រក្សាទុក {0},
 Scan Barcode,ស្កេនបាកូដ។,
 Schedule,កាលវិភាគ,
@@ -2463,7 +2429,6 @@
 Series Updated,បានបន្ទាន់សម័យស៊េរី,
 Series Updated Successfully,កម្រងឯកសារបន្ទាន់សម័យដោយជោគជ័យ,
 Series is mandatory,កម្រងឯកសារចាំបាច់,
-Series {0} already used in {1},កម្រងឯកសារ {0} ត្រូវបានប្រើរួចហើយនៅក្នុង {1},
 Service,សេវាកម្ម,
 Service Level Agreement,កិច្ចព្រមព្រៀងកម្រិតសេវាកម្ម។,
 Service Level Agreement.,កិច្ចព្រមព្រៀងកម្រិតសេវាកម្ម។,
@@ -2479,7 +2444,6 @@
 Set Tax Rule for shopping cart,កំណត់ច្បាប់ពន្ធសម្រាប់រទេះដើរទិញឥវ៉ាន់,
 Set as Closed,ដែលបានកំណត់ជាបិទ,
 Set as Completed,កំណត់ដូចបានបញ្ចប់។,
-Set as Default,កំណត់ជាលំនាំដើម,
 Set as Lost,ដែលបានកំណត់ជាបាត់បង់,
 Set as Open,ដែលបានកំណត់ជាបើកទូលាយ,
 Set default inventory account for perpetual inventory,កំណត់លំនាំដើមសម្រាប់គណនីសារពើភ័ណ្ឌរហូតសារពើភ័ណ្ឌ,
@@ -2511,7 +2475,6 @@
 Shareholder,ម្ចាស់ហ៊ុន,
 Ship To State,នាវាទៅរដ្ឋ,
 Shipments,ការនាំចេញ,
-Shipping,ការដឹកជញ្ជូន,
 Shipping Address,ការដឹកជញ្ជូនអាសយដ្ឋាន,
 "Shipping Address does not have country, which is required for this Shipping Rule",អាសយដ្ឋានដឹកជញ្ជូនមិនមានប្រទេសដែលត្រូវបានទាមទារសម្រាប់គោលការណ៍ដឹកជញ្ជូននេះទេ,
 Shipping rule only applicable for Buying,ច្បាប់នៃការដឹកជញ្ជូនអនុវត្តសម្រាប់ការទិញប៉ុណ្ណោះ,
@@ -2564,7 +2527,6 @@
 Split Batch,បាច់ពុះ,
 Split Issue,បំបែកបញ្ហា,
 Sports,កីឡា,
-Standard,ស្ដង់ដារ,
 Standard Buying,ទិញស្ដង់ដារ,
 Standard Selling,ស្តង់ដាលក់,
 Standard contract terms for Sales or Purchase.,លក្ខខណ្ឌនៃកិច្ចសន្យាស្តង់ដាមួយសម្រាប់ការលក់ឬទិញ។,
@@ -2731,7 +2693,6 @@
 Terms and Conditions,លក្ខខណ្ឌ,
 Terms and Conditions Template,លក្ខខណ្ឌទំព័រគំរូ,
 Territory,សណ្ធានដី,
-Test,ការធ្វើតេស្ត,
 Thank you for your business!,សូមអរគុណអ្នកសម្រាប់អាជីវកម្មរបស់អ្នក!,
 The 'From Package No.' field must neither be empty nor it's value less than 1.,&#39;ពីកញ្ចប់លេខ&#39; វាលត្រូវតែមិនទទេក៏មិនមែនជាតម្លៃតូចជាង 1 ។,
 The Brand,ម៉ាកនេះ,
@@ -2848,7 +2809,6 @@
 Total (Without Tax),សរុប (ដោយគ្មានពន្ធ),
 Total Achieved,សរុបសម្រេច,
 Total Actual,សរុបជាក់ស្តែង,
-Total Allocated Leaves,ស្លឹកបម្រុងសរុប,
 Total Amount,ចំនួនសរុប,
 Total Amount Credited,ចំនួនទឹកប្រាក់សរុបដែលបានផ្ទៀងផ្ទាត់,
 Total Applicable Charges in Purchase Receipt Items table must be same as Total Taxes and Charges,ការចោទប្រកាន់អនុវត្តសរុបនៅក្នុងការទិញតារាងការទទួលធាតុត្រូវដូចគ្នាដែលជាពន្ធសរុបនិងការចោទប្រកាន់,
@@ -2892,7 +2852,6 @@
 Total(Amt),សរុប (Amt),
 Total(Qty),សរុប (Qty),
 Traceability,traceability,
-Traceback,Traceback,
 Track Leads by Lead Source.,បទដឹកនាំដោយប្រភពនាំមុខ។,
 Transaction,ប្រតិបត្តិការ,
 Transaction Date,ប្រតិបត្តិការកាលបរិច្ឆេទ,
@@ -2930,7 +2889,6 @@
 UOM Conversion factor is required in row {0},កត្តាប្រែចិត្តជឿ UOM គឺត្រូវបានទាមទារនៅក្នុងជួរដេក {0},
 UOM coversion factor required for UOM: {0} in Item: {1},កត្តាគ្របដណ្តប់ UOM បានទាមទារសម្រាប់ការ UOM: {0} នៅក្នុងធាតុ: {1},
 URL,URL ដែល,
-Unable to find DocType {0},មិនអាចស្វែងរក Doc Type {0},
 Unable to find exchange rate for {0} to {1} for key date {2}. Please create a Currency Exchange record manually,មិនអាចរកឃើញអត្រាប្តូរប្រាក់សម្រាប់ {0} ទៅ {1} សម្រាប់កាលបរិច្ឆេទគន្លឹះ {2} ។ សូមបង្កើតកំណត់ត្រាប្តូររូបិយប័ណ្ណដោយដៃ,
 Unable to find score starting at {0}. You need to have standing scores covering 0 to 100,មិនអាចស្វែងរកពិន្ទុចាប់ផ្តើមនៅ {0} ។ អ្នកត្រូវមានពិន្ទុឈរពី 0 ទៅ 100,
 Unable to find variable: ,មិនអាចស្វែងរកអថេរ:,
@@ -2960,7 +2918,6 @@
 Upload your letter head and logo. (you can edit them later).,ផ្ទុកឡើងក្បាលលិខិតនិងស្លាកសញ្ញារបស់អ្នក។ (អ្នកអាចកែសម្រួលពួកវានៅពេលក្រោយ) ។,
 Upper Income,ផ្នែកខាងលើប្រាក់ចំណូល,
 Use Sandbox,ប្រើសេនបក់,
-Used Leaves,ប្រើស្លឹក,
 User,អ្នកប្រើ,
 User ID,លេខសម្គាល់អ្នកប្រើ,
 User ID not set for Employee {0},លេខសម្គាល់អ្នកប្រើដែលមិនបានកំណត់សម្រាប់បុគ្គលិក {0},
@@ -3051,7 +3008,6 @@
 Website Settings,ការកំណត់វេបសាយ,
 Wednesday,ថ្ងៃពុធ,
 Week,សប្តាហ៍,
-Weekdays,ថ្ងៃធ្វើការ,
 Weekly,ប្រចាំសប្តាហ៍,
 "Weight is mentioned,\nPlease mention ""Weight UOM"" too",ទំងន់ត្រូវបានបង្ហាញ \ n សូមនិយាយអំពី &quot;ទម្ងន់ UOM&quot; ពេក,
 Welcome email sent,អ៊ីម៉ែលសូមស្វាគមន៏ដែលបានផ្ញើ,
@@ -3072,7 +3028,6 @@
 Work Order {0} must be submitted,ត្រូវបំពេញកិច្ចការការងារ {0},
 Work Orders Created: {0},កិច្ចការការងារបានបង្កើត: {0},
 Work-in-Progress Warehouse is required before Submit,ការងារក្នុងវឌ្ឍនភាពឃ្លាំងត្រូវទាមទារមុនពេលដាក់ស្នើ,
-Workflow,លំហូរការងារ,
 Working,ការងារ,
 Working Hours,ម៉ោងធ្វើការ,
 Workstation,ស្ថានីយការងារ Stencils,
@@ -3102,7 +3057,6 @@
 You need to be a user other than Administrator with System Manager and Item Manager roles to register on Marketplace.,អ្នកត្រូវតែជាអ្នកប្រើក្រៅពីអ្នកគ្រប់គ្រងជាមួយកម្មវិធីគ្រប់គ្រងប្រព័ន្ធនិងតួនាទីកម្មវិធីគ្រប់គ្រងធាតុដើម្បីចុះឈ្មោះនៅលើទីផ្សារ។,
 You need to be a user with System Manager and Item Manager roles to add users to Marketplace.,អ្នកត្រូវតែជាអ្នកប្រើដែលមានកម្មវិធីគ្រប់គ្រងប្រព័ន្ធនិងធាតុកម្មវិធីគ្រប់គ្រងធាតុដើម្បីបន្ថែមអ្នកប្រើទៅក្នុង Marketplace ។,
 You need to be a user with System Manager and Item Manager roles to register on Marketplace.,អ្នកត្រូវតែជាអ្នកប្រើដែលមានកម្មវិធីគ្រប់គ្រងប្រព័ន្ធនិងធាតុកម្មវិធីគ្រប់គ្រងធាតុដើម្បីចុះឈ្មោះនៅលើទីផ្សារ។,
-You need to be logged in to access this page,អ្នកត្រូវតែចូលក្នុងដើម្បីចូលដំណើរការទំព័រនេះ,
 You need to enable Shopping Cart,អ្នកត្រូវអនុញ្ញាតកន្រ្តកទំនិញ,
 You will lose records of previously generated invoices. Are you sure you want to restart this subscription?,អ្នកនឹងបាត់បង់កំណត់ត្រាវិក័យប័ត្រដែលបានបង្កើតកាលពីមុន។ តើអ្នកប្រាកដថាអ្នកចង់ចាប់ផ្តើមការភ្ជាប់នេះឡើងវិញទេ?,
 Your Organization,អង្គការរបស់អ្នក,
@@ -3218,7 +3172,6 @@
 Assigned To,បានផ្ដល់តម្លៃទៅ,
 Chat,ការជជែកកំសាន្ត,
 Completed By,បានបញ្ចប់ដោយ,
-County,ខោនធី,
 Day of Week,ថ្ងៃនៃសប្តាហ៍,
 "Dear System Manager,",ប្រព័ន្ធអ្នកគ្រប់គ្រងការជាទីគោរព,
 Default Value,តម្លៃលំនាំដើម,
@@ -3229,31 +3182,21 @@
 Fieldtype,Fieldtype,
 Help Articles,អត្ថបទជំនួយ,
 ID,លេខសម្គាល់,
-Images,រូបភាព,
 Import,នាំចូល,
 Language,ភាសា,
 Likes,ចុច Like,
 Merge with existing,បញ្ចូលចូលគ្នាជាមួយនឹងការដែលមានស្រាប់,
-Office,ការិយាល័យ,
 Orientation,ការតំរង់ទិស,
 Parent,មាតាឬបិតា,
-Passive,អកម្ម,
 Payment Failed,ការទូទាត់បរាជ័យ,
-Permanent,អចិន្រ្តៃយ៍,
 Personal,ផ្ទាល់ខ្លួន,
-Plant,រោងចក្រ,
 Post,ភ្នំពេញប៉ុស្តិ៍,
-Postal,ប្រៃសណីយ,
 Postal Code,លេខកូដប្រៃសណីយ,
-Previous,មុន,
 Provider,ក្រុមហ៊ុនផ្គត់ផ្គង់,
 Read Only,បានតែអាន,
 Recipient,អ្នកទទួល,
 Reviews,ការពិនិត្យឡើងវិញ។,
 Sender,អ្នកផ្ញើ,
-Shop,ហាងលក់,
-Subsidiary,ក្រុមហ៊ុនបុត្រសម្ព័ន្ធ,
-There is some problem with the file url: {0},មានបញ្ហាមួយចំនួនជាមួយនឹងឯកសារ URL គឺ: {0},
 There were errors while sending email. Please try again.,មានកំហុសខណៈពេលដែលការផ្ញើអ៊ីម៉ែលនោះទេ។ សូមព្យាយាមម្តងទៀត។,
 Values Changed,តម្លៃផ្លាស់ប្តូរ,
 or,ឬ,
@@ -3280,19 +3223,16 @@
 Quality Feedback Template,គំរូមតិយោបល់គុណភាព។,
 Rules for applying different promotional schemes.,វិធានសម្រាប់អនុវត្តគម្រោងផ្សព្វផ្សាយផ្សេងៗគ្នា។,
 Show {0},បង្ហាញ {0},
-"Special Characters except '-', '#', '.', '/', '{{' and '}}' not allowed in naming series {0}","តួអក្សរពិសេសលើកលែងតែ &quot;-&quot;, &quot;#&quot;, &quot;។ &quot;, &quot;/&quot;, &quot;{{&quot; និង &quot;}}&quot; មិនត្រូវបានអនុញ្ញាតក្នុងស៊េរីដាក់ឈ្មោះ {0}",
 Target Details,ព័ត៌មានលម្អិតគោលដៅ។,
 {0} already has a Parent Procedure {1}.,{0} មាននីតិវិធីឪពុកម្តាយរួចហើយ {1} ។,
 API,API,
 Annual,ប្រចាំឆ្នាំ,
 Change,ការផ្លាស់ប្តូរ,
 Contact Email,ទំនាក់ទំនងតាមអ៊ីមែល,
-Export Type,នាំចេញប្រភេទ,
 From Date,ពីកាលបរិច្ឆេទ,
 Group By,ដាក់ជាក្រុម,
 Invalid URL,URL មិនត្រឹមត្រូវ។,
 Landscape,ទេសភាព។,
-Last Sync On,ធ្វើសមកាលកម្មចុងក្រោយ,
 Naming Series,ដាក់ឈ្មោះកម្រងឯកសារ,
 No data to export,គ្មានទិន្នន័យត្រូវនាំចេញ។,
 Portrait,បញ្ឈរ។,
@@ -3302,7 +3242,6 @@
 Show Document,បង្ហាញឯកសារ។,
 Show Traceback,បង្ហាញ Traceback ។,
 Video,វីដេអូ។,
-Webhook Secret,Webhook សម្ងាត់,
 % Of Grand Total,% នៃមហាសរុប,
 <b>Company</b> is a mandatory filter.,<b>ក្រុមហ៊ុន</b> គឺជាតម្រងចាំបាច់។,
 <b>From Date</b> is a mandatory filter.,<b>ពីកាលបរិច្ឆេទ</b> គឺជាតម្រងចាំបាច់។,
@@ -3358,7 +3297,6 @@
 BOM Comparison Tool,ឧបករណ៍ប្រៀបធៀប BOM ។,
 BOM recursion: {0} cannot be child of {1},ការហៅឡើងវិញរបស់ BOM៖ {០} មិនអាចជាកូនរបស់ {១} ទេ,
 BOM recursion: {0} cannot be parent or child of {1},ការហៅឡើងវិញរបស់ BOM៖ {0} មិនអាចជាឪពុកម្តាយឬកូនរបស់ {1},
-Back to Home,ត្រលប់ទៅផ្ទះ,
 Back to Messages,ត្រលប់ទៅសារ។,
 Bank Data mapper doesn't exist,អ្នកធ្វើផែនទីទិន្នន័យធនាគារមិនមានទេ។,
 Bank Details,ពត៌មានលម្អិតនៃធនាគារ,
@@ -3420,7 +3358,6 @@
 Currency,រូបិយប័ណ្ណ,
 Current Status,ស្ថានភាពបច្ចុប្បន្ន,
 Customer PO,PO អតិថិជន។,
-Customize,ប្ដូរតាមបំណង,
 Daily,ជារៀងរាល់ថ្ងៃ,
 Date,កាលបរិច្ឆេទ,
 Date of Birth cannot be greater than Joining Date.,ថ្ងៃខែឆ្នាំកំណើតមិនអាចធំជាងកាលបរិច្ឆេទចូលរួម។,
@@ -3454,7 +3391,6 @@
 ERPNext could not find any matching payment entry,ERPNext មិនអាចរកឃើញធាតុទូទាត់ដែលត្រូវគ្នាទេ។,
 Earliest Age,អាយុដំបូងបំផុត។,
 Edit Details,កែលំអិត,
-Edit Profile,កែសម្រួលទម្រង់,
 Either GST Transporter ID or Vehicle No is required if Mode of Transport is Road,ទាំងលេខសម្គាល់អ្នកដឹកជញ្ជូនរបស់ជីអេសធីឬយានយន្តមិនចាំបាច់ទេប្រសិនបើរបៀបដឹកជញ្ជូនតាមផ្លូវ។,
 Email,អេមមីល,
 Email Campaigns,យុទ្ធនាការអ៊ីមែល។,
@@ -3482,7 +3418,6 @@
 Fetch Items from Warehouse,ទាញយកធាតុពីឃ្លាំង,
 Fetching...,កំពុងទៅយក ...,
 Field,វាល,
-File Manager,កម្មវិធីគ្រប់គ្រងឯកសារ,
 Filters,តម្រង,
 Finding linked payments,ស្វែងរកការបង់ប្រាក់ដែលបានភ្ជាប់។,
 Fleet Management,គ្រប់គ្រងកងនាវា,
@@ -3521,7 +3456,6 @@
 Incorrect Warehouse,ឃ្លាំងមិនត្រឹមត្រូវ,
 Invalid Barcode. There is no Item attached to this barcode.,លេខកូដមិនត្រឹមត្រូវ។ មិនមានធាតុភ្ជាប់ជាមួយលេខកូដនេះទេ។,
 Invalid credentials,លិខិតសម្គាល់មិនត្រឹមត្រូវ,
-Invite as User,អញ្ជើញជាអ្នកប្រើប្រាស់,
 Issue Priority.,បញ្ហាអាទិភាព។,
 Issue Type.,ប្រភេទបញ្ហា។,
 "It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.",វាហាក់បីដូចជាមានបញ្ហាជាមួយការកំណត់រចនាសម្ព័ន្ធឆ្នូតរបស់ម៉ាស៊ីនមេ។ ក្នុងករណីមានការខកខានចំនួនទឹកប្រាក់នឹងត្រូវបានសងប្រាក់វិញទៅក្នុងគណនីរបស់អ្នក។,
@@ -3564,7 +3498,6 @@
 New Invoice,វិក្កយបត្រថ្មី។,
 New Payment,ការទូទាត់ថ្មី។,
 New release date should be in the future,កាលបរិច្ឆេទចេញផ្សាយថ្មីគួរតែមាននៅពេលអនាគត។,
-Newsletter,ព្រឹត្តិប័ត្រព័ត៌មាន,
 No Account matched these filters: {},គ្មានគណនីត្រូវនឹងតម្រងទាំងនេះទេ៖ {},
 No communication found.,រកមិនឃើញការទំនាក់ទំនង។,
 No correct answer is set for {0},គ្មានចម្លើយត្រឹមត្រូវត្រូវបានកំណត់សម្រាប់ {0},
@@ -3640,7 +3573,6 @@
 Please setup a default bank account for company {0},សូមរៀបចំគណនីធនាគារលំនាំដើមសម្រាប់ក្រុមហ៊ុន {0},
 Please specify,សូមបញ្ជាក់,
 Please specify a {0},សូមបញ្ជាក់ {0},lead
-Printing,ការបោះពុម្ព,
 Priority,អាទិភាព,
 Priority has been changed to {0}.,អាទិភាពត្រូវបានផ្លាស់ប្តូរទៅ {0} ។,
 Priority {0} has been repeated.,អាទិភាព {0} ត្រូវបានធ្វើម្តងទៀត។,
@@ -3649,7 +3581,6 @@
 Project,គម្រោង,
 Provide the academic year and set the starting and ending date.,ផ្តល់ឆ្នាំសិក្សានិងកំណត់កាលបរិច្ឆេទចាប់ផ្តើមនិងបញ្ចប់។,
 Public token is missing for this bank,បាត់ថូខឹនសាធារណៈសម្រាប់ធនាគារនេះ។,
-Publish,ផ្សាយ,
 Publish 1 Item,បោះពុម្ពផ្សាយធាតុ ១,
 Publish Items,ផ្សព្វផ្សាយធាតុ។,
 Publish More Items,ផ្សព្វផ្សាយធាតុបន្ថែម។,
@@ -3677,7 +3608,6 @@
 Reconciled,ផ្សះផ្សាឡើងវិញ។,
 Recruitment,ការជ្រើសរើសបុគ្គលិក,
 Red,ពណ៌ក្រហម,
-Refreshing,ធ្វើឱ្យស្រស់,
 Release date must be in the future,កាលបរិច្ឆេទនៃការចេញផ្សាយត្រូវតែមាននាពេលអនាគត។,
 Relieving Date must be greater than or equal to Date of Joining,កាលបរិច្ឆេទដែលទុកចិត្តត្រូវតែធំជាងឬស្មើកាលបរិច្ឆេទនៃការចូលរួម,
 Rename,ប្តូរឈ្មោះ,
@@ -3721,7 +3651,6 @@
 Search for a payment,ស្វែងរកការបង់ប្រាក់។,
 Search for anything ...,ស្វែងរកអ្វីទាំងអស់ ...,
 Search results for,លទ្ធផលស្វែងរកសម្រាប់,
-Select All,ជ្រើសទាំងអស់,
 Select Difference Account,ជ្រើសរើសគណនីខុសគ្នា។,
 Select a Default Priority.,ជ្រើសអាទិភាពលំនាំដើម។,
 Select a company,ជ្រើសរើសក្រុមហ៊ុន។,
@@ -3740,11 +3669,9 @@
 Service Level Agreement has been changed to {0}.,កិច្ចព្រមព្រៀងកម្រិតសេវាកម្មត្រូវបានផ្លាស់ប្តូរទៅ {0} ។,
 Service Level Agreement was reset.,កិច្ចព្រមព្រៀងកម្រិតសេវាកម្មត្រូវបានកំណត់ឡើងវិញ។,
 Service Level Agreement with Entity Type {0} and Entity {1} already exists.,កិច្ចព្រមព្រៀងកម្រិតសេវាកម្មជាមួយប្រភេទអង្គភាព {0} និងអង្គភាព {1} មានរួចហើយ។,
-Set,កំណត់,
 Set Meta Tags,កំណត់ស្លាកមេតា។,
 Set {0} in company {1},កំណត់ {0} នៅក្នុងក្រុមហ៊ុន {1},
 Setup,ការដំឡើង,
-Setup Wizard,អ្នកជំនួយការដំឡើង,
 Shift Management,Shift Management,
 Show Future Payments,បង្ហាញការទូទាត់នាពេលអនាគត។,
 Show Linked Delivery Notes,បង្ហាញភក្ដិកំណត់ត្រាកំណត់ចែកចាយភ្ជាប់,
@@ -3815,7 +3742,6 @@
 Unreconciled,មិនត្រូវបានផ្សះផ្សា។,
 Unsupported GST Category for E-Way Bill JSON generation,ប្រភេទ GST ដែលមិនបានគាំទ្រសម្រាប់ជំនាន់អេចអេសប៊ីប៊ីអេសសុន។,
 Update,ធ្វើឱ្យទាន់សម័យ,
-Update Details,ព័ត៌មានលម្អិតបច្ចុប្បន្នភាព,
 Update Taxes for Items,ធ្វើបច្ចុប្បន្នភាពពន្ធសម្រាប់ធាតុ,
 "Upload a bank statement, link or reconcile a bank account",បញ្ចូលរបាយការណ៍ធនាគារភ្ជាប់ឬផ្សះផ្សាគណនីធនាគារ។,
 Upload a statement,បញ្ចូលសេចក្តីថ្លែងការណ៍។,
@@ -3839,7 +3765,6 @@
 XML Files Processed,ឯកសារ XML ដំណើរការ,
 Year,កាលពីឆ្នាំ,
 Yearly,រាល់ឆ្នាំ,
-You,អ្នក,
 You are not allowed to enroll for this course,អ្នកមិនត្រូវបានអនុញ្ញាតឱ្យចុះឈ្មោះសម្រាប់វគ្គសិក្សានេះទេ។,
 You are not enrolled in program {0},អ្នកមិនបានចុះឈ្មោះក្នុងកម្មវិធី {0},
 You can Feature upto 8 items.,អ្នកអាចដាក់បង្ហាញធាតុ ៨ យ៉ាង។,
@@ -3856,7 +3781,6 @@
 e-Way Bill already exists for this document,វិក្កយបត្រអេឡិចត្រូនិចមានរួចហើយសម្រាប់ឯកសារនេះ។,
 woocommerce - {0},woocommerce - {0},
 {0} Coupon used are {1}. Allowed quantity is exhausted,{0} គូប៉ុងដែលបានប្រើគឺ {1} ។ បរិមាណដែលបានអនុញ្ញាតគឺអស់ហើយ,
-{0} Name,ឈ្មោះ {0},
 {0} Operations: {1},{0} ប្រតិបត្តិការ៖ {១},
 {0} bank transaction(s) created,{0} ប្រតិបត្តិការធនាគារត្រូវបានបង្កើត។,
 {0} bank transaction(s) created and {1} errors,{0} ប្រតិបត្តិការធនាគារត្រូវបានបង្កើតនិង {1} កំហុស។,
@@ -3875,17 +3799,13 @@
 Total Income,ប្រាក់ចំណូលសរុប,
 Total Income This Year,ប្រាក់ចំណូលសរុបនៅឆ្នាំនេះ,
 Barcode,បាកូដ,
-Bold,ដិត,
-Center,មជ្ឈមណ្ឌល,
 Clear,ច្បាស់,
-Comment,វិចារ,
 Comments,យោបល់,
 DocType,ប្រភេទឯកសារ,
 Download,ទាញយក,
 Left,ពីឆ្វេង,
 Link,តំណ,
 New,ថ្មី,
-Not Found,រកមិនឃើញ,
 Print,បោះពុម្ព,
 Reference Name,ឈ្មោះយោង,
 Refresh,ធ្វើឱ្យស្រស់,
@@ -3908,7 +3828,6 @@
 Email Id,លេខសម្គាល់អ៊ីម៉ែល,
 No,គ្មាន,
 Reference Doctype,ចង្អុលបង្ហាញសេចក្តីយោង,
-User Id,លេខសម្គាល់អ្នកប្រើ,
 Yes,បាទ,
 Actual ,ពិតប្រាកដ,
 Add to cart,បញ្ចូលទៅក្នុងរទេះ,
@@ -4304,7 +4223,6 @@
 e.g Adjustments for:,ឧ។ ការលៃតម្រូវសម្រាប់:,
 Section Subtotal,ផ្នែករងសរុប,
 Section Footer,ផ្នែកបាតកថា,
-Position,ទីតាំង,
 Cash Flow Mapping,គំនូសតាងលំហូរសាច់ប្រាក់,
 Select Maximum Of 1,ជ្រើសរើសអតិបរមានៃ 1,
 Is Finance Cost,តើការចំណាយហិរញ្ញវត្ថុ,
@@ -4936,7 +4854,6 @@
 Previous Business Day,ថ្ងៃពាណិជ្ជកម្មមុន,
 Next Business Day,ថ្ងៃពាណិជ្ជកម្មបន្ទាប់,
 Urgent,បន្ទាន់,
-Crop,ដំណាំ,
 Crop Name,ឈ្មោះដំណាំ,
 Scientific Name,ឈ្មោះវិទ្យាសាស្រ្ត,
 "You can define all the tasks which need to carried out for this crop here. The day field is used to mention the day on which the task needs to be carried out, 1 being the 1st day, etc.. ",អ្នកអាចកំណត់ភារកិច្ចទាំងអស់ដែលត្រូវធ្វើសម្រាប់ដំណាំនេះនៅទីនេះ។ វាលថ្ងៃត្រូវបានប្រើដើម្បីនិយាយពីថ្ងៃដែលភារកិច្ចចាំបាច់ត្រូវអនុវត្ត 1 ជាថ្ងៃទី 1 ល។,
@@ -5441,7 +5358,6 @@
 To TIme,ទៅពេល,
 Course End Date,ការពិតណាស់កាលបរិច្ឆេទបញ្ចប់,
 Course Topic,ប្រធានបទវគ្គសិក្សា។,
-Topic,ប្រធានបទ,
 Topic Name,ប្រធានបទឈ្មោះ,
 Education Settings,ការកំណត់អប់រំ,
 Current Academic Year,ឆ្នាំសិក្សាបច្ចុប្បន្ន,
@@ -5516,7 +5432,6 @@
 Check this if the Student is residing at the Institute's Hostel.,ធីកប្រអប់នេះបើសិស្សកំពុងរស់នៅនៅឯសណ្ឋាគារវិទ្យាស្ថាននេះ។,
 Walking,ការដើរ,
 Institute's Bus,រថយន្ដរបស់វិទ្យាស្ថាន,
-Public Transport,ការដឹកជញ្ជូនសាធារណៈ,
 Self-Driving Vehicle,រថយន្តបើកបរដោយខ្លួនឯង,
 Pick/Drop by Guardian,ជ្រើសយក / ទម្លាក់ដោយអាណាព្យាបាល,
 Enrolled courses,វគ្គសិក្សាបានចុះឈ្មោះ,
@@ -5697,7 +5612,6 @@
 Default Cost Center,មជ្ឈមណ្ឌលតម្លៃលំនាំដើម,
 Undeposited Funds Account,គណនីមូលនិធិដែលមិនបានរឹបអូស,
 Shopify Log,ចុះឈ្មោះទិញទំនិញ,
-Request Data,ស្នើទិន្នន័យ,
 Shopify Settings,Shopify Settings,
 status html,html ស្ថានភាព,
 Enable Shopify,បើកដំណើរការ Shopify,
@@ -5817,7 +5731,6 @@
 Exercise Instructions,ការណែនាំលំហាត់,
 Exercise Video,វីដេអូលំហាត់,
 Exercise Steps,ជំហាននៃការធ្វើលំហាត់ប្រាណ,
-Steps,ជំហាន,
 Steps Table,តារាងជំហាន,
 Exercise Type Step,ជំហានប្រភេទលំហាត់,
 Max number of visit,ចំនួនអតិបរមានៃដំណើរទស្សនកិច្ច,
@@ -6001,7 +5914,6 @@
 Patient Encounter Symptom,រោគសញ្ញាអ្នកជម្ងឺ,
 HLC-PMR-.YYYY.-,HLC-PMR-yYYY.-,
 Attach Medical Record,ភ្ជាប់កំណត់ត្រាវេជ្ជសាស្ត្រ,
-Reference DocType,ឯកសារយោងប្រភេទឯកសារ,
 Spouse,ប្តីប្រពន្ធ,
 Family,គ្រួសារ,
 Schedule Details,ព័ត៌មានលម្អិតអំពីកាលវិភាគ,
@@ -6983,16 +6895,8 @@
 HTML / Banner that will show on the top of product list.,ជា HTML / បដាដែលនឹងបង្ហាញនៅលើកំពូលនៃបញ្ជីផលិតផល។,
 Set prefix for numbering series on your transactions,កំណត់បុព្វបទសម្រាប់លេខស៊េរីលើប្រតិបតិ្តការរបស់អ្នក,
 Setup Series,ការរៀបចំស៊េរី,
-Select Transaction,ជ្រើសប្រតិបត្តិការ,
-Help HTML,ជំនួយ HTML,
-Series List for this Transaction,បញ្ជីស៊េរីសម្រាប់ប្រតិបត្តិការនេះ,
-User must always select,អ្នកប្រើដែលត្រូវតែជ្រើសតែងតែ,
-Check this if you want to force the user to select a series before saving. There will be no default if you check this.,ធីកប្រអប់នេះប្រសិនបើអ្នកចង់បង្ខំឱ្យអ្នកប្រើជ្រើសស៊េរីមុនពេលរក្សាទុក។ វានឹងជាលំនាំដើមប្រសិនបើអ្នកធីកនេះ។,
 Update Series,កម្រងឯកសារធ្វើឱ្យទាន់សម័យ,
 Change the starting / current sequence number of an existing series.,ផ្លាស់ប្តូរការចាប់ផ្តើមលេខលំដាប់ / នាពេលបច្ចុប្បន្ននៃស៊េរីដែលមានស្រាប់។,
-Prefix,បុព្វបទ,
-This is the number of the last created transaction with this prefix,នេះជាចំនួននៃការប្រតិបត្តិការបង្កើតចុងក្រោយជាមួយបុព្វបទនេះ,
-Update Series Number,កម្រងឯកសារលេខធ្វើឱ្យទាន់សម័យ,
 Quotation Lost Reason,សម្រង់បាត់បង់មូលហេតុ,
 A third party distributor / dealer / commission agent / affiliate / reseller who sells the companies products for a commission.,ការចែកចាយរបស់ភាគីទីបី / អ្នកចែកបៀ / គណៈកម្មការរបស់ភ្នាក់ងារ / បុត្រសម្ព័ន្ធ / លក់បន្តដែលលក់ផលិតផលរបស់ក្រុមហ៊ុនសម្រាប់គណៈកម្មាការមួយ។,
 Sales Partner Name,ឈ្មោះដៃគូការលក់,
@@ -7687,7 +7591,6 @@
 Warehouse wise Item Balance Age and Value,ឃ្លាំងទំនិញមានប្រាជ្ញាអាយុនិងតម្លៃ,
 Work Order Stock Report,របាយការណ៍ភាគហ៊ុនបញ្ជាទិញ,
 Work Orders in Progress,កិច្ចការការងារនៅក្នុងវឌ្ឍនភាព,
-Validation Error,កំហុសសុពលភាព,
 Automatically Process Deferred Accounting Entry,ដំណើរការធាតុគណនីពនរដោយស្វ័យប្រវត្តិ,
 Bank Clearance,ការបោសសំអាតធនាគារ,
 Bank Clearance Detail,ព័ត៌មានលម្អិតអំពីការបោសសំអាតធនាគារ,
@@ -7724,45 +7627,7 @@
 Therapy Plan: ,ផែនការព្យាបាល៖,
 Total Counts Targeted: ,ចំនួនសរុបគោលដៅ៖,
 Total Counts Completed: ,ចំនួនសរុបបានបញ្ចប់៖,
-Andaman and Nicobar Islands,កោះអាន់ដាម៉ាន់និងនីកូបាបា,
-Andhra Pradesh,Andhra Pradesh,
-Arunachal Pradesh,អរុណរះប្រាដេស,
-Assam,អាសាម,
-Bihar,ប៊ីហារ,
-Chandigarh,Chandigarh,
-Chhattisgarh,ឆាតធីស្កាហ្គា,
-Dadra and Nagar Haveli,ដារ៉ានិងណាហ្គាហាវ៉ា,
-Daman and Diu,ដាម៉ាននិងឌីយូ,
-Delhi,ដេលី,
-Goa,ហ្គោហ្គោ,
-Gujarat,ហ្គូចា,
-Haryana,ហារីណា,
-Himachal Pradesh,Himachal Pradesh,
-Jammu and Kashmir,ចាមមួនិងកាស្មៀរ,
-Jharkhand,ចាចាខន,
-Karnataka,កាណាតាកា,
-Kerala,កូរ៉ាឡា,
-Lakshadweep Islands,កោះ Lakshadweep,
-Madhya Pradesh,ម៉ាដ្យាយ៉ាប្រាដេស,
-Maharashtra,Maharashtra,
-Manipur,Manipur,
-Meghalaya,មេហ្គាឡាយ៉ា,
-Mizoram,មីហ្សូរ៉ាម,
-Nagaland,ណាហ្គាឡែន,
-Odisha,អូឌីសា,
-Other Territory,ទឹកដីផ្សេងទៀត,
-Pondicherry,បុរេប្រវត្តិ,
-Punjab,ពុនចាប,
-Rajasthan,Rajasthan,
-Sikkim,ស៊ីកឃីម,
-Tamil Nadu,តាមីលណាឌូ,
-Telangana,តេនណាណា,
-Tripura,ទ្រីប៉ូរ៉ា,
-Uttar Pradesh,អ៊ូតាប្រាដេស,
-Uttarakhand,អ៊ូតារ៉ាខាញ,
-West Bengal,បេងហ្គាល់ខាងលិច,
 Is Mandatory,គឺចាំបាច់,
-Published on,បោះពុម្ភផ្សាយ,
 Service Received But Not Billed,សេវាកម្មបានទទួលប៉ុន្តែមិនបានគិតប្រាក់ទេ,
 Deferred Accounting Settings,ការកំណត់គណនីពនរ,
 Book Deferred Entries Based On,ធាតុពនរសៀវភៅដែលមានមូលដ្ឋានលើ,
@@ -8035,8 +7900,6 @@
 Worksheet Instructions,សេចក្តីណែនាំសន្លឹកកិច្ចការ,
 Result Legend Print,លទ្ធផលព្រីនតាងបោះពុម្ព,
 Print Position,ទីតាំងបោះពុម្ព,
-Bottom,បាត,
-Top,ខាងលើ,
 Both,ទាំងពីរ,
 Result Legend,តាងរឿងព្រេងនិទាន,
 Lab Tests,ការធ្វើតេស្តមន្ទីរពិសោធន៍,
@@ -8081,12 +7944,10 @@
 Approvers,គួរឱ្យសង្ស័យ,
 The first Approver in the list will be set as the default Approver.,អ្នកផ្តល់យោបល់ដំបូងគេនៅក្នុងបញ្ជីនឹងត្រូវបានកំណត់ជាអ្នកផ្តល់យោបល់លំនាំដើម,
 Shift Request Approver,ផ្លាស់ប្តូរសំណើរសុំការផ្លាស់ប្តូរ,
-PAN Number,លេខ PAN,
 Provident Fund Account,គណនីមូលនិធិអ្នកផ្តល់សេវា,
 MICR Code,MICR កូដ,
 Repay unclaimed amount from salary,សងចំនួនទឹកប្រាក់ដែលមិនបានទាមទារពីប្រាក់ខែ,
 Deduction from salary,ការកាត់បន្ថយពីប្រាក់ខែ,
-Expired Leaves,ស្លឹកផុតកំណត់,
 If this is not checked the loan by default will be considered as a Demand Loan,ប្រសិនបើនេះមិនត្រូវបានពិនិត្យប្រាក់កម្ចីតាមលំនាំដើមនឹងត្រូវបានចាត់ទុកថាជាប្រាក់កម្ចីតម្រូវការ,
 This account is used for booking loan repayments from the borrower and also disbursing loans to the borrower,គណនីនេះត្រូវបានប្រើសម្រាប់ការកក់ការសងប្រាក់កម្ចីពីអ្នកខ្ចីហើយថែមទាំងផ្តល់ប្រាក់កម្ចីដល់អ្នកខ្ចីផងដែរ,
 This account is capital account which is used to allocate capital for loan disbursal account ,គណនីនេះគឺជាគណនីដើមទុនដែលត្រូវបានប្រើដើម្បីបែងចែកដើមទុនសម្រាប់គណនីប្រាក់កម្ចី,
@@ -8844,3 +8705,41 @@
 Creating Purchase Order ...,កំពុងបង្កើតការបញ្ជាទិញ ...,
 "Select a Supplier from the Default Suppliers of the items below. On selection, a Purchase Order will be made against items belonging to the selected Supplier only.",ជ្រើសរើសអ្នកផ្គត់ផ្គង់ពីអ្នកផ្គត់ផ្គង់លំនាំដើមនៃធាតុខាងក្រោម។ នៅពេលជ្រើសរើសការបញ្ជាទិញនឹងត្រូវធ្វើឡើងប្រឆាំងនឹងរបស់របរដែលជាកម្មសិទ្ធិរបស់អ្នកផ្គត់ផ្គង់ដែលបានជ្រើសរើសតែប៉ុណ្ណោះ។,
 Row #{}: You must select {} serial numbers for item {}.,ជួរទី # {}៖ អ្នកត្រូវតែជ្រើសរើស {} លេខស៊េរីសម្រាប់ធាតុ {} ។,
+Add Comment,បន្ថែមសេចក្តីអធិប្បាយ,
+More...,ច្រើនទៀត ...,
+Notes,កំណត់ត្រា,
+Payment Gateway,ការទូទាត់,
+Payment Gateway Name,ឈ្មោះ Gateway ការទូទាត់,
+Payments,ការទូទាត់,
+Plan Name,ឈ្មោះផែនការ,
+Portal,វិបផតថល,
+Scan Barcode,ស្កេនបាកូដ។,
+Some information is missing,ពមួយចំនួនត្រូវបានបាត់,
+Successful,ជោគជ័យ,
+Tools,ឧបករណ៍,
+Use Sandbox,ប្រើសេនបក់,
+Busy,រវល់,
+Completed By,បានបញ្ចប់ដោយ,
+Payment Failed,ការទូទាត់បរាជ័យ,
+Column {0},ជួរឈរ {0},
+Field Mapping,ការគូសផែនទី,
+Not Specified,មិនបានបញ្ជាក់។,
+Update Type,ប្រភេទធ្វើបច្ចុប្បន្នភាព,
+Dr,លោកបណ្ឌិត,
+End Time,ពេលវេលាបញ្ចប់,
+Fetching...,កំពុងទៅយក ...,
+"It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.",វាហាក់បីដូចជាមានបញ្ហាជាមួយការកំណត់រចនាសម្ព័ន្ធឆ្នូតរបស់ម៉ាស៊ីនមេ។ ក្នុងករណីមានការខកខានចំនួនទឹកប្រាក់នឹងត្រូវបានសងប្រាក់វិញទៅក្នុងគណនីរបស់អ្នក។,
+Looks like someone sent you to an incomplete URL. Please ask them to look into it.,មើលទៅដូចជាមាននរណាម្នាក់ចាត់អ្នករាល់គ្នាអោយទៅជា URL មិនពេញលេញ។ សូមសួរពួកគេដើម្បីទៅរកមើលទៅក្នុងវា។,
+Master,អនុបណ្ឌិត,
+Pay,បង់ប្រាក់,
+You can also copy-paste this link in your browser,អ្នកក៏អាចចម្លងបិទភ្ជាប់តំណក្នុងកម្មវិធីរុករករបស់អ្នក,
+Verified By,បានផ្ទៀងផ្ទាត់ដោយ,
+Invalid naming series (. missing) for {0},ស៊េរីឈ្មោះមិនត្រឹមត្រូវ (សម្រាប់បាត់) សម្រាប់ {0},
+Phone Number,លេខទូរសព្ទ,
+Account SID,គណនី SID ។,
+Global Defaults,លំនាំដើមជាសកល,
+Is Mandatory,គឺចាំបាច់,
+WhatsApp,WhatsApp,
+Make a call,ធ្វើការហៅ,
+Approve,អនុម័ត,
+Reject,ច្រានចោល,
diff --git a/erpnext/translations/kn.csv b/erpnext/translations/kn.csv
index b929e29..18e44a1 100644
--- a/erpnext/translations/kn.csv
+++ b/erpnext/translations/kn.csv
@@ -113,7 +113,6 @@
 Add Items,ವಸ್ತುಗಳು ಸೇರಿಸಿ,
 Add Leads,ಲೀಡ್ಗಳನ್ನು ಸೇರಿಸಿ,
 Add Multiple Tasks,ಬಹು ಕಾರ್ಯಗಳನ್ನು ಸೇರಿಸಿ,
-Add Row,ರೋ ಸೇರಿಸಿ,
 Add Sales Partners,ಮಾರಾಟದ ಪಾಲುದಾರರನ್ನು ಸೇರಿಸಿ,
 Add Serial No,ಸೀರಿಯಲ್ ನಂ ಸೇರಿಸಿ,
 Add Students,ವಿದ್ಯಾರ್ಥಿಗಳು ಸೇರಿಸಿ,
@@ -211,9 +210,7 @@
 An error occurred during the update process,ನವೀಕರಣ ಪ್ರಕ್ರಿಯೆಯಲ್ಲಿ ದೋಷ ಸಂಭವಿಸಿದೆ,
 "An item exists with same name ({0}), please change the item group name or rename the item","ಐಟಂ ( {0} ) , ಐಟಂ ಗುಂಪು ಹೆಸರನ್ನು ಬದಲಾಯಿಸಲು ಅಥವಾ ಐಟಂ ಹೆಸರನ್ನು ದಯವಿಟ್ಟು ಅದೇ ಹೆಸರಿನಲ್ಲಿ ಅಸ್ತಿತ್ವದಲ್ಲಿದೆ",
 Analyst,ವಿಶ್ಲೇಷಕ,
-Analytics,ಅನಾಲಿಟಿಕ್ಸ್,
 Annual Billing: {0},ವಾರ್ಷಿಕ ಬಿಲ್ಲಿಂಗ್: {0},
-Anonymous,ಅನಾಮಧೇಯ,
 Another Budget record '{0}' already exists against {1} '{2}' and account '{3}' for fiscal year {4},{1} {2} &#39;ಮತ್ತು ಹಣಕಾಸಿನ ವರ್ಷಕ್ಕೆ {3} ಖಾತೆ&#39; {3} &#39;ವಿರುದ್ಧ ಮತ್ತೊಂದು ಬಜೆಟ್ ರೆಕಾರ್ಡ್&#39; {0} &#39;ಈಗಾಗಲೇ ಅಸ್ತಿತ್ವದಲ್ಲಿದೆ.,
 Another Period Closing Entry {0} has been made after {1},ಮತ್ತೊಂದು ಅವಧಿ ಮುಕ್ತಾಯ ಎಂಟ್ರಿ {0} ನಂತರ ಮಾಡಲಾಗಿದೆ {1},
 Another Sales Person {0} exists with the same Employee id,ಮತ್ತೊಂದು ಮಾರಾಟಗಾರನ {0} ಅದೇ ನೌಕರರ ಐಡಿ ಅಸ್ತಿತ್ವದಲ್ಲಿದೆ,
@@ -283,14 +280,12 @@
 Attendance not submitted for {0} as {1} on leave.,{0} ರಜೆಗೆ {1} ಆಗಿ ಹಾಜರಾತಿ ಸಲ್ಲಿಸಲಿಲ್ಲ.,
 Attribute table is mandatory,ಗುಣಲಕ್ಷಣ ಟೇಬಲ್ ಕಡ್ಡಾಯ,
 Attribute {0} selected multiple times in Attributes Table,ಗುಣಲಕ್ಷಣ {0} ಗುಣಲಕ್ಷಣಗಳು ಟೇಬಲ್ ಅನೇಕ ಬಾರಿ ಆಯ್ಕೆ,
-Author,ಲೇಖಕ,
 Authorized Signatory,ಅಧಿಕೃತ ಸಹಿ,
 Auto Material Requests Generated,ಆಟೋ ಮೆಟೀರಿಯಲ್ ವಿನಂತಿಗಳು ರಚಿಸಲಾಗಿದೆ,
 Auto Repeat,ಆಟೋ ಪುನರಾವರ್ತನೆ,
 Auto repeat document updated,ಸ್ವಯಂ ಪುನರಾವರ್ತಿತ ಡಾಕ್ಯುಮೆಂಟ್ ಅನ್ನು ನವೀಕರಿಸಲಾಗಿದೆ,
 Automotive,ಆಟೋಮೋಟಿವ್,
 Available,ಲಭ್ಯ,
-Available Leaves,ಲಭ್ಯವಿರುವ ಎಲೆಗಳು,
 Available Qty,ಲಭ್ಯವಿರುವ ಪ್ರಮಾಣ,
 Available Selling,ಲಭ್ಯವಿರುವ ಮಾರಾಟ,
 Available for use date is required,ಬಳಕೆ ದಿನಾಂಕಕ್ಕೆ ಲಭ್ಯವಿದೆ,
@@ -340,7 +335,6 @@
 Base URL,ಮೂಲ URL,
 Based On,ಆಧರಿಸಿದೆ,
 Based On Payment Terms,ಪಾವತಿ ನಿಯಮಗಳ ಆಧಾರದ ಮೇಲೆ,
-Basic,ಮೂಲಭೂತ,
 Batch,ಗುಂಪು,
 Batch Entries,ಬ್ಯಾಚ್ ನಮೂದುಗಳು,
 Batch ID is mandatory,ಬ್ಯಾಚ್ ID ಕಡ್ಡಾಯ,
@@ -361,7 +355,6 @@
 Billable Hours,ಬಿಲ್ ಮಾಡಬಹುದಾದ ಗಂಟೆಗಳು,
 Billed,ಖ್ಯಾತವಾದ,
 Billed Amount,ಖ್ಯಾತವಾದ ಪ್ರಮಾಣ,
-Billing,ಬಿಲ್ಲಿಂಗ್,
 Billing Address,ಬಿಲ್ಲಿಂಗ್ ವಿಳಾಸ,
 Billing Address is same as Shipping Address,ಬಿಲ್ಲಿಂಗ್ ವಿಳಾಸವು ಶಿಪ್ಪಿಂಗ್ ವಿಳಾಸದಂತೆಯೇ ಇರುತ್ತದೆ,
 Billing Amount,ಬಿಲ್ಲಿಂಗ್ ಪ್ರಮಾಣ,
@@ -560,7 +553,6 @@
 Consumed Qty,ಸೇವಿಸಲ್ಪಟ್ಟ ಪ್ರಮಾಣ,
 Consumer Products,ಗ್ರಾಹಕ ಉತ್ಪನ್ನಗಳು,
 Contact,ಸಂಪರ್ಕಿಸಿ,
-Contact Details,ಸಂಪರ್ಕ ವಿವರಗಳು,
 Contact Us,ನಮ್ಮನ್ನು ಸಂಪರ್ಕಿಸಿ,
 Content,ವಿಷಯ,
 Content Masters,ವಿಷಯ ಮಾಸ್ಟರ್ಸ್,
@@ -715,7 +707,6 @@
 Date of Joining,ಸೇರುವ ದಿನಾಂಕ,
 Date of Joining must be greater than Date of Birth,ಸೇರುವ ದಿನಾಂಕ ಜನ್ಮ ದಿನಾಂಕ ಹೆಚ್ಚಿನ ಇರಬೇಕು,
 Date of Transaction,ಟ್ರಾನ್ಸಾಕ್ಷನ್ ದಿನಾಂಕ,
-Datetime,DATETIME,
 Day,ದಿನ,
 Debit,ಡೆಬಿಟ್,
 Debit ({0}),ಡೆಬಿಟ್ ({0}),
@@ -874,7 +865,6 @@
 Employee cannot report to himself.,ನೌಕರರ ಸ್ವತಃ ವರದಿ ಸಾಧ್ಯವಿಲ್ಲ.,
 Employee {0} has already applied for {1} between {2} and {3} : ,ನೌಕರ {0} {2} ಮತ್ತು {3} ನಡುವಿನ {1} ಗೆ ಈಗಾಗಲೇ ಅರ್ಜಿ ಸಲ್ಲಿಸಿದ್ದಾರೆ:,
 Employee {0} of grade {1} have no default leave policy,{0} ದರ್ಜೆಯ ಉದ್ಯೋಗಿ {0} ಡೀಫಾಲ್ಟ್ ರಜೆ ನೀತಿಯನ್ನು ಹೊಂದಿಲ್ಲ,
-Enable,ಸಕ್ರಿಯಗೊಳಿಸಿ,
 Enable / disable currencies.,/ ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಿ ಕರೆನ್ಸಿಗಳ ಸಕ್ರಿಯಗೊಳಿಸಿ .,
 Enabled,ಶಕ್ತಗೊಂಡಿದೆ,
 "Enabling 'Use for Shopping Cart', as Shopping Cart is enabled and there should be at least one Tax Rule for Shopping Cart","ಸಕ್ರಿಯಗೊಳಿಸುವುದರಿಂದ ಶಾಪಿಂಗ್ ಕಾರ್ಟ್ ಶಕ್ತಗೊಳ್ಳುತ್ತದೆ, &#39;ಶಾಪಿಂಗ್ ಕಾರ್ಟ್ ಬಳಸಿ&#39; ಮತ್ತು ಶಾಪಿಂಗ್ ಕಾರ್ಟ್ ಕಡೇಪಕ್ಷ ಒಂದು ತೆರಿಗೆ ನಿಯಮ ಇರಬೇಕು",
@@ -905,7 +895,6 @@
 Error: Not a valid id?,ದೋಷ: ಮಾನ್ಯ ಐಡಿ?,
 Estimated Cost,ಅಂದಾಜು ವೆಚ್ಚ,
 "Even if there are multiple Pricing Rules with highest priority, then following internal priorities are applied:","ಹೆಚ್ಚಿನ ಆದ್ಯತೆ ಬಹು ಬೆಲೆ ನಿಯಮಗಳು ಇವೆ ಸಹ, ನಂತರ ಕೆಳಗಿನ ಆಂತರಿಕ ಆದ್ಯತೆಗಳು ಅನ್ವಯಿಸಲಾಗಿದೆ:",
-Event,ಈವೆಂಟ್,
 Exchange Gain/Loss,ವಿನಿಮಯ ಗಳಿಕೆ / ನಷ್ಟ,
 Exchange Rate Revaluation master.,ವಿನಿಮಯ ದರ ಮರು ಮೌಲ್ಯಮಾಪನ ಮಾಸ್ಟರ್.,
 Exchange Rate must be same as {0} {1} ({2}),ವಿನಿಮಯ ದರ ಅದೇ ಇರಬೇಕು {0} {1} ({2}),
@@ -1032,7 +1021,6 @@
 From value must be less than to value in row {0},ಮೌಲ್ಯದಿಂದ ಸತತವಾಗಿ ಮೌಲ್ಯಕ್ಕೆ ಕಡಿಮೆ ಇರಬೇಕು {0},
 From {0} | {1} {2},ಗೆ {0} | {1} {2},
 Fulfillment,ಈಡೇರಿದ,
-Full,ಪೂರ್ಣ,
 Full Name,ಪೂರ್ಣ ಹೆಸರು,
 Fully Depreciated,ಸಂಪೂರ್ಣವಾಗಿ Depreciated,
 Furnitures and Fixtures,ಪೀಠೋಪಕರಣಗಳು ಮತ್ತು ನೆಲೆವಸ್ತುಗಳ,
@@ -1133,7 +1121,6 @@
 Hub Sync ID,ಹಬ್ ಸಿಂಕ್ ID,
 Human Resource,ಮಾನವ ಸಂಪನ್ಮೂಲ,
 Human Resources,ಮಾನವ ಸಂಪನ್ಮೂಲ,
-IFSC Code,IFSC ಕೋಡ್,
 IGST Amount,IGST ಮೊತ್ತ,
 IP Address,IP ವಿಳಾಸ,
 ITC Available (whether in full op part),ಐಟಿಸಿ ಲಭ್ಯವಿದೆ (ಪೂರ್ಣ ಆಪ್ ಭಾಗದಲ್ಲಿರಲಿ),
@@ -1185,7 +1172,6 @@
 Ineligible ITC,ಅನರ್ಹ ಐಟಿಸಿ,
 Initiated,ಚಾಲನೆ,
 Inpatient Record,ಒಳರೋಗಿ ರೆಕಾರ್ಡ್,
-Insert,ಸೇರಿಸಿ,
 Installation Note,ಅನುಸ್ಥಾಪನೆ ಸೂಚನೆ,
 Installation Note {0} has already been submitted,ಅನುಸ್ಥಾಪನೆ ಸೂಚನೆ {0} ಈಗಾಗಲೇ ಸಲ್ಲಿಸಲಾಗಿದೆ,
 Installation date cannot be before delivery date for Item {0},ಅನುಸ್ಥಾಪನ ದಿನಾಂಕ ಐಟಂ ವಿತರಣಾ ದಿನಾಂಕದ ಮೊದಲು ಸಾಧ್ಯವಿಲ್ಲ {0},
@@ -1197,7 +1183,6 @@
 Insurance Start date should be less than Insurance End date,ವಿಮೆ ಪ್ರಾರಂಭ ದಿನಾಂಕ ವಿಮಾ ಅಂತಿಮ ದಿನಾಂಕ ಕಡಿಮೆ ಇರಬೇಕು,
 Integrated Tax,ಸಂಯೋಜಿತ ತೆರಿಗೆ,
 Inter-State Supplies,ಅಂತರ ರಾಜ್ಯ ಸರಬರಾಜು,
-Interests,ಆಸಕ್ತಿಗಳು,
 Internet Publishing,ಇಂಟರ್ನೆಟ್ ಪಬ್ಲಿಷಿಂಗ್,
 Intra-State Supplies,ಅಂತರ ರಾಜ್ಯ ಸರಬರಾಜು,
 Introduction,ಪರಿಚಯ,
@@ -1316,7 +1301,6 @@
 Lab testing datetime cannot be before collection datetime,ಲ್ಯಾಬ್ ಪರೀಕ್ಷೆ ಡಾಟಾಟೈಮ್ ಸಂಗ್ರಹದ ದಿನಾಂಕದ ಮೊದಲು ಇರಬಾರದು,
 Label,ಚೀಟಿ,
 Laboratory,ಪ್ರಯೋಗಾಲಯ,
-Language Name,ಭಾಷಾ ಹೆಸರು,
 Large,ದೊಡ್ಡ,
 Last Communication,ಕೊನೆಯ ಸಂವಹನ,
 Last Communication Date,ಕೊನೆಯ ಸಂವಹನ ದಿನಾಂಕ,
@@ -1347,8 +1331,6 @@
 Letter Heads for print templates.,ಮುದ್ರಣ ಟೆಂಪ್ಲೆಟ್ಗಳನ್ನು letterheads .,
 Level,ಮಟ್ಟ,
 Liability,ಹೊಣೆಗಾರಿಕೆ,
-License,ಪರವಾನಗಿ,
-Limit,ಮಿತಿ,
 Limit Crossed,ಮಿತಿ ಕ್ರಾಸ್ಡ್,
 Link to Material Request,ವಸ್ತು ವಿನಂತಿಗೆ ಲಿಂಕ್ ಮಾಡಿ,
 List of all share transactions,ಎಲ್ಲಾ ಪಾಲು ವ್ಯವಹಾರಗಳ ಪಟ್ಟಿ,
@@ -1359,7 +1341,6 @@
 Loans (Liabilities),ಸಾಲ ( ಹೊಣೆಗಾರಿಕೆಗಳು ),
 Loans and Advances (Assets),ಸಾಲ ಮತ್ತು ಅಡ್ವಾನ್ಸಸ್ ( ಆಸ್ತಿಗಳು ),
 Local,ಸ್ಥಳೀಯ,
-Log,ಲಾಗ್,
 Logs for maintaining sms delivery status,SMS ಡೆಲಿವರಿ ಸ್ಥಾನಮಾನ ಕಾಯ್ದುಕೊಳ್ಳುವುದು ದಾಖಲೆಗಳು,
 Lost,ಲಾಸ್ಟ್,
 Lost Reasons,ಕಳೆದುಹೋದ ಕಾರಣಗಳು,
@@ -1445,7 +1426,6 @@
 Medical Department,ವೈದ್ಯಕೀಯ ಇಲಾಖೆ,
 Medical Record,ವೈದ್ಯಕೀಯ ವರದಿ,
 Medium,ಮಧ್ಯಮ,
-Meeting,ಸಭೆಯಲ್ಲಿ,
 Member Activity,ಸದಸ್ಯ ಚಟುವಟಿಕೆ,
 Member ID,ಸದಸ್ಯತ್ವ ಸಂಖ್ಯೆ,
 Member Name,ಸದಸ್ಯರ ಹೆಸರು,
@@ -1495,7 +1475,6 @@
 Multiple Variants,ಬಹು ರೂಪಾಂತರಗಳು,
 Multiple fiscal years exist for the date {0}. Please set company in Fiscal Year,ಬಹು ಹಣಕಾಸಿನ ವರ್ಷಗಳ ದಿನಾಂಕ {0} ಅಸ್ತಿತ್ವದಲ್ಲಿವೆ. ದಯವಿಟ್ಟು ವರ್ಷದಲ್ಲಿ ಕಂಪನಿ ಸೆಟ್,
 Music,ಸಂಗೀತ,
-My Account,ನನ್ನ ಖಾತೆ,
 Name error: {0},ಹೆಸರು ದೋಷ: {0},
 Name of new Account. Note: Please don't create accounts for Customers and Suppliers,ಹೊಸ ಖಾತೆ ಶಾಲೆಯ ಹೆಸರು. ಗಮನಿಸಿ: ಗ್ರಾಹಕರ ಹಾಗೂ ವಿತರಕರ ಖಾತೆಗಳನ್ನು ರಚಿಸಲು ದಯವಿಟ್ಟು,
 Name or Email is mandatory,ಹೆಸರು ಅಥವಾ ಇಮೇಲ್ ಕಡ್ಡಾಯ,
@@ -1538,7 +1517,6 @@
 New credit limit is less than current outstanding amount for the customer. Credit limit has to be atleast {0},ಹೊಸ ಕ್ರೆಡಿಟ್ ಮಿತಿಯನ್ನು ಗ್ರಾಹಕ ಪ್ರಸ್ತುತ ಬಾಕಿ ಮೊತ್ತದ ಕಡಿಮೆ. ಕ್ರೆಡಿಟ್ ಮಿತಿಯನ್ನು ಕನಿಷ್ಠ ಎಂದು ಹೊಂದಿದೆ {0},
 New task,ಹೊಸ ಕೆಲಸವನ್ನು,
 New {0} pricing rules are created,ಹೊಸ {0} ಬೆಲೆ ನಿಯಮಗಳನ್ನು ರಚಿಸಲಾಗಿದೆ,
-Newsletters,ಸುದ್ದಿಪತ್ರಗಳು,
 Newspaper Publishers,ಸುದ್ದಿ ಪತ್ರಿಕೆಗಳ,
 Next,ಮುಂದೆ,
 Next Contact By cannot be same as the Lead Email Address,ಮುಂದಿನ ಮೂಲಕ ಸಂಪರ್ಕಿಸಿ ಲೀಡ್ ಇಮೇಲ್ ವಿಳಾಸ ಅದೇ ಸಾಧ್ಯವಿಲ್ಲ,
@@ -1686,7 +1664,6 @@
 Other,ಇತರ,
 Other Reports,ಇತರ ವರದಿಗಳು,
 "Other outward supplies(Nil rated,Exempted)","ಇತರ ಬಾಹ್ಯ ಸರಬರಾಜುಗಳು (ನಿಲ್ ರೇಟ್, ವಿನಾಯಿತಿ)",
-Others,ಇತರೆ,
 Out Qty,ಪ್ರಮಾಣ ಔಟ್,
 Out Value,ಔಟ್ ಮೌಲ್ಯ,
 Out of Order,ಆದೇಶದ ಹೊರಗೆ,
@@ -1726,7 +1703,6 @@
 Party Type and Party is mandatory for {0} account,{0} ಖಾತೆಗೆ ಪಾರ್ಟಿ ಪ್ರಕಾರ ಮತ್ತು ಪಾರ್ಟಿ ಕಡ್ಡಾಯವಾಗಿದೆ,
 Party Type is mandatory,ಪಕ್ಷದ ಕೌಟುಂಬಿಕತೆ ಕಡ್ಡಾಯ,
 Party is mandatory,ಪಕ್ಷದ ಕಡ್ಡಾಯ,
-Password,ಪಾಸ್ವರ್ಡ್,
 Past Due Date,ಹಿಂದಿನ ಕಾರಣ ದಿನಾಂಕ,
 Patient,ರೋಗಿಯ,
 Patient Appointment,ರೋಗಿಯ ನೇಮಕಾತಿ,
@@ -1784,7 +1760,6 @@
 Pharmaceutical,ಔಷಧೀಯ,
 Pharmaceuticals,ಫಾರ್ಮಾಸ್ಯುಟಿಕಲ್ಸ್,
 Physician,ವೈದ್ಯ,
-Pincode,ಪಿನ್ ಕೋಡ್,
 Place Of Supply (State/UT),ಸರಬರಾಜು ಸ್ಥಳ (ರಾಜ್ಯ / ಯುಟಿ),
 Place Order,ಪ್ಲೇಸ್ ಆರ್ಡರ್,
 Plan Name,ಯೋಜನೆ ಹೆಸರು,
@@ -1896,7 +1871,6 @@
 Please select date,ದಿನಾಂಕ ಆಯ್ಕೆ,
 Please select item code,ಐಟಂ ಕೋಡ್ ಆಯ್ಕೆ ಮಾಡಿ,
 Please select month and year,ತಿಂಗಳು ವರ್ಷದ ಆಯ್ಕೆಮಾಡಿ,
-Please select prefix first,ಮೊದಲ ಪೂರ್ವಪ್ರತ್ಯಯ ಆಯ್ಕೆ ಮಾಡಿ,
 Please select the Company,ದಯವಿಟ್ಟು ಕಂಪನಿ ಆಯ್ಕೆಮಾಡಿ,
 Please select the Multiple Tier Program type for more than one collection rules.,ಒಂದಕ್ಕಿಂತ ಹೆಚ್ಚು ಸಂಗ್ರಹ ನಿಯಮಗಳಿಗೆ ದಯವಿಟ್ಟು ಬಹು ಶ್ರೇಣಿ ಪ್ರೋಗ್ರಾಂ ಪ್ರಕಾರವನ್ನು ಆಯ್ಕೆಮಾಡಿ.,
 Please select the assessment group other than 'All Assessment Groups',ದಯವಿಟ್ಟು &#39;ಎಲ್ಲಾ ಅಸೆಸ್ಮೆಂಟ್ ಗುಂಪುಗಳು&#39; ಬೇರೆ ಅಸೆಸ್ಮೆಂಟ್ ಗುಂಪು ಆಯ್ಕೆ,
@@ -1913,7 +1887,6 @@
 Please set Company filter blank if Group By is 'Company',ಕಂಪನಿ ಖಾಲಿ ಫಿಲ್ಟರ್ ಸೆಟ್ ದಯವಿಟ್ಟು ಗುಂಪಿನ ಕಂಪೆನಿ &#39;ಆಗಿದೆ,
 Please set Default Payroll Payable Account in Company {0},ಕಂಪನಿ ರಲ್ಲಿ ಡೀಫಾಲ್ಟ್ ವೇತನದಾರರ ಪಾವತಿಸಲಾಗುವುದು ಖಾತೆ ಸೆಟ್ ಮಾಡಿ {0},
 Please set Depreciation related Accounts in Asset Category {0} or Company {1},ಆಸ್ತಿ ವರ್ಗ {0} ಅಥವಾ ಕಂಪನಿಯಲ್ಲಿ ಸವಕಳಿ ಸಂಬಂಧಿಸಿದ ಖಾತೆಗಳು ಸೆಟ್ ಮಾಡಿ {1},
-Please set Email Address,ದಯವಿಟ್ಟು ಇಮೇಲ್ ವಿಳಾಸವನ್ನು ಸೆಟ್,
 Please set GST Accounts in GST Settings,GST ಸೆಟ್ಟಿಂಗ್ಗಳಲ್ಲಿ GST ಖಾತೆಗಳನ್ನು ಹೊಂದಿಸಿ,
 Please set Hotel Room Rate on {},ಹೋಟೆಲ್ ಕೊಠಡಿ ದರವನ್ನು ದಯವಿಟ್ಟು {@} ಹೊಂದಿಸಿ,
 Please set Number of Depreciations Booked,ದಯವಿಟ್ಟು ಸೆಟ್ Depreciations ಸಂಖ್ಯೆ ಬುಕ್ಡ್,
@@ -1936,7 +1909,6 @@
 Please set the Email ID for the Student to send the Payment Request,ದಯವಿಟ್ಟು ಪಾವತಿಯ ವಿನಂತಿ ಕಳುಹಿಸಲು ವಿದ್ಯಾರ್ಥಿಯ ಇಮೇಲ್ ID ಅನ್ನು ಹೊಂದಿಸಿ,
 Please set the Item Code first,ದಯವಿಟ್ಟು ಮೊದಲು ಐಟಂ ಕೋಡ್ ಅನ್ನು ಹೊಂದಿಸಿ,
 Please set the Payment Schedule,ದಯವಿಟ್ಟು ಪಾವತಿ ವೇಳಾಪಟ್ಟಿಯನ್ನು ಹೊಂದಿಸಿ,
-Please set the series to be used.,ದಯವಿಟ್ಟು ಸರಣಿಯನ್ನು ಹೊಂದಿಸಿ.,
 Please set {0} for address {1},ವಿಳಾಸಕ್ಕಾಗಿ {0} ದಯವಿಟ್ಟು {0} ಅನ್ನು ಹೊಂದಿಸಿ,
 Please setup Students under Student Groups,ದಯವಿಟ್ಟು ವಿದ್ಯಾರ್ಥಿ ಗುಂಪುಗಳ ಅಡಿಯಲ್ಲಿ ವಿದ್ಯಾರ್ಥಿಗಳನ್ನು ಸೆಟಪ್ ಮಾಡಿ,
 Please specify Company,ಕಂಪನಿ ನಮೂದಿಸಿ,
@@ -1953,7 +1925,6 @@
 Point-of-Sale,ಪಾಯಿಂಟ್ ಯಾ ಮಾರಾಟಕ್ಕೆ,
 Point-of-Sale Profile,ಪಾಯಿಂಟ್ ಯಾ ಮಾರಾಟಕ್ಕೆ ವಿವರ,
 Portal,ಪೋರ್ಟಲ್,
-Portal Settings,ಪೋರ್ಟಲ್ ಸೆಟ್ಟಿಂಗ್ಗಳು,
 Possible Supplier,ಸಂಭಾವ್ಯ ಸರಬರಾಜುದಾರ,
 Postal Expenses,ಅಂಚೆ ವೆಚ್ಚಗಳು,
 Posting Date,ದಿನಾಂಕ ಪೋಸ್ಟ್,
@@ -2152,12 +2123,10 @@
 Reference No is mandatory if you entered Reference Date,ನೀವು ರೆಫರೆನ್ಸ್ ದಿನಾಂಕ ನಮೂದಿಸಿದರೆ ರೆಫರೆನ್ಸ್ ನಂ ಕಡ್ಡಾಯ,
 Reference No.,ಉಲ್ಲೇಖ ಸಂಖ್ಯೆ.,
 Reference Number,ಉಲ್ಲೇಖ ಸಂಖ್ಯೆ,
-Reference Owner,ರೆಫರೆನ್ಸ್ ಮಾಲೀಕ,
 Reference Type,ರೆಫರೆನ್ಸ್ ಕೌಟುಂಬಿಕತೆ,
 "Reference: {0}, Item Code: {1} and Customer: {2}","ರೆಫರೆನ್ಸ್: {0}, ಐಟಂ ಕೋಡ್: {1} ಮತ್ತು ಗ್ರಾಹಕ: {2}",
 References,ಉಲ್ಲೇಖಗಳು,
 Refresh Token,ರಿಫ್ರೆಶ್ ಟೋಕನ್,
-Region,ಪ್ರದೇಶ,
 Register,ನೋಂದಣಿ,
 Rejected,ತಿರಸ್ಕರಿಸಲಾಗಿದೆ,
 Related,ಸಂಬಂಧಿತ,
@@ -2179,7 +2148,6 @@
 Replace BOM and update latest price in all BOMs,BOM ಅನ್ನು ಬದಲಾಯಿಸಿ ಮತ್ತು ಎಲ್ಲಾ BOM ಗಳಲ್ಲಿ ಇತ್ತೀಚಿನ ಬೆಲೆಯನ್ನು ನವೀಕರಿಸಿ,
 Replied,ಉತ್ತರಿಸಿದರು,
 Report,ವರದಿ,
-Report Builder,ವರದಿ ಬಿಲ್ಡರ್,
 Report Type,ವರದಿ ಪ್ರಕಾರ,
 Report Type is mandatory,ವರದಿ ಪ್ರಕಾರ ಕಡ್ಡಾಯ,
 Reports,ವರದಿಗಳು,
@@ -2355,13 +2323,11 @@
 Same Company is entered more than once,ಅದೇ ಕಂಪನಿಯ ಒಂದಕ್ಕಿಂತ ಹೆಚ್ಚು ಬಾರಿ ದಾಖಲಿಸಿದರೆ,
 Same item cannot be entered multiple times.,ಅದೇ ಐಟಂ ಅನೇಕ ಬಾರಿ ಪ್ರವೇಶಿಸಲು ಸಾಧ್ಯವಿಲ್ಲ.,
 Same supplier has been entered multiple times,ಅದೇ ಪೂರೈಕೆದಾರ ಅನೇಕ ಬಾರಿ ನಮೂದಿಸಲಾದ,
-Sample,ಮಾದರಿ,
 Sample Collection,ಮಾದರಿ ಸಂಗ್ರಹ,
 Sample quantity {0} cannot be more than received quantity {1},ಮಾದರಿ ಪ್ರಮಾಣ {0} ಪಡೆದಿರುವ ಪ್ರಮಾಣಕ್ಕಿಂತ ಹೆಚ್ಚಿನದಾಗಿರಲು ಸಾಧ್ಯವಿಲ್ಲ {1},
 Sanctioned,ಮಂಜೂರು,
 Sand,ಮರಳು,
 Saturday,ಶನಿವಾರ,
-Saved,ಉಳಿಸಿದ,
 Saving {0},ಉಳಿಸಲಾಗುತ್ತಿದೆ {0},
 Scan Barcode,ಬಾರ್‌ಕೋಡ್ ಅನ್ನು ಸ್ಕ್ಯಾನ್ ಮಾಡಿ,
 Schedule,ಕಾರ್ಯಕ್ರಮ,
@@ -2463,7 +2429,6 @@
 Series Updated,ಸರಣಿ Updated,
 Series Updated Successfully,ಸರಣಿ ಯಶಸ್ವಿಯಾಗಿ ನವೀಕರಿಸಲಾಗಿದೆ,
 Series is mandatory,ಸರಣಿ ಕಡ್ಡಾಯ,
-Series {0} already used in {1},ಸರಣಿ {0} ಈಗಾಗಲೇ ಬಳಸಲಾಗುತ್ತದೆ {1},
 Service,ಸೇವೆ,
 Service Level Agreement,ಸೇವೆ ಮಟ್ಟದ ಒಪ್ಪಂದ,
 Service Level Agreement.,ಸೇವೆ ಮಟ್ಟದ ಒಪ್ಪಂದ.,
@@ -2479,7 +2444,6 @@
 Set Tax Rule for shopping cart,ಶಾಪಿಂಗ್ ಕಾರ್ಟ್ ತೆರಿಗೆಯ ರೂಲ್,
 Set as Closed,ಮುಚ್ಚಲಾಗಿದೆ ಹೊಂದಿಸಿ,
 Set as Completed,ಪೂರ್ಣಗೊಂಡಂತೆ ಹೊಂದಿಸಿ,
-Set as Default,ಪೂರ್ವನಿಯೋಜಿತವಾಗಿನಿಗದಿಪಡಿಸು,
 Set as Lost,ಲಾಸ್ಟ್ ಹೊಂದಿಸಿ,
 Set as Open,ಓಪನ್ ಹೊಂದಿಸಿ,
 Set default inventory account for perpetual inventory,ಸಾರ್ವಕಾಲಿಕ ದಾಸ್ತಾನು ಹೊಂದಿಸಲಾದ ಪೂರ್ವನಿಯೋಜಿತ ದಾಸ್ತಾನು ಖಾತೆ,
@@ -2511,7 +2475,6 @@
 Shareholder,ಷೇರುದಾರ,
 Ship To State,ರಾಜ್ಯಕ್ಕೆ ಸಾಗಿಸು,
 Shipments,ಸಾಗಣೆಗಳು,
-Shipping,ಹಡಗು ರವಾನೆ,
 Shipping Address,ಶಿಪ್ಪಿಂಗ್ ವಿಳಾಸ,
 "Shipping Address does not have country, which is required for this Shipping Rule","ಶಿಪ್ಪಿಂಗ್ ವಿಳಾಸ ರಾಷ್ಟ್ರ ಹೊಂದಿಲ್ಲ, ಈ ಶಿಪ್ಪಿಂಗ್ ರೂಲ್ಗೆ ಅಗತ್ಯವಿರುತ್ತದೆ",
 Shipping rule only applicable for Buying,ಖರೀದಿಸಲು ಮಾತ್ರ ಅನ್ವಯಿಸುವ ಶಿಪ್ಪಿಂಗ್ ನಿಯಮ,
@@ -2564,7 +2527,6 @@
 Split Batch,ಒಡೆದ ಬ್ಯಾಚ್,
 Split Issue,ವಿಭಜನೆ ಸಂಚಿಕೆ,
 Sports,ಕ್ರೀಡೆ,
-Standard,ಸ್ಟ್ಯಾಂಡರ್ಡ್,
 Standard Buying,ಸ್ಟ್ಯಾಂಡರ್ಡ್ ಬೈಯಿಂಗ್,
 Standard Selling,ಸ್ಟ್ಯಾಂಡರ್ಡ್ ವಿಕ್ರಯ,
 Standard contract terms for Sales or Purchase.,ಮಾರಾಟದ ಅಥವಾ ಖರೀದಿಗಾಗಿ ಸ್ಟ್ಯಾಂಡರ್ಡ್ ಒಪ್ಪಂದದ ವಿಚಾರದಲ್ಲಿ .,
@@ -2731,7 +2693,6 @@
 Terms and Conditions,ನಿಯಮಗಳು ಮತ್ತು ನಿಯಮಗಳು,
 Terms and Conditions Template,ನಿಯಮಗಳು ಮತ್ತು ನಿಯಮಗಳು ಟೆಂಪ್ಲೇಟು,
 Territory,ಕ್ಷೇತ್ರ,
-Test,ಟೆಸ್ಟ್,
 Thank you for your business!,ನಿಮ್ಮ ವ್ಯಾಪಾರ ಧನ್ಯವಾದಗಳು!,
 The 'From Package No.' field must neither be empty nor it's value less than 1.,&#39;ಪ್ಯಾಕೇಜ್ ನಂನಿಂದ&#39; ಕ್ಷೇತ್ರವು ಖಾಲಿಯಾಗಿರಬಾರದು ಅಥವಾ 1 ಗಿಂತ ಕಡಿಮೆ ಮೌಲ್ಯವನ್ನು ಹೊಂದಿರಬೇಕು.,
 The Brand,ಬ್ರ್ಯಾಂಡ್,
@@ -2848,7 +2809,6 @@
 Total (Without Tax),ಒಟ್ಟು (ತೆರಿಗೆ ಇಲ್ಲದೆ),
 Total Achieved,ಒಟ್ಟು ಸಾಧಿಸಿದ,
 Total Actual,ನಿಜವಾದ ಒಟ್ಟು,
-Total Allocated Leaves,ಒಟ್ಟು ಹಂಚಲ್ಪಟ್ಟ ಎಲೆಗಳು,
 Total Amount,ಒಟ್ಟು ಪ್ರಮಾಣ,
 Total Amount Credited,ಒಟ್ಟು ಮೊತ್ತವನ್ನು ಕ್ರೆಡಿಟ್ ಮಾಡಲಾಗಿದೆ,
 Total Applicable Charges in Purchase Receipt Items table must be same as Total Taxes and Charges,ಖರೀದಿ ರಸೀತಿ ವಸ್ತುಗಳು ಕೋಷ್ಟಕದಲ್ಲಿ ಒಟ್ಟು ಅನ್ವಯಿಸುವ ತೆರಿಗೆ ಒಟ್ಟು ತೆರಿಗೆಗಳು ಮತ್ತು ಶುಲ್ಕಗಳು ಅದೇ ಇರಬೇಕು,
@@ -2892,7 +2852,6 @@
 Total(Amt),ಒಟ್ಟು (ಆಮ್ಟ್),
 Total(Qty),ಒಟ್ಟು (ಪ್ರಮಾಣ),
 Traceability,ಪತ್ತೆ ಹಚ್ಚುವಿಕೆ,
-Traceback,Traceback,
 Track Leads by Lead Source.,ಲೀಡ್ ಮೂಲದಿಂದ ಟ್ರ್ಯಾಕ್ ಲೀಡ್ಸ್.,
 Transaction,ಟ್ರಾನ್ಸಾಕ್ಷನ್,
 Transaction Date,TransactionDate,
@@ -2930,7 +2889,6 @@
 UOM Conversion factor is required in row {0},UOM ಪರಿವರ್ತಿಸುವುದರ ಸತತವಾಗಿ ಅಗತ್ಯವಿದೆ {0},
 UOM coversion factor required for UOM: {0} in Item: {1},UOM ಅಗತ್ಯವಿದೆ UOM coversion ಫ್ಯಾಕ್ಟರ್: {0} ಐಟಂ ರಲ್ಲಿ: {1},
 URL,URL ಅನ್ನು,
-Unable to find DocType {0},ಡಾಕ್ಟೈಪ್ ಅನ್ನು ಹುಡುಕಲಾಗಲಿಲ್ಲ {0},
 Unable to find exchange rate for {0} to {1} for key date {2}. Please create a Currency Exchange record manually,ವಿನಿಮಯ ದರದ ಸಿಗಲಿಲ್ಲವಾದ್ದರಿಂದ {0} ನಿಂದ {1} ಪ್ರಮುಖ ದಿನಾಂಕದಂದು {2}. ದಯವಿಟ್ಟು ಕರೆನ್ಸಿ ವಿನಿಮಯ ದಾಖಲೆ ಕೈಯಾರೆ ರಚಿಸಲು,
 Unable to find score starting at {0}. You need to have standing scores covering 0 to 100,{0} ನಲ್ಲಿ ಪ್ರಾರಂಭವಾಗುವ ಅಂಕವನ್ನು ಕಂಡುಹಿಡಿಯಲು ಸಾಧ್ಯವಿಲ್ಲ. 0 ರಿಂದ 100 ರವರೆಗೆ ನೀವು ನಿಂತಿರುವ ಸ್ಕೋರ್ಗಳನ್ನು ಹೊಂದಿರಬೇಕು,
 Unable to find variable: ,ವೇರಿಯಬಲ್ ಕಂಡುಹಿಡಿಯಲು ಸಾಧ್ಯವಿಲ್ಲ:,
@@ -2960,7 +2918,6 @@
 Upload your letter head and logo. (you can edit them later).,ನಿಮ್ಮ ಪತ್ರ ತಲೆ ಮತ್ತು ಲೋಗೋ ಅಪ್ಲೋಡ್. (ನೀವು ಅವುಗಳನ್ನು ನಂತರ ಸಂಪಾದಿಸಬಹುದು).,
 Upper Income,ಮೇಲ್ ವರಮಾನ,
 Use Sandbox,ಸ್ಯಾಂಡ್ಬಾಕ್ಸ್ ಬಳಸಿ,
-Used Leaves,ಉಪಯೋಗಿಸಿದ ಎಲೆಗಳು,
 User,ಬಳಕೆದಾರ,
 User ID,ಬಳಕೆದಾರ ID,
 User ID not set for Employee {0},ಬಳಕೆದಾರ ID ನೌಕರ ಸೆಟ್ {0},
@@ -3051,7 +3008,6 @@
 Website Settings,ಸೈಟ್ ಸೆಟ್ಟಿಂಗ್ಗಳು,
 Wednesday,ಬುಧವಾರ,
 Week,ವಾರ,
-Weekdays,ವಾರದ ದಿನಗಳು,
 Weekly,ವಾರದ,
 "Weight is mentioned,\nPlease mention ""Weight UOM"" too","ತೂಕ ತುಂಬಾ ""ತೂಕ ಮೈ.ವಿ.ವಿ.ಯ"" ನೀಡಿರಿ \n, ಉಲ್ಲೇಖಿಸಲಾಗಿದೆ",
 Welcome email sent,ಕಳುಹಿಸಿದ ಇಮೇಲ್ ಸ್ವಾಗತ,
@@ -3072,7 +3028,6 @@
 Work Order {0} must be submitted,ಕೆಲಸದ ಆದೇಶ {0} ಅನ್ನು ಸಲ್ಲಿಸಬೇಕು,
 Work Orders Created: {0},ಕೆಲಸದ ಆದೇಶಗಳನ್ನು ರಚಿಸಲಾಗಿದೆ: {0},
 Work-in-Progress Warehouse is required before Submit,ಕೆಲಸ ಪ್ರಗತಿಯಲ್ಲಿರುವ ವೇರ್ಹೌಸ್ ಸಲ್ಲಿಸಿ ಮೊದಲು ಅಗತ್ಯವಿದೆ,
-Workflow,ವರ್ಕ್ಫ್ಲೋ,
 Working,ಕೆಲಸ,
 Working Hours,ದುಡಿಮೆಯು,
 Workstation,ಕಾರ್ಯಸ್ಥಾನ,
@@ -3102,7 +3057,6 @@
 You need to be a user other than Administrator with System Manager and Item Manager roles to register on Marketplace.,ಮಾರ್ಕೆಟ್ಪ್ಲೇಸ್ನಲ್ಲಿ ನೋಂದಾಯಿಸಲು ನೀವು ಸಿಸ್ಟಮ್ ಮ್ಯಾನೇಜರ್ ಮತ್ತು ಐಟಂ ಮ್ಯಾನೇಜರ್ ರೋಲ್ಗಳೊಂದಿಗೆ ನಿರ್ವಾಹಕರನ್ನು ಹೊರತುಪಡಿಸಿ ಬಳಕೆದಾರರಾಗಿರಬೇಕಾಗುತ್ತದೆ.,
 You need to be a user with System Manager and Item Manager roles to add users to Marketplace.,ಬಳಕೆದಾರರನ್ನು ಮಾರುಕಟ್ಟೆ ಸ್ಥಳಕ್ಕೆ ಸೇರಿಸಲು ಸಿಸ್ಟಮ್ ಮ್ಯಾನೇಜರ್ ಮತ್ತು ಐಟಂ ಮ್ಯಾನೇಜರ್ ರೋಲ್ಗಳೊಂದಿಗೆ ನೀವು ಬಳಕೆದಾರರಾಗಿರಬೇಕು.,
 You need to be a user with System Manager and Item Manager roles to register on Marketplace.,Marketplace ನಲ್ಲಿ ನೋಂದಾಯಿಸಲು ನೀವು ಸಿಸ್ಟಮ್ ಮ್ಯಾನೇಜರ್ ಮತ್ತು ಐಟಂ ಮ್ಯಾನೇಜರ್ ರೋಲ್ಗಳೊಂದಿಗೆ ಬಳಕೆದಾರರಾಗಿರಬೇಕಾಗುತ್ತದೆ.,
-You need to be logged in to access this page,ಈ ಪುಟವನ್ನು ಪ್ರವೇಶಿಸಲು ಲಾಗ್ ಇನ್ ಅಗತ್ಯವಿದೆ,
 You need to enable Shopping Cart,ನೀವು ಶಾಪಿಂಗ್ ಕಾರ್ಟ್ ಶಕ್ತಗೊಳಿಸಬೇಕಾಗುತ್ತದೆ,
 You will lose records of previously generated invoices. Are you sure you want to restart this subscription?,ನೀವು ಹಿಂದೆ ರಚಿಸಿದ ಇನ್ವಾಯ್ಸ್ಗಳ ದಾಖಲೆಗಳನ್ನು ಕಳೆದುಕೊಳ್ಳುತ್ತೀರಿ. ಈ ಚಂದಾದಾರಿಕೆಯನ್ನು ಮರುಪ್ರಾರಂಭಿಸಲು ನೀವು ಖಚಿತವಾಗಿ ಬಯಸುವಿರಾ?,
 Your Organization,ನಿಮ್ಮ ಸಂಸ್ಥೆ,
@@ -3218,7 +3172,6 @@
 Assigned To,ನಿಯೋಜಿಸಲಾಗಿದೆ,
 Chat,ಚಾಟಿಂಗ್,
 Completed By,ಪೂರ್ಣಗೊಂಡಿದೆ,
-County,ಕೌಂಟಿ,
 Day of Week,ವಾರದ ದಿನ,
 "Dear System Manager,","ಆತ್ಮೀಯ ವ್ಯವಸ್ಥೆ ಮ್ಯಾನೇಜರ್,",
 Default Value,ಡೀಫಾಲ್ಟ್ ಮೌಲ್ಯ,
@@ -3229,31 +3182,21 @@
 Fieldtype,Fieldtype,
 Help Articles,ಲೇಖನಗಳು ಸಹಾಯ,
 ID,ಐಡಿ,
-Images,ಚಿತ್ರಗಳು,
 Import,ಆಮದು,
 Language,ಭಾಷೆ,
 Likes,ಇಷ್ಟಗಳು,
 Merge with existing,ಅಸ್ತಿತ್ವದಲ್ಲಿರುವ ವಿಲೀನಗೊಳ್ಳಲು,
-Office,ಕಚೇರಿ,
 Orientation,ದೃಷ್ಟಿಕೋನ,
 Parent,ಪೋಷಕ,
-Passive,ನಿಷ್ಕ್ರಿಯ,
 Payment Failed,ಪಾವತಿ ವಿಫಲವಾಗಿದೆ,
-Permanent,ಶಾಶ್ವತ,
 Personal,ದೊಣ್ಣೆ,
-Plant,ಗಿಡ,
 Post,ಪೋಸ್ಟ್,
-Postal,ಅಂಚೆಯ,
 Postal Code,ಅಂಚೆ ಕೋಡ್,
-Previous,ಹಿಂದಿನ,
 Provider,ಒದಗಿಸುವವರು,
 Read Only,readonly,
 Recipient,ಗ್ರಾಹಿ,
 Reviews,ವಿಮರ್ಶೆಗಳು,
 Sender,ಪ್ರೇಷಕ,
-Shop,ಅಂಗಡಿ,
-Subsidiary,ಸಹಕಾರಿ,
-There is some problem with the file url: {0},ಕಡತ URL ನೊಂದಿಗೆ ಕೆಲವು ಸಮಸ್ಯೆಯಿದೆ: {0},
 There were errors while sending email. Please try again.,ಇಮೇಲ್ ಕಳುಹಿಸುವಾಗ ದೋಷಗಳು ಇದ್ದವು. ದಯವಿಟ್ಟು ಮತ್ತೆ ಪ್ರಯತ್ನಿಸಿ .,
 Values Changed,ಮೌಲ್ಯಗಳು ಬದಲಾವಣೆ,
 or,ಅಥವಾ,
@@ -3280,19 +3223,16 @@
 Quality Feedback Template,ಗುಣಮಟ್ಟದ ಪ್ರತಿಕ್ರಿಯೆ ಟೆಂಪ್ಲೇಟು,
 Rules for applying different promotional schemes.,ವಿಭಿನ್ನ ಪ್ರಚಾರ ಯೋಜನೆಗಳನ್ನು ಅನ್ವಯಿಸುವ ನಿಯಮಗಳು.,
 Show {0},{0} ತೋರಿಸು,
-"Special Characters except '-', '#', '.', '/', '{{' and '}}' not allowed in naming series {0}","&quot;-&quot;, &quot;#&quot;, &quot;.&quot;, &quot;/&quot;, &quot;{{&quot; ಮತ್ತು &quot;}}&quot; ಹೊರತುಪಡಿಸಿ ವಿಶೇಷ ಅಕ್ಷರಗಳನ್ನು ಹೆಸರಿಸುವ ಸರಣಿಯಲ್ಲಿ ಅನುಮತಿಸಲಾಗುವುದಿಲ್ಲ {0}",
 Target Details,ಗುರಿ ವಿವರಗಳು,
 {0} already has a Parent Procedure {1}.,{0} ಈಗಾಗಲೇ ಪೋಷಕ ವಿಧಾನವನ್ನು ಹೊಂದಿದೆ {1}.,
 API,API,
 Annual,ವಾರ್ಷಿಕ,
 Change,ಬದಲಾವಣೆ,
 Contact Email,ಇಮೇಲ್ ಮೂಲಕ ಸಂಪರ್ಕಿಸಿ,
-Export Type,ರಫ್ತು ಕೌಟುಂಬಿಕತೆ,
 From Date,Fromdate,
 Group By,ಗುಂಪು,
 Invalid URL,ಅಮಾನ್ಯ URL,
 Landscape,ಭೂದೃಶ್ಯ,
-Last Sync On,ಕೊನೆಯ ಸಿಂಕ್ ಆನ್,
 Naming Series,ಸರಣಿ ಹೆಸರಿಸುವ,
 No data to export,ರಫ್ತು ಮಾಡಲು ಡೇಟಾ ಇಲ್ಲ,
 Portrait,ಭಾವಚಿತ್ರ,
@@ -3302,7 +3242,6 @@
 Show Document,ಡಾಕ್ಯುಮೆಂಟ್ ತೋರಿಸಿ,
 Show Traceback,ಟ್ರೇಸ್‌ಬ್ಯಾಕ್ ತೋರಿಸಿ,
 Video,ವೀಡಿಯೊ,
-Webhook Secret,ವೆಬ್‌ಹುಕ್ ರಹಸ್ಯ,
 % Of Grand Total,ಒಟ್ಟು%,
 <b>Company</b> is a mandatory filter.,<b>ಕಂಪನಿ</b> ಕಡ್ಡಾಯ ಫಿಲ್ಟರ್ ಆಗಿದೆ.,
 <b>From Date</b> is a mandatory filter.,<b>ದಿನಾಂಕದಿಂದ</b> ಕಡ್ಡಾಯ ಫಿಲ್ಟರ್ ಆಗಿದೆ.,
@@ -3358,7 +3297,6 @@
 BOM Comparison Tool,BOM ಹೋಲಿಕೆ ಸಾಧನ,
 BOM recursion: {0} cannot be child of {1},BOM ಪುನರಾವರ್ತನೆ: {0} {1 child ರ ಮಗುವಾಗಿರಬಾರದು,
 BOM recursion: {0} cannot be parent or child of {1},BOM ಪುನರಾವರ್ತನೆ: {0 parent ಪೋಷಕರು ಅಥವಾ {1 of ನ ಮಗುವಾಗಿರಬಾರದು,
-Back to Home,ಮರಳಿ ಮನೆಗೆ,
 Back to Messages,ಸಂದೇಶಗಳಿಗೆ ಹಿಂತಿರುಗಿ,
 Bank Data mapper doesn't exist,ಬ್ಯಾಂಕ್ ಡೇಟಾ ಮ್ಯಾಪರ್ ಅಸ್ತಿತ್ವದಲ್ಲಿಲ್ಲ,
 Bank Details,ಬ್ಯಾಂಕ್ ವಿವರಗಳು,
@@ -3420,7 +3358,6 @@
 Currency,ಕರೆನ್ಸಿ,
 Current Status,ಪ್ರಸ್ತುತ ಸ್ಥಿತಿಯನ್ನು,
 Customer PO,ಗ್ರಾಹಕ ಪಿಒ,
-Customize,ಕಸ್ಟಮೈಸ್,
 Daily,ಪ್ರತಿದಿನ,
 Date,ದಿನಾಂಕ,
 Date of Birth cannot be greater than Joining Date.,ಸೇರುವ ದಿನಾಂಕಕ್ಕಿಂತ ಹುಟ್ಟಿದ ದಿನಾಂಕವು ಹೆಚ್ಚಿರಬಾರದು.,
@@ -3454,7 +3391,6 @@
 ERPNext could not find any matching payment entry,ಹೊಂದಾಣಿಕೆಯ ಪಾವತಿ ನಮೂದನ್ನು ERPNext ಗೆ ಕಂಡುಹಿಡಿಯಲಾಗಲಿಲ್ಲ,
 Earliest Age,ಆರಂಭಿಕ ವಯಸ್ಸು,
 Edit Details,ವಿವರಗಳನ್ನು ಸಂಪಾದಿಸಿ,
-Edit Profile,ಪ್ರೊಫೈಲ್ಸಂಪಾದಿಸು,
 Either GST Transporter ID or Vehicle No is required if Mode of Transport is Road,ಸಾರಿಗೆ ವಿಧಾನವು ರಸ್ತೆಯಾಗಿದ್ದರೆ ಜಿಎಸ್ಟಿ ಟ್ರಾನ್ಸ್ಪೋರ್ಟರ್ ಐಡಿ ಅಥವಾ ವಾಹನ ಸಂಖ್ಯೆ ಅಗತ್ಯವಿಲ್ಲ,
 Email,ಇಮೇಲ್,
 Email Campaigns,ಇಮೇಲ್ ಪ್ರಚಾರಗಳು,
@@ -3482,7 +3418,6 @@
 Fetch Items from Warehouse,ಗೋದಾಮಿನಿಂದ ವಸ್ತುಗಳನ್ನು ಪಡೆಯಿರಿ,
 Fetching...,ಪಡೆಯಲಾಗುತ್ತಿದೆ ...,
 Field,ಫೀಲ್ಡ್,
-File Manager,ಕಡತ ವ್ಯವಸ್ಥಾಪಕ,
 Filters,ಶೋಧಕಗಳು,
 Finding linked payments,ಲಿಂಕ್ ಮಾಡಿದ ಪಾವತಿಗಳನ್ನು ಹುಡುಕಲಾಗುತ್ತಿದೆ,
 Fleet Management,ಫ್ಲೀಟ್ ಮ್ಯಾನೇಜ್ಮೆಂಟ್,
@@ -3521,7 +3456,6 @@
 Incorrect Warehouse,ತಪ್ಪಾದ ಗೋದಾಮು,
 Invalid Barcode. There is no Item attached to this barcode.,ಅಮಾನ್ಯ ಬಾರ್‌ಕೋಡ್. ಈ ಬಾರ್‌ಕೋಡ್‌ಗೆ ಯಾವುದೇ ಐಟಂ ಲಗತ್ತಿಸಲಾಗಿಲ್ಲ.,
 Invalid credentials,ಅಮಾನ್ಯ ರುಜುವಾತುಗಳು,
-Invite as User,ಬಳಕೆದಾರ ಎಂದು ಆಹ್ವಾನಿಸಿ,
 Issue Priority.,ಸಂಚಿಕೆ ಆದ್ಯತೆ.,
 Issue Type.,ಸಂಚಿಕೆ ಪ್ರಕಾರ.,
 "It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","ಸರ್ವರ್ನ ಸ್ಟ್ರೈಪ್ ಕಾನ್ಫಿಗರೇಶನ್ನಲ್ಲಿ ಸಮಸ್ಯೆ ಇದೆ ಎಂದು ತೋರುತ್ತದೆ. ವೈಫಲ್ಯದ ಸಂದರ್ಭದಲ್ಲಿ, ನಿಮ್ಮ ಖಾತೆಗೆ ಹಣವನ್ನು ಮರುಪಾವತಿಸಲಾಗುತ್ತದೆ.",
@@ -3564,7 +3498,6 @@
 New Invoice,ಹೊಸ ಸರಕುಪಟ್ಟಿ,
 New Payment,ಹೊಸ ಪಾವತಿ,
 New release date should be in the future,ಹೊಸ ಬಿಡುಗಡೆ ದಿನಾಂಕ ಭವಿಷ್ಯದಲ್ಲಿರಬೇಕು,
-Newsletter,ಸುದ್ದಿಪತ್ರ,
 No Account matched these filters: {},ಯಾವುದೇ ಖಾತೆಯು ಈ ಫಿಲ್ಟರ್‌ಗಳಿಗೆ ಹೊಂದಿಕೆಯಾಗುವುದಿಲ್ಲ: {},
 No communication found.,ಯಾವುದೇ ಸಂವಹನ ಕಂಡುಬಂದಿಲ್ಲ.,
 No correct answer is set for {0},Answer 0 for ಗೆ ಸರಿಯಾದ ಉತ್ತರವನ್ನು ಹೊಂದಿಸಲಾಗಿಲ್ಲ,
@@ -3640,7 +3573,6 @@
 Please setup a default bank account for company {0},ದಯವಿಟ್ಟು ಕಂಪನಿ for 0 for ಗಾಗಿ ಡೀಫಾಲ್ಟ್ ಬ್ಯಾಂಕ್ ಖಾತೆಯನ್ನು ಹೊಂದಿಸಿ,
 Please specify,ಸೂಚಿಸಲು ದಯವಿಟ್ಟು,
 Please specify a {0},ದಯವಿಟ್ಟು {0} ಅನ್ನು ನಿರ್ದಿಷ್ಟಪಡಿಸಿ,lead
-Printing,ಮುದ್ರಣ,
 Priority,ಆದ್ಯತೆ,
 Priority has been changed to {0}.,ಆದ್ಯತೆಯನ್ನು {0 to ಗೆ ಬದಲಾಯಿಸಲಾಗಿದೆ.,
 Priority {0} has been repeated.,ಆದ್ಯತೆ {0 ആവർത്തിಿಸಲಾಗಿದೆ.,
@@ -3649,7 +3581,6 @@
 Project,ಯೋಜನೆ,
 Provide the academic year and set the starting and ending date.,ಶೈಕ್ಷಣಿಕ ವರ್ಷವನ್ನು ಒದಗಿಸಿ ಮತ್ತು ಪ್ರಾರಂಭ ಮತ್ತು ಅಂತ್ಯದ ದಿನಾಂಕವನ್ನು ನಿಗದಿಪಡಿಸಿ.,
 Public token is missing for this bank,ಈ ಬ್ಯಾಂಕ್‌ಗೆ ಸಾರ್ವಜನಿಕ ಟೋಕನ್ ಕಾಣೆಯಾಗಿದೆ,
-Publish,ಪ್ರಕಟಿಸು,
 Publish 1 Item,1 ಐಟಂ ಅನ್ನು ಪ್ರಕಟಿಸಿ,
 Publish Items,ವಸ್ತುಗಳನ್ನು ಪ್ರಕಟಿಸಿ,
 Publish More Items,ಇನ್ನಷ್ಟು ವಸ್ತುಗಳನ್ನು ಪ್ರಕಟಿಸಿ,
@@ -3677,7 +3608,6 @@
 Reconciled,ರಾಜಿ ಮಾಡಿಕೊಳ್ಳಲಾಗಿದೆ,
 Recruitment,ನೇಮಕಾತಿ,
 Red,ಕೆಂಪು,
-Refreshing,ರಿಫ್ರೆಶ್,
 Release date must be in the future,ಬಿಡುಗಡೆ ದಿನಾಂಕ ಭವಿಷ್ಯದಲ್ಲಿರಬೇಕು,
 Relieving Date must be greater than or equal to Date of Joining,ಪರಿಹಾರ ದಿನಾಂಕವು ಸೇರುವ ದಿನಾಂಕಕ್ಕಿಂತ ದೊಡ್ಡದಾಗಿರಬೇಕು ಅಥವಾ ಸಮನಾಗಿರಬೇಕು,
 Rename,ಹೊಸ ಹೆಸರಿಡು,
@@ -3721,7 +3651,6 @@
 Search for a payment,ಪಾವತಿಗಾಗಿ ಹುಡುಕಿ,
 Search for anything ...,ಯಾವುದನ್ನಾದರೂ ಹುಡುಕಿ ...,
 Search results for,ಹುಡುಕಾಟ ಫಲಿತಾಂಶಗಳು,
-Select All,ಎಲ್ಲಾ ಆಯ್ಕೆಮಾಡಿ,
 Select Difference Account,ವ್ಯತ್ಯಾಸ ಖಾತೆ ಆಯ್ಕೆಮಾಡಿ,
 Select a Default Priority.,ಡೀಫಾಲ್ಟ್ ಆದ್ಯತೆಯನ್ನು ಆಯ್ಕೆಮಾಡಿ.,
 Select a company,ಕಂಪನಿಯನ್ನು ಆಯ್ಕೆ ಮಾಡಿ,
@@ -3740,11 +3669,9 @@
 Service Level Agreement has been changed to {0}.,ಸೇವಾ ಮಟ್ಟದ ಒಪ್ಪಂದವನ್ನು {0 to ಗೆ ಬದಲಾಯಿಸಲಾಗಿದೆ.,
 Service Level Agreement was reset.,ಸೇವಾ ಮಟ್ಟದ ಒಪ್ಪಂದವನ್ನು ಮರುಹೊಂದಿಸಲಾಗಿದೆ.,
 Service Level Agreement with Entity Type {0} and Entity {1} already exists.,ಘಟಕ ಪ್ರಕಾರ {0} ಮತ್ತು ಘಟಕ {1 with ನೊಂದಿಗೆ ಸೇವಾ ಮಟ್ಟದ ಒಪ್ಪಂದವು ಈಗಾಗಲೇ ಅಸ್ತಿತ್ವದಲ್ಲಿದೆ.,
-Set,ಸೆಟ್,
 Set Meta Tags,ಮೆಟಾ ಟ್ಯಾಗ್‌ಗಳನ್ನು ಹೊಂದಿಸಿ,
 Set {0} in company {1},ಕಂಪನಿಯಲ್ಲಿ {0 Set ಹೊಂದಿಸಿ {1},
 Setup,ಸೆಟಪ್,
-Setup Wizard,ಸೆಟಪ್ ವಿಝಾರ್ಡ್,
 Shift Management,ಶಿಫ್ಟ್ ನಿರ್ವಹಣೆ,
 Show Future Payments,ಭವಿಷ್ಯದ ಪಾವತಿಗಳನ್ನು ತೋರಿಸಿ,
 Show Linked Delivery Notes,ಲಿಂಕ್ಡ್ ಡೆಲಿವರಿ ಟಿಪ್ಪಣಿಗಳನ್ನು ತೋರಿಸಿ,
@@ -3815,7 +3742,6 @@
 Unreconciled,ಹೊಂದಾಣಿಕೆ ಮಾಡಿಕೊಂಡಿಲ್ಲ,
 Unsupported GST Category for E-Way Bill JSON generation,ಇ-ವೇ ಬಿಲ್ ಜೆಎಸ್ಒಎನ್ ಉತ್ಪಾದನೆಗೆ ಬೆಂಬಲಿಸದ ಜಿಎಸ್ಟಿ ವರ್ಗ,
 Update,ಅಪ್ಡೇಟ್,
-Update Details,ವಿವರಗಳನ್ನು ನವೀಕರಿಸಿ,
 Update Taxes for Items,ಐಟಂಗಳಿಗಾಗಿ ತೆರಿಗೆಗಳನ್ನು ನವೀಕರಿಸಿ,
 "Upload a bank statement, link or reconcile a bank account","ಬ್ಯಾಂಕ್ ಹೇಳಿಕೆಯನ್ನು ಅಪ್‌ಲೋಡ್ ಮಾಡಿ, ಬ್ಯಾಂಕ್ ಖಾತೆಯನ್ನು ಲಿಂಕ್ ಮಾಡಿ ಅಥವಾ ಹೊಂದಾಣಿಕೆ ಮಾಡಿ",
 Upload a statement,ಹೇಳಿಕೆಯನ್ನು ಅಪ್‌ಲೋಡ್ ಮಾಡಿ,
@@ -3839,7 +3765,6 @@
 XML Files Processed,XML ಫೈಲ್‌ಗಳನ್ನು ಸಂಸ್ಕರಿಸಲಾಗಿದೆ,
 Year,ವರ್ಷ,
 Yearly,ವಾರ್ಷಿಕ,
-You,ನೀವು,
 You are not allowed to enroll for this course,ಈ ಕೋರ್ಸ್‌ಗೆ ಸೇರಲು ನಿಮಗೆ ಅನುಮತಿ ಇಲ್ಲ,
 You are not enrolled in program {0},ನೀವು program 0 program ಪ್ರೋಗ್ರಾಂಗೆ ದಾಖಲಾಗಿಲ್ಲ,
 You can Feature upto 8 items.,ನೀವು 8 ಐಟಂಗಳವರೆಗೆ ವೈಶಿಷ್ಟ್ಯಗೊಳಿಸಬಹುದು.,
@@ -3856,7 +3781,6 @@
 e-Way Bill already exists for this document,ಈ ಡಾಕ್ಯುಮೆಂಟ್‌ಗಾಗಿ ಇ-ವೇ ಬಿಲ್ ಈಗಾಗಲೇ ಅಸ್ತಿತ್ವದಲ್ಲಿದೆ,
 woocommerce - {0},woocommerce - {0},
 {0} Coupon used are {1}. Allowed quantity is exhausted,{0} ಬಳಸಿದ ಕೂಪನ್ {1 are. ಅನುಮತಿಸಲಾದ ಪ್ರಮಾಣವು ಖಾಲಿಯಾಗಿದೆ,
-{0} Name,{0} ಹೆಸರು,
 {0} Operations: {1},{0} ಕಾರ್ಯಾಚರಣೆಗಳು: {1},
 {0} bank transaction(s) created,{0} ಬ್ಯಾಂಕ್ ವಹಿವಾಟು (ಗಳು) ರಚಿಸಲಾಗಿದೆ,
 {0} bank transaction(s) created and {1} errors,{0} ಬ್ಯಾಂಕ್ ವಹಿವಾಟು (ಗಳು) ರಚಿಸಲಾಗಿದೆ ಮತ್ತು {1} ದೋಷಗಳು,
@@ -3875,17 +3799,13 @@
 Total Income,ಒಟ್ಟು ಆದಾಯ,
 Total Income This Year,ಈ ವರ್ಷ ಒಟ್ಟು ಆದಾಯ,
 Barcode,ಬಾರ್‌ಕೋಡ್,
-Bold,ದಪ್ಪ,
-Center,ಕೇಂದ್ರ,
 Clear,ಸ್ಪಷ್ಟ,
-Comment,ಕಾಮೆಂಟ್ ಮಾಡಿ,
 Comments,ಪ್ರತಿಕ್ರಿಯೆಗಳು,
 DocType,ಡಾಕ್ಟೈಪ್,
 Download,ಡೌನ್‌ಲೋಡ್ ಮಾಡಿ,
 Left,ಎಡ,
 Link,ಲಿಂಕ್,
 New,ಹೊಸದು,
-Not Found,ಕಂಡುಬಂದಿಲ್ಲ,
 Print,ಮುದ್ರಿಸಿ,
 Reference Name,ಉಲ್ಲೇಖ ಹೆಸರು,
 Refresh,ರಿಫ್ರೆಶ್,
@@ -3908,7 +3828,6 @@
 Email Id,ಇಮೇಲ್,
 No,ಇಲ್ಲ,
 Reference Doctype,ರೆಫರೆನ್ಸ್ doctype,
-User Id,ಬಳಕೆದಾರರ ಗುರುತು,
 Yes,ಹೌದು,
 Actual ,ವಾಸ್ತವಿಕ,
 Add to cart,ಕಾರ್ಟ್ ಸೇರಿಸಿ,
@@ -4304,7 +4223,6 @@
 e.g Adjustments for:,ಉದಾಹರಣೆಗೆ ಹೊಂದಾಣಿಕೆಗಳು:,
 Section Subtotal,ವಿಭಾಗ ಉಪಮೊತ್ತ,
 Section Footer,ವಿಭಾಗ ಅಡಿಟಿಪ್ಪಣಿ,
-Position,ಸ್ಥಾನ,
 Cash Flow Mapping,ಕ್ಯಾಶ್ ಫ್ಲೋ ಮ್ಯಾಪಿಂಗ್,
 Select Maximum Of 1,ಗರಿಷ್ಠ 1 ಅನ್ನು ಆಯ್ಕೆ ಮಾಡಿ,
 Is Finance Cost,ಹಣಕಾಸು ವೆಚ್ಚ,
@@ -4936,7 +4854,6 @@
 Previous Business Day,ಹಿಂದಿನ ವ್ಯವಹಾರ ದಿನ,
 Next Business Day,ಮುಂದಿನ ವ್ಯವಹಾರ ದಿನ,
 Urgent,ತುರ್ತಿನ,
-Crop,ಬೆಳೆ,
 Crop Name,ಬೆಳೆ ಹೆಸರು,
 Scientific Name,ವೈಜ್ಞಾನಿಕ ಹೆಸರು,
 "You can define all the tasks which need to carried out for this crop here. The day field is used to mention the day on which the task needs to be carried out, 1 being the 1st day, etc.. ","ಇಲ್ಲಿ ಈ ಬೆಳೆಗಾಗಿ ನಡೆಸಬೇಕಾದ ಎಲ್ಲ ಕಾರ್ಯಗಳನ್ನು ನೀವು ವ್ಯಾಖ್ಯಾನಿಸಬಹುದು. ದಿನದ ಕ್ಷೇತ್ರವನ್ನು ದಿನವನ್ನು ಕೈಗೊಳ್ಳಬೇಕಾದ ದಿನವನ್ನು ಉಲ್ಲೇಖಿಸಲು ಬಳಸಲಾಗುತ್ತದೆ, 1 ನೇ ದಿನ, ಇತ್ಯಾದಿ.",
@@ -5441,7 +5358,6 @@
 To TIme,ಸಮಯ,
 Course End Date,ಕೋರ್ಸ್ ಅಂತಿಮ ದಿನಾಂಕ,
 Course Topic,ಕೋರ್ಸ್ ವಿಷಯ,
-Topic,ವಿಷಯ,
 Topic Name,ವಿಷಯ ಹೆಸರು,
 Education Settings,ಶಿಕ್ಷಣ ಸೆಟ್ಟಿಂಗ್ಗಳು,
 Current Academic Year,ಈಗಿನ ಅಕಾಡೆಮಿಕ್ ಇಯರ್,
@@ -5516,7 +5432,6 @@
 Check this if the Student is residing at the Institute's Hostel.,ವಿದ್ಯಾರ್ಥಿ ಇನ್ಸ್ಟಿಟ್ಯೂಟ್ನ ಹಾಸ್ಟೆಲ್ ನಲ್ಲಿ ವಾಸಿಸುವ ಇದೆ ಎಂಬುದನ್ನು ಪರಿಶೀಲಿಸಿ.,
 Walking,ವಾಕಿಂಗ್,
 Institute's Bus,ಇನ್ಸ್ಟಿಟ್ಯೂಟ್ನ ಬಸ್,
-Public Transport,ಸಾರ್ವಜನಿಕ ಸಾರಿಗೆ,
 Self-Driving Vehicle,ಸ್ವಯಂ ಚಾಲಕ ವಾಹನ,
 Pick/Drop by Guardian,ಗಾರ್ಡಿಯನ್ / ಡ್ರಾಪ್ ಆರಿಸಿ,
 Enrolled courses,ಸೇರಿಕೊಂಡಳು ಶಿಕ್ಷಣ,
@@ -5697,7 +5612,6 @@
 Default Cost Center,ಡೀಫಾಲ್ಟ್ ವೆಚ್ಚ ಸೆಂಟರ್,
 Undeposited Funds Account,ಗುರುತಿಸಲಾಗದ ಫಂಡ್ಸ್ ಖಾತೆ,
 Shopify Log,ಲಾಗ್ Shopify,
-Request Data,ಡೇಟಾ ವಿನಂತಿಸಿ,
 Shopify Settings,Shopify ಸೆಟ್ಟಿಂಗ್ಗಳು,
 status html,ಸ್ಥಿತಿ html,
 Enable Shopify,Shopify ಅನ್ನು ಸಕ್ರಿಯಗೊಳಿಸಿ,
@@ -5817,7 +5731,6 @@
 Exercise Instructions,ವ್ಯಾಯಾಮ ಸೂಚನೆಗಳು,
 Exercise Video,ವೀಡಿಯೊವನ್ನು ವ್ಯಾಯಾಮ ಮಾಡಿ,
 Exercise Steps,ವ್ಯಾಯಾಮ ಹಂತಗಳು,
-Steps,ಕ್ರಮಗಳು,
 Steps Table,ಹಂತಗಳ ಕೋಷ್ಟಕ,
 Exercise Type Step,ವ್ಯಾಯಾಮ ಪ್ರಕಾರ ಹಂತ,
 Max number of visit,ಗರಿಷ್ಠ ಸಂಖ್ಯೆಯ ಭೇಟಿ,
@@ -6001,7 +5914,6 @@
 Patient Encounter Symptom,ರೋಗಿಯ ಎನ್ಕೌಂಟರ್ ರೋಗಲಕ್ಷಣ,
 HLC-PMR-.YYYY.-,ಎಚ್ಎಲ್ಸಿ- ಪಿಎಮ್ಆರ್ -ವೈವೈವೈ.-,
 Attach Medical Record,ವೈದ್ಯಕೀಯ ದಾಖಲೆಯನ್ನು ಲಗತ್ತಿಸಿ,
-Reference DocType,ಉಲ್ಲೇಖ ಡಾಕ್ಟೈಪ್,
 Spouse,ಸಂಗಾತಿಯ,
 Family,ಕುಟುಂಬ,
 Schedule Details,ವಿವರಗಳನ್ನು ನಿಗದಿಪಡಿಸಿ,
@@ -6983,16 +6895,8 @@
 HTML / Banner that will show on the top of product list.,ಉತ್ಪನ್ನದ ಪಟ್ಟಿ ಮೇಲೆ ತೋರಿಸಿ thatwill ಎಚ್ಟಿಎಮ್ಎಲ್ / ಬ್ಯಾನರ್ .,
 Set prefix for numbering series on your transactions,ನಿಮ್ಮ ವ್ಯವಹಾರಗಳ ಮೇಲೆ ಸರಣಿ ಸಂಖ್ಯೆಗಳನ್ನು ಹೊಂದಿಸಿ ಪೂರ್ವಪ್ರತ್ಯಯ,
 Setup Series,ಸೆಟಪ್ ಸರಣಿ,
-Select Transaction,ಟ್ರಾನ್ಸಾಕ್ಷನ್ ಆಯ್ಕೆ,
-Help HTML,HTML ಸಹಾಯ,
-Series List for this Transaction,ಈ ಟ್ರಾನ್ಸಾಕ್ಷನ್ ಸರಣಿ ಪಟ್ಟಿ,
-User must always select,ಬಳಕೆದಾರ ಯಾವಾಗಲೂ ಆಯ್ಕೆ ಮಾಡಬೇಕು,
-Check this if you want to force the user to select a series before saving. There will be no default if you check this.,ನೀವು ಉಳಿಸುವ ಮೊದಲು ಸರಣಿ ಆರಿಸಲು ಬಳಕೆದಾರರಿಗೆ ಒತ್ತಾಯಿಸಲು ಬಯಸಿದಲ್ಲಿ ಈ ಪರಿಶೀಲಿಸಿ . ನೀವು ಈ ಪರಿಶೀಲಿಸಿ ವೇಳೆ ಯಾವುದೇ ಡೀಫಾಲ್ಟ್ ಇರುತ್ತದೆ .,
 Update Series,ಅಪ್ಡೇಟ್ ಸರಣಿ,
 Change the starting / current sequence number of an existing series.,ಅಸ್ತಿತ್ವದಲ್ಲಿರುವ ಸರಣಿಯ ಆರಂಭಿಕ / ಪ್ರಸ್ತುತ ಅನುಕ್ರಮ ಸಂಖ್ಯೆ ಬದಲಾಯಿಸಿ.,
-Prefix,ಮೊದಲೇ ಜೋಡಿಸು,
-This is the number of the last created transaction with this prefix,ಈ ಪೂರ್ವನಾಮವನ್ನು ಹೊಂದಿರುವ ಲೋಡ್ ದಾಖಲಿಸಿದವರು ವ್ಯವಹಾರದ ಸಂಖ್ಯೆ,
-Update Series Number,ಅಪ್ಡೇಟ್ ಸರಣಿ ಸಂಖ್ಯೆ,
 Quotation Lost Reason,ನುಡಿಮುತ್ತುಗಳು ಲಾಸ್ಟ್ ಕಾರಣ,
 A third party distributor / dealer / commission agent / affiliate / reseller who sells the companies products for a commission.,ನಿಯೋಜನೆಗಾಗಿ ಕಂಪನಿಗಳು ಉತ್ಪನ್ನಗಳನ್ನು ಮಾರುತ್ತದೆ ಒಬ್ಬ ಮೂರನೇ ವ್ಯಕ್ತಿಯ ವಿತರಕ / ಡೀಲರ್ / ಆಯೋಗದ ಏಜೆಂಟ್ / ಅಂಗ / ಮರುಮಾರಾಟಗಾರರ.,
 Sales Partner Name,ಮಾರಾಟದ ಸಂಗಾತಿ ಹೆಸರು,
@@ -7687,7 +7591,6 @@
 Warehouse wise Item Balance Age and Value,ವೇರ್ಹೌಸ್ ಬುದ್ಧಿವಂತಿಕೆಯ ಅಂಶ ಬ್ಯಾಲೆನ್ಸ್ ವಯಸ್ಸು ಮತ್ತು ಮೌಲ್ಯ,
 Work Order Stock Report,ವರ್ಕ್ ಆರ್ಡರ್ ಸ್ಟಾಕ್ ರಿಪೋರ್ಟ್,
 Work Orders in Progress,ಕೆಲಸದ ಆದೇಶಗಳು ಪ್ರಗತಿಯಲ್ಲಿದೆ,
-Validation Error,ಕ್ರಮಬದ್ಧಗೊಳಿಸುವಿಕೆ ದೋಷ,
 Automatically Process Deferred Accounting Entry,ಮುಂದೂಡಲ್ಪಟ್ಟ ಅಕೌಂಟಿಂಗ್ ನಮೂದನ್ನು ಸ್ವಯಂಚಾಲಿತವಾಗಿ ಪ್ರಕ್ರಿಯೆಗೊಳಿಸಿ,
 Bank Clearance,ಬ್ಯಾಂಕ್ ಕ್ಲಿಯರೆನ್ಸ್,
 Bank Clearance Detail,ಬ್ಯಾಂಕ್ ಕ್ಲಿಯರೆನ್ಸ್ ವಿವರ,
@@ -7724,45 +7627,7 @@
 Therapy Plan: ,ಚಿಕಿತ್ಸೆಯ ಯೋಜನೆ:,
 Total Counts Targeted: ,ಒಟ್ಟು ಎಣಿಕೆಗಳು ಉದ್ದೇಶಿಸಲಾಗಿದೆ:,
 Total Counts Completed: ,ಒಟ್ಟು ಎಣಿಕೆಗಳು ಪೂರ್ಣಗೊಂಡಿವೆ:,
-Andaman and Nicobar Islands,ಅಂಡಮಾನ್ ಮತ್ತು ನಿಕೋಬಾರ್ ದ್ವೀಪಗಳು,
-Andhra Pradesh,ಆಂಧ್ರಪ್ರದೇಶ,
-Arunachal Pradesh,ಅರುಣಾಚಲ ಪ್ರದೇಶ,
-Assam,ಅಸ್ಸಾಂ,
-Bihar,ಬಿಹಾರ,
-Chandigarh,ಚಂಡೀಗ ..,
-Chhattisgarh,Hatt ತ್ತೀಸ್‌ಗ h,
-Dadra and Nagar Haveli,ದಾದ್ರಾ ಮತ್ತು ನಗರ ಹವೇಲಿ,
-Daman and Diu,ದಮನ್ ಮತ್ತು ಡಿಯು,
-Delhi,ದೆಹಲಿ,
-Goa,ಗೋವಾ,
-Gujarat,ಗುಜರಾತ್,
-Haryana,ಹರಿಯಾಣ,
-Himachal Pradesh,ಹಿಮಾಚಲ ಪ್ರದೇಶ,
-Jammu and Kashmir,ಜಮ್ಮು ಮತ್ತು ಕಾಶ್ಮೀರ,
-Jharkhand,ಜಾರ್ಖಂಡ್,
-Karnataka,ಕರ್ನಾಟಕ,
-Kerala,ಕೇರಳ,
-Lakshadweep Islands,ಲಕ್ಷದ್ವೀಪ ದ್ವೀಪಗಳು,
-Madhya Pradesh,ಮಧ್ಯಪ್ರದೇಶ,
-Maharashtra,ಮಹಾರಾಷ್ಟ್ರ,
-Manipur,ಮಣಿಪುರ,
-Meghalaya,ಮೇಘಾಲಯ,
-Mizoram,ಮಿಜೋರಾಂ,
-Nagaland,ನಾಗಾಲ್ಯಾಂಡ್,
-Odisha,ಒಡಿಶಾ,
-Other Territory,ಇತರೆ ಪ್ರದೇಶ,
-Pondicherry,ಪಾಂಡಿಚೆರಿ,
-Punjab,ಪಂಜಾಬ್,
-Rajasthan,ರಾಜಸ್ಥಾನ,
-Sikkim,ಸಿಕ್ಕಿಂ,
-Tamil Nadu,ತಮಿಳುನಾಡು,
-Telangana,ತೆಲಂಗಾಣ,
-Tripura,ತ್ರಿಪುರ,
-Uttar Pradesh,ಉತ್ತರ ಪ್ರದೇಶ,
-Uttarakhand,ಉತ್ತರಾಖಂಡ,
-West Bengal,ಪಶ್ಚಿಮ ಬಂಗಾಳ,
 Is Mandatory,ಕಡ್ಡಾಯವಾಗಿದೆ,
-Published on,ಪ್ರಕಟಿಸಲಾಗಿದೆ,
 Service Received But Not Billed,ಸೇವೆಯನ್ನು ಸ್ವೀಕರಿಸಲಾಗಿದೆ ಆದರೆ ಬಿಲ್ ಮಾಡಲಾಗಿಲ್ಲ,
 Deferred Accounting Settings,ಮುಂದೂಡಲ್ಪಟ್ಟ ಲೆಕ್ಕಪರಿಶೋಧಕ ಸೆಟ್ಟಿಂಗ್‌ಗಳು,
 Book Deferred Entries Based On,ಪುಸ್ತಕ ಮುಂದೂಡಲ್ಪಟ್ಟ ನಮೂದುಗಳನ್ನು ಆಧರಿಸಿ,
@@ -8035,8 +7900,6 @@
 Worksheet Instructions,ವರ್ಕ್‌ಶೀಟ್ ಸೂಚನೆಗಳು,
 Result Legend Print,ಫಲಿತಾಂಶ ಲೆಜೆಂಡ್ ಮುದ್ರಣ,
 Print Position,ಮುದ್ರಣ ಸ್ಥಾನ,
-Bottom,ಕೆಳಗೆ,
-Top,ಟಾಪ್,
 Both,ಎರಡೂ,
 Result Legend,ಫಲಿತಾಂಶ ಲೆಜೆಂಡ್,
 Lab Tests,ಲ್ಯಾಬ್ ಪರೀಕ್ಷೆಗಳು,
@@ -8081,12 +7944,10 @@
 Approvers,ಅನುಮೋದಕರು,
 The first Approver in the list will be set as the default Approver.,ಪಟ್ಟಿಯಲ್ಲಿನ ಮೊದಲ ಅನುಮೋದಕವನ್ನು ಡೀಫಾಲ್ಟ್ ಅನುಮೋದಕ ಎಂದು ಹೊಂದಿಸಲಾಗುವುದು.,
 Shift Request Approver,ಶಿಫ್ಟ್ ವಿನಂತಿ ಅನುಮೋದನೆ,
-PAN Number,ಪ್ಯಾನ್ ಸಂಖ್ಯೆ,
 Provident Fund Account,ಭವಿಷ್ಯ ನಿಧಿ ಖಾತೆ,
 MICR Code,MICR ಕೋಡ್,
 Repay unclaimed amount from salary,ಹಕ್ಕು ಪಡೆಯದ ಮೊತ್ತವನ್ನು ಸಂಬಳದಿಂದ ಮರುಪಾವತಿ ಮಾಡಿ,
 Deduction from salary,ಸಂಬಳದಿಂದ ಕಡಿತ,
-Expired Leaves,ಅವಧಿ ಮುಗಿದ ಎಲೆಗಳು,
 If this is not checked the loan by default will be considered as a Demand Loan,ಇದನ್ನು ಪರಿಶೀಲಿಸದಿದ್ದರೆ ಸಾಲವನ್ನು ಪೂರ್ವನಿಯೋಜಿತವಾಗಿ ಬೇಡಿಕೆ ಸಾಲವೆಂದು ಪರಿಗಣಿಸಲಾಗುತ್ತದೆ,
 This account is used for booking loan repayments from the borrower and also disbursing loans to the borrower,ಈ ಖಾತೆಯನ್ನು ಸಾಲಗಾರರಿಂದ ಸಾಲ ಮರುಪಾವತಿಯನ್ನು ಕಾಯ್ದಿರಿಸಲು ಮತ್ತು ಸಾಲಗಾರನಿಗೆ ಸಾಲವನ್ನು ವಿತರಿಸಲು ಬಳಸಲಾಗುತ್ತದೆ,
 This account is capital account which is used to allocate capital for loan disbursal account ,"ಈ ಖಾತೆಯು ಬಂಡವಾಳ ಖಾತೆಯಾಗಿದ್ದು, ಸಾಲ ವಿತರಣಾ ಖಾತೆಗೆ ಬಂಡವಾಳವನ್ನು ನಿಯೋಜಿಸಲು ಬಳಸಲಾಗುತ್ತದೆ",
@@ -8844,3 +8705,41 @@
 Creating Purchase Order ...,ಖರೀದಿ ಆದೇಶವನ್ನು ರಚಿಸಲಾಗುತ್ತಿದೆ ...,
 "Select a Supplier from the Default Suppliers of the items below. On selection, a Purchase Order will be made against items belonging to the selected Supplier only.","ಕೆಳಗಿನ ಐಟಂಗಳ ಡೀಫಾಲ್ಟ್ ಪೂರೈಕೆದಾರರಿಂದ ಸರಬರಾಜುದಾರರನ್ನು ಆಯ್ಕೆಮಾಡಿ. ಆಯ್ಕೆಯ ಮೇಲೆ, ಆಯ್ದ ಸರಬರಾಜುದಾರರಿಗೆ ಮಾತ್ರ ಸೇರಿದ ವಸ್ತುಗಳ ವಿರುದ್ಧ ಖರೀದಿ ಆದೇಶವನ್ನು ಮಾಡಲಾಗುತ್ತದೆ.",
 Row #{}: You must select {} serial numbers for item {}.,ಸಾಲು # {}: ನೀವು item item ಐಟಂಗೆ {} ಸರಣಿ ಸಂಖ್ಯೆಗಳನ್ನು ಆರಿಸಬೇಕು.,
+Add Comment,ಕಾಮೆಂಟ್ ಸೇರಿಸಿ,
+More...,ಇನ್ನಷ್ಟು ...,
+Notes,ಟಿಪ್ಪಣಿಗಳು,
+Payment Gateway,ಪೇಮೆಂಟ್ ಗೇಟ್ ವೇ,
+Payment Gateway Name,ಪಾವತಿ ಗೇಟ್ವೇ ಹೆಸರು,
+Payments,ಪಾವತಿಗಳು,
+Plan Name,ಯೋಜನೆ ಹೆಸರು,
+Portal,ಪೋರ್ಟಲ್,
+Scan Barcode,ಬಾರ್‌ಕೋಡ್ ಅನ್ನು ಸ್ಕ್ಯಾನ್ ಮಾಡಿ,
+Some information is missing,ಕೆಲವು ಮಾಹಿತಿ ಕಾಣೆಯಾಗಿದೆ,
+Successful,ಯಶಸ್ವಿಯಾಗಿದೆ,
+Tools,ಪರಿಕರಗಳು,
+Use Sandbox,ಸ್ಯಾಂಡ್ಬಾಕ್ಸ್ ಬಳಸಿ,
+Busy,ನಿರತ,
+Completed By,ಪೂರ್ಣಗೊಂಡಿದೆ,
+Payment Failed,ಪಾವತಿ ವಿಫಲವಾಗಿದೆ,
+Column {0},ಕಾಲಮ್ {0},
+Field Mapping,ಫೀಲ್ಡ್ ಮ್ಯಾಪಿಂಗ್,
+Not Specified,ನಿರ್ದಿಷ್ಟಪಡಿಸಲಾಗಿಲ್ಲ,
+Update Type,ನವೀಕರಣ ಪ್ರಕಾರ,
+Dr,ಡಾ,
+End Time,ಎಂಡ್ ಟೈಮ್,
+Fetching...,ಪಡೆಯಲಾಗುತ್ತಿದೆ ...,
+"It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","ಸರ್ವರ್ನ ಸ್ಟ್ರೈಪ್ ಕಾನ್ಫಿಗರೇಶನ್ನಲ್ಲಿ ಸಮಸ್ಯೆ ಇದೆ ಎಂದು ತೋರುತ್ತದೆ. ವೈಫಲ್ಯದ ಸಂದರ್ಭದಲ್ಲಿ, ನಿಮ್ಮ ಖಾತೆಗೆ ಹಣವನ್ನು ಮರುಪಾವತಿಸಲಾಗುತ್ತದೆ.",
+Looks like someone sent you to an incomplete URL. Please ask them to look into it.,ಯಾರಾದರೂ ಅಪೂರ್ಣ URL ಅನ್ನು ನೀವು ಕಳುಹಿಸಿದ ತೋರುತ್ತಿದೆ. ಇದನ್ನು ನೋಡಲು ಹೇಳಿ ದಯವಿಟ್ಟು.,
+Master,ಯಜಮಾನ,
+Pay,ಪೇ,
+You can also copy-paste this link in your browser,ನಿಮ್ಮ ಬ್ರೌಸರ್ನಲ್ಲಿ ಈ ಲಿಂಕ್ ನಕಲಿಸಿ ಅಂಟಿಸಿ,
+Verified By,ಪರಿಶೀಲಿಸಲಾಗಿದೆ,
+Invalid naming series (. missing) for {0},{0 for ಗಾಗಿ ಅಮಾನ್ಯ ಹೆಸರಿಸುವ ಸರಣಿ (. ಕಾಣೆಯಾಗಿದೆ),
+Phone Number,ದೂರವಾಣಿ ಸಂಖ್ಯೆ,
+Account SID,ಖಾತೆ ಎಸ್ಐಡಿ,
+Global Defaults,ಜಾಗತಿಕ ಪೂರ್ವನಿಯೋಜಿತಗಳು,
+Is Mandatory,ಕಡ್ಡಾಯವಾಗಿದೆ,
+WhatsApp,ವಾಟ್ಸಾಪ್,
+Make a call,ಕರೆ ಮಾಡಿ,
+Approve,ಅನುಮೋದಿಸಿ,
+Reject,ರಿಜೆಕ್ಟ್,
diff --git a/erpnext/translations/ko.csv b/erpnext/translations/ko.csv
index 1c8020f..788655c 100644
--- a/erpnext/translations/ko.csv
+++ b/erpnext/translations/ko.csv
@@ -113,7 +113,6 @@
 Add Items,항목 추가,
 Add Leads,리드 추가,
 Add Multiple Tasks,여러 작업 추가,
-Add Row,행 추가,
 Add Sales Partners,판매 파트너 추가,
 Add Serial No,일련 번호 추가,
 Add Students,학생들 추가,
@@ -211,9 +210,7 @@
 An error occurred during the update process,업데이트 프로세스 중에 오류가 발생했습니다.,
 "An item exists with same name ({0}), please change the item group name or rename the item",항목 ({0}) 항목의 그룹 이름을 변경하거나 항목의 이름을 변경하시기 바랍니다 같은 이름을 가진,
 Analyst,분석자,
-Analytics,분석,
 Annual Billing: {0},연간 결제 : {0},
-Anonymous,익명,
 Another Budget record '{0}' already exists against {1} '{2}' and account '{3}' for fiscal year {4},회계 연도 {4}에 대해 {1} &#39;{2}&#39;및 계정 &#39;{3}&#39;에 대한 다른 예산 레코드 &#39;{0}&#39;이 (가) 이미 있습니다.,
 Another Period Closing Entry {0} has been made after {1},또 다른 기간 결산 항목은 {0} 이후 한 {1},
 Another Sales Person {0} exists with the same Employee id,또 다른 판매 사람 {0} 같은 직원 ID 존재,
@@ -283,14 +280,12 @@
 Attendance not submitted for {0} as {1} on leave.,퇴장시 {0}에 출석이 {1}이 (가) 제출되지 않았습니다.,
 Attribute table is mandatory,속성 테이블은 필수입니다,
 Attribute {0} selected multiple times in Attributes Table,속성 {0} 속성 테이블에서 여러 번 선택,
-Author,저자,
 Authorized Signatory,공인 서명자,
 Auto Material Requests Generated,자동 자료 요청 생성,
 Auto Repeat,자동 반복,
 Auto repeat document updated,자동 반복 문서 업데이트 됨,
 Automotive,자동차,
 Available,사용 가능함,
-Available Leaves,사용 가능한 잎,
 Available Qty,사용 가능한 수량,
 Available Selling,판매 가능,
 Available for use date is required,사용 가능한 날짜가 필요합니다.,
@@ -340,7 +335,6 @@
 Base URL,기본 URL,
 Based On,에 근거,
 Based On Payment Terms,지불 조건에 따라,
-Basic,기본,
 Batch,일괄처리,
 Batch Entries,배치 항목,
 Batch ID is mandatory,일괄 ID는 필수 항목입니다.,
@@ -361,7 +355,6 @@
 Billable Hours,청구 가능 시간,
 Billed,청구,
 Billed Amount,청구 금액,
-Billing,청구,
 Billing Address,청구 주소,
 Billing Address is same as Shipping Address,대금 청구 주소는 배송 주소와 동일합니다.,
 Billing Amount,결제 금액,
@@ -560,7 +553,6 @@
 Consumed Qty,소비 수량,
 Consumer Products,소비자 제품,
 Contact,연락처,
-Contact Details,연락처 세부 사항,
 Contact Us,연락처,
 Content,목차,
 Content Masters,콘텐츠 마스터,
@@ -715,7 +707,6 @@
 Date of Joining,가입 날짜,
 Date of Joining must be greater than Date of Birth,가입 날짜는 출생의 날짜보다 커야합니다,
 Date of Transaction,거래 날짜,
-Datetime,날짜,
 Day,일,
 Debit,직불,
 Debit ({0}),직불 ({0}),
@@ -874,7 +865,6 @@
 Employee cannot report to himself.,직원은 자신에게보고 할 수 없습니다.,
 Employee {0} has already applied for {1} between {2} and {3} : ,직원 {0}이 (가) {1}에 {2}에서 {3} 사이에 이미 신청했습니다 :,
 Employee {0} of grade {1} have no default leave policy,{1} 학년의 {0} 직원은 기본 휴가 정책이 없습니다.,
-Enable,사용,
 Enable / disable currencies.,/ 비활성화 통화를 사용합니다.,
 Enabled,사용,
 "Enabling 'Use for Shopping Cart', as Shopping Cart is enabled and there should be at least one Tax Rule for Shopping Cart","사용 쇼핑 카트가 활성화 될 때, &#39;쇼핑 카트에 사용&#39;및 장바구니 적어도 하나의 세금 규칙이 있어야한다",
@@ -905,7 +895,6 @@
 Error: Not a valid id?,오류 : 유효한 ID?,
 Estimated Cost,예상 비용,
 "Even if there are multiple Pricing Rules with highest priority, then following internal priorities are applied:","우선 순위가 가장 높은 가격에 여러 규칙이있는 경우에도, 그 다음 다음 내부의 우선 순위가 적용됩니다",
-Event,이벤트,
 Exchange Gain/Loss,교환 이득 / 손실,
 Exchange Rate Revaluation master.,환율 환급 마스터.,
 Exchange Rate must be same as {0} {1} ({2}),환율은 동일해야합니다 {0} {1} ({2}),
@@ -1032,7 +1021,6 @@
 From value must be less than to value in row {0},값에서 행의 값보다 작아야합니다 {0},
 From {0} | {1} {2},에서 {0} | {1} {2},
 Fulfillment,이행,
-Full,완전한,
 Full Name,전체 이름,
 Fully Depreciated,완전 상각,
 Furnitures and Fixtures,가구 및 비품,
@@ -1133,7 +1121,6 @@
 Hub Sync ID,허브 동기화 ID,
 Human Resource,인적 자원,
 Human Resources,인적 자원,
-IFSC Code,IFSC 코드,
 IGST Amount,IGST 금액,
 IP Address,IP 주소,
 ITC Available (whether in full op part),ITC 가능 (전체 운영 부분 포함),
@@ -1185,7 +1172,6 @@
 Ineligible ITC,부적격 ITC,
 Initiated,개시,
 Inpatient Record,입원 기록,
-Insert,삽입,
 Installation Note,설치 노트,
 Installation Note {0} has already been submitted,설치 노트 {0}이 (가) 이미 제출되었습니다,
 Installation date cannot be before delivery date for Item {0},설치 날짜는 항목에 대한 배달 날짜 이전 할 수 없습니다 {0},
@@ -1197,7 +1183,6 @@
 Insurance Start date should be less than Insurance End date,보험 시작일은 보험 종료일보다 작아야합니다,
 Integrated Tax,통합 세금,
 Inter-State Supplies,국가 간 공급,
-Interests,이해,
 Internet Publishing,인터넷 게시,
 Intra-State Supplies,주내 공급품,
 Introduction,소개,
@@ -1316,7 +1301,6 @@
 Lab testing datetime cannot be before collection datetime,랩 테스트 datetime은 콜렉션 datetime 이전 일 수 없습니다.,
 Label,라벨,
 Laboratory,실험실,
-Language Name,언어 이름,
 Large,큰,
 Last Communication,마지막 커뮤니케이션,
 Last Communication Date,마지막 통신 날짜,
@@ -1347,8 +1331,6 @@
 Letter Heads for print templates.,인쇄 템플릿에 대한 편지 머리.,
 Level,레벨,
 Liability,부채,
-License,특허,
-Limit,한도,
 Limit Crossed,한계를 넘어,
 Link to Material Request,자재 요청 링크,
 List of all share transactions,모든 주식 거래 목록,
@@ -1359,7 +1341,6 @@
 Loans (Liabilities),대출 (부채),
 Loans and Advances (Assets),대출 및 선수금 (자산),
 Local,지역정보 검색,
-Log,기록,
 Logs for maintaining sms delivery status,SMS 전달 상태를 유지하기위한 로그,
 Lost,상실,
 Lost Reasons,잃어버린 이유,
@@ -1445,7 +1426,6 @@
 Medical Department,의료부,
 Medical Record,의료 기록,
 Medium,중간,
-Meeting,모임,
 Member Activity,회원 활동,
 Member ID,회원 ID,
 Member Name,회원 명,
@@ -1495,7 +1475,6 @@
 Multiple Variants,여러 변형,
 Multiple fiscal years exist for the date {0}. Please set company in Fiscal Year,여러 회계 연도 날짜 {0} 존재한다. 회계 연도에 회사를 설정하세요,
 Music,음악,
-My Account,내 계정,
 Name error: {0},이름 오류 : {0},
 Name of new Account. Note: Please don't create accounts for Customers and Suppliers,새로운 계정의 이름입니다. 참고 : 고객 및 공급 업체에 대한 계정을 생성하지 마십시오,
 Name or Email is mandatory,이름이나 이메일은 필수입니다,
@@ -1538,7 +1517,6 @@
 New credit limit is less than current outstanding amount for the customer. Credit limit has to be atleast {0},새로운 신용 한도는 고객의 현재 뛰어난 양 미만이다. 신용 한도이어야 수있다 {0},
 New task,새 작업,
 New {0} pricing rules are created,새로운 {0} 가격 규칙이 생성되었습니다.,
-Newsletters,뉴스 레터,
 Newspaper Publishers,신문 발행인,
 Next,다음,
 Next Contact By cannot be same as the Lead Email Address,다음으로 연락으로는 리드 이메일 주소와 동일 할 수 없습니다,
@@ -1686,7 +1664,6 @@
 Other,기타,
 Other Reports,기타 보고서,
 "Other outward supplies(Nil rated,Exempted)","기타 외부 공급 (Nil rated, Exempted)",
-Others,기타사항,
 Out Qty,수량 아웃,
 Out Value,제한 값,
 Out of Order,고장난,
@@ -1726,7 +1703,6 @@
 Party Type and Party is mandatory for {0} account,파티 유형 및 파티는 {0} 계정에서 필수입니다.,
 Party Type is mandatory,파티의 종류는 필수입니다,
 Party is mandatory,파티는 필수입니다,
-Password,비밀번호,
 Past Due Date,연체 기한,
 Patient,환자,
 Patient Appointment,환자 예약,
@@ -1784,7 +1760,6 @@
 Pharmaceutical,제약,
 Pharmaceuticals,제약,
 Physician,내과 의사,
-Pincode,PIN 코드,
 Place Of Supply (State/UT),공급처 (State / UT),
 Place Order,장소 주문,
 Plan Name,계획 이름,
@@ -1896,7 +1871,6 @@
 Please select date,날짜를 선택하세요,
 Please select item code,품목 코드를 선택하세요,
 Please select month and year,월 및 연도를 선택하세요,
-Please select prefix first,첫 번째 접두사를 선택하세요,
 Please select the Company,회사를 선택하십시오.,
 Please select the Multiple Tier Program type for more than one collection rules.,둘 이상의 컬렉션 규칙에 대해 다중 등급 프로그램 유형을 선택하십시오.,
 Please select the assessment group other than 'All Assessment Groups',&#39;모든 평가 그룹&#39;이외의 평가 그룹을 선택하십시오.,
@@ -1913,7 +1887,6 @@
 Please set Company filter blank if Group By is 'Company',그룹화 기준이 &#39;회사&#39;인 경우 회사 필터를 비워 두십시오.,
 Please set Default Payroll Payable Account in Company {0},회사에서 기본 급여 채무 계정을 설정하십시오 {0},
 Please set Depreciation related Accounts in Asset Category {0} or Company {1},자산 카테고리 {0} 또는 회사의 감가 상각 관련 계정을 설정하십시오 {1},
-Please set Email Address,이메일 주소를 설정하십시오,
 Please set GST Accounts in GST Settings,GST 설정에서 GST 계정을 설정하십시오.,
 Please set Hotel Room Rate on {},{}에 호텔 객실 요금을 설정하십시오.,
 Please set Number of Depreciations Booked,감가 상각 수 예약을 설정하십시오,
@@ -1936,7 +1909,6 @@
 Please set the Email ID for the Student to send the Payment Request,지불 요청을 보낼 학생의 이메일 ID를 설정하십시오.,
 Please set the Item Code first,먼저 상품 코드를 설정하십시오.,
 Please set the Payment Schedule,지불 일정을 설정하십시오.,
-Please set the series to be used.,시리즈를 사용하도록 설정하십시오.,
 Please set {0} for address {1},주소 {1}에 대해 {0}을 (를) 설정하십시오.,
 Please setup Students under Student Groups,학생 그룹에 학생을 설치하십시오.,
 Please specify Company,회사를 지정하십시오,
@@ -1953,7 +1925,6 @@
 Point-of-Sale,판매 시점,
 Point-of-Sale Profile,판매 시점 프로필,
 Portal,문,
-Portal Settings,포털 설정,
 Possible Supplier,가능한 공급 업체,
 Postal Expenses,우편 비용,
 Posting Date,등록일자,
@@ -2152,12 +2123,10 @@
 Reference No is mandatory if you entered Reference Date,당신이 참조 날짜를 입력 한 경우 참조 번호는 필수입니다,
 Reference No.,참조 번호,
 Reference Number,참조 번호,
-Reference Owner,참조 소유자,
 Reference Type,참조 형식,
 "Reference: {0}, Item Code: {1} and Customer: {2}","참조 : {0}, 상품 코드 : {1} 및 고객 : {2}",
 References,참조,
 Refresh Token,새로 고침 토큰,
-Region,지방,
 Register,레지스터,
 Rejected,거부,
 Related,관련,
@@ -2179,7 +2148,6 @@
 Replace BOM and update latest price in all BOMs,모든 BOM에서 BOM 교체 및 최신 가격 업데이트,
 Replied,대답,
 Report,보고서,
-Report Builder,보고서 작성기,
 Report Type,보고서 유형,
 Report Type is mandatory,보고서 유형이 필수입니다,
 Reports,보고서,
@@ -2355,13 +2323,11 @@
 Same Company is entered more than once,같은 회사가 두 번 이상 입력,
 Same item cannot be entered multiple times.,동일 상품을 여러 번 입력 할 수 없습니다.,
 Same supplier has been entered multiple times,동일한 공급자는 여러 번 입력 된,
-Sample,표본(sample),
 Sample Collection,샘플 수집,
 Sample quantity {0} cannot be more than received quantity {1},샘플 수량 {0}은 (는) 수신 수량 {1}을 초과 할 수 없습니다.,
 Sanctioned,제재,
 Sand,모래,
 Saturday,토요일,
-Saved,저장,
 Saving {0},{0} 저장 중,
 Scan Barcode,바코드 스캔,
 Schedule,일정,
@@ -2463,7 +2429,6 @@
 Series Updated,시리즈 업데이트,
 Series Updated Successfully,시리즈가 업데이트,
 Series is mandatory,시리즈는 필수입니다,
-Series {0} already used in {1},계열 {0} 이미 사용될 {1},
 Service,서비스,
 Service Level Agreement,서비스 수준 계약,
 Service Level Agreement.,서비스 수준 계약.,
@@ -2479,7 +2444,6 @@
 Set Tax Rule for shopping cart,쇼핑 카트에 설정 세금 규칙,
 Set as Closed,휴일로 설정,
 Set as Completed,완료로 설정,
-Set as Default,기본값으로 설정,
 Set as Lost,분실로 설정,
 Set as Open,열기로 설정,
 Set default inventory account for perpetual inventory,영구 인벤토리에 대한 기본 재고 계정 설정,
@@ -2511,7 +2475,6 @@
 Shareholder,주주,
 Ship To State,배송지 국가,
 Shipments,선적,
-Shipping,배송,
 Shipping Address,배송 주소,
 "Shipping Address does not have country, which is required for this Shipping Rule",배송 주소에는이 배송 규칙에 필요한 국가가 없습니다.,
 Shipping rule only applicable for Buying,구매에만 적용되는 배송 규칙,
@@ -2564,7 +2527,6 @@
 Split Batch,배치 분할,
 Split Issue,분할 된 문제,
 Sports,스포츠,
-Standard,표준,
 Standard Buying,표준 구매,
 Standard Selling,표준 판매,
 Standard contract terms for Sales or Purchase.,판매 또는 구매를위한 표준 계약 조건.,
@@ -2731,7 +2693,6 @@
 Terms and Conditions,이용약관,
 Terms and Conditions Template,이용 약관 템플릿,
 Territory,국가,
-Test,미리 보기,
 Thank you for your business!,귀하의 비즈니스 주셔서 감사합니다!,
 The 'From Package No.' field must neither be empty nor it's value less than 1.,&#39;패키지 번호에서&#39; 필드는 비어 있거나 값이 1 미만이어야합니다.,
 The Brand,브랜드,
@@ -2848,7 +2809,6 @@
 Total (Without Tax),합계 (세금 제외),
 Total Achieved,전체 달성,
 Total Actual,실제 총,
-Total Allocated Leaves,총 할당 된 잎,
 Total Amount,총액,
 Total Amount Credited,총 크레딧 금액,
 Total Applicable Charges in Purchase Receipt Items table must be same as Total Taxes and Charges,구매 영수증 항목 테이블에 전체 적용 요금은 총 세금 및 요금과 동일해야합니다,
@@ -2892,7 +2852,6 @@
 Total(Amt),총 AMT (),
 Total(Qty),합계 (수량),
 Traceability,추적,
-Traceback,역 추적,
 Track Leads by Lead Source.,리드 소스 별 리드 추적,
 Transaction,거래,
 Transaction Date,거래 날짜,
@@ -2930,7 +2889,6 @@
 UOM Conversion factor is required in row {0},UOM 변환 계수는 행에 필요한 {0},
 UOM coversion factor required for UOM: {0} in Item: {1},UOM에 필요한 UOM coversion 인자 : {0} 항목 {1},
 URL,URL,
-Unable to find DocType {0},DocType {0}을 (를) 찾을 수 없습니다.,
 Unable to find exchange rate for {0} to {1} for key date {2}. Please create a Currency Exchange record manually,주요 날짜 {2}에 대해 {0}에서 {1}까지의 환율을 찾을 수 없습니다. 통화 기록을 수동으로 작성하십시오.,
 Unable to find score starting at {0}. You need to have standing scores covering 0 to 100,{0}부터 시작하는 점수를 찾을 수 없습니다. 0에서 100까지의 평점을 가져야합니다.,
 Unable to find variable: ,변수를 찾을 수 없습니다 :,
@@ -2960,7 +2918,6 @@
 Upload your letter head and logo. (you can edit them later).,편지의 머리와 로고를 업로드합니다. (나중에 편집 할 수 있습니다).,
 Upper Income,위 소득,
 Use Sandbox,사용 샌드 박스,
-Used Leaves,중고 잎,
 User,사용자,
 User ID,사용자 ID,
 User ID not set for Employee {0},사용자 ID 직원에 대한 설정하지 {0},
@@ -3051,7 +3008,6 @@
 Website Settings,웹 사이트 설정,
 Wednesday,수요일,
 Week,주,
-Weekdays,평일,
 Weekly,주l,
 "Weight is mentioned,\nPlease mention ""Weight UOM"" too","무게도 ""무게 UOM""를 언급 해주십시오 \n, 언급",
 Welcome email sent,에 오신 것을 환영합니다 이메일 전송,
@@ -3072,7 +3028,6 @@
 Work Order {0} must be submitted,작업 명령 {0}을 제출해야합니다.,
 Work Orders Created: {0},생성 된 작업 순서 : {0},
 Work-in-Progress Warehouse is required before Submit,작업중인 창고는 제출하기 전에 필요,
-Workflow,워크 플로우,
 Working,인식 중,
 Working Hours,근무 시간,
 Workstation,워크스테이션,
@@ -3102,7 +3057,6 @@
 You need to be a user other than Administrator with System Manager and Item Manager roles to register on Marketplace.,마켓 플레이스에 등록하려면 System Manager 및 Item Manager 역할이있는 관리자 이외의 사용자 여야합니다.,
 You need to be a user with System Manager and Item Manager roles to add users to Marketplace.,마켓 플레이스에 사용자를 추가하려면 System Manager 및 Item Manager 역할이있는 사용자 여야합니다.,
 You need to be a user with System Manager and Item Manager roles to register on Marketplace.,마켓 플레이스에 등록하려면 System Manager 및 Item Manager 역할이있는 사용자 여야합니다.,
-You need to be logged in to access this page,이 페이지에 액세스하려면 로그인해야합니다,
 You need to enable Shopping Cart,당신은 쇼핑 카트를 활성화해야,
 You will lose records of previously generated invoices. Are you sure you want to restart this subscription?,이전에 생성 된 송장에 대한 기록을 잃게됩니다. 이 구독을 다시 시작 하시겠습니까?,
 Your Organization,조직,
@@ -3218,7 +3172,6 @@
 Assigned To,담당자,
 Chat,채팅,
 Completed By,작성자,
-County,군,
 Day of Week,요일,
 "Dear System Manager,","친애하는 시스템 관리자,",
 Default Value,Default Value(기본값),
@@ -3229,31 +3182,21 @@
 Fieldtype,Fieldtype,
 Help Articles,도움말 기사,
 ID,신분증,
-Images,이미지,
 Import,가져오기,
 Language,언어,
 Likes,좋아하는,
 Merge with existing,기존에 병합,
-Office,사무실,
 Orientation,정위,
 Parent,부모의,
-Passive,수동,
 Payment Failed,결제 실패,
-Permanent,퍼머넌트,
 Personal,개인의,
-Plant,심기,
 Post,우편,
-Postal,우편의,
 Postal Code,우편 번호,
-Previous,이전,
 Provider,공급자,
 Read Only,읽기 전용,
 Recipient,받는 사람,
 Reviews,리뷰,
 Sender,보낸 사람,
-Shop,상점,
-Subsidiary,자회사,
-There is some problem with the file url: {0},파일 URL 몇 가지 문제가 있습니다 : {0},
 There were errors while sending email. Please try again.,이메일을 보내는 동안 오류가 발생했습니다.재시도하십시오.,
 Values Changed,값 변경,
 or,또는,
@@ -3280,19 +3223,16 @@
 Quality Feedback Template,품질 피드백 템플릿,
 Rules for applying different promotional schemes.,다양한 홍보 계획을 적용하기위한 규칙.,
 Show {0},{0} 표시,
-"Special Characters except '-', '#', '.', '/', '{{' and '}}' not allowed in naming series {0}","이름 계열에 허용되지 않는 &quot;-&quot;, &quot;#&quot;, &quot;.&quot;, &quot;/&quot;, &quot;{{&quot;및 &quot;}}&quot;을 제외한 특수 문자 {0}",
 Target Details,대상 세부 정보,
 {0} already has a Parent Procedure {1}.,{0}에 이미 상위 절차 {1}이 있습니다.,
 API,API,
 Annual,연간,
 Change,변경,
 Contact Email,담당자 이메일,
-Export Type,수출 유형,
 From Date,날짜,
 Group By,그룹화,
 Invalid URL,잘못된 URL,
 Landscape,경치,
-Last Sync On,마지막 동기화,
 Naming Series,시리즈 이름 지정,
 No data to export,내보낼 데이터가 없습니다.,
 Portrait,초상화,
@@ -3302,7 +3242,6 @@
 Show Document,문서 표시,
 Show Traceback,역 추적 표시,
 Video,비디오,
-Webhook Secret,웹 후크 비밀,
 % Of Grand Total,총계의 %,
 <b>Company</b> is a mandatory filter.,<b>회사</b> 는 필수 필터입니다.,
 <b>From Date</b> is a mandatory filter.,<b>시작 날짜</b> 는 필수 필터입니다.,
@@ -3358,7 +3297,6 @@
 BOM Comparison Tool,BOM 비교 도구,
 BOM recursion: {0} cannot be child of {1},BOM 재귀 : {0}은 (는) {1}의 자식 일 수 없습니다,
 BOM recursion: {0} cannot be parent or child of {1},BOM 재귀 : {0}은 (는) {1}의 부모 또는 자식이 될 수 없습니다.,
-Back to Home,홈으로,
 Back to Messages,메시지로 돌아 가기,
 Bank Data mapper doesn't exist,은행 데이터 매퍼가 존재하지 않습니다.,
 Bank Details,은행 계좌 정보,
@@ -3420,7 +3358,6 @@
 Currency,통화,
 Current Status,현재 상태,
 Customer PO,고객 PO,
-Customize,사용자 지정,
 Daily,매일,
 Date,날짜,
 Date of Birth cannot be greater than Joining Date.,생년월일은 가입 날짜보다 클 수 없습니다.,
@@ -3454,7 +3391,6 @@
 ERPNext could not find any matching payment entry,ERPNext가 일치하는 지불 항목을 찾을 수 없습니다.,
 Earliest Age,가장 빠른 나이,
 Edit Details,세부 정보 편집,
-Edit Profile,프로필 수정,
 Either GST Transporter ID or Vehicle No is required if Mode of Transport is Road,운송 수단이 도로 인 경우 GST 운송 업체 ID 또는 차량 번호가 필요합니다.,
 Email,이메일,
 Email Campaigns,이메일 캠페인,
@@ -3482,7 +3418,6 @@
 Fetch Items from Warehouse,창고에서 물품 반입,
 Fetching...,가져 오는 중 ...,
 Field,들,
-File Manager,파일 관리자,
 Filters,필터,
 Finding linked payments,연결된 지불 찾기,
 Fleet Management,함대 관리,
@@ -3521,7 +3456,6 @@
 Incorrect Warehouse,잘못된 창고,
 Invalid Barcode. There is no Item attached to this barcode.,잘못된 바코드입니다. 이 바코드에 부착 된 품목이 없습니다.,
 Invalid credentials,잘못된 자격 증명,
-Invite as User,사용자로 초대하기,
 Issue Priority.,이슈 우선 순위.,
 Issue Type.,문제 유형.,
 "It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.",서버의 스트라이프 구성에 문제가있는 것으로 보입니다. 실패한 경우 귀하의 계좌로 금액이 환급됩니다.,
@@ -3564,7 +3498,6 @@
 New Invoice,새로운 인보이스,
 New Payment,새 지불,
 New release date should be in the future,새로운 출시 날짜가 미래에 있어야합니다.,
-Newsletter,뉴스레터,
 No Account matched these filters: {},다음 필터와 일치하는 계정이 없습니다 : {},
 No communication found.,통신이 없습니다.,
 No correct answer is set for {0},{0}에 대해 정답이 설정되지 않았습니다.,
@@ -3640,7 +3573,6 @@
 Please setup a default bank account for company {0},{0} 회사의 기본 은행 계좌를 설정하십시오.,
 Please specify,지정하십시오,
 Please specify a {0},{0}을 지정하십시오,lead
-Printing,인쇄,
 Priority,우선순위,
 Priority has been changed to {0}.,우선 순위가 {0} (으)로 변경되었습니다.,
 Priority {0} has been repeated.,우선 순위 {0}이 반복되었습니다.,
@@ -3649,7 +3581,6 @@
 Project,프로젝트,
 Provide the academic year and set the starting and ending date.,학년을 제공하고 시작일과 종료일을 설정하십시오.,
 Public token is missing for this bank,이 은행에 공개 토큰이 없습니다.,
-Publish,게시,
 Publish 1 Item,1 개 항목 게시,
 Publish Items,아이템 게시,
 Publish More Items,더 많은 항목 게시,
@@ -3677,7 +3608,6 @@
 Reconciled,조정,
 Recruitment,신병 모집,
 Red,빨간,
-Refreshing,재로딩중,
 Release date must be in the future,출시 날짜가 미래 여야합니다.,
 Relieving Date must be greater than or equal to Date of Joining,완화 날짜는 가입 날짜보다 크거나 같아야합니다.,
 Rename,이름,
@@ -3721,7 +3651,6 @@
 Search for a payment,지불 검색,
 Search for anything ...,무엇이든 검색 ...,
 Search results for,에 대한 검색 결과,
-Select All,모두 선택,
 Select Difference Account,차이 계정 선택,
 Select a Default Priority.,기본 우선 순위를 선택하십시오.,
 Select a company,회사 선택,
@@ -3740,11 +3669,9 @@
 Service Level Agreement has been changed to {0}.,서비스 수준 계약이 {0} (으)로 변경되었습니다.,
 Service Level Agreement was reset.,서비스 수준 계약이 재설정되었습니다.,
 Service Level Agreement with Entity Type {0} and Entity {1} already exists.,엔티티 유형 {0} 및 엔티티 {1}을 (를) 사용하는 서비스 수준 계약이 이미 존재합니다.,
-Set,설정,
 Set Meta Tags,메타 태그 설정,
 Set {0} in company {1},회사 {1}에서 {0} 설정,
 Setup,설정,
-Setup Wizard,설치 마법사,
 Shift Management,시프트 관리,
 Show Future Payments,향후 지불 표시,
 Show Linked Delivery Notes,연결된 배송 메모 표시,
@@ -3815,7 +3742,6 @@
 Unreconciled,미 조정,
 Unsupported GST Category for E-Way Bill JSON generation,전자 메일 빌 JSON 생성을 위해 지원되지 않는 GST 범주,
 Update,업데이트,
-Update Details,세부 정보 업데이트,
 Update Taxes for Items,품목에 대한 세금 업데이트,
 "Upload a bank statement, link or reconcile a bank account","은행 내역서 업로드, 은행 계좌 연결 또는 조정",
 Upload a statement,성명 업로드,
@@ -3839,7 +3765,6 @@
 XML Files Processed,처리 된 XML 파일,
 Year,년,
 Yearly,매년,
-You,당신,
 You are not allowed to enroll for this course,이 과정에 등록 할 수 없습니다.,
 You are not enrolled in program {0},프로그램 {0}에 등록되지 않았습니다.,
 You can Feature upto 8 items.,최대 8 개의 항목을 추천 할 수 있습니다.,
@@ -3856,7 +3781,6 @@
 e-Way Bill already exists for this document,이 문서에는 e-Way Bill이 이미 있습니다.,
 woocommerce - {0},woocommerce-{0},
 {0} Coupon used are {1}. Allowed quantity is exhausted,{0} 사용 된 쿠폰은 {1}입니다. 허용 수량이 소진되었습니다,
-{0} Name,{0} 이름,
 {0} Operations: {1},{0} 작업 : {1},
 {0} bank transaction(s) created,{0} 은행 거래가 생성되었습니다.,
 {0} bank transaction(s) created and {1} errors,{0} 은행 거래가 생성되었고 {1} 개의 오류가 있습니다.,
@@ -3875,17 +3799,13 @@
 Total Income,총 수입,
 Total Income This Year,올해 총 소득,
 Barcode,바코드,
-Bold,굵게,
-Center,가운데,
 Clear,명확한,
-Comment,논평,
 Comments,비고,
 DocType,독 타입,
 Download,다운로드,
 Left,왼쪽,
 Link,링크,
 New,새로운,
-Not Found,찾을 수 없음,
 Print,인쇄,
 Reference Name,참조 이름,
 Refresh,새로 고침,
@@ -3908,7 +3828,6 @@
 Email Id,이메일 ID,
 No,NO,
 Reference Doctype,참조 문서 종류,
-User Id,사용자 ID,
 Yes,예,
 Actual ,실제,
 Add to cart,쇼핑 카트에 담기,
@@ -4304,7 +4223,6 @@
 e.g Adjustments for:,예 : 조정 :,
 Section Subtotal,섹션 소계,
 Section Footer,섹션 바닥 글,
-Position,위치,
 Cash Flow Mapping,현금 흐름 매핑,
 Select Maximum Of 1,최대 1 개 선택,
 Is Finance Cost,금융 비용인가?,
@@ -4936,7 +4854,6 @@
 Previous Business Day,이전 영업일,
 Next Business Day,다음 영업일,
 Urgent,긴급한,
-Crop,수확고,
 Crop Name,자르기 이름,
 Scientific Name,과학적인 이름,
 "You can define all the tasks which need to carried out for this crop here. The day field is used to mention the day on which the task needs to be carried out, 1 being the 1st day, etc.. ",이 작물에 대해 수행해야하는 모든 작업을 정의 할 수 있습니다. 하루 필드는 작업을 수행해야하는 날을 나타내는 데 사용됩니다. 1 일은 1 일입니다.,
@@ -5441,7 +5358,6 @@
 To TIme,시간,
 Course End Date,코스 종료 날짜,
 Course Topic,코스 주제,
-Topic,이야기,
 Topic Name,항목 이름,
 Education Settings,교육 설정,
 Current Academic Year,현재 학년도,
@@ -5516,7 +5432,6 @@
 Check this if the Student is residing at the Institute's Hostel.,학생이 연구소의 숙소에 거주하고 있는지 확인하십시오.,
 Walking,보행,
 Institute's Bus,연구소 버스,
-Public Transport,대중 교통,
 Self-Driving Vehicle,자가 운전 차량,
 Pick/Drop by Guardian,Guardian의 선택 / 드롭,
 Enrolled courses,등록 과정,
@@ -5697,7 +5612,6 @@
 Default Cost Center,기본 비용 센터,
 Undeposited Funds Account,Undeposited Funds Account,
 Shopify Log,Shopify 로그,
-Request Data,데이터 요청,
 Shopify Settings,쇼핑 설정,
 status html,상태 HTML,
 Enable Shopify,Shopify 사용,
@@ -5817,7 +5731,6 @@
 Exercise Instructions,운동 지침,
 Exercise Video,운동 비디오,
 Exercise Steps,운동 단계,
-Steps,단계,
 Steps Table,단계 표,
 Exercise Type Step,운동 유형 단계,
 Max number of visit,최대 방문 횟수,
@@ -6001,7 +5914,6 @@
 Patient Encounter Symptom,환자와의 만남 증상,
 HLC-PMR-.YYYY.-,HLC-PMR- .YYYY.-,
 Attach Medical Record,의료 기록 첨부,
-Reference DocType,참조 DocType,
 Spouse,배우자,
 Family,가족,
 Schedule Details,일정 세부 정보,
@@ -6983,16 +6895,8 @@
 HTML / Banner that will show on the top of product list.,제품 목록의 상단에 표시됩니다 HTML / 배너입니다.,
 Set prefix for numbering series on your transactions,트랜잭션에 일련 번호에 대한 설정 접두사,
 Setup Series,설치 시리즈,
-Select Transaction,거래 선택,
-Help HTML,도움말 HTML,
-Series List for this Transaction,이 트랜잭션에 대한 시리즈 일람,
-User must always select,사용자는 항상 선택해야합니다,
-Check this if you want to force the user to select a series before saving. There will be no default if you check this.,당신은 저장하기 전에 시리즈를 선택하도록 강제하려는 경우이 옵션을 선택합니다.당신이 선택하면 기본이되지 않습니다.,
 Update Series,업데이트 시리즈,
 Change the starting / current sequence number of an existing series.,기존 시리즈의 시작 / 현재의 순서 번호를 변경합니다.,
-Prefix,접두사,
-This is the number of the last created transaction with this prefix,이것은이 접두사를 마지막으로 생성 된 트랜잭션의 수입니다,
-Update Series Number,업데이트 시리즈 번호,
 Quotation Lost Reason,견적 잃어버린 이유,
 A third party distributor / dealer / commission agent / affiliate / reseller who sells the companies products for a commission.,수수료에 대한 회사의 제품을 판매하는 타사 대리점 / 딜러 /위원회 에이전트 / 제휴 / 대리점.,
 Sales Partner Name,영업 파트너 명,
@@ -7687,7 +7591,6 @@
 Warehouse wise Item Balance Age and Value,창고 현명한 아이템 밸런스 연령 및 가치,
 Work Order Stock Report,노동 주문 재고 보고서,
 Work Orders in Progress,진행중인 작업 주문,
-Validation Error,유효성 검사 오류,
 Automatically Process Deferred Accounting Entry,이연 회계 입력 자동 처리,
 Bank Clearance,은행 통관,
 Bank Clearance Detail,은행 통관 세부 정보,
@@ -7724,45 +7627,7 @@
 Therapy Plan: ,치료 계획 :,
 Total Counts Targeted: ,타겟팅 된 총 개수 :,
 Total Counts Completed: ,완료된 총 카운트 :,
-Andaman and Nicobar Islands,안다만 니코 바르 제도,
-Andhra Pradesh,안드라 프라데시,
-Arunachal Pradesh,아루나 찰 프라데시,
-Assam,아삼,
-Bihar,비하르,
-Chandigarh,찬디 가르,
-Chhattisgarh,차 티스 가르,
-Dadra and Nagar Haveli,다 드라와 나가르 하 벨리,
-Daman and Diu,다만와 디우,
-Delhi,델리,
-Goa,고아,
-Gujarat,구자라트,
-Haryana,하리 아나,
-Himachal Pradesh,히 마찰 프라데시,
-Jammu and Kashmir,잠무와 카슈미르,
-Jharkhand,자르 칸드,
-Karnataka,Karnataka,
-Kerala,케 랄라,
-Lakshadweep Islands,락 샤드 위프 섬,
-Madhya Pradesh,마디 야 프라데시,
-Maharashtra,마하라 슈트라,
-Manipur,마니 푸르,
-Meghalaya,메갈 라야,
-Mizoram,미조람,
-Nagaland,나가 랜드,
-Odisha,오디 샤,
-Other Territory,기타 영토,
-Pondicherry,폰디 체리,
-Punjab,펀 자브,
-Rajasthan,라자스탄,
-Sikkim,시킴,
-Tamil Nadu,타밀 나두,
-Telangana,Telangana,
-Tripura,Tripura,
-Uttar Pradesh,우타르 프라데시,
-Uttarakhand,Uttarakhand,
-West Bengal,서 뱅갈,
 Is Mandatory,필수,
-Published on,게시일,
 Service Received But Not Billed,서비스를 받았지만 청구되지 않음,
 Deferred Accounting Settings,이연 회계 설정,
 Book Deferred Entries Based On,다음을 기준으로 지연된 항목 예약,
@@ -8035,8 +7900,6 @@
 Worksheet Instructions,워크 시트 지침,
 Result Legend Print,결과 범례 인쇄,
 Print Position,인쇄 위치,
-Bottom,바닥,
-Top,상단,
 Both,양자 모두,
 Result Legend,결과 범례,
 Lab Tests,실험실 테스트,
@@ -8081,12 +7944,10 @@
 Approvers,승인자,
 The first Approver in the list will be set as the default Approver.,목록의 첫 번째 승인자가 기본 승인자로 설정됩니다.,
 Shift Request Approver,교대 요청 승인자,
-PAN Number,PAN 번호,
 Provident Fund Account,프로 비 던트 펀드 계정,
 MICR Code,MICR 코드,
 Repay unclaimed amount from salary,급여에서 미 청구 금액 상환,
 Deduction from salary,급여에서 공제,
-Expired Leaves,만료 된 잎,
 If this is not checked the loan by default will be considered as a Demand Loan,선택하지 않으면 기본적으로 대출이 수요 대출로 간주됩니다.,
 This account is used for booking loan repayments from the borrower and also disbursing loans to the borrower,이 계정은 차용인의 대출 상환을 예약하고 차용인에게 대출금을 지급하는 데 사용됩니다.,
 This account is capital account which is used to allocate capital for loan disbursal account ,이 계정은 대출 지급 계정에 자본을 할당하는 데 사용되는 자본 계정입니다.,
@@ -8844,3 +8705,41 @@
 Creating Purchase Order ...,구매 오더 생성 ...,
 "Select a Supplier from the Default Suppliers of the items below. On selection, a Purchase Order will be made against items belonging to the selected Supplier only.",아래 항목의 기본 공급자에서 공급자를 선택합니다. 선택시 선택한 공급 업체에 속한 품목에 대해서만 구매 주문이 작성됩니다.,
 Row #{}: You must select {} serial numbers for item {}.,행 # {} : 항목 {}에 대해 {} 일련 번호를 선택해야합니다.,
+Add Comment,코멘트를 추가,
+More...,더...,
+Notes,노트,
+Payment Gateway,지불 게이트웨이,
+Payment Gateway Name,지불 게이트웨이 이름,
+Payments,지불,
+Plan Name,계획 이름,
+Portal,문,
+Scan Barcode,바코드 스캔,
+Some information is missing,일부 정보가 누락,
+Successful,성공한,
+Tools,Tools (도구),
+Use Sandbox,사용 샌드 박스,
+Busy,바쁜,
+Completed By,작성자,
+Payment Failed,결제 실패,
+Column {0},열 {0},
+Field Mapping,필드 매핑,
+Not Specified,명시되지 않은,
+Update Type,업데이트 유형,
+Dr,박사,
+End Time,종료 시간,
+Fetching...,가져 오는 중 ...,
+"It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.",서버의 스트라이프 구성에 문제가있는 것으로 보입니다. 실패한 경우 귀하의 계좌로 금액이 환급됩니다.,
+Looks like someone sent you to an incomplete URL. Please ask them to look into it.,누군가가 완료되지 않은 URL에 당신을 보낸 것 같습니다. 그것으로보고하도록 요청하시기 바랍니다.,
+Master,지도자,
+Pay,지불,
+You can also copy-paste this link in your browser,당신은 또한 당신의 브라우저에서이 링크를 복사하여 붙여 넣을 수 있습니다,
+Verified By,에 의해 확인,
+Invalid naming series (. missing) for {0},{0}에 대한 잘못된 명명 시리즈 (. 누락),
+Phone Number,전화 번호,
+Account SID,계정 SID,
+Global Defaults,글로벌 기본값,
+Is Mandatory,필수,
+WhatsApp,WhatsApp,
+Make a call,전화하다,
+Approve,승인,
+Reject,받지 않다,
diff --git a/erpnext/translations/ku.csv b/erpnext/translations/ku.csv
index f4d1197..a7fcf4e 100644
--- a/erpnext/translations/ku.csv
+++ b/erpnext/translations/ku.csv
@@ -113,7 +113,6 @@
 Add Items,lê zêde bike babetî,
 Add Leads,Add Leads,
 Add Multiple Tasks,Multiple tasks,
-Add Row,lê zêde bike Row,
 Add Sales Partners,Sales Partners,
 Add Serial No,Lê zêde bike No Serial,
 Add Students,lê zêde bike Xwendekarên,
@@ -211,9 +210,7 @@
 An error occurred during the update process,Di dema pêvajoyê de çewtiyek çêbû,
 "An item exists with same name ({0}), please change the item group name or rename the item","An babete bi heman navî heye ({0}), ji kerema xwe biguherînin li ser navê koma babete an navê babete",
 Analyst,Analîstê,
-Analytics,Analytics,
 Annual Billing: {0},Billing salane: {0},
-Anonymous,Bênav,
 Another Budget record '{0}' already exists against {1} '{2}' and account '{3}' for fiscal year {4},Guhertina budceya din ya &#39;{0}&#39; ji ber ku {1} &#39;{2}&#39; hatibû qedexekirin û hesabê {{3} &#39;ji bo salek fiscal {4} heye.,
 Another Period Closing Entry {0} has been made after {1},"Din jî dema despêka Girtina {0} hatiye dîtin, piştî {1}",
 Another Sales Person {0} exists with the same Employee id,Din Person Sales {0} bi heman id karkirinê heye,
@@ -283,14 +280,12 @@
 Attendance not submitted for {0} as {1} on leave.,Tevlêbûnê ji bo derketina {0} wekî {1} nayê pêşkêş kirin.,
 Attribute table is mandatory,table taybetmendiyê de bivênevê ye,
 Attribute {0} selected multiple times in Attributes Table,Pêşbîr {0} çend caran li Attributes Table hilbijartin,
-Author,Nivîskar,
 Authorized Signatory,mafdar,
 Auto Material Requests Generated,Daxwazên Auto Material Generated,
 Auto Repeat,Auto Repeat,
 Auto repeat document updated,Vebijêrkek belgekirinê nûve bike,
 Automotive,Automotive,
 Available,Berdeste,
-Available Leaves,Leaves Available,
 Available Qty,Available Qty,
 Available Selling,Bazirganiya Bazirganî,
 Available for use date is required,Ji bo karanîna karanîna pêdivî ye,
@@ -340,7 +335,6 @@
 Base URL,Navnîşa bingehîn,
 Based On,Çi qewimî,
 Based On Payment Terms,Li ser bingeha şertên dayinê,
-Basic,Bingehîn,
 Batch,Batch,
 Batch Entries,Navnîşên Batch,
 Batch ID is mandatory,Batch ID wêneke e,
@@ -361,7 +355,6 @@
 Billable Hours,Demjimêrên billable,
 Billed,Billed,
 Billed Amount,Şêwaz billed,
-Billing,Billing,
 Billing Address,Telefona berîkan,
 Billing Address is same as Shipping Address,Navnîşana billing heman navnîşa barkirinê ye,
 Billing Amount,Şêwaz Billing,
@@ -560,7 +553,6 @@
 Consumed Qty,telef Qty,
 Consumer Products,Products Serfkaran,
 Contact,Têkelî,
-Contact Details,Contact Details,
 Contact Us,Paqij bûn,
 Content,Dilşad,
 Content Masters,Materyalên naverokê,
@@ -715,7 +707,6 @@
 Date of Joining,Date of bizaveka,
 Date of Joining must be greater than Date of Birth,Date of bizaveka divê mezintir Date jidayikbûnê be,
 Date of Transaction,Dîroka Transaction,
-Datetime,datetime,
 Day,Roj,
 Debit,Debit,
 Debit ({0}),Debit ({0}),
@@ -874,7 +865,6 @@
 Employee cannot report to himself.,Xebatkarê ne dikarin ji xwe re rapor.,
 Employee {0} has already applied for {1} between {2} and {3} : ,Karmend {0} ji berê ve ji {1} di navbera {2} û {3} de hatiye dayîn.,
 Employee {0} of grade {1} have no default leave policy,Karmend {0} ya grade {1} ne polîtîkaya derengî tune,
-Enable,Bikêrkirin,
 Enable / disable currencies.,Çalak / currencies astengkirin.,
 Enabled,çalake,
 "Enabling 'Use for Shopping Cart', as Shopping Cart is enabled and there should be at least one Tax Rule for Shopping Cart","Ne bitenê &#39;bi kar bîne ji bo Têxe selikê&#39;, wek Têxe selikê pêk tê û divê bi kêmanî yek Rule Bacê ji bo Têxe selikê li wir be",
@@ -905,7 +895,6 @@
 Error: Not a valid id?,Çewtî: Not a id derbasdar e?,
 Estimated Cost,Cost texmînkirin,
 "Even if there are multiple Pricing Rules with highest priority, then following internal priorities are applied:","Heta eger ne Rules Pricing multiple bi Girîngiya herî bilind heye, pêşengiyê navxweyî ye, wê li jêr tên sepandin:",
-Event,Bûyer,
 Exchange Gain/Loss,Exchange Gain / Loss,
 Exchange Rate Revaluation master.,Master Rêjeya Guhertina Ragihandinê.,
 Exchange Rate must be same as {0} {1} ({2}),Exchange Rate divê eynî wek {0} {1} ({2}),
@@ -1032,7 +1021,6 @@
 From value must be less than to value in row {0},Ji nirxê gerek kêmtir ji bo nirxê di rêza be {0},
 From {0} | {1} {2},Ji {0} | {1} {2},
 Fulfillment,Bicihanînî,
-Full,Tije,
 Full Name,Navê tam,
 Fully Depreciated,bi temamî bicūkkirin,
 Furnitures and Fixtures,Navmal û Fixtures,
@@ -1133,7 +1121,6 @@
 Hub Sync ID,Nasnameya Hub Sync,
 Human Resource,çavkaniyê binirxîne mirovan,
 Human Resources,Çavkaniyên Mirovî,
-IFSC Code,Kodê IFSC,
 IGST Amount,Amûr IGST,
 IP Address,Navnîşana IP&#39;yê,
 ITC Available (whether in full op part),Danûstandinên ITC (gelo di beşa tevahiya opoyê de),
@@ -1185,7 +1172,6 @@
 Ineligible ITC,ITC bêserûber,
 Initiated,Destpêkirin,
 Inpatient Record,Qeydkirî ya Nexweş,
-Insert,Lêzêdekirin,
 Installation Note,installation Note,
 Installation Note {0} has already been submitted,Installation Têbînî {0} ji niha ve hatine radestkirin,
 Installation date cannot be before delivery date for Item {0},date Installation nikarim li ber roja çêbûna ji bo babet bê {0},
@@ -1197,7 +1183,6 @@
 Insurance Start date should be less than Insurance End date,date Insurance Serî divê kêmtir ji date Insurance End be,
 Integrated Tax,Bacê hevgirtî,
 Inter-State Supplies,Alavên Dewleta Navîn,
-Interests,berjewendiyên,
 Internet Publishing,Publishing Internet,
 Intra-State Supplies,Amûrên intra-Dewlet,
 Introduction,Pêşkêş,
@@ -1316,7 +1301,6 @@
 Lab testing datetime cannot be before collection datetime,Datetime lab testê ji beriya datetime berdin,
 Label,Awanasî,
 Laboratory,Lêkolînxane,
-Language Name,Navê zimanê,
 Large,Mezin,
 Last Communication,Ragihandina dawî,
 Last Communication Date,Last Date Ragihandin,
@@ -1347,8 +1331,6 @@
 Letter Heads for print templates.,Serên nameyek ji bo şablonan print.,
 Level,Serrast,
 Liability,Bar,
-License,Îcaze,
-Limit,Sînorkirin,
 Limit Crossed,Sînora Crossed,
 Link to Material Request,Link to Material Request,
 List of all share transactions,Lîsteya danûstandinên hemî parve bikin,
@@ -1359,7 +1341,6 @@
 Loans (Liabilities),Deyn (Deynên),
 Loans and Advances (Assets),Deynan û pêşketina (Maldarî),
 Local,Herêmî,
-Log,Rojname,
 Logs for maintaining sms delivery status,Têketin ji bo parastina statûya delivery sms,
 Lost,Windabû,
 Lost Reasons,Sedemên winda,
@@ -1445,7 +1426,6 @@
 Medical Department,Daîreya lênêrînê,
 Medical Record,Radyoya Tenduristiyê,
 Medium,Medya,
-Meeting,Hevdîtinî,
 Member Activity,Çalakiya Endamê,
 Member ID,Nasnameya Endamê,
 Member Name,Navê Navê,
@@ -1495,7 +1475,6 @@
 Multiple Variants,Pirrjimar Pirrjimar,
 Multiple fiscal years exist for the date {0}. Please set company in Fiscal Year,salan malî Multiple ji bo roja {0} hene. Ji kerema xwe ve şîrketa ku di sala diravî,
 Music,Mûzîk,
-My Account,My Account,
 Name error: {0},error Name: {0},
 Name of new Account. Note: Please don't create accounts for Customers and Suppliers,"Name ji Account nû. Not: Ji kerema xwe, hesabên ji bo muşteriyan û Bed biafirîne",
 Name or Email is mandatory,Navê an Email wêneke e,
@@ -1538,7 +1517,6 @@
 New credit limit is less than current outstanding amount for the customer. Credit limit has to be atleast {0},limit credit New kêmtir ji yê mayî niha ji bo mişterî e. limit Credit heye Hindîstan be {0},
 New task,erka New,
 New {0} pricing rules are created,Qanûna nirxên nû ya {0} têne afirandin,
-Newsletters,bultenên me,
 Newspaper Publishers,Weşanxane rojnameya,
 Next,Piştî,
 Next Contact By cannot be same as the Lead Email Address,Next Contact By nikare bibe wek Email Address Lead,
@@ -1686,7 +1664,6 @@
 Other,Yên din,
 Other Reports,din Reports,
 "Other outward supplies(Nil rated,Exempted)","Materyalên din ên derveyî (Nil nirxandin, Pezakirin)",
-Others,yên din,
 Out Qty,out Qty,
 Out Value,Nirx out,
 Out of Order,Xirab,
@@ -1726,7 +1703,6 @@
 Party Type and Party is mandatory for {0} account,Partiya Partiya Partiyê û Partiya {0} hesab e,
 Party Type is mandatory,Type Partiya wêneke e,
 Party is mandatory,Partiya wêneke e,
-Password,Şîfre,
 Past Due Date,Dîroka Past Past,
 Patient,Nexweş,
 Patient Appointment,Serdanek Nexweş,
@@ -1784,7 +1760,6 @@
 Pharmaceutical,dermanan,
 Pharmaceuticals,Pharmaceuticals,
 Physician,Bijîşk,
-Pincode,Pincode,
 Place Of Supply (State/UT),Cihê plyêkirinê (Dewlet / UT),
 Place Order,cihê Order,
 Plan Name,Plan Navê,
@@ -1896,7 +1871,6 @@
 Please select date,Ji kerema xwe ve date hilbijêre,
 Please select item code,Tikaye kodî babete hilbijêre,
 Please select month and year,Ji kerema xwe re meha û sala hilbijêre,
-Please select prefix first,Ji kerema xwe ve yekem prefix hilbijêre,
 Please select the Company,Ji kerema xwe şirket hilbijêre,
 Please select the Multiple Tier Program type for more than one collection rules.,Ji kerema xwe ji bernameyek bernameya Multiple Tier ji bo qaîdeyên kolektîf hilbijêre.,
 Please select the assessment group other than 'All Assessment Groups',Kerema xwe re koma nirxandina ya din jî ji bilî &#39;Hemû Groups Nirxandina&#39; hilbijêrî,
@@ -1913,7 +1887,6 @@
 Please set Company filter blank if Group By is 'Company',Xêra xwe Company wêr&#39;a vala eger Pol By e &#39;Company&#39;,
 Please set Default Payroll Payable Account in Company {0},Ji kerema xwe ve Default payroll cîhde Account set li Company {0},
 Please set Depreciation related Accounts in Asset Category {0} or Company {1},Ji kerema xwe ve set Accounts related Farhad li Asset Category {0} an Company {1},
-Please set Email Address,Ji kerema xwe ve set Email Address,
 Please set GST Accounts in GST Settings,Ji kerema xwe ji GST Hesabên GST-ê di navnîşan de saz bikin,
 Please set Hotel Room Rate on {},Ji kerema xwe ji odeya otêlê li ser xuyakirinê {},
 Please set Number of Depreciations Booked,Ji kerema xwe ve set Hejmara Depreciations civanan,
@@ -1936,7 +1909,6 @@
 Please set the Email ID for the Student to send the Payment Request,Ji kerema xwe ji bo Xwendekarên E-nameyê bişînin ku daxwaza Serrêvekirinê bişînin,
 Please set the Item Code first,Ji kerema xwe kodê yekem hilbijêre,
 Please set the Payment Schedule,Ji kerema xwe Bernameya Xizmetkirinê bidin,
-Please set the series to be used.,Ji kerema xwe rêza rêzikê ku bikar bînin.,
 Please set {0} for address {1},Ji kerema xwe ji navnîşana {0} ji bo navnîşan {1},
 Please setup Students under Student Groups,Ji kerema xwe xwendekarên Xwendekar ji Komên Xwendekar re saz bikin,
 Please specify Company,Ji kerema xwe ve Company diyar,
@@ -1953,7 +1925,6 @@
 Point-of-Sale,Point-ji-Sale,
 Point-of-Sale Profile,Point-ji-Sale Profile,
 Portal,Portal,
-Portal Settings,Settings Portal,
 Possible Supplier,Supplier gengaz,
 Postal Expenses,Mesref postal,
 Posting Date,deaktîv bike Date,
@@ -2152,12 +2123,10 @@
 Reference No is mandatory if you entered Reference Date,"Çavkanî No diyarkirî ye, eger tu ketin Date Reference",
 Reference No.,Navnîşa nimreya,
 Reference Number,Hejmara Reference,
-Reference Owner,Çavkanî Xwedî,
 Reference Type,Type Reference,
 "Reference: {0}, Item Code: {1} and Customer: {2}","World: Kurdî: {0}, Code babet: {1} û Mişterî: {2}",
 References,Çavkanî,
 Refresh Token,Refresh Token,
-Region,Herêm,
 Register,Fêhrist,
 Rejected,red,
 Related,Related,
@@ -2179,7 +2148,6 @@
 Replace BOM and update latest price in all BOMs,BOM re biguherînin û buhayên herî dawî yên li BOMs nû bikin,
 Replied,vegerand û got:,
 Report,Nûçe,
-Report Builder,Report Builder,
 Report Type,Report Type,
 Report Type is mandatory,Report Type wêneke e,
 Reports,Reports,
@@ -2355,13 +2323,11 @@
 Same Company is entered more than once,"Di heman şirketê de ye ketin, ji carekê zêdetir",
 Same item cannot be entered multiple times.,babete eynî ne dikarin ketin bê çend caran.,
 Same supplier has been entered multiple times,dabînkerê heman hatiye bicihkirin çend caran,
-Sample,Mînak,
 Sample Collection,Collection Collection,
 Sample quantity {0} cannot be more than received quantity {1},Kêmeya nimûne {0} dikare ji hêla mêjûya wergirtiye {1},
 Sanctioned,belê,
 Sand,Qûm,
 Saturday,Şemî,
-Saved,xilas,
 Saving {0},Saving {0},
 Scan Barcode,Barcode kişandin,
 Schedule,Pîlan,
@@ -2463,7 +2429,6 @@
 Series Updated,Series Demê,
 Series Updated Successfully,Series Demê serket,
 Series is mandatory,Series wêneke e,
-Series {0} already used in {1},Series {0} niha di bikaranîn {1},
 Service,Xizmetkar,
 Service Level Agreement,Peymana asta karûbarê karûbarê,
 Service Level Agreement.,Peymana asta karûbarê karûbarê.,
@@ -2479,7 +2444,6 @@
 Set Tax Rule for shopping cart,Set Rule Bacê ji bo Têxe selikê,
 Set as Closed,Set as girtî ye,
 Set as Completed,Wekî Bijarte danîn,
-Set as Default,Set as Default,
 Set as Lost,Set as Lost,
 Set as Open,Set as Open,
 Set default inventory account for perpetual inventory,Set account ambaran de default bo ambaran de perpetual,
@@ -2511,7 +2475,6 @@
 Shareholder,Pardar,
 Ship To State,Ship To State,
 Shipments,Barên,
-Shipping,Shipping,
 Shipping Address,Navnîşana Şandinê,
 "Shipping Address does not have country, which is required for this Shipping Rule","Navnîşa Kirînê Navnîşan nîne, ku ji bo Rêzeya Rêwîtiyê pêwîst e",
 Shipping rule only applicable for Buying,Qanûna Rêvebirin tenê tenê ji bo Kirîna Kirînê,
@@ -2564,7 +2527,6 @@
 Split Batch,Batch Split,
 Split Issue,Issue Issue,
 Sports,Sports,
-Standard,Wek herdem,
 Standard Buying,Buying Standard,
 Standard Selling,Selling Standard,
 Standard contract terms for Sales or Purchase.,mercên peymana Standard ji bo Sales an Buy.,
@@ -2731,7 +2693,6 @@
 Terms and Conditions,Şert û mercan,
 Terms and Conditions Template,Şert û mercan Şablon,
 Territory,Herêm,
-Test,Îmtîhan,
 Thank you for your business!,Spas dikim ji bo karê te!,
 The 'From Package No.' field must neither be empty nor it's value less than 1.,&#39;Ji Peldanka Naverokê&#39; zeviyê ne jî vala ye û ne ji hêja 1.,
 The Brand,The Brand,
@@ -2848,7 +2809,6 @@
 Total (Without Tax),Tiştek Bacê,
 Total Achieved,Total nebine,
 Total Actual,Total Actual,
-Total Allocated Leaves,Niştecîhên Teva Allocated,
 Total Amount,Temamê meblaxa,
 Total Amount Credited,Jimareya Giştî ya Credited,
 Total Applicable Charges in Purchase Receipt Items table must be same as Total Taxes and Charges,"Total doz li wergirtinê li Purchase Nawy Meqbûz sifrê divê eynî wek Total Bac, û doz li be",
@@ -2892,7 +2852,6 @@
 Total(Amt),Total (Amt),
 Total(Qty),Total (Qty),
 Traceability,Traceability,
-Traceback,Traceback,
 Track Leads by Lead Source.,Track Source by Lead Source.,
 Transaction,Şandindayinî,
 Transaction Date,Date de mêjera,
@@ -2930,7 +2889,6 @@
 UOM Conversion factor is required in row {0},faktora UOM Converter li row pêwîst e {0},
 UOM coversion factor required for UOM: {0} in Item: {1},faktora coversion UOM pêwîst ji bo UOM: {0} li babet: {1},
 URL,URL,
-Unable to find DocType {0},DucType nikare bibîne {0},
 Unable to find exchange rate for {0} to {1} for key date {2}. Please create a Currency Exchange record manually,Nikare bibînin rate ji bo {0} ji bo {1} ji bo date key {2}. Ji kerema xwe re qeyda Exchange biafirîne bi destan,
 Unable to find score starting at {0}. You need to have standing scores covering 0 to 100,Ne nikarî hejmara lêgerînê li {0} bibînin. Hûn hewce ne ku ji sedan 0 x 100 dakêşin,
 Unable to find variable: ,Ne pejirandin bibînin:,
@@ -2960,7 +2918,6 @@
 Upload your letter head and logo. (you can edit them later).,Upload nameya serokê û logo xwe. (Tu ji wan paşê biguherîne).,
 Upper Income,Dahata Upper,
 Use Sandbox,bikaranîna Ceriban,
-Used Leaves,Leaves Used,
 User,Bikaranîvan,
 User ID,ID&#39;ya bikarhêner,
 User ID not set for Employee {0},ID&#39;ya bikarhêner ji bo karkirinê set ne {0},
@@ -3051,7 +3008,6 @@
 Website Settings,Settings Website,
 Wednesday,Çarşem,
 Week,Hefte,
-Weekdays,Rojan,
 Weekly,Heftane,
 "Weight is mentioned,\nPlease mention ""Weight UOM"" too","Loss de behsa, \ nJi kerema xwe behsa &quot;Loss UOM&quot; jî",
 Welcome email sent,email Bi xêr hatî şandin,
@@ -3072,7 +3028,6 @@
 Work Order {0} must be submitted,Divê karûbarê karûbar {0} divê were şandin,
 Work Orders Created: {0},Karên Karkirina Karan afirandin: {0},
 Work-in-Progress Warehouse is required before Submit,Kar-li-Terakî Warehouse berî pêwîst e Submit,
-Workflow,Workflow,
 Working,Xebatê,
 Working Hours,dema xebatê,
 Workstation,Workstation,
@@ -3102,7 +3057,6 @@
 You need to be a user other than Administrator with System Manager and Item Manager roles to register on Marketplace.,Pêdivî ye ku hûn bikarhêner ji bilî Rêvebirê din re bi rêveberê Rêveberê Gerînendinê û Rêveberê Rêveberê Birêvebirin ku li ser qada Markazê bikin.,
 You need to be a user with System Manager and Item Manager roles to add users to Marketplace.,Hûn hewce ne ku bikarhêner bi Rêveberê Gerînendeyê û Rêveberê Rêveberê Birêvebir bidin ku bikarhênerên li Marketplace zêde bikin.,
 You need to be a user with System Manager and Item Manager roles to register on Marketplace.,Pêdivî ye ku hûn bikar bîne ku bikarhênerên Rêveberê Gerînendeyê û Rêveberê Rêveberê Şîfre bikin ku li ser bazarê Marketplace bikin.,
-You need to be logged in to access this page,Ji we re lazim têketî bê gihîştina vê rûpelê,
 You need to enable Shopping Cart,Divê tu ji bo çalakkirina Têxe selikê,
 You will lose records of previously generated invoices. Are you sure you want to restart this subscription?,Hûn dikarin belgeyên pêşniyarên pêşdankirî yên winda bibin. Ma hûn rast binivîsin ku hûn vê şûnde were veguhestin?,
 Your Organization,Rêxistina te,
@@ -3218,7 +3172,6 @@
 Assigned To,rêdan û To,
 Chat,Galgalî,
 Completed By,Bi tevahî,
-County,County,
 Day of Week,Day of Week,
 "Dear System Manager,","Manager System hêja,",
 Default Value,Nirx Default,
@@ -3229,31 +3182,21 @@
 Fieldtype,Fieldtype,
 Help Articles,alîkarî babetî,
 ID,ID,
-Images,images,
 Import,Malanîn,
 Language,Ziman,
 Likes,Likes,
 Merge with existing,Merge bi heyî,
-Office,Dayre,
 Orientation,Orientation,
 Parent,dê û bav,
-Passive,Nejîr,
 Payment Failed,Payment biserneket,
-Permanent,Herdem,
 Personal,Şexsî,
-Plant,Karxane,
 Post,Koz,
-Postal,postal,
 Postal Code,Kodeya postê,
-Previous,Pêşî,
 Provider,Provider,
 Read Only,Read Tenê,
 Recipient,Girtevan,
 Reviews,Nirxandin,
 Sender,virrêkerî,
-Shop,Dikan,
-Subsidiary,Şîrketa girêdayî,
-There is some problem with the file url: {0},e hinek pirsgirêk bi url file hene: {0},
 There were errors while sending email. Please try again.,bûn çewtî dema şandina email heye. Ji kerema xwe careke din biceribîne.,
 Values Changed,nirxên Guherî,
 or,an,
@@ -3280,19 +3223,16 @@
 Quality Feedback Template,Feedablonê nerazîbûna kalîteyê,
 Rules for applying different promotional schemes.,Qanûnên ji bo bicihanîna nexşeyên cûda yên danasînê,
 Show {0},Show {0},
-"Special Characters except '-', '#', '.', '/', '{{' and '}}' not allowed in naming series {0}","Di tîpa navnasî de ji bilî &quot;-&quot;, &quot;#&quot;, &quot;.&quot;, &quot;/&quot;, &quot;{{&quot; Û &quot;}}&quot; tîpên Taybet {0}",
 Target Details,Hûrgulên armancê,
 {0} already has a Parent Procedure {1}.,{0} ji berê ve heye Parent Procedure {1}.,
 API,API,
 Annual,Yeksalî,
 Change,Gûherrandinî,
 Contact Email,Contact Email,
-Export Type,Tîpa Exportê,
 From Date,ji Date,
 Group By,Koma By,
 Invalid URL,URLê çewt e,
 Landscape,Dorhalî,
-Last Sync On,Sync Dîroka Dawîn,
 Naming Series,Series Bidin,
 No data to export,Danasîna hinardekirinê tune,
 Portrait,Portûgal,
@@ -3302,7 +3242,6 @@
 Show Document,Belge nîşan bide,
 Show Traceback,Traceback nîşan bikin,
 Video,Vîdeo,
-Webhook Secret,Webhook Secret,
 % Of Grand Total,% Of Total Total,
 <b>Company</b> is a mandatory filter.,<b>Pargîdan</b> fîlterkerek domdar e.,
 <b>From Date</b> is a mandatory filter.,<b>Ji Dîrokê</b> filterek mecbûrî ye.,
@@ -3358,7 +3297,6 @@
 BOM Comparison Tool,Amûra BOM Comparison,
 BOM recursion: {0} cannot be child of {1},Pêşkêşkirina BOM: {0} nikare bibe zarok {1,
 BOM recursion: {0} cannot be parent or child of {1},Pêşkêşkirina BOM: {0} nikare bibe {1 parent dayik û bav.,
-Back to Home,Vegere Malê,
 Back to Messages,Vegere Mesajan,
 Bank Data mapper doesn't exist,Nexşeya Daneya Bankê tune,
 Bank Details,Danûstendinên Bankeyê,
@@ -3420,7 +3358,6 @@
 Currency,Diravcins,
 Current Status,rewşa niha,
 Customer PO,PO PO Xerîdar,
-Customize,kesanekirina,
 Daily,Rojane,
 Date,Rojek,
 Date of Birth cannot be greater than Joining Date.,Dîroka Zayînê ji Dîroka Tevlêbûnê nikare mezintir be.,
@@ -3454,7 +3391,6 @@
 ERPNext could not find any matching payment entry,ERPNext nikaribû têketinek têketina dravê bibînin,
 Earliest Age,Zûtirîn,
 Edit Details,Agahdarî biguherîne,
-Edit Profile,biguherîne Profile,
 Either GST Transporter ID or Vehicle No is required if Mode of Transport is Road,"Heke Modeya Veguhestinê Rê ye, ID an GST Transporter ID an Veh No hewce ne hewce ye",
 Email,Email,
 Email Campaigns,Kampanyayên E-nameyê,
@@ -3482,7 +3418,6 @@
 Fetch Items from Warehouse,Tiştên ji Warehouse bigirin,
 Fetching...,Fetching ...,
 Field,Erd,
-File Manager,file Manager,
 Filters,Parzûn,
 Finding linked payments,Dravên peywendîdar dibînin,
 Fleet Management,Management ya Korsan,
@@ -3521,7 +3456,6 @@
 Incorrect Warehouse,Wareya çewt,
 Invalid Barcode. There is no Item attached to this barcode.,Barcode xelet e. Li ser vê barcode ve ti tişt girêdayî ne.,
 Invalid credentials,Qebûlneyên derewîn,
-Invite as User,Gazî yên wek Bikarhêner,
 Issue Priority.,Mijara Pêşîn.,
 Issue Type.,Cureya pirsgirêkê.,
 "It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","Ew xuya dike ku pirsgirêkek bi sazkirina pergala serverê heye. Di rewşeke neyê de, hejmar dê dê hesabê we vegerîne.",
@@ -3564,7 +3498,6 @@
 New Invoice,Pêşnûmeya Nû,
 New Payment,Dravdana nû,
 New release date should be in the future,Dîroka berdana nû divê di pêşerojê de be,
-Newsletter,Newsletter,
 No Account matched these filters: {},No Hesabê van fîlteran li hev kir: {},
 No communication found.,Têkiliyek nehat dîtin.,
 No correct answer is set for {0},Ji bo {0 bersiv rast nehat dayîn.,
@@ -3640,7 +3573,6 @@
 Please setup a default bank account for company {0},Ji kerema xwe ji bo pargîdaniya account 0 account hesabek banka bêkêmasî saz bikin.,
 Please specify,ji kerema xwe binivîsin,
 Please specify a {0},Ji kerema xwe {0 diyar bikin,lead
-Printing,Çapnivîs,
 Priority,Pêşeyî,
 Priority has been changed to {0}.,Pêşîniya bi {0 ve hatî guhertin.,
 Priority {0} has been repeated.,Pêşîn {0 hatî dubare kirin.,
@@ -3649,7 +3581,6 @@
 Project,Rêvename,
 Provide the academic year and set the starting and ending date.,Sala akademîk peyda bikin û tarîxa destpêk û dawiyê destnîşan dikin.,
 Public token is missing for this bank,Nîşana giştî ji bo vê bankeyê winda ye,
-Publish,Weşandin,
 Publish 1 Item,1 Babete weşandin,
 Publish Items,Tiştên weşandin,
 Publish More Items,Moreiqas More weşandin,
@@ -3677,7 +3608,6 @@
 Reconciled,Li hev kirin,
 Recruitment,pistgirîya,
 Red,Sor,
-Refreshing,Refreshing,
 Release date must be in the future,Dîroka berdanê divê di pêşerojê de be,
 Relieving Date must be greater than or equal to Date of Joining,Dîroka Baweriyê ji Dîroka Beşdariyê divê ji Mezin an Dîroka Beşdariyê mezintir be,
 Rename,Nav biguherîne,
@@ -3721,7 +3651,6 @@
 Search for a payment,Lêgerînek bidin,
 Search for anything ...,Li her tiştî digerin ...,
 Search results for,Encamên lêgerînê,
-Select All,Select All,
 Select Difference Account,Hesabê Cudahiyê hilbijêrin,
 Select a Default Priority.,Pêşerojek Default hilbijêrin.,
 Select a company,Pargîdanek hilbijêrin,
@@ -3740,11 +3669,9 @@
 Service Level Agreement has been changed to {0}.,Peymana Astana Karûbarê to 0 changed hate guhertin.,
 Service Level Agreement was reset.,Peymana Asta Karûbarê ji nû ve hat girtin.,
 Service Level Agreement with Entity Type {0} and Entity {1} already exists.,Lihevhatina asta karûbarê bi Tipa ity 0} û ity 1} Kesayetiyê jixwe heye.,
-Set,Danîn,
 Set Meta Tags,Tagên Meta Set,
 Set {0} in company {1},Di pargîdaniyê de {0 danîn} 1,
 Setup,Damezirandin,
-Setup Wizard,sęrbaziya sazkirinę,
 Shift Management,Rêveberiya Shift,
 Show Future Payments,Dravên Pêşerojê nîşan bidin,
 Show Linked Delivery Notes,Nîşeyên Derdestkirî yên Zenckirî nîşan bidin,
@@ -3815,7 +3742,6 @@
 Unreconciled,Nekêşbar kirin,
 Unsupported GST Category for E-Way Bill JSON generation,Kategoriya GST-ya nexşandî ji bo nifşa e-Bill Bill JSON-ê piştgirî dike,
 Update,update,
-Update Details,Daxuyaniyên Nûve bikin,
 Update Taxes for Items,Bacan ji bo tiştên nûve bikin,
 "Upload a bank statement, link or reconcile a bank account","Daxuyaniyek bankek hilweşînin, girêdan an hesabek bankek li hev bikin",
 Upload a statement,Gotarek barkirin,
@@ -3839,7 +3765,6 @@
 XML Files Processed,Pelên XML têne pêvajoyê kirin,
 Year,Sal,
 Yearly,Hit,
-You,Hûn,
 You are not allowed to enroll for this course,Hûn ji bo vê qursê nayên destûr kirin,
 You are not enrolled in program {0},Hûn beşdarî bernameyê nebin {0,
 You can Feature upto 8 items.,Hûn dikarin 8 hêmanên Feature bikin.,
@@ -3856,7 +3781,6 @@
 e-Way Bill already exists for this document,e-Way Bill jixwe ji bo vê belgeyê heye,
 woocommerce - {0},wkucommerce - {0},
 {0} Coupon used are {1}. Allowed quantity is exhausted,{0} Kuponê tête bikar anîn {1. Hêjeya destûr biha ye,
-{0} Name,{0} Name,
 {0} Operations: {1},{0} Operasyon: {1},
 {0} bank transaction(s) created,{0 transaction danûstendina bankê (s) hatî afirandin,
 {0} bank transaction(s) created and {1} errors,Transaction 0 transaction danûstendina bankî (s) afirand û çewtiyên {1,
@@ -3875,17 +3799,13 @@
 Total Income,Navbera tevayî,
 Total Income This Year,Salane bi giştî hatin,
 Barcode,Barcode,
-Bold,Hesabî,
-Center,Navîne,
 Clear,Zelal,
-Comment,Agahkişîn,
 Comments,Comments,
 DocType,DocType,
 Download,Daxistin,
 Left,Çep,
 Link,Girêk,
 New,Nşh,
-Not Found,Peyda nebû,
 Print,Çap,
 Reference Name,Navê Referansê,
 Refresh,Hênikkirin,
@@ -3908,7 +3828,6 @@
 Email Id,ID Email,
 No,Na,
 Reference Doctype,Doctype Reference,
-User Id,Nasnameya nasnameyê,
 Yes,Erê,
 Actual ,Rast,
 Add to cart,Têxe,
@@ -4304,7 +4223,6 @@
 e.g Adjustments for:,Wek nirxandin ji bo:,
 Section Subtotal,Bendê Subtotal,
 Section Footer,Pace,
-Position,Rewş,
 Cash Flow Mapping,Mûçeya krediyê ya krediyê,
 Select Maximum Of 1,Ya herî herî 1 hilbijêrin,
 Is Finance Cost,Fînansê Fînansî ye,
@@ -4936,7 +4854,6 @@
 Previous Business Day,Roja Bazirganî,
 Next Business Day,Roja Bazirganî,
 Urgent,Acîl,
-Crop,Zadçinî,
 Crop Name,Navê Crop,
 Scientific Name,Navê zanistî,
 "You can define all the tasks which need to carried out for this crop here. The day field is used to mention the day on which the task needs to be carried out, 1 being the 1st day, etc.. ","Hûn dikarin hemî karên ku ji bo vê hilberê hewce nebe ku hûn hewce bike binirxînin. Roja roj tê bikaranîn ku roja ku têkoşîna hewceyê hewce dike, 1 roj roja pêşîn e.",
@@ -5441,7 +5358,6 @@
 To TIme,to Time,
 Course End Date,Kurs End Date,
 Course Topic,Mijara qursê,
-Topic,Mijar,
 Topic Name,Navê topic,
 Education Settings,Mîhengên Perwerdehiyê,
 Current Academic Year,Current Year (Ekadîmî),
@@ -5516,7 +5432,6 @@
 Check this if the Student is residing at the Institute's Hostel.,"vê kontrol bike, eger ku xwendevan û geştê li Hostel a Enstîtuyê ye.",
 Walking,Walking,
 Institute's Bus,Bus Bus Institute,
-Public Transport,giştîya,
 Self-Driving Vehicle,Vehicle Self-Driving,
 Pick/Drop by Guardian,Pick / Drop destê Guardian,
 Enrolled courses,kursên jimartin,
@@ -5697,7 +5612,6 @@
 Default Cost Center,Navenda Cost Default,
 Undeposited Funds Account,Hesabê Hesabê Bêguman,
 Shopify Log,Shopify Log,
-Request Data,Daneyên Daxwazî,
 Shopify Settings,Shopify Settings,
 status html,HTML,
 Enable Shopify,Enableifyify,
@@ -5817,7 +5731,6 @@
 Exercise Instructions,Rêwerzên Werzîşê,
 Exercise Video,Vîdyoya Werzîşê,
 Exercise Steps,Gavên Hînkariyê,
-Steps,Gavên,
 Steps Table,Steps Table,
 Exercise Type Step,Gav Tîpa Werzîşê,
 Max number of visit,Hejmareke zêde ya serdana,
@@ -6001,7 +5914,6 @@
 Patient Encounter Symptom,Nîşana Hevdîtina Nexweşan,
 HLC-PMR-.YYYY.-,HLC-PMR-YYYY.-,
 Attach Medical Record,Qeyda Tibbî Girêdin,
-Reference DocType,DocType Reference,
 Spouse,Jin,
 Family,Malbat,
 Schedule Details,Agahdariyên Bernameyê,
@@ -6983,16 +6895,8 @@
 HTML / Banner that will show on the top of product list.,HTML / Banner ku li ser lîsteya berheman dê nîşan bide.,
 Set prefix for numbering series on your transactions,Set prefix ji bo ku hijmara series li ser danûstandinên xwe,
 Setup Series,Series Setup,
-Select Transaction,Hilbijêre Transaction,
-Help HTML,alîkarî HTML,
-Series List for this Transaction,Lîsteya Series ji bo vê Transaction,
-User must always select,Bikarhêner her tim divê hilbijêre,
-Check this if you want to force the user to select a series before saving. There will be no default if you check this.,"vê kontrol bike, eger hûn dixwazin bi reya ku bikarhêner hilbijêre rêze berî tomarkirinê. Dê tune be default, eger tu vê kontrol bike.",
 Update Series,update Series,
 Change the starting / current sequence number of an existing series.,Guhertina Guherandinên / hejmara cihekê niha ya series heyî.,
-Prefix,Pêşkîte,
-This is the number of the last created transaction with this prefix,"Ev hejmara dawî ya muameleyan tên afirandin, bi vê prefix e",
-Update Series Number,Update Hejmara Series,
 Quotation Lost Reason,Quotation Lost Sedem,
 A third party distributor / dealer / commission agent / affiliate / reseller who sells the companies products for a commission.,A Belavkirina partiya sêyem / ticar / Komîsyona agent / Elendara / reseller ku teleban berhemên şîrketên ji bo komîsyona.,
 Sales Partner Name,Navê firotina Partner,
@@ -7687,7 +7591,6 @@
 Warehouse wise Item Balance Age and Value,Warehouse Wekheviya Pirtûka Pirtûka Çandî û Nirxê,
 Work Order Stock Report,Report Report Stock Order,
 Work Orders in Progress,Pêşdebirina Karên Karên Pêşveçûn,
-Validation Error,Çewtiya Pejirandinê,
 Automatically Process Deferred Accounting Entry,Bixweber Têketina Hesabê Bidawîbûyî Pêvajo Bike,
 Bank Clearance,Paqijkirina Bankeyê,
 Bank Clearance Detail,Detail Paqijkirina Bank,
@@ -7724,45 +7627,7 @@
 Therapy Plan: ,Plana Terapiyê:,
 Total Counts Targeted: ,Hejmarên Tevahî Armanc:,
 Total Counts Completed: ,Bi giştî hejmartin:,
-Andaman and Nicobar Islands,Giravên Andaman û Nicobar,
-Andhra Pradesh,Andhra Pradesh,
-Arunachal Pradesh,Arunachal Pradesh,
-Assam,Assam,
-Bihar,Bihar,
-Chandigarh,Chandigarh,
-Chhattisgarh,Chhattisgarh,
-Dadra and Nagar Haveli,Dadra û Nagar Haveli,
-Daman and Diu,Daman û Diu,
-Delhi,Delhi,
-Goa,Goa,
-Gujarat,Gujarat,
-Haryana,Haryana,
-Himachal Pradesh,Himachal Pradesh,
-Jammu and Kashmir,Jammu û Kashmir,
-Jharkhand,Jharkhand,
-Karnataka,Karnataka,
-Kerala,Kerala,
-Lakshadweep Islands,Giravên Lakshadweep,
-Madhya Pradesh,Madhya Pradesh,
-Maharashtra,Maharashtra,
-Manipur,Manipur,
-Meghalaya,Meghalaya,
-Mizoram,Mizoram,
-Nagaland,Nagaland,
-Odisha,Odisha,
-Other Territory,Erdê din,
-Pondicherry,Pondicherry,
-Punjab,Punjab,
-Rajasthan,Rajasthan,
-Sikkim,Sikkim,
-Tamil Nadu,Tamil Nadu,
-Telangana,Telangana,
-Tripura,Tripura,
-Uttar Pradesh,Uttar Pradesh,
-Uttarakhand,Uttarakhand,
-West Bengal,West Bengal,
 Is Mandatory,Erkdar e,
-Published on,Li ser hate weşandin,
 Service Received But Not Billed,Xizmeta Ku Wergirtin Lê Nekir,
 Deferred Accounting Settings,Mîhengên Hesabê Deferred,
 Book Deferred Entries Based On,Navnîşên Paşvengandî yên Li Ser Bingehê,
@@ -8035,8 +7900,6 @@
 Worksheet Instructions,Rêwerzên Karker,
 Result Legend Print,Encam Çap Çap,
 Print Position,Positiona Çapkirinê,
-Bottom,Erd,
-Top,Lûtik,
 Both,Herdû,
 Result Legend,Efsaneya Encamê,
 Lab Tests,Testên Lab,
@@ -8081,12 +7944,10 @@
 Approvers,Têgihiştin,
 The first Approver in the list will be set as the default Approver.,Di lîsteyê de Pejirandina yekem dê wekî Destûra Pêşniyar were saz kirin.,
 Shift Request Approver,Pejirandina Daxwaza Guherînê,
-PAN Number,Hejmara PAN,
 Provident Fund Account,Hesabê Fona Pêşbîn,
 MICR Code,MICR Code,
 Repay unclaimed amount from salary,Mûçeya nevekirî ji meaşê paşde bidin,
 Deduction from salary,Daxistina ji meaş,
-Expired Leaves,Pelên Dawî,
 If this is not checked the loan by default will be considered as a Demand Loan,Ger ev neyê kontrol kirin dê deyn bi default dê wekî Krediyek Daxwaz were hesibandin,
 This account is used for booking loan repayments from the borrower and also disbursing loans to the borrower,Ev hesab ji bo veqetandina vegerandinên deyn ji deyndêr û her weha dayîna deyn ji deyndêr re tê bikar anîn,
 This account is capital account which is used to allocate capital for loan disbursal account ,Ev hesab hesabê sermiyan e ku ji bo veqetandina sermaye ji bo hesabê dayîna kredî tê bikar anîn,
@@ -8844,3 +8705,41 @@
 Creating Purchase Order ...,Afirandina Biryara Kirînê ...,
 "Select a Supplier from the Default Suppliers of the items below. On selection, a Purchase Order will be made against items belonging to the selected Supplier only.","Ji Pargîdaniyên Pêşwext ên jêrîn ve Pêşkêşvanek hilbijêrin. Li ser hilbijartinê, dê Biryarnameyek Kirînê li dijî tiştên ku tenê ji Pêşkêşkarê hilbijartî ne pêk were.",
 Row #{}: You must select {} serial numbers for item {}.,Rêzok # {}: Divê hûn {} hejmarên rêzê ji bo hêmanê {} hilbijêrin.,
+Add Comment,lê zêde bike Comment,
+More...,Zêde...,
+Notes,Notes,
+Payment Gateway,Gateway Payment,
+Payment Gateway Name,Navnîşana Gatewayê,
+Payments,Payments,
+Plan Name,Plan Navê,
+Portal,Portal,
+Scan Barcode,Barcode kişandin,
+Some information is missing,Hinek agahî kêm,
+Successful,Serfiraz,
+Tools,Amûrên,
+Use Sandbox,bikaranîna Ceriban,
+Busy,Bikar,
+Completed By,Bi tevahî,
+Payment Failed,Payment biserneket,
+Column {0},Column {0},
+Field Mapping,Nexşeya zeviyê,
+Not Specified,Ne diyar e,
+Update Type,Type nûvekirin,
+Dr,Dr,
+End Time,Time End,
+Fetching...,Fetching ...,
+"It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","Ew xuya dike ku pirsgirêkek bi sazkirina pergala serverê heye. Di rewşeke neyê de, hejmar dê dê hesabê we vegerîne.",
+Looks like someone sent you to an incomplete URL. Please ask them to look into it.,Dişibe kesekî ku tu ji bo URL ne temam şandin. Ji kerema xwe ve ji wan bixwazin ku nav lê binêre.,
+Master,Mamoste,
+Pay,Diravdanî,
+You can also copy-paste this link in your browser,Tu dikarî li vê lînkê bitikîne we kopî-bîlkêne,
+Verified By,Sîîrtê By,
+Invalid naming series (. missing) for {0},Ji bo {0} rêze navên nederbasdar (. Winda ye),
+Phone Number,Jimare telefon,
+Account SID,Hesabê SID,
+Global Defaults,Têrbûn Global,
+Is Mandatory,Erkdar e,
+WhatsApp,WhatsApp,
+Make a call,Bang bikin,
+Approve,Destûrdan,
+Reject,Refzkirin,
diff --git a/erpnext/translations/lo.csv b/erpnext/translations/lo.csv
index 9e77b51..9b74f65 100644
--- a/erpnext/translations/lo.csv
+++ b/erpnext/translations/lo.csv
@@ -113,7 +113,6 @@
 Add Items,ເພີ່ມລາຍການລາຍ,
 Add Leads,Add Leads,
 Add Multiple Tasks,ເພີ່ມຫລາຍວຽກ,
-Add Row,ເພີ່ມແຖວ,
 Add Sales Partners,ເພີ່ມຄູ່ຄ້າຂາຍ,
 Add Serial No,ເພີ່ມບໍ່ມີ Serial,
 Add Students,ຕື່ມການນັກສຶກສາ,
@@ -211,9 +210,7 @@
 An error occurred during the update process,ເກີດຄວາມຜິດພາດໃນຂະບວນການປັບປຸງ,
 "An item exists with same name ({0}), please change the item group name or rename the item","ລາຍການລາຄາທີ່ມີຊື່ດຽວກັນ ({0}), ກະລຸນາມີການປ່ຽນແປງຊື່ກຸ່ມສິນຄ້າຫລືປ່ຽນຊື່ລາຍການ",
 Analyst,ນັກວິເຄາະ,
-Analytics,ການວິເຄາະ,
 Annual Billing: {0},ການເອີ້ນເກັບເງິນປະຈໍາປີ: {0},
-Anonymous,Anonymous,
 Another Budget record '{0}' already exists against {1} '{2}' and account '{3}' for fiscal year {4},ບັນທຶກງົບປະມານອື່ນ &#39;{0}&#39; ມີຢູ່ແລ້ວກັບ {1} &#39;{2}&#39; ແລະບັນຊີ &#39;{3}&#39; ສໍາລັບປີງົບປະມານ {4},
 Another Period Closing Entry {0} has been made after {1},ອີກປະການຫນຶ່ງ Entry ໄລຍະເວລາປິດ {0} ໄດ້ຮັບການເຮັດໃຫ້ຫຼັງຈາກ {1},
 Another Sales Person {0} exists with the same Employee id,ອີກປະການຫນຶ່ງບຸກຄົນ Sales {0} ມີຢູ່ກັບ id ພະນັກງານດຽວກັນ,
@@ -283,14 +280,12 @@
 Attendance not submitted for {0} as {1} on leave.,ການເຂົ້າຮ່ວມບໍ່ໄດ້ສົ່ງສໍາລັບ {0} ເປັນ {1} ເມື່ອພັກຜ່ອນ.,
 Attribute table is mandatory,ຕາຕະລາງຄຸນສົມບັດເປັນການບັງຄັບ,
 Attribute {0} selected multiple times in Attributes Table,ຄຸນລັກສະນະ {0} ເລືອກເວລາຫຼາຍໃນຕາຕະລາງຄຸນສົມບັດ,
-Author,Author,
 Authorized Signatory,ລົງນາມອະນຸຍາດ,
 Auto Material Requests Generated,ການຮ້ອງຂໍການວັດສະດຸ Auto Generated,
 Auto Repeat,Auto Repeat,
 Auto repeat document updated,ການປັບປຸງເອກະສານຊ້ໍາອັດຕະໂນມັດ,
 Automotive,ຍານຍົນ,
 Available,ສາມາດໃຊ້ໄດ້,
-Available Leaves,Available Leaves,
 Available Qty,ມີຈໍານວນ,
 Available Selling,Available Selling,
 Available for use date is required,ຕ້ອງມີວັນທີ່ໃຊ້ສໍາລັບການນໍາໃຊ້,
@@ -340,7 +335,6 @@
 Base URL,Base URL,
 Based On,ອີງຕາມ,
 Based On Payment Terms,ອີງຕາມເງື່ອນໄຂການຊໍາລະເງິນ,
-Basic,ພື້ນຖານ,
 Batch,Batch,
 Batch Entries,ການອອກສຽງກຸ່ມ,
 Batch ID is mandatory,ID batch ເປັນການບັງຄັບ,
@@ -361,7 +355,6 @@
 Billable Hours,ຊົ່ວໂມງບິນໄດ້,
 Billed,ບິນ,
 Billed Amount,ຈໍານວນເງິນເກັບ,
-Billing,Billing,
 Billing Address,ທີ່ຢູ່ໃບບິນ,
 Billing Address is same as Shipping Address,ທີ່ຢູ່ໃບບິນແມ່ນຄືກັນກັບທີ່ຢູ່ສົ່ງ,
 Billing Amount,ຈໍານວນໃບບິນ,
@@ -560,7 +553,6 @@
 Consumed Qty,ການບໍລິໂພກຈໍານວນ,
 Consumer Products,ຜະລິດຕະພັນຜູ້ບໍລິໂພກ,
 Contact,ການຕິດຕໍ່,
-Contact Details,ລາຍລະອຽດການຕິດຕໍ່,
 Contact Us,ຕິດຕໍ່ພວກເຮົາ,
 Content,ເນື້ອໃນ,
 Content Masters,ແມ່ບົດເນື້ອຫາ,
@@ -715,7 +707,6 @@
 Date of Joining,ວັນທີຂອງການເຂົ້າຮ່ວມ,
 Date of Joining must be greater than Date of Birth,ວັນທີຂອງການເຂົ້າຮ່ວມຈະຕ້ອງຫຼາຍກ່ວາວັນເກີດ,
 Date of Transaction,Date of Transaction,
-Datetime,datetime,
 Day,ວັນ,
 Debit,ເດບິດ,
 Debit ({0}),ກໍາໄລ ({0}),
@@ -874,7 +865,6 @@
 Employee cannot report to himself.,ພະນັກງານບໍ່ສາມາດລາຍງານໃຫ້ຕົນເອງ.,
 Employee {0} has already applied for {1} between {2} and {3} : ,ພະນັກງານ {0} ໄດ້ຖືກນໍາໃຊ້ແລ້ວສໍາລັບ {1} ລະຫວ່າງ {2} ແລະ {3}:,
 Employee {0} of grade {1} have no default leave policy,ພະນັກງານ {0} ຂອງຊັ້ນຮຽນ {1} ບໍ່ມີນະໂຍບາຍໄວ້ໃນຕອນຕົ້ນ,
-Enable,ເປີດນໍາໃຊ້,
 Enable / disable currencies.,ເຮັດໃຫ້ສາມາດ / ປິດການໃຊ້ງານສະກຸນເງິນ.,
 Enabled,ເປີດການໃຊ້ງານ,
 "Enabling 'Use for Shopping Cart', as Shopping Cart is enabled and there should be at least one Tax Rule for Shopping Cart","ເຮັດໃຫ້ &#39;ການນໍາໃຊ້ສໍາລັບສິນຄ້າ, ເປັນການຄ້າໂຄງຮ່າງການເປີດໃຊ້ວຽກແລະຄວນຈະມີກົດລະບຽບພາສີຢ່າງຫນ້ອຍຫນຶ່ງສໍາລັບການຄ້າໂຄງຮ່າງການ",
@@ -905,7 +895,6 @@
 Error: Not a valid id?,ຄວາມຜິດພາດ: ບໍ່ເປັນ id ທີ່ຖືກຕ້ອງ?,
 Estimated Cost,ຕົ້ນທຶນຄາດຄະເນ,
 "Even if there are multiple Pricing Rules with highest priority, then following internal priorities are applied:","ເຖິງແມ່ນວ່າຖ້າຫາກວ່າບໍ່ມີກົດລະບຽບການຕັ້ງລາຄາດ້ວຍບູລິມະສິດທີ່ສູງທີ່ສຸດ, ຫຼັງຈາກນັ້ນປະຕິບັດຕາມບູລິມະສິດພາຍໃນໄດ້ຖືກນໍາໃຊ້:",
-Event,ກໍລະນີ,
 Exchange Gain/Loss,ແລກປ່ຽນເງິນຕາໄດ້ຮັບ / ການສູນເສຍ,
 Exchange Rate Revaluation master.,ແມ່ບົດການປະເມີນອັດຕາແລກປ່ຽນ.,
 Exchange Rate must be same as {0} {1} ({2}),ອັດຕາແລກປ່ຽນຈະຕ້ອງເປັນເຊັ່ນດຽວກັນກັບ {0} {1} ({2}),
@@ -1032,7 +1021,6 @@
 From value must be less than to value in row {0},ຈາກມູນຄ່າຕ້ອງບໍ່ເກີນມູນຄ່າໃນການຕິດຕໍ່ກັນ {0},
 From {0} | {1} {2},ຈາກ {0} | {1} {2},
 Fulfillment,ປະຕິບັດຕາມ,
-Full,ເຕັມ,
 Full Name,ຊື່ເຕັມ,
 Fully Depreciated,ຄ່າເສື່ອມລາຄາຢ່າງເຕັມສ່ວນ,
 Furnitures and Fixtures,ເຟີນິເຈີແລະການແຂ່ງຂັນ,
@@ -1133,7 +1121,6 @@
 Hub Sync ID,Hub Sync ID,
 Human Resource,ຊັບພະຍາກອນມະນຸດ,
 Human Resources,ຊັບພະຍາກອນມະນຸດ,
-IFSC Code,IFSC Code,
 IGST Amount,IGST Amount,
 IP Address,ທີ່ຢູ່ IP,
 ITC Available (whether in full op part),ມີ ITC (ບໍ່ວ່າຈະຢູ່ໃນສ່ວນເຕັມ),
@@ -1185,7 +1172,6 @@
 Ineligible ITC,ITC ທີ່ບໍ່ມີສິດໄດ້ຮັບ,
 Initiated,ການລິເລີ່ມ,
 Inpatient Record,Inpatient Record,
-Insert,Insert,
 Installation Note,ການຕິດຕັ້ງຫມາຍເຫດ,
 Installation Note {0} has already been submitted,ການຕິດຕັ້ງຫມາຍເຫດ {0} ໄດ້ຖືກສົ່ງແລ້ວ,
 Installation date cannot be before delivery date for Item {0},ວັນທີການຕິດຕັ້ງບໍ່ສາມາດກ່ອນທີ່ວັນທີສໍາລັບລາຍການ {0},
@@ -1197,7 +1183,6 @@
 Insurance Start date should be less than Insurance End date,ວັນປະກັນໄພ Start ຄວນຈະມີຫນ້ອຍກ່ວາວັນການປະກັນໄພ End,
 Integrated Tax,ອາກອນປະສົມ,
 Inter-State Supplies,ອຸປະກອນລະຫວ່າງລັດ,
-Interests,ຜົນປະໂຫຍດ,
 Internet Publishing,Publishing ອິນເຕີເນັດ,
 Intra-State Supplies,ເຄື່ອງໃຊ້ພາຍໃນລັດ,
 Introduction,ການນໍາສະເຫນີ,
@@ -1316,7 +1301,6 @@
 Lab testing datetime cannot be before collection datetime,ເວລາທົດລອງທົດລອງທົດລອງບໍ່ສາມາດເປັນເວລາທີ່ຈະເກັບກໍາຂໍ້ມູນໄດ້,
 Label,Label,
 Laboratory,ຫ້ອງທົດລອງ,
-Language Name,ພາສາ,
 Large,ຂະຫນາດໃຫຍ່,
 Last Communication,ການສື່ສານທີ່ຜ່ານມາ,
 Last Communication Date,ຫຼ້າສຸດວັນທີ່ສື່ສານ,
@@ -1347,8 +1331,6 @@
 Letter Heads for print templates.,ຫົວຫນ້າຈົດຫມາຍສະບັບສໍາລັບການພິມແມ່ແບບ.,
 Level,ລະດັບ,
 Liability,ຄວາມຮັບຜິດຊອບ,
-License,ໃບອະນຸຍາດ,
-Limit,ຂອບເຂດຈໍາກັດ,
 Limit Crossed,ຂອບເຂດຈໍາກັດອົງການກາ,
 Link to Material Request,ການເຊື່ອມຕໍ່ຫາຄໍາຮ້ອງຂໍວັດຖຸ,
 List of all share transactions,ລາຍະການຂອງການໂອນຫຸ້ນທັງຫມົດ,
@@ -1359,7 +1341,6 @@
 Loans (Liabilities),ເງິນກູ້ຢືມ (ຫນີ້ສິນ),
 Loans and Advances (Assets),ເງິນກູ້ຢືມແລະອື່ນ ໆ (ຊັບສິນ),
 Local,ທ້ອງຖິ່ນ,
-Log,ເຂົ້າສູ່ລະບົບ,
 Logs for maintaining sms delivery status,ຂໍ້ມູນບັນທຶກການຮັກສາສະຖານະພາບການຈັດສົ່ງ sms,
 Lost,ການສູນເສຍ,
 Lost Reasons,ເຫດຜົນທີ່ຫຼົງລືມ,
@@ -1445,7 +1426,6 @@
 Medical Department,ກົມການແພດ,
 Medical Record,Medical Record,
 Medium,ຂະຫນາດກາງ,
-Meeting,ກອງປະຊຸມ,
 Member Activity,ກິດຈະກໍາຂອງສະມາຊິກ,
 Member ID,Member ID,
 Member Name,ຊື່ສະມາຊິກ,
@@ -1495,7 +1475,6 @@
 Multiple Variants,Multiple Variants,
 Multiple fiscal years exist for the date {0}. Please set company in Fiscal Year,ປີງົບປະມານຫຼາຍມີສໍາລັບວັນທີ {0}. ກະລຸນາຕັ້ງບໍລິສັດໃນປີງົບປະມານ,
 Music,ດົນຕີ,
-My Account,ບັນຊີຂອງຂ້ອຍ,
 Name error: {0},ຄວາມຜິດພາດຊື່: {0},
 Name of new Account. Note: Please don't create accounts for Customers and Suppliers,ຊື່ຂອງບັນຊີໃຫມ່. ຫມາຍເຫດ: ກະລຸນາຢ່າສ້າງບັນຊີສໍາລັບລູກຄ້າແລະຜູ້ສະຫນອງ,
 Name or Email is mandatory,ຊື່ຫລື Email ເປັນການບັງຄັບ,
@@ -1538,7 +1517,6 @@
 New credit limit is less than current outstanding amount for the customer. Credit limit has to be atleast {0},ຂອບເຂດຈໍາກັດການປ່ອຍສິນເຊື່ອໃຫມ່ແມ່ນຫນ້ອຍກວ່າຈໍານວນເງິນທີ່ຍັງຄ້າງຄາໃນປະຈຸບັນສໍາລັບລູກຄ້າ. ຂອບເຂດຈໍາກັດການປ່ອຍສິນເຊື່ອຈະຕ້ອງມີ atleast {0},
 New task,ວຽກງານໃຫມ່,
 New {0} pricing rules are created,ລະບຽບລາຄາ ໃໝ່ {0} ຖືກສ້າງຂື້ນ,
-Newsletters,ຈົດຫມາຍຂ່າວ,
 Newspaper Publishers,ຫນັງສືພິມຜູ້ຈັດພິມ,
 Next,ຕໍ່ໄປ,
 Next Contact By cannot be same as the Lead Email Address,ຖັດໄປໂດຍບໍ່ສາມາດເຊັ່ນດຽວກັນກັບທີ່ຢູ່ອີເມວ Lead,
@@ -1686,7 +1664,6 @@
 Other,ອື່ນ ໆ,
 Other Reports,ບົດລາຍງານອື່ນ ໆ,
 "Other outward supplies(Nil rated,Exempted)","ເຄື່ອງໃຊ້ພາຍນອກອື່ນໆ (ອັນດັບ, ຍົກເວັ້ນ)",
-Others,ຄົນອື່ນ,
 Out Qty,ອອກຈໍານວນ,
 Out Value,ມູນຄ່າອອກ,
 Out of Order,ອອກຈາກຄໍາສັ່ງ,
@@ -1726,7 +1703,6 @@
 Party Type and Party is mandatory for {0} account,ປະເພດຂອງພັກແລະພັກແມ່ນບັງຄັບໃຫ້ບັນຊີ {0},
 Party Type is mandatory,ປະເພດບຸກຄົນທີ່ບັງຄັບ,
 Party is mandatory,ພັກເປັນການບັງຄັບ,
-Password,ລະຫັດຜ່ານ,
 Past Due Date,ວັນທີທີ່ຜ່ານມາ,
 Patient,ຄົນເຈັບ,
 Patient Appointment,Appointment ຜູ້ປ່ວຍ,
@@ -1784,7 +1760,6 @@
 Pharmaceutical,ຢາ,
 Pharmaceuticals,ຢາ,
 Physician,ແພດ,
-Pincode,Pincode,
 Place Of Supply (State/UT),ສະຖານທີ່ສະ ໜອງ (State / UT),
 Place Order,ສັ່ງຊື້,
 Plan Name,ຊື່ແຜນການ,
@@ -1896,7 +1871,6 @@
 Please select date,ກະລຸນາເລືອກເອົາວັນທີ,
 Please select item code,ກະລຸນາເລືອກລະຫັດສິນຄ້າ,
 Please select month and year,ກະລຸນາເລືອກເດືອນແລະປີ,
-Please select prefix first,ກະລຸນາເລືອກຄໍານໍາຫນ້າທໍາອິດ,
 Please select the Company,ກະລຸນາເລືອກບໍລິສັດ,
 Please select the Multiple Tier Program type for more than one collection rules.,ກະລຸນາເລືອກປະເພດໂຄງການຫຼາຍຂັ້ນຕອນສໍາລັບຫຼາຍກວ່າກົດລະບຽບການເກັບກໍາ.,
 Please select the assessment group other than 'All Assessment Groups',ກະລຸນາເລືອກກຸ່ມການປະເມີນຜົນອື່ນທີ່ບໍ່ແມ່ນ &#39;ທັງຫມົດ Assessment Groups&#39;,
@@ -1913,7 +1887,6 @@
 Please set Company filter blank if Group By is 'Company',ກະລຸນາຕັ້ງບໍລິສັດກັ່ນຕອງ blank ຖ້າ Group By ແມ່ນ &#39;Company&#39;,
 Please set Default Payroll Payable Account in Company {0},ກະລຸນາທີ່ກໍານົດໄວ້ມາດຕະຖານ Payroll Account Payable ໃນບໍລິສັດ {0},
 Please set Depreciation related Accounts in Asset Category {0} or Company {1},ກະລຸນາທີ່ກໍານົດໄວ້ບັນຊີທີ່ກ່ຽວຂ້ອງກັບຄ່າເສື່ອມລາຄາໃນສິນຊັບປະເພດ {0} ຫລືບໍລິສັດ {1},
-Please set Email Address,ກະລຸນາທີ່ກໍານົດໄວ້ທີ່ຢູ່ອີເມວ,
 Please set GST Accounts in GST Settings,ກະລຸນາຕັ້ງບັນຊີ GST ໃນ GST Settings,
 Please set Hotel Room Rate on {},ກະລຸນາຕັ້ງໂຮງແຮມ Rate on {},
 Please set Number of Depreciations Booked,ກະລຸນາທີ່ກໍານົດໄວ້ຈໍານວນຂອງການອ່ອນຄ່າຈອງ,
@@ -1936,7 +1909,6 @@
 Please set the Email ID for the Student to send the Payment Request,ກະລຸນາຕັ້ງອີເມວອີເມວສໍາລັບນັກຮຽນເພື່ອສົ່ງຄໍາຮ້ອງຂໍການຊໍາລະເງິນ,
 Please set the Item Code first,ກະລຸນາຕັ້ງມູນລະຫັດທໍາອິດ,
 Please set the Payment Schedule,ກະລຸນາ ກຳ ນົດຕາຕະລາງການຈ່າຍເງິນ,
-Please set the series to be used.,ກະລຸນາຕັ້ງຄ່າຊຸດເພື່ອນໍາໃຊ້.,
 Please set {0} for address {1},ກະລຸນາຕັ້ງຄ່າ {0} ສຳ ລັບທີ່ຢູ່ {1},
 Please setup Students under Student Groups,ກະລຸນາຕິດຕັ້ງນັກຮຽນພາຍໃຕ້ກຸ່ມນັກຮຽນ,
 Please specify Company,ກະລຸນາລະບຸບໍລິສັດ,
@@ -1953,7 +1925,6 @@
 Point-of-Sale,ຈຸດຂອງການຂາຍ,
 Point-of-Sale Profile,ຈຸດຂອງການຂາຍຂໍ້ມູນ,
 Portal,ສະບັບພິມໄດ້,
-Portal Settings,ການຕັ້ງຄ່າ Portal,
 Possible Supplier,ຜູ້ຜະລິດທີ່ເປັນໄປໄດ້,
 Postal Expenses,ຄ່າໃຊ້ຈ່າຍການໄປສະນີ,
 Posting Date,ວັນທີ່ປະກາດ,
@@ -2152,12 +2123,10 @@
 Reference No is mandatory if you entered Reference Date,ກະສານອ້າງອີງທີ່ບໍ່ມີແມ່ນການບັງຄັບຖ້າຫາກວ່າທ່ານເຂົ້າໄປວັນກະສານອ້າງອີງ,
 Reference No.,Reference No,
 Reference Number,ຈໍານວນກະສານອ້າງອີງ,
-Reference Owner,ເຈົ້າຂອງກະສານອ້າງອີງ,
 Reference Type,ປະເພດເອກະສານ,
 "Reference: {0}, Item Code: {1} and Customer: {2}","ອ້າງອິງ: {0}, ລະຫັດສິນຄ້າ: {1} ແລະລູກຄ້າ: {2}",
 References,ເອກະສານ,
 Refresh Token,Refresh Token,
-Region,ພູມິພາກ,
 Register,ລົງທະບຽນ,
 Rejected,ປະຕິເສດ,
 Related,ທີ່ກ່ຽວຂ້ອງ,
@@ -2179,7 +2148,6 @@
 Replace BOM and update latest price in all BOMs,ແທນທີ່ BOM ແລະປັບປຸງລາຄາຫລ້າສຸດໃນ Boms ທັງຫມົດ,
 Replied,ຕອບ,
 Report,ບົດລາຍງານ,
-Report Builder,Builder ບົດລາຍງານ,
 Report Type,ປະເພດບົດລາຍງານ,
 Report Type is mandatory,ປະເພດບົດລາຍງານແມ່ນການບັງຄັບ,
 Reports,ບົດລາຍງານ,
@@ -2355,13 +2323,11 @@
 Same Company is entered more than once,ບໍລິສັດດຽວກັນແມ່ນເຂົ້າໄປຫຼາຍກ່ວາຫນຶ່ງຄັ້ງ,
 Same item cannot be entered multiple times.,ລາຍການແມ່ນບໍ່ສາມາດເຂົ້າໄປໃນເວລາຫຼາຍ.,
 Same supplier has been entered multiple times,ຄ້າຄົນດຽວກັນໄດ້ຮັບການປ້ອນເວລາຫຼາຍ,
-Sample,ຕົວຢ່າງ,
 Sample Collection,Sample Collection,
 Sample quantity {0} cannot be more than received quantity {1},ປະລິມານຕົວຢ່າງ {0} ບໍ່ສາມາດມີຫຼາຍກ່ວາປະລິມານທີ່ໄດ້ຮັບ {1},
 Sanctioned,ທີ່ຖືກເກືອດຫ້າມ,
 Sand,Sand,
 Saturday,ວັນເສົາ,
-Saved,ບັນທຶກໄວ້,
 Saving {0},ການບັນທຶກ {0},
 Scan Barcode,ສະແກນບາໂຄດ,
 Schedule,ກໍານົດເວລາ,
@@ -2463,7 +2429,6 @@
 Series Updated,Series Updated,
 Series Updated Successfully,ຊຸດອັບເດດຮຽບຮ້ອຍ,
 Series is mandatory,Series ເປັນການບັງຄັບ,
-Series {0} already used in {1},Series {0} ນໍາໃຊ້ແລ້ວໃນ {1},
 Service,ການບໍລິການ,
 Service Level Agreement,ຂໍ້ຕົກລົງໃນລະດັບການບໍລິການ,
 Service Level Agreement.,ຂໍ້ຕົກລົງໃນລະດັບການບໍລິການ.,
@@ -2479,7 +2444,6 @@
 Set Tax Rule for shopping cart,ກໍານົດກົດລະບຽບພາສີສໍາລັບສິນຄ້າ,
 Set as Closed,ກໍານົດເປັນປິດ,
 Set as Completed,ກໍານົດເປັນສໍາເລັດ,
-Set as Default,ກໍານົດເປັນຄ່າເລີ່ມຕົ້ນ,
 Set as Lost,ກໍານົດເປັນການສູນເສຍ,
 Set as Open,ກໍານົດເປັນທຸກ,
 Set default inventory account for perpetual inventory,ກໍານົດບັນຊີສິນຄ້າຄົງຄັງໃນຕອນຕົ້ນສໍາລັບການສິນຄ້າຄົງຄັງ perpetual,
@@ -2511,7 +2475,6 @@
 Shareholder,ຜູ້ຖືຫຸ້ນ,
 Ship To State,Ship To State,
 Shipments,ການຂົນສົ່ງ,
-Shipping,ການຂົນສົ່ງ,
 Shipping Address,ທີ່ຢູ່ສົ່ງ,
 "Shipping Address does not have country, which is required for this Shipping Rule",ທີ່ຢູ່ສົ່ງບໍ່ມີປະເທດທີ່ຈໍາເປັນສໍາລັບມາດຕະການການຂົນສົ່ງນີ້,
 Shipping rule only applicable for Buying,ກົດລະບຽບການສົ່ງສິນຄ້າໃຊ້ໄດ້ສໍາລັບການຊື້,
@@ -2564,7 +2527,6 @@
 Split Batch,ຊຸດ Split,
 Split Issue,Split Issue,
 Sports,ກິລາ,
-Standard,ມາດຕະຖານ,
 Standard Buying,ຊື້ມາດຕະຖານ,
 Standard Selling,ຂາຍມາດຕະຖານ,
 Standard contract terms for Sales or Purchase.,ເງື່ອນໄຂສັນຍາມາດຕະຖານສໍາລັບການຂາຍຫຼືຊື້.,
@@ -2731,7 +2693,6 @@
 Terms and Conditions,ຂໍ້ກໍານົດແລະເງື່ອນໄຂ,
 Terms and Conditions Template,ຂໍ້ກໍານົດແລະເງື່ອນໄຂ Template,
 Territory,ອານາເຂດຂອງ,
-Test,ການທົດສອບ,
 Thank you for your business!,ຂໍຂອບໃຈທ່ານສໍາລັບທຸລະກິດຂອງທ່ານ!,
 The 'From Package No.' field must neither be empty nor it's value less than 1.,The &#39;From Package No&#39; ພາກສະຫນາມບໍ່ຕ້ອງເປົ່າຫຼືບໍ່ມີຄ່ານ້ອຍກວ່າ 1.,
 The Brand,ຍີ່ຫໍ້,
@@ -2848,7 +2809,6 @@
 Total (Without Tax),ລວມ (ໂດຍບໍ່ມີພາສີ),
 Total Achieved,ທັງຫມົດບັນລຸ,
 Total Actual,ທັງຫມົດທີ່ເກີດຂຶ້ນຈິງ,
-Total Allocated Leaves,ຈໍານວນໃບທີ່ຖືກມອບຫມາຍ,
 Total Amount,ຈໍານວນທັງຫມົດ,
 Total Amount Credited,ຈໍານວນເງິນທີ່ໄດ້ຮັບການຢັ້ງຢືນ,
 Total Applicable Charges in Purchase Receipt Items table must be same as Total Taxes and Charges,ຄ່າໃຊ້ຈ່າຍທັງຫມົດໃນການຊື້ຕາຕະລາງໃບລາຍການຈະຕ້ອງເຊັ່ນດຽວກັນກັບພາສີອາກອນທັງຫມົດແລະຄ່າບໍລິການ,
@@ -2892,7 +2852,6 @@
 Total(Amt),ທັງຫມົດ (AMT),
 Total(Qty),ທັງຫມົດ (ຈໍານວນ),
 Traceability,ກວດສອບຍ້ອນກັບ,
-Traceback,traceback,
 Track Leads by Lead Source.,ຕິດຕາມນໍາໂດຍແຫຼ່ງທີ່ມາ.,
 Transaction,ເຮັດທຸລະກໍາ,
 Transaction Date,ວັນທີ່ສະຫມັກເຮັດທຸລະກໍາ,
@@ -2930,7 +2889,6 @@
 UOM Conversion factor is required in row {0},ປັດໄຈທີ່ UOM ສົນທະນາແມ່ນຕ້ອງການໃນການຕິດຕໍ່ກັນ {0},
 UOM coversion factor required for UOM: {0} in Item: {1},ປັດໄຈ Coversion UOM ຕ້ອງການສໍາລັບ UOM: {0} ໃນສິນຄ້າ: {1},
 URL,URL,
-Unable to find DocType {0},ບໍ່ສາມາດຊອກຫາ DocType {0},
 Unable to find exchange rate for {0} to {1} for key date {2}. Please create a Currency Exchange record manually,ບໍ່ສາມາດຊອກຫາອັດຕາແລກປ່ຽນໃນລາຄາ {0} ກັບ {1} ສໍາລັບວັນທີທີ່ສໍາຄັນ {2}. ກະລຸນາສ້າງບັນທຶກຕາແລກປ່ຽນເງິນດ້ວຍຕົນເອງ,
 Unable to find score starting at {0}. You need to have standing scores covering 0 to 100,ບໍ່ສາມາດຊອກຫາຄະແນນເລີ່ມຕົ້ນທີ່ {0}. ທ່ານຕ້ອງການທີ່ຈະມີຄະແນນປະຈໍາຄອບຄຸມ 0 ກັບ 100,
 Unable to find variable: ,ບໍ່ສາມາດຊອກຫາການປ່ຽນແປງ:,
@@ -2960,7 +2918,6 @@
 Upload your letter head and logo. (you can edit them later).,ອັບຫົວຈົດຫມາຍສະບັບແລະສັນຍາລັກຂອງທ່ານ. (ທ່ານສາມາດແກ້ໄຂໃຫ້ເຂົາເຈົ້າຕໍ່ມາ).,
 Upper Income,Upper ລາຍໄດ້,
 Use Sandbox,ການນໍາໃຊ້ Sandbox,
-Used Leaves,Used Leaves,
 User,ຜູ້ໃຊ້,
 User ID,User ID,
 User ID not set for Employee {0},User ID ບໍ່ກໍານົດສໍາລັບພະນັກງານ {0},
@@ -3051,7 +3008,6 @@
 Website Settings,ການຕັ້ງຄ່າເວັບໄຊທ໌,
 Wednesday,ວັນພຸດ,
 Week,ອາທິດ,
-Weekdays,ວັນອາທິດ,
 Weekly,ປະຈໍາອາທິດ,
 "Weight is mentioned,\nPlease mention ""Weight UOM"" too","ນ້ໍາທີ່ໄດ້ກ່າວມາ, \ nPlease ເວົ້າເຖິງ &quot;ນ້ໍາຫນັກ UOM&quot; ເຊັ່ນດຽວກັນ",
 Welcome email sent,ອີເມວຍິນດີຕ້ອນຮັບສົ່ງ,
@@ -3072,7 +3028,6 @@
 Work Order {0} must be submitted,ຕ້ອງໄດ້ສົ່ງຄໍາສັ່ງເຮັດວຽກ {0},
 Work Orders Created: {0},ຄໍາສັ່ງເຮັດວຽກກໍ່ສ້າງ: {0},
 Work-in-Progress Warehouse is required before Submit,ການເຮັດວຽກໃນຄວາມຄືບຫນ້າ Warehouse ກ່ອນການຍື່ນສະເຫນີການ,
-Workflow,workflow,
 Working,ການເຮັດວຽກ,
 Working Hours,ຊົ່ວໂມງເຮັດວຽກ,
 Workstation,Workstation,
@@ -3102,7 +3057,6 @@
 You need to be a user other than Administrator with System Manager and Item Manager roles to register on Marketplace.,ທ່ານຈໍາເປັນຕ້ອງເປັນຜູ້ໃຊ້ນອກເຫນືອຈາກຜູ້ເບິ່ງແຍງລະບົບຜູ້ຈັດການລະບົບແລະບົດບາດຂອງຜູ້ຈັດການລາຍການເພື່ອລົງທະບຽນໃນ Marketplace.,
 You need to be a user with System Manager and Item Manager roles to add users to Marketplace.,ທ່ານຈໍາເປັນຕ້ອງເປັນຜູ້ໃຊ້ທີ່ມີລະບົບການຈັດການລະບົບແລະການຈັດການ Item Manager ເພື່ອເພີ່ມຜູ້ໃຊ້ເຂົ້າໃນ Marketplace.,
 You need to be a user with System Manager and Item Manager roles to register on Marketplace.,ທ່ານຈໍາເປັນຕ້ອງເປັນຜູ້ໃຊ້ທີ່ມີລະບົບຈັດການລະບົບແລະການຈັດການ Item Manager ເພື່ອລົງທະບຽນໃນ Marketplace.,
-You need to be logged in to access this page,ທ່ານຈໍາເປັນຕ້ອງເຂົ້າສູ່ລະບົບເພື່ອເຂົ້າສູ່ຫນ້ານີ້,
 You need to enable Shopping Cart,ທ່ານຕ້ອງການເພື່ອເຮັດໃຫ້ໂຄງຮ່າງການຊື້,
 You will lose records of previously generated invoices. Are you sure you want to restart this subscription?,ທ່ານຈະສູນເສຍບັນທຶກບັນຊີຂອງໃບບິນສ້າງທີ່ຜ່ານມາ. ທ່ານແນ່ໃຈວ່າທ່ານຕ້ອງການເລີ່ມຕົ້ນການສະຫມັກນີ້ຄືນໃຫມ່ບໍ?,
 Your Organization,ອົງການຈັດຕັ້ງຂອງທ່ານ,
@@ -3218,7 +3172,6 @@
 Assigned To,ການມອບຫມາຍໃຫ້,
 Chat,ສົນທະນາ,
 Completed By,Completed By,
-County,county,
 Day of Week,ມື້ຂອງອາທິດ,
 "Dear System Manager,","ຮັກ System Manager,",
 Default Value,ຄ່າເລີ່ມຕົ້ນ,
@@ -3229,31 +3182,21 @@
 Fieldtype,Fieldtype,
 Help Articles,ບົດຄວາມການຊ່ວຍເຫຼືອ,
 ID,ID,
-Images,ຮູບພາບ,
 Import,ການນໍາເຂົ້າ,
 Language,ພາສາ,
 Likes,ເຊັ່ນດຽວກັນ,
 Merge with existing,merge ກັບທີ່ມີຢູ່ແລ້ວ,
-Office,ຫ້ອງການ,
 Orientation,ປະຖົມນິເທດ,
 Parent,ພໍ່ແມ່,
-Passive,ຕົວຕັ້ງຕົວຕີ,
 Payment Failed,ການຊໍາລະເງິນບໍ່ສາມາດ,
-Permanent,ຖາວອນ,
 Personal,ສ່ວນບຸກຄົນ,
-Plant,ພືດ,
 Post,Post,
-Postal,ໄປສະນີ,
 Postal Code,ລະຫັດໄປສະນີ,
-Previous,ທີ່ຜ່ານມາ,
 Provider,ຜູ້ໃຫ້ບໍລິການ,
 Read Only,ອ່ານຢ່າງດຽວ,
 Recipient,ຜູ້ຮັບ,
 Reviews,ການທົບທວນຄືນ,
 Sender,ຜູ້ສົ່ງ,
-Shop,ບໍລິການຜ່ານ,
-Subsidiary,ບໍລິສັດຍ່ອຍ,
-There is some problem with the file url: {0},ມີບັນຫາບາງຢ່າງກັບ url ໄຟລ໌ແມ່ນ: {0},
 There were errors while sending email. Please try again.,ມີຄວາມຜິດພາດໃນຂະນະທີ່ການສົ່ງອີເມວໄດ້. ກະລຸນາພະຍາຍາມອີກເທື່ອຫນຶ່ງ.,
 Values Changed,ຄຸນຄ່າການປ່ຽນແປງ,
 or,ຫຼື,
@@ -3280,19 +3223,16 @@
 Quality Feedback Template,ແມ່ແບບ ຄຳ ຕິຊົມຄຸນນະພາບ,
 Rules for applying different promotional schemes.,ກົດລະບຽບໃນການ ນຳ ໃຊ້ແຜນການໂຄສະນາທີ່ແຕກຕ່າງກັນ.,
 Show {0},ສະແດງ {0},
-"Special Characters except '-', '#', '.', '/', '{{' and '}}' not allowed in naming series {0}","ຕົວລະຄອນພິເສດຍົກເວັ້ນ &quot;-&quot;, &quot;#&quot;, &quot;.&quot;, &quot;/&quot;, &quot;{{&quot; ແລະ &quot;}}&quot; ບໍ່ໄດ້ຖືກອະນຸຍາດໃນຊຸດຊື່ {0}",
 Target Details,ລາຍລະອຽດເປົ້າ ໝາຍ,
 {0} already has a Parent Procedure {1}.,{0} ມີຂັ້ນຕອນການເປັນພໍ່ແມ່ {1} ແລ້ວ.,
 API,API,
 Annual,ປະຈໍາປີ,
 Change,ການປ່ຽນແປງ,
 Contact Email,ການຕິດຕໍ່,
-Export Type,ປະເພດການສົ່ງອອກ,
 From Date,ຈາກວັນທີ່,
 Group By,ກຸ່ມໂດຍ,
 Invalid URL,URL ບໍ່ຖືກຕ້ອງ,
 Landscape,ພູມສັນຖານ,
-Last Sync On,Last Sync On,
 Naming Series,ການຕັ້ງຊື່ Series,
 No data to export,ບໍ່ມີຂໍ້ມູນທີ່ຈະສົ່ງອອກ,
 Portrait,ຮູບຄົນ,
@@ -3302,7 +3242,6 @@
 Show Document,ສະແດງເອກະສານ,
 Show Traceback,ສະແດງ Traceback,
 Video,ວິດີໂອ,
-Webhook Secret,Webhook ລັບ,
 % Of Grand Total,% ຂອງ Grand Total,
 <b>Company</b> is a mandatory filter.,<b>ບໍລິສັດ</b> ແມ່ນຕົວກອງທີ່ ຈຳ ເປັນ.,
 <b>From Date</b> is a mandatory filter.,<b>ຈາກວັນທີ</b> ແມ່ນຕົວກອງບັງຄັບ.,
@@ -3358,7 +3297,6 @@
 BOM Comparison Tool,ເຄື່ອງມືປຽບທຽບ BOM,
 BOM recursion: {0} cannot be child of {1},ການເອີ້ນຄືນ BOM: {0} ບໍ່ສາມາດເປັນລູກຂອງ {1},
 BOM recursion: {0} cannot be parent or child of {1},ການເອີ້ນຄືນ BOM: {0} ບໍ່ສາມາດເປັນພໍ່ແມ່ຫລືລູກຂອງ {1},
-Back to Home,ກັບຄືນບ້ານ,
 Back to Messages,ກັບໄປທີ່ຂໍ້ຄວາມ,
 Bank Data mapper doesn't exist,ຜູ້ສ້າງແຜນທີ່ຂໍ້ມູນຂອງທະນາຄານບໍ່ມີ,
 Bank Details,ລາຍລະອຽດຂອງທະນາຄານ,
@@ -3420,7 +3358,6 @@
 Currency,ສະກຸນເງິນ,
 Current Status,ສະຖານະພາບໃນປັດຈຸບັນ,
 Customer PO,ຕູ້ໄປສະນີລູກຄ້າ,
-Customize,ປັບ,
 Daily,ປະຈໍາວັນ,
 Date,ວັນທີ່ສະຫມັກ,
 Date of Birth cannot be greater than Joining Date.,ວັນເດືອນປີເກີດບໍ່ສາມາດໃຫຍ່ກວ່າວັນເຂົ້າຮ່ວມ.,
@@ -3454,7 +3391,6 @@
 ERPNext could not find any matching payment entry,ERPNext ບໍ່ສາມາດຊອກຫາລາຍການການຈ່າຍເງິນທີ່ກົງກັນ,
 Earliest Age,ອາຍຸກ່ອນ,
 Edit Details,ແກ້ໄຂລາຍລະອຽດ,
-Edit Profile,ດັດແກ້ຂໍ້ມູນ,
 Either GST Transporter ID or Vehicle No is required if Mode of Transport is Road,ບໍ່ ຈຳ ເປັນຕ້ອງມີບັດປະ ຈຳ ຕົວຂອງການຂົນສົ່ງ GST ຫລືພາຫະນະຖ້າວ່າຮູບແບບການຂົນສົ່ງເປັນທາງ,
 Email,ອີເມລ,
 Email Campaigns,ການໂຄສະນາທາງອີເມວ,
@@ -3482,7 +3418,6 @@
 Fetch Items from Warehouse,ເກັບເອົາສິ່ງຂອງຈາກສາງ,
 Fetching...,ກຳ ລັງດຶງ ...,
 Field,ພາກສະຫນາມ,
-File Manager,ຈັດການໄຟລ໌,
 Filters,ການກັ່ນຕອງ,
 Finding linked payments,ຊອກຫາການຈ່າຍເງິນທີ່ເຊື່ອມໂຍງ,
 Fleet Management,ການຈັດການ Fleet,
@@ -3521,7 +3456,6 @@
 Incorrect Warehouse,ສາງທີ່ບໍ່ຖືກຕ້ອງ,
 Invalid Barcode. There is no Item attached to this barcode.,ລະຫັດບາໂຄດບໍ່ຖືກຕ້ອງ. ມັນບໍ່ມີລາຍການທີ່ຕິດກັບລະຫັດນີ້.,
 Invalid credentials,ຂໍ້ມູນປະ ຈຳ ບໍ່ຖືກຕ້ອງ,
-Invite as User,ເຊີນມາເປັນຜູ້ໃຊ້,
 Issue Priority.,ບຸລິມະສິດອອກ.,
 Issue Type.,ປະເພດອອກ.,
 "It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","ມັນເບິ່ງຄືວ່າມີບັນຫາກັບການກໍານົດເສັ້ນດ່າງຂອງເຄື່ອງແມ່ຂ່າຍ. ໃນກໍລະນີຂອງຄວາມລົ້ມເຫຼວ, ຈໍານວນເງິນຈະໄດ້ຮັບການຊໍາລະກັບບັນຊີຂອງທ່ານ.",
@@ -3564,7 +3498,6 @@
 New Invoice,ໃບເກັບເງິນ ໃໝ່,
 New Payment,ການຈ່າຍເງິນ ໃໝ່,
 New release date should be in the future,ວັນປ່ອຍລຸ້ນ ໃໝ່ ຄວນຈະເປັນໃນອະນາຄົດ,
-Newsletter,ຈົດຫມາຍຂ່າວ,
 No Account matched these filters: {},ບໍ່ມີບັນຊີໃດທີ່ກົງກັບຕົວກອງເຫຼົ່ານີ້: {},
 No communication found.,ບໍ່ພົບການສື່ສານ.,
 No correct answer is set for {0},ບໍ່ມີ ຄຳ ຕອບທີ່ຖືກຕ້ອງ ສຳ ລັບ {0},
@@ -3640,7 +3573,6 @@
 Please setup a default bank account for company {0},ກະລຸນາຕັ້ງຄ່າບັນຊີທະນາຄານທີ່ບໍ່ຖືກຕ້ອງ ສຳ ລັບບໍລິສັດ {0},
 Please specify,ກະລຸນາລະບຸ,
 Please specify a {0},ກະລຸນາລະບຸ {0},lead
-Printing,ການພິມ,
 Priority,ບູລິມະສິດ,
 Priority has been changed to {0}.,ບຸລິມະສິດໄດ້ຖືກປ່ຽນເປັນ {0}.,
 Priority {0} has been repeated.,ບຸລິມະສິດ {0} ໄດ້ຖືກເຮັດຊ້ ຳ ແລ້ວ.,
@@ -3649,7 +3581,6 @@
 Project,ໂຄງການ,
 Provide the academic year and set the starting and ending date.,ໃຫ້ສົກຮຽນແລະ ກຳ ນົດວັນເລີ່ມຕົ້ນແລະວັນສິ້ນສຸດ.,
 Public token is missing for this bank,ຫາຍສາບສູນສາທາລະນະຫາຍ ສຳ ລັບທະນາຄານນີ້,
-Publish,ເຜີຍແຜ່,
 Publish 1 Item,ເຜີຍແຜ່ 1 ລາຍການ,
 Publish Items,ເຜີຍແຜ່ລາຍການ,
 Publish More Items,ເຜີຍແຜ່ລາຍການເພີ່ມເຕີມ,
@@ -3677,7 +3608,6 @@
 Reconciled,ການຄືນດີ,
 Recruitment,ການທົດແທນທີ່,
 Red,ສີແດງ,
-Refreshing,ເຮັດໃຫ້ສົດຊື່ນ,
 Release date must be in the future,ວັນທີປ່ອຍຕ້ອງຢູ່ໃນອະນາຄົດ,
 Relieving Date must be greater than or equal to Date of Joining,ວັນທີຜ່ອນຄາຍຕ້ອງມີຂະ ໜາດ ໃຫຍ່ກວ່າຫຼືເທົ່າກັບວັນເຂົ້າຮ່ວມ,
 Rename,ປ່ຽນຊື່,
@@ -3721,7 +3651,6 @@
 Search for a payment,ຊອກຫາການຈ່າຍເງິນ,
 Search for anything ...,ຊອກຫາຫຍັງ ...,
 Search results for,ຜົນການຄົ້ນຫາສໍາລັບ,
-Select All,ເລືອກທັງຫມົດ,
 Select Difference Account,ເລືອກບັນຊີຄວາມແຕກຕ່າງ,
 Select a Default Priority.,ເລືອກບູລິມະສິດ Default.,
 Select a company,ເລືອກບໍລິສັດ,
@@ -3740,11 +3669,9 @@
 Service Level Agreement has been changed to {0}.,ຂໍ້ຕົກລົງລະດັບການບໍລິການໄດ້ຖືກປ່ຽນເປັນ {0}.,
 Service Level Agreement was reset.,ຂໍ້ຕົກລົງລະດັບການບໍລິການຖືກຕັ້ງ ໃໝ່.,
 Service Level Agreement with Entity Type {0} and Entity {1} already exists.,ຂໍ້ຕົກລົງລະດັບການບໍລິການກັບປະເພດຫົວ ໜ່ວຍ {0} ແລະ ໜ່ວຍ ງານ {1} ມີຢູ່ແລ້ວ.,
-Set,ທີ່ກໍານົດໄວ້,
 Set Meta Tags,ຕັ້ງແທັກ Meta,
 Set {0} in company {1},ຕັ້ງຄ່າ {0} ໃນບໍລິສັດ {1},
 Setup,ຕັ້ງຄ່າ,
-Setup Wizard,ຂອງຄວາມຍາວປາ setup,
 Shift Management,Shift Management,
 Show Future Payments,ສະແດງການຈ່າຍເງິນໃນອະນາຄົດ,
 Show Linked Delivery Notes,ສະແດງບັນທຶກການສົ່ງທີ່ເຊື່ອມໂຍງ,
@@ -3815,7 +3742,6 @@
 Unreconciled,ບໍ່ສົມເຫດສົມຜົນ,
 Unsupported GST Category for E-Way Bill JSON generation,ໝວດ GST ທີ່ບໍ່ໄດ້ຮັບການສະ ໜັບ ສະ ໜູນ ສຳ ລັບການຜະລິດ e-Way Bill JSON,
 Update,ການປັບປຸງ,
-Update Details,ລາຍລະອຽດປັບປຸງ,
 Update Taxes for Items,ປັບປຸງພາສີ ສຳ ລັບສິນຄ້າຕ່າງໆ,
 "Upload a bank statement, link or reconcile a bank account","ອັບໂຫລດໃບແຈ້ງການຂອງທະນາຄານ, ເຊື່ອມໂຍງຫລືເຊື່ອມໂຍງບັນຊີທະນາຄານ",
 Upload a statement,ອັບລົງຖະແຫຼງການ,
@@ -3839,7 +3765,6 @@
 XML Files Processed,ການເຮັດວຽກຂອງເອກະສານ XML,
 Year,ປີ,
 Yearly,ປະຈໍາປີ,
-You,ທ່ານ,
 You are not allowed to enroll for this course,ເຈົ້າຍັງບໍ່ໄດ້ຮັບອະນຸຍາດໃຫ້ລົງທະບຽນສໍາລັບວິຊານີ້,
 You are not enrolled in program {0},ເຈົ້າຍັງບໍ່ໄດ້ລົງທະບຽນເຂົ້າຮ່ວມໃນໂຄງການ {0},
 You can Feature upto 8 items.,ທ່ານສາມາດ Feature Upto 8 item ໄດ້.,
@@ -3856,7 +3781,6 @@
 e-Way Bill already exists for this document,e-Way Bill ມີຢູ່ແລ້ວ ສຳ ລັບເອກະສານນີ້,
 woocommerce - {0},woocommerce - {0},
 {0} Coupon used are {1}. Allowed quantity is exhausted,{0} ຄູປອງທີ່ໃຊ້ແມ່ນ {1}. ປະລິມານທີ່ອະນຸຍາດ ໝົດ ແລ້ວ,
-{0} Name,{0} ຊື່,
 {0} Operations: {1},{0} ການ ດຳ ເນີນງານ: {1},
 {0} bank transaction(s) created,{0} ການເຮັດທຸລະ ກຳ ຂອງທະນາຄານສ້າງຂື້ນ,
 {0} bank transaction(s) created and {1} errors,{0} ການເຮັດທຸລະ ກຳ ຂອງທະນາຄານສ້າງຂື້ນແລະ {1} ຂໍ້ຜິດພາດ,
@@ -3875,17 +3799,13 @@
 Total Income,ລາຍໄດ້ທັງ ໝົດ,
 Total Income This Year,ລາຍໄດ້ທັງ ໝົດ ໃນປີນີ້,
 Barcode,ບາໂຄດ,
-Bold,ກ້າຫານ,
-Center,Center,
 Clear,ແຈ້ງ,
-Comment,ຄຳ ເຫັນ,
 Comments,ຄວາມຄິດເຫັນ,
 DocType,DocType,
 Download,ດາວໂຫລດ,
 Left,ໄວ້,
 Link,ການເຊື່ອມຕໍ່,
 New,ໃຫມ່,
-Not Found,ບໍ່ພົບ,
 Print,ພິມ,
 Reference Name,ຊື່ເອກະສານອ້າງອີງ,
 Refresh,ໂຫຼດຫນ້າຈໍຄືນ,
@@ -3908,7 +3828,6 @@
 Email Id,ID Email,
 No,ບໍ່ມີ,
 Reference Doctype,DocType ກະສານອ້າງອີງ,
-User Id,User ID,
 Yes,Yes,
 Actual ,ທີ່ແທ້ຈິງ,
 Add to cart,ຕື່ມການກັບໂຄງຮ່າງການ,
@@ -4304,7 +4223,6 @@
 e.g Adjustments for:,ຕົວຢ່າງ: ການປັບສໍາລັບ:,
 Section Subtotal,Subtotal Section,
 Section Footer,Footer Footer,
-Position,ຕໍາແຫນ່ງ,
 Cash Flow Mapping,Cash Flow Mapping,
 Select Maximum Of 1,ເລືອກຈໍານວນສູງສຸດ 1,
 Is Finance Cost,ແມ່ນຄ່າໃຊ້ຈ່າຍດ້ານການເງິນ,
@@ -4936,7 +4854,6 @@
 Previous Business Day,ວັນທຸລະກິດຜ່ານມາ,
 Next Business Day,ວັນເຮັດວຽກຕໍ່ໄປ,
 Urgent,ການອັນຮີບດ່ວນ,
-Crop,ການປູກພືດ,
 Crop Name,ຊື່ພືດ,
 Scientific Name,ຊື່ວິທະຍາສາດ,
 "You can define all the tasks which need to carried out for this crop here. The day field is used to mention the day on which the task needs to be carried out, 1 being the 1st day, etc.. ","ທ່ານສາມາດກໍານົດຫນ້າວຽກທັງຫມົດທີ່ຕ້ອງດໍາເນີນການສໍາລັບການປູກພືດນີ້ທີ່ນີ້. ພາກສະຫນາມມື້ແມ່ນໃຊ້ໃນການເວົ້າເຖິງມື້ທີ່ວຽກງານຕ້ອງໄດ້ດໍາເນີນການ, 1 ເປັນມື້ທີ 1, ແລະອື່ນໆ.",
@@ -5441,7 +5358,6 @@
 To TIme,ການທີ່ໃຊ້ເວລາ,
 Course End Date,ແນ່ນອນວັນທີ່ສິ້ນສຸດ,
 Course Topic,ຫົວຂໍ້ຫລັກສູດ,
-Topic,ກະທູ້,
 Topic Name,ຊື່ກະທູ້,
 Education Settings,ການສຶກສາການສຶກສາ,
 Current Academic Year,ປີທາງວິຊາການໃນປະຈຸບັນ,
@@ -5516,7 +5432,6 @@
 Check this if the Student is residing at the Institute's Hostel.,ກວດສອບນີ້ຖ້າຫາກວ່ານັກສຶກສາໄດ້ອາໄສຢູ່ໃນ Hostel ສະຖາບັນຂອງ.,
 Walking,ຍ່າງ,
 Institute's Bus,ລົດເມຂອງສະຖາບັນ,
-Public Transport,ການຂົນສົ່ງສາທາລະນະ,
 Self-Driving Vehicle,ຍານພາຫະນະຂອງຕົນເອງຂັບລົດ,
 Pick/Drop by Guardian,ເອົາ / Drop ໂດຍຜູ້ປົກຄອງ,
 Enrolled courses,ຫລັກສູດທີ່ລົງທະບຽນ,
@@ -5697,7 +5612,6 @@
 Default Cost Center,ສູນຕົ້ນທຶນມາດຕະຖານ,
 Undeposited Funds Account,ບັນຊີເງິນຝາກທີ່ບໍ່ໄດ້ຮັບຄືນ,
 Shopify Log,Shopify Log,
-Request Data,Request Data,
 Shopify Settings,Shopify Settings,
 status html,html ສະຖານະພາບ,
 Enable Shopify,ເປີດໃຊ້ Shopify,
@@ -5817,7 +5731,6 @@
 Exercise Instructions,ຄຳ ແນະ ນຳ ກ່ຽວກັບການອອກ ກຳ ລັງກາຍ,
 Exercise Video,ວິດີໂອອອກ ກຳ ລັງກາຍ,
 Exercise Steps,ຂັ້ນຕອນອອກ ກຳ ລັງກາຍ,
-Steps,ຂັ້ນຕອນ,
 Steps Table,ຕາຕະລາງຂັ້ນຕອນ,
 Exercise Type Step,ປະເພດອອກ ກຳ ລັງກາຍຂັ້ນຕອນ,
 Max number of visit,ຈໍານວນການຢ້ຽມຢາມສູງສຸດ,
@@ -6001,7 +5914,6 @@
 Patient Encounter Symptom,ອາການຂອງຄົນເຈັບ,
 HLC-PMR-.YYYY.-,HLC-PMR-YYYY.-,
 Attach Medical Record,ຕິດຄັດບັນທຶກທາງການແພດ,
-Reference DocType,ເອກະສານອ້າງອີງ DocType,
 Spouse,ຄູ່ສົມລົດ,
 Family,ຄອບຄົວ,
 Schedule Details,ລາຍລະອຽດຕາຕະລາງ,
@@ -6983,16 +6895,8 @@
 HTML / Banner that will show on the top of product list.,HTML / ປ້າຍໂຄສະນາທີ່ຈະສະແດງໃຫ້ເຫັນກ່ຽວກັບການເທິງຂອງບັນຊີລາຍຊື່ຜະລິດຕະພັນ.,
 Set prefix for numbering series on your transactions,ຕັ້ງຄໍານໍາຫນ້າສໍາລັບການຈໍານວນໄລຍະກ່ຽວກັບການໂອນຂອງທ່ານ,
 Setup Series,Series ຕິດຕັ້ງ,
-Select Transaction,ເລືອກເຮັດທຸລະກໍາ,
-Help HTML,ການຊ່ວຍເຫຼືອ HTML,
-Series List for this Transaction,ບັນຊີໄລຍະສໍາລັບການນີ້,
-User must always select,ຜູ້ໃຊ້ຕ້ອງໄດ້ເລືອກ,
-Check this if you want to force the user to select a series before saving. There will be no default if you check this.,ກວດສອບການຖ້າຫາກວ່າທ່ານຕ້ອງການທີ່ຈະບັງຄັບໃຫ້ຜູ້ໃຊ້ສາມາດເລືອກໄລຍະກ່ອນທີ່ຈະປະຢັດ. ຈະມີບໍ່ມີມາດຕະຖານຖ້າຫາກວ່າທ່ານກວດສອບນີ້.,
 Update Series,ການປັບປຸງ Series,
 Change the starting / current sequence number of an existing series.,ການປ່ຽນແປງ / ຈໍານວນລໍາດັບການເລີ່ມຕົ້ນໃນປັດຈຸບັນຂອງໄລຍະການທີ່ມີຢູ່ແລ້ວ.,
-Prefix,ຄໍານໍາຫນ້າ,
-This is the number of the last created transaction with this prefix,ນີ້ແມ່ນຈໍານວນຂອງການສ້າງຕັ້ງຂື້ນໃນທີ່ຜ່ານມາມີຄໍານໍາຫນ້ານີ້,
-Update Series Number,ຈໍານວນ Series ປັບປຸງ,
 Quotation Lost Reason,ວົງຢືມລືມເຫດຜົນ,
 A third party distributor / dealer / commission agent / affiliate / reseller who sells the companies products for a commission.,A ຈໍາຫນ່າຍພາກສ່ວນທີສາມ / dealer / ຄະນະກໍາມະຕົວແທນ / ເປັນພີ່ນ້ອງກັນ / ຕົວແທນຈໍາຫນ່າຍຜູ້ທີ່ຂາຍໃນລາຄາຜະລິດຕະພັນບໍລິສັດສໍາລັບຄະນະກໍາມະ.,
 Sales Partner Name,ຊື່ Partner ຂາຍ,
@@ -7687,7 +7591,6 @@
 Warehouse wise Item Balance Age and Value,ອາຍຸສະເລ່ຍຂອງສິນຄ້າແລະມູນຄ່າຂອງສິນຄ້າຄັງສິນຄ້າ,
 Work Order Stock Report,ລາຍວຽກການສັ່ງຊື້ສິນຄ້າ,
 Work Orders in Progress,ຄໍາສັ່ງເຮັດວຽກໃນຄວາມຄືບຫນ້າ,
-Validation Error,ຄວາມຜິດພາດການກວດສອບຄວາມຖືກຕ້ອງ,
 Automatically Process Deferred Accounting Entry,ປະຕິບັດການອັດຕະໂນມັດການບັນຊີການໂອນເງິນເຂົ້າ,
 Bank Clearance,ການເກັບກູ້ທະນາຄານ,
 Bank Clearance Detail,ລາຍລະອຽດກ່ຽວກັບການເກັບກູ້ຂອງທະນາຄານ,
@@ -7724,45 +7627,7 @@
 Therapy Plan: ,ແຜນການປິ່ນປົວ:,
 Total Counts Targeted: ,ຈຳ ນວນທັງ ໝົດ,
 Total Counts Completed: ,ຈຳ ນວນທັງ ໝົດ ສຳ ເລັດ:,
-Andaman and Nicobar Islands,ໝູ່ ເກາະອັນດາມັນແລະນິກາບາ,
-Andhra Pradesh,Andhra Pradesh,
-Arunachal Pradesh,Arunachal Pradesh,
-Assam,ແອດ,
-Bihar,ບີຮີ,
-Chandigarh,Chandigarh,
-Chhattisgarh,Chhattisgarh,
-Dadra and Nagar Haveli,ດາຣາແລະ Nagar Haveli,
-Daman and Diu,Daman ແລະ Diu,
-Delhi,ເດລີ,
-Goa,ໂກກາ,
-Gujarat,ກູກະ,
-Haryana,Haryana,
-Himachal Pradesh,Himachal Pradesh,
-Jammu and Kashmir,Jammu ແລະ Kashmir,
-Jharkhand,ຈາແຈັກ,
-Karnataka,ແຄນທາຕາກາ,
-Kerala,ເຄລາລາ,
-Lakshadweep Islands,ເກາະ Lakshadweep,
-Madhya Pradesh,Madhya Pradesh,
-Maharashtra,ມະຫາຣາຊ,
-Manipur,ມະນີພອນ,
-Meghalaya,ເມກາເລຢາ,
-Mizoram,Mizoram,
-Nagaland,ນາກາແລນ,
-Odisha,Odisha,
-Other Territory,ອານາເຂດອື່ນໆ,
-Pondicherry,ໂຮງ ໝໍ ເສດຖາທິລາດ,
-Punjab,ປັນຈາບ,
-Rajasthan,ລາດຊາ,
-Sikkim,ສີເຄິມ,
-Tamil Nadu,Tamil Nadu,
-Telangana,Telangana,
-Tripura,Tripura,
-Uttar Pradesh,ອຸທຸມພອນ,
-Uttarakhand,ອຸທທາຄາ,
-West Bengal,West Bengal,
 Is Mandatory,ແມ່ນບັງຄັບ,
-Published on,ເຜີຍແຜ່ເມື່ອ,
 Service Received But Not Billed,ບໍລິການໄດ້ຮັບແຕ່ບໍ່ໄດ້ເກັບເງິນ,
 Deferred Accounting Settings,ການຕັ້ງຄ່າບັນຊີທີ່ຍອມຮັບ,
 Book Deferred Entries Based On,ການເຂົ້າປື້ມທີ່ອີງໃສ່,
@@ -8035,8 +7900,6 @@
 Worksheet Instructions,ຄຳ ແນະ ນຳ ກ່ຽວກັບແຜ່ນເຮັດວຽກ,
 Result Legend Print,ຜົນການພິມຄວາມ ໝາຍ ພິມ,
 Print Position,ຕຳ ແໜ່ງ ພິມ,
-Bottom,ດ້ານລຸ່ມ,
-Top,ທາງເທີງ,
 Both,ທັງສອງ,
 Result Legend,ຄວາມຫມາຍຜົນໄດ້ຮັບ,
 Lab Tests,ທົດລອງຫ້ອງທົດລອງ,
@@ -8081,12 +7944,10 @@
 Approvers,ຄວາມເປັນຫ່ວງ,
 The first Approver in the list will be set as the default Approver.,The Approver ຄັ້ງ ທຳ ອິດໃນລາຍຊື່ຈະຖືກຕັ້ງເປັນຄ່າເລີ່ມຕົ້ນຂອງ Approver.,
 Shift Request Approver,ການຂໍວິທີການປ່ຽນ,
-PAN Number,ເລກ PAN,
 Provident Fund Account,ບັນຊີກອງທຶນຜູ້ໃຫ້ບໍລິການ,
 MICR Code,ລະຫັດ MICR,
 Repay unclaimed amount from salary,ຈ່າຍຄືນ ຈຳ ນວນທີ່ບໍ່ໄດ້ຮັບຈາກເງິນເດືອນ,
 Deduction from salary,ການຫັກລົບຈາກເງິນເດືອນ,
-Expired Leaves,ໃບ ໝົດ ອາຍຸ,
 If this is not checked the loan by default will be considered as a Demand Loan,ຖ້າສິ່ງນີ້ບໍ່ຖືກກວດກາເງິນກູ້ໂດຍຄ່າເລີ່ມຕົ້ນຈະຖືກພິຈາລະນາເປັນເງິນກູ້ຕາມຄວາມຕ້ອງການ,
 This account is used for booking loan repayments from the borrower and also disbursing loans to the borrower,ບັນຊີນີ້ໃຊ້ເພື່ອຈອງການຈ່າຍຄືນເງິນກູ້ຈາກຜູ້ກູ້ຢືມແລະຍັງຈ່າຍເງິນກູ້ໃຫ້ຜູ້ກູ້ຢືມອີກດ້ວຍ,
 This account is capital account which is used to allocate capital for loan disbursal account ,ບັນຊີນີ້ແມ່ນບັນຊີທຶນເຊິ່ງຖືກ ນຳ ໃຊ້ເພື່ອຈັດສັນທຶນ ສຳ ລັບບັນຊີການເບີກຈ່າຍເງິນກູ້,
@@ -8844,3 +8705,41 @@
 Creating Purchase Order ...,ການສ້າງໃບສັ່ງຊື້ ...,
 "Select a Supplier from the Default Suppliers of the items below. On selection, a Purchase Order will be made against items belonging to the selected Supplier only.","ເລືອກຜູ້ສະ ໜອງ ສິນຄ້າຈາກຜູ້ສະ ໜອງ ສິນຄ້າເລີ່ມຕົ້ນຂອງລາຍການຂ້າງລຸ່ມນີ້. ໃນການເລືອກ, ຄຳ ສັ່ງຊື້ສິນຄ້າຈະຖືກຕໍ່ຕ້ານກັບສິນຄ້າທີ່ເປັນຂອງຜູ້ສະ ໜອງ ທີ່ຖືກຄັດເລືອກເທົ່ານັ້ນ.",
 Row #{}: You must select {} serial numbers for item {}.,ແຖວ # {}: ທ່ານຕ້ອງເລືອກ {} ເລກ ລຳ ດັບ ສຳ ລັບລາຍການ {}.,
+Add Comment,ຕື່ມການຄໍາເຫັນ,
+More...,ເພີ່ມເຕີມ ...,
+Notes,ອ່ືນ,
+Payment Gateway,Gateway ຊໍາລະເງິນ,
+Payment Gateway Name,Name Payment Gateway,
+Payments,ການຊໍາລະເງິນ,
+Plan Name,ຊື່ແຜນການ,
+Portal,ສະບັບພິມໄດ້,
+Scan Barcode,ສະແກນບາໂຄດ,
+Some information is missing,ຂໍ້ມູນບາງຢ່າງທີ່ຂາດຫາຍໄປ,
+Successful,ປະສົບຜົນສໍາເລັດ,
+Tools,ເຄື່ອງມື,
+Use Sandbox,ການນໍາໃຊ້ Sandbox,
+Busy,ຄາວຽກ,
+Completed By,Completed By,
+Payment Failed,ການຊໍາລະເງິນບໍ່ສາມາດ,
+Column {0},ຖັນ {0},
+Field Mapping,ການສ້າງແຜນທີ່ພາກສະ ໜາມ,
+Not Specified,ບໍ່ໄດ້ລະບຸ,
+Update Type,ປະເພດການປັບປຸງ,
+Dr,Dr,
+End Time,ທີ່ໃຊ້ເວລາສຸດທ້າຍ,
+Fetching...,ກຳ ລັງດຶງ ...,
+"It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","ມັນເບິ່ງຄືວ່າມີບັນຫາກັບການກໍານົດເສັ້ນດ່າງຂອງເຄື່ອງແມ່ຂ່າຍ. ໃນກໍລະນີຂອງຄວາມລົ້ມເຫຼວ, ຈໍານວນເງິນຈະໄດ້ຮັບການຊໍາລະກັບບັນຊີຂອງທ່ານ.",
+Looks like someone sent you to an incomplete URL. Please ask them to look into it.,ເບິ່ງຄືວ່າຜູ້ໃດຜູ້ຫນຶ່ງຖືກສົ່ງໄປໃຫ້ທ່ານເປັນ URL ທີ່ບໍ່ຄົບຖ້ວນ. ກະລຸນາບອກໃຫ້ເຂົາເຈົ້າເບິ່ງເຂົ້າໄປໃນມັນ.,
+Master,ໂທ,
+Pay,ຈ່າຍ,
+You can also copy-paste this link in your browser,"ນອກນັ້ນທ່ານຍັງສາມາດສໍາເນົາ, ວາງການເຊື່ອມຕໍ່ນີ້ຢູ່ໃນຕົວທ່ອງເວັບຂອງທ່ານ",
+Verified By,ການຢັ້ງຢືນໂດຍ,
+Invalid naming series (. missing) for {0},ຊຸດການຕັ້ງຊື່ທີ່ບໍ່ຖືກຕ້ອງ (. ຫາຍໄປ) ສຳ ລັບ {0},
+Phone Number,ເບີໂທລະສັບ,
+Account SID,ບັນຊີ SID,
+Global Defaults,ຄ່າເລີ່ມຕົ້ນຂອງໂລກ,
+Is Mandatory,ແມ່ນບັງຄັບ,
+WhatsApp,WhatsApp,
+Make a call,ໂທອອກ,
+Approve,ອະນຸມັດ,
+Reject,ປະຕິເສດ,
diff --git a/erpnext/translations/lt.csv b/erpnext/translations/lt.csv
index 66215c1..2c87256 100644
--- a/erpnext/translations/lt.csv
+++ b/erpnext/translations/lt.csv
@@ -113,7 +113,6 @@
 Add Items,Pridėti prekę,
 Add Leads,Pridėti sidabrą,
 Add Multiple Tasks,Pridėti kelis uždavinius,
-Add Row,Pridėti Row,
 Add Sales Partners,Pridėkite pardavimo partnerių,
 Add Serial No,Pridėti Serijos Nr,
 Add Students,Pridėti Studentai,
@@ -211,9 +210,7 @@
 An error occurred during the update process,Atnaujinimo proceso metu įvyko klaida,
 "An item exists with same name ({0}), please change the item group name or rename the item","Elementas egzistuoja to paties pavadinimo ({0}), prašome pakeisti elementą grupės pavadinimą ar pervardyti elementą",
 Analyst,Analitikas,
-Analytics,Google Analytics,
 Annual Billing: {0},Metinė Atsiskaitymo: {0},
-Anonymous,Anoniminis,
 Another Budget record '{0}' already exists against {1} '{2}' and account '{3}' for fiscal year {4},Kitas biudžetinis įrašas „{0}“ jau egzistuoja {1} „{2}“ ir sąskaita „{3}“ už {4} fiskalinius metus,
 Another Period Closing Entry {0} has been made after {1},Kitas Laikotarpis uždarymas Įėjimas {0} buvo padaryta po {1},
 Another Sales Person {0} exists with the same Employee id,Kitas pardavimų asmuo {0} egzistuoja su tuo pačiu Darbuotojo ID,
@@ -283,14 +280,12 @@
 Attendance not submitted for {0} as {1} on leave.,Lankymas neatsiunčiamas {0} kaip {1} atostogų metu.,
 Attribute table is mandatory,Įgūdis lentelė yra privalomi,
 Attribute {0} selected multiple times in Attributes Table,Įgūdis {0} pasirinktas kelis kartus požymiai lentelėje,
-Author,autorius,
 Authorized Signatory,Įgaliotas signataras,
 Auto Material Requests Generated,Auto Medžiaga Prašymai Sugeneruoti,
 Auto Repeat,Automatinis kartojimas,
 Auto repeat document updated,Auto pakartotinis dokumentas atnaujintas,
 Automotive,Automobiliai,
 Available,pasiekiamas,
-Available Leaves,Galimos lapai,
 Available Qty,Turimas Kiekis,
 Available Selling,Galima parduoti,
 Available for use date is required,Reikia naudoti datą,
@@ -340,7 +335,6 @@
 Base URL,Bazinis URL,
 Based On,remiantis,
 Based On Payment Terms,Pagal mokėjimo sąlygas,
-Basic,pagrindinis,
 Batch,Partija,
 Batch Entries,Partijos įrašai,
 Batch ID is mandatory,Serija ID privalomi,
@@ -361,7 +355,6 @@
 Billable Hours,Apmokestinamos valandos,
 Billed,įvardintas,
 Billed Amount,įvardintas suma,
-Billing,atsiskaitymo,
 Billing Address,Atsiskaitymo adresas,
 Billing Address is same as Shipping Address,Atsiskaitymo adresas sutampa su pristatymo adresu,
 Billing Amount,Atsiskaitymo suma,
@@ -560,7 +553,6 @@
 Consumed Qty,suvartoti Kiekis,
 Consumer Products,Vartotojų gaminiai,
 Contact,Kontaktinis asmuo,
-Contact Details,Kontaktiniai duomenys,
 Contact Us,Susisiekite su mumis,
 Content,Turinys,
 Content Masters,Turinio meistrai,
@@ -715,7 +707,6 @@
 Date of Joining,Data Prisijungimas,
 Date of Joining must be greater than Date of Birth,Stojant data turi būti didesnis nei gimimo data,
 Date of Transaction,Sandorio data,
-Datetime,datetime,
 Day,diena,
 Debit,Debetas,
 Debit ({0}),Debetas ({0}),
@@ -874,7 +865,6 @@
 Employee cannot report to himself.,Darbuotojas negali pranešti pats.,
 Employee {0} has already applied for {1} between {2} and {3} : ,Darbuotojas {0} jau pateikė paraišką {1} nuo {2} iki {3}:,
 Employee {0} of grade {1} have no default leave policy,{1} lygio {0} darbuotojas neturi numatytų atostogų politikos,
-Enable,įgalinti,
 Enable / disable currencies.,Įjungti / išjungti valiutas.,
 Enabled,Įjungtas,
 "Enabling 'Use for Shopping Cart', as Shopping Cart is enabled and there should be at least one Tax Rule for Shopping Cart","Įjungus &quot;Naudokite krepšelį&quot;, kaip Krepšelis yra įjungtas ir ten turėtų būti bent viena Mokesčių taisyklė krepšelį",
@@ -905,7 +895,6 @@
 Error: Not a valid id?,Klaida: Negaliojantis tapatybės?,
 Estimated Cost,Numatoma kaina,
 "Even if there are multiple Pricing Rules with highest priority, then following internal priorities are applied:","Net jei yra keli kainodaros taisyklės, kurių didžiausias prioritetas, tada šie vidiniai prioritetai taikomi:",
-Event,renginys,
 Exchange Gain/Loss,Valiutų Pelnas / nuostolis,
 Exchange Rate Revaluation master.,Valiutų kurso perkainojimo meistras.,
 Exchange Rate must be same as {0} {1} ({2}),"Valiutų kursai turi būti toks pat, kaip {0} {1} ({2})",
@@ -1032,7 +1021,6 @@
 From value must be less than to value in row {0},Nuo vertė turi būti mažesnė nei vertės eilės {0},
 From {0} | {1} {2},Iš {0} | {1} {2},
 Fulfillment,įvykdymas,
-Full,Visas,
 Full Name,Pilnas vardas,
 Fully Depreciated,visiškai nusidėvėjusi,
 Furnitures and Fixtures,Baldai ir Šviestuvai,
@@ -1133,7 +1121,6 @@
 Hub Sync ID,Hub Sync ID,
 Human Resource,Žmogiškasis išteklis,
 Human Resources,Žmogiškieji ištekliai,
-IFSC Code,IFSC kodas,
 IGST Amount,IGST suma,
 IP Address,IP adresas,
 ITC Available (whether in full op part),ITC yra prieinamas (ar visa jo dalis),
@@ -1185,7 +1172,6 @@
 Ineligible ITC,Netinkamas ITC,
 Initiated,inicijuotas,
 Inpatient Record,Stacionarus įrašas,
-Insert,Įdėti,
 Installation Note,Įrengimas Pastaba,
 Installation Note {0} has already been submitted,Įrengimas Pastaba {0} jau buvo pateikta,
 Installation date cannot be before delivery date for Item {0},Montavimo data gali būti ne anksčiau pristatymo datos punkte {0},
@@ -1197,7 +1183,6 @@
 Insurance Start date should be less than Insurance End date,Draudimo pradžios data turėtų būti ne mažesnė nei draudimo pabaigos data,
 Integrated Tax,Integruotas mokestis,
 Inter-State Supplies,Tarpvalstybiniai reikmenys,
-Interests,Pomėgiai,
 Internet Publishing,Interneto leidyba,
 Intra-State Supplies,Šalių vidaus atsargos,
 Introduction,Įvadas,
@@ -1316,7 +1301,6 @@
 Lab testing datetime cannot be before collection datetime,&quot;Lab test&quot; datatime negali būti prieš rinkimo datą,
 Label,Etiketė,
 Laboratory,Laboratorija,
-Language Name,Kalba Vardas,
 Large,Didelis,
 Last Communication,Paskutinis Bendravimas,
 Last Communication Date,Paskutinis Bendravimas data,
@@ -1347,8 +1331,6 @@
 Letter Heads for print templates.,Laiškas vadovai dėl spausdinimo šablonus.,
 Level,lygis,
 Liability,Atsakomybė,
-License,Licencija,
-Limit,riba,
 Limit Crossed,riba Crossed,
 Link to Material Request,Nuoroda į medžiagos prašymą,
 List of all share transactions,Visų akcijų sandorių sąrašas,
@@ -1359,7 +1341,6 @@
 Loans (Liabilities),Paskolos (įsipareigojimai),
 Loans and Advances (Assets),Paskolos ir avansai (turtas),
 Local,Vietinis,
-Log,Prisijungti,
 Logs for maintaining sms delivery status,Rąstai išlaikyti sms būsenos,
 Lost,Prarastas,
 Lost Reasons,Prarastos priežastys,
@@ -1445,7 +1426,6 @@
 Medical Department,Medicinos skyrius,
 Medical Record,Medicininis įrašas,
 Medium,vidutinis,
-Meeting,Susitikimas,
 Member Activity,Nario veikla,
 Member ID,Vartotojo ID,
 Member Name,Nario vardas,
@@ -1495,7 +1475,6 @@
 Multiple Variants,Keli variantai,
 Multiple fiscal years exist for the date {0}. Please set company in Fiscal Year,Keli fiskalinius metus egzistuoja datos {0}. Prašome nustatyti bendrovės finansiniams metams,
 Music,Muzika,
-My Account,Mano sąskaita,
 Name error: {0},Vardas klaida: {0},
 Name of new Account. Note: Please don't create accounts for Customers and Suppliers,Pavadinimas naują paskyrą. Pastaba: nekurkite sąskaitas klientai ir tiekėjai,
 Name or Email is mandatory,Vardas arba el privaloma,
@@ -1538,7 +1517,6 @@
 New credit limit is less than current outstanding amount for the customer. Credit limit has to be atleast {0},Nauja kredito limitas yra mažesnis nei dabartinio nesumokėtos sumos klientui. Kredito limitas turi būti atleast {0},
 New task,Nauja užduotis,
 New {0} pricing rules are created,Sukuriamos naujos {0} kainodaros taisyklės,
-Newsletters,Naujienų prenumerata,
 Newspaper Publishers,Laikraščių leidėjai,
 Next,Kitas,
 Next Contact By cannot be same as the Lead Email Address,"Kitas Susisiekti negali būti toks pat, kaip pagrindiniam pašto adresas",
@@ -1686,7 +1664,6 @@
 Other,kitas,
 Other Reports,Kiti pranešimai,
 "Other outward supplies(Nil rated,Exempted)","Kiti išoriniai reikmenys (nulinis, neapmokestinamas)",
-Others,Kiti,
 Out Qty,iš Kiekis,
 Out Value,iš Vertė,
 Out of Order,Neveikia,
@@ -1726,7 +1703,6 @@
 Party Type and Party is mandatory for {0} account,Šalies tipas ir šalis yra privalomi {0} sąskaitai,
 Party Type is mandatory,Šalis tipas yra privalomi,
 Party is mandatory,Šalis yra privalomi,
-Password,slaptažodis,
 Past Due Date,Praėjusi mokėjimo data,
 Patient,Pacientas,
 Patient Appointment,Paciento paskyrimas,
@@ -1784,7 +1760,6 @@
 Pharmaceutical,Farmacijos,
 Pharmaceuticals,vaistai,
 Physician,Gydytojas,
-Pincode,PIN kodas,
 Place Of Supply (State/UT),Tiekimo vieta (valstija / UT),
 Place Order,Vieta Užsakyti,
 Plan Name,Plano pavadinimas,
@@ -1896,7 +1871,6 @@
 Please select date,Prašome pasirinkti datą,
 Please select item code,Prašome pasirinkti Prekės kodas,
 Please select month and year,Prašome pasirinkti mėnesį ir metus,
-Please select prefix first,Prašome pasirinkti prefiksą pirmas,
 Please select the Company,Pasirinkite bendrovę,
 Please select the Multiple Tier Program type for more than one collection rules.,Pasirinkite daugialypės pakopos programos tipą daugiau nei vienai rinkimo taisyklėms.,
 Please select the assessment group other than 'All Assessment Groups',Prašome pasirinkti kitą nei &quot;visų vertinimo grupės&quot; įvertinimo grupė,
@@ -1913,7 +1887,6 @@
 Please set Company filter blank if Group By is 'Company',"Prašome nustatyti Įmonės filtruoti tuščias, jei Grupuoti pagal tai &quot;kompanija&quot;",
 Please set Default Payroll Payable Account in Company {0},Prašome Set Default Darbo užmokesčio MOKĖTINOS Narystė Bendrovėje {0},
 Please set Depreciation related Accounts in Asset Category {0} or Company {1},Prašome nustatyti Nusidėvėjimas susijusias sąskaitas Turto kategorija {0} ar kompanija {1},
-Please set Email Address,Prašome nustatyti elektroninio pašto adresą,
 Please set GST Accounts in GST Settings,Nustatykite GST paskyras,
 Please set Hotel Room Rate on {},Prašome nustatyti viešbučio kambario kainą už (),
 Please set Number of Depreciations Booked,Prašome nustatyti Taškų nuvertinimai Užsakytas,
@@ -1936,7 +1909,6 @@
 Please set the Email ID for the Student to send the Payment Request,"Nustatykite studento elektroninio pašto adresą, kad atsiųstumėte mokėjimo užklausą",
 Please set the Item Code first,Pirmiausia nustatykite elemento kodą,
 Please set the Payment Schedule,Prašome nustatyti mokėjimo grafiką,
-Please set the series to be used.,Nurodykite naudojamą seriją.,
 Please set {0} for address {1},Nurodykite {0} adresą {1},
 Please setup Students under Student Groups,Nustatykite studentus pagal studentų grupes,
 Please specify Company,Prašome nurodyti Company,
@@ -1953,7 +1925,6 @@
 Point-of-Sale,Pardavimo punktas,
 Point-of-Sale Profile,Point-of-Sale profilis,
 Portal,portalas,
-Portal Settings,portalo Nustatymai,
 Possible Supplier,Galimas tiekėjas,
 Postal Expenses,pašto išlaidas,
 Posting Date,Išsiuntimo data,
@@ -2152,12 +2123,10 @@
 Reference No is mandatory if you entered Reference Date,"Nuorodos Nr yra privaloma, jei įvedėte Atskaitos data",
 Reference No.,Nuoroda ne.,
 Reference Number,Šaltinio numeris,
-Reference Owner,nuoroda autorius,
 Reference Type,nuoroda tipas,
 "Reference: {0}, Item Code: {1} and Customer: {2}","Nuoroda: {0}, Prekės kodas: {1} ir klientų: {2}",
 References,Nuorodos,
 Refresh Token,Atnaujinti ženklas,
-Region,regionas,
 Register,Registruotis,
 Rejected,Atstumtas,
 Related,Susijęs,
@@ -2179,7 +2148,6 @@
 Replace BOM and update latest price in all BOMs,Pakeiskite BOM ir atnaujinkite naujausią kainą visose BOM,
 Replied,Atsakyta,
 Report,ataskaita,
-Report Builder,Report Builder &quot;,
 Report Type,Ataskaitos tipas,
 Report Type is mandatory,Ataskaitos tipas yra privalomi,
 Reports,ataskaitos,
@@ -2355,13 +2323,11 @@
 Same Company is entered more than once,Pati bendrovė yra įrašytas daugiau nei vieną kartą,
 Same item cannot be entered multiple times.,Tas pats daiktas negali būti įrašytas kelis kartus.,
 Same supplier has been entered multiple times,Tas pats tiekėjas buvo įrašytas kelis kartus,
-Sample,Pavyzdys,
 Sample Collection,Pavyzdžių rinkinys,
 Sample quantity {0} cannot be more than received quantity {1},Mėginių kiekis {0} negali būti didesnis nei gautas kiekis {1},
 Sanctioned,sankcijos,
 Sand,Smėlis,
 Saturday,šeštadienis,
-Saved,Išsaugota,
 Saving {0},Išsaugoma {0},
 Scan Barcode,Skenuoti Barcodą,
 Schedule,grafikas,
@@ -2463,7 +2429,6 @@
 Series Updated,Serija atnaujinta,
 Series Updated Successfully,Serija atnaujinta sėkmingai,
 Series is mandatory,Serija yra privalomi,
-Series {0} already used in {1},Serija {0} jau naudojamas {1},
 Service,tarnyba,
 Service Level Agreement,Susitarimą dėl paslaugų lygio,
 Service Level Agreement.,Susitarimą dėl paslaugų lygio.,
@@ -2479,7 +2444,6 @@
 Set Tax Rule for shopping cart,Nustatyti Mokesčių taisyklė krepšelį,
 Set as Closed,Nustatyti kaip Uždarymo,
 Set as Completed,Nustatyti kaip baigtą,
-Set as Default,Nustatyti kaip numatytąją,
 Set as Lost,Nustatyti kaip Lost,
 Set as Open,Nustatyti kaip Open,
 Set default inventory account for perpetual inventory,Nustatykite numatytąjį inventoriaus sąskaitos už amžiną inventoriaus,
@@ -2511,7 +2475,6 @@
 Shareholder,Akcininkas,
 Ship To State,Laivas į valstybę,
 Shipments,vežimas,
-Shipping,gabenimas,
 Shipping Address,Pristatymo adresas,
 "Shipping Address does not have country, which is required for this Shipping Rule","Laivybos adresas neturi šalies, kuri reikalinga šiam siuntimo taisyklėm",
 Shipping rule only applicable for Buying,Pristatymo taisyklė taikoma tik pirkimui,
@@ -2564,7 +2527,6 @@
 Split Batch,Splitas Serija,
 Split Issue,Split Issue,
 Sports,sporto,
-Standard,standartas,
 Standard Buying,Standartinė Ieško,
 Standard Selling,Standartinė Parduodami,
 Standard contract terms for Sales or Purchase.,Standartinės sutarčių sąlygos pardavimo ar pirkimo.,
@@ -2731,7 +2693,6 @@
 Terms and Conditions,Terminai ir sąlygos,
 Terms and Conditions Template,Terminai ir sąlygos Šablono,
 Territory,Teritorija,
-Test,testas,
 Thank you for your business!,Dėkoju Jums už bendradarbiavimą!,
 The 'From Package No.' field must neither be empty nor it's value less than 1.,&quot;Iš paketo Nr.&quot; laukas negali būti tuščias ir jo vertė yra mažesnė nei 1.,
 The Brand,Brand,
@@ -2848,7 +2809,6 @@
 Total (Without Tax),Iš viso (be mokesčio),
 Total Achieved,Iš viso Pasiektas,
 Total Actual,Iš viso Tikrasis,
-Total Allocated Leaves,Iš viso paskirstytų lapų,
 Total Amount,Visas kiekis,
 Total Amount Credited,Iš viso kredituota suma,
 Total Applicable Charges in Purchase Receipt Items table must be same as Total Taxes and Charges,Iš viso taikomi mokesčiai į pirkimo kvito sumų lentelė turi būti tokios pačios kaip viso mokesčių ir rinkliavų,
@@ -2892,7 +2852,6 @@
 Total(Amt),Iš viso (Amt),
 Total(Qty),Iš viso (kiekis),
 Traceability,Atsekamumas,
-Traceback,Atsekti,
 Track Leads by Lead Source.,Stebėkite laidų šaltinius.,
 Transaction,Sandoris,
 Transaction Date,Operacijos data,
@@ -2930,7 +2889,6 @@
 UOM Conversion factor is required in row {0},UOM Konversijos koeficientas yra reikalaujama iš eilės {0},
 UOM coversion factor required for UOM: {0} in Item: {1},UOM coversion faktorius reikalingas UOM: {0} prekės: {1},
 URL,URL,
-Unable to find DocType {0},Nepavyko rasti DocType {0},
 Unable to find exchange rate for {0} to {1} for key date {2}. Please create a Currency Exchange record manually,"Negali rasti keitimo kursą {0}, kad {1} rakto dienos {2}. Prašome sukurti valiutos keitykla įrašą rankiniu būdu",
 Unable to find score starting at {0}. You need to have standing scores covering 0 to 100,"Neįmanoma rasti rezultato, pradedant {0}. Turite turėti stovinčius balus, apimančius nuo 0 iki 100",
 Unable to find variable: ,Neįmanoma rasti kintamojo:,
@@ -2960,7 +2918,6 @@
 Upload your letter head and logo. (you can edit them later).,Įkelti savo laiške galvą ir logotipą. (Galite redaguoti juos vėliau).,
 Upper Income,viršutinė pajamos,
 Use Sandbox,Naudokite Smėlio,
-Used Leaves,Naudotos lapai,
 User,Vartotojas,
 User ID,Vartotojo ID,
 User ID not set for Employee {0},Vartotojo ID nenustatyti Darbuotojo {0},
@@ -3051,7 +3008,6 @@
 Website Settings,Svetainės nustatymai,
 Wednesday,trečiadienis,
 Week,savaitė,
-Weekdays,Darbo dienomis,
 Weekly,kas savaitę,
 "Weight is mentioned,\nPlease mention ""Weight UOM"" too",Svoris paminėta \ nLūdzu paminėti &quot;Svoris UOM&quot; per,
 Welcome email sent,Sveiki laiškas išsiųstas,
@@ -3072,7 +3028,6 @@
 Work Order {0} must be submitted,Darbų užsakymas {0} turi būti pateiktas,
 Work Orders Created: {0},Sukurtas darbo užsakymas: {0},
 Work-in-Progress Warehouse is required before Submit,Darbas-in-progress sandėlio reikalingas prieš Pateikti,
-Workflow,darbo eigos,
 Working,darbo,
 Working Hours,Darbo valandos,
 Workstation,Kompiuterizuotos darbo vietos,
@@ -3102,7 +3057,6 @@
 You need to be a user other than Administrator with System Manager and Item Manager roles to register on Marketplace.,"Jums reikia būti kitam vartotojui nei administratorius su Sistemos valdytoju ir &quot;Item Manager&quot; vaidmenimis, kad užsiregistruotumėte &quot;Marketplace&quot;.",
 You need to be a user with System Manager and Item Manager roles to add users to Marketplace.,"Norint pridėti naudotojų prie &quot;Marketplace&quot;, turite būti &quot;System Manager&quot; ir &quot;Item Manager&quot; funkcijų turintis vartotojas.",
 You need to be a user with System Manager and Item Manager roles to register on Marketplace.,"Turite būti su Sistemos valdytoju ir &quot;Item Manager&quot; vartotojais, kad galėtumėte užsiregistruoti &quot;Marketplace&quot;.",
-You need to be logged in to access this page,"Jūs turite būti prisijungęs, kad galėtumėte prisijungti prie šio puslapio",
 You need to enable Shopping Cart,Jums reikia įgalinti Prekių krepšelis,
 You will lose records of previously generated invoices. Are you sure you want to restart this subscription?,Jūs prarasite ankstesnių sąskaitų faktūrų įrašus. Ar tikrai norite iš naujo paleisti šį prenumeratą?,
 Your Organization,Jūsų organizacija,
@@ -3218,7 +3172,6 @@
 Assigned To,Priskirtas,
 Chat,kalbėtis,
 Completed By,Užbaigtas,
-County,apygarda,
 Day of Week,Savaitės diena,
 "Dear System Manager,","Gerbiamas sistema direktorius,",
 Default Value,Numatytoji reikšmė,
@@ -3229,31 +3182,21 @@
 Fieldtype,Fieldtype,
 Help Articles,Pagalba straipsniai,
 ID,ID,
-Images,Vaizdai,
 Import,importas,
 Language,kalba,
 Likes,mėgsta,
 Merge with existing,Sujungti su esama,
-Office,biuras,
 Orientation,orientacija,
 Parent,tėvas,
-Passive,pasyvus,
 Payment Failed,Mokėjimo Nepavyko,
-Permanent,nuolatinis,
 Personal,Asmeninis,
-Plant,augalas,
 Post,paštas,
-Postal,pašto,
 Postal Code,Pašto kodas,
-Previous,ankstesnis,
 Provider,Tiekėjas,
 Read Only,Tik skaitymui,
 Recipient,Gavėjas,
 Reviews,Atsiliepimai,
 Sender,Siuntėjas,
-Shop,parduotuvė,
-Subsidiary,filialas,
-There is some problem with the file url: {0},Yra kai kurie su URL failui problema: {0},
 There were errors while sending email. Please try again.,"Nebuvo klaidos Nors siunčiant laišką. Prašau, pabandykite dar kartą.",
 Values Changed,vertybės Pakeitė,
 or,arba,
@@ -3280,19 +3223,16 @@
 Quality Feedback Template,Kokybės atsiliepimų šablonas,
 Rules for applying different promotional schemes.,Skirtingų reklamos schemų taikymo taisyklės.,
 Show {0},Rodyti {0},
-"Special Characters except '-', '#', '.', '/', '{{' and '}}' not allowed in naming series {0}","Specialieji simboliai, išskyrus &quot;-&quot;, &quot;#&quot;, &quot;।&quot;, &quot;/&quot;, &quot;{{&quot; Ir &quot;}}&quot;, neleidžiami įvardyti serijomis {0}",
 Target Details,Tikslinė informacija,
 {0} already has a Parent Procedure {1}.,{0} jau turi tėvų procedūrą {1}.,
 API,API,
 Annual,metinis,
 Change,pokytis,
 Contact Email,kontaktinis elektroninio pašto adresas,
-Export Type,Eksporto tipas,
 From Date,nuo data,
 Group By,Grupuoti pagal,
 Invalid URL,neteisingas URL,
 Landscape,Peizažas,
-Last Sync On,Paskutinė sinchronizacija įjungta,
 Naming Series,Pavadinimų serija,
 No data to export,"Nėra duomenų, kuriuos būtų galima eksportuoti",
 Portrait,Portretas,
@@ -3302,7 +3242,6 @@
 Show Document,Rodyti dokumentą,
 Show Traceback,Rodyti „Traceback“,
 Video,Vaizdo įrašas,
-Webhook Secret,„Webhook Secret“,
 % Of Grand Total,% Visos sumos,
 <b>Company</b> is a mandatory filter.,<b>Bendrovė</b> yra privalomas filtras.,
 <b>From Date</b> is a mandatory filter.,<b>Nuo datos</b> yra privalomas filtras.,
@@ -3358,7 +3297,6 @@
 BOM Comparison Tool,BOM palyginimo įrankis,
 BOM recursion: {0} cannot be child of {1},BOM rekursija: {0} negali būti {1} vaikas,
 BOM recursion: {0} cannot be parent or child of {1},BOM rekursija: {0} negali būti {1} tėvas ar vaikas,
-Back to Home,Grįžti namo,
 Back to Messages,Grįžti į pranešimus,
 Bank Data mapper doesn't exist,Banko duomenų žemėlapių nėra,
 Bank Details,Banko duomenis,
@@ -3420,7 +3358,6 @@
 Currency,valiuta,
 Current Status,Dabartinė būsena,
 Customer PO,Kliento PO,
-Customize,Pritaikyti,
 Daily,kasdien,
 Date,Data,
 Date of Birth cannot be greater than Joining Date.,Gimimo data negali būti didesnė už prisijungimo datą.,
@@ -3454,7 +3391,6 @@
 ERPNext could not find any matching payment entry,„ERPNext“ nerado jokio atitinkančio mokėjimo įrašo,
 Earliest Age,Ankstyviausias amžius,
 Edit Details,Redaguoti informaciją,
-Edit Profile,Redaguoti profilį,
 Either GST Transporter ID or Vehicle No is required if Mode of Transport is Road,"Jei transporto būdas yra kelias, nereikia pateikti GST vežėjo ID arba transporto priemonės numerio",
 Email,El. Paštas,
 Email Campaigns,El. Pašto kampanijos,
@@ -3482,7 +3418,6 @@
 Fetch Items from Warehouse,Gauti daiktus iš sandėlio,
 Fetching...,Gaunama ...,
 Field,laukas,
-File Manager,failų tvarkyklė,
 Filters,Filtrai,
 Finding linked payments,Susietų mokėjimų paieška,
 Fleet Management,laivyno valdymo,
@@ -3521,7 +3456,6 @@
 Incorrect Warehouse,Netinkamas sandėlis,
 Invalid Barcode. There is no Item attached to this barcode.,Netinkamas brūkšninis kodas. Prie šio brūkšninio kodo nėra pridėto elemento.,
 Invalid credentials,Netinkami kredencialai,
-Invite as User,Kviesti kaip naudotoją,
 Issue Priority.,Išdavimo prioritetas.,
 Issue Type.,Išleidimo tipas.,
 "It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","Atrodo, kad yra problema dėl serverio juostos konfigūracijos. Nepavykus, suma bus grąžinta į jūsų sąskaitą.",
@@ -3564,7 +3498,6 @@
 New Invoice,Nauja sąskaita,
 New Payment,Naujas mokėjimas,
 New release date should be in the future,Nauja išleidimo data turėtų būti ateityje,
-Newsletter,Naujienlaiškis,
 No Account matched these filters: {},Nei viena paskyra neatitiko šių filtrų: {},
 No communication found.,Nerasta jokio ryšio.,
 No correct answer is set for {0},{0} netinkamas atsakymas,
@@ -3640,7 +3573,6 @@
 Please setup a default bank account for company {0},Sukurkite numatytąją įmonės {0} banko sąskaitą,
 Please specify,Prašome nurodyti,
 Please specify a {0},Nurodykite {0},lead
-Printing,spausdinimas,
 Priority,Prioritetas,
 Priority has been changed to {0}.,Prioritetas buvo pakeistas į {0}.,
 Priority {0} has been repeated.,{0} prioritetas buvo pakartotas.,
@@ -3649,7 +3581,6 @@
 Project,projektas,
 Provide the academic year and set the starting and ending date.,Nurodykite mokslo metus ir nustatykite pradžios ir pabaigos datą.,
 Public token is missing for this bank,Nėra šio banko viešo prieigos rakto,
-Publish,Paskelbti,
 Publish 1 Item,Paskelbkite 1 elementą,
 Publish Items,Skelbti elementus,
 Publish More Items,Paskelbkite daugiau elementų,
@@ -3677,7 +3608,6 @@
 Reconciled,Susitaikė,
 Recruitment,verbavimas,
 Red,raudonas,
-Refreshing,Gaivus,
 Release date must be in the future,Išleidimo data turi būti ateityje,
 Relieving Date must be greater than or equal to Date of Joining,Atleidimo data turi būti didesnė arba lygi prisijungimo datai,
 Rename,pervadinti,
@@ -3721,7 +3651,6 @@
 Search for a payment,Ieškokite mokėjimo,
 Search for anything ...,Ieškok nieko ...,
 Search results for,Pieškos rezultatai,
-Select All,Pasirinkti viską,
 Select Difference Account,Pasirinkite skirtumų sąskaitą,
 Select a Default Priority.,Pasirinkite numatytąjį prioritetą.,
 Select a company,Pasirinkite įmonę,
@@ -3740,11 +3669,9 @@
 Service Level Agreement has been changed to {0}.,Aptarnavimo lygio sutartis pakeista į {0}.,
 Service Level Agreement was reset.,Paslaugų lygio sutartis buvo nustatyta iš naujo.,
 Service Level Agreement with Entity Type {0} and Entity {1} already exists.,Paslaugų lygio sutartis su {0} subjekto ir {1} subjektais jau yra.,
-Set,nustatyti,
 Set Meta Tags,Nustatykite metažymas,
 Set {0} in company {1},Nustatykite {0} įmonėje {1},
 Setup,Sąranka,
-Setup Wizard,sąrankos vedlys,
 Shift Management,Keitimo valdymas,
 Show Future Payments,Rodyti būsimus mokėjimus,
 Show Linked Delivery Notes,Rodyti susietus pristatymo užrašus,
@@ -3815,7 +3742,6 @@
 Unreconciled,Nesuderinta,
 Unsupported GST Category for E-Way Bill JSON generation,Nepalaikoma GST kategorija e-Way Bill JSON kartai,
 Update,atnaujinimas,
-Update Details,Atnaujinkite informaciją,
 Update Taxes for Items,Atnaujinkite elementų mokesčius,
 "Upload a bank statement, link or reconcile a bank account","Įkelkite banko ataskaitą, susiekite arba suderinkite banko sąskaitą",
 Upload a statement,Įkelkite pareiškimą,
@@ -3839,7 +3765,6 @@
 XML Files Processed,Apdoroti XML failai,
 Year,Metai,
 Yearly,Kasmet,
-You,Tu,
 You are not allowed to enroll for this course,Jums neleidžiama stoti į šį kursą,
 You are not enrolled in program {0},Jūs nesate įtrauktas į programą {0},
 You can Feature upto 8 items.,Galite pasižymėti net 8 elementais.,
@@ -3856,7 +3781,6 @@
 e-Way Bill already exists for this document,„e-Way Bill“ jau yra šiam dokumentui,
 woocommerce - {0},internetinė prekyba - {0},
 {0} Coupon used are {1}. Allowed quantity is exhausted,Naudojamas {0} kuponas yra {1}. Leistinas kiekis išnaudotas,
-{0} Name,{0} Vardas,
 {0} Operations: {1},{0} Operacijos: {1},
 {0} bank transaction(s) created,Sukurta {0} banko operacija (-os),
 {0} bank transaction(s) created and {1} errors,Sukurtos {0} banko operacijos ir {1} klaidos,
@@ -3875,17 +3799,13 @@
 Total Income,Bendros pajamos,
 Total Income This Year,Bendros pajamos šiais metais,
 Barcode,Brūkšninis kodas,
-Bold,Drąsiai,
-Center,Centras,
 Clear,Aišku,
-Comment,Komentuok,
 Comments,Komentarai,
 DocType,„DocType“,
 Download,parsisiųsti,
 Left,į kairę,
 Link,Nuoroda,
 New,Nauja,
-Not Found,Nerastas,
 Print,Spausdinti,
 Reference Name,Nuorodos pavadinimas,
 Refresh,atnaujinti,
@@ -3908,7 +3828,6 @@
 Email Id,E-mail ID,
 No,Ne,
 Reference Doctype,nuoroda dokumentų tipas,
-User Id,Vartotojo ID,
 Yes,Taip,
 Actual ,faktinis,
 Add to cart,Į krepšelį,
@@ -4304,7 +4223,6 @@
 e.g Adjustments for:,"pvz., koregavimai:",
 Section Subtotal,Tarpinė dalis,
 Section Footer,Sekcijos pataisa,
-Position,Pozicija,
 Cash Flow Mapping,Pinigų srautų žemėlapiai,
 Select Maximum Of 1,Pasirinkite maksimalų iš 1,
 Is Finance Cost,Ar yra finansinės išlaidos,
@@ -4936,7 +4854,6 @@
 Previous Business Day,Ankstesne darbo diena,
 Next Business Day,Kitas verslo diena,
 Urgent,skubus,
-Crop,Apkarpyti,
 Crop Name,Paskirstymo pavadinimas,
 Scientific Name,Mokslinis vardas,
 "You can define all the tasks which need to carried out for this crop here. The day field is used to mention the day on which the task needs to be carried out, 1 being the 1st day, etc.. ","Čia galite apibrėžti visas užduotis, kurių reikia atlikti šiam pasėliui. Dienos laukas naudojamas paminėti tą dieną, kurią reikia atlikti užduotį, 1 yra 1 diena ir kt.",
@@ -5441,7 +5358,6 @@
 To TIme,laiko,
 Course End Date,Žinoma Pabaigos data,
 Course Topic,Kurso tema,
-Topic,tema,
 Topic Name,Temos pavadinimas,
 Education Settings,Švietimo nustatymai,
 Current Academic Year,Dabartinis akademiniai metai,
@@ -5516,7 +5432,6 @@
 Check this if the Student is residing at the Institute's Hostel.,"Pažymėkite, jei tas studentas gyvena institute bendrabutyje.",
 Walking,vaikščiojimas,
 Institute's Bus,Instituto autobusas,
-Public Transport,Viešasis transportas,
 Self-Driving Vehicle,Savęs Vairavimas automobiliai,
 Pick/Drop by Guardian,Pasirinkite / Užsukite Guardian,
 Enrolled courses,studijuojantys kursai,
@@ -5697,7 +5612,6 @@
 Default Cost Center,Numatytasis Kaina centras,
 Undeposited Funds Account,Nepaskirstyta lėšų sąskaita,
 Shopify Log,Shopify žurnalas,
-Request Data,Prašyti duomenų,
 Shopify Settings,&quot;Shopify&quot; nustatymai,
 status html,būsena html,
 Enable Shopify,Įjunkite &quot;Shopify&quot;,
@@ -5817,7 +5731,6 @@
 Exercise Instructions,Pratimų instrukcijos,
 Exercise Video,Pratimų vaizdo įrašas,
 Exercise Steps,Pratimų žingsniai,
-Steps,Žingsniai,
 Steps Table,Žingsnių lentelė,
 Exercise Type Step,Pratimo tipo žingsnis,
 Max number of visit,Maksimalus apsilankymo skaičius,
@@ -6001,7 +5914,6 @@
 Patient Encounter Symptom,Paciento susidūrimo simptomas,
 HLC-PMR-.YYYY.-,HLC-PMR-.YYYY.-,
 Attach Medical Record,Pridėkite medicininį įrašą,
-Reference DocType,Nuoroda „DocType“,
 Spouse,Sutuoktinis,
 Family,Šeima,
 Schedule Details,Informacija apie tvarkaraštį,
@@ -6983,16 +6895,8 @@
 HTML / Banner that will show on the top of product list.,"HTML / reklama, kuri parodys ant produkto sąrašo viršuje.",
 Set prefix for numbering series on your transactions,Nustatyti priešdėlis numeracijos seriją apie sandorius savo,
 Setup Series,Sąranka serija,
-Select Transaction,Pasirinkite Sandorio,
-Help HTML,Pagalba HTML,
-Series List for this Transaction,Serija sąrašas šio sandorio,
-User must always select,Vartotojas visada turi pasirinkti,
-Check this if you want to force the user to select a series before saving. There will be no default if you check this.,"Pažymėkite, jei norite priversti vartotoją prieš taupymo pasirinkti seriją. Nebus nutylėjimą, jei jums patikrinti tai.",
 Update Series,Atnaujinti serija,
 Change the starting / current sequence number of an existing series.,Pakeisti pradinį / trumpalaikiai eilės numerį esamo serijos.,
-Prefix,priešdėlis,
-This is the number of the last created transaction with this prefix,Tai yra paskutinio sukurto skaičius operacijoje su šio prefikso,
-Update Series Number,Atnaujinti serijos numeris,
 Quotation Lost Reason,Citata Pamiršote Priežastis,
 A third party distributor / dealer / commission agent / affiliate / reseller who sells the companies products for a commission.,"Trečioji šalis Platintojas / atstovas / Komisijos atstovas / filialo / perpardavinėtojas, kuris parduoda bendrovių produktus komisija.",
 Sales Partner Name,Partneriai pardavimo Vardas,
@@ -7687,7 +7591,6 @@
 Warehouse wise Item Balance Age and Value,Sandėlis protingas Prekės balansas Amžius ir vertė,
 Work Order Stock Report,Darbų užsakymų atsargų ataskaita,
 Work Orders in Progress,Darbų užsakymai vyksta,
-Validation Error,Patvirtinimo klaida,
 Automatically Process Deferred Accounting Entry,Automatiškai apdoroti atidėtos apskaitos įrašą,
 Bank Clearance,Banko patvirtinimas,
 Bank Clearance Detail,Išsami banko patvirtinimo informacija,
@@ -7724,45 +7627,7 @@
 Therapy Plan: ,Terapijos planas:,
 Total Counts Targeted: ,Bendras tikslinių skaičių skaičius:,
 Total Counts Completed: ,Iš viso atliktų skaičių:,
-Andaman and Nicobar Islands,Andamano ir Nikobaro salos,
-Andhra Pradesh,Andhra Pradeshas,
-Arunachal Pradesh,Arunachal Pradesh,
-Assam,Assamas,
-Bihar,Biharas,
-Chandigarh,Čandigaras,
-Chhattisgarh,Chhattisgarh,
-Dadra and Nagar Haveli,Dadra ir Nagaras Haveli,
-Daman and Diu,Damanas ir Diu,
-Delhi,Delis,
-Goa,Goa,
-Gujarat,Gudžaratas,
-Haryana,Harjana,
-Himachal Pradesh,Himachal Pradesh,
-Jammu and Kashmir,Džamu ir Kašmyras,
-Jharkhand,Džarkaras,
-Karnataka,Karnataka,
-Kerala,Kerala,
-Lakshadweep Islands,Lakshadweepo salos,
-Madhya Pradesh,Madhya Pradesh,
-Maharashtra,Maharaštra,
-Manipur,Manipuras,
-Meghalaya,Meghalaya,
-Mizoram,Mizoramas,
-Nagaland,Nagalandas,
-Odisha,Odiša,
-Other Territory,Kita teritorija,
-Pondicherry,Pondicherry,
-Punjab,Pendžabas,
-Rajasthan,Radžastanas,
-Sikkim,Sikkim,
-Tamil Nadu,Tamil Nadu,
-Telangana,Telangana,
-Tripura,Tripura,
-Uttar Pradesh,Utar Pradešas,
-Uttarakhand,Utarakhandas,
-West Bengal,Vakarų Bengalija,
 Is Mandatory,Yra privaloma,
-Published on,Paskelbta,
 Service Received But Not Billed,"Paslauga gauta, bet neapmokėta",
 Deferred Accounting Settings,Atidėti apskaitos nustatymai,
 Book Deferred Entries Based On,Atidėtų įrašų knyga pagal,
@@ -8035,8 +7900,6 @@
 Worksheet Instructions,Užduoties instrukcijos,
 Result Legend Print,Rezultatų legendos spausdinimas,
 Print Position,Spausdinimo pozicija,
-Bottom,Apačia,
-Top,Į viršų,
 Both,Tiek,
 Result Legend,Rezultatų legenda,
 Lab Tests,Laboratoriniai bandymai,
@@ -8081,12 +7944,10 @@
 Approvers,Patvirtina,
 The first Approver in the list will be set as the default Approver.,Pirmasis patvirtintojas sąraše bus nustatytas kaip numatytasis patvirtintojas.,
 Shift Request Approver,„Shift Request Approver“,
-PAN Number,PAN numeris,
 Provident Fund Account,„Provident Fund“ sąskaita,
 MICR Code,MICR kodas,
 Repay unclaimed amount from salary,Iš atlyginimo grąžinkite neprašytą sumą,
 Deduction from salary,Išskaičiavimas iš atlyginimo,
-Expired Leaves,Pasibaigę lapai,
 If this is not checked the loan by default will be considered as a Demand Loan,"Jei tai nėra pažymėta, paskola pagal numatytuosius nustatymus bus laikoma paklausos paskola",
 This account is used for booking loan repayments from the borrower and also disbursing loans to the borrower,Ši sąskaita naudojama paskolos grąžinimo iš skolininko rezervavimui ir paskolos paskolos gavėjui išmokėjimui,
 This account is capital account which is used to allocate capital for loan disbursal account ,"Ši sąskaita yra kapitalo sąskaita, naudojama paskirstyti kapitalą paskolos išmokėjimo sąskaitai",
@@ -8844,3 +8705,41 @@
 Creating Purchase Order ...,Kuriamas pirkimo užsakymas ...,
 "Select a Supplier from the Default Suppliers of the items below. On selection, a Purchase Order will be made against items belonging to the selected Supplier only.","Pasirinkite tiekėją iš toliau nurodytų gaminių iš numatytųjų tiekėjų. Pasirinkus pirkimą, bus sudarytos tik prekės, priklausančios pasirinktam tiekėjui.",
 Row #{}: You must select {} serial numbers for item {}.,# Eilutė {}: turite pasirinkti {} prekės serijos numerius {}.,
+Add Comment,Pridėti komentarą,
+More...,Daugiau ...,
+Notes,Pastabos,
+Payment Gateway,Mokėjimo šliuzai,
+Payment Gateway Name,Mokėjimo šliuzo pavadinimas,
+Payments,Mokėjimai,
+Plan Name,Plano pavadinimas,
+Portal,portalas,
+Scan Barcode,Skenuoti Barcodą,
+Some information is missing,Kai trūksta informacijos,
+Successful,Sėkmingas,
+Tools,Įrankiai,
+Use Sandbox,Naudokite Smėlio,
+Busy,Užsiėmes,
+Completed By,Užbaigtas,
+Payment Failed,Mokėjimo Nepavyko,
+Column {0},{0} stulpelis,
+Field Mapping,Lauko žemėlapis,
+Not Specified,Nenurodyta,
+Update Type,Atnaujinimo tipas,
+Dr,dr,
+End Time,pabaigos laikas,
+Fetching...,Gaunama ...,
+"It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","Atrodo, kad yra problema dėl serverio juostos konfigūracijos. Nepavykus, suma bus grąžinta į jūsų sąskaitą.",
+Looks like someone sent you to an incomplete URL. Please ask them to look into it.,"Atrodo, kad kažkas jus siuntė nepilno URL. Paprašykite juos pažvelgti į jį.",
+Master,meistras,
+Pay,mokėti,
+You can also copy-paste this link in your browser,Taip pat galite kopijuoti įklijuokite šią nuorodą savo naršyklėje,
+Verified By,Patvirtinta,
+Invalid naming series (. missing) for {0},Netinkama {0} pavadinimų serija (. Trūksta),
+Phone Number,Telefono numeris,
+Account SID,Sąskaitos SID,
+Global Defaults,Global Numatytasis,
+Is Mandatory,Yra privaloma,
+WhatsApp,„WhatsApp“,
+Make a call,Paskambinti,
+Approve,Patvirtinti,
+Reject,Atmesti,
diff --git a/erpnext/translations/lv.csv b/erpnext/translations/lv.csv
index 1409719..2cfa130 100644
--- a/erpnext/translations/lv.csv
+++ b/erpnext/translations/lv.csv
@@ -113,7 +113,6 @@
 Add Items,Pievienot preces,
 Add Leads,Pievienot līderus,
 Add Multiple Tasks,Pievienot vairākus uzdevumus,
-Add Row,Pievienot rindu,
 Add Sales Partners,Pievienojiet tirdzniecības partnerus,
 Add Serial No,Pievienot sērijas Nr,
 Add Students,Pievienot Students,
@@ -211,9 +210,7 @@
 An error occurred during the update process,Atjaunināšanas procesa laikā radās kļūda,
 "An item exists with same name ({0}), please change the item group name or rename the item","Priekšmets pastāv ar tādu pašu nosaukumu ({0}), lūdzu, nomainiet priekšmets grupas nosaukumu vai pārdēvēt objektu",
 Analyst,Analītiķis,
-Analytics,Analytics,
 Annual Billing: {0},Gada Norēķinu: {0},
-Anonymous,Anonīms,
 Another Budget record '{0}' already exists against {1} '{2}' and account '{3}' for fiscal year {4},Vēl viens budžeta ieraksts {0} jau ir spēkā attiecībā pret {1} &quot;{2}&quot; un kontu &quot;{3}&quot; fiskālajā gadā {4},
 Another Period Closing Entry {0} has been made after {1},Vēl viens periods Noslēguma Entry {0} ir veikts pēc {1},
 Another Sales Person {0} exists with the same Employee id,Vēl Sales Person {0} pastāv ar to pašu darbinieku id,
@@ -283,14 +280,12 @@
 Attendance not submitted for {0} as {1} on leave.,Apmeklējums nav iesniegts {0} kā {1} atvaļinājumā.,
 Attribute table is mandatory,Atribūts tabula ir obligāta,
 Attribute {0} selected multiple times in Attributes Table,Prasme {0} izvēlēts vairākas reizes atribūtos tabulā,
-Author,autors,
 Authorized Signatory,Autorizēts Parakstītājs,
 Auto Material Requests Generated,Auto Materiālu Pieprasījumi Radušies,
 Auto Repeat,Auto atkārtot,
 Auto repeat document updated,Auto atkārtots dokuments ir atjaunināts,
 Automotive,Automobiļu,
 Available,Pieejams,
-Available Leaves,Pieejamie lapas,
 Available Qty,Pieejams Daudz,
 Available Selling,Pieejams pārdošana,
 Available for use date is required,Pieejams izmantošanas datums ir nepieciešams,
@@ -340,7 +335,6 @@
 Base URL,Bāzes URL,
 Based On,Pamatojoties uz,
 Based On Payment Terms,Balstoties uz apmaksas noteikumiem,
-Basic,Pamata,
 Batch,Partijas,
 Batch Entries,Partiju ieraksti,
 Batch ID is mandatory,Partijas ID ir obligāta,
@@ -361,7 +355,6 @@
 Billable Hours,Apmaksājamas stundas,
 Billed,Rēķins,
 Billed Amount,Jāmaksā Summa,
-Billing,Norēķinu,
 Billing Address,Norēķinu adrese,
 Billing Address is same as Shipping Address,Norēķinu adrese ir tāda pati kā piegādes adrese,
 Billing Amount,Norēķinu summa,
@@ -560,7 +553,6 @@
 Consumed Qty,Patērētā Daudz,
 Consumer Products,Consumer Products,
 Contact,Kontakts,
-Contact Details,Kontaktinformācija,
 Contact Us,Sazinies ar mums,
 Content,Saturs,
 Content Masters,Satura meistari,
@@ -715,7 +707,6 @@
 Date of Joining,Datums Pievienošanās,
 Date of Joining must be greater than Date of Birth,Datums Savieno jābūt lielākam nekā Dzimšanas datums,
 Date of Transaction,Darījuma datums,
-Datetime,Datetime,
 Day,diena,
 Debit,Debets,
 Debit ({0}),Debets ({0}),
@@ -874,7 +865,6 @@
 Employee cannot report to himself.,Darbinieks nevar ziņot sev.,
 Employee {0} has already applied for {1} between {2} and {3} : ,Darbinieks {0} jau ir iesniedzis {1} pieteikumu starp {2} un {3}:,
 Employee {0} of grade {1} have no default leave policy,Darbiniekam {0} pakāpē {1} nav paredzētas atvaļinājuma politikas,
-Enable,Dot iespēju,
 Enable / disable currencies.,Ieslēgt / izslēgt valūtas.,
 Enabled,Enabled,
 "Enabling 'Use for Shopping Cart', as Shopping Cart is enabled and there should be at least one Tax Rule for Shopping Cart","Iespējojot &quot;izmantošana Grozs&quot;, kā Grozs ir iespējota, un ir jābūt vismaz vienam Tax nolikums Grozs",
@@ -905,7 +895,6 @@
 Error: Not a valid id?,Kļūda: nav derīgs ID?,
 Estimated Cost,Paredzamās izmaksas,
 "Even if there are multiple Pricing Rules with highest priority, then following internal priorities are applied:","Pat tad, ja ir vairāki cenu noteikšanas noteikumus ar augstāko prioritāti, tiek piemēroti tad šādi iekšējie prioritātes:",
-Event,Notikums,
 Exchange Gain/Loss,Exchange Gain / zaudējumi,
 Exchange Rate Revaluation master.,Valūtas kursa pārvērtēšanas meistars.,
 Exchange Rate must be same as {0} {1} ({2}),Valūtas kurss ir tāds pats kā {0} {1} ({2}),
@@ -1032,7 +1021,6 @@
 From value must be less than to value in row {0},No vērtība nedrīkst būt mazāka par to vērtību rindā {0},
 From {0} | {1} {2},No {0} | {1}{2},
 Fulfillment,Izpilde,
-Full,Pilna,
 Full Name,Pilns nosaukums,
 Fully Depreciated,pilnībā amortizēta,
 Furnitures and Fixtures,Mēbeles un piederumi,
@@ -1133,7 +1121,6 @@
 Hub Sync ID,Hub Sync ID,
 Human Resource,Cilvēkresursi,
 Human Resources,Cilvēkresursi,
-IFSC Code,IFSC kods,
 IGST Amount,IGST summa,
 IP Address,IP adrese,
 ITC Available (whether in full op part),Pieejams ITC (vai nu pilnā variantā),
@@ -1185,7 +1172,6 @@
 Ineligible ITC,Neatbilstošs ITC,
 Initiated,Uzsāka,
 Inpatient Record,Stacionārais ieraksts,
-Insert,Ievietot,
 Installation Note,Uzstādīšana Note,
 Installation Note {0} has already been submitted,Jau ir iesniegta uzstādīšana Note {0},
 Installation date cannot be before delivery date for Item {0},Uzstādīšana datums nevar būt pirms piegādes datuma postenī {0},
@@ -1197,7 +1183,6 @@
 Insurance Start date should be less than Insurance End date,Apdrošināšanas Sākuma datums jābūt mazākam nekā apdrošināšana Beigu datums,
 Integrated Tax,Integrētais nodoklis,
 Inter-State Supplies,Starpvalstu piegādes,
-Interests,intereses,
 Internet Publishing,Interneta Publishing,
 Intra-State Supplies,Valsts iekšējie krājumi,
 Introduction,Ievads,
@@ -1316,7 +1301,6 @@
 Lab testing datetime cannot be before collection datetime,Lab testēšana datetime nevar būt pirms savākšanas datuma,
 Label,Etiķete,
 Laboratory,Laboratorija,
-Language Name,Language Name,
 Large,Liels,
 Last Communication,Pēdējais paziņojums,
 Last Communication Date,Pēdējais Komunikācijas Datums,
@@ -1347,8 +1331,6 @@
 Letter Heads for print templates.,Vēstuļu Heads iespiesto veidnes.,
 Level,Līmenis,
 Liability,Atbildība,
-License,Licence,
-Limit,limits,
 Limit Crossed,Limit Crossed,
 Link to Material Request,Saite uz materiālu pieprasījumu,
 List of all share transactions,Visu akciju darījumu saraksts,
@@ -1359,7 +1341,6 @@
 Loans (Liabilities),Kredītiem (pasīvi),
 Loans and Advances (Assets),Aizdevumi un avansi (aktīvi),
 Local,Vietējs,
-Log,log,
 Logs for maintaining sms delivery status,Baļķi uzturēšanai sms piegādes statusu,
 Lost,Zaudējis,
 Lost Reasons,Zudušie iemesli,
@@ -1445,7 +1426,6 @@
 Medical Department,Medicīnas nodaļa,
 Medical Record,Medicīniskais ieraksts,
 Medium,Medijs,
-Meeting,Tikšanās,
 Member Activity,Dalībnieku aktivitāte,
 Member ID,Dalībnieka ID,
 Member Name,Biedra vārds,
@@ -1495,7 +1475,6 @@
 Multiple Variants,Vairāki varianti,
 Multiple fiscal years exist for the date {0}. Please set company in Fiscal Year,Vairāki fiskālie gadi pastāv dienas {0}. Lūdzu noteikt uzņēmuma finanšu gads,
 Music,Mūzika,
-My Account,Mans konts,
 Name error: {0},Vārds kļūda: {0},
 Name of new Account. Note: Please don't create accounts for Customers and Suppliers,"Nosaukums jaunu kontu. Piezīme: Lūdzu, nav izveidot klientu kontus un piegādātājiem",
 Name or Email is mandatory,Vārds vai e-pasts ir obligāta,
@@ -1538,7 +1517,6 @@
 New credit limit is less than current outstanding amount for the customer. Credit limit has to be atleast {0},Jaunais kredītlimits ir mazāks nekā pašreizējais nesamaksātās summas par klientam. Kredīta limits ir jābūt atleast {0},
 New task,Jauns uzdevums,
 New {0} pricing rules are created,Tiek izveidoti jauni {0} cenu noteikumi,
-Newsletters,Biļeteni,
 Newspaper Publishers,Laikrakstu izdevēji,
 Next,Nākamais,
 Next Contact By cannot be same as the Lead Email Address,Nākamais Kontaktinformācija Ar nevar būt tāda pati kā vadošais e-pasta adrese,
@@ -1686,7 +1664,6 @@
 Other,Cits,
 Other Reports,citas Ziņojumi,
 "Other outward supplies(Nil rated,Exempted)","Citi izejmateriāli (bez nulles, ar atbrīvojumu)",
-Others,Pārējie,
 Out Qty,Out Daudz,
 Out Value,out Value,
 Out of Order,Nestrādā,
@@ -1726,7 +1703,6 @@
 Party Type and Party is mandatory for {0} account,Puses veids un puse ir obligāta kontam {0},
 Party Type is mandatory,Puse Type ir obligāts,
 Party is mandatory,Puse ir obligāta,
-Password,Parole,
 Past Due Date,Iepriekšējais maksājuma datums,
 Patient,Pacienta,
 Patient Appointment,Pacienta iecelšana,
@@ -1784,7 +1760,6 @@
 Pharmaceutical,Farmaceitisks,
 Pharmaceuticals,Pharmaceuticals,
 Physician,Ārsts,
-Pincode,Pasta indeksa,
 Place Of Supply (State/UT),Piegādes vieta (valsts / UT),
 Place Order,Pasūtīt,
 Plan Name,Plāna nosaukums,
@@ -1896,7 +1871,6 @@
 Please select date,"Lūdzu, izvēlieties datumu",
 Please select item code,Lūdzu izvēlieties kodu,
 Please select month and year,"Lūdzu, izvēlieties mēnesi un gadu",
-Please select prefix first,"Lūdzu, izvēlieties kodu pirmais",
 Please select the Company,"Lūdzu, izvēlieties uzņēmumu",
 Please select the Multiple Tier Program type for more than one collection rules.,"Lūdzu, izvēlieties vairāku līmeņu programmas tipu vairāk nekā vienam kolekcijas noteikumam.",
 Please select the assessment group other than 'All Assessment Groups',"Lūdzu, izvēlieties novērtējuma grupu, kas nav &quot;All novērtēšanas grupas&quot;",
@@ -1913,7 +1887,6 @@
 Please set Company filter blank if Group By is 'Company',"Lūdzu noteikt Company filtrēt tukšu, ja Group By ir &quot;Uzņēmuma&quot;",
 Please set Default Payroll Payable Account in Company {0},Lūdzu noteikt Noklusējuma Algas Kreditoru kontu Uzņēmumu {0},
 Please set Depreciation related Accounts in Asset Category {0} or Company {1},Lūdzu noteikt nolietojuma saistīti konti aktīvu kategorijā {0} vai Uzņēmumu {1},
-Please set Email Address,Lūdzu iestatīt e-pasta adresi,
 Please set GST Accounts in GST Settings,"Lūdzu, iestatiet GST kontus GST iestatījumos",
 Please set Hotel Room Rate on {},"Lūdzu, iestatiet viesnīcu cenu par {}",
 Please set Number of Depreciations Booked,Lūdzu noteikts skaits nolietojuma Rezervēts,
@@ -1936,7 +1909,6 @@
 Please set the Email ID for the Student to send the Payment Request,"Lūdzu, norādiet Studenta e-pasta ID, lai nosūtītu Maksājuma pieprasījumu",
 Please set the Item Code first,"Lūdzu, vispirms iestatiet preces kodu",
 Please set the Payment Schedule,"Lūdzu, iestatiet Maksājumu grafiku",
-Please set the series to be used.,"Lūdzu, iestatiet izmantojamo sēriju.",
 Please set {0} for address {1},"Lūdzu, iestatiet {0} adresei {1}",
 Please setup Students under Student Groups,"Lūdzu, izveidojiet Studentu grupas Studentu grupas ietvaros",
 Please specify Company,"Lūdzu, norādiet Company",
@@ -1953,7 +1925,6 @@
 Point-of-Sale,Tirdzniecības vieta,
 Point-of-Sale Profile,Point-of-Sale Profils,
 Portal,Portāls,
-Portal Settings,portāla iestatījumi,
 Possible Supplier,iespējams piegādātājs,
 Postal Expenses,Pasta izdevumi,
 Posting Date,Norīkošanu Datums,
@@ -2152,12 +2123,10 @@
 Reference No is mandatory if you entered Reference Date,"Atsauces Nr ir obligāta, ja esat norādījis atsauces datumā",
 Reference No.,Atsauces Nr.,
 Reference Number,Atsauces numurs,
-Reference Owner,atsauce Īpašnieks,
 Reference Type,Reference Type,
 "Reference: {0}, Item Code: {1} and Customer: {2}","Reference: {0}, Produkta kods: {1} un Klients: {2}",
 References,Atsauces,
 Refresh Token,Atsvaidzināt Token,
-Region,Apgabals,
 Register,Reģistrēties,
 Rejected,Noraidīts,
 Related,Saistīts,
@@ -2179,7 +2148,6 @@
 Replace BOM and update latest price in all BOMs,Aizstāt BOM un atjaunināt jaunāko cenu visās BOMs,
 Replied,Atbildēja,
 Report,Ziņojums,
-Report Builder,Report Builder,
 Report Type,Ziņojums Type,
 Report Type is mandatory,Ziņojums Type ir obligāts,
 Reports,ziņojumi,
@@ -2355,13 +2323,11 @@
 Same Company is entered more than once,Pats uzņēmums ir reģistrēts vairāk nekā vienu reizi,
 Same item cannot be entered multiple times.,Pašu posteni nevar ievadīt vairākas reizes.,
 Same supplier has been entered multiple times,Pats piegādātājs ir ievadīts vairākas reizes,
-Sample,Paraugs,
 Sample Collection,Paraugu kolekcija,
 Sample quantity {0} cannot be more than received quantity {1},Paraugu skaits {0} nevar būt lielāks par saņemto daudzumu {1},
 Sanctioned,sodīts,
 Sand,Smiltis,
 Saturday,Sestdiena,
-Saved,Saglabāts,
 Saving {0},Saglabājot {0},
 Scan Barcode,Skenēt svītrkodu,
 Schedule,Grafiks,
@@ -2463,7 +2429,6 @@
 Series Updated,Series Atjaunots,
 Series Updated Successfully,Series Atjaunots Veiksmīgi,
 Series is mandatory,Dokumenta numurs ir obligāts,
-Series {0} already used in {1},Sērija {0} jau izmanto {1},
 Service,Pakalpojums,
 Service Level Agreement,Pakalpojumu līmeņa vienošanās,
 Service Level Agreement.,Pakalpojumu līmeņa vienošanās.,
@@ -2479,7 +2444,6 @@
 Set Tax Rule for shopping cart,Uzstādīt Nodokļu noteikums par iepirkumu grozs,
 Set as Closed,Uzstādīt kā Slēgts,
 Set as Completed,Iestatīt kā pabeigtu,
-Set as Default,Uzstādīt kā noklusēto,
 Set as Lost,Uzstādīt kā Lost,
 Set as Open,Uzstādīt kā Atvērt,
 Set default inventory account for perpetual inventory,Iestatīt noklusējuma inventāra veido pastāvīgās uzskaites,
@@ -2511,7 +2475,6 @@
 Shareholder,Akcionārs,
 Ship To State,Kuģis uz valsti,
 Shipments,Sūtījumi,
-Shipping,Piegāde,
 Shipping Address,Piegādes adrese,
 "Shipping Address does not have country, which is required for this Shipping Rule","Piegādes adresei nav valsts, kas ir nepieciešama šai nosūtīšanas noteikumiem",
 Shipping rule only applicable for Buying,Piegādes noteikumi attiecas tikai uz pirkšanu,
@@ -2564,7 +2527,6 @@
 Split Batch,Split Partijas,
 Split Issue,Split problēma,
 Sports,Sporta,
-Standard,Standarts,
 Standard Buying,Standarta iepirkums,
 Standard Selling,Standard pārdošana,
 Standard contract terms for Sales or Purchase.,Standarta līguma noteikumi par pārdošanu vai pirkšanu.,
@@ -2731,7 +2693,6 @@
 Terms and Conditions,Noteikumi un nosacījumi,
 Terms and Conditions Template,Noteikumi un nosacījumi Template,
 Territory,Teritorija,
-Test,Pārbaude,
 Thank you for your business!,Paldies par jūsu biznesu!,
 The 'From Package No.' field must neither be empty nor it's value less than 1.,"No iepakojuma Nr. lauks nedrīkst būt tukšs, vai arī tā vērtība ir mazāka par 1.",
 The Brand,Brand,
@@ -2848,7 +2809,6 @@
 Total (Without Tax),Kopā (bez nodokļiem),
 Total Achieved,Kopā Izpildīts,
 Total Actual,Kopā Faktiskais,
-Total Allocated Leaves,Kopējais izdalīto lapu skaits,
 Total Amount,Kopējā summa,
 Total Amount Credited,Kopējā kredīta summa,
 Total Applicable Charges in Purchase Receipt Items table must be same as Total Taxes and Charges,"Kopā piemērojamām izmaksām, kas pirkuma čeka Items galda jābūt tāds pats kā Kopā nodokļiem un nodevām",
@@ -2892,7 +2852,6 @@
 Total(Amt),Kopā (Amt),
 Total(Qty),Kopā (Daudz),
 Traceability,Izsekojamība,
-Traceback,Izsekot,
 Track Leads by Lead Source.,Track Leades ar svina avots.,
 Transaction,Darījums,
 Transaction Date,Darījuma datums,
@@ -2930,7 +2889,6 @@
 UOM Conversion factor is required in row {0},UOM pārrēķināšanas koeficients ir nepieciešams rindā {0},
 UOM coversion factor required for UOM: {0} in Item: {1},UOM Coversion faktors nepieciešama UOM: {0} postenī: {1},
 URL,URL,
-Unable to find DocType {0},Nevar atrast DocType {0},
 Unable to find exchange rate for {0} to {1} for key date {2}. Please create a Currency Exchange record manually,"Nevar atrast valūtas kursu {0} uz {1} par galveno dienas {2}. Lūdzu, izveidojiet Valūtas maiņas rekordu manuāli",
 Unable to find score starting at {0}. You need to have standing scores covering 0 to 100,"Nevar atrast rezultātu, sākot ar {0}. Jums ir jābūt pastāvīgiem punktiem, kas attiecas no 0 līdz 100",
 Unable to find variable: ,Nevar atrast mainīgo:,
@@ -2960,7 +2918,6 @@
 Upload your letter head and logo. (you can edit them later).,Augšupielādēt jūsu vēstules galva un logo. (Jūs varat rediģēt tos vēlāk).,
 Upper Income,Upper Ienākumi,
 Use Sandbox,Izmantot Sandbox,
-Used Leaves,Izmantotās lapas,
 User,Lietotājs,
 User ID,Lietotāja ID,
 User ID not set for Employee {0},"Lietotāja ID nav noteikts, Darbinieka {0}",
@@ -3051,7 +3008,6 @@
 Website Settings,Website iestatījumi,
 Wednesday,Trešdiena,
 Week,nedēļa,
-Weekdays,Nedēļas dienas,
 Weekly,Nedēļas,
 "Weight is mentioned,\nPlease mention ""Weight UOM"" too","Svars ir minēts, \ nLūdzu nerunājot ""Svara UOM"" too",
 Welcome email sent,Welcome e-pasts nosūtīts,
@@ -3072,7 +3028,6 @@
 Work Order {0} must be submitted,Darba kārtojums {0} jāiesniedz,
 Work Orders Created: {0},Izveidoti darba uzdevumi: {0},
 Work-in-Progress Warehouse is required before Submit,"Work-in-Progress Warehouse ir nepieciešams, pirms iesniegt",
-Workflow,Workflow,
 Working,Darba,
 Working Hours,Darba laiks,
 Workstation,Darba vieta,
@@ -3102,7 +3057,6 @@
 You need to be a user other than Administrator with System Manager and Item Manager roles to register on Marketplace.,"Lai reģistrētos vietnē Marketplace, jums ir jābūt lietotājam, kas nav Administrators ar sistēmas pārvaldnieku un vienumu pārvaldnieka lomu.",
 You need to be a user with System Manager and Item Manager roles to add users to Marketplace.,"Lai pievienotu Marketplace lietotājiem, jums ir jābūt lietotājam ar sistēmas pārvaldnieka un vienumu pārvaldnieka lomu.",
 You need to be a user with System Manager and Item Manager roles to register on Marketplace.,"Lai reģistrētos vietnē Marketplace, jums ir jābūt lietotājam ar sistēmas pārvaldnieka un vienumu pārvaldnieka lomu.",
-You need to be logged in to access this page,"Jums ir jābūt pieteicies, lai piekļūtu šai lapai",
 You need to enable Shopping Cart,"Jums ir nepieciešams, lai dotu iespēju Grozs",
 You will lose records of previously generated invoices. Are you sure you want to restart this subscription?,Jūs zaudēsiet iepriekš izveidoto rēķinu ierakstus. Vai tiešām vēlaties atjaunot šo abonementu?,
 Your Organization,Jūsu organizācija,
@@ -3218,7 +3172,6 @@
 Assigned To,Norīkoti,
 Chat,Tērzēšana,
 Completed By,Pabeigts ar,
-County,grāfiste,
 Day of Week,Nedēļas diena,
 "Dear System Manager,","Cienījamie System Manager,",
 Default Value,Default Value,
@@ -3229,31 +3182,21 @@
 Fieldtype,Fieldtype,
 Help Articles,Palīdzības raksti,
 ID,ID,
-Images,Images,
 Import,Imports,
 Language,Valoda,
 Likes,Patīk,
 Merge with existing,Saplūst ar esošo,
-Office,Birojs,
 Orientation,orientēšanās,
 Parent,Vecāks,
-Passive,Pasīvs,
 Payment Failed,maksājums neizdevās,
-Permanent,pastāvīgs,
 Personal,Personisks,
-Plant,Augs,
 Post,Amats,
-Postal,Pasta,
 Postal Code,Pasta indekss,
-Previous,Iepriekšējais,
 Provider,Piegādātājs,
 Read Only,Tikai lasāms,
 Recipient,Saņēmējs,
 Reviews,Atsauksmes,
 Sender,Nosūtītājs,
-Shop,Veikals,
-Subsidiary,Filiāle,
-There is some problem with the file url: {0},Ir dažas problēmas ar faila url: {0},
 There were errors while sending email. Please try again.,"Bija kļūdas, nosūtot e-pastu. Lūdzu, mēģiniet vēlreiz.",
 Values Changed,vērtības Mainīts,
 or,vai,
@@ -3280,19 +3223,16 @@
 Quality Feedback Template,Kvalitatīvas atsauksmes veidne,
 Rules for applying different promotional schemes.,Noteikumi dažādu reklāmas shēmu piemērošanai.,
 Show {0},Rādīt {0},
-"Special Characters except '-', '#', '.', '/', '{{' and '}}' not allowed in naming series {0}","Speciālās rakstzīmes, izņemot &quot;-&quot;, &quot;#&quot;, &quot;.&quot;, &quot;/&quot;, &quot;{{&quot; Un &quot;}}&quot;, kas nav atļautas nosaukuma sērijās {0}",
 Target Details,Mērķa informācija,
 {0} already has a Parent Procedure {1}.,{0} jau ir vecāku procedūra {1}.,
 API,API,
 Annual,Gada,
 Change,Maiņa,
 Contact Email,Kontaktpersonas e-pasta,
-Export Type,Eksporta veids,
 From Date,No Datums,
 Group By,Grupēt pēc,
 Invalid URL,Nederīgs URL,
 Landscape,Ainava,
-Last Sync On,Pēdējā sinhronizācija ir ieslēgta,
 Naming Series,Nosaucot Series,
 No data to export,Nav eksportējamu datu,
 Portrait,Portrets,
@@ -3302,7 +3242,6 @@
 Show Document,Rādīt dokumentu,
 Show Traceback,Rādīt izsekošanu,
 Video,Video,
-Webhook Secret,Webhook Secret,
 % Of Grand Total,% No kopējās summas,
 <b>Company</b> is a mandatory filter.,<b>Uzņēmums</b> ir obligāts filtrs.,
 <b>From Date</b> is a mandatory filter.,<b>No datuma</b> ir obligāts filtrs.,
@@ -3358,7 +3297,6 @@
 BOM Comparison Tool,BOM salīdzināšanas rīks,
 BOM recursion: {0} cannot be child of {1},BOM rekursija: {0} nevar būt {1} bērns,
 BOM recursion: {0} cannot be parent or child of {1},BOM rekursija: {0} nevar būt {1} vecāks vai bērns,
-Back to Home,Atpakaļ uz mājām,
 Back to Messages,Atpakaļ pie ziņojumiem,
 Bank Data mapper doesn't exist,Bankas datu kartētājs neeksistē,
 Bank Details,Bankas rekvizīti,
@@ -3420,7 +3358,6 @@
 Currency,Valūta,
 Current Status,Pašreizējais statuss,
 Customer PO,Klienta PO,
-Customize,Pielāgot,
 Daily,Katru dienu,
 Date,Datums,
 Date of Birth cannot be greater than Joining Date.,Dzimšanas datums nevar būt lielāks par iestāšanās datumu.,
@@ -3454,7 +3391,6 @@
 ERPNext could not find any matching payment entry,ERPNext nevarēja atrast atbilstošu maksājuma ierakstu,
 Earliest Age,Agrākais vecums,
 Edit Details,Rediģēt sīkāk,
-Edit Profile,Rediģēt profilu,
 Either GST Transporter ID or Vehicle No is required if Mode of Transport is Road,"Ja transporta veids ir autotransports, nav nepieciešama vai nu GST transportētāja ID, vai transportlīdzekļa numurs",
 Email,E-pasts,
 Email Campaigns,E-pasta kampaņas,
@@ -3482,7 +3418,6 @@
 Fetch Items from Warehouse,Ielādēt preces no noliktavas,
 Fetching...,Notiek ielāde ...,
 Field,lauks,
-File Manager,Failu pārvaldnieks,
 Filters,Filtri,
 Finding linked payments,Saistīto maksājumu atrašana,
 Fleet Management,Fleet Management,
@@ -3521,7 +3456,6 @@
 Incorrect Warehouse,Nepareiza noliktava,
 Invalid Barcode. There is no Item attached to this barcode.,Nederīgs svītrkods. Šim svītrkodam nav pievienots vienums.,
 Invalid credentials,Nederīgi akreditācijas dati,
-Invite as User,Uzaicināt kā lietotājs,
 Issue Priority.,Izdošanas prioritāte.,
 Issue Type.,Izdošanas veids.,
 "It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","Šķiet, ka pastāv servera joslas konfigurācijas problēma. Neveiksmes gadījumā summa tiks atmaksāta jūsu kontā.",
@@ -3564,7 +3498,6 @@
 New Invoice,Jauns rēķins,
 New Payment,Jauns maksājums,
 New release date should be in the future,Jaunā izlaišanas datumam vajadzētu būt nākotnē,
-Newsletter,Biļetens,
 No Account matched these filters: {},Neviens konts neatbilda šiem filtriem: {},
 No communication found.,Nav atrasta saziņa.,
 No correct answer is set for {0},Vietnei {0} nav iestatīta pareiza atbilde,
@@ -3640,7 +3573,6 @@
 Please setup a default bank account for company {0},"Lūdzu, iestatiet uzņēmuma {0} noklusējuma bankas kontu.",
 Please specify,"Lūdzu, norādiet",
 Please specify a {0},"Lūdzu, norādiet {0}",lead
-Printing,Iespiešana,
 Priority,Prioritāte,
 Priority has been changed to {0}.,Prioritāte ir mainīta uz {0}.,
 Priority {0} has been repeated.,Prioritāte {0} ir atkārtota.,
@@ -3649,7 +3581,6 @@
 Project,Projekts,
 Provide the academic year and set the starting and ending date.,Norādiet akadēmisko gadu un iestatiet sākuma un beigu datumu.,
 Public token is missing for this bank,Šai bankai trūkst publiska marķiera,
-Publish,Publicēt,
 Publish 1 Item,Publicēt 1 vienumu,
 Publish Items,Publicēt preces,
 Publish More Items,Publicēt vairāk vienumu,
@@ -3677,7 +3608,6 @@
 Reconciled,Samierinājies,
 Recruitment,vervēšana,
 Red,Sarkans,
-Refreshing,Atsvaidzinoša,
 Release date must be in the future,Izdošanas datumam jābūt nākotnē,
 Relieving Date must be greater than or equal to Date of Joining,Atvieglojuma datumam jābūt lielākam vai vienādam ar iestāšanās datumu,
 Rename,Pārdēvēt,
@@ -3721,7 +3651,6 @@
 Search for a payment,Meklējiet maksājumu,
 Search for anything ...,Meklējiet jebko ...,
 Search results for,Meklēšanas rezultāti,
-Select All,Izvēlēties visu,
 Select Difference Account,Atlasiet Starpības konts,
 Select a Default Priority.,Atlasiet noklusējuma prioritāti.,
 Select a company,Izvēlieties uzņēmumu,
@@ -3740,11 +3669,9 @@
 Service Level Agreement has been changed to {0}.,Pakalpojuma līmeņa līgums ir mainīts uz {0}.,
 Service Level Agreement was reset.,Pakalpojuma līmeņa līgums tika atiestatīts.,
 Service Level Agreement with Entity Type {0} and Entity {1} already exists.,Pakalpojuma līmeņa līgums ar entītijas veidu {0} un entītiju {1} jau pastāv.,
-Set,Uzlikt,
 Set Meta Tags,Iestatīt meta tagus,
 Set {0} in company {1},Iestatiet {0} uzņēmumā {1},
 Setup,Setup,
-Setup Wizard,Setup Wizard,
 Shift Management,Maiņu vadība,
 Show Future Payments,Rādīt nākotnes maksājumus,
 Show Linked Delivery Notes,Rādīt saistītās piegādes piezīmes,
@@ -3815,7 +3742,6 @@
 Unreconciled,Nesaskaņots,
 Unsupported GST Category for E-Way Bill JSON generation,Neatbalstīta GST kategorija E-Way Bill JSON paaudzei,
 Update,Atjaunināt,
-Update Details,Atjaunināt informāciju,
 Update Taxes for Items,Atjauniniet priekšmetu nodokļus,
 "Upload a bank statement, link or reconcile a bank account","Augšupielādējiet bankas izrakstu, izveidojiet saiti vai saskaņojiet bankas kontu",
 Upload a statement,Augšupielādējiet paziņojumu,
@@ -3839,7 +3765,6 @@
 XML Files Processed,Apstrādāti XML faili,
 Year,Gads,
 Yearly,Katru gadu,
-You,Tu,
 You are not allowed to enroll for this course,Jums nav atļauts reģistrēties šajā kursā,
 You are not enrolled in program {0},Jūs neesat reģistrējies programmā {0},
 You can Feature upto 8 items.,Jūs varat piedāvāt līdz pat 8 vienumiem.,
@@ -3856,7 +3781,6 @@
 e-Way Bill already exists for this document,e-Way rēķins šim dokumentam jau pastāv,
 woocommerce - {0},e-komercija - {0},
 {0} Coupon used are {1}. Allowed quantity is exhausted,Izmantotais {0} kupons ir {1}. Atļautais daudzums ir izsmelts,
-{0} Name,{0} Name,
 {0} Operations: {1},{0} Darbības: {1},
 {0} bank transaction(s) created,Izveidots (-i) {0} bankas darījums,
 {0} bank transaction(s) created and {1} errors,Izveidots (-i) {0} bankas darījums un {1} kļūdas,
@@ -3875,17 +3799,13 @@
 Total Income,Kopējie ienākumi,
 Total Income This Year,Kopējie ienākumi šogad,
 Barcode,Svītrkods,
-Bold,Bold,
-Center,Centrs,
 Clear,Skaidrs,
-Comment,Komentārs,
 Comments,Komentāri,
 DocType,DocType,
 Download,Lejupielādēt,
 Left,Kreisais,
 Link,Saite,
 New,Jauns,
-Not Found,Not Found,
 Print,Drukāt,
 Reference Name,Atsauces nosaukums,
 Refresh,Atsvaidzināt,
@@ -3908,7 +3828,6 @@
 Email Id,E-pasta ID,
 No,Nē,
 Reference Doctype,Atsauce DOCTYPE,
-User Id,Lietotāja ID,
 Yes,Jā,
 Actual ,Faktisks,
 Add to cart,Pievienot grozam,
@@ -4304,7 +4223,6 @@
 e.g Adjustments for:,Pielāgojumi:,
 Section Subtotal,Iedaļa Starpsumma,
 Section Footer,Iedaļas pēdējā daļa,
-Position,Amats,
 Cash Flow Mapping,Naudas plūsmas kartēšana,
 Select Maximum Of 1,Atlasiet maksimumu no 1,
 Is Finance Cost,Ir finanšu izmaksas,
@@ -4936,7 +4854,6 @@
 Previous Business Day,Iepriekšējā darba diena,
 Next Business Day,Nākamā darba diena,
 Urgent,Steidzams,
-Crop,Apgriezt,
 Crop Name,Apgriešanas nosaukums,
 Scientific Name,Zinātniskais nosaukums,
 "You can define all the tasks which need to carried out for this crop here. The day field is used to mention the day on which the task needs to be carried out, 1 being the 1st day, etc.. ","Šeit jūs varat definēt visus uzdevumus, kas jāveic šim kultūrai. Dienas lauks tiek izmantots, lai norādītu dienu, kad uzdevums ir jāveic, 1 ir 1. diena utt.",
@@ -5441,7 +5358,6 @@
 To TIme,Uz laiku,
 Course End Date,"Protams, beigu datums",
 Course Topic,Kursa tēma,
-Topic,Temats,
 Topic Name,Tēma Name,
 Education Settings,Izglītības iestatījumi,
 Current Academic Year,Pašreizējais akadēmiskais gads,
@@ -5516,7 +5432,6 @@
 Check this if the Student is residing at the Institute's Hostel.,"Atzīmējiet šo, ja students dzīvo pie institūta Hostel.",
 Walking,iešana,
 Institute's Bus,Institūta autobuss,
-Public Transport,Sabiedriskais transports,
 Self-Driving Vehicle,Self-Braukšanas Transportlīdzekļu,
 Pick/Drop by Guardian,Pick / nokristies Guardian,
 Enrolled courses,Reģistrējušies kursi,
@@ -5697,7 +5612,6 @@
 Default Cost Center,Default Izmaksu centrs,
 Undeposited Funds Account,Nemainīgo līdzekļu konts,
 Shopify Log,Shopify žurnāls,
-Request Data,Pieprasīt datus,
 Shopify Settings,Shopify iestatījumi,
 status html,statuss html,
 Enable Shopify,Iespējot Shopify,
@@ -5817,7 +5731,6 @@
 Exercise Instructions,Vingrojumu instrukcijas,
 Exercise Video,Vingrojumu video,
 Exercise Steps,Vingrošanas soļi,
-Steps,Soļi,
 Steps Table,Pakāpienu tabula,
 Exercise Type Step,Vingrinājuma veida solis,
 Max number of visit,Maksimālais apmeklējuma skaits,
@@ -6001,7 +5914,6 @@
 Patient Encounter Symptom,Pacientu tikšanās simptoms,
 HLC-PMR-.YYYY.-,HLC-PMR-.YYYY.-,
 Attach Medical Record,Pievienojiet medicīnisko ierakstu,
-Reference DocType,Atsauce DocType,
 Spouse,Laulātais,
 Family,Ģimene,
 Schedule Details,Informācija par grafiku,
@@ -6983,16 +6895,8 @@
 HTML / Banner that will show on the top of product list.,"HTML / Banner, kas parādīsies uz augšu produktu sarakstu.",
 Set prefix for numbering series on your transactions,Uzstādīt tituls numerāciju sērijas par jūsu darījumiem,
 Setup Series,Dokumentu numuru Iestatījumi,
-Select Transaction,Izvēlieties Transaction,
-Help HTML,Palīdzība HTML,
-Series List for this Transaction,Sērija saraksts par šo darījumu,
-User must always select,Lietotājam ir vienmēr izvēlēties,
-Check this if you want to force the user to select a series before saving. There will be no default if you check this.,"Atzīmējiet šo, ja vēlaties, lai piespiestu lietotājam izvēlēties vairākus pirms saglabāšanas. Nebūs noklusējuma, ja jūs pārbaudīt šo.",
 Update Series,Update Series,
 Change the starting / current sequence number of an existing series.,Mainīt sākuma / pašreizējo kārtas numuru esošam sēriju.,
-Prefix,Priedēklis,
-This is the number of the last created transaction with this prefix,Tas ir skaitlis no pēdējiem izveidots darījuma ar šo prefiksu,
-Update Series Number,Update Series skaits,
 Quotation Lost Reason,Piedāvājuma Zaudējuma Iemesls,
 A third party distributor / dealer / commission agent / affiliate / reseller who sells the companies products for a commission.,"Trešā persona izplatītājs / tirgotājs / komisijas pārstāvis / filiāli / izplatītāja, kurš pārdod uzņēmumiem produktus komisija.",
 Sales Partner Name,Sales Partner Name,
@@ -7687,7 +7591,6 @@
 Warehouse wise Item Balance Age and Value,Noliktavas gudrs Preces balanss Vecums un vērtība,
 Work Order Stock Report,Darbu pasūtījumu akciju pārskats,
 Work Orders in Progress,Darba uzdevumi tiek veikti,
-Validation Error,Apstiprināšanas kļūda,
 Automatically Process Deferred Accounting Entry,Automātiski apstrādāt atlikto grāmatvedības ierakstu,
 Bank Clearance,Bankas noskaidrošana,
 Bank Clearance Detail,Bankas noskaidrošanas informācija,
@@ -7724,45 +7627,7 @@
 Therapy Plan: ,Terapijas plāns:,
 Total Counts Targeted: ,Kopējais mērķa skaits:,
 Total Counts Completed: ,Kopējais pabeigto skaitļu skaits:,
-Andaman and Nicobar Islands,Andamana un Nikobaras salas,
-Andhra Pradesh,Andhra Pradēša,
-Arunachal Pradesh,Arunachal Pradesh,
-Assam,Assam,
-Bihar,Bihars,
-Chandigarh,Čandigarhs,
-Chhattisgarh,Chhattisgarh,
-Dadra and Nagar Haveli,Dadra un Nagars Haveli,
-Daman and Diu,Damans un Diu,
-Delhi,Deli,
-Goa,Goa,
-Gujarat,Gudžarāts,
-Haryana,Harjāna,
-Himachal Pradesh,Himačala Pradēša,
-Jammu and Kashmir,Džammu un Kašmiru,
-Jharkhand,Džārhands,
-Karnataka,Karnataka,
-Kerala,Kerala,
-Lakshadweep Islands,Lakshadweep salas,
-Madhya Pradesh,Madhja Pradēša,
-Maharashtra,Mahārāštra,
-Manipur,Manipurs,
-Meghalaya,Meghalaya,
-Mizoram,Mizoram,
-Nagaland,Nagaland,
-Odisha,Odiša,
-Other Territory,Cita teritorija,
-Pondicherry,Pondicherry,
-Punjab,Pendžabs,
-Rajasthan,Radžastāna,
-Sikkim,Sikkim,
-Tamil Nadu,Tamil Nadu,
-Telangana,Telangana,
-Tripura,Tripura,
-Uttar Pradesh,Utarpradēša,
-Uttarakhand,Utarakhanda,
-West Bengal,Rietumbengāle,
 Is Mandatory,Ir obligāta,
-Published on,Publicēts vietnē,
 Service Received But Not Billed,"Pakalpojums saņemts, bet nav rēķins",
 Deferred Accounting Settings,Atliktie grāmatvedības iestatījumi,
 Book Deferred Entries Based On,Grāmata atlikto ierakstu pamatā,
@@ -8035,8 +7900,6 @@
 Worksheet Instructions,Darblapas instrukcijas,
 Result Legend Print,Rezultātu leģendu druka,
 Print Position,Drukas pozīcija,
-Bottom,Apakšā,
-Top,Tops,
 Both,Abi,
 Result Legend,Rezultātu leģenda,
 Lab Tests,Laboratorijas testi,
@@ -8081,12 +7944,10 @@
 Approvers,Apstiprinātāji,
 The first Approver in the list will be set as the default Approver.,Pirmais apstiprinātājs sarakstā tiks iestatīts kā noklusējuma apstiprinātājs.,
 Shift Request Approver,Maiņas pieprasījuma apstiprinātājs,
-PAN Number,PAN numurs,
 Provident Fund Account,Provident Fund konts,
 MICR Code,MICR kods,
 Repay unclaimed amount from salary,Atmaksājiet nepieprasīto summu no algas,
 Deduction from salary,Atskaitīšana no algas,
-Expired Leaves,"Lapas, kurām beidzies derīguma termiņš",
 If this is not checked the loan by default will be considered as a Demand Loan,"Ja tas nav pārbaudīts, aizdevums pēc noklusējuma tiks uzskatīts par Pieprasījuma aizdevumu",
 This account is used for booking loan repayments from the borrower and also disbursing loans to the borrower,"Šis konts tiek izmantots, lai rezervētu aizdevuma atmaksu no aizņēmēja un arī aizdevuma izmaksu aizņēmējam",
 This account is capital account which is used to allocate capital for loan disbursal account ,"Šis konts ir kapitāla konts, ko izmanto, lai piešķirtu kapitālu aizdevuma izmaksas kontam",
@@ -8844,3 +8705,41 @@
 Creating Purchase Order ...,Notiek pirkuma pasūtījuma izveide ...,
 "Select a Supplier from the Default Suppliers of the items below. On selection, a Purchase Order will be made against items belonging to the selected Supplier only.","Izvēlieties piegādātāju no tālāk norādīto vienumu noklusējuma piegādātājiem. Pēc izvēles tiks veikts pirkuma pasūtījums tikai par precēm, kas pieder izvēlētajam piegādātājam.",
 Row #{}: You must select {} serial numbers for item {}.,#. Rinda: jums jāizvēlas {} vienuma sērijas numuri {}.,
+Add Comment,Pievienot komentāru,
+More...,More ...,
+Notes,Piezīmes,
+Payment Gateway,Maksājumu Gateway,
+Payment Gateway Name,Maksājumu vārtejas nosaukums,
+Payments,Maksājumi,
+Plan Name,Plāna nosaukums,
+Portal,Portāls,
+Scan Barcode,Skenēt svītrkodu,
+Some information is missing,Daži trūkst informācijas,
+Successful,Veiksmīga,
+Tools,Darbarīki,
+Use Sandbox,Izmantot Sandbox,
+Busy,Aizņemts,
+Completed By,Pabeigts ar,
+Payment Failed,maksājums neizdevās,
+Column {0},{0} kolonna,
+Field Mapping,Lauka kartēšana,
+Not Specified,Nav precizēts,
+Update Type,Atjaunināšanas tips,
+Dr,Dr,
+End Time,Beigu laiks,
+Fetching...,Notiek ielāde ...,
+"It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","Šķiet, ka pastāv servera joslas konfigurācijas problēma. Neveiksmes gadījumā summa tiks atmaksāta jūsu kontā.",
+Looks like someone sent you to an incomplete URL. Please ask them to look into it.,"Izskatās kāds jūs sūtīju nepilnīgu URL. Lūdzu, palūdziet, lai apskatīt to.",
+Master,Meistars,
+Pay,Maksāt,
+You can also copy-paste this link in your browser,Jūs varat arī kopēt-ielīmēt šo saiti savā pārlūkprogrammā,
+Verified By,Verified by,
+Invalid naming series (. missing) for {0},Vietnei {0} nav derīga nosaukumu sērija (. Trūkst).,
+Phone Number,Telefona numurs,
+Account SID,Konta SID,
+Global Defaults,Globālie Noklusējumi,
+Is Mandatory,Ir obligāta,
+WhatsApp,WhatsApp,
+Make a call,Piezvanīt,
+Approve,Apstiprināt,
+Reject,Noraidīt,
diff --git a/erpnext/translations/mk.csv b/erpnext/translations/mk.csv
index 06d7e65..f01b1b0 100644
--- a/erpnext/translations/mk.csv
+++ b/erpnext/translations/mk.csv
@@ -113,7 +113,6 @@
 Add Items,Додај ставки,
 Add Leads,Додај води,
 Add Multiple Tasks,Додај повеќе задачи,
-Add Row,Додај ред,
 Add Sales Partners,Додај партнери за продажба,
 Add Serial No,Додади Сериски Не,
 Add Students,Додај Студентите,
@@ -211,9 +210,7 @@
 An error occurred during the update process,Се појави грешка за време на процесот на ажурирање,
 "An item exists with same name ({0}), please change the item group name or rename the item","Ставка ({0}) со исто име веќе постои, ве молиме сменете го името на групата ставки или името на ставката",
 Analyst,Аналитичарот,
-Analytics,анализатор,
 Annual Billing: {0},Годишен регистрации: {0},
-Anonymous,Анонимен,
 Another Budget record '{0}' already exists against {1} '{2}' and account '{3}' for fiscal year {4},Друг буџетски запис &quot;{0}&quot; веќе постои против {1} &#39;{2}&#39; и сметка &#39;{3}&#39; за фискалната година {4},
 Another Period Closing Entry {0} has been made after {1},Уште еден период Затворање Влегување {0} е направен по {1},
 Another Sales Person {0} exists with the same Employee id,Постои уште еден продажбата на лице {0} со истиот Вработен проект,
@@ -283,14 +280,12 @@
 Attendance not submitted for {0} as {1} on leave.,Публика не е поднесена за {0} како {1} на одмор.,
 Attribute table is mandatory,Атрибут маса е задолжително,
 Attribute {0} selected multiple times in Attributes Table,Атрибут {0} одбрани неколку пати во атрибути на табелата,
-Author,автор,
 Authorized Signatory,Овластен потписник,
 Auto Material Requests Generated,Авто Материјал Барања Генерирано,
 Auto Repeat,Автоматско повторување,
 Auto repeat document updated,Автоматско повторување на документот се ажурира,
 Automotive,Автомобилски,
 Available,Достапни,
-Available Leaves,Достапни листови,
 Available Qty,На располагање Количина,
 Available Selling,Достапно Продажба,
 Available for use date is required,Достапен е датум за користење,
@@ -340,7 +335,6 @@
 Base URL,Основен URL,
 Based On,Врз основа на,
 Based On Payment Terms,Врз основа на Услови за плаќање,
-Basic,Основни,
 Batch,Серија,
 Batch Entries,Записи во серија,
 Batch ID is mandatory,Batch ID е задолжително,
@@ -361,7 +355,6 @@
 Billable Hours,Часови за наплата,
 Billed,Фактурирани,
 Billed Amount,Фактурирани Износ,
-Billing,Платежна,
 Billing Address,Платежна адреса,
 Billing Address is same as Shipping Address,Адреса за наплата е иста како и адресата за испорака,
 Billing Amount,Платежна Износ,
@@ -560,7 +553,6 @@
 Consumed Qty,Конзумира Количина,
 Consumer Products,Производи за широка потрошувачка,
 Contact,Контакт,
-Contact Details,Податоци за контакт,
 Contact Us,Контактирајте не,
 Content,Содржина,
 Content Masters,Мајстори за содржини,
@@ -715,7 +707,6 @@
 Date of Joining,Датум на приклучување,
 Date of Joining must be greater than Date of Birth,Датум на приклучување мора да биде поголем Датум на раѓање,
 Date of Transaction,Датум на трансакција,
-Datetime,Datetime,
 Day,ден,
 Debit,Дебитна,
 Debit ({0}),Дебит ({0}),
@@ -874,7 +865,6 @@
 Employee cannot report to himself.,Вработените не можат да известуваат за себе.,
 Employee {0} has already applied for {1} between {2} and {3} : ,Вработениот {0} веќе аплицираше за {1} помеѓу {2} и {3}:,
 Employee {0} of grade {1} have no default leave policy,Вработениот {0} од одделение {1} нема политика за напуштање на стандард,
-Enable,Овозможи,
 Enable / disable currencies.,Овозможи / оневозможи валути.,
 Enabled,Овозможено,
 "Enabling 'Use for Shopping Cart', as Shopping Cart is enabled and there should be at least one Tax Rule for Shopping Cart","Овозможувањето на &quot;Користи за Корпа&quot;, како што Кошничка е овозможено и треба да има најмалку еден данок Правилникот за Кошничка",
@@ -905,7 +895,6 @@
 Error: Not a valid id?,Грешка: Не е валидна проект?,
 Estimated Cost,Проценетите трошоци,
 "Even if there are multiple Pricing Rules with highest priority, then following internal priorities are applied:","Дури и ако постојат повеќе Цените правила со највисок приоритет, тогаш се применуваат следните интерни приоритети:",
-Event,Настан,
 Exchange Gain/Loss,Размена Добивка / Загуба,
 Exchange Rate Revaluation master.,Господар за проценка на девизниот курс.,
 Exchange Rate must be same as {0} {1} ({2}),Девизниот курс мора да биде иста како {0} {1} ({2}),
@@ -1032,7 +1021,6 @@
 From value must be less than to value in row {0},Од вредност мора да биде помал од вредност во ред {0},
 From {0} | {1} {2},Од {0} | {1} {2},
 Fulfillment,Исполнување,
-Full,Целосно,
 Full Name,Целосно име,
 Fully Depreciated,целосно амортизираните,
 Furnitures and Fixtures,Мебел и тела,
@@ -1133,7 +1121,6 @@
 Hub Sync ID,Hub Sync ID,
 Human Resource,Човечки ресурси,
 Human Resources,Човечки ресурси,
-IFSC Code,IFSC код,
 IGST Amount,Износ на IGST,
 IP Address,IP адреса,
 ITC Available (whether in full op part),ИТЦ достапен (без разлика дали е во целост опција),
@@ -1185,7 +1172,6 @@
 Ineligible ITC,Неподобен ITC,
 Initiated,Инициран,
 Inpatient Record,Зборот за бебиња,
-Insert,Вметнете,
 Installation Note,Инсталација Забелешка,
 Installation Note {0} has already been submitted,Инсталација Забелешка {0} е веќе испратена,
 Installation date cannot be before delivery date for Item {0},Датум на инсталација не може да биде пред датумот на испорака за Точка {0},
@@ -1197,7 +1183,6 @@
 Insurance Start date should be less than Insurance End date,Дата на започнување осигурување треба да биде помал од осигурување Дата на завршување,
 Integrated Tax,Интегриран данок,
 Inter-State Supplies,Меѓудржавни материјали,
-Interests,Интереси,
 Internet Publishing,Интернет издаваштво,
 Intra-State Supplies,Интра-државни материјали,
 Introduction,Вовед,
@@ -1316,7 +1301,6 @@
 Lab testing datetime cannot be before collection datetime,Лабораторија за тестирање на податоци за време не може да биде пред собирање на податоци,
 Label,Етикета,
 Laboratory,Лабораторија,
-Language Name,јазик Име,
 Large,Големи,
 Last Communication,последната комуникација,
 Last Communication Date,Датум на последната комуникација,
@@ -1347,8 +1331,6 @@
 Letter Heads for print templates.,Писмо глави за печатење на обрасци.,
 Level,Ниво,
 Liability,Одговорност,
-License,Лиценца,
-Limit,Граница,
 Limit Crossed,граница Преминал,
 Link to Material Request,Линк до материјално барање,
 List of all share transactions,Листа на сите удели во акции,
@@ -1359,7 +1341,6 @@
 Loans (Liabilities),Кредити (Пасива),
 Loans and Advances (Assets),Кредити и побарувања (средства),
 Local,Локалните,
-Log,Пријавете се,
 Logs for maintaining sms delivery status,Дневници за одржување на статусот на испораката смс,
 Lost,Си ја заборавивте,
 Lost Reasons,Изгубени причини,
@@ -1445,7 +1426,6 @@
 Medical Department,Медицински оддел,
 Medical Record,Медицински рекорд,
 Medium,Медиум,
-Meeting,Средба,
 Member Activity,Член активност,
 Member ID,ИД на член,
 Member Name,Име на член,
@@ -1495,7 +1475,6 @@
 Multiple Variants,Повеќе варијанти,
 Multiple fiscal years exist for the date {0}. Please set company in Fiscal Year,постојат повеќе фискални години за датумот {0}. Поставете компанијата во фискалната,
 Music,Музика,
-My Account,Моја сметка,
 Name error: {0},Име грешка: {0},
 Name of new Account. Note: Please don't create accounts for Customers and Suppliers,Име на нова сметка. Забелешка: Ве молиме да не се создаде сметки за клиентите и добавувачите,
 Name or Email is mandatory,Име или е-пошта е задолжително,
@@ -1538,7 +1517,6 @@
 New credit limit is less than current outstanding amount for the customer. Credit limit has to be atleast {0},Нов кредитен лимит е помала од сегашната преостанатиот износ за клиентите. Кредитен лимит мора да биде барем {0},
 New task,Нова задача,
 New {0} pricing rules are created,Се креираат нови {0} правила за цените,
-Newsletters,Билтени,
 Newspaper Publishers,Новински издавачи,
 Next,Следна,
 Next Contact By cannot be same as the Lead Email Address,Следна Контакт Со тоа што не може да биде ист како олово-мејл адреса,
@@ -1686,7 +1664,6 @@
 Other,Други,
 Other Reports,Други извештаи,
 "Other outward supplies(Nil rated,Exempted)","Други надворешни материјали (нула со оценка, Ослободена)",
-Others,"Други, пак,",
 Out Qty,Од Количина,
 Out Value,Од вредност,
 Out of Order,Надвор од нарачката,
@@ -1726,7 +1703,6 @@
 Party Type and Party is mandatory for {0} account,Тип на партија и партија е задолжителна за {0} сметка,
 Party Type is mandatory,Тип на партијата е задолжително,
 Party is mandatory,Партијата е задолжително,
-Password,Лозинка,
 Past Due Date,Датум на достасаност,
 Patient,Трпелив,
 Patient Appointment,Именување на пациентот,
@@ -1784,7 +1760,6 @@
 Pharmaceutical,Фармацевтската,
 Pharmaceuticals,Лекови,
 Physician,Лекар,
-Pincode,Pincode,
 Place Of Supply (State/UT),Место на снабдување (држава / УТ),
 Place Order,Поставите цел,
 Plan Name,Име на планот,
@@ -1896,7 +1871,6 @@
 Please select date,Ве молиме одберете датум,
 Please select item code,Ве молиме изберете код ставка,
 Please select month and year,Ве молиме изберете месец и година,
-Please select prefix first,Ве молиме изберете префикс прв,
 Please select the Company,Ве молиме изберете ја компанијата,
 Please select the Multiple Tier Program type for more than one collection rules.,Ве молиме изберете го типот на повеќе нивоа за повеќе правила за собирање.,
 Please select the assessment group other than 'All Assessment Groups',Ве молиме изберете ја групата за процена освен &quot;Сите групи оценување&quot;,
@@ -1913,7 +1887,6 @@
 Please set Company filter blank if Group By is 'Company',Поставете компанијата филтер празно ако група од страна е &quot;Друштвото&quot;,
 Please set Default Payroll Payable Account in Company {0},Поставете Стандардна Даноци се плаќаат сметка во Друштвото {0},
 Please set Depreciation related Accounts in Asset Category {0} or Company {1},Поставете Амортизација поврзани сметки во Категорија Средства {0} или куќа {1},
-Please set Email Address,Поставете ја е-мејл адреса,
 Please set GST Accounts in GST Settings,Ве молам поставете ги GST профилите во GST Settings,
 Please set Hotel Room Rate on {},Те молам постави го Hotel Room Rate на {},
 Please set Number of Depreciations Booked,Поставете Број на амортизациони Резервирано,
@@ -1936,7 +1909,6 @@
 Please set the Email ID for the Student to send the Payment Request,Те молам постави Идентификатор за е-пошта за ученикот да испрати барање за исплата,
 Please set the Item Code first,Те молам прво наместете го Код,
 Please set the Payment Schedule,Поставете го Распоредот за плаќање,
-Please set the series to be used.,Ве молиме поставете ја серијата што ќе се користи.,
 Please set {0} for address {1},Ве молиме поставете {0} за адреса {1},
 Please setup Students under Student Groups,Те молам постави ученици од студентски групи,
 Please specify Company,"Ве молиме назначете фирма,",
@@ -1953,7 +1925,6 @@
 Point-of-Sale,Point-of-Продажба,
 Point-of-Sale Profile,Point-of-Продажба Профил,
 Portal,Порталот,
-Portal Settings,портал Settings,
 Possible Supplier,можни Добавувачот,
 Postal Expenses,Поштенски трошоци,
 Posting Date,Датум на објавување,
@@ -2152,12 +2123,10 @@
 Reference No is mandatory if you entered Reference Date,Референтен број е задолжително ако влезе референтен датум,
 Reference No.,Референтен број,
 Reference Number,Референтен број,
-Reference Owner,Суд за сопственикот,
 Reference Type,Референтен Тип,
 "Reference: {0}, Item Code: {1} and Customer: {2}","Суд: {0}, Точка Код: {1} и од купувачи: {2}",
 References,Референци,
 Refresh Token,Освежи токен,
-Region,Регионот,
 Register,Регистрирај се,
 Rejected,Одбиени,
 Related,Поврзани,
@@ -2179,7 +2148,6 @@
 Replace BOM and update latest price in all BOMs,Заменете Бум и ажурирајте ја најновата цена во сите спецификации,
 Replied,Одговори,
 Report,Извештај,
-Report Builder,Креирај извештај,
 Report Type,Тип на излагањето,
 Report Type is mandatory,Тип на излагањето е задолжително,
 Reports,извештаи,
@@ -2355,13 +2323,11 @@
 Same Company is entered more than once,Истата компанија се внесе повеќе од еднаш,
 Same item cannot be entered multiple times.,Истата ставка не може да се внесе повеќе пати.,
 Same supplier has been entered multiple times,Ист снабдувач се внесени повеќе пати,
-Sample,Пример,
 Sample Collection,Збирка примероци,
 Sample quantity {0} cannot be more than received quantity {1},Количината на примерокот {0} не може да биде повеќе од добиената количина {1},
 Sanctioned,Санкционирани,
 Sand,Песок,
 Saturday,Сабота,
-Saved,Зачувани,
 Saving {0},Зачувување {0},
 Scan Barcode,Скенирајте бар-код,
 Schedule,Распоред,
@@ -2463,7 +2429,6 @@
 Series Updated,Серија освежено,
 Series Updated Successfully,Серија успешно ажурирани,
 Series is mandatory,Серија е задолжително,
-Series {0} already used in {1},Серија {0} веќе се користи во {1},
 Service,Услуги,
 Service Level Agreement,Договор за услужно ниво,
 Service Level Agreement.,Договор за услужно ниво.,
@@ -2479,7 +2444,6 @@
 Set Tax Rule for shopping cart,Постави Данок Правило за количката,
 Set as Closed,Постави како затворено,
 Set as Completed,Поставете како завршено,
-Set as Default,Постави како стандарден,
 Set as Lost,Постави како изгубени,
 Set as Open,Постави како отворено,
 Set default inventory account for perpetual inventory,Поставете инвентар стандардна сметка за постојана инвентар,
@@ -2511,7 +2475,6 @@
 Shareholder,Акционер,
 Ship To State,Брод до држава,
 Shipments,Пратки,
-Shipping,Испорака,
 Shipping Address,Адреса за Испорака,
 "Shipping Address does not have country, which is required for this Shipping Rule","Адресата за испорака нема земја, која е потребна за ова Правило за испорака",
 Shipping rule only applicable for Buying,Правило за испорака единствено применливо за Купување,
@@ -2564,7 +2527,6 @@
 Split Batch,Сплит Batch,
 Split Issue,Сплит проблем,
 Sports,Спорт,
-Standard,Стандард,
 Standard Buying,Стандардна Купување,
 Standard Selling,Стандардна продажба,
 Standard contract terms for Sales or Purchase.,Стандардна условите на договорот за продажба или купување.,
@@ -2731,7 +2693,6 @@
 Terms and Conditions,Услови и правила,
 Terms and Conditions Template,Услови и правила Шаблон,
 Territory,Територија,
-Test,Тест,
 Thank you for your business!,Ви благодариме за вашиот бизнис!,
 The 'From Package No.' field must neither be empty nor it's value less than 1.,"&quot;Од пакетот број&quot; полето не смее ниту да биде празно, ниту да биде помало од 1.",
 The Brand,Бренд,
@@ -2848,7 +2809,6 @@
 Total (Without Tax),Вкупно (без данок),
 Total Achieved,Вкупно Постигнати,
 Total Actual,Вкупно Крај,
-Total Allocated Leaves,Вкупно распределени листови,
 Total Amount,Вкупен износ,
 Total Amount Credited,Вкупен износ на кредит,
 Total Applicable Charges in Purchase Receipt Items table must be same as Total Taxes and Charges,Вкупно применливи давачки во Набавка Потврда Предмети маса мора да биде иста како и вкупните даноци и давачки,
@@ -2892,7 +2852,6 @@
 Total(Amt),Вкупно (Износ),
 Total(Qty),Вкупно (Количина),
 Traceability,Следење,
-Traceback,Traceback,
 Track Leads by Lead Source.,Следете ги главните извори на енергија.,
 Transaction,Трансакција,
 Transaction Date,Датум на трансакција,
@@ -2930,7 +2889,6 @@
 UOM Conversion factor is required in row {0},Фактор UOM конверзија е потребно во ред {0},
 UOM coversion factor required for UOM: {0} in Item: {1},UOM фактор coversion потребни за UOM: {0} во точка: {1},
 URL,URL,
-Unable to find DocType {0},Не може да се пронајде DocType {0},
 Unable to find exchange rate for {0} to {1} for key date {2}. Please create a Currency Exchange record manually,Не може да се најде на девизниот курс за {0} до {1} за клучните датум {2}. Ве молиме да се создаде рекорд Девизен рачно,
 Unable to find score starting at {0}. You need to have standing scores covering 0 to 100,Не може да се најде резултат почнувајќи од {0}. Треба да имате рејтинг од 0 до 100,
 Unable to find variable: ,Не може да се најде променлива:,
@@ -2960,7 +2918,6 @@
 Upload your letter head and logo. (you can edit them later).,Внеси писмо главата и логото. (Можете да ги менувате подоцна).,
 Upper Income,Горниот дел од приходите,
 Use Sandbox,Користете Sandbox,
-Used Leaves,Користени листови,
 User,Корисник,
 User ID,ID на корисникот,
 User ID not set for Employee {0},ID на корисникот не е поставена за вработените {0},
@@ -3051,7 +3008,6 @@
 Website Settings,Settings веб-страница,
 Wednesday,Среда,
 Week,недела,
-Weekdays,Работни дена,
 Weekly,Неделен,
 "Weight is mentioned,\nPlease mention ""Weight UOM"" too","Тежина се споменува, \ Променете спомене &quot;Тежина UOM&quot; премногу",
 Welcome email sent,Добредојдовте пошта испратена,
@@ -3072,7 +3028,6 @@
 Work Order {0} must be submitted,Работен налог {0} мора да биде поднесен,
 Work Orders Created: {0},Создадени работни задачи: {0},
 Work-in-Progress Warehouse is required before Submit,Работа во прогрес Магацински се бара пред Прати,
-Workflow,Работното,
 Working,Работната,
 Working Hours,Работно време,
 Workstation,Работна станица,
@@ -3102,7 +3057,6 @@
 You need to be a user other than Administrator with System Manager and Item Manager roles to register on Marketplace.,"Треба да бидете корисник, освен Администратор, со Управување со System Manager и Управувачот со ставка за да се регистрирате на Marketplace.",
 You need to be a user with System Manager and Item Manager roles to add users to Marketplace.,Треба да бидете корисник со улоги на System Manager и Item Manager за да додадете корисници на Marketplace.,
 You need to be a user with System Manager and Item Manager roles to register on Marketplace.,Треба да бидете корисник со улогите на System Manager и менаџерот на елемент за да се регистрирате на Marketplace.,
-You need to be logged in to access this page,Вие треба да бидете најавени за да пристапите на оваа страница,
 You need to enable Shopping Cart,Вие треба да им овозможи на Корпа,
 You will lose records of previously generated invoices. Are you sure you want to restart this subscription?,Ќе изгубите евиденција на претходно генерирани фактури. Дали сте сигурни дека сакате да ја рестартирате оваа претплата?,
 Your Organization,Вашата организација,
@@ -3218,7 +3172,6 @@
 Assigned To,Доделени,
 Chat,Чет,
 Completed By,Завршено од,
-County,Каунти,
 Day of Week,Ден од неделата,
 "Dear System Manager,","Почитувани Систем за менаџер,",
 Default Value,Основна вредност,
@@ -3229,31 +3182,21 @@
 Fieldtype,Fieldtype,
 Help Articles,помош членовите,
 ID,проект,
-Images,слики,
 Import,Увоз,
 Language,Јазик,
 Likes,Допаѓања,
 Merge with existing,Се спои со постојната,
-Office,Канцеларија,
 Orientation,ориентација,
 Parent,Родител,
-Passive,Пасивни,
 Payment Failed,плаќање успеав,
-Permanent,постојана,
 Personal,Лични,
-Plant,Растителни,
 Post,Пост,
-Postal,Поштенските,
 Postal Code,поштенски код,
-Previous,Претходната,
 Provider,Провајдер,
 Read Only,Само за читање,
 Recipient,Примачот,
 Reviews,Прегледи,
 Sender,Испраќачот,
-Shop,Продавница,
-Subsidiary,Подружница,
-There is some problem with the file url: {0},Има некој проблем со URL-то на фајл: {0},
 There were errors while sending email. Please try again.,Имаше грешка при испраќање на е-мејл. Ве молиме обидете се повторно.,
 Values Changed,променети вредности,
 or,или,
@@ -3280,19 +3223,16 @@
 Quality Feedback Template,Шаблон за повратни информации за квалитет,
 Rules for applying different promotional schemes.,Правила за примена на различни промотивни шеми.,
 Show {0},Покажи {0},
-"Special Characters except '-', '#', '.', '/', '{{' and '}}' not allowed in naming series {0}","Не се дозволени специјални карактери освен &quot;-&quot;, &quot;#&quot;, &quot;.&quot;, &quot;/&quot;, &quot;{{&quot; И &quot;}}&quot; во сериите за именување {0}",
 Target Details,Цели детали,
 {0} already has a Parent Procedure {1}.,{0} веќе има Матична постапка {1}.,
 API,API,
 Annual,Годишен,
 Change,Промени,
 Contact Email,Контакт E-mail,
-Export Type,Тип на извоз,
 From Date,Од Датум,
 Group By,Група од,
 Invalid URL,Невалидна URL-то,
 Landscape,Пејзаж,
-Last Sync On,Последно синхронизирање е вклучено,
 Naming Series,Именување Серија,
 No data to export,Нема податоци за извоз,
 Portrait,Портрет,
@@ -3302,7 +3242,6 @@
 Show Document,Прикажи документ,
 Show Traceback,Покажи пребарување,
 Video,Видео,
-Webhook Secret,Тајната на веб-страниците,
 % Of Grand Total,% Од вкупниот гранд,
 <b>Company</b> is a mandatory filter.,<b>Компанијата</b> е задолжителен филтер.,
 <b>From Date</b> is a mandatory filter.,<b>Од датумот</b> е задолжителен филтер.,
@@ -3358,7 +3297,6 @@
 BOM Comparison Tool,Алатка за споредба на Бум,
 BOM recursion: {0} cannot be child of {1},Рекурзија на БОМ: {0} не може да биде дете од {1,
 BOM recursion: {0} cannot be parent or child of {1},Рекурзија на БОМ: {0} не може да биде родител или дете од {1,
-Back to Home,Назад до дома,
 Back to Messages,Назад на пораки,
 Bank Data mapper doesn't exist,Откривач на податоци за банка не постои,
 Bank Details,Детали за банка,
@@ -3420,7 +3358,6 @@
 Currency,Валута,
 Current Status,Моментален статус,
 Customer PO,Потрошувачка ПО,
-Customize,Персонализација на,
 Daily,Секојдневно,
 Date,Датум,
 Date of Birth cannot be greater than Joining Date.,Датумот на раѓање не може да биде поголем од датумот на придружување.,
@@ -3454,7 +3391,6 @@
 ERPNext could not find any matching payment entry,ERPNext не може да пронајде внес за уплаќање што одговара,
 Earliest Age,Најрана возраст,
 Edit Details,Уредете ги деталите,
-Edit Profile,Уредување на профилот,
 Either GST Transporter ID or Vehicle No is required if Mode of Transport is Road,Или ИД GST-транспортер или возило бр е задолжително ако режимот на транспорт е пат,
 Email,Е-пошта,
 Email Campaigns,Кампањи за е-пошта,
@@ -3482,7 +3418,6 @@
 Fetch Items from Warehouse,Земи предмети од магацин,
 Fetching...,Фаќање ...,
 Field,Поле,
-File Manager,Менаџер на датотеки,
 Filters,Филтри,
 Finding linked payments,Наоѓање поврзани плаќања,
 Fleet Management,транспортен менаџмент,
@@ -3521,7 +3456,6 @@
 Incorrect Warehouse,Неправилна магацин,
 Invalid Barcode. There is no Item attached to this barcode.,Невалиден бар-код. Нема ставка прикачена на овој бар-код.,
 Invalid credentials,Невалидни акредитиви,
-Invite as User,Покани како пристап,
 Issue Priority.,Издадете приоритет.,
 Issue Type.,Тип на издание.,
 "It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","Се чини дека постои проблем со конфигурацијата на шаблонот на серверот. Во случај на неуспех, износот ќе ви биде вратен на вашата сметка.",
@@ -3564,7 +3498,6 @@
 New Invoice,Нова фактура,
 New Payment,Ново плаќање,
 New release date should be in the future,Новиот датум на објавување треба да биде во иднина,
-Newsletter,Билтен,
 No Account matched these filters: {},Ниту една сметка не одговара на овие филтри: {},
 No communication found.,Не е пронајдена комуникација,
 No correct answer is set for {0},Не е поставен точен одговор за {0},
@@ -3640,7 +3573,6 @@
 Please setup a default bank account for company {0},Поставете основна банкарска сметка за компанијата {0,
 Please specify,Ве молиме наведете,
 Please specify a {0},Ве молиме наведете {0,lead
-Printing,Печатење,
 Priority,Приоритет,
 Priority has been changed to {0}.,Приоритет е променет на {0.,
 Priority {0} has been repeated.,Приоритет {0} е повторен.,
@@ -3649,7 +3581,6 @@
 Project,Проект,
 Provide the academic year and set the starting and ending date.,Обезбедете ја академската година и поставете го датумот на започнување и завршување.,
 Public token is missing for this bank,Јавниот знак недостасува за оваа банка,
-Publish,Објавете,
 Publish 1 Item,Објави 1 ставка,
 Publish Items,Објавувајте Теми,
 Publish More Items,Објавувајте повеќе артикли,
@@ -3677,7 +3608,6 @@
 Reconciled,Усогласено,
 Recruitment,Вработување,
 Red,Црвена,
-Refreshing,Освежувачки,
 Release date must be in the future,Датумот на објавување мора да биде во иднина,
 Relieving Date must be greater than or equal to Date of Joining,Датумот на ослободување мора да биде поголем или еднаков на датумот на придружување,
 Rename,Преименувај,
@@ -3721,7 +3651,6 @@
 Search for a payment,Пребарај за плаќање,
 Search for anything ...,Пребарај за било што ...,
 Search results for,Резултати од пребарувањето за,
-Select All,Избери ги сите,
 Select Difference Account,Изберете сметка за разлика,
 Select a Default Priority.,Изберете Стандарден приоритет.,
 Select a company,Изберете компанија,
@@ -3740,11 +3669,9 @@
 Service Level Agreement has been changed to {0}.,Договорот за ниво на услуга е променет во {0.,
 Service Level Agreement was reset.,Договорот за нивото на услугата беше ресетиран.,
 Service Level Agreement with Entity Type {0} and Entity {1} already exists.,Договор за ниво на услуга со типот на ентитет {0} и ентитет {1} веќе постои.,
-Set,Поставете,
 Set Meta Tags,Поставете мета тагови,
 Set {0} in company {1},Поставете {0 во компанија {1},
 Setup,Подесување,
-Setup Wizard,Советник за подесување,
 Shift Management,Управување со смена,
 Show Future Payments,Покажете идни исплати,
 Show Linked Delivery Notes,Покажете поврзани белешки за испорака,
@@ -3815,7 +3742,6 @@
 Unreconciled,Несогласување,
 Unsupported GST Category for E-Way Bill JSON generation,Неподдржана GST категорија за генерација E-Way Bill JSON,
 Update,Ажурирање,
-Update Details,Ажурирајте ги деталите,
 Update Taxes for Items,Ажурирајте ги даноците за артиклите,
 "Upload a bank statement, link or reconcile a bank account","Поставете банкарска изјава, водите или усогласете банкарска сметка",
 Upload a statement,Поставете изјава,
@@ -3839,7 +3765,6 @@
 XML Files Processed,Обработуваат датотеки со XML,
 Year,Година,
 Yearly,Годишно,
-You,Вие,
 You are not allowed to enroll for this course,Не смеете да се запишите на овој курс,
 You are not enrolled in program {0},Вие не сте запишани во програмата {0,
 You can Feature upto 8 items.,Може да се одликуваат до 8 артикли.,
@@ -3856,7 +3781,6 @@
 e-Way Bill already exists for this document,Бил е-пат веќе постои за овој документ,
 woocommerce - {0},woocommerce - {0},
 {0} Coupon used are {1}. Allowed quantity is exhausted,Used 0 used Користениот купон е {1. Дозволената количина е исцрпена,
-{0} Name,{0} Име,
 {0} Operations: {1},{0} Операции: {1,
 {0} bank transaction(s) created,Креирани банкарски трансакции {0,
 {0} bank transaction(s) created and {1} errors,Created 0 created создадени банкарски трансакции и грешки во {1,
@@ -3875,17 +3799,13 @@
 Total Income,Вкупен приход,
 Total Income This Year,Вкупен приход оваа година,
 Barcode,Баркод,
-Bold,Задебелен,
-Center,Центар,
 Clear,Јасно,
-Comment,Коментар,
 Comments,Коментари,
 DocType,ДокТип,
 Download,Преземи,
 Left,Лево,
 Link,Линк,
 New,Ново,
-Not Found,Не е пронајдено,
 Print,Печати,
 Reference Name,Име на референца,
 Refresh,Refresh,
@@ -3908,7 +3828,6 @@
 Email Id,E-mail проект,
 No,Не,
 Reference Doctype,Референтен DOCTYPE,
-User Id,ИД на корисникот,
 Yes,Да,
 Actual ,Крај,
 Add to cart,Додади во кошничка,
@@ -4304,7 +4223,6 @@
 e.g Adjustments for:,"на пример, прилагодувања за:",
 Section Subtotal,Секторски сегмент,
 Section Footer,Дел нозе,
-Position,Позиција,
 Cash Flow Mapping,Мапирање на готовински тек,
 Select Maximum Of 1,Изберете максимум од 1,
 Is Finance Cost,Дали трошоците за финансирање,
@@ -4936,7 +4854,6 @@
 Previous Business Day,Претходен работен ден,
 Next Business Day,Следен работен ден,
 Urgent,Итно,
-Crop,Поправете,
 Crop Name,Име на култура,
 Scientific Name,Научно име,
 "You can define all the tasks which need to carried out for this crop here. The day field is used to mention the day on which the task needs to be carried out, 1 being the 1st day, etc.. ","Можете да ги дефинирате сите задачи што треба да ги извршите за оваа култура овде. Дневното поле се користи за да се спомене денот на кој задачата треба да се изврши, 1 да биде 1 ден, итн.",
@@ -5441,7 +5358,6 @@
 To TIme,На време,
 Course End Date,Курс Датум на завршување,
 Course Topic,Тема на курсот,
-Topic,на тема,
 Topic Name,Име на тема,
 Education Settings,Образование,
 Current Academic Year,Тековната академска година,
@@ -5516,7 +5432,6 @@
 Check this if the Student is residing at the Institute's Hostel.,Изберете го ова ако ученикот е престојуваат во Хостел на Институтот.,
 Walking,одење,
 Institute's Bus,Автобус на Институтот,
-Public Transport,Јавен превоз,
 Self-Driving Vehicle,Само-управување со моторно возило,
 Pick/Drop by Guardian,Трансферот / зависници од страна на Гардијан,
 Enrolled courses,запишани курсеви,
@@ -5697,7 +5612,6 @@
 Default Cost Center,Стандардната цена центар,
 Undeposited Funds Account,Сметка за недоделени фондови,
 Shopify Log,Купувај дневник,
-Request Data,Барам податоци,
 Shopify Settings,Подеси ги поставките,
 status html,статус html,
 Enable Shopify,Овозможи Shopify,
@@ -5817,7 +5731,6 @@
 Exercise Instructions,Инструкции за вежбање,
 Exercise Video,Видео за вежбање,
 Exercise Steps,Чекори за вежбање,
-Steps,Чекори,
 Steps Table,Чекори табела,
 Exercise Type Step,Чекор тип на вежба,
 Max number of visit,Макс број на посети,
@@ -6001,7 +5914,6 @@
 Patient Encounter Symptom,Симптом на средба со пациентот,
 HLC-PMR-.YYYY.-,HLC-PMR-.YYYY.-,
 Attach Medical Record,Прикачи медицинска евиденција,
-Reference DocType,Референтен DocType,
 Spouse,Сопруг,
 Family,Семејство,
 Schedule Details,Детали за распоредот,
@@ -6983,16 +6895,8 @@
 HTML / Banner that will show on the top of product list.,HTML / Банер кои ќе се појавуваат на врвот од листата на производи.,
 Set prefix for numbering series on your transactions,Намести префикс за нумерирање серија на вашиот трансакции,
 Setup Series,Подесување Серија,
-Select Transaction,Изберете Трансакција,
-Help HTML,Помош HTML,
-Series List for this Transaction,Серија Листа за оваа трансакција,
-User must always select,Корисникот мора секогаш изберете,
-Check this if you want to force the user to select a series before saving. There will be no default if you check this.,Обележете го ова ако сакате да ги принуди на корисникот за да изберете серија пред зачувување. Нема да има стандардно Ако ја изберете оваа.,
 Update Series,Ажурирање Серија,
 Change the starting / current sequence number of an existing series.,Промените почетниот / тековниот број на секвенца на постоечки серија.,
-Prefix,Префикс,
-This is the number of the last created transaction with this prefix,Ова е бројот на последниот создадена трансакција со овој префикс,
-Update Series Number,Ажурирање Серија број,
 Quotation Lost Reason,Причина за Нереализирана Понуда,
 A third party distributor / dealer / commission agent / affiliate / reseller who sells the companies products for a commission.,Трето лице дистрибутер / дилер / комисионен застапник / партнер / препродавач кој ги продава компании производи за провизија.,
 Sales Partner Name,Продажбата партнер Име,
@@ -7687,7 +7591,6 @@
 Warehouse wise Item Balance Age and Value,Магацински мудар Ставка билансниот век и вредност,
 Work Order Stock Report,Извештај за работен налог,
 Work Orders in Progress,Работа нарачки во тек,
-Validation Error,Грешка при валидација,
 Automatically Process Deferred Accounting Entry,Автоматски процесирајте го одложениот запис за сметководство,
 Bank Clearance,Банкарско царинење,
 Bank Clearance Detail,Детал за царинење на банка,
@@ -7724,45 +7627,7 @@
 Therapy Plan: ,План за терапија:,
 Total Counts Targeted: ,Вкупно насочени броеви:,
 Total Counts Completed: ,Вкупно извршени броеви:,
-Andaman and Nicobar Islands,Островите Андаман и Никобар,
-Andhra Pradesh,Андра Прадеш,
-Arunachal Pradesh,Аруначал Прадеш,
-Assam,Асам,
-Bihar,Бихар,
-Chandigarh,Чандигар,
-Chhattisgarh,Чатисгарх,
-Dadra and Nagar Haveli,Дадра и Нагар Хавели,
-Daman and Diu,Даман и Диу,
-Delhi,Делхи,
-Goa,Гоа,
-Gujarat,Гуџарат,
-Haryana,Харијана,
-Himachal Pradesh,Химачал Прадеш,
-Jammu and Kashmir,Mаму и Кашмир,
-Jharkhand,Harаркханд,
-Karnataka,Карнатака,
-Kerala,Керала,
-Lakshadweep Islands,Острови Лакшадвип,
-Madhya Pradesh,Мадија Прадеш,
-Maharashtra,Махараштра,
-Manipur,Манипур,
-Meghalaya,Мегалаја,
-Mizoram,Мизорам,
-Nagaland,Нагаланд,
-Odisha,Одиша,
-Other Territory,Друга територија,
-Pondicherry,Пондичери,
-Punjab,Пенџаб,
-Rajasthan,Раџастан,
-Sikkim,Сиким,
-Tamil Nadu,Тамил Наду,
-Telangana,Телангана,
-Tripura,Трипура,
-Uttar Pradesh,Утар Прадеш,
-Uttarakhand,Утараканд,
-West Bengal,Западен Бенгал,
 Is Mandatory,Задолжително е,
-Published on,Објавено на,
 Service Received But Not Billed,"Добиена услуга, но не и наплатена",
 Deferred Accounting Settings,Одложени поставки за сметководство,
 Book Deferred Entries Based On,Одложени записи за книги засновани на,
@@ -8035,8 +7900,6 @@
 Worksheet Instructions,Инструкции за лист,
 Result Legend Print,Отпечаток на легендата на резултатот,
 Print Position,Позиција за печатење,
-Bottom,Дното,
-Top,Врв,
 Both,Обајцата,
 Result Legend,Легенда на резултатот,
 Lab Tests,Лабораториски тестови,
@@ -8081,12 +7944,10 @@
 Approvers,Аверверзно,
 The first Approver in the list will be set as the default Approver.,Првиот Одобрувач во списокот ќе биде поставен како стандарден Одобрувач.,
 Shift Request Approver,Одобрувач на барање за смена,
-PAN Number,Број на ПАН,
 Provident Fund Account,Сметка на фондот за провиденција,
 MICR Code,МИКР-код,
 Repay unclaimed amount from salary,Отплати небаран износ од плата,
 Deduction from salary,Намалување од плата,
-Expired Leaves,Истечени лисја,
 If this is not checked the loan by default will be considered as a Demand Loan,"Доколку ова не е проверено, заемот по дифолт ќе се смета како заем за побарувачка",
 This account is used for booking loan repayments from the borrower and also disbursing loans to the borrower,Оваа сметка се користи за резервирање на отплати на заеми од заемопримачот и исто така за исплата на заеми на заемопримачот,
 This account is capital account which is used to allocate capital for loan disbursal account ,Оваа сметка е капитална сметка што се користи за алокација на капитал за сметка за исплата на заем,
@@ -8844,3 +8705,41 @@
 Creating Purchase Order ...,Создавање налог за набавка ...,
 "Select a Supplier from the Default Suppliers of the items below. On selection, a Purchase Order will be made against items belonging to the selected Supplier only.","Изберете снабдувач од Стандардните добавувачи на ставките подолу. При избор, ќе се изврши Нарачка за набавка само на предмети што припаѓаат на избраниот Добавувач.",
 Row #{}: You must select {} serial numbers for item {}.,Ред # {}: Мора да изберете {} сериски броеви за ставка {}.,
+Add Comment,Додај коментар,
+More...,Повеќе...,
+Notes,Белешки,
+Payment Gateway,Исплата Портал,
+Payment Gateway Name,Име на исплата на исплата,
+Payments,Плаќања,
+Plan Name,Име на планот,
+Portal,Порталот,
+Scan Barcode,Скенирајте бар-код,
+Some information is missing,Некои информации недостасуваат,
+Successful,Успешно,
+Tools,Алатки,
+Use Sandbox,Користете Sandbox,
+Busy,Зафатен,
+Completed By,Завршено од,
+Payment Failed,плаќање успеав,
+Column {0},Колона {0,
+Field Mapping,Поле мапирање,
+Not Specified,Не е специфицирано,
+Update Type,Тип на ажурирање,
+Dr,Д-р,
+End Time,Крајот на времето,
+Fetching...,Фаќање ...,
+"It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","Се чини дека постои проблем со конфигурацијата на шаблонот на серверот. Во случај на неуспех, износот ќе ви биде вратен на вашата сметка.",
+Looks like someone sent you to an incomplete URL. Please ask them to look into it.,Изгледа како некој да ви испрати до нецелосен URL-то. Ве молиме да побарате од нив да се погледне во него.,
+Master,Господар,
+Pay,Плаќаат,
+You can also copy-paste this link in your browser,Вие исто така може да копи-паста овој линк во вашиот интернет пребарувач,
+Verified By,Заверена од,
+Invalid naming series (. missing) for {0},Невалидна серија за именување (. Недостасува) за {0},
+Phone Number,Телефонски број,
+Account SID,СИДД на сметката,
+Global Defaults,Глобална Стандардни,
+Is Mandatory,Задолжително е,
+WhatsApp,WhatsApp,
+Make a call,Направи повик,
+Approve,Одобри,
+Reject,Reject,
diff --git a/erpnext/translations/ml.csv b/erpnext/translations/ml.csv
index 22684b6..59d3160 100644
--- a/erpnext/translations/ml.csv
+++ b/erpnext/translations/ml.csv
@@ -113,7 +113,6 @@
 Add Items,ഇനങ്ങൾ ചേർക്കുക,
 Add Leads,ലീഡ്സ് ചേർക്കുക,
 Add Multiple Tasks,ഒന്നിലധികം ടാസ്ക്കുകൾ ചേർക്കൂ,
-Add Row,വരി ചേർക്കുക,
 Add Sales Partners,സെയിൽസ് പങ്കാളികൾ ചേർക്കുക,
 Add Serial No,സീരിയൽ ഇല്ല ചേർക്കുക,
 Add Students,വിദ്യാർത്ഥികൾ ചേർക്കുക,
@@ -211,9 +210,7 @@
 An error occurred during the update process,അപ്ഡേറ്റ് പ്രോസസ്സ് സമയത്ത് ഒരു പിശക് സംഭവിച്ചു,
 "An item exists with same name ({0}), please change the item group name or rename the item","ഒരു ഇനം ഇതേ പേര് ({0}) നിലവിലുണ്ട്, ഐറ്റം ഗ്രൂപ്പിന്റെ പേര് മാറ്റാനോ ഇനം പുനർനാമകരണം ദയവായി",
 Analyst,അനലിസ്റ്റ്,
-Analytics,അനലിറ്റിക്സ്,
 Annual Billing: {0},വാർഷിക ബില്ലിംഗ്: {0},
-Anonymous,അജ്ഞാത,
 Another Budget record '{0}' already exists against {1} '{2}' and account '{3}' for fiscal year {4},മറ്റൊരു ബജറ്റ് റെക്കോർഡ് &#39;{0}&#39; ഇതിനകം {1} &#39;{2}&#39; നും അക്ക account ണ്ട് {4} നും എതിരായി നിലവിലുണ്ട് {4},
 Another Period Closing Entry {0} has been made after {1},{0} {1} ശേഷം ഇതുവരെ ലഭിച്ചിട്ടുള്ള മറ്റൊരു കാലയളവ് സമാപന എൻട്രി,
 Another Sales Person {0} exists with the same Employee id,മറ്റൊരു സെയിൽസ് പേഴ്സൺ {0} ഒരേ ജീവനക്കാരന്റെ ഐഡി നിലവിലുണ്ട്,
@@ -283,14 +280,12 @@
 Attendance not submitted for {0} as {1} on leave.,{0} അവധി കഴിഞ്ഞ് {0} ആയി സമർപ്പിക്കുന്നതല്ല.,
 Attribute table is mandatory,ഗുണ മേശ നിർബന്ധമാണ്,
 Attribute {0} selected multiple times in Attributes Table,ഗുണ {0} വിശേഷണങ്ങൾ പട്ടിക ഒന്നിലധികം തവണ തെരഞ്ഞെടുത്തു,
-Author,സ്രഷ്ടാവ്,
 Authorized Signatory,അധികാരങ്ങളും നല്കുകയും,
 Auto Material Requests Generated,യാന്ത്രികമായി സൃഷ്ടിച്ചത് മെറ്റീരിയൽ അഭ്യർത്ഥനകൾ,
 Auto Repeat,സ്വയം ആവർത്തിക്കുക,
 Auto repeat document updated,സ്വയം ആവർത്തന പ്രമാണം അപ്ഡേറ്റുചെയ്തു,
 Automotive,ഓട്ടോമോട്ടീവ്,
 Available,ലഭ്യമായ,
-Available Leaves,ലഭ്യമായ ഇലകൾ,
 Available Qty,ലഭ്യമായ Qty,
 Available Selling,വിൽക്കൽ ലഭ്യമാണ്,
 Available for use date is required,ഉപയോഗ തീയതിക്ക് ആവശ്യമാണ്,
@@ -340,7 +335,6 @@
 Base URL,അടിസ്ഥാന URL,
 Based On,അടിസ്ഥാനപെടുത്തി,
 Based On Payment Terms,പേയ്‌മെന്റ് നിബന്ധനകളെ അടിസ്ഥാനമാക്കി,
-Basic,അടിസ്ഥാന,
 Batch,ബാച്ച്,
 Batch Entries,ബാച്ച് എൻട്രികൾ,
 Batch ID is mandatory,ബാച്ച് ഐഡി നിർബന്ധമായും,
@@ -361,7 +355,6 @@
 Billable Hours,ബിൽ ചെയ്യാവുന്ന സമയം,
 Billed,വസതി,
 Billed Amount,ഈടാക്കൂ തുക,
-Billing,ബില്ലിംഗ്,
 Billing Address,ബില്ലിംഗ് വിലാസം,
 Billing Address is same as Shipping Address,ബില്ലിംഗ് വിലാസം ഷിപ്പിംഗ് വിലാസത്തിന് തുല്യമാണ്,
 Billing Amount,ബില്ലിംഗ് തുക,
@@ -560,7 +553,6 @@
 Consumed Qty,ക്ഷയിച്ചിരിക്കുന്നു Qty,
 Consumer Products,കൺസ്യൂമർ ഉൽപ്പന്നങ്ങൾ,
 Contact,കോൺടാക്റ്റ്,
-Contact Details,കോൺടാക്റ്റ് വിശദാംശങ്ങൾ,
 Contact Us,ഞങ്ങളെ സമീപിക്കുക,
 Content,ഉള്ളടക്കം,
 Content Masters,ഉള്ളടക്ക മാസ്റ്റേഴ്സ്,
@@ -715,7 +707,6 @@
 Date of Joining,ചേരുന്നു തീയതി,
 Date of Joining must be greater than Date of Birth,ചേരുന്നു തീയതി ജനന തീയതി വലുതായിരിക്കണം,
 Date of Transaction,ഇടപാട് തീയതി,
-Datetime,തീയതി സമയം,
 Day,ദിവസം,
 Debit,ഡെബിറ്റ്,
 Debit ({0}),ഡെബിറ്റ് ({0}),
@@ -874,7 +865,6 @@
 Employee cannot report to himself.,ജീവനക്കാർ തനിക്കായി റിപ്പോർട്ട് ചെയ്യാൻ കഴിയില്ല.,
 Employee {0} has already applied for {1} between {2} and {3} : ,{2} ഉം {2} ഉം {3} നും ഇടയിലുള്ള {1} ജീവനക്കാരി ഇതിനകം അപേക്ഷിച്ചു.,
 Employee {0} of grade {1} have no default leave policy,ഗ്രേഡ് {1 of ന്റെ ജീവനക്കാരന് default 0 default സ്ഥിരസ്ഥിതി അവധി നയമില്ല,
-Enable,പ്രവർത്തനക്ഷമമാക്കുക,
 Enable / disable currencies.,പ്രാപ്തമാക്കുക / കറൻസിയുടെ അപ്രാപ്തമാക്കാൻ.,
 Enabled,പ്രാപ്തമാക്കി,
 "Enabling 'Use for Shopping Cart', as Shopping Cart is enabled and there should be at least one Tax Rule for Shopping Cart","ആയി ഷോപ്പിംഗ് കാർട്ട് പ്രവർത്തനക്ഷമമാക്കി, &#39;ഷോപ്പിംഗ് കാർട്ട് ഉപയോഗിക്കുക&#39; പ്രാപ്തമാക്കുന്നത് എന്നും ഷോപ്പിംഗ് കാർട്ട് കുറഞ്ഞത് ഒരു നികുതി റൂൾ വേണം",
@@ -905,7 +895,6 @@
 Error: Not a valid id?,പിശക്: സാധുവായ ഐഡി?,
 Estimated Cost,കണക്കാക്കിയ ചെലവ്,
 "Even if there are multiple Pricing Rules with highest priority, then following internal priorities are applied:","ഏറ്റവും മുന്തിയ പരിഗണന ഉപയോഗിച്ച് ഒന്നിലധികം വിലനിർണ്ണയത്തിലേക്ക് അവിടെ പോലും, പിന്നെ താഴെ ആന്തരിക പരിഗണനയാണ് ബാധകമാക്കുന്നു:",
-Event,ഇവന്റ്,
 Exchange Gain/Loss,എക്സ്ചേഞ്ച് ഗെയിൻ / നഷ്ടം,
 Exchange Rate Revaluation master.,എക്സ്ചേഞ്ച് റേറ്റ് പുനർമൂല്യനിർണ്ണയ മാസ്റ്റർ.,
 Exchange Rate must be same as {0} {1} ({2}),വിനിമയ നിരക്ക് {1} {0} അതേ ആയിരിക്കണം ({2}),
@@ -1032,7 +1021,6 @@
 From value must be less than to value in row {0},മൂല്യം നിന്ന് വരി {0} മൂല്യം വരെ താഴെ ആയിരിക്കണം,
 From {0} | {1} {2},{0} നിന്ന് | {1} {2},
 Fulfillment,നിർവ്വഹണം,
-Full,പൂർണ്ണമായ,
 Full Name,പൂർണ്ണമായ പേര്,
 Fully Depreciated,പൂർണ്ണമായി മൂല്യത്തകർച്ചയുണ്ടായ,
 Furnitures and Fixtures,Furnitures ആൻഡ് മതംതീര്ത്ഥാടനംജ്യോതിഷംഉത്സവങ്ങള്വിശ്വസിക്കാമോ,
@@ -1133,7 +1121,6 @@
 Hub Sync ID,ഹബ് സമന്വയ ID,
 Human Resource,മാനവ വിഭവശേഷി,
 Human Resources,ഹ്യൂമൻ റിസോഴ്സസ്,
-IFSC Code,IFSC കോഡ്,
 IGST Amount,IGST തുക,
 IP Address,IP വിലാസം,
 ITC Available (whether in full op part),ഐടിസി ലഭ്യമാണ് (പൂർണ്ണമായ ഭാഗമാണെങ്കിലും),
@@ -1185,7 +1172,6 @@
 Ineligible ITC,യോഗ്യതയില്ലാത്ത ഐ.ടി.സി.,
 Initiated,ആകൃഷ്ടനായി,
 Inpatient Record,ഇൻപെഷ്യൻറ് റിക്കോർഡ്,
-Insert,ഇടയ്ക്കു്ചേര്ക്കുക,
 Installation Note,ഇന്സ്റ്റലേഷന് കുറിപ്പ്,
 Installation Note {0} has already been submitted,ഇന്സ്റ്റലേഷന് കുറിപ്പ് {0} ഇതിനകം സമർപ്പിച്ചു,
 Installation date cannot be before delivery date for Item {0},ഇന്സ്റ്റലേഷന് തീയതി ഇനം {0} വേണ്ടി ഡെലിവറി തീയതി മുമ്പ് ആകാൻ പാടില്ല,
@@ -1197,7 +1183,6 @@
 Insurance Start date should be less than Insurance End date,ഇൻഷുറൻസ് ആരംഭ തീയതി ഇൻഷുറൻസ് അവസാന തീയതി കുറവായിരിക്കണം,
 Integrated Tax,സംയോജിത നികുതി,
 Inter-State Supplies,അന്തർ സംസ്ഥാന സപ്ലൈസ്,
-Interests,താൽപ്പര്യങ്ങൾ,
 Internet Publishing,ഇന്റർനെറ്റ് പ്രസിദ്ധീകരിക്കൽ,
 Intra-State Supplies,അന്തർ സംസ്ഥാന സപ്ലൈസ്,
 Introduction,ആമുഖം,
@@ -1316,7 +1301,6 @@
 Lab testing datetime cannot be before collection datetime,ലാബ് പരിശോധന സമയ ഡാറ്റ സമയം ശേഖരിക്കപ്പെടുന്നതിന് മുമ്പായിരിക്കരുത്,
 Label,ലേബൽ,
 Laboratory,ലബോറട്ടറി,
-Language Name,ഭാഷ പേര്,
 Large,വലുത്,
 Last Communication,അവസാനം കമ്യൂണിക്കേഷൻ,
 Last Communication Date,അവസാനം കമ്യൂണിക്കേഷൻ തീയതി,
@@ -1347,8 +1331,6 @@
 Letter Heads for print templates.,പ്രിന്റ് ടെംപ്ലേറ്റുകൾക്കായി കത്ത് മേധാവികൾ.,
 Level,ലെവൽ,
 Liability,ബാധ്യത,
-License,അനുമതി,
-Limit,പരിധി,
 Limit Crossed,പരിധി ക്രോസ്,
 Link to Material Request,മെറ്റീരിയൽ അഭ്യർത്ഥനയുമായി ലിങ്ക്,
 List of all share transactions,എല്ലാ പങ്കിടൽ ഇടപാടുകളുടെയും ലിസ്റ്റ്,
@@ -1359,7 +1341,6 @@
 Loans (Liabilities),വായ്പകൾ (ബാദ്ധ്യതകളും),
 Loans and Advances (Assets),വായ്പകളും അഡ്വാൻസുകളും (ആസ്തികൾ),
 Local,പ്രാദേശിക,
-Log,പ്രവേശിക്കുക,
 Logs for maintaining sms delivery status,SMS ഡെലിവറി നില പരിപാലിക്കുന്നതിനായി ക്ഌപ്തപ്പെടുത്താവുന്നതാണ്,
 Lost,നഷ്ടപ്പെട്ട,
 Lost Reasons,നഷ്ടപ്പെട്ട കാരണങ്ങൾ,
@@ -1445,7 +1426,6 @@
 Medical Department,മെഡിക്കൽ വിഭാഗം,
 Medical Record,മെഡിക്കൽ റെക്കോർഡ്,
 Medium,മീഡിയം,
-Meeting,മീറ്റിംഗ്,
 Member Activity,മെമ്പർ പ്രവർത്തനം,
 Member ID,അംഗത്തിന്റെ ഐഡി,
 Member Name,അംഗത്തിന്റെ പേര്,
@@ -1495,7 +1475,6 @@
 Multiple Variants,വിവിധ വകഭേദങ്ങൾ,
 Multiple fiscal years exist for the date {0}. Please set company in Fiscal Year,ഒന്നിലധികം വർഷത്തേക്ക് തീയതി {0} കണക്കേ. സാമ്പത്തിക വർഷം കമ്പനി സജ്ജീകരിക്കുക,
 Music,സംഗീതം,
-My Account,എന്റെ അക്കൗണ്ട്,
 Name error: {0},പേര് പിശക്: {0},
 Name of new Account. Note: Please don't create accounts for Customers and Suppliers,പുതിയ അക്കൗണ്ട് പേര്. കുറിപ്പ്: ഉപയോക്താക്കൾക്ക് വിതരണക്കാർക്കും അക്കൗണ്ടുകൾ സൃഷ്ടിക്കാൻ ദയവായി,
 Name or Email is mandatory,പേര് അല്ലെങ്കിൽ ഇമെയിൽ നിർബന്ധമാണ്,
@@ -1538,7 +1517,6 @@
 New credit limit is less than current outstanding amount for the customer. Credit limit has to be atleast {0},പുതിയ ക്രെഡിറ്റ് പരിധി ഉപഭോക്താവിന് നിലവിലെ മുന്തിയ തുക കുറവാണ്. വായ്പാ പരിധി ആയിരിക്കും കുറഞ്ഞത് {0} ഉണ്ട്,
 New task,പുതിയ ചുമതല,
 New {0} pricing rules are created,പുതിയ {0} വിലനിർണ്ണയ നിയമങ്ങൾ സൃഷ്ടിച്ചു,
-Newsletters,വാർത്താക്കുറിപ്പുകൾ,
 Newspaper Publishers,ന്യൂസ് പേപ്പർ പബ്ലിഷേഴ്സ്,
 Next,അടുത്തത്,
 Next Contact By cannot be same as the Lead Email Address,അടുത്തത് ബന്ധപ്പെടുക നയിക്കുന്നത് ഇമെയിൽ വിലാസം തന്നെ പാടില്ല,
@@ -1686,7 +1664,6 @@
 Other,മറ്റുള്ളവ,
 Other Reports,മറ്റ് റിപ്പോർട്ടുകളിൽ,
 "Other outward supplies(Nil rated,Exempted)","മറ്റ് ബാഹ്യ വിതരണങ്ങൾ (ഇല്ല റേറ്റുചെയ്തു, ഒഴിവാക്കി)",
-Others,മറ്റുള്ളവ,
 Out Qty,Qty ഔട്ട്,
 Out Value,മൂല്യം ഔട്ട്,
 Out of Order,പ്രവർത്തനരഹിതം,
@@ -1726,7 +1703,6 @@
 Party Type and Party is mandatory for {0} account,{0} അക്കൗണ്ടിൽ പാർടി ടൈപ്പ് ആൻഡ് പാർട്ടി നിർബന്ധമാണ്,
 Party Type is mandatory,പാർട്ടി ഇനം നിർബന്ധമായും,
 Party is mandatory,പാർട്ടി നിർബന്ധമായും,
-Password,പാസ്വേഡ്,
 Past Due Date,കഴിഞ്ഞ കുറച്ചു തീയതി,
 Patient,രോഗി,
 Patient Appointment,രോഗി നിയമനം,
@@ -1784,7 +1760,6 @@
 Pharmaceutical,ഫാർമസ്യൂട്ടിക്കൽ,
 Pharmaceuticals,ഫാർമസ്യൂട്ടിക്കൽസ്,
 Physician,വൈദ്യൻ,
-Pincode,പിൻ കോഡ്,
 Place Of Supply (State/UT),വിതരണ സ്ഥലം (സംസ്ഥാനം / യുടി),
 Place Order,സ്ഥലം ഓർഡർ,
 Plan Name,പ്ലാൻ പേര്,
@@ -1896,7 +1871,6 @@
 Please select date,തീയതി തിരഞ്ഞെടുക്കുക,
 Please select item code,ഐറ്റം കോഡ് തിരഞ്ഞെടുക്കുക,
 Please select month and year,മാസം വർഷം തിരഞ്ഞെടുക്കുക,
-Please select prefix first,ആദ്യം പ്രിഫിക്സ് തിരഞ്ഞെടുക്കുക,
 Please select the Company,കമ്പനി തിരഞ്ഞെടുക്കുക,
 Please select the Multiple Tier Program type for more than one collection rules.,ഒന്നിലധികം കളക്ഷൻ നിയമങ്ങൾക്കായി ഒന്നിലധികം ടൈയർ പ്രോഗ്രാം തരം തിരഞ്ഞെടുക്കുക.,
 Please select the assessment group other than 'All Assessment Groups',ദയവായി &#39;എല്ലാ വിലയിരുത്തൽ ഗ്രൂപ്പുകൾ&#39; പുറമെ വിലയിരുത്തൽ ഗ്രൂപ്പ് തിരഞ്ഞെടുക്കുക,
@@ -1913,7 +1887,6 @@
 Please set Company filter blank if Group By is 'Company',ശൂന്യമായ ഫിൽട്ടർ ഗ്രൂപ്പ് &#39;കമ്പനി&#39; എങ്കിൽ കമ്പനി സജ്ജമാക്കുക,
 Please set Default Payroll Payable Account in Company {0},കമ്പനി {0} ൽ സ്ഥിര ശമ്പളപ്പട്ടിക പേയബിൾ അക്കൗണ്ട് സജ്ജീകരിക്കുക,
 Please set Depreciation related Accounts in Asset Category {0} or Company {1},അസറ്റ് വർഗ്ഗം {0} അല്ലെങ്കിൽ കമ്പനി {1} ൽ മൂല്യത്തകർച്ച ബന്ധപ്പെട്ട അക്കൗണ്ടുകൾ സജ്ജമാക്കുക,
-Please set Email Address,ഇമെയിൽ വിലാസം സജ്ജമാക്കുക ദയവായി,
 Please set GST Accounts in GST Settings,GST ക്രമീകരണങ്ങളിൽ GST അക്കൗണ്ടുകൾ ദയവായി സജ്ജീകരിക്കുക,
 Please set Hotel Room Rate on {},{} ഹോട്ടലിൽ ഹോട്ടൽ റൂട്ട് റേറ്റ് ക്രമീകരിക്കുക,
 Please set Number of Depreciations Booked,ബുക്കുചെയ്തു Depreciations എണ്ണം ക്രമീകരിക്കുക ദയവായി,
@@ -1936,7 +1909,6 @@
 Please set the Email ID for the Student to send the Payment Request,പേയ്മെന്റ് അഭ്യർത്ഥന അയയ്ക്കാൻ വിദ്യാർത്ഥിക്ക് ഇമെയിൽ ഐഡി സജ്ജീകരിക്കുക,
 Please set the Item Code first,ആദ്യം ഇനം കോഡ് സജ്ജീകരിക്കുക,
 Please set the Payment Schedule,പേയ്‌മെന്റ് ഷെഡ്യൂൾ സജ്ജമാക്കുക,
-Please set the series to be used.,ദയവായി ഉപയോഗിക്കുന്നതിനായി പരമ്പര ക്രമീകരിക്കുക.,
 Please set {0} for address {1},Address 1 address വിലാസത്തിനായി {0 set സജ്ജമാക്കുക,
 Please setup Students under Student Groups,സ്റ്റുഡന്റ് ഗ്രൂപ്പുകൾക്ക് കീഴിലുള്ള വിദ്യാർത്ഥികളെ ക്രമീകരിക്കുക,
 Please specify Company,കമ്പനി വ്യക്തമാക്കുക,
@@ -1953,7 +1925,6 @@
 Point-of-Sale,പോയിന്റ്-ഓഫ്-വില്പനയ്ക്ക്,
 Point-of-Sale Profile,പോയിന്റ്-ഓഫ്-വില്പനയ്ക്ക് പ്രൊഫൈൽ,
 Portal,പോർട്ടൽ,
-Portal Settings,പോർട്ടൽ ക്രമീകരണങ്ങൾ,
 Possible Supplier,സാധ്യമായ വിതരണക്കാരൻ,
 Postal Expenses,തപാൽ ചെലവുകൾ,
 Posting Date,പോസ്റ്റിംഗ് തീയതി,
@@ -2152,12 +2123,10 @@
 Reference No is mandatory if you entered Reference Date,റഫറൻസ് നിങ്ങൾ റഫറൻസ് തീയതി നൽകിയിട്ടുണ്ടെങ്കിൽ ഇല്ല നിർബന്ധമായും,
 Reference No.,റഫറൻസ് നമ്പർ.,
 Reference Number,റഫറൻസ് നമ്പർ,
-Reference Owner,റെഫറൻസ് ഉടമ,
 Reference Type,റഫറൻസ് തരം,
 "Reference: {0}, Item Code: {1} and Customer: {2}","പരാമർശം: {2}: {0}, ഇനം കോഡ്: {1} ഉപഭോക്തൃ",
 References,അവലംബം,
 Refresh Token,പുതുക്കുക ടോക്കൺ,
-Region,പ്രവിശ്യ,
 Register,രജിസ്റ്റർ ചെയ്യുക,
 Rejected,നിരസിച്ചു,
 Related,ബന്ധപ്പെട്ട,
@@ -2179,7 +2148,6 @@
 Replace BOM and update latest price in all BOMs,BOM മാറ്റി പകരം എല്ലാ BOM- കളിൽ ഏറ്റവും പുതിയ വിലയും പുതുക്കുക,
 Replied,മറുപടി,
 Report,റിപ്പോർട്ട്,
-Report Builder,റിപ്പോർട്ട് ബിൽഡർ,
 Report Type,റിപ്പോർട്ട് തരം,
 Report Type is mandatory,റിപ്പോർട്ട് തരം നിർബന്ധമാണ്,
 Reports,റിപ്പോർട്ടുകൾ,
@@ -2355,13 +2323,11 @@
 Same Company is entered more than once,ഒരേ കമ്പനി ഒന്നിലധികം തവണ നൽകുമ്പോഴുള്ള,
 Same item cannot be entered multiple times.,ഒരേ ഇനം ഒന്നിലധികം തവണ നൽകി കഴിയില്ല.,
 Same supplier has been entered multiple times,ഒരേ വിതരണക്കമ്പനിയായ ഒന്നിലധികം തവണ നൽകിയിട്ടുണ്ടെന്നും,
-Sample,സാമ്പിൾ,
 Sample Collection,സാമ്പിൾ ശേഖരണം,
 Sample quantity {0} cannot be more than received quantity {1},സാമ്പിൾ അളവ് {0} ലഭിച്ച തുകയേക്കാൾ കൂടുതൽ ആകരുത് {1},
 Sanctioned,അനുവദിച്ചു,
 Sand,മണല്,
 Saturday,ശനിയാഴ്ച,
-Saved,സംരക്ഷിച്ച,
 Saving {0},{0 സംരക്ഷിക്കുന്നു,
 Scan Barcode,ബാർകോഡ് സ്കാൻ ചെയ്യുക,
 Schedule,ഷെഡ്യൂൾ,
@@ -2463,7 +2429,6 @@
 Series Updated,സീരീസ് അപ്ഡേറ്റ്,
 Series Updated Successfully,സീരീസ് വിജയകരമായി അപ്ഡേറ്റ്,
 Series is mandatory,സീരീസ് നിർബന്ധമാണ്,
-Series {0} already used in {1},സീരീസ് {0} ഇതിനകം {1} ഉപയോഗിക്കുന്ന,
 Service,സേവനം,
 Service Level Agreement,സേവന വ്യവസ്ഥ,
 Service Level Agreement.,സേവന വ്യവസ്ഥ.,
@@ -2479,7 +2444,6 @@
 Set Tax Rule for shopping cart,ഷോപ്പിംഗ് കാർട്ട് നികുതി റൂൾ സജ്ജീകരിക്കുക,
 Set as Closed,അടഞ്ഞ സജ്ജമാക്കുക,
 Set as Completed,പൂർത്തിയായതായി സജ്ജമാക്കുക,
-Set as Default,സ്ഥിരസ്ഥിതിയായി സജ്ജമാക്കാൻ,
 Set as Lost,ലോസ്റ്റ് സജ്ജമാക്കുക,
 Set as Open,ഓപ്പൺ സജ്ജമാക്കുക,
 Set default inventory account for perpetual inventory,ശാശ്വതമായ സാധനങ്ങളും സ്ഥിരസ്ഥിതി സാധനങ്ങളും അക്കൗണ്ട് സജ്ജമാക്കുക,
@@ -2511,7 +2475,6 @@
 Shareholder,ഓഹരി ഉടമ,
 Ship To State,കപ്പൽ സന്ദർശിക്കുക,
 Shipments,കയറ്റുമതി,
-Shipping,ഷിപ്പിംഗ്,
 Shipping Address,ഷിപ്പിംഗ് വിലാസം,
 "Shipping Address does not have country, which is required for this Shipping Rule",ഷിപ്പിംഗ് റൂളിനായി ഷിപ്പിംഗ് വിലാസത്തിന് രാജ്യമില്ല,
 Shipping rule only applicable for Buying,വാങ്ങുന്നതിനായി മാത്രമേ ഷിപ്പിംഗ് ഭരണം ബാധകമാകൂ,
@@ -2564,7 +2527,6 @@
 Split Batch,സ്പ്ലിറ്റ് ബാച്ച്,
 Split Issue,പ്രശ്നം വിഭജിക്കുക,
 Sports,സ്പോർട്സ്,
-Standard,സ്റ്റാൻഡേർഡ്,
 Standard Buying,സ്റ്റാൻഡേർഡ് വാങ്ങൽ,
 Standard Selling,സ്റ്റാൻഡേർഡ് വിൽപ്പനയുള്ളത്,
 Standard contract terms for Sales or Purchase.,സെയിൽസ് വാങ്ങാനും സ്റ്റാൻഡേർഡ് കരാർ നിബന്ധനകൾ.,
@@ -2731,7 +2693,6 @@
 Terms and Conditions,ഉപാധികളും നിബന്ധനകളും,
 Terms and Conditions Template,നിബന്ധനകളും വ്യവസ്ഥകളും ഫലകം,
 Territory,ടെറിട്ടറി,
-Test,ടെസ്റ്റ്,
 Thank you for your business!,നിങ്ങളുടെ ബിസിനസ്സ് നന്ദി!,
 The 'From Package No.' field must neither be empty nor it's value less than 1.,&#39;പാക്കേജ് നമ്പറിൽ നിന്ന്&#39; ഫീൽഡ് ശൂന്യമായിരിക്കരുത് അല്ലെങ്കിൽ അതിന്റെ മൂല്യം 1-ൽ കുറവായിരിക്കണം.,
 The Brand,ബ്രാൻഡ്,
@@ -2848,7 +2809,6 @@
 Total (Without Tax),ആകെ (നികുതി കൂടാതെ),
 Total Achieved,മികച്ച വിജയം ആകെ,
 Total Actual,യഥാർത്ഥ ആകെ,
-Total Allocated Leaves,ആകെ അനുവദിച്ച ഇലകൾ,
 Total Amount,മൊത്തം തുക,
 Total Amount Credited,മൊത്തം തുക ലഭിച്ചു,
 Total Applicable Charges in Purchase Receipt Items table must be same as Total Taxes and Charges,വാങ്ങൽ രസീത് ഇനങ്ങൾ പട്ടികയിൽ ആകെ ബാധകമായ നിരക്കുകളും ആകെ നികുതി ചാർജുകളും തുല്യമായിരിക്കണം,
@@ -2892,7 +2852,6 @@
 Total(Amt),ആകെ (ശാരീരിക),
 Total(Qty),ആകെ (Qty),
 Traceability,Traceability,
-Traceback,തിരഞ്ഞു നോക്കുക,
 Track Leads by Lead Source.,ലീഡ് ഉറവിടം ലീഡ് നയിക്കുന്നു.,
 Transaction,ഇടപാട്,
 Transaction Date,ഇടപാട് തീയതി,
@@ -2930,7 +2889,6 @@
 UOM Conversion factor is required in row {0},UOM പരിവർത്തന ഘടകം വരി {0} ആവശ്യമാണ്,
 UOM coversion factor required for UOM: {0} in Item: {1},UOM വേണ്ടി ആവശ്യമായ UOM coversion ഘടകം: ഇനം ലെ {0}: {1},
 URL,യുആർഎൽ,
-Unable to find DocType {0},DocType കണ്ടെത്താനായില്ല {0},
 Unable to find exchange rate for {0} to {1} for key date {2}. Please create a Currency Exchange record manually,കീ തീയതി {2} വരെ {1} {0} വിനിമയ നിരക്ക് കണ്ടെത്താൻ കഴിഞ്ഞില്ല. സ്വയം ഒരു കറൻസി എക്സ്ചേഞ്ച് റെക്കോർഡ് സൃഷ്ടിക്കുക,
 Unable to find score starting at {0}. You need to have standing scores covering 0 to 100,{0} ൽ ആരംഭിക്കുന്ന സ്കോർ കണ്ടെത്താനായില്ല. നിങ്ങൾക്ക് 0 മുതൽ 100 വരെയുള്ള സ്കോറുകൾ കണ്ടെത്തേണ്ടതുണ്ട്,
 Unable to find variable: ,വേരിയബിനെ കണ്ടെത്താനായില്ല:,
@@ -2960,7 +2918,6 @@
 Upload your letter head and logo. (you can edit them later).,നിങ്ങളുടെ കത്ത് തലയും ലോഗോ അപ്ലോഡ്. (നിങ്ങൾക്ക് പിന്നീട് എഡിറ്റ് ചെയ്യാൻ കഴിയും).,
 Upper Income,അപ്പർ ആദായ,
 Use Sandbox,താങ്കളെ,
-Used Leaves,ഉപയോഗിച്ച ഇലകൾ,
 User,ഉപയോക്താവ്,
 User ID,യൂസർ ഐഡി,
 User ID not set for Employee {0},ഉപയോക്തൃ ഐഡി ജീവനക്കാരുടെ {0} വെച്ചിരിക്കുന്നു അല്ല,
@@ -3051,7 +3008,6 @@
 Website Settings,വെബ്സൈറ്റ് ക്രമീകരണങ്ങൾ,
 Wednesday,ബുധനാഴ്ച,
 Week,ആഴ്ച,
-Weekdays,ആഴ്ച ദിനങ്ങൾ,
 Weekly,പ്രതിവാര,
 "Weight is mentioned,\nPlease mention ""Weight UOM"" too","ഭാരോദ്വഹനം പരാമർശിച്ചിരിക്കുന്നത്, \ n ദയവായി വളരെ &quot;ഭാരോദ്വഹനം UOM&quot; മറന്ന",
 Welcome email sent,സ്വാഗതം മെയിൽ അയച്ചിട്ടുണ്ട്,
@@ -3072,7 +3028,6 @@
 Work Order {0} must be submitted,വർക്ക് ഓർഡർ {0} സമർപ്പിക്കേണ്ടതുണ്ട്,
 Work Orders Created: {0},സൃഷ്ടികൾ ഓർഡറുകൾ സൃഷ്ടിച്ചു: {0},
 Work-in-Progress Warehouse is required before Submit,വർക്ക്-ഇൻ-പുരോഗതി വെയർഹൗസ് മുമ്പ് സമർപ്പിക്കുക ആവശ്യമാണ്,
-Workflow,വർക്ക്ഫ്ലോ,
 Working,ജോലി,
 Working Hours,ജോലിചെയ്യുന്ന സമയം,
 Workstation,വറ്ക്ക്സ്റ്റേഷൻ,
@@ -3102,7 +3057,6 @@
 You need to be a user other than Administrator with System Manager and Item Manager roles to register on Marketplace.,Marketplace- ൽ രജിസ്റ്റർ ചെയ്യുന്നതിന് സിസ്റ്റം മാനേജറും ഉപയോക്തൃ മാനേജർ റോളുകളും ഉള്ള അഡ്മിനിസ്ട്രേറ്റർ അല്ലാത്ത ഒരു ഉപയോക്താവായിരിക്കണം നിങ്ങൾ.,
 You need to be a user with System Manager and Item Manager roles to add users to Marketplace.,Marketplace- ലേക്ക് ഉപയോക്താക്കളെ ചേർക്കാൻ നിങ്ങൾ സിസ്റ്റം മാനേജറും ഉപയോക്തൃ മാനേജർ റോളുകളും ഉള്ള ഒരു ഉപയോക്താവായിരിക്കണം.,
 You need to be a user with System Manager and Item Manager roles to register on Marketplace.,Marketplace- ൽ രജിസ്റ്റർ ചെയ്യുന്നതിന് സിസ്റ്റം മാനേജറും ഒരു ഇനം മാനേജുമെന്റ് റോളുകളും ഉള്ള ഒരു ഉപയോക്താവായിരിക്കണം നിങ്ങൾ.,
-You need to be logged in to access this page,ഈ പേജ് ആക്സസ് ലോഗ് ഇൻ ചെയ്യേണ്ടതുണ്ട്,
 You need to enable Shopping Cart,നിങ്ങൾ ഷോപ്പിംഗ് കാർട്ട് പ്രവർത്തനക്ഷമമാക്കേണ്ടതുണ്ട്,
 You will lose records of previously generated invoices. Are you sure you want to restart this subscription?,മുമ്പ് സൃഷ്ടിച്ച ഇൻവോയ്സുകളുടെ റെക്കോർഡുകൾ നിങ്ങൾക്ക് നഷ്ടപ്പെടും. ഈ സബ്സ്ക്രിപ്ഷൻ പുനരാരംഭിക്കാൻ നിങ്ങൾ ആഗ്രഹിക്കുന്നുവെന്ന് ഉറപ്പാണോ?,
 Your Organization,നിങ്ങളുടെ ഓർഗനൈസേഷൻ,
@@ -3218,7 +3172,6 @@
 Assigned To,നിയോഗിച്ചിട്ടുള്ള,
 Chat,ചാറ്റ്,
 Completed By,പൂർത്തിയായത്,
-County,കൗണ്ടി,
 Day of Week,ആഴ്ചയിലെ ദിവസം,
 "Dear System Manager,","പ്രിയ സിസ്റ്റം മാനേജർ,",
 Default Value,സഹജമായ മൂല്യം,
@@ -3229,31 +3182,21 @@
 Fieldtype,Fieldtype,
 Help Articles,സഹായം ലേഖനങ്ങൾ,
 ID,ഐഡി,
-Images,ചിത്രങ്ങൾ,
 Import,ഇംപോർട്ട്,
 Language,ഭാഷ,
 Likes,ഇഷ്ടങ്ങൾ,
 Merge with existing,നിലവിലുള്ള ലയിക്കാനുള്ള,
-Office,ഓഫീസ്,
 Orientation,വിന്യാസം,
 Parent,പേരന്റ്ഫോള്ഡര്,
-Passive,നിഷ്കിയമായ,
 Payment Failed,പേയ്മെന്റ് പരാജയപ്പെട്ടു,
-Permanent,സ്ഥിരമായ,
 Personal,വ്യക്തിപരം,
-Plant,പ്ലാന്റ്,
 Post,പോസ്റ്റുകൾ,
-Postal,പോസ്റ്റൽ,
 Postal Code,തപാൽ കോഡ്,
-Previous,മുമ്പത്തെ,
 Provider,ദാതാവ്,
 Read Only,വായിക്കാൻ മാത്രം,
 Recipient,സ്വീകർത്താവ്,
 Reviews,അവലോകനങ്ങൾ,
 Sender,അയച്ചയാളുടെ,
-Shop,കട,
-Subsidiary,സഹായകന്,
-There is some problem with the file url: {0},ഫയൽ URL ഉള്ള ചില പ്രശ്നം ഉണ്ട്: {0},
 There were errors while sending email. Please try again.,ഇമെയിൽ അയയ്ക്കുമ്പോൾ പിശകുകളുണ്ടായിരുന്നു. വീണ്ടും ശ്രമിക്കുക.,
 Values Changed,മൂല്യങ്ങള് മാറിയിരിക്കുന്നു,
 or,അഥവാ,
@@ -3280,19 +3223,16 @@
 Quality Feedback Template,ഗുണനിലവാരമുള്ള ഫീഡ്‌ബാക്ക് ടെംപ്ലേറ്റ്,
 Rules for applying different promotional schemes.,വ്യത്യസ്ത പ്രമോഷണൽ സ്കീമുകൾ പ്രയോഗിക്കുന്നതിനുള്ള നിയമങ്ങൾ.,
 Show {0},{0} കാണിക്കുക,
-"Special Characters except '-', '#', '.', '/', '{{' and '}}' not allowed in naming series {0}","&quot;-&quot;, &quot;#&quot;, &quot;.&quot;, &quot;/&quot;, &quot;{{&quot;, &quot;}}&quot; എന്നിവ ഒഴികെയുള്ള പ്രത്യേക പ്രതീകങ്ങൾ നാമകരണ ശ്രേണിയിൽ അനുവദനീയമല്ല {0}",
 Target Details,ടാർഗെറ്റ് വിശദാംശങ്ങൾ,
 {0} already has a Parent Procedure {1}.,{0} ന് ഇതിനകം ഒരു രക്ഷാകർതൃ നടപടിക്രമം ഉണ്ട് {1}.,
 API,API,
 Annual,വാർഷിക,
 Change,മാറ്റുക,
 Contact Email,കോൺടാക്റ്റ് ഇമെയിൽ,
-Export Type,എക്സ്പോർട്ട് തരം,
 From Date,ഈ തീയതി മുതൽ,
 Group By,ഗ്രൂപ്പ് പ്രകാരം,
 Invalid URL,അസാധുവായ URL,
 Landscape,ലാൻഡ്സ്കേപ്പ്,
-Last Sync On,അവസാനമായി സമന്വയിപ്പിക്കുക ഓണാണ്,
 Naming Series,സീരീസ് നാമകരണം,
 No data to export,എക്‌സ്‌പോർട്ടുചെയ്യാൻ ഡാറ്റയൊന്നുമില്ല,
 Portrait,ഛായാചിത്രം,
@@ -3302,7 +3242,6 @@
 Show Document,പ്രമാണം കാണിക്കുക,
 Show Traceback,ട്രേസ്ബാക്ക് കാണിക്കുക,
 Video,വീഡിയോ,
-Webhook Secret,വെബ്‌ഹൂക്ക് രഹസ്യം,
 % Of Grand Total,മൊത്തം മൊത്തം%,
 <b>Company</b> is a mandatory filter.,<b>കമ്പനി</b> നിർബന്ധിത ഫിൽട്ടറാണ്.,
 <b>From Date</b> is a mandatory filter.,<b>തീയതി മുതൽ</b> നിർബന്ധിത ഫിൽട്ടറാണ്.,
@@ -3358,7 +3297,6 @@
 BOM Comparison Tool,BOM താരതമ്യ ഉപകരണം,
 BOM recursion: {0} cannot be child of {1},BOM ആവർത്തനം: {0} {1 of ന്റെ കുട്ടിയാകാൻ കഴിയില്ല,
 BOM recursion: {0} cannot be parent or child of {1},BOM ആവർത്തനം: {0 parent parent 1 parent ന്റെ രക്ഷകർത്താവോ കുട്ടിയോ ആകാൻ കഴിയില്ല,
-Back to Home,തിരികെ വീട്ടിലേക്ക്,
 Back to Messages,സന്ദേശങ്ങളിലേക്ക് മടങ്ങുക,
 Bank Data mapper doesn't exist,ബാങ്ക് ഡാറ്റ മാപ്പർ നിലവിലില്ല,
 Bank Details,ബാങ്ക് വിശദാംശങ്ങൾ,
@@ -3420,7 +3358,6 @@
 Currency,കറൻസി,
 Current Status,ഇപ്പോഴത്തെ നില,
 Customer PO,കസ്റ്റമർ പി.ഒ.,
-Customize,ഇഷ്ടാനുസൃതമാക്കുക,
 Daily,നിത്യജീവിതത്തിലെ,
 Date,തീയതി,
 Date of Birth cannot be greater than Joining Date.,ചേരുന്ന തീയതിയെക്കാൾ ജനനത്തീയതി വലുതായിരിക്കരുത്.,
@@ -3454,7 +3391,6 @@
 ERPNext could not find any matching payment entry,പൊരുത്തപ്പെടുന്ന പേയ്‌മെന്റ് എൻ‌ട്രികളൊന്നും ERPNext ന് കണ്ടെത്താനായില്ല,
 Earliest Age,ആദ്യകാല പ്രായം,
 Edit Details,വിശദാംശങ്ങൾ എഡിറ്റ് ചെയ്യുക,
-Edit Profile,എഡിറ്റ് പ്രൊഫൈൽ,
 Either GST Transporter ID or Vehicle No is required if Mode of Transport is Road,ഗതാഗത മോഡ് റോഡാണെങ്കിൽ ജിഎസ്ടി ട്രാൻസ്പോർട്ടർ ഐഡി അല്ലെങ്കിൽ വെഹിക്കിൾ നമ്പർ ആവശ്യമില്ല,
 Email,ഇമെയിൽ,
 Email Campaigns,ഇമെയിൽ കാമ്പെയ്‌നുകൾ,
@@ -3482,7 +3418,6 @@
 Fetch Items from Warehouse,വെയർഹൗസിൽ നിന്ന് ഇനങ്ങൾ നേടുക,
 Fetching...,ലഭ്യമാക്കുന്നു ...,
 Field,ഫീൽഡ്,
-File Manager,പ്രമാണം മാനേജർ,
 Filters,ഫിൽട്ടറുകൾ,
 Finding linked payments,ലിങ്കുചെയ്‌ത പേയ്‌മെന്റുകൾ കണ്ടെത്തുന്നു,
 Fleet Management,ഫ്ലീറ്റ് മാനേജ്മെന്റ്,
@@ -3521,7 +3456,6 @@
 Incorrect Warehouse,തെറ്റായ വെയർഹ house സ്,
 Invalid Barcode. There is no Item attached to this barcode.,അസാധുവായ ബാർകോഡ്. ഈ ബാർകോഡിൽ ഒരു ഇനവും അറ്റാച്ചുചെയ്തിട്ടില്ല.,
 Invalid credentials,അസാധുവായ ക്രെഡൻഷ്യലുകൾ,
-Invite as User,ഉപയോക്താവ് ആയി ക്ഷണിക്കുക,
 Issue Priority.,മുൻ‌ഗണന നൽകുക.,
 Issue Type.,ലക്കം തരം.,
 "It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","സെർവറിന്റെ സ്ട്രൈക്ക് കോൺഫിഗറേഷനിൽ ഒരു പ്രശ്നമുണ്ടെന്ന് തോന്നുന്നു. പരാജയപ്പെട്ടാൽ, നിങ്ങളുടെ അക്കൗണ്ടിലേക്ക് തുക തിരികെ നൽകും.",
@@ -3564,7 +3498,6 @@
 New Invoice,പുതിയ ഇൻവോയ്സ്,
 New Payment,പുതിയ പേയ്‌മെന്റ്,
 New release date should be in the future,പുതിയ റിലീസ് തീയതി ഭാവിയിൽ ആയിരിക്കണം,
-Newsletter,വാർത്താക്കുറിപ്പ്,
 No Account matched these filters: {},അക്കൗണ്ടുകളൊന്നും ഈ ഫിൽട്ടറുകളുമായി പൊരുത്തപ്പെടുന്നില്ല: {},
 No communication found.,ആശയവിനിമയമൊന്നും കണ്ടെത്തിയില്ല.,
 No correct answer is set for {0},Answer 0 for എന്നതിനായി ശരിയായ ഉത്തരം സജ്ജമാക്കിയിട്ടില്ല,
@@ -3640,7 +3573,6 @@
 Please setup a default bank account for company {0},Company 0 company കമ്പനിക്കായി ഒരു സ്ഥിരസ്ഥിതി ബാങ്ക് അക്കൗണ്ട് സജ്ജമാക്കുക,
 Please specify,ദയവായി വ്യക്തമാക്കുക,
 Please specify a {0},ഒരു {0 വ്യക്തമാക്കുക,lead
-Printing,അച്ചടി,
 Priority,മുൻഗണന,
 Priority has been changed to {0}.,മുൻ‌ഗണന {0 to ആയി മാറ്റി.,
 Priority {0} has been repeated.,മുൻ‌ഗണന {0} ആവർത്തിച്ചു.,
@@ -3649,7 +3581,6 @@
 Project,പ്രോജക്ട്,
 Provide the academic year and set the starting and ending date.,"അധ്യയന വർഷം നൽകി ആരംഭ, അവസാന തീയതി സജ്ജമാക്കുക.",
 Public token is missing for this bank,ഈ ബാങ്കിനായി പൊതു ടോക്കൺ കാണുന്നില്ല,
-Publish,പ്രസിദ്ധീകരിക്കുക,
 Publish 1 Item,1 ഇനം പ്രസിദ്ധീകരിക്കുക,
 Publish Items,ഇനങ്ങൾ പ്രസിദ്ധീകരിക്കുക,
 Publish More Items,കൂടുതൽ ഇനങ്ങൾ പ്രസിദ്ധീകരിക്കുക,
@@ -3677,7 +3608,6 @@
 Reconciled,അനുരഞ്ജിപ്പിച്ചു,
 Recruitment,റിക്രൂട്ട്മെന്റ്,
 Red,റെഡ്,
-Refreshing,പുതുക്കുന്നു,
 Release date must be in the future,റിലീസ് തീയതി ഭാവിയിൽ ആയിരിക്കണം,
 Relieving Date must be greater than or equal to Date of Joining,റിലീവിംഗ് തീയതി ചേരുന്ന തീയതിയെക്കാൾ വലുതോ തുല്യമോ ആയിരിക്കണം,
 Rename,പേരു്മാറ്റുക,
@@ -3721,7 +3651,6 @@
 Search for a payment,ഒരു പേയ്‌മെന്റിനായി തിരയുക,
 Search for anything ...,എന്തിനും തിരയുക ...,
 Search results for,ഇതിനുള്ള തിരയൽ ഫലങ്ങൾ,
-Select All,എല്ലാം തിരഞ്ഞെടുക്കുക,
 Select Difference Account,വ്യത്യാസ അക്കൗണ്ട് തിരഞ്ഞെടുക്കുക,
 Select a Default Priority.,ഒരു സ്ഥിര മുൻ‌ഗണന തിരഞ്ഞെടുക്കുക.,
 Select a company,ഒരു കമ്പനി തിരഞ്ഞെടുക്കുക,
@@ -3740,11 +3669,9 @@
 Service Level Agreement has been changed to {0}.,സേവന ലെവൽ കരാർ {0 to ആയി മാറ്റി.,
 Service Level Agreement was reset.,സേവന ലെവൽ കരാർ പുന .സജ്ജമാക്കി.,
 Service Level Agreement with Entity Type {0} and Entity {1} already exists.,"എന്റിറ്റി തരം {0}, എന്റിറ്റി {1 with എന്നിവയുമായുള്ള സേവന ലെവൽ കരാർ ഇതിനകം നിലവിലുണ്ട്.",
-Set,സജ്ജമാക്കുക,
 Set Meta Tags,മെറ്റാ ടാഗുകൾ സജ്ജമാക്കുക,
 Set {0} in company {1},കമ്പനി {1} ൽ {0 Set സജ്ജമാക്കുക,
 Setup,സജ്ജമാക്കുക,
-Setup Wizard,സെറ്റപ്പ് വിസാർഡ്,
 Shift Management,Shift മാനേജ്മെന്റ്,
 Show Future Payments,ഭാവി പേയ്‌മെന്റുകൾ കാണിക്കുക,
 Show Linked Delivery Notes,ലിങ്കുചെയ്‌ത ഡെലിവറി കുറിപ്പുകൾ കാണിക്കുക,
@@ -3815,7 +3742,6 @@
 Unreconciled,അനുരഞ്ജിപ്പിച്ചിട്ടില്ല,
 Unsupported GST Category for E-Way Bill JSON generation,ഇ-വേ ബിൽ JSON ജനറേഷന് പിന്തുണയ്‌ക്കാത്ത ജിഎസ്ടി വിഭാഗം,
 Update,പുതുക്കിയ,
-Update Details,വിശദാംശങ്ങൾ അപ്‌ഡേറ്റുചെയ്യുക,
 Update Taxes for Items,ഇനങ്ങൾക്കായി നികുതികൾ അപ്‌ഡേറ്റുചെയ്യുക,
 "Upload a bank statement, link or reconcile a bank account","ഒരു ബാങ്ക് സ്റ്റേറ്റ്മെന്റ് അപ്‌ലോഡ് ചെയ്യുക, ഒരു ബാങ്ക് അക്ക link ണ്ട് ലിങ്കുചെയ്യുക അല്ലെങ്കിൽ അനുരഞ്ജിപ്പിക്കുക",
 Upload a statement,ഒരു പ്രസ്താവന അപ്‌ലോഡുചെയ്യുക,
@@ -3839,7 +3765,6 @@
 XML Files Processed,എക്സ്എം‌എൽ ഫയലുകൾ പ്രോസസ്സ് ചെയ്തു,
 Year,വർഷം,
 Yearly,വാർഷികം,
-You,നിങ്ങൾ,
 You are not allowed to enroll for this course,ഈ കോഴ്‌സിലേക്ക് ചേരാൻ നിങ്ങളെ അനുവദിച്ചിട്ടില്ല,
 You are not enrolled in program {0},നിങ്ങൾ program 0 program പ്രോഗ്രാമിൽ ചേർന്നിട്ടില്ല,
 You can Feature upto 8 items.,നിങ്ങൾക്ക് 8 ഇനങ്ങൾ വരെ ഫീച്ചർ ചെയ്യാൻ കഴിയും.,
@@ -3856,7 +3781,6 @@
 e-Way Bill already exists for this document,ഈ പ്രമാണത്തിനായി ഇ-വേ ബിൽ ഇതിനകം നിലവിലുണ്ട്,
 woocommerce - {0},woocommerce - {0},
 {0} Coupon used are {1}. Allowed quantity is exhausted,{0 used ഉപയോഗിച്ച കൂപ്പൺ {1 are ആണ്. അനുവദനീയമായ അളവ് തീർന്നു,
-{0} Name,{0} പേര്,
 {0} Operations: {1},{0} പ്രവർത്തനങ്ങൾ: {1},
 {0} bank transaction(s) created,{0} ബാങ്ക് ഇടപാട് (കൾ) സൃഷ്ടിച്ചു,
 {0} bank transaction(s) created and {1} errors,{0} ബാങ്ക് ഇടപാട് (കൾ) സൃഷ്ടിക്കുകയും {1} പിശകുകൾ,
@@ -3875,17 +3799,13 @@
 Total Income,ആകെ വരുമാനം,
 Total Income This Year,ഈ വർഷം ആകെ വരുമാനം,
 Barcode,ബാർകോഡ്,
-Bold,ധീരമായ,
-Center,കേന്ദ്രം,
 Clear,മായ്‌ക്കുക,
-Comment,അഭിപ്രായം,
 Comments,അഭിപ്രായങ്ങൾ,
 DocType,ഡോക്‌ടൈപ്പ്,
 Download,ഡൗൺലോഡ്,
 Left,ഇടതുപക്ഷം,
 Link,ലിങ്ക്,
 New,പുതിയത്,
-Not Found,കാണ്മാനില്ല,
 Print,അച്ചടിക്കുക,
 Reference Name,റഫറൻസ് പേര്,
 Refresh,പുതുക്കുക,
@@ -3908,7 +3828,6 @@
 Email Id,ഇമെയിൽ ഐഡി,
 No,ഇല്ല,
 Reference Doctype,റഫറൻസ് DocType,
-User Id,യൂസർ ഐഡി,
 Yes,അതെ,
 Actual ,യഥാർത്ഥം,
 Add to cart,കാർട്ടിലേക്ക് ചേർക്കുക,
@@ -4304,7 +4223,6 @@
 e.g Adjustments for:,ഉദാഹരണത്തിന് ഇവയ്ക്കുള്ള ക്രമീകരണങ്ങൾ:,
 Section Subtotal,വിഭാഗം ഉപവിഭാഗം,
 Section Footer,വിഭാഗം അടിക്കുറിപ്പ്,
-Position,സ്ഥാനം,
 Cash Flow Mapping,ക്യാഷ് ഫ്ലോ മാപ്പിംഗ്,
 Select Maximum Of 1,പരമാവധി 1 എണ്ണം തിരഞ്ഞെടുക്കുക,
 Is Finance Cost,ധനകാര്യ ചെലവ്,
@@ -4936,7 +4854,6 @@
 Previous Business Day,മുമ്പത്തെ വ്യാപാര ദിനം,
 Next Business Day,അടുത്ത വ്യാപാര ദിനം,
 Urgent,തിടുക്കപ്പെട്ടതായ,
-Crop,വിള,
 Crop Name,ക്രോപ്പ് പേര്,
 Scientific Name,ശാസ്ത്രീയ നാമം,
 "You can define all the tasks which need to carried out for this crop here. The day field is used to mention the day on which the task needs to be carried out, 1 being the 1st day, etc.. ","ഇവിടെ നിങ്ങൾക്ക് ഈ വിളയ്ക്ക് വേണ്ടി ചെയ്യേണ്ട എല്ലാ ചുമതലകളും നിങ്ങൾക്ക് നിർവചിക്കാം. ഒരു ദിവസത്തെ ദിവസം, മുതലായവ നിർവഹിക്കേണ്ട ദിവസം സൂചിപ്പിക്കാനാണ് ദിവസം ഫീൽഡ് ഉപയോഗിക്കുന്നത്.",
@@ -5441,7 +5358,6 @@
 To TIme,സമയം ചെയ്യുന്നതിനായി,
 Course End Date,കോഴ്സ് അവസാന തീയതി,
 Course Topic,കോഴ്‌സ് വിഷയം,
-Topic,വിഷയം,
 Topic Name,വിഷയം പേര്,
 Education Settings,വിദ്യാഭ്യാസ ക്രമീകരണം,
 Current Academic Year,നിലവിലെ അക്കാദമിക് വർഷം,
@@ -5516,7 +5432,6 @@
 Check this if the Student is residing at the Institute's Hostel.,വിദ്യാർത്ഥി ഇൻസ്റ്റിറ്റ്യൂട്ട് ഹോസ്റ്റൽ വസിക്കുന്നു എങ്കിൽ ഈ പരിശോധിക്കുക.,
 Walking,നടത്തം,
 Institute's Bus,ഇൻസ്റ്റിറ്റ്യൂട്ട് ബസ്,
-Public Transport,പൊതു ഗതാഗതം,
 Self-Driving Vehicle,സ്വയം-ഡ്രൈവിംഗ് വാഹനം,
 Pick/Drop by Guardian,രക്ഷിതാവോ / ഡ്രോപ്പ് തിരഞ്ഞെടുക്കുക,
 Enrolled courses,എൻറോൾ ചെയ്ത കോഴ്സുകൾ,
@@ -5697,7 +5612,6 @@
 Default Cost Center,സ്ഥിരസ്ഥിതി ചെലവ് കേന്ദ്രം,
 Undeposited Funds Account,Undeposited ഫണ്ടുകൾ അക്കൗണ്ട്,
 Shopify Log,ലോഗ് ഷോപ്പ് ചെയ്യൂ,
-Request Data,ഡാറ്റ അഭ്യർത്ഥിക്കുക,
 Shopify Settings,Shopify ക്രമീകരണങ്ങൾ,
 status html,സ്റ്റാറ്റസ് html,
 Enable Shopify,Shopify പ്രാപ്തമാക്കുക,
@@ -5817,7 +5731,6 @@
 Exercise Instructions,വ്യായാമ നിർദ്ദേശങ്ങൾ,
 Exercise Video,വ്യായാമ വീഡിയോ,
 Exercise Steps,വ്യായാമ ഘട്ടങ്ങൾ,
-Steps,ഘട്ടങ്ങൾ,
 Steps Table,ഘട്ടങ്ങളുടെ പട്ടിക,
 Exercise Type Step,വ്യായാമ തരം ഘട്ടം,
 Max number of visit,സന്ദർശിക്കുന്ന പരമാവധി എണ്ണം,
@@ -6001,7 +5914,6 @@
 Patient Encounter Symptom,രോഗി ഏറ്റുമുട്ടൽ ലക്ഷണം,
 HLC-PMR-.YYYY.-,HLC-PMR-.YYYY.-,
 Attach Medical Record,മെഡിക്കൽ റെക്കോർഡ് അറ്റാച്ചുചെയ്യുക,
-Reference DocType,റഫറൻസ് ഡോക്‌ടൈപ്പ്,
 Spouse,ജീവിത പങ്കാളി,
 Family,കുടുംബം,
 Schedule Details,വിശദാംശങ്ങൾ ഷെഡ്യൂൾ ചെയ്യുക,
@@ -6983,16 +6895,8 @@
 HTML / Banner that will show on the top of product list.,ഉൽപ്പന്ന പട്ടികയിൽ മുകളിൽ കാണിച്ചുതരുന്ന HTML / ബാനർ.,
 Set prefix for numbering series on your transactions,നിങ്ങളുടെ ഇടപാടുകൾ പരമ്പര എണ്ണം പ്രിഫിക്സ് സജ്ജമാക്കുക,
 Setup Series,സെറ്റപ്പ് സീരീസ്,
-Select Transaction,ഇടപാട് തിരഞ്ഞെടുക്കുക,
-Help HTML,എച്ച്ടിഎംഎൽ സഹായം,
-Series List for this Transaction,ഈ ഇടപാടിനായി സീരീസ് പട്ടിക,
-User must always select,ഉപയോക്താവ് എപ്പോഴും തിരഞ്ഞെടുക്കണം,
-Check this if you want to force the user to select a series before saving. There will be no default if you check this.,സംരക്ഷിക്കാതെ മുമ്പ് ഒരു പരമ്പര തിരഞ്ഞെടുക്കുന്നതിന് ഉപയോക്താവിനെ നിർബ്ബന്ധമായും ചെയ്യണമെങ്കിൽ ഇത് പരിശോധിക്കുക. നിങ്ങൾ ഈ പരിശോധിക്കുക ആരും സ്വതവേ അവിടെ ആയിരിക്കും.,
 Update Series,അപ്ഡേറ്റ് സീരീസ്,
 Change the starting / current sequence number of an existing series.,നിലവിലുള്ള ഒരു പരമ്പരയിലെ തുടങ്ങുന്ന / നിലവിലെ ക്രമസംഖ്യ മാറ്റുക.,
-Prefix,പ്രിഫിക്സ്,
-This is the number of the last created transaction with this prefix,ഇത് ഈ കൂടിയ അവസാന സൃഷ്ടിച്ച ഇടപാട് എണ്ണം ആണ്,
-Update Series Number,അപ്ഡേറ്റ് സീരീസ് നമ്പർ,
 Quotation Lost Reason,ക്വട്ടേഷൻ ലോസ്റ്റ് കാരണം,
 A third party distributor / dealer / commission agent / affiliate / reseller who sells the companies products for a commission.,ഒരു കമ്മീഷൻ കമ്പനികൾ ഉൽപ്പന്നങ്ങൾ വിൽക്കുന്നു ഒരു മൂന്നാം കക്ഷി വിതരണക്കാരനായ / ഡീലർ / കമ്മീഷൻ ഏജന്റ് / അനുബന്ധ / റീസെല്ലറിനെ.,
 Sales Partner Name,സെയിൽസ് പങ്കാളി പേര്,
@@ -7687,7 +7591,6 @@
 Warehouse wise Item Balance Age and Value,വെയർഹൗസ് തിരിച്ചുള്ള ഇനം ബാലൻസ് പ്രായവും മൂല്യവും,
 Work Order Stock Report,വർക്ക് ഓർഡർ സ്റ്റോക്ക് റിപ്പോർട്ട്,
 Work Orders in Progress,വർക്ക് ഓർഡറുകൾ പുരോഗമിക്കുന്നു,
-Validation Error,മൂല്യനിർണ്ണയ പിശക്,
 Automatically Process Deferred Accounting Entry,മാറ്റിവച്ച അക്ക ing ണ്ടിംഗ് എൻ‌ട്രി സ്വപ്രേരിതമായി പ്രോസസ്സ് ചെയ്യുക,
 Bank Clearance,ബാങ്ക് ക്ലിയറൻസ്,
 Bank Clearance Detail,ബാങ്ക് ക്ലിയറൻസ് വിശദാംശം,
@@ -7724,45 +7627,7 @@
 Therapy Plan: ,തെറാപ്പി പ്ലാൻ:,
 Total Counts Targeted: ,ടാർഗെറ്റുചെയ്‌ത ആകെ എണ്ണം:,
 Total Counts Completed: ,ആകെ എണ്ണം പൂർത്തിയായി:,
-Andaman and Nicobar Islands,ആൻഡമാൻ നിക്കോബാർ ദ്വീപുകൾ,
-Andhra Pradesh,ആന്ധ്രപ്രദേശ്,
-Arunachal Pradesh,അരുണാചൽ പ്രദേശ്,
-Assam,അസം,
-Bihar,ബീഹാർ,
-Chandigarh,ചണ്ഡിഗഡ്,
-Chhattisgarh,ഛത്തീസ്ഗ h ്,
-Dadra and Nagar Haveli,ദാദ്രയും നഗർ ഹവേലിയും,
-Daman and Diu,ദാമനും ഡിയുവും,
-Delhi,ദില്ലി,
-Goa,ഗോവ,
-Gujarat,ഗുജറാത്ത്,
-Haryana,ഹരിയാന,
-Himachal Pradesh,ഹിമാചൽ പ്രദേശ്,
-Jammu and Kashmir,ജമ്മു കശ്മീർ,
-Jharkhand,Har ാർഖണ്ഡ്,
-Karnataka,കർണാടക,
-Kerala,കേരളം,
-Lakshadweep Islands,ലക്ഷദ്വീപ് ദ്വീപുകൾ,
-Madhya Pradesh,മധ്യപ്രദേശ്,
-Maharashtra,മഹാരാഷ്ട്ര,
-Manipur,മണിപ്പൂർ,
-Meghalaya,മേഘാലയ,
-Mizoram,മിസോറം,
-Nagaland,നാഗാലാൻഡ്,
-Odisha,ഒഡീഷ,
-Other Territory,മറ്റ് പ്രദേശം,
-Pondicherry,പോണ്ടിച്ചേരി,
-Punjab,പഞ്ചാബ്,
-Rajasthan,രാജസ്ഥാൻ,
-Sikkim,സിക്കിം,
-Tamil Nadu,തമിഴ്‌നാട്,
-Telangana,തെലങ്കാന,
-Tripura,ത്രിപുര,
-Uttar Pradesh,ഉത്തർപ്രദേശ്,
-Uttarakhand,ഉത്തരാഖണ്ഡ്,
-West Bengal,പശ്ചിമ ബംഗാൾ,
 Is Mandatory,നിർബന്ധമാണ്,
-Published on,പ്രസിദ്ധീകരിച്ചു,
 Service Received But Not Billed,സേവനം ലഭിച്ചുവെങ്കിലും ബില്ലില്ല,
 Deferred Accounting Settings,മാറ്റിവച്ച അക്ക ing ണ്ടിംഗ് ക്രമീകരണങ്ങൾ,
 Book Deferred Entries Based On,അടിസ്ഥാനമാക്കി മാറ്റിവച്ച എൻ‌ട്രികൾ,
@@ -8035,8 +7900,6 @@
 Worksheet Instructions,വർക്ക്‌ഷീറ്റ് നിർദ്ദേശങ്ങൾ,
 Result Legend Print,ഫലം ലെജന്റ് പ്രിന്റ്,
 Print Position,പ്രിന്റ് സ്ഥാനം,
-Bottom,ചുവടെ,
-Top,മുകളിൽ,
 Both,രണ്ടും,
 Result Legend,ഫല ഇതിഹാസം,
 Lab Tests,ലാബ് ടെസ്റ്റുകൾ,
@@ -8081,12 +7944,10 @@
 Approvers,അംഗങ്ങൾ,
 The first Approver in the list will be set as the default Approver.,ലിസ്റ്റിലെ ആദ്യ അംഗീകാരം സ്ഥിരസ്ഥിതി അംഗീകാരമായി സജ്ജമാക്കും.,
 Shift Request Approver,ഷിഫ്റ്റ് അഭ്യർത്ഥന അംഗീകാരം,
-PAN Number,പാൻ നമ്പർ,
 Provident Fund Account,പ്രൊവിഡന്റ് ഫണ്ട് അക്കൗണ്ട്,
 MICR Code,MICR കോഡ്,
 Repay unclaimed amount from salary,ക്ലെയിം ചെയ്യാത്ത തുക ശമ്പളത്തിൽ നിന്ന് തിരിച്ചടയ്ക്കുക,
 Deduction from salary,ശമ്പളത്തിൽ നിന്ന് കിഴിവ്,
-Expired Leaves,കാലഹരണപ്പെട്ട ഇലകൾ,
 If this is not checked the loan by default will be considered as a Demand Loan,ഇത് പരിശോധിച്ചില്ലെങ്കിൽ സ്ഥിരസ്ഥിതിയായി വായ്പ ഒരു ഡിമാൻഡ് വായ്പയായി കണക്കാക്കും,
 This account is used for booking loan repayments from the borrower and also disbursing loans to the borrower,വായ്പക്കാരനിൽ നിന്ന് വായ്പ തിരിച്ചടവ് ബുക്ക് ചെയ്യുന്നതിനും വായ്പക്കാരന് വായ്പ വിതരണം ചെയ്യുന്നതിനും ഈ അക്കൗണ്ട് ഉപയോഗിക്കുന്നു,
 This account is capital account which is used to allocate capital for loan disbursal account ,വായ്പാ വിതരണ അക്കൗണ്ടിനായി മൂലധനം അനുവദിക്കുന്നതിന് ഉപയോഗിക്കുന്ന മൂലധന അക്കൗണ്ടാണ് ഈ അക്കൗണ്ട്,
@@ -8844,3 +8705,41 @@
 Creating Purchase Order ...,വാങ്ങൽ ഓർഡർ സൃഷ്ടിക്കുന്നു ...,
 "Select a Supplier from the Default Suppliers of the items below. On selection, a Purchase Order will be made against items belonging to the selected Supplier only.","ചുവടെയുള്ള ഇനങ്ങളുടെ സ്ഥിരസ്ഥിതി വിതരണക്കാരിൽ നിന്ന് ഒരു വിതരണക്കാരനെ തിരഞ്ഞെടുക്കുക. തിരഞ്ഞെടുക്കുമ്പോൾ, തിരഞ്ഞെടുത്ത വിതരണക്കാരന്റെ മാത്രം ഇനങ്ങൾക്കെതിരെ ഒരു വാങ്ങൽ ഓർഡർ നൽകും.",
 Row #{}: You must select {} serial numbers for item {}.,വരി # {}: നിങ്ങൾ item item ഇനത്തിനായി {} സീരിയൽ നമ്പറുകൾ തിരഞ്ഞെടുക്കണം.,
+Add Comment,അഭിപ്രായം ചേർക്കുക,
+More...,കൂടുതൽ...,
+Notes,കുറിപ്പുകൾ,
+Payment Gateway,പേയ്മെന്റ് ഗേറ്റ്വേ,
+Payment Gateway Name,പേയ്മെന്റ് ഗേറ്റ് വേ പേര്,
+Payments,പേയ്മെൻറുകൾ,
+Plan Name,പ്ലാൻ പേര്,
+Portal,പോർട്ടൽ,
+Scan Barcode,ബാർകോഡ് സ്കാൻ ചെയ്യുക,
+Some information is missing,ചില വിവരങ്ങൾ കാണുന്നില്ലെന്ന്,
+Successful,വിജയകരം,
+Tools,ഉപകരണങ്ങൾ,
+Use Sandbox,താങ്കളെ,
+Busy,തിരക്ക്,
+Completed By,പൂർത്തിയായത്,
+Payment Failed,പേയ്മെന്റ് പരാജയപ്പെട്ടു,
+Column {0},നിര {0},
+Field Mapping,ഫീൽഡ് മാപ്പിംഗ്,
+Not Specified,വ്യക്തമാക്കിയിട്ടില്ല,
+Update Type,അപ്‌ഡേറ്റ് തരം,
+Dr,ഡോ,
+End Time,അവസാനിക്കുന്ന സമയം,
+Fetching...,ലഭ്യമാക്കുന്നു ...,
+"It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","സെർവറിന്റെ സ്ട്രൈക്ക് കോൺഫിഗറേഷനിൽ ഒരു പ്രശ്നമുണ്ടെന്ന് തോന്നുന്നു. പരാജയപ്പെട്ടാൽ, നിങ്ങളുടെ അക്കൗണ്ടിലേക്ക് തുക തിരികെ നൽകും.",
+Looks like someone sent you to an incomplete URL. Please ask them to look into it.,നിങ്ങൾ ഒരു അപൂർണ്ണമായ യുആർഎൽ അയച്ചു ആരെങ്കിലും തോന്നുന്നു. അത് നോക്കി ആവശ്യപ്പെടുക.,
+Master,യജമാനന്,
+Pay,ശമ്പള,
+You can also copy-paste this link in your browser,നിങ്ങൾക്ക് ഇതും പകർത്തി ഒട്ടിക്കുക കഴിയും ഈ ലിങ്ക് നിങ്ങളുടെ ബ്രൗസറിലെ,
+Verified By,പരിശോധിച്ചു,
+Invalid naming series (. missing) for {0},{0 for എന്നതിനായി അസാധുവായ നാമകരണ സീരീസ് (. കാണുന്നില്ല),
+Phone Number,ഫോൺ നമ്പർ,
+Account SID,അക്കൗണ്ട് SID,
+Global Defaults,ആഗോള സ്ഥിരസ്ഥിതികൾ,
+Is Mandatory,നിർബന്ധമാണ്,
+WhatsApp,വാട്ട്‌സ്ആപ്പ്,
+Make a call,ഒരു കാൾ ചെയ്യുക,
+Approve,അംഗീകരിക്കുക,
+Reject,നിരസിക്കുക,
diff --git a/erpnext/translations/mr.csv b/erpnext/translations/mr.csv
index 87e0fdd..ff339b6 100644
--- a/erpnext/translations/mr.csv
+++ b/erpnext/translations/mr.csv
@@ -113,7 +113,6 @@
 Add Items,आयटम जोडा,
 Add Leads,लीड्स जोडा,
 Add Multiple Tasks,अनेक कार्ये जोडा,
-Add Row,पंक्ती जोडा,
 Add Sales Partners,विक्री भागीदार जोडा,
 Add Serial No,सिरियल नाही जोडा,
 Add Students,विद्यार्थी जोडा,
@@ -211,9 +210,7 @@
 An error occurred during the update process,अद्यतन प्रक्रियेदरम्यान एक त्रुटी आली,
 "An item exists with same name ({0}), please change the item group name or rename the item","आयटम त्याच नावाने अस्तित्वात ( {0} ) असेल , तर आयटम गट नाव बदल  किंवा आयटम पुनर्नामित करा",
 Analyst,विश्लेषक,
-Analytics,विश्लेषण,
 Annual Billing: {0},वार्षिक बिलिंग: {0},
-Anonymous,अनामिक,
 Another Budget record '{0}' already exists against {1} '{2}' and account '{3}' for fiscal year {4},दुसरे बजेट रेकॉर्ड &#39;{0}&#39; आधीपासूनच चालू आहे {1} &#39;{2}&#39; आणि &#39;{3}&#39; च्या आथिर्क वर्षासाठी {4},
 Another Period Closing Entry {0} has been made after {1},आणखी कालावधी संवरण {0} आला आहे {1},
 Another Sales Person {0} exists with the same Employee id,आणखी विक्री व्यक्ती {0} त्याच कर्मचारी ID अस्तित्वात,
@@ -283,14 +280,12 @@
 Attendance not submitted for {0} as {1} on leave.,{0} साठी {1} सुट्टीसाठी उपस्थित नाही.,
 Attribute table is mandatory,विशेषता टेबल अनिवार्य आहे,
 Attribute {0} selected multiple times in Attributes Table,विशेषता {0} विशेषता टेबल अनेक वेळा निवडले,
-Author,लेखक,
 Authorized Signatory,अधिकृत स्वाक्षरीकर्ता,
 Auto Material Requests Generated,ऑटो साहित्य विनंत्या तयार होतो,
 Auto Repeat,ऑटो पुनरावृत्ती,
 Auto repeat document updated,स्वयं पुनरावृत्ती कागदजत्र अद्यतनित केले,
 Automotive,ऑटोमोटिव्ह,
 Available,उपलब्ध,
-Available Leaves,उपलब्ध पाने,
 Available Qty,उपलब्ध Qty,
 Available Selling,उपलब्ध विक्री,
 Available for use date is required,वापरण्याच्या तारखेसाठी उपलब्ध असणे आवश्यक आहे,
@@ -340,7 +335,6 @@
 Base URL,मूळ URL,
 Based On,आधारित,
 Based On Payment Terms,देय अटींच्या आधारे,
-Basic,मूलभूत,
 Batch,बॅच,
 Batch Entries,बॅचच्या नोंदी,
 Batch ID is mandatory,बॅच आयडी आवश्यक आहे,
@@ -361,7 +355,6 @@
 Billable Hours,बिल करण्यायोग्य तास,
 Billed,बिल,
 Billed Amount,बिल केलेली रक्कम,
-Billing,बिलिंग,
 Billing Address,बिलिंग पत्ता,
 Billing Address is same as Shipping Address,बिलिंग पत्ता शिपिंग पत्त्यासारखेच आहे,
 Billing Amount,बिलिंग रक्कम,
@@ -560,7 +553,6 @@
 Consumed Qty,नाश Qty,
 Consumer Products,ग्राहक उत्पादने,
 Contact,संपर्क,
-Contact Details,संपर्क माहिती,
 Contact Us,आमच्याशी संपर्क साधा,
 Content,सामग्री,
 Content Masters,सामग्री मास्टर्स,
@@ -715,7 +707,6 @@
 Date of Joining,प्रवेश दिनांक,
 Date of Joining must be greater than Date of Birth,प्रवेश दिनांक जन्म तारीख पेक्षा जास्त असणे आवश्यक आहे,
 Date of Transaction,व्यवहाराची तारीख,
-Datetime,DATETIME,
 Day,दिवस,
 Debit,डेबिट,
 Debit ({0}),डेबिट ({0}),
@@ -874,7 +865,6 @@
 Employee cannot report to himself.,कर्मचारी स्वत: ला तक्रार करू शकत नाही.,
 Employee {0} has already applied for {1} between {2} and {3} : ,कर्मचारी {0} आधीपासून {2} आणि {3} दरम्यान {1} साठी अर्ज केला आहे:,
 Employee {0} of grade {1} have no default leave policy,ग्रेड {1} चे कर्मचारी {0} कडे कोणतीही डीफॉल्ट सुट्टी धोरण नाही,
-Enable,सक्षम,
 Enable / disable currencies.,चलने अक्षम  /सक्षम करा.,
 Enabled,सक्षम,
 "Enabling 'Use for Shopping Cart', as Shopping Cart is enabled and there should be at least one Tax Rule for Shopping Cart","सक्षम हे खरेदी सूचीत टाका सक्षम आहे की, हे खरेदी सूचीत टाका वापरा &#39;आणि हे खरेदी सूचीत टाका आणि कमीत कमी एक कर नियम असावा",
@@ -905,7 +895,6 @@
 Error: Not a valid id?,त्रुटी: एक वैध आयडी नाही ?,
 Estimated Cost,अंदाजे खर्च,
 "Even if there are multiple Pricing Rules with highest priority, then following internal priorities are applied:","सर्वोच्च प्राधान्य एकाधिक किंमत नियम असतील , तर खालील अंतर्गत प्राधान्यक्रम लागू केले आहेत:",
-Event,कार्यक्रम,
 Exchange Gain/Loss,विनिमय लाभ / कमी होणे,
 Exchange Rate Revaluation master.,विनिमय दर पुनर्मूल्यांकन मास्टर.,
 Exchange Rate must be same as {0} {1} ({2}),विनिमय दर समान असणे आवश्यक आहे {0} {1} ({2}),
@@ -1032,7 +1021,6 @@
 From value must be less than to value in row {0},सलग {0} मधे  मूल्य पासून मूल्य पर्यंत कमी असणे आवश्यक आहे,
 From {0} | {1} {2},पासून {0} | {1} {2},
 Fulfillment,पूर्ण,
-Full,पूर्ण,
 Full Name,पूर्ण नाव,
 Fully Depreciated,पूर्णपणे अवमूल्यन,
 Furnitures and Fixtures,फर्निचर आणि सामने,
@@ -1133,7 +1121,6 @@
 Hub Sync ID,हब सिंक ID,
 Human Resource,मानव संसाधन,
 Human Resources,मानव संसाधन,
-IFSC Code,आयएफएससी कोड,
 IGST Amount,आयजीएसटी रक्कम,
 IP Address,IP पत्ता,
 ITC Available (whether in full op part),आयटीसी उपलब्ध (पूर्ण ऑप भागातील आहे की नाही),
@@ -1185,7 +1172,6 @@
 Ineligible ITC,अपात्र आयटीसी,
 Initiated,सुरू,
 Inpatient Record,इन पेशंट रेकॉर्ड,
-Insert,घाला,
 Installation Note,प्रतिष्ठापन टीप,
 Installation Note {0} has already been submitted,प्रतिष्ठापन टीप {0} आधीच सादर केला गेला आहे,
 Installation date cannot be before delivery date for Item {0},आयटम {0} साठी प्रतिष्ठापन तारीख  वितरणाच्या  तारीखेनंतर  असू शकत नाही,
@@ -1197,7 +1183,6 @@
 Insurance Start date should be less than Insurance End date,विमा प्रारंभ तारखेच्या विमा समाप्ती तारीख कमी असावे,
 Integrated Tax,एकात्मिक कर,
 Inter-State Supplies,आंतरराज्य पुरवठा,
-Interests,छंद,
 Internet Publishing,इंटरनेट प्रकाशन,
 Intra-State Supplies,इंट्रा-स्टेट पुरवठा,
 Introduction,परिचय,
@@ -1316,7 +1301,6 @@
 Lab testing datetime cannot be before collection datetime,लॅब चाचणी डेटाटाईम संग्रहित करण्याच्या तारखेपयंत आधी होऊ शकत नाही,
 Label,लेबल,
 Laboratory,प्रयोगशाळा,
-Language Name,भाषा नाव,
 Large,मोठे,
 Last Communication,गेल्या कम्युनिकेशन,
 Last Communication Date,गेल्या कम्युनिकेशन तारीख,
@@ -1347,8 +1331,6 @@
 Letter Heads for print templates.,प्रिंट टेम्पलेट साठी letter.,
 Level,स्तर,
 Liability,दायित्व,
-License,परवाना,
-Limit,मर्यादा,
 Limit Crossed,मर्यादा क्रॉस,
 Link to Material Request,सामग्री विनंतीचा दुवा,
 List of all share transactions,सर्व शेअर व्यवहारांची यादी,
@@ -1359,7 +1341,6 @@
 Loans (Liabilities),कर्ज (दायित्व),
 Loans and Advances (Assets),कर्ज आणि  मालमत्ता (assets),
 Local,स्थानिक,
-Log,लॉग,
 Logs for maintaining sms delivery status,एसएमएस स्थिती राखण्यासाठी नोंदी,
 Lost,गमावले,
 Lost Reasons,गमावलेली कारणे,
@@ -1445,7 +1426,6 @@
 Medical Department,वैद्यकीय विभाग,
 Medical Record,वैद्यकीय रेकॉर्ड,
 Medium,मध्यम,
-Meeting,बैठक,
 Member Activity,सदस्य गतिविधी,
 Member ID,सभासद पत्र,
 Member Name,सदस्याचे नाव,
@@ -1495,7 +1475,6 @@
 Multiple Variants,एकाधिक वेरिएंट,
 Multiple fiscal years exist for the date {0}. Please set company in Fiscal Year,अनेक आर्थिक वर्षांमध्ये तारीख {0} अस्तित्वात. आर्थिक वर्ष कंपनी सेट करा,
 Music,संगीत,
-My Account,माझे खाते,
 Name error: {0},नाव त्रुटी: {0},
 Name of new Account. Note: Please don't create accounts for Customers and Suppliers,नवीन खाते नाव. टीप: ग्राहक व पुरवठादार साठी खाती तयार करू नका,
 Name or Email is mandatory,नाव किंवा ईमेल अनिवार्य आहे,
@@ -1538,7 +1517,6 @@
 New credit limit is less than current outstanding amount for the customer. Credit limit has to be atleast {0},नवीन क्रेडिट मर्यादा ग्राहक वर्तमान थकबाकी रक्कम कमी आहे. क्रेडिट मर्यादा किमान असणे आवश्यक आहे {0},
 New task,नवीन कार्य,
 New {0} pricing rules are created,नवीन {0} किंमतीचे नियम तयार केले आहेत,
-Newsletters,वृत्तपत्रे,
 Newspaper Publishers,वृत्तपत्र प्रकाशित,
 Next,पुढील,
 Next Contact By cannot be same as the Lead Email Address,पुढील संपर्क होऊ ईमेल पत्ता समान असू शकत नाही,
@@ -1686,7 +1664,6 @@
 Other,इतर,
 Other Reports,इतर अहवाल,
 "Other outward supplies(Nil rated,Exempted)","इतर बाह्य पुरवठा (शून्य रेट नाही, सूट दिलेला)",
-Others,इतर,
 Out Qty,आउट Qty,
 Out Value,मूल्य Qty,
 Out of Order,नियमबाह्य,
@@ -1726,7 +1703,6 @@
 Party Type and Party is mandatory for {0} account,{0} खात्यासाठी पक्ष प्रकार आणि पार्टी अनिवार्य आहे,
 Party Type is mandatory,पक्ष प्रकार अनिवार्य आहे,
 Party is mandatory,पक्ष अनिवार्य आहे,
-Password,पासवर्ड,
 Past Due Date,भूतकाळातील तारीख,
 Patient,पेशंट,
 Patient Appointment,रुग्ण नेमणूक,
@@ -1784,7 +1760,6 @@
 Pharmaceutical,फार्मास्युटिकल,
 Pharmaceuticals,फार्मास्युटिकल्स,
 Physician,फिजिशियन,
-Pincode,पिनकोड,
 Place Of Supply (State/UT),पुरवठा करण्याचे ठिकाण (राज्य / केंद्रशासित प्रदेश),
 Place Order,मागणी नोंद करा,
 Plan Name,योजनेचे नांव,
@@ -1896,7 +1871,6 @@
 Please select date,कृपया तारीख निवडा,
 Please select item code,कृपया आयटम कोड निवडा,
 Please select month and year,कृपया महिना आणि वर्ष निवडा,
-Please select prefix first,कृपया पहले उपसर्ग निवडा,
 Please select the Company,कृपया कंपनी निवडा,
 Please select the Multiple Tier Program type for more than one collection rules.,कृपया एकापेक्षा अधिक संग्रह नियमांसाठी एकाधिक टियर प्रोग्राम प्रकार निवडा.,
 Please select the assessment group other than 'All Assessment Groups',कृपया &#39;सर्व मूल्यांकन गट&#39; ऐवजी मूल्यांकन गट निवडा,
@@ -1913,7 +1887,6 @@
 Please set Company filter blank if Group By is 'Company',गट करून &#39;कंपनी&#39; आहे तर कंपनी रिक्त फिल्टर सेट करा,
 Please set Default Payroll Payable Account in Company {0},कंपनी मध्ये डीफॉल्ट वेतनपट देय खाते सेट करा {0},
 Please set Depreciation related Accounts in Asset Category {0} or Company {1},मालमत्ता वर्ग {0} किंवा कंपनी मध्ये घसारा संबंधित खाती सेट करा {1},
-Please set Email Address,ई-मेल पत्ता सेट करा,
 Please set GST Accounts in GST Settings,कृपया GST सेटिंग्जमध्ये GST खाती सेट करा,
 Please set Hotel Room Rate on {},कृपया {0 वर हॉटेल रूम रेट सेट करा,
 Please set Number of Depreciations Booked,Depreciations संख्या बुक सेट करा,
@@ -1936,7 +1909,6 @@
 Please set the Email ID for the Student to send the Payment Request,कृपया देयक विनंती पाठविण्यासाठी विद्यार्थीसाठी ईमेल आयडी सेट करा,
 Please set the Item Code first,कृपया प्रथम आयटम कोड सेट करा,
 Please set the Payment Schedule,कृपया देय वेळापत्रक सेट करा,
-Please set the series to be used.,कृपया वापरण्यासाठी मालिका सेट करा.,
 Please set {0} for address {1},कृपया पत्त्यासाठी {1} सेट करा {1},
 Please setup Students under Student Groups,विद्यार्थी गटांद्वारे विद्यार्थी सेट करा,
 Please specify Company,कृपया कंपनी निर्दिष्ट करा,
@@ -1953,7 +1925,6 @@
 Point-of-Sale,पॉइंट-ऑफ-सेल,
 Point-of-Sale Profile,पॉइंट-ऑफ-सेल  प्रोफाइल,
 Portal,पोर्टल,
-Portal Settings,पोर्टल सेटिंग्ज,
 Possible Supplier,शक्य पुरवठादार,
 Postal Expenses,पोस्टल खर्च,
 Posting Date,पोस्टिंग तारीख,
@@ -2152,12 +2123,10 @@
 Reference No is mandatory if you entered Reference Date,तुम्ही संदर्भ तारीख प्रविष्ट केली  असल्यास संदर्भ क्रमांक बंधनकारक आहे,
 Reference No.,संदर्भ क्रमांक.,
 Reference Number,संदर्भ क्रमांक,
-Reference Owner,संदर्भ मालक,
 Reference Type,संदर्भ प्रकार,
 "Reference: {0}, Item Code: {1} and Customer: {2}","संदर्भ: {0}, आयटम कोड: {1} आणि ग्राहक: {2}",
 References,संदर्भ,
 Refresh Token,रिफ्रेश टोकन,
-Region,प्रदेश,
 Register,नोंदणी करा,
 Rejected,नाकारल्याचे,
 Related,संबंधित,
@@ -2179,7 +2148,6 @@
 Replace BOM and update latest price in all BOMs,BOM बदला आणि सर्व BOMs मध्ये नवीनतम किंमत अद्यतनित करा,
 Replied,प्रत्युत्तर दिले,
 Report,अहवाल,
-Report Builder,अहवाल बिल्डर,
 Report Type,अहवाल प्रकार,
 Report Type is mandatory,अहवाल प्रकार अनिवार्य आहे,
 Reports,अहवाल,
@@ -2355,13 +2323,11 @@
 Same Company is entered more than once,त्याच कंपनीने  एका  पेक्षा अधिक प्रवेश केला आहे,
 Same item cannot be entered multiple times.,सारख्या आयटमचा एकाधिक वेळा प्रविष्ट करणे शक्य नाही.,
 Same supplier has been entered multiple times,त्याच पुरवठादार अनेक वेळा प्रविष्ट केले गेले आहे,
-Sample,नमुना,
 Sample Collection,नमुना संकलन,
 Sample quantity {0} cannot be more than received quantity {1},नमुना प्रमाण {0} प्राप्त केलेल्या प्रमाणाहून अधिक असू शकत नाही {1},
 Sanctioned,मंजूर,
 Sand,वाळू,
 Saturday,शनिवारी,
-Saved,जतन,
 Saving {0},जतन करीत आहे {0},
 Scan Barcode,बारकोड स्कॅन करा,
 Schedule,वेळापत्रक,
@@ -2463,7 +2429,6 @@
 Series Updated,मालिका अद्यतनित,
 Series Updated Successfully,मालिका यशस्वीपणे अद्यतनित,
 Series is mandatory,मालिका अनिवार्य आहे,
-Series {0} already used in {1},मालिका {0}  {1} मधे आधीच वापरली,
 Service,सेवा,
 Service Level Agreement,सेवा स्तर करार,
 Service Level Agreement.,सेवा स्तर करार.,
@@ -2479,7 +2444,6 @@
 Set Tax Rule for shopping cart,हे खरेदी सूचीत टाका  कर नियम सेट करा .,
 Set as Closed,बंद म्हणून सेट करा,
 Set as Completed,पूर्ण झाले म्हणून सेट करा,
-Set as Default,डीफॉल्ट म्हणून सेट करा,
 Set as Lost,हरवले म्हणून सेट करा,
 Set as Open,उघडा म्हणून सेट करा,
 Set default inventory account for perpetual inventory,शाश्वत यादी मुलभूत यादी खाते सेट,
@@ -2511,7 +2475,6 @@
 Shareholder,शेअरहोल्डर,
 Ship To State,पोप टू स्टेट,
 Shipments,निर्यात,
-Shipping,शिपिंग,
 Shipping Address,शिपिंग पत्ता,
 "Shipping Address does not have country, which is required for this Shipping Rule","शिपिंग पत्त्याकडे देश नाही, जे या शिपिंग नियमासाठी आवश्यक आहे",
 Shipping rule only applicable for Buying,शिपिंग नियम फक्त खरेदीसाठी लागू आहे,
@@ -2564,7 +2527,6 @@
 Split Batch,स्प्लिट बॅच,
 Split Issue,विभाजित समस्या,
 Sports,क्रीडा,
-Standard,मानक,
 Standard Buying,मानक खरेदी,
 Standard Selling,मानक विक्री,
 Standard contract terms for Sales or Purchase.,विक्री किंवा खरेदी करीता मानक करार अटी.,
@@ -2731,7 +2693,6 @@
 Terms and Conditions,अटी आणि शर्ती,
 Terms and Conditions Template,अटी आणि शर्ती साचा,
 Territory,प्रदेश,
-Test,कसोटी,
 Thank you for your business!,आपला व्यवसाय धन्यवाद!,
 The 'From Package No.' field must neither be empty nor it's value less than 1.,&#39;संकुल क्रमांकांपासून&#39; फील्ड रिक्त नसेल किंवा ते 1 पेक्षा कमी आहे.,
 The Brand,ब्रँड,
@@ -2848,7 +2809,6 @@
 Total (Without Tax),एकूण (कर न करता),
 Total Achieved,एकूण गाठले,
 Total Actual,वास्तविक एकूण,
-Total Allocated Leaves,एकूण वाटप पाने,
 Total Amount,एकूण रक्कम,
 Total Amount Credited,एकूण रक्कम श्रेय,
 Total Applicable Charges in Purchase Receipt Items table must be same as Total Taxes and Charges,खरेदी पावती आयटम टेबल एकूण लागू शुल्क एकूण कर आणि शुल्क म्हणून समान असणे आवश्यक आहे,
@@ -2892,7 +2852,6 @@
 Total(Amt),एकूण (रक्कम),
 Total(Qty),एकूण (Qty),
 Traceability,Traceability,
-Traceback,ट्रेसबॅक,
 Track Leads by Lead Source.,लीड स्त्रोताद्वारे मागोवा घ्या.,
 Transaction,व्यवहार,
 Transaction Date,व्यवहार तारीख,
@@ -2930,7 +2889,6 @@
 UOM Conversion factor is required in row {0},UOM रुपांतर घटक सलग  {0} मधे आवश्यक आहे,
 UOM coversion factor required for UOM: {0} in Item: {1},UOM आवश्यक UOM coversion घटक: {0} आयटम मध्ये: {1},
 URL,URL,
-Unable to find DocType {0},डॉकटाइप {0} शोधण्यात अक्षम,
 Unable to find exchange rate for {0} to {1} for key date {2}. Please create a Currency Exchange record manually,विनिमय दर शोधण्यात अक्षम {0} करण्यासाठी {1} की तारीख {2}. स्वतः एक चलन विनिमय रेकॉर्ड तयार करा,
 Unable to find score starting at {0}. You need to have standing scores covering 0 to 100,{0} पासून सुरू होणारा अंक शोधण्यात अक्षम. आपण 0 ते 100 च्या आसपासचे स्कोअर असणे आवश्यक आहे,
 Unable to find variable: ,व्हेरिएबल शोधण्यात अक्षम:,
@@ -2960,7 +2918,6 @@
 Upload your letter head and logo. (you can edit them later).,आपले पत्र डोके आणि लोगो अपलोड करा. (आपण नंतर संपादित करू शकता).,
 Upper Income,उच्च उत्पन्न,
 Use Sandbox,Sandbox वापर,
-Used Leaves,वापरले पाने,
 User,वापरकर्ता,
 User ID,वापरकर्ता आयडी,
 User ID not set for Employee {0},वापरकर्ता आयडी कर्मचारी  {0}साठी सेट नाही,
@@ -3051,7 +3008,6 @@
 Website Settings,वेबसाइट सेटिंग्ज,
 Wednesday,बुधवारी,
 Week,आठवडा,
-Weekdays,आठवड्यातील दिवस,
 Weekly,साप्ताहिक,
 "Weight is mentioned,\nPlease mention ""Weight UOM"" too","वजनाचा उल्लेख आहे \ n कृपया खूप ""वजन UOM"" उल्लेख करा",
 Welcome email sent,स्वागत ईमेल पाठविले,
@@ -3072,7 +3028,6 @@
 Work Order {0} must be submitted,वर्क ऑर्डर {0} सादर करणे आवश्यक आहे,
 Work Orders Created: {0},तयार केलेल्या कार्य ऑर्डर: {0},
 Work-in-Progress Warehouse is required before Submit,कार्य प्रगती मध्ये असलेले कोठार सबमिट करण्यापूर्वी आवश्यक आहे,
-Workflow,कार्यपद्धत,
 Working,कार्यरत आहे,
 Working Hours,कामाचे तास,
 Workstation,वर्कस्टेशन,
@@ -3102,7 +3057,6 @@
 You need to be a user other than Administrator with System Manager and Item Manager roles to register on Marketplace.,आपण मार्केटप्लेसवर नोंदणी करण्यासाठी सिस्टम मॅनेजर आणि आयटम व्यवस्थापक भूमिकांबरोबर प्रशासक यांच्या व्यतिरिक्त एक वापरकर्ता असणे आवश्यक आहे.,
 You need to be a user with System Manager and Item Manager roles to add users to Marketplace.,मार्केटप्लेस मध्ये वापरकर्ते जोडण्यासाठी आपण सिस्टम व्यवस्थापक आणि आयटॅमर व्यवस्थापक भूमिका असलेली एक वापरकर्ता असणे आवश्यक आहे.,
 You need to be a user with System Manager and Item Manager roles to register on Marketplace.,मार्केटप्लेसवर नोंदणी करण्यासाठी आपण सिस्टम मॅनेजर आणि आयटम व्यवस्थापक भूमिकेसह एक वापरकर्ता असणे आवश्यक आहे.,
-You need to be logged in to access this page,या पृष्ठावर प्रवेश करण्यासाठी लॉग इन करणे आवश्यक आहे,
 You need to enable Shopping Cart,आपण हे खरेदी सूचीत टाका सक्षम करणे आवश्यक आहे,
 You will lose records of previously generated invoices. Are you sure you want to restart this subscription?,आपण पूर्वी व्युत्पन्न केलेली इन्व्हॉइसेसचे रेकॉर्ड गमवाल. आपल्याला खात्री आहे की आपण ही सदस्यता रीस्टार्ट करू इच्छिता?,
 Your Organization,आपले संघटना,
@@ -3218,7 +3172,6 @@
 Assigned To,नियुक्त,
 Chat,गप्पा,
 Completed By,द्वारा पूर्ण,
-County,काउंटी,
 Day of Week,आठवड्याचे दिवस,
 "Dear System Manager,","प्रिय प्रणाली व्यवस्थापक,",
 Default Value,डीफॉल्ट मूल्य,
@@ -3229,31 +3182,21 @@
 Fieldtype,Fieldtype,
 Help Articles,मदत लेख,
 ID,आयडी,
-Images,प्रतिमा,
 Import,आयात,
 Language,भाषा,
 Likes,आवडी,
 Merge with existing,विद्यमान विलीन,
-Office,कार्यालय,
 Orientation,आवड,
 Parent,पालक,
-Passive,निष्क्रीय,
 Payment Failed,देयक अयशस्वी झाले,
-Permanent,स्थायी,
 Personal,वैयक्तिक,
-Plant,वनस्पती,
 Post,पोस्ट,
-Postal,पोस्टल,
 Postal Code,पिन कोड,
-Previous,मागील,
 Provider,प्रदाता,
 Read Only,केवळ वाचनीय,
 Recipient,प्राप्तकर्ता,
 Reviews,पुनरावलोकने,
 Sender,प्रेषक,
-Shop,दुकान,
-Subsidiary,उपकंपनी,
-There is some problem with the file url: {0},फाइल URL सह काही समस्या आहे: {0},
 There were errors while sending email. Please try again.,ई-मेल पाठविताना त्रुटी होत्या. कृपया पुन्हा प्रयत्न करा.,
 Values Changed,मूल्ये बदलली,
 or,किंवा,
@@ -3280,19 +3223,16 @@
 Quality Feedback Template,गुणवत्ता अभिप्राय टेम्पलेट,
 Rules for applying different promotional schemes.,वेगवेगळ्या जाहिरात योजना लागू करण्याचे नियम.,
 Show {0},दर्शवा {0},
-"Special Characters except '-', '#', '.', '/', '{{' and '}}' not allowed in naming series {0}","&quot;-&quot;, &quot;#&quot;, &quot;.&quot;, &quot;/&quot;, &quot;{{&quot; आणि &quot;}}&quot; वगळता विशिष्ट वर्णांना नामांकन मालिकेमध्ये परवानगी नाही {0}",
 Target Details,लक्ष्य तपशील,
 {0} already has a Parent Procedure {1}.,{0} कडे आधीपासूनच पालक प्रक्रिया आहे {1}.,
 API,API,
 Annual,वार्षिक,
 Change,बदला,
 Contact Email,संपर्क ईमेल,
-Export Type,निर्यात प्रकार,
 From Date,तारखेपासून,
 Group By,ग्रुप बाय,
 Invalid URL,अवैध URL,
 Landscape,लँडस्केप,
-Last Sync On,अंतिम सिंक चालू,
 Naming Series,नामांकन मालिका,
 No data to export,निर्यात करण्यासाठी कोणताही डेटा नाही,
 Portrait,पोर्ट्रेट,
@@ -3302,7 +3242,6 @@
 Show Document,कागदजत्र दर्शवा,
 Show Traceback,ट्रेसबॅक दर्शवा,
 Video,व्हिडिओ,
-Webhook Secret,वेबहूक सीक्रेट,
 % Of Grand Total,एकूण एकूण%,
 <b>Company</b> is a mandatory filter.,<b>कंपनी</b> अनिवार्य फिल्टर आहे.,
 <b>From Date</b> is a mandatory filter.,<b>तारीख पासून</b> एक अनिवार्य फिल्टर आहे.,
@@ -3358,7 +3297,6 @@
 BOM Comparison Tool,बीओएम तुलना साधन,
 BOM recursion: {0} cannot be child of {1},बीओएम रिकर्जन: {0 हे} 1 of चे मूल असू शकत नाही,
 BOM recursion: {0} cannot be parent or child of {1},बीओएम पुनरावृत्ती: {0 पालक किंवा or 1 child चे मूल असू शकत नाही,
-Back to Home,परत घराच्या दिशेने,
 Back to Messages,संदेशांकडे परत,
 Bank Data mapper doesn't exist,बँक डेटा मॅपर विद्यमान नाही,
 Bank Details,बँक तपशील,
@@ -3420,7 +3358,6 @@
 Currency,चलन,
 Current Status,सद्य स्थिती,
 Customer PO,ग्राहक पीओ,
-Customize,सानुकूल करा,
 Daily,दैनिक,
 Date,तारीख,
 Date of Birth cannot be greater than Joining Date.,जन्मतारीख सामील होण्याच्या तारखेपेक्षा मोठी असू शकत नाही.,
@@ -3454,7 +3391,6 @@
 ERPNext could not find any matching payment entry,ERPNext ला कोणतीही जुळणारी पेमेंट एंट्री सापडली नाही,
 Earliest Age,लवकर वय,
 Edit Details,तपशील संपादित करा,
-Edit Profile,प्रोफाईल संपादित करा,
 Either GST Transporter ID or Vehicle No is required if Mode of Transport is Road,एकतर जीएसटी ट्रान्सपोर्टर आयडी किंवा वाहन क्रमांक आवश्यक नसल्यास वाहतुकीचा मार्ग रस्ता असल्यास,
 Email,ई-मेल,
 Email Campaigns,ईमेल मोहिमा,
@@ -3482,7 +3418,6 @@
 Fetch Items from Warehouse,गोदामातून वस्तू आणा,
 Fetching...,आणत आहे ...,
 Field,फील्ड,
-File Manager,फाइल व्यवस्थापक,
 Filters,फिल्टर,
 Finding linked payments,दुवा साधलेली पेमेंट्स शोधत आहे,
 Fleet Management,वेगवान व्यवस्थापन,
@@ -3521,7 +3456,6 @@
 Incorrect Warehouse,चुकीचे कोठार,
 Invalid Barcode. There is no Item attached to this barcode.,अवैध बारकोड. या बारकोडला कोणताही आयटम जोडलेला नाही.,
 Invalid credentials,अवैध क्रेडेन्शियल्स,
-Invite as User,वापरकर्ता म्हणून आमंत्रित करा,
 Issue Priority.,प्राधान्य जारी करा.,
 Issue Type.,इश्यूचा प्रकार,
 "It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","असे दिसते की सर्व्हरच्या स्ट्रीप कॉन्फिगरेशनमध्ये एक समस्या आहे. अयशस्वी झाल्यास, रक्कम आपल्या खात्यात परत केली जाईल.",
@@ -3564,7 +3498,6 @@
 New Invoice,नवीन बीजक,
 New Payment,नवीन देय,
 New release date should be in the future,नवीन रीलिझ तारीख भविष्यात असावी,
-Newsletter,वृत्तपत्र,
 No Account matched these filters: {},या फिल्टरशी कोणतेही खाते जुळले नाही:}},
 No communication found.,संप्रेषण आढळले नाही.,
 No correct answer is set for {0},{0 for साठी कोणतेही योग्य उत्तर सेट केलेले नाही,
@@ -3640,7 +3573,6 @@
 Please setup a default bank account for company {0},कृपया कंपनी for 0} साठी डीफॉल्ट बँक खाते सेट अप करा.,
 Please specify,कृपया निर्दिष्ट करा,
 Please specify a {0},कृपया एक {0 specify निर्दिष्ट करा,lead
-Printing,मुद्रण,
 Priority,प्राधान्य,
 Priority has been changed to {0}.,अग्रक्रम {0} मध्ये बदलले गेले आहे.,
 Priority {0} has been repeated.,अग्रक्रम {0} पुनरावृत्ती झाली आहे.,
@@ -3649,7 +3581,6 @@
 Project,प्रकल्प,
 Provide the academic year and set the starting and ending date.,शैक्षणिक वर्ष प्रदान करा आणि प्रारंभ आणि समाप्ती तारीख सेट करा.,
 Public token is missing for this bank,या बँकेसाठी सार्वजनिक टोकन गहाळ आहे,
-Publish,प्रकाशित करा,
 Publish 1 Item,1 आयटम प्रकाशित करा,
 Publish Items,आयटम प्रकाशित करा,
 Publish More Items,अधिक आयटम प्रकाशित करा,
@@ -3677,7 +3608,6 @@
 Reconciled,समेट,
 Recruitment,भरती,
 Red,लाल,
-Refreshing,रीफ्रेश करत आहे,
 Release date must be in the future,रीलिझ तारीख भविष्यात असणे आवश्यक आहे,
 Relieving Date must be greater than or equal to Date of Joining,सामील होण्याची तारीख सामील होण्याच्या तारखेच्या किंवा त्याहून अधिक असणे आवश्यक आहे,
 Rename,पुनर्नामित करा,
@@ -3721,7 +3651,6 @@
 Search for a payment,देयकाचा शोध घ्या,
 Search for anything ...,कशासाठीही शोधा ...,
 Search results for,च्या शोधाचे निकाल,
-Select All,सर्व निवडा,
 Select Difference Account,फरक खाते निवडा,
 Select a Default Priority.,डीफॉल्ट अग्रक्रम निवडा.,
 Select a company,कंपनी निवडा,
@@ -3740,11 +3669,9 @@
 Service Level Agreement has been changed to {0}.,सेवा स्तर करार बदलून {0} करण्यात आला.,
 Service Level Agreement was reset.,सेवा स्तर करार रीसेट केला.,
 Service Level Agreement with Entity Type {0} and Entity {1} already exists.,अस्तित्वाचा प्रकार Service 0} आणि अस्तित्व {1 with सह सेवा स्तर करार आधीपासून विद्यमान आहे.,
-Set,सेट,
 Set Meta Tags,मेटा टॅग सेट करा,
 Set {0} in company {1},कंपनीमध्ये {0} सेट करा {1},
 Setup,सेटअप,
-Setup Wizard,सेटअप सहाय्यक,
 Shift Management,Shift Management,
 Show Future Payments,भविष्यातील देयके दर्शवा,
 Show Linked Delivery Notes,लिंक केलेल्या डिलिव्हरी नोट्स दर्शवा,
@@ -3815,7 +3742,6 @@
 Unreconciled,अप्रकट,
 Unsupported GST Category for E-Way Bill JSON generation,ई-वे बिल जेएसओएन निर्मितीसाठी असमर्थित जीएसटी श्रेणी,
 Update,अद्यतन,
-Update Details,तपशील अद्यतनित करा,
 Update Taxes for Items,आयटम करीता कर अद्यतनित करा,
 "Upload a bank statement, link or reconcile a bank account","बँक स्टेटमेंट अपलोड करा, बँक खात्यात दुवा साधा किंवा समेट करा",
 Upload a statement,विधान अपलोड करा,
@@ -3839,7 +3765,6 @@
 XML Files Processed,एक्सएमएल फायलींवर प्रक्रिया केली,
 Year,वर्ष,
 Yearly,वार्षिक,
-You,आपण,
 You are not allowed to enroll for this course,आपल्याला या कोर्ससाठी नावनोंदणी करण्याची परवानगी नाही,
 You are not enrolled in program {0},आपण प्रोग्राम in 0} मध्ये नोंदणी केलेली नाही,
 You can Feature upto 8 items.,आपण 8 आयटम पर्यंत वैशिष्ट्यीकृत करू शकता.,
@@ -3856,7 +3781,6 @@
 e-Way Bill already exists for this document,या दस्तऐवजासाठी ई-वे बिल आधीपासून विद्यमान आहे,
 woocommerce - {0},व्हाओकॉमर्स - {0},
 {0} Coupon used are {1}. Allowed quantity is exhausted,वापरलेले कूपन {1} आहेत. परवानगी दिलेली रक्कम संपली आहे,
-{0} Name,{0} नाव,
 {0} Operations: {1},{0} ऑपरेशन्स: {1},
 {0} bank transaction(s) created,} 0} बँक व्यवहार (चे) तयार केले,
 {0} bank transaction(s) created and {1} errors,} 0} बँक व्यवहार (चे) तयार केले आणि {1} त्रुटी,
@@ -3875,17 +3799,13 @@
 Total Income,एकूण उत्पन्न,
 Total Income This Year,यावर्षी एकूण उत्पन्न,
 Barcode,बारकोड,
-Bold,धीट,
-Center,केंद्र,
 Clear,साफ,
-Comment,टिप्पणी,
 Comments,टिप्पण्या,
 DocType,डॉकटाइप,
 Download,डाउनलोड करा,
 Left,डावीकडे,
 Link,दुवा,
 New,नवीन,
-Not Found,सापडले नाही,
 Print,प्रिंट,
 Reference Name,संदर्भ नाव,
 Refresh,रिफ्रेश,
@@ -3908,7 +3828,6 @@
 Email Id,ई-मेल आयडी,
 No,क्रमांक,
 Reference Doctype,संदर्भ DocType,
-User Id,वापरकर्ता आयडी,
 Yes,होय,
 Actual ,वास्तविक,
 Add to cart,सूचीत टाका,
@@ -4304,7 +4223,6 @@
 e.g Adjustments for:,उदा. यासाठी समायोजन:,
 Section Subtotal,विभाग उपकार्यक्रम,
 Section Footer,विभाग फूटर,
-Position,स्थान,
 Cash Flow Mapping,रोख प्रवाह मॅपिंग,
 Select Maximum Of 1,कमाल 1 निवडा,
 Is Finance Cost,वित्त खर्च आहे,
@@ -4936,7 +4854,6 @@
 Previous Business Day,मागील व्यवसाय दिन,
 Next Business Day,पुढील व्यवसाय दिवस,
 Urgent,त्वरित,
-Crop,क्रॉप करा,
 Crop Name,क्रॉप नाव,
 Scientific Name,शास्त्रीय नाव,
 "You can define all the tasks which need to carried out for this crop here. The day field is used to mention the day on which the task needs to be carried out, 1 being the 1st day, etc.. ","आपण येथे या पिकासाठी आवश्यक असलेल्या सर्व कार्यांची व्याख्या करू शकता. ज्या दिवशी कार्य करणे आवश्यक आहे, 1 दिवसाचा पहिला दिवस इत्यादी उल्लेख करण्यासाठी दिवस फील्ड वापरला जातो.",
@@ -5441,7 +5358,6 @@
 To TIme,वेळ,
 Course End Date,अर्थात अंतिम तारीख,
 Course Topic,कोर्स विषय,
-Topic,विषय,
 Topic Name,विषय नाव,
 Education Settings,शैक्षणिक सेटिंग्ज,
 Current Academic Year,चालू शैक्षणिक वर्ष,
@@ -5516,7 +5432,6 @@
 Check this if the Student is residing at the Institute's Hostel.,विद्यार्थी संस्थेचे वसतिगृह येथे राहत आहे तर हे तपासा.,
 Walking,चालणे,
 Institute's Bus,संस्था बस,
-Public Transport,सार्वजनिक वाहतूक,
 Self-Driving Vehicle,-ड्राव्हिंग वाहन,
 Pick/Drop by Guardian,/ पालक ड्रॉप निवडा,
 Enrolled courses,नोंदणी केलेले अभ्यासक्रम,
@@ -5697,7 +5612,6 @@
 Default Cost Center,मुलभूत खर्च केंद्र,
 Undeposited Funds Account,Undeposited निधी खाते,
 Shopify Log,Shopify लॉग,
-Request Data,विनंती डेटा,
 Shopify Settings,Shopify सेटिंग्ज,
 status html,स्थिती html,
 Enable Shopify,हे दुकान सक्षम करा,
@@ -5817,7 +5731,6 @@
 Exercise Instructions,व्यायामाच्या सूचना,
 Exercise Video,व्हिडिओचा व्यायाम करा,
 Exercise Steps,व्यायामाच्या चरण,
-Steps,पायर्‍या,
 Steps Table,पायर्‍या सारणी,
 Exercise Type Step,व्यायामाचा प्रकार,
 Max number of visit,भेटीची कमाल संख्या,
@@ -6001,7 +5914,6 @@
 Patient Encounter Symptom,पेशंट एन्कोन्टर लक्षण,
 HLC-PMR-.YYYY.-,एचएलसी-पीएमआर-.YYYY.-,
 Attach Medical Record,वैद्यकीय नोंदी जोडा,
-Reference DocType,संदर्भ डॉकटाइप,
 Spouse,पती किंवा पत्नी,
 Family,कुटुंब,
 Schedule Details,वेळापत्रक तपशील,
@@ -6983,16 +6895,8 @@
 HTML / Banner that will show on the top of product list.,HTML / बॅनर जे  उत्पादन सूचीच्या वर दर्शवले जाईल,
 Set prefix for numbering series on your transactions,तुमचा व्यवहार वर मालिका संख्या सेट पूर्वपद,
 Setup Series,सेटअप मालिका,
-Select Transaction,निवडक व्यवहार,
-Help HTML,मदत HTML,
-Series List for this Transaction,या व्यवहारासाठी मालिका यादी,
-User must always select,सदस्य नेहमी निवडणे आवश्यक आहे,
-Check this if you want to force the user to select a series before saving. There will be no default if you check this.,"आपण जतन करण्यापूर्वी मालिका निवडा वापरकर्ता सक्ती करायचे असल्यास हे  तपासा. आपण या चेक केले, तर मुलभूत नसेल.",
 Update Series,अद्यतन मालिका,
 Change the starting / current sequence number of an existing series.,विद्यमान मालिकेत सुरू / वर्तमान क्रम संख्या बदला.,
-Prefix,पूर्वपद,
-This is the number of the last created transaction with this prefix,हा क्रमांक या प्रत्ययसह  गेल्या निर्माण केलेला  व्यवहार  आहे,
-Update Series Number,अद्यतन मालिका क्रमांक,
 Quotation Lost Reason,कोटेशन हरवले कारण,
 A third party distributor / dealer / commission agent / affiliate / reseller who sells the companies products for a commission.,तृतीय पक्ष वितरक / विक्रेता / दलाल / संलग्न / विक्रेते म्हणजे जो कमिशनसाठी कंपन्यांचे उत्पादन विकतो,
 Sales Partner Name,विक्री भागीदार नाव,
@@ -7687,7 +7591,6 @@
 Warehouse wise Item Balance Age and Value,वेअरहाउसनुसार आयटम बॅलन्स एज आणि व्हॅल्यू,
 Work Order Stock Report,कार्य ऑर्डर स्टॉक अहवाल,
 Work Orders in Progress,प्रगती मधील कार्य ऑर्डर,
-Validation Error,प्रमाणीकरण त्रुटी,
 Automatically Process Deferred Accounting Entry,डिफर्ड अकाउंटिंग एन्ट्रीची स्वयंचलितपणे प्रक्रिया करा,
 Bank Clearance,बँक क्लियरन्स,
 Bank Clearance Detail,बँक क्लियरन्स तपशील,
@@ -7724,45 +7627,7 @@
 Therapy Plan: ,थेरपी योजना:,
 Total Counts Targeted: ,लक्ष्यित एकूण मोजणीः,
 Total Counts Completed: ,पूर्ण झालेल्या मोजणी:,
-Andaman and Nicobar Islands,अंदमान निकोबार बेटे,
-Andhra Pradesh,आंध्र प्रदेश,
-Arunachal Pradesh,अरुणाचल प्रदेश,
-Assam,आसाम,
-Bihar,बिहार,
-Chandigarh,चंदीगड,
-Chhattisgarh,छत्तीसगड,
-Dadra and Nagar Haveli,दादरा आणि नगर हवेली,
-Daman and Diu,दमण आणि दीव,
-Delhi,दिल्ली,
-Goa,गोवा,
-Gujarat,गुजरात,
-Haryana,हरियाणा,
-Himachal Pradesh,हिमाचल प्रदेश,
-Jammu and Kashmir,जम्मू-काश्मीर,
-Jharkhand,झारखंड,
-Karnataka,कर्नाटक,
-Kerala,केरळा,
-Lakshadweep Islands,लक्षद्वीप बेटे,
-Madhya Pradesh,मध्य प्रदेश,
-Maharashtra,महाराष्ट्र,
-Manipur,मणिपूर,
-Meghalaya,मेघालय,
-Mizoram,मिझोरम,
-Nagaland,नागालँड,
-Odisha,ओडिशा,
-Other Territory,इतर प्रदेश,
-Pondicherry,पांडिचेरी,
-Punjab,पंजाब,
-Rajasthan,राजस्थान,
-Sikkim,सिक्किम,
-Tamil Nadu,तामिळनाडू,
-Telangana,तेलंगणा,
-Tripura,त्रिपुरा,
-Uttar Pradesh,उत्तर प्रदेश,
-Uttarakhand,उत्तराखंड,
-West Bengal,पश्चिम बंगाल,
 Is Mandatory,अनिवार्य आहे,
-Published on,रोजी प्रकाशित,
 Service Received But Not Billed,सेवा मिळाली परंतु बिल दिले नाही,
 Deferred Accounting Settings,स्थगित लेखा सेटिंग्ज,
 Book Deferred Entries Based On,बुक डिफर्ड नोंदी आधारित,
@@ -8035,8 +7900,6 @@
 Worksheet Instructions,वर्कशीट सूचना,
 Result Legend Print,लीजेंड प्रिंट निकाल,
 Print Position,मुद्रण स्थिती,
-Bottom,तळ,
-Top,शीर्ष,
 Both,दोघेही,
 Result Legend,परिणाम दंतकथा,
 Lab Tests,लॅब टेस्ट,
@@ -8081,12 +7944,10 @@
 Approvers,वाद,
 The first Approver in the list will be set as the default Approver.,सूचीतील प्रथम मंजूर डीफॉल्ट मंजूर म्हणून सेट केला जाईल.,
 Shift Request Approver,शिफ्ट विनंती मंजूर,
-PAN Number,पॅन क्रमांक,
 Provident Fund Account,भविष्य निर्वाह निधी,
 MICR Code,एमआयसीआर कोड,
 Repay unclaimed amount from salary,वेतनातून दावा न केलेली रक्कम परत द्या,
 Deduction from salary,वेतनातून वजावट,
-Expired Leaves,कालबाह्य झालेले पाने,
 If this is not checked the loan by default will be considered as a Demand Loan,हे तपासले नाही तर डीफॉल्टनुसार कर्ज डिमांड लोन मानले जाईल,
 This account is used for booking loan repayments from the borrower and also disbursing loans to the borrower,हे खाते कर्जदाराकडून कर्ज परतफेड बुक करण्यासाठी आणि कर्जदाराला कर्ज वितरणासाठी वापरले जाते.,
 This account is capital account which is used to allocate capital for loan disbursal account ,हे खाते भांडवल खाते आहे जे कर्ज वितरण खात्यासाठी भांडवल वाटप करण्यासाठी वापरले जाते,
@@ -8844,3 +8705,41 @@
 Creating Purchase Order ...,खरेदी ऑर्डर तयार करत आहे ...,
 "Select a Supplier from the Default Suppliers of the items below. On selection, a Purchase Order will be made against items belonging to the selected Supplier only.","खालील बाबींच्या डीफॉल्ट पुरवठादाराकडील पुरवठादार निवडा. निवडीवर, केवळ निवडलेल्या पुरवठादाराच्या वस्तूंच्या विरुद्ध खरेदी ऑर्डर देण्यात येईल.",
 Row #{}: You must select {} serial numbers for item {}.,पंक्ती # {}: आपण आयटम for for साठी} numbers अनुक्रमांक निवडणे आवश्यक आहे.,
+Add Comment,टिप्पणी जोडा,
+More...,अधिक ...,
+Notes,नोट्स,
+Payment Gateway,पेमेंट गेटवे,
+Payment Gateway Name,पेमेंट गेटवे नाव,
+Payments,देयके,
+Plan Name,योजनेचे नांव,
+Portal,पोर्टल,
+Scan Barcode,बारकोड स्कॅन करा,
+Some information is missing,काही माहिती गहाळ आहे,
+Successful,यशस्वी,
+Tools,साधने,
+Use Sandbox,Sandbox वापर,
+Busy,व्यस्त,
+Completed By,द्वारा पूर्ण,
+Payment Failed,देयक अयशस्वी झाले,
+Column {0},स्तंभ {0},
+Field Mapping,फील्ड मॅपिंग,
+Not Specified,निर्दिष्ट नाही,
+Update Type,अद्यतन प्रकार,
+Dr,डॉ,
+End Time,समाप्त वेळ,
+Fetching...,आणत आहे ...,
+"It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","असे दिसते की सर्व्हरच्या स्ट्रीप कॉन्फिगरेशनमध्ये एक समस्या आहे. अयशस्वी झाल्यास, रक्कम आपल्या खात्यात परत केली जाईल.",
+Looks like someone sent you to an incomplete URL. Please ask them to look into it.,कोणीतरी एक अपूर्ण URL करण्यासाठी मी तुम्हांस पाठविले असे दिसते. त्यात लक्ष करण्यास सांगा.,
+Master,मास्टर,
+Pay,द्या,
+You can also copy-paste this link in your browser,आपण आपल्या ब्राउझरमध्ये ही  दुवा कॉपी-पेस्ट करू शकता,
+Verified By,द्वारा सत्यापित केली,
+Invalid naming series (. missing) for {0},{0 for साठी अवैध नामांकन मालिका (. गहाळ),
+Phone Number,फोन नंबर,
+Account SID,खाते एसआयडी,
+Global Defaults,ग्लोबल डीफॉल्ट,
+Is Mandatory,अनिवार्य आहे,
+WhatsApp,व्हॉट्सअ‍ॅप,
+Make a call,कॉल करा,
+Approve,मंजूर,
+Reject,नकार,
diff --git a/erpnext/translations/ms.csv b/erpnext/translations/ms.csv
index 8e1ac51..2258a18 100644
--- a/erpnext/translations/ms.csv
+++ b/erpnext/translations/ms.csv
@@ -113,7 +113,6 @@
 Add Items,Tambah Item,
 Add Leads,Tambah Memimpin,
 Add Multiple Tasks,Tambah Tugasan Pelbagai,
-Add Row,Tambah Row,
 Add Sales Partners,Tambah Rakan Kongsi Jualan,
 Add Serial No,Tambah No Serial,
 Add Students,Tambahkan Pelajar,
@@ -211,9 +210,7 @@
 An error occurred during the update process,Ralat berlaku semasa proses kemas kini,
 "An item exists with same name ({0}), please change the item group name or rename the item","Item wujud dengan nama yang sama ({0}), sila tukar nama kumpulan item atau menamakan semula item",
 Analyst,Penganalisis,
-Analytics,Analytics,
 Annual Billing: {0},Billing Tahunan: {0},
-Anonymous,Anonymous,
 Another Budget record '{0}' already exists against {1} '{2}' and account '{3}' for fiscal year {4},Rekod Belanjawan lain &#39;{0}&#39; sudah wujud terhadap {1} &#39;{2}&#39; dan akaun &#39;{3}&#39; untuk tahun fiskal {4},
 Another Period Closing Entry {0} has been made after {1},Satu lagi Entry Tempoh Penutup {0} telah dibuat selepas {1},
 Another Sales Person {0} exists with the same Employee id,Satu lagi Orang Jualan {0} wujud dengan id Pekerja yang sama,
@@ -283,14 +280,12 @@
 Attendance not submitted for {0} as {1} on leave.,Kehadiran tidak diserahkan untuk {0} sebagai {1} semasa cuti.,
 Attribute table is mandatory,Jadual atribut adalah wajib,
 Attribute {0} selected multiple times in Attributes Table,Sifat {0} dipilih beberapa kali dalam Atribut Jadual,
-Author,Pengarang,
 Authorized Signatory,Penandatangan yang diberi kuasa,
 Auto Material Requests Generated,Permintaan bahan Auto Generated,
 Auto Repeat,Auto Ulang,
 Auto repeat document updated,Dokumen pengulang automatik dikemas kini,
 Automotive,Automotif,
 Available,Tersedia,
-Available Leaves,Daun yang disediakan,
 Available Qty,Terdapat Qty,
 Available Selling,Jualan Sedia Ada,
 Available for use date is required,Tersedia untuk tarikh penggunaan,
@@ -340,7 +335,6 @@
 Base URL,URL Asas,
 Based On,Berdasarkan,
 Based On Payment Terms,Berdasarkan Terma Pembayaran,
-Basic,Asas,
 Batch,Batch,
 Batch Entries,Penyertaan Batch,
 Batch ID is mandatory,Batch ID adalah wajib,
@@ -361,7 +355,6 @@
 Billable Hours,Waktu yang boleh ditanggung,
 Billed,Dibilkan,
 Billed Amount,Jumlah dibilkan,
-Billing,Bil,
 Billing Address,Alamat Bil,
 Billing Address is same as Shipping Address,Alamat Penagihan sama dengan Alamat Perkapalan,
 Billing Amount,Bil Jumlah,
@@ -560,7 +553,6 @@
 Consumed Qty,Digunakan Qty,
 Consumer Products,Produk pengguna,
 Contact,Hubungi,
-Contact Details,Butiran Hubungi,
 Contact Us,Hubungi Kami,
 Content,Kandungan,
 Content Masters,Kandungan Sarjana,
@@ -715,7 +707,6 @@
 Date of Joining,Tarikh Menyertai,
 Date of Joining must be greater than Date of Birth,Tarikh Menyertai mesti lebih besar daripada Tarikh Lahir,
 Date of Transaction,Tarikh Transaksi,
-Datetime,Datetime,
 Day,hari,
 Debit,Debit,
 Debit ({0}),Debit ({0}),
@@ -874,7 +865,6 @@
 Employee cannot report to himself.,Pekerja tidak boleh melaporkan kepada dirinya sendiri.,
 Employee {0} has already applied for {1} between {2} and {3} : ,Pekerja {0} telah memohon untuk {1} antara {2} dan {3}:,
 Employee {0} of grade {1} have no default leave policy,Pekerja {0} gred {1} tidak mempunyai dasar cuti lalai,
-Enable,membolehkan,
 Enable / disable currencies.,Membolehkan / melumpuhkan mata wang.,
 Enabled,Membolehkan,
 "Enabling 'Use for Shopping Cart', as Shopping Cart is enabled and there should be at least one Tax Rule for Shopping Cart","Mendayakan &#39;Gunakan untuk Shopping Cart&#39;, kerana Troli didayakan dan perlu ada sekurang-kurangnya satu Peraturan cukai bagi Troli Membeli-belah",
@@ -905,7 +895,6 @@
 Error: Not a valid id?,Ralat: Bukan id sah?,
 Estimated Cost,Anggaran kos,
 "Even if there are multiple Pricing Rules with highest priority, then following internal priorities are applied:","Walaupun terdapat beberapa Peraturan Harga dengan keutamaan tertinggi, keutamaan dalaman maka berikut digunakan:",
-Event,Peristiwa,
 Exchange Gain/Loss,Exchange Keuntungan / Kerugian,
 Exchange Rate Revaluation master.,Tuan penilaian semula nilai tukar.,
 Exchange Rate must be same as {0} {1} ({2}),Kadar pertukaran mestilah sama dengan {0} {1} ({2}),
@@ -1032,7 +1021,6 @@
 From value must be less than to value in row {0},Dari nilai boleh kurang daripada nilai berturut-turut {0},
 From {0} | {1} {2},Dari {0} | {1} {2},
 Fulfillment,Fulfillment,
-Full,Penuh,
 Full Name,Nama Penuh,
 Fully Depreciated,disusutnilai sepenuhnya,
 Furnitures and Fixtures,Perabot dan Fixtures,
@@ -1133,7 +1121,6 @@
 Hub Sync ID,ID Sync Hub,
 Human Resource,Sumber Manusia,
 Human Resources,Sumber Manusia,
-IFSC Code,Kod IFSC,
 IGST Amount,Jumlah IGST,
 IP Address,Alamat IP,
 ITC Available (whether in full op part),ITC Tersedia (sama ada dalam bahagian penuh),
@@ -1185,7 +1172,6 @@
 Ineligible ITC,ITC tidak layak,
 Initiated,Dimulakan,
 Inpatient Record,Rekod Pesakit Dalam,
-Insert,Insert,
 Installation Note,Pemasangan Nota,
 Installation Note {0} has already been submitted,Pemasangan Nota {0} telah diserahkan,
 Installation date cannot be before delivery date for Item {0},Tarikh pemasangan tidak boleh sebelum tarikh penghantaran untuk Perkara {0},
@@ -1197,7 +1183,6 @@
 Insurance Start date should be less than Insurance End date,Insurance Mula Tarikh harus kurang daripada tarikh Insurance End,
 Integrated Tax,Cukai Bersepadu,
 Inter-State Supplies,Bekalan Antara Negeri,
-Interests,minat,
 Internet Publishing,Penerbitan Internet,
 Intra-State Supplies,Bekalan Intra-Negeri,
 Introduction,Pengenalan,
@@ -1316,7 +1301,6 @@
 Lab testing datetime cannot be before collection datetime,Masa ujian makmal tidak boleh sebelum tarikh pengumpulan,
 Label,Label,
 Laboratory,Makmal,
-Language Name,Nama bahasa,
 Large,Besar,
 Last Communication,Komunikasi lalu,
 Last Communication Date,Tarikh Komunikasi lalu,
@@ -1347,8 +1331,6 @@
 Letter Heads for print templates.,Ketua surat untuk template cetak.,
 Level,Tahap,
 Liability,Liabiliti,
-License,Lesen,
-Limit,Had,
 Limit Crossed,had Crossed,
 Link to Material Request,Pautan ke Permintaan Bahan,
 List of all share transactions,Senarai semua urusniaga saham,
@@ -1359,7 +1341,6 @@
 Loans (Liabilities),Pinjaman (Liabiliti),
 Loans and Advances (Assets),Pinjaman dan Pendahuluan (Aset),
 Local,Tempatan,
-Log,Log,
 Logs for maintaining sms delivery status,Log bagi mengekalkan status penghantaran sms,
 Lost,Hilang,
 Lost Reasons,Alasan Hilang,
@@ -1445,7 +1426,6 @@
 Medical Department,Jabatan Perubatan,
 Medical Record,Rekod kesihatan,
 Medium,Sederhana,
-Meeting,Mesyuarat,
 Member Activity,Aktiviti Ahli,
 Member ID,ID ahli,
 Member Name,Nama ahli,
@@ -1495,7 +1475,6 @@
 Multiple Variants,Pelbagai variasi,
 Multiple fiscal years exist for the date {0}. Please set company in Fiscal Year,tahun fiskal Pelbagai wujud untuk tarikh {0}. Sila menetapkan syarikat dalam Tahun Anggaran,
 Music,Muzik,
-My Account,Akaun Saya,
 Name error: {0},Ralat nama: {0},
 Name of new Account. Note: Please don't create accounts for Customers and Suppliers,Nama Akaun baru. Nota: Sila jangan membuat akaun untuk Pelanggan dan Pembekal,
 Name or Email is mandatory,Nama atau E-mel adalah wajib,
@@ -1538,7 +1517,6 @@
 New credit limit is less than current outstanding amount for the customer. Credit limit has to be atleast {0},had kredit baru adalah kurang daripada amaun tertunggak semasa untuk pelanggan. had kredit perlu atleast {0},
 New task,Tugasan baru,
 New {0} pricing rules are created,Peraturan {0} baru dibuat,
-Newsletters,Surat Berita,
 Newspaper Publishers,Akhbar Penerbit,
 Next,Seterusnya,
 Next Contact By cannot be same as the Lead Email Address,Seterusnya Hubungi Dengan tidak boleh menjadi sama seperti Alamat E-mel Lead,
@@ -1686,7 +1664,6 @@
 Other,Lain-lain,
 Other Reports,Laporan Lain,
 "Other outward supplies(Nil rated,Exempted)","Bekalan luaran lain (Tiada nilai, Dikecualikan)",
-Others,Lain,
 Out Qty,Keluar Qty,
 Out Value,Nilai Keluar,
 Out of Order,Telah habis,
@@ -1726,7 +1703,6 @@
 Party Type and Party is mandatory for {0} account,Jenis Parti dan Pihak wajib untuk {0} akaun,
 Party Type is mandatory,Jenis Parti adalah wajib,
 Party is mandatory,Parti adalah wajib,
-Password,Kata laluan,
 Past Due Date,Tarikh Tamat Tempoh,
 Patient,Pesakit,
 Patient Appointment,Pelantikan Pesakit,
@@ -1784,7 +1760,6 @@
 Pharmaceutical,Farmasi,
 Pharmaceuticals,Pharmaceuticals,
 Physician,Pakar Perubatan,
-Pincode,Pincode,
 Place Of Supply (State/UT),Place Of Supply (Negeri / UT),
 Place Order,Meletakkan pesanan,
 Plan Name,Nama Rancang,
@@ -1896,7 +1871,6 @@
 Please select date,Sila pilih tarikh,
 Please select item code,Sila pilih kod item,
 Please select month and year,Sila pilih bulan dan tahun,
-Please select prefix first,Sila pilih awalan pertama,
 Please select the Company,Sila pilih Syarikat,
 Please select the Multiple Tier Program type for more than one collection rules.,Sila pilih jenis Program Pelbagai Tier untuk lebih daripada satu peraturan pengumpulan.,
 Please select the assessment group other than 'All Assessment Groups',Sila pilih kumpulan penilaian selain daripada &#39;Semua Kumpulan Penilaian&#39;,
@@ -1913,7 +1887,6 @@
 Please set Company filter blank if Group By is 'Company',Sila tetapkan Syarikat menapis kosong jika Group By adalah &#39;Syarikat&#39;,
 Please set Default Payroll Payable Account in Company {0},Sila menetapkan Payroll Akaun Belum Bayar Lalai dalam Syarikat {0},
 Please set Depreciation related Accounts in Asset Category {0} or Company {1},Sila menetapkan Akaun berkaitan Susutnilai dalam Kategori Asset {0} atau Syarikat {1},
-Please set Email Address,Sila menetapkan Alamat E-mel,
 Please set GST Accounts in GST Settings,Sila tetapkan Akaun GST dalam Tetapan CBP,
 Please set Hotel Room Rate on {},Sila tetapkan Kadar Bilik Hotel pada {},
 Please set Number of Depreciations Booked,Sila menetapkan Bilangan penurunan nilai Ditempah,
@@ -1936,7 +1909,6 @@
 Please set the Email ID for the Student to send the Payment Request,Sila tetapkan ID E-mel untuk Pelajar untuk menghantar Permintaan Pembayaran,
 Please set the Item Code first,Sila nyatakan Kod Item terlebih dahulu,
 Please set the Payment Schedule,Sila tetapkan Jadual Pembayaran,
-Please set the series to be used.,Sila tetapkan siri ini untuk digunakan.,
 Please set {0} for address {1},Sila tetapkan {0} untuk alamat {1},
 Please setup Students under Student Groups,Sila persediaan Pelajar di bawah Kumpulan Pelajar,
 Please specify Company,Sila nyatakan Syarikat,
@@ -1953,7 +1925,6 @@
 Point-of-Sale,Tempat jualan,
 Point-of-Sale Profile,Point-of-Sale Profil,
 Portal,Portal,
-Portal Settings,Tetapan Portal,
 Possible Supplier,Pembekal mungkin,
 Postal Expenses,Perbelanjaan Pos,
 Posting Date,Penempatan Tarikh,
@@ -2152,12 +2123,10 @@
 Reference No is mandatory if you entered Reference Date,Rujukan adalah wajib jika anda masukkan Tarikh Rujukan,
 Reference No.,No rujukan.,
 Reference Number,Nombor rujukan,
-Reference Owner,rujukan Owner,
 Reference Type,Jenis Rujukan,
 "Reference: {0}, Item Code: {1} and Customer: {2}","Rujukan: {0}, Kod Item: {1} dan Pelanggan: {2}",
 References,Rujukan,
 Refresh Token,Refresh Token,
-Region,Wilayah,
 Register,Daftar,
 Rejected,Ditolak,
 Related,Berkaitan,
@@ -2179,7 +2148,6 @@
 Replace BOM and update latest price in all BOMs,Gantikan BOM dan kemaskini harga terbaru dalam semua BOM,
 Replied,Menjawab,
 Report,Laporan,
-Report Builder,Laporan Builder,
 Report Type,Jenis Laporan,
 Report Type is mandatory,Jenis Laporan adalah wajib,
 Reports,laporan,
@@ -2355,13 +2323,11 @@
 Same Company is entered more than once,Syarikat yang sama memasuki lebih daripada sekali,
 Same item cannot be entered multiple times.,Item yang sama tidak boleh dimasukkan beberapa kali.,
 Same supplier has been entered multiple times,pembekal yang sama telah dibuat beberapa kali,
-Sample,Contoh,
 Sample Collection,Pengumpulan Sampel,
 Sample quantity {0} cannot be more than received quantity {1},Kuantiti sampel {0} tidak boleh melebihi kuantiti yang diterima {1},
 Sanctioned,Diiktiraf,
 Sand,Pasir,
 Saturday,Sabtu,
-Saved,Disimpan,
 Saving {0},Menyimpan {0},
 Scan Barcode,Kod Bar Imbas,
 Schedule,Jadual,
@@ -2463,7 +2429,6 @@
 Series Updated,Siri Dikemaskini,
 Series Updated Successfully,Siri Dikemaskini Berjaya,
 Series is mandatory,Siri adalah wajib,
-Series {0} already used in {1},Siri {0} telah digunakan dalam {1},
 Service,Perkhidmatan,
 Service Level Agreement,Perjanjian tahap perkhidmatan,
 Service Level Agreement.,Perjanjian tahap perkhidmatan.,
@@ -2479,7 +2444,6 @@
 Set Tax Rule for shopping cart,Menetapkan Peraturan Cukai untuk troli membeli-belah,
 Set as Closed,Ditetapkan sebagai Ditutup,
 Set as Completed,Tetapkan sebagai Selesai,
-Set as Default,Tetapkan sebagai lalai,
 Set as Lost,Ditetapkan sebagai Hilang,
 Set as Open,Ditetapkan sebagai Open,
 Set default inventory account for perpetual inventory,Menetapkan akaun inventori lalai untuk inventori yang berterusan,
@@ -2511,7 +2475,6 @@
 Shareholder,Pemegang Saham,
 Ship To State,Kapal ke Negeri,
 Shipments,Penghantaran,
-Shipping,penghantaran,
 Shipping Address,Alamat Penghantaran,
 "Shipping Address does not have country, which is required for this Shipping Rule","Alamat Pengiriman tidak mempunyai negara, yang diperlukan untuk Peraturan Pengiriman ini",
 Shipping rule only applicable for Buying,Peraturan penghantaran hanya terpakai untuk Membeli,
@@ -2564,7 +2527,6 @@
 Split Batch,Split Batch,
 Split Issue,Isu Split,
 Sports,Sukan,
-Standard,Standard,
 Standard Buying,Membeli Standard,
 Standard Selling,Jualan Standard,
 Standard contract terms for Sales or Purchase.,Terma kontrak standard untuk Jualan atau Beli.,
@@ -2731,7 +2693,6 @@
 Terms and Conditions,Terma dan syarat,
 Terms and Conditions Template,Terma dan Syarat Template,
 Territory,Wilayah,
-Test,Ujian,
 Thank you for your business!,Terima kasih atas urusan awak!,
 The 'From Package No.' field must neither be empty nor it's value less than 1.,&#39;Dari Pakej Tidak.&#39; medan mestilah tidak kosong dan nilai itu kurang daripada 1.,
 The Brand,Jenama,
@@ -2848,7 +2809,6 @@
 Total (Without Tax),Jumlah (Tanpa Cukai),
 Total Achieved,Jumlah Pencapaian,
 Total Actual,Jumlah Sebenar,
-Total Allocated Leaves,Jumlah Dikelilingi Daun,
 Total Amount,Jumlah,
 Total Amount Credited,Jumlah Jumlah Dikreditkan,
 Total Applicable Charges in Purchase Receipt Items table must be same as Total Taxes and Charges,Jumlah Caj Terpakai di Purchase meja Resit Item mesti sama dengan Jumlah Cukai dan Caj,
@@ -2892,7 +2852,6 @@
 Total(Amt),Jumlah (Amt),
 Total(Qty),Jumlah (Kuantiti),
 Traceability,kebolehkesanan,
-Traceback,Traceback,
 Track Leads by Lead Source.,Trek Memimpin oleh Sumber Utama.,
 Transaction,Transaksi,
 Transaction Date,Transaksi Tarikh,
@@ -2930,7 +2889,6 @@
 UOM Conversion factor is required in row {0},Faktor UOM Penukaran diperlukan berturut-turut {0},
 UOM coversion factor required for UOM: {0} in Item: {1},Faktor coversion UOM diperlukan untuk UOM: {0} dalam Perkara: {1},
 URL,URL,
-Unable to find DocType {0},Tidak dapat mencari DocType {0},
 Unable to find exchange rate for {0} to {1} for key date {2}. Please create a Currency Exchange record manually,Tidak dapat mencari kadar pertukaran untuk {0} kepada {1} untuk tarikh kunci {2}. Sila buat rekod Penukaran Mata Wang secara manual,
 Unable to find score starting at {0}. You need to have standing scores covering 0 to 100,Tidak dapat mencari skor bermula pada {0}. Anda perlu mempunyai skor tetap yang meliputi 0 hingga 100,
 Unable to find variable: ,Tidak dapat mencari variabel:,
@@ -2960,7 +2918,6 @@
 Upload your letter head and logo. (you can edit them later).,Memuat naik kepala surat dan logo. (Anda boleh mengeditnya kemudian).,
 Upper Income,Pendapatan Atas,
 Use Sandbox,Penggunaan Sandbox,
-Used Leaves,Daun yang digunakan,
 User,Pengguna,
 User ID,ID Pengguna,
 User ID not set for Employee {0},ID Pengguna tidak ditetapkan untuk Pekerja {0},
@@ -3051,7 +3008,6 @@
 Website Settings,Tetapan laman web,
 Wednesday,Rabu,
 Week,minggu,
-Weekdays,Harijadi,
 Weekly,Mingguan,
 "Weight is mentioned,\nPlease mention ""Weight UOM"" too","Berat disebutkan, \ nSila menyebut &quot;Berat UOM&quot; terlalu",
 Welcome email sent,Selamat datang menghantar e-mel,
@@ -3072,7 +3028,6 @@
 Work Order {0} must be submitted,Perintah Kerja {0} mesti dihantar,
 Work Orders Created: {0},Perintah Kerja Dibuat: {0},
 Work-in-Progress Warehouse is required before Submit,Kerja dalam Kemajuan Gudang diperlukan sebelum Hantar,
-Workflow,Aliran kerja,
 Working,Kerja,
 Working Hours,Waktu Bekerja,
 Workstation,Stesen kerja,
@@ -3102,7 +3057,6 @@
 You need to be a user other than Administrator with System Manager and Item Manager roles to register on Marketplace.,Anda perlu menjadi pengguna selain Pentadbir dengan Pengurus Sistem dan peranan Pengurus Item untuk mendaftar di Marketplace.,
 You need to be a user with System Manager and Item Manager roles to add users to Marketplace.,Anda perlu menjadi pengguna dengan Pengurus Sistem dan peranan Pengurus Item untuk menambah pengguna ke Marketplace.,
 You need to be a user with System Manager and Item Manager roles to register on Marketplace.,Anda perlu menjadi pengguna dengan Pengurus Sistem dan peranan Pengurus Item untuk mendaftar di Marketplace.,
-You need to be logged in to access this page,Anda perlu log masuk untuk mengakses halaman ini,
 You need to enable Shopping Cart,Anda perlu untuk membolehkan Troli,
 You will lose records of previously generated invoices. Are you sure you want to restart this subscription?,Anda akan kehilangan rekod invois yang dijana sebelum ini. Adakah anda pasti mahu memulakan semula langganan ini?,
 Your Organization,Organisasi anda,
@@ -3218,7 +3172,6 @@
 Assigned To,Ditugaskan Untuk,
 Chat,Chat,
 Completed By,Selesai oleh,
-County,Daerah,
 Day of Week,Hari Minggu,
 "Dear System Manager,","Pengurus Sistem yang dihormati,",
 Default Value,Nilai lalai,
@@ -3229,31 +3182,21 @@
 Fieldtype,Fieldtype,
 Help Articles,bantuan Artikel,
 ID,ID,
-Images,Images,
 Import,Import,
 Language,Bahasa,
 Likes,Suka,
 Merge with existing,Bergabung dengan yang sedia ada,
-Office,Pejabat,
 Orientation,orientasi,
 Parent,Ibu Bapa,
-Passive,Pasif,
 Payment Failed,pembayaran Gagal,
-Permanent,tetap,
 Personal,Peribadi,
-Plant,Loji,
 Post,Post,
-Postal,Pos,
 Postal Code,Poskod,
-Previous,Sebelumnya,
 Provider,Pembekal,
 Read Only,Baca Sahaja,
 Recipient,Penerima,
 Reviews,Ulasan,
 Sender,Penghantar,
-Shop,Kedai,
-Subsidiary,Anak Syarikat,
-There is some problem with the file url: {0},Terdapat beberapa masalah dengan url fail: {0},
 There were errors while sending email. Please try again.,Terdapat ralat semasa menghantar e-mel. Sila cuba sekali lagi.,
 Values Changed,nilai Berubah,
 or,atau,
@@ -3280,19 +3223,16 @@
 Quality Feedback Template,Template Maklum Balas Kualiti,
 Rules for applying different promotional schemes.,Kaedah untuk memohon skim promosi yang berbeza.,
 Show {0},Tunjukkan {0},
-"Special Characters except '-', '#', '.', '/', '{{' and '}}' not allowed in naming series {0}","Watak Khas kecuali &quot;-&quot;, &quot;#&quot;, &quot;.&quot;, &quot;/&quot;, &quot;{{&quot; Dan &quot;}}&quot; tidak dibenarkan dalam siri penamaan {0}",
 Target Details,Butiran Sasaran,
 {0} already has a Parent Procedure {1}.,{0} sudah mempunyai Tatacara Ibu Bapa {1}.,
 API,API,
 Annual,Tahunan,
 Change,Perubahan,
 Contact Email,Hubungi E-mel,
-Export Type,Jenis Eksport,
 From Date,Dari Tarikh,
 Group By,Kumpulan Oleh,
 Invalid URL,URL tidak sah,
 Landscape,Landskap,
-Last Sync On,Penyegerakan Terakhir,
 Naming Series,Menamakan Siri,
 No data to export,Tiada data untuk dieksport,
 Portrait,Potret,
@@ -3302,7 +3242,6 @@
 Show Document,Tunjukkan Dokumen,
 Show Traceback,Tunjukkan Traceback,
 Video,Video,
-Webhook Secret,Webhook Secret,
 % Of Grand Total,% Daripada jumlah keseluruhan,
 <b>Company</b> is a mandatory filter.,<b>Syarikat</b> adalah penapis mandatori.,
 <b>From Date</b> is a mandatory filter.,<b>Dari Tarikh</b> adalah penapis mandatori.,
@@ -3358,7 +3297,6 @@
 BOM Comparison Tool,Alat Perbandingan BOM,
 BOM recursion: {0} cannot be child of {1},Kaedah BOM: {0} tidak boleh menjadi kanak-kanak {1},
 BOM recursion: {0} cannot be parent or child of {1},Kaedah BOM: {0} tidak boleh menjadi ibu bapa atau anak {1},
-Back to Home,Kembali ke rumah,
 Back to Messages,Kembali ke Mesej,
 Bank Data mapper doesn't exist,Mapper Data Bank tidak wujud,
 Bank Details,Butiran Bank,
@@ -3420,7 +3358,6 @@
 Currency,Mata Wang,
 Current Status,Status semasa,
 Customer PO,Pelanggan PO,
-Customize,Menyesuaikan,
 Daily,Daily,
 Date,Tarikh,
 Date of Birth cannot be greater than Joining Date.,Tarikh Lahir tidak boleh melebihi Tarikh Bergabung.,
@@ -3454,7 +3391,6 @@
 ERPNext could not find any matching payment entry,ERPNext tidak dapat mencari sebarang entri pembayaran yang sepadan,
 Earliest Age,Umur terawal,
 Edit Details,Edit Butiran,
-Edit Profile,Sunting profil,
 Either GST Transporter ID or Vehicle No is required if Mode of Transport is Road,Sama ada ID Transporter GST atau No Kenderaan diperlukan jika Mod Pengangkutan adalah Jalan,
 Email,E-mel,
 Email Campaigns,Kempen E-mel,
@@ -3482,7 +3418,6 @@
 Fetch Items from Warehouse,Ambil Item dari Gudang,
 Fetching...,Mengambil ...,
 Field,Field,
-File Manager,File Manager,
 Filters,Penapis,
 Finding linked payments,Mencari bayaran berkaitan,
 Fleet Management,Pengurusan Fleet,
@@ -3521,7 +3456,6 @@
 Incorrect Warehouse,Gudang yang tidak betul,
 Invalid Barcode. There is no Item attached to this barcode.,Barcode tidak sah. Tiada Item yang dilampirkan pada kod bar ini.,
 Invalid credentials,Kelayakan tidak sah,
-Invite as User,Jemput sebagai pengguna,
 Issue Priority.,Keutamaan Terbitan.,
 Issue Type.,Jenis Terbitan.,
 "It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","Nampaknya terdapat masalah dengan tatarajah jalur pelayan. Sekiranya gagal, amaun akan dikembalikan ke akaun anda.",
@@ -3564,7 +3498,6 @@
 New Invoice,Invois Baru,
 New Payment,Pembayaran baru,
 New release date should be in the future,Tarikh pelepasan baru sepatutnya pada masa hadapan,
-Newsletter,Surat berita,
 No Account matched these filters: {},Tiada Akaun yang dipadankan dengan penapis ini: {},
 No communication found.,Tiada komunikasi dijumpai.,
 No correct answer is set for {0},Tiada jawapan yang betul ditetapkan untuk {0},
@@ -3640,7 +3573,6 @@
 Please setup a default bank account for company {0},Sila tetapkan akaun bank lalai untuk syarikat {0},
 Please specify,Sila nyatakan,
 Please specify a {0},Sila nyatakan {0},lead
-Printing,Percetakan,
 Priority,Keutamaan,
 Priority has been changed to {0}.,Keutamaan telah diubah menjadi {0}.,
 Priority {0} has been repeated.,Keutamaan {0} telah diulang.,
@@ -3649,7 +3581,6 @@
 Project,Projek,
 Provide the academic year and set the starting and ending date.,Menyediakan tahun akademik dan menetapkan tarikh permulaan dan akhir.,
 Public token is missing for this bank,Token umum hilang untuk bank ini,
-Publish,Menerbitkan,
 Publish 1 Item,Terbitkan 1 Perkara,
 Publish Items,Terbitkan Item,
 Publish More Items,Terbitkan Lebih Banyak Item,
@@ -3677,7 +3608,6 @@
 Reconciled,Berdamai,
 Recruitment,Recruitment,
 Red,Merah,
-Refreshing,Menyegarkan,
 Release date must be in the future,Tarikh pelepasan mestilah pada masa akan datang,
 Relieving Date must be greater than or equal to Date of Joining,Tarikh Pelunasan mestilah lebih besar daripada atau sama dengan Tarikh Bergabung,
 Rename,Nama semula,
@@ -3721,7 +3651,6 @@
 Search for a payment,Cari bayaran,
 Search for anything ...,Cari apa ...,
 Search results for,Hasil carian untuk,
-Select All,Pilih Semua,
 Select Difference Account,Pilih Akaun Perbezaan,
 Select a Default Priority.,Pilih Keutamaan Lalai.,
 Select a company,Pilih sebuah syarikat,
@@ -3740,11 +3669,9 @@
 Service Level Agreement has been changed to {0}.,Perjanjian Tahap Perkhidmatan telah ditukar kepada {0}.,
 Service Level Agreement was reset.,Perjanjian Tahap Perkhidmatan telah ditetapkan semula.,
 Service Level Agreement with Entity Type {0} and Entity {1} already exists.,Perjanjian Tahap Perkhidmatan dengan Entiti Jenis {0} dan Entiti {1} sudah wujud.,
-Set,Tetapkan,
 Set Meta Tags,Tetapkan Tag Meta,
 Set {0} in company {1},Tetapkan {0} dalam syarikat {1},
 Setup,Persediaan,
-Setup Wizard,Setup Wizard,
 Shift Management,Pengurusan Shift,
 Show Future Payments,Tunjukkan Pembayaran Masa Depan,
 Show Linked Delivery Notes,Tunjukkan Nota Penghantaran yang Dihubungkan,
@@ -3815,7 +3742,6 @@
 Unreconciled,Tidak dirahsiakan,
 Unsupported GST Category for E-Way Bill JSON generation,Kategori GST tidak disokong untuk generasi e-Way Bill JSON,
 Update,Update,
-Update Details,Butiran Kemas kini,
 Update Taxes for Items,Kemas kini Cukai untuk Item,
 "Upload a bank statement, link or reconcile a bank account","Muat naik penyata bank, pautan atau mendamaikan akaun bank",
 Upload a statement,Muat naik kenyataan,
@@ -3839,7 +3765,6 @@
 XML Files Processed,Fail XML Diproses,
 Year,Tahun,
 Yearly,Setiap tahun,
-You,Anda,
 You are not allowed to enroll for this course,Anda tidak dibenarkan mendaftar untuk kursus ini,
 You are not enrolled in program {0},Anda tidak mendaftar dalam program {0},
 You can Feature upto 8 items.,Anda boleh menampilkan sehingga 8 item.,
@@ -3856,7 +3781,6 @@
 e-Way Bill already exists for this document,Bil e-Way sudah wujud untuk dokumen ini,
 woocommerce - {0},woocommerce - {0},
 {0} Coupon used are {1}. Allowed quantity is exhausted,{0} Kupon yang digunakan adalah {1}. Kuantiti dibiarkan habis,
-{0} Name,{0} Nama,
 {0} Operations: {1},{0} Operasi: {1},
 {0} bank transaction(s) created,{0} transaksi bank dibuat,
 {0} bank transaction(s) created and {1} errors,{0} transaksi bank dibuat dan {1} kesilapan,
@@ -3875,17 +3799,13 @@
 Total Income,Jumlah pendapatan,
 Total Income This Year,Jumlah Pendapatan Tahun Ini,
 Barcode,Barcode,
-Bold,Bold,
-Center,Pusat,
 Clear,Jelas,
-Comment,Komen,
 Comments,Comments,
 DocType,DocType,
 Download,Muat turun,
 Left,Kiri,
 Link,Pautan,
 New,Baru,
-Not Found,Not Found,
 Print,Cetak,
 Reference Name,Nama Rujukan,
 Refresh,Muat semula,
@@ -3908,7 +3828,6 @@
 Email Id,ID e-mel,
 No,Tiada,
 Reference Doctype,Rujukan DOCTYPE,
-User Id,ID Pengguna,
 Yes,Ya,
 Actual ,Sebenar,
 Add to cart,Dalam Troli,
@@ -4304,7 +4223,6 @@
 e.g Adjustments for:,contohnya Pelarasan untuk:,
 Section Subtotal,Subtotal Seksyen,
 Section Footer,Seksyen Footer,
-Position,Jawatan,
 Cash Flow Mapping,Pemetaan Aliran Tunai,
 Select Maximum Of 1,Pilih Maksimum 1,
 Is Finance Cost,Adakah Kos Kewangan,
@@ -4936,7 +4854,6 @@
 Previous Business Day,Hari Perniagaan Sebelumnya,
 Next Business Day,Hari Perniagaan Seterusnya,
 Urgent,Segera,
-Crop,Potong,
 Crop Name,Nama Tanaman,
 Scientific Name,Nama saintifik,
 "You can define all the tasks which need to carried out for this crop here. The day field is used to mention the day on which the task needs to be carried out, 1 being the 1st day, etc.. ","Anda boleh menentukan semua tugas yang perlu dilakukan untuk tanaman ini di sini. Bidang hari digunakan untuk menyebut hari di mana tugas perlu dijalankan, 1 adalah hari pertama, dan lain-lain ..",
@@ -5441,7 +5358,6 @@
 To TIme,Untuk Masa,
 Course End Date,Kursus Tarikh Akhir,
 Course Topic,Topik Kursus,
-Topic,Topic,
 Topic Name,Topic Nama,
 Education Settings,Tetapan Pendidikan,
 Current Academic Year,Semasa Tahun Akademik,
@@ -5516,7 +5432,6 @@
 Check this if the Student is residing at the Institute's Hostel.,Semak ini jika Pelajar itu yang menetap di Institut Hostel.,
 Walking,berjalan,
 Institute's Bus,Bas Institute,
-Public Transport,Pengangkutan awam,
 Self-Driving Vehicle,Self-Driving Kenderaan,
 Pick/Drop by Guardian,Pick / Drop oleh Guardian,
 Enrolled courses,kursus mendaftar,
@@ -5697,7 +5612,6 @@
 Default Cost Center,Kos Pusat Default,
 Undeposited Funds Account,Akaun Dana Undeposited,
 Shopify Log,Log Shopify,
-Request Data,Meminta Data,
 Shopify Settings,Shopify Settings,
 status html,html status,
 Enable Shopify,Dayakan Shopify,
@@ -5817,7 +5731,6 @@
 Exercise Instructions,Arahan Latihan,
 Exercise Video,Video Latihan,
 Exercise Steps,Langkah Latihan,
-Steps,Langkah-langkah,
 Steps Table,Jadual Langkah,
 Exercise Type Step,Langkah Jenis Latihan,
 Max number of visit,Bilangan lawatan maksimum,
@@ -6001,7 +5914,6 @@
 Patient Encounter Symptom,Simptom Perjumpaan Pesakit,
 HLC-PMR-.YYYY.-,HLC-PMR-.YYYY.-,
 Attach Medical Record,Lampirkan Rekod Perubatan,
-Reference DocType,Jenis Dokumen Rujukan,
 Spouse,Pasangan suami isteri,
 Family,Keluarga,
 Schedule Details,Butiran Jadual,
@@ -6983,16 +6895,8 @@
 HTML / Banner that will show on the top of product list.,HTML / Banner yang akan muncul di bahagian atas senarai produk.,
 Set prefix for numbering series on your transactions,Terletak awalan untuk penomboran siri transaksi anda,
 Setup Series,Persediaan Siri,
-Select Transaction,Pilih Transaksi,
-Help HTML,Bantuan HTML,
-Series List for this Transaction,Senarai Siri bagi Urusniaga ini,
-User must always select,Pengguna perlu sentiasa pilih,
-Check this if you want to force the user to select a series before saving. There will be no default if you check this.,Semak ini jika anda mahu untuk memaksa pengguna untuk memilih siri sebelum menyimpan. Tidak akan ada lalai jika anda mendaftar ini.,
 Update Series,Update Siri,
 Change the starting / current sequence number of an existing series.,Menukar nombor yang bermula / semasa urutan siri yang sedia ada.,
-Prefix,Awalan,
-This is the number of the last created transaction with this prefix,Ini ialah bilangan transaksi terakhir yang dibuat dengan awalan ini,
-Update Series Number,Update Siri Nombor,
 Quotation Lost Reason,Sebut Harga Hilang Akal,
 A third party distributor / dealer / commission agent / affiliate / reseller who sells the companies products for a commission.,Seorang pengedar pihak ketiga / peniaga / ejen / kenalan / penjual semula yang menjual produk syarikat untuk komisen.,
 Sales Partner Name,Nama Rakan Jualan,
@@ -7687,7 +7591,6 @@
 Warehouse wise Item Balance Age and Value,Gudang bijaksana Item Baki Umur dan Nilai,
 Work Order Stock Report,Laporan Saham Pesanan Kerja,
 Work Orders in Progress,Perintah Kerja dalam Kemajuan,
-Validation Error,Ralat Pengesahan,
 Automatically Process Deferred Accounting Entry,Memproses Penyertaan Perakaunan yang Ditangguhkan Secara Automatik,
 Bank Clearance,Pelepasan Bank,
 Bank Clearance Detail,Perincian Pelepasan Bank,
@@ -7724,45 +7627,7 @@
 Therapy Plan: ,Pelan Terapi:,
 Total Counts Targeted: ,Jumlah Kiraan yang Disasarkan:,
 Total Counts Completed: ,Jumlah Kiraan Selesai:,
-Andaman and Nicobar Islands,Kepulauan Andaman dan Nicobar,
-Andhra Pradesh,Andhra Pradesh,
-Arunachal Pradesh,Arunachal Pradesh,
-Assam,Assam,
-Bihar,Bihar,
-Chandigarh,Chandigarh,
-Chhattisgarh,Chhattisgarh,
-Dadra and Nagar Haveli,Dadra dan Nagar Haveli,
-Daman and Diu,Daman dan Diu,
-Delhi,Delhi,
-Goa,Goa,
-Gujarat,Gujarat,
-Haryana,Haryana,
-Himachal Pradesh,Himachal Pradesh,
-Jammu and Kashmir,Jammu dan Kashmir,
-Jharkhand,Jharkhand,
-Karnataka,Karnataka,
-Kerala,Kerala,
-Lakshadweep Islands,Kepulauan Lakshadweep,
-Madhya Pradesh,Madhya Pradesh,
-Maharashtra,Maharashtra,
-Manipur,Manipur,
-Meghalaya,Meghalaya,
-Mizoram,Mizoram,
-Nagaland,Nagaland,
-Odisha,Odisha,
-Other Territory,Wilayah Lain,
-Pondicherry,Pondicherry,
-Punjab,Punjab,
-Rajasthan,Rajasthan,
-Sikkim,Sikkim,
-Tamil Nadu,Bahasa Tamil Nadu,
-Telangana,Telangana,
-Tripura,Tripura,
-Uttar Pradesh,Uttar Pradesh,
-Uttarakhand,Uttarakhand,
-West Bengal,Bengal Barat,
 Is Mandatory,Adakah Wajib,
-Published on,Diterbitkan pada,
 Service Received But Not Billed,Perkhidmatan Diterima Tetapi Tidak Ditagih,
 Deferred Accounting Settings,Tetapan Perakaunan Tertunda,
 Book Deferred Entries Based On,Tempah Penyertaan Ditangguhkan Berdasarkan,
@@ -8035,8 +7900,6 @@
 Worksheet Instructions,Arahan Lembaran Kerja,
 Result Legend Print,Hasil Cetakan Legenda,
 Print Position,Kedudukan Cetakan,
-Bottom,Bawah,
-Top,Atas,
 Both,Kedua-duanya,
 Result Legend,Hasil Legenda,
 Lab Tests,Ujian Makmal,
@@ -8081,12 +7944,10 @@
 Approvers,Meluluskan,
 The first Approver in the list will be set as the default Approver.,Pelulus pertama dalam senarai akan ditetapkan sebagai Pelulus lalai.,
 Shift Request Approver,Kelulusan Permintaan Shift,
-PAN Number,Nombor PAN,
 Provident Fund Account,Akaun Kumpulan Wang Simpanan,
 MICR Code,Kod MICR,
 Repay unclaimed amount from salary,Bayar balik jumlah yang tidak dituntut dari gaji,
 Deduction from salary,Potongan gaji,
-Expired Leaves,Daun Tamat Tempoh,
 If this is not checked the loan by default will be considered as a Demand Loan,"Sekiranya ini tidak diperiksa, pinjaman secara lalai akan dianggap sebagai Permintaan Pinjaman",
 This account is used for booking loan repayments from the borrower and also disbursing loans to the borrower,Akaun ini digunakan untuk membuat pembayaran pinjaman dari peminjam dan juga mengeluarkan pinjaman kepada peminjam,
 This account is capital account which is used to allocate capital for loan disbursal account ,Akaun ini adalah akaun modal yang digunakan untuk memperuntukkan modal untuk akaun pengeluaran pinjaman,
@@ -8844,3 +8705,41 @@
 Creating Purchase Order ...,Membuat Pesanan Pembelian ...,
 "Select a Supplier from the Default Suppliers of the items below. On selection, a Purchase Order will be made against items belonging to the selected Supplier only.","Pilih Pembekal dari Pembekal Lalai item di bawah. Pada pilihan, Pesanan Pembelian akan dibuat terhadap barang-barang milik Pembekal terpilih sahaja.",
 Row #{}: You must select {} serial numbers for item {}.,Baris # {}: Anda mesti memilih {} nombor siri untuk item {}.,
+Add Comment,Tambah komen,
+More...,More ...,
+Notes,Nota,
+Payment Gateway,Gateway Pembayaran,
+Payment Gateway Name,Nama Gateway Pembayaran,
+Payments,Pembayaran,
+Plan Name,Nama Rancang,
+Portal,Portal,
+Scan Barcode,Kod Bar Imbas,
+Some information is missing,Beberapa maklumat yang hilang,
+Successful,Berjaya,
+Tools,Tools,
+Use Sandbox,Penggunaan Sandbox,
+Busy,Sibuk,
+Completed By,Selesai oleh,
+Payment Failed,pembayaran Gagal,
+Column {0},Lajur {0},
+Field Mapping,Pemetaan Lapangan,
+Not Specified,Tidak ditentukan,
+Update Type,Jenis Kemas Kini,
+Dr,Dr,
+End Time,Akhir Masa,
+Fetching...,Mengambil ...,
+"It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","Nampaknya terdapat masalah dengan tatarajah jalur pelayan. Sekiranya gagal, amaun akan dikembalikan ke akaun anda.",
+Looks like someone sent you to an incomplete URL. Please ask them to look into it.,Nampaknya seseorang menghantar anda ke URL yang tidak lengkap. Sila meminta mereka untuk melihat ke dalamnya.,
+Master,Master,
+Pay,Bayar,
+You can also copy-paste this link in your browser,Anda juga boleh copy-paste pautan ini dalam pelayar anda,
+Verified By,Disahkan oleh,
+Invalid naming series (. missing) for {0},Siri penamaan tidak sah (. Hilang) untuk {0},
+Phone Number,Nombor telefon,
+Account SID,SID Akaun,
+Global Defaults,Lalai Global,
+Is Mandatory,Adakah Wajib,
+WhatsApp,WhatsApp,
+Make a call,Buat panggilan,
+Approve,Terima,
+Reject,Tolak,
diff --git a/erpnext/translations/my.csv b/erpnext/translations/my.csv
index 6da5860..dc5ab12 100644
--- a/erpnext/translations/my.csv
+++ b/erpnext/translations/my.csv
@@ -113,7 +113,6 @@
 Add Items,ပစ္စည်းများ Add,
 Add Leads,ခဲ Add,
 Add Multiple Tasks,အကွိမျမြားစှာ Tasks ကို Add,
-Add Row,Row Add,
 Add Sales Partners,အရောင်းအပေါင်းအဖေါ်များ Add,
 Add Serial No,Serial No Add,
 Add Students,ကျောင်းသားများ Add,
@@ -211,9 +210,7 @@
 An error occurred during the update process,အမှား Update လုပ်တဲ့လုပ်ငန်းစဉ်အတွင်းဖြစ်ပွားခဲ့သည်,
 "An item exists with same name ({0}), please change the item group name or rename the item","တစ်ဦးကို item နာမည်တူ ({0}) နှင့်အတူရှိနေတယ်, ပစ္စည်းအုပ်စုအမည်ကိုပြောင်းလဲသို့မဟုတ်ပစ္စည်းကိုအမည်ပြောင်းကျေးဇူးတင်ပါ",
 Analyst,လေ့လာဆန်းစစ်သူ,
-Analytics,analytics,
 Annual Billing: {0},နှစ်ပတ်လည်ငွေတောင်းခံလွှာ: {0},
-Anonymous,အမည်မသိ,
 Another Budget record '{0}' already exists against {1} '{2}' and account '{3}' for fiscal year {4},ဘဏ္ဍာရေးနှစ်များအတွက်နောက်ထပ်ဘတ်ဂျက်စံချိန် &#39;&#39; {0} &#39;ပြီးသား&#39; &#39;{2}&#39; {1} ဆန့်ကျင်တည်ရှိခြင်းနှင့်အကောင့် &#39;&#39; {3} &#39;{4},
 Another Period Closing Entry {0} has been made after {1},{0} {1} ပြီးနောက်ဖန်ဆင်းခဲ့နောက်ထပ်ကာလသင်တန်းဆင်းပွဲ Entry &#39;,
 Another Sales Person {0} exists with the same Employee id,နောက်ထပ်အရောင်းပုဂ္ဂိုလ် {0} တူညီသောန်ထမ်းက id နှင့်အတူတည်ရှိ,
@@ -283,14 +280,12 @@
 Attendance not submitted for {0} as {1} on leave.,တက်ရောက်သူ {0} ခွင့်အပေါ် {1} အဖြစ်များအတွက်တင်သွင်းမဟုတ်ပါဘူး။,
 Attribute table is mandatory,attribute စားပွဲပေါ်မှာမဖြစ်မနေဖြစ်ပါသည်,
 Attribute {0} selected multiple times in Attributes Table,attribute {0} Attribute တွေကစားပွဲတင်အတွက်အကြိမ်ပေါင်းများစွာကိုရှေးခယျြ,
-Author,စာရေးသူ,
 Authorized Signatory,Authorized လက်မှတ်ရေးထိုးထားသော,
 Auto Material Requests Generated,generated auto ပစ္စည်းတောင်းဆိုမှုများ,
 Auto Repeat,အော်တိုထပ်ခါတလဲလဲ,
 Auto repeat document updated,အော်တိုထပ်စာရွက်စာတမ်း updated,
 Automotive,မော်တော်ယာဉ်,
 Available,ရရှိနိုင်,
-Available Leaves,ရရှိနိုင်အရွက်,
 Available Qty,ရရှိနိုင်သည့် Qty,
 Available Selling,ရောင်းချခြင်းရရှိနိုင်,
 Available for use date is required,အသုံးပြုမှုနေ့စွဲများအတွက်ရရှိနိုင်လိုအပ်ပါသည်,
@@ -340,7 +335,6 @@
 Base URL,base URL ကို,
 Based On,ပေါ်အခြေခံကာ,
 Based On Payment Terms,ငွေပေးချေမှုရမည့်စည်းမျဉ်းစည်းကမ်းများတွင် အခြေခံ.,
-Basic,အခြေခံပညာ,
 Batch,batch,
 Batch Entries,batch Entries,
 Batch ID is mandatory,batch ID ကိုမဖြစ်မနေဖြစ်ပါသည်,
@@ -361,7 +355,6 @@
 Billable Hours,ဘီလ်ဆောင်နာရီ,
 Billed,Bill,
 Billed Amount,ကြေညာတဲ့ငွေပမာဏ,
-Billing,ငွေတောင်းခံ,
 Billing Address,ကျသင့်ငွေတောင်းခံလွှာပေးပို့မည့်လိပ်စာ,
 Billing Address is same as Shipping Address,ငွေတောင်းခံလိပ်စာသင်္ဘောလိပ်စာအဖြစ်အတူတူပင်ဖြစ်ပါသည်,
 Billing Amount,ငွေတောင်းခံငွေပမာဏ,
@@ -560,7 +553,6 @@
 Consumed Qty,ကျွမ်းလောင် Qty,
 Consumer Products,လူသုံးကုန်ထုတ်ကုန်ပစ္စည်းများ,
 Contact,ထိတှေ့,
-Contact Details,ဆက်သွယ်ရန်အသေးစိတ်,
 Contact Us,ကြှနျုပျတို့ကိုဆကျသှယျရနျ,
 Content,content,
 Content Masters,အကြောင်းအရာမာစတာ,
@@ -715,7 +707,6 @@
 Date of Joining,အတူနေ့စွဲ,
 Date of Joining must be greater than Date of Birth,အတူနေ့စွဲမွေးဖွားခြင်း၏နေ့စွဲထက် သာ. ကြီးမြတ်ဖြစ်ရမည်,
 Date of Transaction,ငွေသွင်းငွေထုတ်၏နေ့စွဲ,
-Datetime,Datetime,
 Day,နေ့,
 Debit,debit,
 Debit ({0}),debit ({0}),
@@ -874,7 +865,6 @@
 Employee cannot report to himself.,ဝန်ထမ်းကိုယ်တော်တိုင်မှသတင်းပို့လို့မရပါဘူး။,
 Employee {0} has already applied for {1} between {2} and {3} : ,: ဝန်ထမ်း {0} ပြီးသား {1} {2} နှင့် {3} အကြားလျှောက်ထားလိုက်ပါတယ်,
 Employee {0} of grade {1} have no default leave policy,တန်း၏ဝန်ထမ်း {0} {1} မျှမက default ခွင့်မူဝါဒအရှိ,
-Enable,Enable,
 Enable / disable currencies.,Enable / ငွေကြေးများ disable ။,
 Enabled,Enabled,
 "Enabling 'Use for Shopping Cart', as Shopping Cart is enabled and there should be at least one Tax Rule for Shopping Cart","စျေးဝယ်လှည်း enabled အတိုင်း, &#39;&#39; စျေးဝယ်လှည်းများအတွက်သုံးပါ &#39;&#39; ကို Enable နှင့်စျေးဝယ်လှည်းဘို့အနည်းဆုံးအခွန်စည်းမျဉ်းရှိသင့်တယ်",
@@ -905,7 +895,6 @@
 Error: Not a valid id?,error: မမှန်ကန်သောက id?,
 Estimated Cost,ခန့်မှန်းခြေကုန်ကျစရိတ်,
 "Even if there are multiple Pricing Rules with highest priority, then following internal priorities are applied:","အမြင့်ဆုံးဦးစားပေးနှင့်အတူမျိုးစုံစျေးနှုန်းများနည်းဥပဒေများရှိပါတယ်တောင်မှလျှင်, အောက်ပါပြည်တွင်းရေးဦးစားပေးလျှောက်ထားနေကြပါတယ်:",
-Event,အဖြစ်အပျက်,
 Exchange Gain/Loss,ချိန်း Gain / ပျောက်ဆုံးခြင်း,
 Exchange Rate Revaluation master.,ချိန်းနှုန်း Revaluation မာစတာ။,
 Exchange Rate must be same as {0} {1} ({2}),ချိန်း Rate {1} {0} အဖြစ်အတူတူဖြစ်ရမည် ({2}),
@@ -1032,7 +1021,6 @@
 From value must be less than to value in row {0},တန်ဖိုးမြှင်ထံမှအတန်း {0} အတွက်တန်ဖိုးထက်နည်းရှိရမည်,
 From {0} | {1} {2},{0} ကနေ | {1} {2},
 Fulfillment,ပွညျ့စုံ,
-Full,ပြည့်သော,
 Full Name,နာမည်အပြည့်အစုံ,
 Fully Depreciated,အပြည့်အဝတန်ဖိုးလျော့ကျ,
 Furnitures and Fixtures,ပရိဘောဂများနှင့်ပွဲတွင်,
@@ -1133,7 +1121,6 @@
 Hub Sync ID,hub Sync ကို ID ကို,
 Human Resource,လူ့စွမ်းအားအရင်းအမြစ်,
 Human Resources,လူ့အင်အားအရင်းအမြစ်,
-IFSC Code,IFSC Code ကို,
 IGST Amount,IGST ငွေပမာဏ,
 IP Address,IP Address ကို,
 ITC Available (whether in full op part),(အပြည့်အဝ op အစိတ်အပိုင်းအတွက်ရှိမရှိ) ရရှိနိုင် ITC,
@@ -1185,7 +1172,6 @@
 Ineligible ITC,အရည်အချင်းမပြည့်မှီ ITC,
 Initiated,စတင်ခဲ့သည်,
 Inpatient Record,အတွင်းလူနာမှတ်တမ်း,
-Insert,ထည့်သွင်း,
 Installation Note,installation မှတ်ချက်,
 Installation Note {0} has already been submitted,Installation မှတ်ချက် {0} ပြီးသားတင်သွင်းခဲ့,
 Installation date cannot be before delivery date for Item {0},Installation လုပ်တဲ့နေ့စွဲ Item {0} သည်ပို့ဆောင်မှုနေ့စွဲခင်မဖွစျနိုငျ,
@@ -1197,7 +1183,6 @@
 Insurance Start date should be less than Insurance End date,အာမခံ Start ကိုရက်စွဲအာမခံအဆုံးနေ့စွဲထက်လျော့နည်းဖြစ်သင့်,
 Integrated Tax,ဘက်ပေါင်းစုံအခွန်,
 Inter-State Supplies,Inter-ပြည်နယ်ထောက်ပံ့ကုန်,
-Interests,စိတ်ဝင်စားမှုများ,
 Internet Publishing,အင်တာနက်ထုတ်ဝေရေး,
 Intra-State Supplies,အချင်းချင်းအပြန်အလှန်ပြည်နယ်ထောက်ပံ့ကုန်,
 Introduction,နိဒါန်း,
@@ -1316,7 +1301,6 @@
 Lab testing datetime cannot be before collection datetime,Lab ကစမ်းသပ် DATETIME စုဆောင်းခြင်း DATETIME မတိုင်မီမဖွစျနိုငျ,
 Label,ကပ်တံဆိပ်,
 Laboratory,စမ်းသပ်ခန်း,
-Language Name,ဘာသာစကားအမည်,
 Large,အကြီးစား,
 Last Communication,နောက်ဆုံးဆက်သွယ်ရေး,
 Last Communication Date,နောက်ဆုံးဆက်သွယ်ရေးနေ့စွဲ,
@@ -1347,8 +1331,6 @@
 Letter Heads for print templates.,ပုံနှိပ်တင်းပလိတ်များအဘို့အပေးစာခေါင်းဆောင်များ။,
 Level,level,
 Liability,တာဝန်,
-License,လိုင်စင်,
-Limit,ကန့်သတ်,
 Limit Crossed,ကန့်သတ်ဖြတ်ကူး,
 Link to Material Request,ပစ္စည်းတောင်းဆိုခြင်းမှ Link ကို,
 List of all share transactions,အားလုံးရှယ်ယာအရောင်းအများစာရင်း,
@@ -1359,7 +1341,6 @@
 Loans (Liabilities),ချေးငွေများ (စိစစ်),
 Loans and Advances (Assets),ချေးငွေနှင့်ကြိုတင်ငွေ (ပိုင်ဆိုင်မှုများ),
 Local,ဒေသဆိုင်ရာ,
-Log,တုံး,
 Logs for maintaining sms delivery status,SMS ပေးပို့အဆင့်အတန်းကိုထိန်းသိမ်းသည် logs,
 Lost,ဆုံးရှုံး,
 Lost Reasons,ဆုံးရှုံးသွားသောအကြောင်းရင်းများ,
@@ -1445,7 +1426,6 @@
 Medical Department,ဆေးဘက်ဆိုင်ရာဦးစီးဌာန,
 Medical Record,ဆေးဘက်ဆိုင်ရာမှတ်တမ်း,
 Medium,အလယ်အလတ်,
-Meeting,အစည်းအဝေး,
 Member Activity,အဖွဲ့ဝင်လှုပ်ရှားမှု,
 Member ID,အဖွဲ့ဝင် ID ကို,
 Member Name,အဖွဲ့ဝင်အမည်,
@@ -1495,7 +1475,6 @@
 Multiple Variants,အကွိမျမြားစှာမူကွဲ,
 Multiple fiscal years exist for the date {0}. Please set company in Fiscal Year,အကွိမျမြားစှာဘဏ္ဍာရေးနှစ်အနှစ်ရက်စွဲ {0} အဘို့တည်ရှိတယ်။ ဘဏ္ဍာရေးနှစ်တစ်နှစ်တာအတွက်ကုမ္ပဏီသတ်မှတ်ထားပေးပါ,
 Music,ဂီတ,
-My Account,ကြှနျုပျအကောငျ့,
 Name error: {0},အမှားအမည်: {0},
 Name of new Account. Note: Please don't create accounts for Customers and Suppliers,အသစ်သောအကောင့်အမည်ဖြစ်တယ်။ မှတ်ချက်: Customer နှင့်ပေးသွင်းများအတွက်အကောင့်တွေကိုဖန်တီးကြပါဘူးကျေးဇူးပြုပြီး,
 Name or Email is mandatory,အမည်သို့မဟုတ်အီးမေးလ်မသင်မနေရ,
@@ -1538,7 +1517,6 @@
 New credit limit is less than current outstanding amount for the customer. Credit limit has to be atleast {0},နယူးအကြွေးကန့်သတ်ဖောက်သည်များအတွက်လက်ရှိထူးချွန်ငွေပမာဏထက်လျော့နည်းသည်။ အကြွေးကန့်သတ် atleast {0} ဖြစ်ဖို့ရှိပါတယ်,
 New task,တဲ့ New task,
 New {0} pricing rules are created,နယူး {0} စျေးနှုန်းစည်းမျဉ်းစည်းကမ်းတွေကိုဖန်တီးနေကြတယ်,
-Newsletters,သတင်းလွှာ,
 Newspaper Publishers,သတင်းစာထုတ်ဝေသူများ,
 Next,နောက်တစ်ခု,
 Next Contact By cannot be same as the Lead Email Address,Next ကိုဆက်သွယ်ပါအားဖြင့်ခဲအီးမေးလ်လိပ်စာအတိုင်းအတူတူမဖွစျနိုငျ,
@@ -1686,7 +1664,6 @@
 Other,အခြား,
 Other Reports,အခြားအစီရင်ခံစာများ,
 "Other outward supplies(Nil rated,Exempted)","သည်အခြားအပြင်ထောက်ပံ့ရေးပစ္စည်းများ (nil rated, ကင်းလွတ်ခွင့်)",
-Others,အခြားသူများ,
 Out Qty,Qty out,
 Out Value,Value တစ်ခုအထဲက,
 Out of Order,အမိန့်များထဲက,
@@ -1726,7 +1703,6 @@
 Party Type and Party is mandatory for {0} account,ပါတီအမျိုးအစားနှင့်ပါတီ {0} အကောင့်အတွက်မဖြစ်မနေဖြစ်ပါသည်,
 Party Type is mandatory,ပါတီအမျိုးအစားမဖြစ်မနေဖြစ်ပါသည်,
 Party is mandatory,ပါတီမဖြစ်မနေဖြစ်ပါသည်,
-Password,စကားဝှက်,
 Past Due Date,အတိတ်ကြောင့်နေ့စွဲ,
 Patient,လူနာ,
 Patient Appointment,လူနာခန့်အပ်တာဝန်ပေးခြင်း,
@@ -1784,7 +1760,6 @@
 Pharmaceutical,ဆေးဝါး,
 Pharmaceuticals,ဆေးဝါးများ,
 Physician,ဆရာဝန်,
-Pincode,Pincode,
 Place Of Supply (State/UT),ထောက်ပံ့ရေးရာ (ပြည်နယ် / UT),
 Place Order,အရပ်ဌာနအမိန့်,
 Plan Name,plan ကိုအမည်,
@@ -1896,7 +1871,6 @@
 Please select date,ရက်စွဲကို select လုပ်ပါကျေးဇူးပြုပြီး,
 Please select item code,ကို item code ကို select လုပ်ပါ ကျေးဇူးပြု.,
 Please select month and year,လနှင့်တစ်နှစ်ကို select ကျေးဇူးပြု.,
-Please select prefix first,ပထမဦးဆုံးရှေ့ဆက်ကိုရွေးပါ ကျေးဇူးပြု.,
 Please select the Company,ကုမ္ပဏီကို select ပေးပါ,
 Please select the Multiple Tier Program type for more than one collection rules.,တစ်ဦးထက်ပိုစုဆောင်းခြင်းစည်းမျဉ်းစည်းကမ်းတွေအဘို့အအကွိမျမြားစှာအဆင့်အစီအစဉ် type ကိုရွေးချယ်ပါ။,
 Please select the assessment group other than 'All Assessment Groups',&#39;&#39; အားလုံးအကဲဖြတ်အဖွဲ့များ &#39;&#39; ထက်အခြားအကဲဖြတ်အဖွဲ့ကို select လုပ်ပါ ကျေးဇူးပြု.,
@@ -1913,7 +1887,6 @@
 Please set Company filter blank if Group By is 'Company',အုပ်စုအားဖြင့် &#39;&#39; ကုမ္ပဏီ &#39;&#39; လျှင်အလွတ် filter ကုမ္ပဏီသတ်မှတ်ပေးပါ,
 Please set Default Payroll Payable Account in Company {0},ကုမ္ပဏီ {0} အတွက်ပုံမှန်လစာပေးချေအကောင့်ကိုသတ်မှတ်ပေးပါ,
 Please set Depreciation related Accounts in Asset Category {0} or Company {1},ပိုင်ဆိုင်မှုအမျိုးအစား {0} သို့မဟုတ်ကုမ္ပဏီ {1} အတွက်တန်ဖိုးနှင့်ဆက်စပ်သော Accounts ကိုသတ်မှတ်ထားပေးပါ,
-Please set Email Address,အီးမေးလ်လိပ်စာသတ်မှတ်ပေးပါ,
 Please set GST Accounts in GST Settings,GST က Settings ထဲမှာ GST Accounts ကိုသတ်မှတ်ပေးပါ,
 Please set Hotel Room Rate on {},{} အပေါ်ဟိုတယ်အခန်းနှုန်းသတ်မှတ်ပေးပါ,
 Please set Number of Depreciations Booked,ကြိုတင်ဘွတ်ကင်တန်ဖိုးအရေအတွက်သတ်မှတ်ထားပေးပါ,
@@ -1936,7 +1909,6 @@
 Please set the Email ID for the Student to send the Payment Request,အဆိုပါငွေပေးချေတောင်းဆိုမှုပေးပို့ဖို့ကျောင်းသားများအတွက်အီးမေးလ် ID ကိုသတ်မှတ်ပေးပါ,
 Please set the Item Code first,ပထမဦးဆုံးပစ္စည်း Code ကိုသတ်မှတ်ပေးပါ,
 Please set the Payment Schedule,ယင်းငွေပေးချေမှုရမည့်ဇယားသတ်မှတ်ပေးပါ,
-Please set the series to be used.,အသုံးပြုသောခံရဖို့စီးရီးသတ်မှတ်ပါ။,
 Please set {0} for address {1},လိပ်စာ {1} များအတွက် {0} သတ်မှတ်ပေးပါ,
 Please setup Students under Student Groups,ကျောင်းသားအဖွဲ့များအောက်တွင် ကျေးဇူးပြု. setup ကိုကျောင်းသားများ,
 Please specify Company,ကုမ္ပဏီသတ်မှတ် ကျေးဇူးပြု.,
@@ -1953,7 +1925,6 @@
 Point-of-Sale,point-of-Sale,
 Point-of-Sale Profile,point-of-Sale ကိုယ်ရေးအချက်အလက်များ profile,
 Portal,portal,
-Portal Settings,Portal ကိုချိန်ညှိ,
 Possible Supplier,ဖြစ်နိုင်ပါ့မလားပေးသွင်း,
 Postal Expenses,စာတိုက်အသုံးစရိတ်များ,
 Posting Date,Post date,
@@ -2152,12 +2123,10 @@
 Reference No is mandatory if you entered Reference Date,ရည်ညွန်းသင်ကိုးကားစရာနေ့စွဲသို့ဝင်လျှင်အဘယ်သူမျှမသင်မနေရ,
 Reference No.,ကိုးကားစရာအမှတ်,
 Reference Number,ကိုးကားစရာနံပါတ်,
-Reference Owner,ကိုးကားစရာပိုင်ရှင်,
 Reference Type,ကိုးကားစရာ Type,
 "Reference: {0}, Item Code: {1} and Customer: {2}","ကိုးကားစရာ: {0}, Item Code ကို: {1} နှင့်ဖောက်သည်: {2}",
 References,ကိုးကား,
 Refresh Token,Refresh တိုကင်,
-Region,ဒေသ,
 Register,စာရင်း,
 Rejected,ပယ်ချ,
 Related,Related,
@@ -2179,7 +2148,6 @@
 Replace BOM and update latest price in all BOMs,BOM အစားထိုးမည်အပေါင်းတို့နှင့် BOMs အတွက်နောက်ဆုံးပေါ်စျေးနှုန်းကို update,
 Replied,Replied,
 Report,အစီရင်ခံစာ,
-Report Builder,အစီရင်ခံစာ Builder,
 Report Type,အစီရင်ခံစာ Type,
 Report Type is mandatory,အစီရင်ခံစာ Type မသင်မနေရ,
 Reports,အစီရင်ခံစာများ,
@@ -2355,13 +2323,11 @@
 Same Company is entered more than once,တူညီသော Company ကိုတစ်ကြိမ်ထက်ပိုပြီးသို့ ဝင်. ဖြစ်ပါတယ်,
 Same item cannot be entered multiple times.,တူညီသောပစ္စည်းကိုအကြိမ်ပေါင်းများစွာထဲသို့ဝင်ရနိုင်မှာမဟုတ်ဘူး။,
 Same supplier has been entered multiple times,တူညီတဲ့ကုန်ပစ္စည်းပေးသွင်းအကြိမ်ပေါင်းများစွာသို့ဝင်ခဲ့,
-Sample,နမူနာ,
 Sample Collection,နမူနာစုစည်းမှု,
 Sample quantity {0} cannot be more than received quantity {1},နမူနာအရေအတွက် {0} လက်ခံရရှိအရေအတွက် {1} ထက်ပိုမဖွစျနိုငျ,
 Sanctioned,ဒဏ်ခတ်အရေးယူ,
 Sand,သဲ,
 Saturday,စနေနေ့,
-Saved,Saved,
 Saving {0},သိမ်းဆည်းခြင်း {0},
 Scan Barcode,scan ကိုဘားကုဒ်,
 Schedule,ဇယား,
@@ -2463,7 +2429,6 @@
 Series Updated,စီးရီး Updated,
 Series Updated Successfully,စီးရီးအောင်မြင်စွာကျင်းပပြီးစီး Updated,
 Series is mandatory,စီးရီးမသင်မနေရ,
-Series {0} already used in {1},စီးရီး {0} ပြီးသား {1} များတွင်အသုံးပြု,
 Service,ဝန်ဆောင်မှု,
 Service Level Agreement,ဝန်ဆောင်မှုအဆင့်သဘောတူညီချက်,
 Service Level Agreement.,ဝန်ဆောင်မှုအဆင့်သဘောတူညီချက်ကို။,
@@ -2479,7 +2444,6 @@
 Set Tax Rule for shopping cart,စျေးဝယ်လှည်းများအတွက်အခွန်နည်းဥပဒေ Set,
 Set as Closed,ပိတ်ထားသောအဖြစ် Set,
 Set as Completed,Completed အဖြစ်သတ်မှတ်ပါ,
-Set as Default,Default အဖြစ် Set,
 Set as Lost,ပျောက်ဆုံးသွားသောအဖြစ် Set,
 Set as Open,ပွင့်လင်းအဖြစ် Set,
 Set default inventory account for perpetual inventory,အစဉ်အမြဲစာရင်းမဘို့ရာခန့်က default စာရင်းအကောင့်,
@@ -2511,7 +2475,6 @@
 Shareholder,အစုစပ်ပါဝင်သူ,
 Ship To State,ပြည်နယ်ရန်သင်္ဘော,
 Shipments,တင်ပို့ရောင်းချမှု,
-Shipping,သင်္ဘောဖြင့်ကုန်ပစ္စည်းပို့ခြင်း,
 Shipping Address,ကုန်ပစ္စည်းပို့ဆောင်ရမည့်လိပ်စာ,
 "Shipping Address does not have country, which is required for this Shipping Rule",shipping လိပ်စာကဒီသင်္ဘောစည်းမျဉ်းများအတွက်လိုအပ်သောနိုင်ငံရှိသည်ပါဘူး,
 Shipping rule only applicable for Buying,ဝယ်ဘို့ကိုသာသက်ဆိုင် shipping အုပ်ချုပ်မှုကို,
@@ -2564,7 +2527,6 @@
 Split Batch,Split ကိုအသုတ်လိုက်,
 Split Issue,Split ကို Issue,
 Sports,အားကစား,
-Standard,စံ,
 Standard Buying,စံဝယ်ယူ,
 Standard Selling,စံရောင်းချသည့်,
 Standard contract terms for Sales or Purchase.,အရောင်းသို့မဟုတ်ဝယ်ယူခြင်းအဘို့အစံစာချုပ်ဝေါဟာရများ။,
@@ -2731,7 +2693,6 @@
 Terms and Conditions,စည်းကမ်းနှင့်သတ်မှတ်ချက်များ,
 Terms and Conditions Template,စည်းကမ်းသတ်မှတ်ချက်များ Template:,
 Territory,နယျမွေ,
-Test,စမ်းသပ်,
 Thank you for your business!,သင့်ရဲ့စီးပွားရေးလုပ်ငန်းများအတွက်ကျေးဇူးတင်ပါသည်,
 The 'From Package No.' field must neither be empty nor it's value less than 1.,&#39;&#39; ပက်ကေ့အမှတ် မှစ. &#39;&#39; အဆိုပါ လယ်ပြင်၌အချည်းနှီးသောသူဖြစ်ရမည်မဟုတ်မဟုတ်သလို 1 ထက်လျော့နည်းတန်ဖိုးကိုပါပဲ။,
 The Brand,အဆိုပါအမှတ်တံဆိပ်,
@@ -2848,7 +2809,6 @@
 Total (Without Tax),(အခွန်မပါ) စုစုပေါင်း,
 Total Achieved,အကောင်အထည်ဖော်ခဲ့သောစုစုပေါင်း,
 Total Actual,အမှန်တကယ်စုစုပေါင်း,
-Total Allocated Leaves,စုစုပေါင်းခွဲဝေအရွက်,
 Total Amount,စုစုပေါင်းတန်ဘိုး,
 Total Amount Credited,စုစုပေါင်းငွေပမာဏအသိအမှတ်ပြု,
 Total Applicable Charges in Purchase Receipt Items table must be same as Total Taxes and Charges,အရစ်ကျငွေလက်ခံပြေစာပစ္စည်းများ table ထဲမှာစုစုပေါင်းသက်ဆိုင်သောစွပ်စွဲချက်စုစုပေါင်းအခွန်နှင့်စွပ်စွဲချက်အဖြစ်အတူတူပင်ဖြစ်ရပါမည်,
@@ -2892,7 +2852,6 @@
 Total(Amt),စုစုပေါင်း (Amt),
 Total(Qty),စုစုပေါင်း (Qty),
 Traceability,Traceability,
-Traceback,Traceback,
 Track Leads by Lead Source.,track ခဲရင်းမြစ်များကပို့ဆောင်။,
 Transaction,ကိစ္စ,
 Transaction Date,transaction နေ့စွဲ,
@@ -2930,7 +2889,6 @@
 UOM Conversion factor is required in row {0},UOM ကူးပြောင်းခြင်းအချက်အတန်း {0} အတွက်လိုအပ်သည်,
 UOM coversion factor required for UOM: {0} in Item: {1},UOM လိုအပ် UOM ဖုံးလွှမ်းအချက်: Item အတွက် {0}: {1},
 URL,URL ကို,
-Unable to find DocType {0},DOCTYPE {0} ကိုရှာဖွေနိုင်ခြင်း,
 Unable to find exchange rate for {0} to {1} for key date {2}. Please create a Currency Exchange record manually,သော့ချက်နေ့စွဲ {2} များအတွက် {1} မှ {0} လဲလှယ်မှုနှုန်းကိုရှာဖွေမပေးနိုင်ပါ။ ကိုယ်တိုင်တစ်ငွေကြေးလဲလှယ်ရေးစံချိန်ဖန်တီး ကျေးဇူးပြု.,
 Unable to find score starting at {0}. You need to have standing scores covering 0 to 100,{0} မှာစတင်ဂိုးသွင်းကိုရှာမရခဲ့ပါ။ သငျသညျ 100 0 ဖုံးအုပ်ရမှတ်ရပ်နေခဲ့ကြရန်လိုအပ်ပါတယ်,
 Unable to find variable: ,variable ကိုရှာတွေ့ဖို့မအောင်မြင်ဘူး:,
@@ -2960,7 +2918,6 @@
 Upload your letter head and logo. (you can edit them later).,သင့်ရဲ့စာကိုဦးခေါင်းနှင့်လိုဂို upload ။ (သင်နောက်ပိုင်းမှာသူတို့ကိုတည်းဖြတ်နိုင်သည်) ။,
 Upper Income,အထက်ဝင်ငွေခွန်,
 Use Sandbox,Sandbox ကိုသုံးပါ,
-Used Leaves,တပတ်ရစ်အရွက်,
 User,အသုံးပြုသူကို,
 User ID,သုံးစွဲသူအိုင်ဒီ,
 User ID not set for Employee {0},အသုံးပြုသူ ID န်ထမ်း {0} သည်စွဲလမ်းခြင်းမ,
@@ -3051,7 +3008,6 @@
 Website Settings,website Settings ကို,
 Wednesday,ဗုဒ္ဓဟူးနေ့,
 Week,ရက်သတ္တပတ်,
-Weekdays,ကြားရက်များ,
 Weekly,ရက်သတ္တပတ်တကြိမ်ဖြစ်သော,
 "Weight is mentioned,\nPlease mention ""Weight UOM"" too","အလေးချိန်ဖော်ပြခဲ့သောဖြစ်ပါတယ်, \ nPlease လွန်း &quot;အလေးချိန် UOM&quot; ဖော်ပြထားခြင်း",
 Welcome email sent,ကြိုဆိုပါတယ်အီးမေးလ်ပို့,
@@ -3072,7 +3028,6 @@
 Work Order {0} must be submitted,အလုပ်အမိန့် {0} တင်သွင်းရမည်ဖြစ်သည်,
 Work Orders Created: {0},အလုပ်အမိန့် Created: {0},
 Work-in-Progress Warehouse is required before Submit,အလုပ်-In-တိုးတက်ရေးပါတီဂိုဒေါင်ခင် Submit လိုအပ်သည်,
-Workflow,အသွားအလာ,
 Working,အလုပ်အဖွဲ့,
 Working Hours,အလုပ်လုပ်နာရီ,
 Workstation,Workstation နှင့်,
@@ -3102,7 +3057,6 @@
 You need to be a user other than Administrator with System Manager and Item Manager roles to register on Marketplace.,သငျသညျ Marketplace တွင်မှတ်ပုံတင်ရန် System ကိုမန်နေဂျာနှင့် Item Manager ကိုအခန်းကဏ္ဍနှင့်အတူအုပ်ချုပ်ရေးမှူးထက်အခြားအသုံးပြုသူတစ်ဦးဖြစ်ဖို့လိုအပ်ပါတယ်။,
 You need to be a user with System Manager and Item Manager roles to add users to Marketplace.,သငျသညျ Marketplace မှအသုံးပြုသူများကိုထည့်သွင်းဖို့အတွက် System Manager ကိုနှင့် Item Manager ကိုအခန်းကဏ္ဍနှင့်အတူအသုံးပြုသူတစ်ဦးဖြစ်ဖို့လိုအပ်ပါတယ်။,
 You need to be a user with System Manager and Item Manager roles to register on Marketplace.,သငျသညျ Marketplace တွင်မှတ်ပုံတင်ရန် System ကိုမန်နေဂျာနှင့် Item Manager ကိုအခန်းကဏ္ဍနှင့်အတူအသုံးပြုသူတစ်ဦးဖြစ်ဖို့လိုအပ်ပါတယ်။,
-You need to be logged in to access this page,သင်ဤစာမကျြနှာကိုဝင်ရောက်ဖို့အတွက် logged ခံရဖို့လိုအပ်,
 You need to enable Shopping Cart,သင်ကစျေးဝယ်ခြင်းတွန်းလှည်း enable ရန်လိုအပ်သည်,
 You will lose records of previously generated invoices. Are you sure you want to restart this subscription?,သင်ယခင်ကထုတ်ပေးငွေတောင်းခံလွှာ၏မှတ်တမ်းများကိုဆုံးရှုံးပါလိမ့်မယ်။ သင်ဤ subscription ကိုပြန်လည်စတင်ရန်ချင်သင်သေချာပါသလား?,
 Your Organization,သင့်ရဲ့အဖွဲ့,
@@ -3218,7 +3172,6 @@
 Assigned To,ရန်တာဝန်ပေး,
 Chat,chat,
 Completed By,အားဖြင့်ပြီးစီး,
-County,ကောင်တီ,
 Day of Week,အပတ်၏နေ့,
 "Dear System Manager,","ချစ်ခင်လေးစားရပါသောစနစ်မန်နေဂျာ,",
 Default Value,default တန်ဖိုး,
@@ -3229,31 +3182,21 @@
 Fieldtype,Fieldtype,
 Help Articles,အကူအညီဆောင်းပါးများ,
 ID,ID ကို,
-Images,images ကို,
 Import,တင်သွင်း,
 Language,ဘာသာစကား,
 Likes,အကြိုက်များ,
 Merge with existing,လက်ရှိအတူ merge,
-Office,ရုံး,
 Orientation,အရှေ့တိုင်းဆန်,
 Parent,မိဘ,
-Passive,မလှုပ်မရှားနေသော,
 Payment Failed,ငွေပေးချေမှုရမည့်မအောင်မြင်ခဲ့ပါ,
-Permanent,အမြဲတမ်း,
 Personal,ပုဂ္ဂိုလ်ရေး,
-Plant,စက်ရုံ,
 Post,တိုင်,
-Postal,စာတိုက်,
 Postal Code,စာတိုက်သင်္ကေတ,
-Previous,လွန်ခဲ့သော,
 Provider,provider,
 Read Only,သာလျှင် Read,
 Recipient,လက်လံသူ,
 Reviews,reviews,
 Sender,ပေးပို့သူ,
-Shop,ကုန်ဆိုင်,
-Subsidiary,ထောက်ခံသောကုမ္ပဏီ,
-There is some problem with the file url: {0},ဖိုင်ကို url နှင့်အတူအချို့သောပြဿနာကိုလည်းရှိ၏: {0},
 There were errors while sending email. Please try again.,အီးမေးလ်ပို့သည့်အနေဖြင့်အမှားများရှိကြ၏။ ထပ်ကြိုးစားပါ။,
 Values Changed,Changed တန်ဖိုးများ,
 or,(သို့),
@@ -3280,19 +3223,16 @@
 Quality Feedback Template,အရည်အသွေးတုံ့ပြန်ချက် Template ကို,
 Rules for applying different promotional schemes.,ကွဲပြားခြားနားသောပရိုမိုးရှင်းအစီအစဉ်များလျှောက်ထားမှုအတွက်စည်းကမ်းများ။,
 Show {0},Show ကို {0},
-"Special Characters except '-', '#', '.', '/', '{{' and '}}' not allowed in naming series {0}","မှလွဲ. အထူးဇာတ်ကောင် &quot;-&quot; &quot;။ &quot;, &quot;#&quot;, &quot;/&quot;, &quot;{{&quot; နှင့် &quot;}}&quot; စီးရီးနာမည်အတွက်ခွင့်မပြု {0}",
 Target Details,ပစ်မှတ်အသေးစိတ်,
 {0} already has a Parent Procedure {1}.,{0} ပြီးသားမိဘလုပ်ထုံးလုပ်နည်း {1} ရှိပါတယ်။,
 API,API ကို,
 Annual,နှစ်ပတ်လည်,
 Change,ပွောငျးလဲခွငျး,
 Contact Email,ဆက်သွယ်ရန်အီးမေးလ်,
-Export Type,ပို့ကုန်အမျိုးအစား,
 From Date,နေ့စွဲကနေ,
 Group By,အုပ်စုလိုက်,
 Invalid URL,မှားနေသော URL ကို,
 Landscape,ရှုခင်း,
-Last Sync On,နောက်ဆုံး Sync ကိုတွင်,
 Naming Series,စီးရီးအမည်,
 No data to export,တင်ပို့ဖို့ဒေတာကိုအဘယ်သူမျှမ,
 Portrait,ပုံတူ,
@@ -3302,7 +3242,6 @@
 Show Document,Show ကိုစာရွက်စာတမ်း,
 Show Traceback,Show ကို Traceback,
 Video,ဗီဒီယိုကို,
-Webhook Secret,Webhook လျှို့ဝှက်ချက်,
 % Of Grand Total,Grand စုစုပေါင်း၏%,
 <b>Company</b> is a mandatory filter.,<b>ကုမ္ပဏီသည်</b> မဖြစ်မနေလိုအပ်သော filter တစ်ခုဖြစ်သည်။,
 <b>From Date</b> is a mandatory filter.,<b>နေ့စွဲမှစ</b> ။ မဖြစ်မနေ filter ကိုဖြစ်ပါတယ်။,
@@ -3358,7 +3297,6 @@
 BOM Comparison Tool,BOM နှိုင်းယှဉ် Tool ကို,
 BOM recursion: {0} cannot be child of {1},BOM မှပြန်လည်လုပ်ဆောင်ခြင်း - {0} {1} ၏ကလေးမဖြစ်နိုင်ပါ,
 BOM recursion: {0} cannot be parent or child of {1},BOM တဲ့ request: {0} {1} ၏မိဘသို့မဟုတ်ကလေးကမဖွစျနိုငျ,
-Back to Home,အိမ်ပြန်ဖို့,
 Back to Messages,နောက်ကျောကိုမက်ဆေ့ခ်ျမှ,
 Bank Data mapper doesn't exist,ဘဏ်ဒေတာများကို mapper မတည်ရှိပါဘူး,
 Bank Details,ဘဏ်အသေးစိတ်,
@@ -3420,7 +3358,6 @@
 Currency,ငှေကွေး,
 Current Status,လက်ရှိအဆင့်အတန်း,
 Customer PO,ဖောက်သည် PO,
-Customize,Customize,
 Daily,နေ့စဉ်,
 Date,နေ့စှဲ,
 Date of Birth cannot be greater than Joining Date.,မွေးသက္ကရာဇ်သည်လာရောက်ပူးပေါင်းသည့်နေ့ထက်ကြီးနိုင်သည်။,
@@ -3454,7 +3391,6 @@
 ERPNext could not find any matching payment entry,ERPNext မဆိုကိုက်ညီခြင်းငွေပေးချေမှု entry ကိုရှာမတွေ့ပါ,
 Earliest Age,အစောဆုံးခေတ်,
 Edit Details,Edit ကိုအသေးစိတ်,
-Edit Profile,Edit Profile,
 Either GST Transporter ID or Vehicle No is required if Mode of Transport is Road,ပို့ဆောင်ရေး Mode ကိုလမ်းမပါလျှင် GST Transporter ID သို့မဟုတ်ယာဉ်အဘယ်သူမျှမဖြစ်စေလိုအပ်,
 Email,အီးမေး,
 Email Campaigns,အီးမေးလ်ပို့ရန်ကမ်ပိန်းများ,
@@ -3482,7 +3418,6 @@
 Fetch Items from Warehouse,ကုန်လှောင်ရုံမှပစ္စည်းများရယူပါ,
 Fetching...,ရယူ ...,
 Field,လယ်ယာ,
-File Manager,ဖိုင်မန်နေဂျာ,
 Filters,စိစစ်မှုများ,
 Finding linked payments,ဆက်နွယ်နေငွေပေးချေရှာဖွေခြင်း,
 Fleet Management,ရေယာဉ်စုစီမံခန့်ခွဲမှု,
@@ -3521,7 +3456,6 @@
 Incorrect Warehouse,မှားသောဂိုဒေါင်,
 Invalid Barcode. There is no Item attached to this barcode.,မမှန်ကန်သောဘားကုဒ် ဒီဘားကုဒ်နှင့်တွဲထားသည့်ပစ္စည်းမရှိပါ။,
 Invalid credentials,မှားနေသောအထောက်အထားများ,
-Invite as User,အသုံးပြုသူအဖြစ် Invite,
 Issue Priority.,ပြဿနာဦးစားပေး။,
 Issue Type.,ပြဿနာအမျိုးအစား။,
 "It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","ဒါဟာဆာဗာ၏အစင်း configuration နဲ့အတူပြဿနာရှိကွောငျးပုံရသည်။ ကျရှုံးခြင်း၏အမှု၌, ပမာဏကိုသင့်အကောင့်ပြန်အမ်းရပါလိမ့်မယ်။",
@@ -3564,7 +3498,6 @@
 New Invoice,နယူးငွေတောင်းခံလွှာ,
 New Payment,နယူးငွေပေးချေမှုရမည့်,
 New release date should be in the future,နယူးလွှတ်ပေးရန်နေ့စွဲအနာဂတ်၌ဖြစ်သင့်,
-Newsletter,သတင်းလွှာ,
 No Account matched these filters: {},အဘယ်သူမျှမအကောင့်ကိုအဲဒီ filters တွေကိုလိုက်ဖက်: {},
 No communication found.,ဆက်သွယ်ရေးမတွေ့ပါ။,
 No correct answer is set for {0},အဘယ်သူမျှမမှန်ကန်သောအဖြေကို {0} များအတွက်သတ်မှတ်,
@@ -3640,7 +3573,6 @@
 Please setup a default bank account for company {0},ကုမ္ပဏီ {0} ဘို့ကျေးဇူးပြုပြီး setup ကိုတစ်ဦးက default ဘဏ်အကောင့်,
 Please specify,သတ်မှတ် ကျေးဇူးပြု.,
 Please specify a {0},ကျေးဇူးပြုပြီး {0} ကိုသတ်မှတ်ပေးပါ။,lead
-Printing,ပုံနှိပ်ခြင်း,
 Priority,ဦးစားပေး,
 Priority has been changed to {0}.,ဦးစားပေး {0} သို့ပြောင်းလဲခဲ့သည်။,
 Priority {0} has been repeated.,ဦးစားပေး {0} ထပ်ခါတလဲလဲခဲ့သည်။,
@@ -3649,7 +3581,6 @@
 Project,စီမံကိန်း,
 Provide the academic year and set the starting and ending date.,ယင်းပညာသင်နှစ်တွင်ပေးနှင့်စတင်နှင့်အဆုံးသတ်ရက်စွဲထားကြ၏။,
 Public token is missing for this bank,ပြည်သူ့လက္ခဏာသက်သေဤဘဏ်အဘို့အပျောက်နေ,
-Publish,ပုံနှိပ်ထုတ်ဝေ,
 Publish 1 Item,1 Item Publish,
 Publish Items,ပစ္စည်းများ Publish,
 Publish More Items,ပိုပစ္စည်းများ Publish,
@@ -3677,7 +3608,6 @@
 Reconciled,ပွနျလညျသငျ့မွ,
 Recruitment,်ထမ်းခေါ်ယူမှု,
 Red,နီသော,
-Refreshing,လန်းဆန်း,
 Release date must be in the future,ဖြန့်ချိသည့်ရက်စွဲအနာဂတ်၌ဖြစ်ရပါမည်,
 Relieving Date must be greater than or equal to Date of Joining,ကယ်ဆယ်ရေးနေ့သည် ၀ င်ရောက်သည့်နေ့ထက်ကြီးသည်သို့မဟုတ်တူညီရမည်,
 Rename,Rename,
@@ -3721,7 +3651,6 @@
 Search for a payment,တစ်ဦးငွေပေးချေမှုများအတွက်ရှာဖွေရန်,
 Search for anything ...,ဘာမှရှာရန် ...,
 Search results for,ရှာဖွေမှုရလဒ်များ,
-Select All,အားလုံးကို Select လုပ်ပါ,
 Select Difference Account,Difference အကောင့်ကိုရွေးချယ်ပါ,
 Select a Default Priority.,တစ်ပုံမှန်ဦးစားပေးရွေးချယ်ပါ။,
 Select a company,ကုမ္ပဏီကိုရွေးချယ်ပါ,
@@ -3740,11 +3669,9 @@
 Service Level Agreement has been changed to {0}.,ဝန်ဆောင်မှုအဆင့်သဘောတူညီချက် {0} သို့ပြောင်းလဲခဲ့သည်။,
 Service Level Agreement was reset.,ဝန်ဆောင်မှုအဆင့်သဘောတူညီချက် reset ခဲ့သည်။,
 Service Level Agreement with Entity Type {0} and Entity {1} already exists.,Entity အမျိုးအစား {0} နှင့် Entity {1} ပြီးသားတည်ရှိနှင့်အတူဝန်ဆောင်မှုအဆင့်သဘောတူညီချက်ကို။,
-Set,ထား,
 Set Meta Tags,Meta Tags: Set,
 Set {0} in company {1},ကုမ္ပဏီ {1} တွင် {0} ထားပါ,
 Setup,ပြငိဆငိခနိး,
-Setup Wizard,Setup Wizard,
 Shift Management,Shift စီမံခန့်ခွဲမှု,
 Show Future Payments,အနာဂတ်ငွေချေမှုပြရန်,
 Show Linked Delivery Notes,ချိတ်ဆက်ထားသည့်ပေးပို့မှုမှတ်စုများကိုပြပါ,
@@ -3815,7 +3742,6 @@
 Unreconciled,Unreconciled,
 Unsupported GST Category for E-Way Bill JSON generation,E-Way ကိုဘီလ် JSON မျိုးဆက်များအတွက်မကိုက်ညီသည့် GST Category:,
 Update,Update ကို,
-Update Details,နောက်ဆုံးသတင်းများအသေးစိတ်,
 Update Taxes for Items,ပစ္စည်းများအတွက်အခွန် update လုပ်ပါ,
 "Upload a bank statement, link or reconcile a bank account","ဘဏ်ကြေညာချက် Upload လုပ်ပါ, လင့်တစ်ခုသို့မဟုတ်ဘဏ်အကောင့်ပြန်လည်သင့်မြတ်",
 Upload a statement,ကြေညာချက် Upload လုပ်ပါ,
@@ -3839,7 +3765,6 @@
 XML Files Processed,XML ဖိုင်များလုပ်ငန်းများ၌,
 Year,ခုနှစ်,
 Yearly,နှစ်အလိုက်,
-You,ခင်ဗျား,
 You are not allowed to enroll for this course,သင်ဤသင်တန်းဘို့စာရင်းသွင်းဖို့ခွင့်ပြုခဲ့ကြသည်မဟုတ်,
 You are not enrolled in program {0},သငျသညျအစီအစဉ်ကို {0} စာရင်းသွင်းကြသည်မဟုတ်,
 You can Feature upto 8 items.,သငျသညျ 8 ပစ္စည်းများနူန်းကျော်ကျော်အင်္ဂါရပ်ပေးနိုင်သည်။,
@@ -3856,7 +3781,6 @@
 e-Way Bill already exists for this document,"ဘီလ်ပြီးသားဤစာရွက်စာတမ်းအဘို့တည်ရှိကြောင်း, e-Way ကို",
 woocommerce - {0},woocommerce - {0},
 {0} Coupon used are {1}. Allowed quantity is exhausted,{0} ကူပွန်သည် {1} ဖြစ်သည်။ ခွင့်ပြုထားသောပမာဏကုန်သွားသည်,
-{0} Name,{0} အမည်,
 {0} Operations: {1},{0} စစ်ဆင်ရေး - {၁},
 {0} bank transaction(s) created,created {0} ဘဏ်ငွေပေးငွေယူ (s) ကို,
 {0} bank transaction(s) created and {1} errors,{0} ဘဏ်ငွေပေးငွေယူ (s) ကိုဖန်တီး {1} အမှားများ,
@@ -3875,17 +3799,13 @@
 Total Income,စုစုပေါင်းဝင်ငွေ,
 Total Income This Year,ဒီနှစ်စုစုပေါင်းဝင်ငွေ,
 Barcode,ဘားကုဒ်,
-Bold,ရဲရင့်,
-Center,အလယ်ဗဟို,
 Clear,ရှင်းလင်းသော,
-Comment,မှတ်ချက်,
 Comments,comments,
 DocType,DocType,
 Download,ဒေါင်းလုပ်,
 Left,လက်ဝဲဘက်,
 Link,Link,
 New,အသစ်,
-Not Found,မတွေ့ပါ,
 Print,ပုံနှိပ်ပါ,
 Reference Name,ကိုးကားစရာအမည်,
 Refresh,အားဖြည့်,
@@ -3908,7 +3828,6 @@
 Email Id,အီးမေးလ် ID ကို,
 No,မရှိပါ,
 Reference Doctype,ကိုးကားစရာ Doctype,
-User Id,သုံးစွဲသူအိုင်ဒီ,
 Yes,ဟုတ်ကဲ့,
 Actual ,အမှန်တကယ်,
 Add to cart,စျေးဝယ်ခြင်းထဲသို့ထည့်သည်,
@@ -4304,7 +4223,6 @@
 e.g Adjustments for:,ဥပမာ Adjustments:,
 Section Subtotal,ပုဒ်မစုစုပေါင်း,
 Section Footer,ပုဒ်မ Footer,
-Position,ရာထူး,
 Cash Flow Mapping,ငွေသား Flow မြေပုံ,
 Select Maximum Of 1,1 အများဆုံးကိုရွေးချယ်ပါ,
 Is Finance Cost,ဘဏ္ဍာရေးကုန်ကျစရိတ်ဖြစ်ပါသည်,
@@ -4936,7 +4854,6 @@
 Previous Business Day,ယခင်စီးပွားရေးနေ့,
 Next Business Day,Next ကိုစီးပွားရေးနေ့,
 Urgent,အမြန်လိုသော,
-Crop,အသီးအနှံ,
 Crop Name,သီးနှံအမည်,
 Scientific Name,သိပ္ပံနည်းကျအမည်,
 "You can define all the tasks which need to carried out for this crop here. The day field is used to mention the day on which the task needs to be carried out, 1 being the 1st day, etc.. ","သင်ဒီမှာဒီသီးနှံထွက်သည်ကိုသယ်ဆောင်ဖို့လိုအပ်သမျှတာဝန်များကိုသတ်မှတ်နိုင်ပါတယ်။ အဆိုပါနေ့ကလယ်ကွင်းစသည်တို့ကို, 1 1st နေ့ကဖြစ်ခြင်း, task ကိုထွက်သယ်ဆောင်ရန်လိုအပ်ပါသည်သောနေ့ကိုဖော်ပြထားခြင်းအသုံးပြုသည် ..",
@@ -5441,7 +5358,6 @@
 To TIme,အချိန်မှ,
 Course End Date,သင်တန်းပြီးဆုံးရက်စွဲ,
 Course Topic,သင်တန်းခေါင်းစဉ်,
-Topic,အကွောငျး,
 Topic Name,ခေါင်းစဉ်အမည်,
 Education Settings,ပညာရေးကိုဆက်တင်,
 Current Academic Year,လက်ရှိပညာရေးဆိုင်ရာတစ်နှစ်တာ,
@@ -5516,7 +5432,6 @@
 Check this if the Student is residing at the Institute's Hostel.,ကျောင်းသားသမဂ္ဂဟာအင်စတီကျုရဲ့ဘော်ဒါဆောင်မှာနေထိုင်လျှင်ဒီစစ်ဆေးပါ။,
 Walking,လမ်းလျှောက်,
 Institute's Bus,အင်စတီကျုရဲ့ဘတ်စ်ကား,
-Public Transport,ပြည်သူ့ပို့ဆောင်ရေး,
 Self-Driving Vehicle,self-မောင်းနှင်ယာဉ်,
 Pick/Drop by Guardian,ဂါးဒီးယန်းသတင်းစာများက / Drop Pick,
 Enrolled courses,စာရင်းသွင်းသင်တန်းများ,
@@ -5697,7 +5612,6 @@
 Default Cost Center,default ကုန်ကျစရိတ် Center က,
 Undeposited Funds Account,Undeposited ရန်ပုံငွေများအကောင့်,
 Shopify Log,Shopify Log in ဝင်ရန်,
-Request Data,တောင်းဆိုမှုမှာ Data,
 Shopify Settings,Shopify Settings များ,
 status html,status ကို html,
 Enable Shopify,Shopify Enable,
@@ -5817,7 +5731,6 @@
 Exercise Instructions,လေ့ကျင့်ခန်းညွှန်ကြားချက်များ,
 Exercise Video,ဗီဒီယိုလေ့ကျင့်ပါ,
 Exercise Steps,လေ့ကျင့်ခန်းအဆင့်များ,
-Steps,အဆင့်များ,
 Steps Table,အဆင့်များဇယား,
 Exercise Type Step,လေ့ကျင့်ခန်းအမျိုးအစားအဆင့်,
 Max number of visit,ခရီးစဉ်၏မက်စ်အရေအတွက်က,
@@ -6001,7 +5914,6 @@
 Patient Encounter Symptom,လူနာကြုံတွေ့ရသည့်ရောဂါလက္ခဏာ,
 HLC-PMR-.YYYY.-,ဆဆ-PMR-.YYYY.-,
 Attach Medical Record,ဆေးမှတ်တမ်းကိုပူးတွဲပါ,
-Reference DocType,ကိုးကားစရာ DOCTYPE,
 Spouse,ဇနီး,
 Family,မိသားစု,
 Schedule Details,အချိန်ဇယားအသေးစိတ်,
@@ -6983,16 +6895,8 @@
 HTML / Banner that will show on the top of product list.,ထုတ်ကုန်စာရင်း၏ထိပ်ပေါ်မှာပြလတံ့သောက HTML / Banner ။,
 Set prefix for numbering series on your transactions,သင့်ရဲ့ငွေကြေးလွှဲပြောင်းအပေါ်စီးရီးဦးရေသည်ရှေ့ဆက် Set,
 Setup Series,Setup ကိုစီးရီး,
-Select Transaction,Transaction ကိုရွေးပါ,
-Help HTML,HTML ကိုကူညီပါ,
-Series List for this Transaction,ဒီ Transaction သည်စီးရီးများစာရင်း,
-User must always select,အသုံးပြုသူအမြဲရွေးချယ်ရမည်,
-Check this if you want to force the user to select a series before saving. There will be no default if you check this.,သင်ချွေတာရှေ့တော်၌စီးရီးကိုရွေးဖို့ user ကိုတွန်းအားပေးချင်တယ်ဆိုရင်ဒီစစ်ဆေးပါ။ သင်သည်ဤစစ်ဆေးလျှင်အဘယ်သူမျှမက default ရှိပါတယ်ဖြစ်လိမ့်မည်။,
 Update Series,Update ကိုစီးရီး,
 Change the starting / current sequence number of an existing series.,ရှိပြီးသားစီးရီး၏စတင်ကာ / လက်ရှိ sequence number ကိုပြောင်းပါ။,
-Prefix,ရှေ့ဆကျတှဲ,
-This is the number of the last created transaction with this prefix,ဤရှေ့ဆက်အတူပြီးခဲ့သည့်နေသူများကဖန်တီးအရောင်းအဝယ်အရေအတွက်သည်,
-Update Series Number,Update ကိုစီးရီးနံပါတ်,
 Quotation Lost Reason,စျေးနှုန်းပျောက်ဆုံးသွားသောအကြောင်းရင်း,
 A third party distributor / dealer / commission agent / affiliate / reseller who sells the companies products for a commission.,ကော်မရှင်များအတွက်ကုမ္ပဏီများကထုတ်ကုန်ရောင်းချတဲ့သူတစ်ဦးကိုတတိယပါတီဖြန့်ဖြူး / အရောင်း / ကော်မရှင်အေးဂျင့် / Affiliate / ပြန်လည်ရောင်းချသူ။,
 Sales Partner Name,အရောင်း Partner အမည်,
@@ -7687,7 +7591,6 @@
 Warehouse wise Item Balance Age and Value,ဂိုဒေါင်ပညာရှိသ Item Balance ခေတ်နှင့်တန်ဖိုး,
 Work Order Stock Report,အမိန့်စတော့အိတ်အစီရင်ခံစာအလုပ်မလုပ်,
 Work Orders in Progress,တိုးတက်မှုအတွက်အလုပ်အမိန့်,
-Validation Error,Validation အမှား,
 Automatically Process Deferred Accounting Entry,အလိုအလျှောက်ရွှေ့ဆိုင်းစာရင်းကိုင် Entry,
 Bank Clearance,ဘဏ်ရှင်းလင်းမှု,
 Bank Clearance Detail,ဘဏ်ရှင်းလင်းမှုအသေးစိတ်,
@@ -7724,45 +7627,7 @@
 Therapy Plan: ,ကုထုံးအစီအစဉ်:,
 Total Counts Targeted: ,လျာထားသောစုစုပေါင်းအရေအတွက်:,
 Total Counts Completed: ,ပြီးစီးသည့်အရေအတွက် -,
-Andaman and Nicobar Islands,ကပ္ပလီနှင့်နီကိုဘာကျွန်းများ,
-Andhra Pradesh,Andhra Pradesh,
-Arunachal Pradesh,Arunachal Pradesh,
-Assam,အာသံ,
-Bihar,Bihar,
-Chandigarh,Chandigarh,
-Chhattisgarh,Chhattisgarh,
-Dadra and Nagar Haveli,Dadra နှင့်နဂါး Haveli,
-Daman and Diu,Daman နှင့် Diu,
-Delhi,ဒေလီ,
-Goa,Goa,
-Gujarat,ဂူဂျာရတ်,
-Haryana,Haryana,
-Himachal Pradesh,Himachal Pradesh,
-Jammu and Kashmir,Jammu နှင့်ကက်ရှမီးယား,
-Jharkhand,Jharkhand,
-Karnataka,Karnataka,
-Kerala,ကုလား,
-Lakshadweep Islands,Lakshadweep ကျွန်းများ,
-Madhya Pradesh,Madhya Pradesh,
-Maharashtra,မဟာရပ်ရှ,
-Manipur,မဏိပူရ,
-Meghalaya,Meghalaya,
-Mizoram,မီဇိုရမ်,
-Nagaland,နာဂ,
-Odisha,Odisha,
-Other Territory,အခြားနယ်မြေ,
-Pondicherry,ရေနံချောင်း,
-Punjab,ပန်ဂျပ်,
-Rajasthan,Rajasthan,
-Sikkim,ဆစ်ကင်း,
-Tamil Nadu,တမီးလ်နာဒူး,
-Telangana,Telangana,
-Tripura,သီရိ,
-Uttar Pradesh,Uttar Pradesh ပြည်နယ်,
-Uttarakhand,Uttarakhand,
-West Bengal,အနောက်ဘင်္ဂလား,
 Is Mandatory,မသင်မနေရဖြစ်ပါတယ်,
-Published on,အပေါ်ထုတ်ဝေသည်,
 Service Received But Not Billed,ဝန်ဆောင်မှုလက်ခံရရှိသော်လည်းငွေတောင်းခံလွှာမရှိပါ,
 Deferred Accounting Settings,ရက်ရွှေ့ဆိုင်းစာရင်းကိုင် settings ကို,
 Book Deferred Entries Based On,စာအုပ်အပေါ်အခြေခံပြီးရက်ရွှေ့ဆိုင်း Entries,
@@ -8035,8 +7900,6 @@
 Worksheet Instructions,Worksheet ညွှန်ကြားချက်များ,
 Result Legend Print,ဒဏ္Printာရီပုံနှိပ်ခြင်းရလဒ်,
 Print Position,ရာထူးပုံနှိပ်,
-Bottom,အောက်,
-Top,ထိပ်ဆုံး,
 Both,နှစ်ခုလုံး,
 Result Legend,Legend ရလဒ်,
 Lab Tests,ဓာတ်ခွဲခန်းစမ်းသပ်မှု,
@@ -8081,12 +7944,10 @@
 Approvers,ခွင့်ပြုချက်,
 The first Approver in the list will be set as the default Approver.,စာရင်းထဲတွင်ပထမအတည်ပြုချက်ကိုမူလအတည်ပြုချက်အဖြစ်သတ်မှတ်မည်။,
 Shift Request Approver,Shift Request Approver,
-PAN Number,PAN နံပါတ်,
 Provident Fund Account,Provident ရန်ပုံငွေအကောင့်,
 MICR Code,MICR ကုဒ်,
 Repay unclaimed amount from salary,မတောင်းဆိုသောငွေကိုလစာမှပြန်ပေးပါ,
 Deduction from salary,လစာမှနှုတ်ယူခြင်း,
-Expired Leaves,သက်တမ်းကုန်ဆုံးသောအရွက်,
 If this is not checked the loan by default will be considered as a Demand Loan,အကယ်၍ ၎င်းကိုမစစ်ဆေးပါကပုံမှန်အားဖြင့်ချေးငွေကို Demand Loan အဖြစ်သတ်မှတ်မည်,
 This account is used for booking loan repayments from the borrower and also disbursing loans to the borrower,ဒီအကောင့်ကိုငွေချေးသူထံမှချေးငွေပြန်ဆပ်မှုကိုကြိုတင်မှာကြားပြီးငွေချေးသူမှချေးငွေများထုတ်ပေးသည်,
 This account is capital account which is used to allocate capital for loan disbursal account ,ဤအကောင့်သည်ငွေရင်းငွေစာရင်းဖြစ်သည်,
@@ -8844,3 +8705,41 @@
 Creating Purchase Order ...,ဝယ်ယူမှုအမိန့်ကိုဖန်တီးခြင်း ...,
 "Select a Supplier from the Default Suppliers of the items below. On selection, a Purchase Order will be made against items belonging to the selected Supplier only.",အောက်ဖော်ပြပါပစ္စည်းများ၏ပုံမှန်ပေးသွင်းသူထံမှပေးသွင်းရွေးချယ်ပါ။ ရွေးချယ်မှုတွင်ရွေးချယ်ထားသောပေးသွင်းသူနှင့်သာသက်ဆိုင်သောပစ္စည်းများကိုသာ ၀ ယ်ရန်အမိန့်ပေးလိမ့်မည်။,
 Row #{}: You must select {} serial numbers for item {}.,Row # {} - item {} အတွက်နံပါတ်စဉ်ဆက်ရွေးပါ။,
+Add Comment,မှတ်ချက်လေး,
+More...,နောက်ထပ်...,
+Notes,မှတ်စုများ,
+Payment Gateway,ငွေပေးချေမှုရမည့် Gateway မှာ,
+Payment Gateway Name,ငွေပေးချေမှုရမည့် Gateway မှာအမည်,
+Payments,ငွေပေးချေမှု,
+Plan Name,plan ကိုအမည်,
+Portal,portal,
+Scan Barcode,scan ကိုဘားကုဒ်,
+Some information is missing,တချို့ကသတင်းအချက်အလက်ပျောက်ဆုံးနေ,
+Successful,အောင်မြင်သော,
+Tools,Tools များ,
+Use Sandbox,Sandbox ကိုသုံးပါ,
+Busy,အလုပ်ရှုပ်သည်,
+Completed By,အားဖြင့်ပြီးစီး,
+Payment Failed,ငွေပေးချေမှုရမည့်မအောင်မြင်ခဲ့ပါ,
+Column {0},ကော်လံ {0},
+Field Mapping,ကွင်းဆင်းမြေပုံ,
+Not Specified,မသတ်မှတ်ထားပါ,
+Update Type,Update ကိုအမျိုးအစား,
+Dr,ဒေါက်တာ,
+End Time,အဆုံးအချိန်,
+Fetching...,ရယူ ...,
+"It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","ဒါဟာဆာဗာ၏အစင်း configuration နဲ့အတူပြဿနာရှိကွောငျးပုံရသည်။ ကျရှုံးခြင်း၏အမှု၌, ပမာဏကိုသင့်အကောင့်ပြန်အမ်းရပါလိမ့်မယ်။",
+Looks like someone sent you to an incomplete URL. Please ask them to look into it.,သင်တစ်ဦးမပြည့်စုံ URL ကိုစလှေတျတစ်စုံတစ်ဦးနဲ့တူလှပါတယ်။ စကြည့်ဖို့သူတို့ကိုမေးမြန်းပါ။,
+Master,master,
+Pay,အခပေး,
+You can also copy-paste this link in your browser,သင်သည်လည်း copy-paste နိုင်ပါတယ်ဒီ link သင့်ရဲ့ browser မှာ,
+Verified By,By Verified,
+Invalid naming series (. missing) for {0},{0} အတွက်မမှန်ကန်သောအမည်စီးရီး (။ ပျောက်ဆုံးနေ),
+Phone Number,ဖုန်းနံပါတ်,
+Account SID,အကောင့် SID,
+Global Defaults,ဂလိုဘယ် Defaults ကို,
+Is Mandatory,မသင်မနေရဖြစ်ပါတယ်,
+WhatsApp,နင်,
+Make a call,ခေါ်ဆိုပါ,
+Approve,အတည်ပြု,
+Reject,ပယ်ချ,
diff --git a/erpnext/translations/nl.csv b/erpnext/translations/nl.csv
index 96d1770..ad11eae 100644
--- a/erpnext/translations/nl.csv
+++ b/erpnext/translations/nl.csv
@@ -113,7 +113,6 @@
 Add Items,Items toevoegen,
 Add Leads,Leads toevoegen,
 Add Multiple Tasks,Meerdere taken toevoegen,
-Add Row,Voeg een rij toe,
 Add Sales Partners,Voeg verkooppartners toe,
 Add Serial No,Voeg Serienummer toe,
 Add Students,Studenten toevoegen,
@@ -211,9 +210,7 @@
 An error occurred during the update process,Er is een fout opgetreden tijdens het updateproces,
 "An item exists with same name ({0}), please change the item group name or rename the item","Een item bestaat met dezelfde naam ( {0} ) , wijzigt u de naam van het item groep of hernoem het item",
 Analyst,analist,
-Analytics,Analytics,
 Annual Billing: {0},Jaarlijkse Billing: {0},
-Anonymous,Anoniem,
 Another Budget record '{0}' already exists against {1} '{2}' and account '{3}' for fiscal year {4},Een ander budgetrecord &#39;{0}&#39; bestaat al voor {1} &#39;{2}&#39; en account &#39;{3}&#39; voor het fiscale jaar {4},
 Another Period Closing Entry {0} has been made after {1},Een ander Periode sluitpost {0} is gemaakt na {1},
 Another Sales Person {0} exists with the same Employee id,Een andere Sales Person {0} bestaat met dezelfde werknemer id,
@@ -283,14 +280,12 @@
 Attendance not submitted for {0} as {1} on leave.,Aanwezigheid niet ingediend voor {0} als {1} bij verlof.,
 Attribute table is mandatory,Attributentabel is verplicht,
 Attribute {0} selected multiple times in Attributes Table,Kenmerk {0} meerdere keren geselecteerd in Attributes Tabel,
-Author,Auteur,
 Authorized Signatory,Geautoriseerd ondertekenaar,
 Auto Material Requests Generated,Auto Materiaal Verzoeken Vernieuwd,
 Auto Repeat,Auto herhalen,
 Auto repeat document updated,Automatisch herhaalde document bijgewerkt,
 Automotive,Automotive,
 Available,Beschikbaar,
-Available Leaves,Beschikbare bladeren,
 Available Qty,Beschikbaar aantal,
 Available Selling,Beschikbare verkoop,
 Available for use date is required,Beschikbaar voor gebruik datum is vereist,
@@ -340,7 +335,6 @@
 Base URL,Basis-URL,
 Based On,Gebaseerd op,
 Based On Payment Terms,Op basis van betalingsvoorwaarden,
-Basic,Basis,
 Batch,Partij,
 Batch Entries,Batchvermeldingen,
 Batch ID is mandatory,Batch ID is verplicht,
@@ -361,7 +355,6 @@
 Billable Hours,Factureerbare uren,
 Billed,gefactureerd,
 Billed Amount,Gefactureerd bedrag,
-Billing,Facturering,
 Billing Address,Factuuradres,
 Billing Address is same as Shipping Address,Factuuradres is hetzelfde als verzendadres,
 Billing Amount,Factuurbedrag,
@@ -560,7 +553,6 @@
 Consumed Qty,Verbruikt aantal,
 Consumer Products,Consumentenproducten,
 Contact,Contact,
-Contact Details,Contactgegevens,
 Contact Us,Neem contact met ons op,
 Content,Inhoud,
 Content Masters,Content Masters,
@@ -715,7 +707,6 @@
 Date of Joining,Datum van indiensttreding,
 Date of Joining must be greater than Date of Birth,Datum van indiensttreding moet groter zijn dan geboortedatum,
 Date of Transaction,Transactiedatum,
-Datetime,Datetime,
 Day,Dag,
 Debit,Debet,
 Debit ({0}),Debet ({0}),
@@ -874,7 +865,6 @@
 Employee cannot report to himself.,Werknemer kan niet rapporteren aan zichzelf.,
 Employee {0} has already applied for {1} between {2} and {3} : ,Werknemer {0} heeft al een aanvraag ingediend voor {1} tussen {2} en {3}:,
 Employee {0} of grade {1} have no default leave policy,Werknemer {0} van rang {1} heeft geen standaard verlofbeleid,
-Enable,in staat stellen,
 Enable / disable currencies.,In- / uitschakelen valuta .,
 Enabled,Ingeschakeld,
 "Enabling 'Use for Shopping Cart', as Shopping Cart is enabled and there should be at least one Tax Rule for Shopping Cart","Inschakelen &quot;Gebruik voor Winkelwagen &#39;, zoals Winkelwagen is ingeschakeld en er moet minstens één Tax Rule voor Winkelwagen zijn",
@@ -905,7 +895,6 @@
 Error: Not a valid id?,Fout: geen geldig id?,
 Estimated Cost,Geschatte kosten,
 "Even if there are multiple Pricing Rules with highest priority, then following internal priorities are applied:","Als er meerdere Prijsbepalings Regels zijn met de hoogste prioriteit, dan wordt de volgende interene prioriteit gehanteerd:",
-Event,Evenement,
 Exchange Gain/Loss,Exchange winst / verlies,
 Exchange Rate Revaluation master.,Koers herwaarderingsmeester.,
 Exchange Rate must be same as {0} {1} ({2}),Wisselkoers moet hetzelfde zijn als zijn {0} {1} ({2}),
@@ -1032,7 +1021,6 @@
 From value must be less than to value in row {0},Van waarde moet minder zijn dan waarde in rij {0},
 From {0} | {1} {2},Van {0} | {1} {2},
 Fulfillment,Vervulling,
-Full,vol,
 Full Name,Volledige naam,
 Fully Depreciated,volledig is afgeschreven,
 Furnitures and Fixtures,Meubels en Wedstrijden,
@@ -1133,7 +1121,6 @@
 Hub Sync ID,Hub Sync ID,
 Human Resource,Human Resource,
 Human Resources,Human Resources,
-IFSC Code,IFSC-code,
 IGST Amount,IGST Bedrag,
 IP Address,IP adres,
 ITC Available (whether in full op part),ITC beschikbaar (al dan niet volledig),
@@ -1185,7 +1172,6 @@
 Ineligible ITC,Niet in aanmerking komende ITC,
 Initiated,geïnitieerd,
 Inpatient Record,Inpatient Record,
-Insert,Plaats,
 Installation Note,Installatie opmerking,
 Installation Note {0} has already been submitted,Installatie Opmerking {0} is al ingediend,
 Installation date cannot be before delivery date for Item {0},De installatie mag niet vóór leveringsdatum voor post {0},
@@ -1197,7 +1183,6 @@
 Insurance Start date should be less than Insurance End date,Insurance Startdatum moet kleiner zijn dan de verzekering einddatum,
 Integrated Tax,Geïntegreerde belasting,
 Inter-State Supplies,Leveringen tussen staten,
-Interests,Interesses,
 Internet Publishing,internet Publishing,
 Intra-State Supplies,Leveringen binnen de staat,
 Introduction,Introductie,
@@ -1316,7 +1301,6 @@
 Lab testing datetime cannot be before collection datetime,Labetesten van datetime kan niet vóór verzameling datetime zijn,
 Label,Label,
 Laboratory,Laboratorium,
-Language Name,Taalnaam,
 Large,Groot,
 Last Communication,Laatste communicatie,
 Last Communication Date,Laatste Communicatie Datum,
@@ -1347,8 +1331,6 @@
 Letter Heads for print templates.,Briefhoofden voor print sjablonen.,
 Level,Niveau,
 Liability,Verplichting,
-License,Licentie,
-Limit,Begrenzing,
 Limit Crossed,Limit Crossed,
 Link to Material Request,Link naar artikelaanvraag,
 List of all share transactions,Lijst met alle aandelentransacties,
@@ -1359,7 +1341,6 @@
 Loans (Liabilities),Leningen (Passiva),
 Loans and Advances (Assets),Leningen en voorschotten (activa),
 Local,lokaal,
-Log,Log,
 Logs for maintaining sms delivery status,Logs voor het behoud van sms afleverstatus,
 Lost,Verloren,
 Lost Reasons,Verloren redenen,
@@ -1445,7 +1426,6 @@
 Medical Department,Medische afdeling,
 Medical Record,Medisch dossier,
 Medium,Medium,
-Meeting,Vergadering,
 Member Activity,Ledenactiviteit,
 Member ID,Gebruikers ID,
 Member Name,Lid Naam,
@@ -1495,7 +1475,6 @@
 Multiple Variants,Meerdere varianten,
 Multiple fiscal years exist for the date {0}. Please set company in Fiscal Year,Meerdere fiscale jaar bestaan voor de datum {0}. Stel onderneming in het fiscale jaar,
 Music,muziek,
-My Account,Mijn Account,
 Name error: {0},Naam fout: {0},
 Name of new Account. Note: Please don't create accounts for Customers and Suppliers,De naam van de nieuwe account. Let op: Gelieve niet goed voor klanten en leveranciers te creëren,
 Name or Email is mandatory,Naam of E-mail is verplicht,
@@ -1538,7 +1517,6 @@
 New credit limit is less than current outstanding amount for the customer. Credit limit has to be atleast {0},New kredietlimiet lager is dan de huidige uitstaande bedrag voor de klant. Kredietlimiet moet minstens zijn {0},
 New task,Nieuwe taak,
 New {0} pricing rules are created,Nieuwe {0} prijsregels worden gemaakt,
-Newsletters,nieuwsbrieven,
 Newspaper Publishers,Kranten Uitgeverijen,
 Next,volgende,
 Next Contact By cannot be same as the Lead Email Address,Volgende Contact Door het kan niet hetzelfde zijn als de Lead e-mailadres,
@@ -1686,7 +1664,6 @@
 Other,Ander,
 Other Reports,Andere rapporten,
 "Other outward supplies(Nil rated,Exempted)","Andere uitgaande leveringen (nul, vrijgesteld)",
-Others,anderen,
 Out Qty,out Aantal,
 Out Value,out Value,
 Out of Order,Out of Order,
@@ -1726,7 +1703,6 @@
 Party Type and Party is mandatory for {0} account,Feesttype en feest is verplicht voor {0} account,
 Party Type is mandatory,Party Type is verplicht,
 Party is mandatory,Party is verplicht,
-Password,Wachtwoord,
 Past Due Date,Verstreken einddatum,
 Patient,Patient,
 Patient Appointment,Patient Afspraak,
@@ -1784,7 +1760,6 @@
 Pharmaceutical,farmaceutisch,
 Pharmaceuticals,Farmacie,
 Physician,Arts,
-Pincode,Pincode,
 Place Of Supply (State/UT),Plaats van levering (staat / UT),
 Place Order,Plaats bestelling,
 Plan Name,Plan naam,
@@ -1896,7 +1871,6 @@
 Please select date,Kies een datum,
 Please select item code,Selecteer artikelcode,
 Please select month and year,Selecteer maand en jaar,
-Please select prefix first,Selecteer eerst een voorvoegsel,
 Please select the Company,Selecteer het bedrijf,
 Please select the Multiple Tier Program type for more than one collection rules.,Selecteer het Multiple Tier-programmatype voor meer dan één verzamelregel.,
 Please select the assessment group other than 'All Assessment Groups',Selecteer de beoordelingsgroep anders dan &#39;Alle beoordelingsgroepen&#39;,
@@ -1913,7 +1887,6 @@
 Please set Company filter blank if Group By is 'Company',Stel alsjeblieft Bedrijfsfilter leeg als Group By is &#39;Company&#39;,
 Please set Default Payroll Payable Account in Company {0},Stel Default Payroll Payable account in Company {0},
 Please set Depreciation related Accounts in Asset Category {0} or Company {1},Stel afschrijvingen gerelateerd Accounts in Vermogensbeheer categorie {0} of Company {1},
-Please set Email Address,Stel e-mailadres,
 Please set GST Accounts in GST Settings,Stel GST-accounts in via GST-instellingen,
 Please set Hotel Room Rate on {},Stel de hotelkamerprijs in op {},
 Please set Number of Depreciations Booked,Stel Aantal geboekte afschrijvingen,
@@ -1936,7 +1909,6 @@
 Please set the Email ID for the Student to send the Payment Request,Stel het e-mail-ID voor de student in om het betalingsverzoek te verzenden,
 Please set the Item Code first,Stel eerst de productcode in,
 Please set the Payment Schedule,Stel het betalingsschema in,
-Please set the series to be used.,Stel de reeks in die moet worden gebruikt.,
 Please set {0} for address {1},Stel {0} in voor adres {1},
 Please setup Students under Student Groups,Stel de studenten onder Student Groups in,
 Please specify Company,Specificeer Bedrijf,
@@ -1953,7 +1925,6 @@
 Point-of-Sale,Verkooppunt,
 Point-of-Sale Profile,Point-of-Sale Profile,
 Portal,Portaal,
-Portal Settings,portal Instellingen,
 Possible Supplier,Mogelijke leverancier,
 Postal Expenses,Portokosten,
 Posting Date,Plaatsingsdatum,
@@ -2152,12 +2123,10 @@
 Reference No is mandatory if you entered Reference Date,Referentienummer is verplicht als u een referentiedatum hebt ingevoerd,
 Reference No.,Referentienummer.,
 Reference Number,Referentienummer,
-Reference Owner,eigenaar ref,
 Reference Type,Referentie Type,
 "Reference: {0}, Item Code: {1} and Customer: {2}","Referentie: {0}, Artikelcode: {1} en Klant: {2}",
 References,Referenties,
 Refresh Token,Vernieuwen Token,
-Region,Regio,
 Register,Registreren,
 Rejected,Afgewezen,
 Related,Verwant,
@@ -2179,13 +2148,12 @@
 Replace BOM and update latest price in all BOMs,Vervang BOM en update de laatste prijs in alle BOM&#39;s,
 Replied,Beantwoord,
 Report,Rapport,
-Report Builder,Rapport Bouwer,
 Report Type,Rapport Type,
 Report Type is mandatory,Rapport type is verplicht,
 Reports,rapporten,
 Reqd By Date,Benodigd op datum,
 Reqd Qty,Gewenste hoeveelheid,
-Request for Quotation,Offerte,
+Request for Quotation,Offerte-verzoek,
 Request for Quotations,Verzoek om offertes,
 Request for Raw Materials,Verzoek om grondstoffen,
 Request for purchase.,Inkoopaanvraag,
@@ -2355,13 +2323,11 @@
 Same Company is entered more than once,Hetzelfde bedrijf is meer dan één keer ingevoerd,
 Same item cannot be entered multiple times.,Hetzelfde item kan niet meerdere keren worden ingevoerd.,
 Same supplier has been entered multiple times,Dezelfde leverancier is meerdere keren ingevoerd,
-Sample,Monster,
 Sample Collection,Sample Collection,
 Sample quantity {0} cannot be more than received quantity {1},Voorbeeldhoeveelheid {0} kan niet meer dan ontvangen aantal {1} zijn,
 Sanctioned,Sanctioned,
 Sand,Zand,
 Saturday,Zaterdag,
-Saved,Opgeslagen,
 Saving {0},{0} opslaan,
 Scan Barcode,Scan barcode,
 Schedule,Plan,
@@ -2463,7 +2429,6 @@
 Series Updated,Reeks bijgewerkt,
 Series Updated Successfully,Reeks succesvol bijgewerkt,
 Series is mandatory,Reeks is verplicht,
-Series {0} already used in {1},Reeks {0} al gebruikt in {1},
 Service,Service,
 Service Level Agreement,Service Level Agreement,
 Service Level Agreement.,Service Level Agreement.,
@@ -2479,7 +2444,6 @@
 Set Tax Rule for shopping cart,Stel Tax Regel voor winkelmandje,
 Set as Closed,Instellen als gesloten,
 Set as Completed,Instellen als voltooid,
-Set as Default,Instellen als standaard,
 Set as Lost,Instellen als verloren,
 Set as Open,Instellen als Open,
 Set default inventory account for perpetual inventory,Stel standaard inventaris rekening voor permanente inventaris,
@@ -2511,7 +2475,6 @@
 Shareholder,Aandeelhouder,
 Ship To State,Verzenden naar staat,
 Shipments,zendingen,
-Shipping,Logistiek,
 Shipping Address,Verzendadres,
 "Shipping Address does not have country, which is required for this Shipping Rule","Verzendadres heeft geen land, wat nodig is voor deze verzendregel",
 Shipping rule only applicable for Buying,Verzendregel alleen van toepassing voor kopen,
@@ -2564,7 +2527,6 @@
 Split Batch,Split Batch,
 Split Issue,Gesplitste probleem,
 Sports,Sport,
-Standard,Standaard,
 Standard Buying,Standard kopen,
 Standard Selling,Standaard Verkoop,
 Standard contract terms for Sales or Purchase.,Standaard contractvoorwaarden voor Verkoop of Inkoop .,
@@ -2731,7 +2693,6 @@
 Terms and Conditions,Algemene Voorwaarden,
 Terms and Conditions Template,Algemene voorwaarden Template,
 Territory,Regio,
-Test,Test,
 Thank you for your business!,Bedankt voor uw zaken!,
 The 'From Package No.' field must neither be empty nor it's value less than 1.,Het &#39;Van pakketnummer&#39; veld mag niet leeg zijn of de waarde is kleiner dan 1.,
 The Brand,De Brand,
@@ -2848,7 +2809,6 @@
 Total (Without Tax),Totaal (zonder btw),
 Total Achieved,Totaal Bereikt,
 Total Actual,Totaal Werkelijke,
-Total Allocated Leaves,Totaal toegewezen bladeren,
 Total Amount,Totaal bedrag,
 Total Amount Credited,Totaal gecrediteerd bedrag,
 Total Applicable Charges in Purchase Receipt Items table must be same as Total Taxes and Charges,Totaal van toepassing zijnde kosten in Kwitantie Items tabel moet hetzelfde zijn als de totale belastingen en heffingen,
@@ -2892,7 +2852,6 @@
 Total(Amt),Totaal (Amt),
 Total(Qty),Totaal (Aantal),
 Traceability,traceerbaarheid,
-Traceback,Herleiden,
 Track Leads by Lead Source.,Leads bijhouden op leadbron.,
 Transaction,Transactie,
 Transaction Date,transactie datum,
@@ -2930,7 +2889,6 @@
 UOM Conversion factor is required in row {0},Eenheid Omrekeningsfactor is vereist in rij {0},
 UOM coversion factor required for UOM: {0} in Item: {1},Eenheid Omrekeningsfactor is nodig voor eenheid: {0} in Artikel: {1},
 URL,URL,
-Unable to find DocType {0},Kon DocType {0} niet vinden,
 Unable to find exchange rate for {0} to {1} for key date {2}. Please create a Currency Exchange record manually,Kan wisselkoers voor {0} tot {1} niet vinden voor de sleuteldatum {2}. Creëer alsjeblieft een valuta-wisselrecord,
 Unable to find score starting at {0}. You need to have standing scores covering 0 to 100,Kan geen score beginnen bij {0}. Je moet een score hebben van 0 tot 100,
 Unable to find variable: ,Kan variabele niet vinden:,
@@ -2960,7 +2918,6 @@
 Upload your letter head and logo. (you can edit them later).,Upload uw brief hoofd en logo. (Je kunt ze later bewerken).,
 Upper Income,Bovenste Inkomen,
 Use Sandbox,Gebruik Sandbox,
-Used Leaves,Gebruikte bladeren,
 User,Gebruiker,
 User ID,Gebruikers-ID,
 User ID not set for Employee {0},Gebruikers-ID niet ingesteld voor werknemer {0},
@@ -3051,7 +3008,6 @@
 Website Settings,Website instellingen,
 Wednesday,Woensdag,
 Week,Week,
-Weekdays,Doordeweekse dagen,
 Weekly,Wekelijks,
 "Weight is mentioned,\nPlease mention ""Weight UOM"" too","Het gewicht wordt vermeld, \n Vermeld ""Gewicht UOM"" te",
 Welcome email sent,Welkomst e-mail verzonden,
@@ -3072,7 +3028,6 @@
 Work Order {0} must be submitted,Werkorder {0} moet worden ingediend,
 Work Orders Created: {0},Werkorders aangemaakt: {0},
 Work-in-Progress Warehouse is required before Submit,Werk in uitvoering Magazijn is vereist alvorens in te dienen,
-Workflow,Workflow,
 Working,Werkzaam,
 Working Hours,Werkuren,
 Workstation,Werkstation,
@@ -3102,7 +3057,6 @@
 You need to be a user other than Administrator with System Manager and Item Manager roles to register on Marketplace.,U moet een andere gebruiker dan Administrator met System Manager en Item Manager-rollen zijn om zich te registreren op Marketplace.,
 You need to be a user with System Manager and Item Manager roles to add users to Marketplace.,U moet een gebruiker zijn met de functies System Manager en Item Manager om gebruikers toe te voegen aan Marketplace.,
 You need to be a user with System Manager and Item Manager roles to register on Marketplace.,U moet een gebruiker zijn met de functies System Manager en Item Manager om zich te registreren op Marketplace.,
-You need to be logged in to access this page,Je moet ingelogd zijn om toegang te krijgen tot deze pagina,
 You need to enable Shopping Cart,U moet Winkelwagen activeren.,
 You will lose records of previously generated invoices. Are you sure you want to restart this subscription?,U verliest records van eerder gegenereerde facturen. Weet je zeker dat je dit abonnement opnieuw wilt opstarten?,
 Your Organization,Uw organisatie,
@@ -3218,7 +3172,6 @@
 Assigned To,Toegewezen Aan,
 Chat,Chat,
 Completed By,Afgemaakt door,
-County,Provincie,
 Day of Week,Dag van de week,
 "Dear System Manager,","Geachte Systeemmanager,",
 Default Value,Standaardwaarde,
@@ -3229,31 +3182,21 @@
 Fieldtype,Veldtype,
 Help Articles,Help Artikelen,
 ID,ID,
-Images,Afbeeldingen,
 Import,Importeren,
 Language,Taal,
 Likes,Sympathieën,
 Merge with existing,Samenvoegen met bestaande,
-Office,Kantoor,
 Orientation,oriëntering,
 Parent,Bovenliggend,
-Passive,Passief,
 Payment Failed,Betaling mislukt,
-Permanent,blijvend,
 Personal,Persoonlijk,
-Plant,Fabriek,
 Post,Bericht,
-Postal,Post-,
 Postal Code,Postcode,
-Previous,vorig,
 Provider,leverancier,
 Read Only,Alleen lezen,
 Recipient,Ontvanger,
 Reviews,beoordelingen,
 Sender,Afzender,
-Shop,Winkelen,
-Subsidiary,Dochteronderneming,
-There is some problem with the file url: {0},Er is een probleem met het bestand url: {0},
 There were errors while sending email. Please try again.,Er zijn fouten opgetreden tijdens het versturen van e-mail. Probeer het opnieuw .,
 Values Changed,Gewijzigde waarden,
 or,of,
@@ -3280,19 +3223,16 @@
 Quality Feedback Template,Kwaliteitsfeedbacksjabloon,
 Rules for applying different promotional schemes.,Regels voor het toepassen van verschillende promotieregelingen.,
 Show {0},Toon {0},
-"Special Characters except '-', '#', '.', '/', '{{' and '}}' not allowed in naming series {0}","Speciale tekens behalve &quot;-&quot;, &quot;#&quot;, &quot;.&quot;, &quot;/&quot;, &quot;{{&quot; En &quot;}}&quot; niet toegestaan in naamgevingsreeks {0}",
 Target Details,Doelgegevens,
 {0} already has a Parent Procedure {1}.,{0} heeft al een ouderprocedure {1}.,
 API,API,
 Annual,jaar-,
 Change,Verandering,
 Contact Email,Contact E-mail,
-Export Type,Exporttype,
 From Date,Van Datum,
 Group By,Groeperen op,
 Invalid URL,Ongeldige URL,
 Landscape,Landschap,
-Last Sync On,Last Sync On,
 Naming Series,Benoemen Series,
 No data to export,Geen gegevens om te exporteren,
 Portrait,Portret,
@@ -3302,7 +3242,6 @@
 Show Document,Document weergeven,
 Show Traceback,Traceback weergeven,
 Video,Video,
-Webhook Secret,Webhook Secret,
 % Of Grand Total,% Van eindtotaal,
 <b>Company</b> is a mandatory filter.,<b>Bedrijf</b> is een verplicht filter.,
 <b>From Date</b> is a mandatory filter.,<b>Vanaf datum</b> is een verplicht filter.,
@@ -3358,7 +3297,6 @@
 BOM Comparison Tool,BOM-vergelijkingstool,
 BOM recursion: {0} cannot be child of {1},BOM-recursie: {0} kan geen kind van {1} zijn,
 BOM recursion: {0} cannot be parent or child of {1},BOM-recursie: {0} kan geen ouder of kind van {1} zijn,
-Back to Home,Terug naar huis,
 Back to Messages,Terug naar berichten,
 Bank Data mapper doesn't exist,Bankgegevensmap bestaat niet,
 Bank Details,Bankgegevens,
@@ -3420,7 +3358,6 @@
 Currency,Valuta,
 Current Status,Actuele status,
 Customer PO,Post adres van de klant,
-Customize,Aanpassen,
 Daily,Dagelijks,
 Date,Datum,
 Date of Birth cannot be greater than Joining Date.,Geboortedatum kan niet groter zijn dan de datum van toetreding.,
@@ -3454,7 +3391,6 @@
 ERPNext could not find any matching payment entry,ERPNext kon geen overeenkomstige betaling vinden,
 Earliest Age,Vroegste leeftijd,
 Edit Details,Details bewerken,
-Edit Profile,Bewerk profiel,
 Either GST Transporter ID or Vehicle No is required if Mode of Transport is Road,GST Transporter ID of voertuignummer is niet vereist als de vervoerswijze op de weg is,
 Email,E-mail,
 Email Campaigns,E-mailcampagnes,
@@ -3482,7 +3418,6 @@
 Fetch Items from Warehouse,Items ophalen uit magazijn,
 Fetching...,Ophalen ...,
 Field,Veld,
-File Manager,Bestandsbeheer,
 Filters,Filters,
 Finding linked payments,Gekoppelde betalingen vinden,
 Fleet Management,Vloot beheer,
@@ -3521,7 +3456,6 @@
 Incorrect Warehouse,Onjuist magazijn,
 Invalid Barcode. There is no Item attached to this barcode.,Ongeldige streepjescode. Er is geen artikel aan deze streepjescode gekoppeld.,
 Invalid credentials,Ongeldige inloggegevens,
-Invite as User,Uitnodigen als gebruiker,
 Issue Priority.,Prioriteit uitgeven.,
 Issue Type.,Soort probleem.,
 "It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","Het lijkt erop dat er een probleem is met de streepconfiguratie van de server. In het geval van een fout, wordt het bedrag teruggestort op uw account.",
@@ -3564,7 +3498,6 @@
 New Invoice,Nieuwe factuur,
 New Payment,Nieuwe betaling,
 New release date should be in the future,Nieuwe releasedatum zou in de toekomst moeten liggen,
-Newsletter,Nieuwsbrief,
 No Account matched these filters: {},Geen account komt overeen met deze filters: {},
 No communication found.,Geen communicatie gevonden.,
 No correct answer is set for {0},Er is geen correct antwoord ingesteld voor {0},
@@ -3640,7 +3573,6 @@
 Please setup a default bank account for company {0},Stel een standaard bankrekening in voor bedrijf {0},
 Please specify,Specificeer,
 Please specify a {0},Geef een {0} op,lead
-Printing,Afdrukken,
 Priority,Prioriteit,
 Priority has been changed to {0}.,Prioriteit is gewijzigd in {0}.,
 Priority {0} has been repeated.,Prioriteit {0} is herhaald.,
@@ -3649,7 +3581,6 @@
 Project,Project,
 Provide the academic year and set the starting and ending date.,Geef het academische jaar op en stel de begin- en einddatum in.,
 Public token is missing for this bank,Openbaar token ontbreekt voor deze bank,
-Publish,Publiceren,
 Publish 1 Item,Publiceer 1 item,
 Publish Items,Items publiceren,
 Publish More Items,Meer items publiceren,
@@ -3677,7 +3608,6 @@
 Reconciled,Verzoend,
 Recruitment,Werving,
 Red,Rood,
-Refreshing,Verfrissend,
 Release date must be in the future,Releasedatum moet in de toekomst liggen,
 Relieving Date must be greater than or equal to Date of Joining,Ontlastingsdatum moet groter zijn dan of gelijk zijn aan de datum van toetreding,
 Rename,Hernoemen,
@@ -3721,7 +3651,6 @@
 Search for a payment,Zoeken naar een betaling,
 Search for anything ...,Zoek naar alles ...,
 Search results for,zoekresultaten voor,
-Select All,Alles selecteren,
 Select Difference Account,Selecteer Verschilaccount,
 Select a Default Priority.,Selecteer een standaardprioriteit.,
 Select a company,Selecteer een bedrijf,
@@ -3740,11 +3669,9 @@
 Service Level Agreement has been changed to {0}.,Service Level Agreement is gewijzigd in {0}.,
 Service Level Agreement was reset.,Service Level Agreement is opnieuw ingesteld.,
 Service Level Agreement with Entity Type {0} and Entity {1} already exists.,Service Level Agreement met Entity Type {0} en Entity {1} bestaat al.,
-Set,Instellen,
 Set Meta Tags,Stel metatags in,
 Set {0} in company {1},Stel {0} in bedrijf {1} in,
 Setup,Instellingen,
-Setup Wizard,Instellingen Wizard,
 Shift Management,Shift Management,
 Show Future Payments,Toekomstige betalingen weergeven,
 Show Linked Delivery Notes,Toon gekoppelde leveringsbonnen,
@@ -3815,7 +3742,6 @@
 Unreconciled,Onverzoend,
 Unsupported GST Category for E-Way Bill JSON generation,Niet-ondersteunde GST-categorie voor het genereren van E-Way Bill JSON,
 Update,Bijwerken,
-Update Details,Bijwerken details,
 Update Taxes for Items,Update belastingen voor artikelen,
 "Upload a bank statement, link or reconcile a bank account","Upload een bankafschrift, koppel of verzoen een bankrekening",
 Upload a statement,Upload een verklaring,
@@ -3839,7 +3765,6 @@
 XML Files Processed,XML-bestanden verwerkt,
 Year,Jaar,
 Yearly,Jaarlijks,
-You,U,
 You are not allowed to enroll for this course,U mag zich niet inschrijven voor deze cursus,
 You are not enrolled in program {0},U bent niet ingeschreven in programma {0},
 You can Feature upto 8 items.,U kunt maximaal 8 items gebruiken.,
@@ -3856,7 +3781,6 @@
 e-Way Bill already exists for this document,e-Way Bill bestaat al voor dit document,
 woocommerce - {0},woocommerce - {0},
 {0} Coupon used are {1}. Allowed quantity is exhausted,{0} Gebruikte coupon is {1}. Toegestane hoeveelheid is op,
-{0} Name,{0} Naam,
 {0} Operations: {1},{0} Bewerkingen: {1},
 {0} bank transaction(s) created,{0} gemaakte banktransactie (s),
 {0} bank transaction(s) created and {1} errors,{0} gemaakte banktransactie (s) en {1} fouten,
@@ -3875,17 +3799,13 @@
 Total Income,Totaal inkomen,
 Total Income This Year,Totaal inkomen dit jaar,
 Barcode,Barcode,
-Bold,Stoutmoedig,
-Center,Centreren,
 Clear,Doorzichtig,
-Comment,Commentaar,
 Comments,Reacties,
 DocType,DocType,
 Download,Downloaden,
 Left,Links,
 Link,Koppeling,
 New,Nieuw,
-Not Found,Niet gevonden,
 Print,Afdrukken,
 Reference Name,Referentienaam,
 Refresh,Verversen,
@@ -3908,7 +3828,6 @@
 Email Id,E-mail-ID,
 No,Nee,
 Reference Doctype,Referentie Doctype,
-User Id,Gebruikersnaam,
 Yes,Ja,
 Actual ,Werkelijk,
 Add to cart,In winkelwagen,
@@ -4304,7 +4223,6 @@
 e.g Adjustments for:,bijv. aanpassingen voor:,
 Section Subtotal,Sectie Subtotaal,
 Section Footer,Sectie voettekst,
-Position,Positie,
 Cash Flow Mapping,Cash Flow Mapping,
 Select Maximum Of 1,Selecteer maximaal 1,
 Is Finance Cost,Zijn financiële kosten,
@@ -4936,7 +4854,6 @@
 Previous Business Day,Vorige werkdag,
 Next Business Day,Volgende werkdag,
 Urgent,Dringend,
-Crop,Gewas,
 Crop Name,Gewasnaam,
 Scientific Name,Wetenschappelijke naam,
 "You can define all the tasks which need to carried out for this crop here. The day field is used to mention the day on which the task needs to be carried out, 1 being the 1st day, etc.. ","U kunt hier alle taken definiëren die voor dit gewas moeten worden uitgevoerd. Het dagveld wordt gebruikt om de dag te vermelden waarop de taak moet worden uitgevoerd, waarbij 1 de eerste dag is, enzovoort.",
@@ -5441,7 +5358,6 @@
 To TIme,Tot Tijd,
 Course End Date,Cursus Einddatum,
 Course Topic,Cursus onderwerp,
-Topic,Onderwerp,
 Topic Name,topic Naam,
 Education Settings,Onderwijsinstellingen,
 Current Academic Year,Huidig Academisch Jaar,
@@ -5516,7 +5432,6 @@
 Check this if the Student is residing at the Institute's Hostel.,Controleer dit als de student in het hostel van het Instituut verblijft.,
 Walking,wandelen,
 Institute's Bus,Instituut&#39;s Bus,
-Public Transport,Openbaar vervoer,
 Self-Driving Vehicle,Zelfrijdend voertuig,
 Pick/Drop by Guardian,Pick / Drop door Guardian,
 Enrolled courses,Ingeschreven cursussen,
@@ -5697,7 +5612,6 @@
 Default Cost Center,Standaard Kostenplaats,
 Undeposited Funds Account,Niet-gedeponeerd fondsenaccount,
 Shopify Log,Shopify Log,
-Request Data,Verzoek om gegevens,
 Shopify Settings,Shopify-instellingen,
 status html,status html,
 Enable Shopify,Activeer Shopify,
@@ -5817,7 +5731,6 @@
 Exercise Instructions,Instructies voor oefeningen,
 Exercise Video,Oefenvideo,
 Exercise Steps,Oefening stappen,
-Steps,Stappen,
 Steps Table,Stappen tafel,
 Exercise Type Step,Oefeningstype Stap,
 Max number of visit,Max. Aantal bezoeken,
@@ -6001,7 +5914,6 @@
 Patient Encounter Symptom,Symptoom bij de patiënt,
 HLC-PMR-.YYYY.-,HLC-PMR-.YYYY.-,
 Attach Medical Record,Voeg medisch dossier bij,
-Reference DocType,Referentie DocType,
 Spouse,Echtgenoot,
 Family,Familie,
 Schedule Details,Planning Details,
@@ -6983,16 +6895,8 @@
 HTML / Banner that will show on the top of product list.,HTML / Banner dat zal laten zien op de bovenkant van het product lijst.,
 Set prefix for numbering series on your transactions,Instellen voorvoegsel voor nummerreeksen voor uw transacties,
 Setup Series,Instellen Reeksen,
-Select Transaction,Selecteer Transactie,
-Help HTML,Help HTML,
-Series List for this Transaction,Reeks voor deze transactie,
-User must always select,Gebruiker moet altijd kiezen,
-Check this if you want to force the user to select a series before saving. There will be no default if you check this.,Controleer dit als u wilt dwingen de gebruiker om een reeks voor het opslaan te selecteren. Er zal geen standaard zijn als je dit controleren.,
 Update Series,Reeksen bijwerken,
 Change the starting / current sequence number of an existing series.,Wijzig het start-/ huidige volgnummer van een bestaande serie.,
-Prefix,Voorvoegsel,
-This is the number of the last created transaction with this prefix,Dit is het nummer van de laatst gemaakte transactie met dit voorvoegsel,
-Update Series Number,Serienummer bijwerken,
 Quotation Lost Reason,Reden verlies van Offerte,
 A third party distributor / dealer / commission agent / affiliate / reseller who sells the companies products for a commission.,Een derde partij distributeur / dealer / commissionair / affiliate / reseller die uw producten voor een commissie verkoopt.,
 Sales Partner Name,Verkoop Partner Naam,
@@ -7687,7 +7591,6 @@
 Warehouse wise Item Balance Age and Value,Magazijnbeheer Artikelbalans Leeftijd en waarde,
 Work Order Stock Report,Werkorder Voorraadverslag,
 Work Orders in Progress,Werkorders in uitvoering,
-Validation Error,Validatiefout,
 Automatically Process Deferred Accounting Entry,Automatisch uitgestelde boekhoudinvoer verwerken,
 Bank Clearance,Bankvereffening,
 Bank Clearance Detail,Bankvereffeningsdetails,
@@ -7724,45 +7627,7 @@
 Therapy Plan: ,Therapieplan:,
 Total Counts Targeted: ,Gericht totaalaantal:,
 Total Counts Completed: ,Totaal voltooide tellingen:,
-Andaman and Nicobar Islands,Andamanen en Nicobaren,
-Andhra Pradesh,Andhra Pradesh,
-Arunachal Pradesh,Arunachal Pradesh,
-Assam,Assam,
-Bihar,Bihar,
-Chandigarh,Chandigarh,
-Chhattisgarh,Chhattisgarh,
-Dadra and Nagar Haveli,Dadra en Nagar Haveli,
-Daman and Diu,Daman en Diu,
-Delhi,Delhi,
-Goa,Goa,
-Gujarat,Gujarat,
-Haryana,Haryana,
-Himachal Pradesh,Himachal Pradesh,
-Jammu and Kashmir,Jammu en Kasjmir,
-Jharkhand,Jharkhand,
-Karnataka,Karnataka,
-Kerala,Kerala,
-Lakshadweep Islands,Lakshadweep-eilanden,
-Madhya Pradesh,Madhya Pradesh,
-Maharashtra,Maharashtra,
-Manipur,Manipur,
-Meghalaya,Meghalaya,
-Mizoram,Mizoram,
-Nagaland,Nagaland,
-Odisha,Odisha,
-Other Territory,Ander territorium,
-Pondicherry,Pondicherry,
-Punjab,Punjab,
-Rajasthan,Rajasthan,
-Sikkim,Sikkim,
-Tamil Nadu,Tamil Nadu,
-Telangana,Telangana,
-Tripura,Tripura,
-Uttar Pradesh,Uttar Pradesh,
-Uttarakhand,Uttarakhand,
-West Bengal,West-Bengalen,
 Is Mandatory,Is verplicht,
-Published on,gepubliceerd op,
 Service Received But Not Billed,Service ontvangen maar niet gefactureerd,
 Deferred Accounting Settings,Uitgestelde boekhoudinstellingen,
 Book Deferred Entries Based On,Boek uitgestelde inzendingen op basis van,
@@ -8035,8 +7900,6 @@
 Worksheet Instructions,Werkblad instructies,
 Result Legend Print,Resultaat Legenda afdrukken,
 Print Position,Afdrukpositie,
-Bottom,Bodem,
-Top,Top,
 Both,Beide,
 Result Legend,Legenda resultaat,
 Lab Tests,Labotests,
@@ -8081,12 +7944,10 @@
 Approvers,Goedkeurders,
 The first Approver in the list will be set as the default Approver.,De eerste goedkeurder in de lijst wordt ingesteld als de standaard goedkeurder.,
 Shift Request Approver,Shift Request Approver,
-PAN Number,PAN-nummer,
 Provident Fund Account,Provident Fund-account,
 MICR Code,MICR-code,
 Repay unclaimed amount from salary,Betaal niet-opgeëiste bedrag terug van salaris,
 Deduction from salary,Inhouding op salaris,
-Expired Leaves,Verlopen bladeren,
 If this is not checked the loan by default will be considered as a Demand Loan,"Als dit niet is aangevinkt, wordt de lening standaard beschouwd als een opeisbare lening",
 This account is used for booking loan repayments from the borrower and also disbursing loans to the borrower,Deze rekening wordt gebruikt voor het boeken van aflossingen van leningen van de lener en ook voor het uitbetalen van leningen aan de lener,
 This account is capital account which is used to allocate capital for loan disbursal account ,Deze rekening is een kapitaalrekening die wordt gebruikt om kapitaal toe te wijzen voor het uitbetalen van leningen,
@@ -8844,3 +8705,41 @@
 Creating Purchase Order ...,Inkooporder creëren ...,
 "Select a Supplier from the Default Suppliers of the items below. On selection, a Purchase Order will be made against items belonging to the selected Supplier only.",Selecteer een leverancier uit de standaardleveranciers van de onderstaande items. Bij selectie wordt er alleen een inkooporder gemaakt voor artikelen van de geselecteerde leverancier.,
 Row #{}: You must select {} serial numbers for item {}.,Rij # {}: u moet {} serienummers voor artikel {} selecteren.,
+Add Comment,Reactie toevoegen,
+More...,Meer...,
+Notes,Opmerkingen,
+Payment Gateway,Payment Gateway,
+Payment Gateway Name,Payment Gateway Name,
+Payments,Betalingen,
+Plan Name,Plan naam,
+Portal,Portaal,
+Scan Barcode,Scan barcode,
+Some information is missing,Sommige informatie ontbreekt,
+Successful,geslaagd,
+Tools,Tools,
+Use Sandbox,Gebruik Sandbox,
+Busy,Bezig,
+Completed By,Afgemaakt door,
+Payment Failed,Betaling mislukt,
+Column {0},Kolom {0},
+Field Mapping,Veldtoewijzing,
+Not Specified,Niet gespecificeerd,
+Update Type,Update Type,
+Dr,Dr,
+End Time,Eindtijd,
+Fetching...,Ophalen ...,
+"It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","Het lijkt erop dat er een probleem is met de streepconfiguratie van de server. In het geval van een fout, wordt het bedrag teruggestort op uw account.",
+Looks like someone sent you to an incomplete URL. Please ask them to look into it.,Het lijkt erop dat iemand die je verstuurd naar een onvolledige URL. Vraag hen om naar te kijken.,
+Master,Stam,
+Pay,Betalen,
+You can also copy-paste this link in your browser,U kunt deze link ook kopiëren en plakken in uw browser,
+Verified By,Geverifieerd door,
+Invalid naming series (. missing) for {0},Ongeldige naamreeks (. Ontbreekt) voor {0},
+Phone Number,Telefoonnummer,
+Account SID,Account SID,
+Global Defaults,Global Standaardwaarden,
+Is Mandatory,Is verplicht,
+WhatsApp,WhatsApp,
+Make a call,Bellen,
+Approve,Goedkeuren,
+Reject,afwijzen,
diff --git a/erpnext/translations/no.csv b/erpnext/translations/no.csv
index f285e48..b136e97 100644
--- a/erpnext/translations/no.csv
+++ b/erpnext/translations/no.csv
@@ -113,7 +113,6 @@
 Add Items,Legg varer,
 Add Leads,Legg til Leads,
 Add Multiple Tasks,Legg til flere oppgaver,
-Add Row,Legg til rad,
 Add Sales Partners,Legg til salgspartnere,
 Add Serial No,Legg Serial No,
 Add Students,Legg Studenter,
@@ -211,9 +210,7 @@
 An error occurred during the update process,Det oppsto en feil under oppdateringsprosessen,
 "An item exists with same name ({0}), please change the item group name or rename the item","Et element eksisterer med samme navn ({0}), må du endre navn varegruppen eller endre navn på elementet",
 Analyst,analytiker,
-Analytics,Analytics,
 Annual Billing: {0},Årlig Billing: {0},
-Anonymous,Anonym,
 Another Budget record '{0}' already exists against {1} '{2}' and account '{3}' for fiscal year {4},En annen budsjettrekord &#39;{0}&#39; eksisterer allerede mot {1} &#39;{2}&#39; og konto &#39;{3}&#39; for regnskapsåret {4},
 Another Period Closing Entry {0} has been made after {1},En annen periode Closing Entry {0} har blitt gjort etter {1},
 Another Sales Person {0} exists with the same Employee id,En annen Sales Person {0} finnes med samme Employee id,
@@ -283,14 +280,12 @@
 Attendance not submitted for {0} as {1} on leave.,Tilstedeværelse ikke sendt for {0} som {1} på permisjon.,
 Attribute table is mandatory,Attributt tabellen er obligatorisk,
 Attribute {0} selected multiple times in Attributes Table,Attributtet {0} valgt flere ganger i attributter Table,
-Author,Forfatter,
 Authorized Signatory,Autorisert signatur,
 Auto Material Requests Generated,Auto Materiell Forespørsler Generert,
 Auto Repeat,Auto Repeat,
 Auto repeat document updated,Automatisk gjentatt dokument oppdatert,
 Automotive,Automotive,
 Available,Tilgjengelig,
-Available Leaves,Tilgjengelige blader,
 Available Qty,Tilgjengelig antall,
 Available Selling,Tilgjengelig salg,
 Available for use date is required,Tilgjengelig for bruk er nødvendig,
@@ -340,7 +335,6 @@
 Base URL,Basisadresse,
 Based On,Basert På,
 Based On Payment Terms,Basert på betalingsbetingelser,
-Basic,Grunnleggende,
 Batch,Parti,
 Batch Entries,Batch-oppføringer,
 Batch ID is mandatory,Batch-ID er obligatorisk,
@@ -361,7 +355,6 @@
 Billable Hours,Fakturerbare timer,
 Billed,fakturert,
 Billed Amount,Fakturert beløp,
-Billing,Billing,
 Billing Address,fakturaadresse,
 Billing Address is same as Shipping Address,Faktureringsadresse er den samme som leveringsadresse,
 Billing Amount,Faktureringsbeløp,
@@ -560,7 +553,6 @@
 Consumed Qty,Forbrukes Antall,
 Consumer Products,Forbrukerprodukter,
 Contact,Kontakt,
-Contact Details,Kontaktinformasjon,
 Contact Us,Kontakt oss,
 Content,Innhold,
 Content Masters,Innholdsmestere,
@@ -715,7 +707,6 @@
 Date of Joining,Dato for Delta,
 Date of Joining must be greater than Date of Birth,Dato Bli må være større enn fødselsdato,
 Date of Transaction,Dato for transaksjon,
-Datetime,Datetime,
 Day,Dag,
 Debit,debet,
 Debit ({0}),Debet ({0}),
@@ -874,7 +865,6 @@
 Employee cannot report to himself.,Arbeidstaker kan ikke rapportere til seg selv.,
 Employee {0} has already applied for {1} between {2} and {3} : ,Ansatt {0} har allerede søkt om {1} mellom {2} og {3}:,
 Employee {0} of grade {1} have no default leave policy,Medarbeider {0} av klasse {1} har ingen standard permisjon,
-Enable,Aktiver,
 Enable / disable currencies.,Aktivere / deaktivere valutaer.,
 Enabled,Aktivert,
 "Enabling 'Use for Shopping Cart', as Shopping Cart is enabled and there should be at least one Tax Rule for Shopping Cart","Aktivering av «Bruk for handlekurven&quot;, som Handlevogn er aktivert, og det bør være minst en skatteregel for Handlekurv",
@@ -905,7 +895,6 @@
 Error: Not a valid id?,Feil: Ikke en gyldig id?,
 Estimated Cost,anslått pris,
 "Even if there are multiple Pricing Rules with highest priority, then following internal priorities are applied:","Selv om det er flere Prising regler med høyest prioritet, deretter følgende interne prioriteringer til grunn:",
-Event,Hendelses,
 Exchange Gain/Loss,Valutagevinst / tap,
 Exchange Rate Revaluation master.,Valutakursvurderingsmester.,
 Exchange Rate must be same as {0} {1} ({2}),Exchange Rate må være samme som {0} {1} ({2}),
@@ -1032,7 +1021,6 @@
 From value must be less than to value in row {0},Fra verdien må være mindre enn til verdien i rad {0},
 From {0} | {1} {2},Fra {0} | {1} {2},
 Fulfillment,Oppfyllelse,
-Full,Full,
 Full Name,Fullt Navn,
 Fully Depreciated,Fullt avskrevet,
 Furnitures and Fixtures,Møbler og inventar,
@@ -1133,7 +1121,6 @@
 Hub Sync ID,Hub Sync ID,
 Human Resource,Menneskelig Resurs,
 Human Resources,Menneskelige ressurser,
-IFSC Code,IFSC-kode,
 IGST Amount,IGST Beløp,
 IP Address,IP adresse,
 ITC Available (whether in full op part),ITC tilgjengelig (om fullstendig del),
@@ -1185,7 +1172,6 @@
 Ineligible ITC,Ikke-kvalifisert ITC,
 Initiated,Initiert,
 Inpatient Record,Inpatient Record,
-Insert,Sett,
 Installation Note,Installasjon Merk,
 Installation Note {0} has already been submitted,Installasjon Merk {0} har allerede blitt sendt,
 Installation date cannot be before delivery date for Item {0},Installasjonsdato kan ikke være før leveringsdato for element {0},
@@ -1197,7 +1183,6 @@
 Insurance Start date should be less than Insurance End date,Forsikring Startdatoen må være mindre enn Forsikring Sluttdato,
 Integrated Tax,Integrert skatt,
 Inter-State Supplies,Mellomstatlige forsyninger,
-Interests,Interesser,
 Internet Publishing,Internett Publisering,
 Intra-State Supplies,Innenstatlige forsyninger,
 Introduction,Introduksjon,
@@ -1316,7 +1301,6 @@
 Lab testing datetime cannot be before collection datetime,Labtesting datetime kan ikke være før datetime samling,
 Label,Etiketten,
 Laboratory,Laboratorium,
-Language Name,språk Name,
 Large,Stor,
 Last Communication,Siste kommunikasjon,
 Last Communication Date,Siste kommunikasjonsdato,
@@ -1347,8 +1331,6 @@
 Letter Heads for print templates.,Brevark for utskriftsmaler.,
 Level,Nivå,
 Liability,Ansvar,
-License,Tillatelse,
-Limit,Grense,
 Limit Crossed,Limit Krysset,
 Link to Material Request,Link til materialforespørsel,
 List of all share transactions,Liste over alle aksje transaksjoner,
@@ -1359,7 +1341,6 @@
 Loans (Liabilities),Lån (gjeld),
 Loans and Advances (Assets),Utlån (Eiendeler),
 Local,lokal,
-Log,Logg,
 Logs for maintaining sms delivery status,Logger for å opprettholde sms leveringsstatus,
 Lost,Mistet,
 Lost Reasons,Tapte grunner,
@@ -1445,7 +1426,6 @@
 Medical Department,Medisinsk avdeling,
 Medical Record,Pasientjournal,
 Medium,Medium,
-Meeting,Møte,
 Member Activity,Medlemsaktivitet,
 Member ID,Medlem ID,
 Member Name,Medlemsnavn,
@@ -1495,7 +1475,6 @@
 Multiple Variants,Flere variasjoner,
 Multiple fiscal years exist for the date {0}. Please set company in Fiscal Year,Flere regnskapsårene finnes for datoen {0}. Vennligst satt selskapet i regnskapsåret,
 Music,Musikk,
-My Account,Min Konto,
 Name error: {0},Navn feil: {0},
 Name of new Account. Note: Please don't create accounts for Customers and Suppliers,Navn på ny konto. Merk: Vennligst ikke opprette kontoer for kunder og leverandører,
 Name or Email is mandatory,Navn eller e-post er obligatorisk,
@@ -1538,7 +1517,6 @@
 New credit limit is less than current outstanding amount for the customer. Credit limit has to be atleast {0},Ny kredittgrensen er mindre enn dagens utestående beløp for kunden. Kredittgrense må være atleast {0},
 New task,Ny oppgave,
 New {0} pricing rules are created,Nye {0} prisregler opprettes,
-Newsletters,nyhetsbrev,
 Newspaper Publishers,Avis Publishers,
 Next,Neste,
 Next Contact By cannot be same as the Lead Email Address,Neste Kontakt By kan ikke være samme som Lead e-postadresse,
@@ -1686,7 +1664,6 @@
 Other,Andre,
 Other Reports,Andre rapporter,
 "Other outward supplies(Nil rated,Exempted)","Andre forsyninger (ikke vurdert, unntatt)",
-Others,Annet,
 Out Qty,Ut Antall,
 Out Value,ut Verdi,
 Out of Order,I ustand,
@@ -1726,7 +1703,6 @@
 Party Type and Party is mandatory for {0} account,Party Type and Party er obligatorisk for {0} konto,
 Party Type is mandatory,Partiet Type er obligatorisk,
 Party is mandatory,Party er obligatorisk,
-Password,Passord,
 Past Due Date,Forfallsdato,
 Patient,Pasient,
 Patient Appointment,Pasientavtale,
@@ -1784,7 +1760,6 @@
 Pharmaceutical,Pharmaceutical,
 Pharmaceuticals,Farmasi,
 Physician,lege,
-Pincode,Pinkode,
 Place Of Supply (State/UT),Leveringssted (delstat / UT),
 Place Order,Legg inn bestilling,
 Plan Name,Plan navn,
@@ -1896,7 +1871,6 @@
 Please select date,Vennligst velg dato,
 Please select item code,Velg elementet kode,
 Please select month and year,Velg måned og år,
-Please select prefix first,Vennligst velg først prefiks,
 Please select the Company,Vennligst velg firmaet,
 Please select the Multiple Tier Program type for more than one collection rules.,Vennligst velg flerverdierprogrammet for mer enn ett samlingsreglement.,
 Please select the assessment group other than 'All Assessment Groups',Vennligst velg vurderingsgruppen annet enn &#39;Alle vurderingsgrupper&#39;,
@@ -1913,7 +1887,6 @@
 Please set Company filter blank if Group By is 'Company',Vennligst sett Company filter blank hvis Group By er &#39;Company&#39;,
 Please set Default Payroll Payable Account in Company {0},Vennligst sette Standard Lønn betales konto i selskapet {0},
 Please set Depreciation related Accounts in Asset Category {0} or Company {1},Vennligst sett Avskrivninger relatert kontoer i Asset Kategori {0} eller selskapet {1},
-Please set Email Address,Vennligst sett e-postadresse,
 Please set GST Accounts in GST Settings,Vennligst sett GST-kontoer i GST-innstillinger,
 Please set Hotel Room Rate on {},Vennligst sett inn hotellrenten på {},
 Please set Number of Depreciations Booked,Vennligst sett Antall Avskrivninger bestilt,
@@ -1936,7 +1909,6 @@
 Please set the Email ID for the Student to send the Payment Request,Vennligst still inn e-post-IDen for studenten for å sende betalingsanmodningen,
 Please set the Item Code first,Vennligst sett inn varenummeret først,
 Please set the Payment Schedule,Angi betalingsplanen,
-Please set the series to be used.,Vennligst sett serien som skal brukes.,
 Please set {0} for address {1},Angi {0} for adresse {1},
 Please setup Students under Student Groups,Vennligst oppsett Studentene under Student Grupper,
 Please specify Company,Vennligst oppgi selskapet,
@@ -1953,7 +1925,6 @@
 Point-of-Sale,Utsalgssted,
 Point-of-Sale Profile,Point-of-Sale Profile,
 Portal,Portal,
-Portal Settings,portal Innstillinger,
 Possible Supplier,Mulig leverandør,
 Postal Expenses,Post Utgifter,
 Posting Date,Publiseringsdato,
@@ -2152,12 +2123,10 @@
 Reference No is mandatory if you entered Reference Date,Referansenummer er obligatorisk hvis du skrev Reference Date,
 Reference No.,Referanse Nei.,
 Reference Number,Referanse nummer,
-Reference Owner,Referanse Eier,
 Reference Type,Referanse Type,
 "Reference: {0}, Item Code: {1} and Customer: {2}","Henvisning: {0}, Varenummer: {1} og kunde: {2}",
 References,referanser,
 Refresh Token,Refresh Token,
-Region,Region,
 Register,Registrere,
 Rejected,Avvist,
 Related,I slekt,
@@ -2179,7 +2148,6 @@
 Replace BOM and update latest price in all BOMs,Erstatt BOM og oppdater siste pris i alle BOMs,
 Replied,Svarte,
 Report,Rapporter,
-Report Builder,Report Builder,
 Report Type,Rapporttype,
 Report Type is mandatory,Rapporter Type er obligatorisk,
 Reports,Reports,
@@ -2355,13 +2323,11 @@
 Same Company is entered more than once,Samme firma er angitt mer enn én gang,
 Same item cannot be entered multiple times.,Samme elementet kan ikke legges inn flere ganger.,
 Same supplier has been entered multiple times,Samme leverandør er angitt flere ganger,
-Sample,Prøve,
 Sample Collection,Eksempel Innsamling,
 Sample quantity {0} cannot be more than received quantity {1},Prøvekvantitet {0} kan ikke være mer enn mottatt mengde {1},
 Sanctioned,sanksjonert,
 Sand,Sand,
 Saturday,Lørdag,
-Saved,lagret,
 Saving {0},Lagrer {0},
 Scan Barcode,Skann strekkode,
 Schedule,Tidsplan,
@@ -2463,7 +2429,6 @@
 Series Updated,Serien Oppdatert,
 Series Updated Successfully,Serien er oppdatert,
 Series is mandatory,Serien er obligatorisk,
-Series {0} already used in {1},Serien {0} allerede brukt i {1},
 Service,Tjeneste,
 Service Level Agreement,Servicenivåavtale,
 Service Level Agreement.,Servicenivåavtale.,
@@ -2479,7 +2444,6 @@
 Set Tax Rule for shopping cart,Still skatteregel for shopping cart,
 Set as Closed,Sett som Stengt,
 Set as Completed,Angi som fullført,
-Set as Default,Satt som standard,
 Set as Lost,Sett som tapte,
 Set as Open,Sett som åpen,
 Set default inventory account for perpetual inventory,Angi standard beholdningskonto for evigvarende beholdning,
@@ -2511,7 +2475,6 @@
 Shareholder,Aksjonær,
 Ship To State,Send til stat,
 Shipments,forsendelser,
-Shipping,Shipping,
 Shipping Address,Sendingsadresse,
 "Shipping Address does not have country, which is required for this Shipping Rule","Fraktadresse har ikke land, som kreves for denne leveringsregelen",
 Shipping rule only applicable for Buying,Fraktregel gjelder kun for kjøp,
@@ -2564,7 +2527,6 @@
 Split Batch,Split Batch,
 Split Issue,Delt utgave,
 Sports,sport,
-Standard,Standard,
 Standard Buying,Standard Kjøpe,
 Standard Selling,Standard Selling,
 Standard contract terms for Sales or Purchase.,Standard kontraktsvilkår for salg eller kjøp.,
@@ -2731,7 +2693,6 @@
 Terms and Conditions,Vilkår og betingelser,
 Terms and Conditions Template,Betingelser Mal,
 Territory,Territorium,
-Test,Test,
 Thank you for your business!,Takk for handelen!,
 The 'From Package No.' field must neither be empty nor it's value less than 1.,Fra pakke nr. feltet må verken være tomt eller det er mindre enn 1.,
 The Brand,The Brand,
@@ -2848,7 +2809,6 @@
 Total (Without Tax),Totalt (uten skatt),
 Total Achieved,Oppnådd Total,
 Total Actual,Total Actual,
-Total Allocated Leaves,Totalt tildelte blad,
 Total Amount,Totalbeløp,
 Total Amount Credited,Totalt beløp krevet,
 Total Applicable Charges in Purchase Receipt Items table must be same as Total Taxes and Charges,Totalt gjeldende avgifter i kvitteringen Elementer tabellen må være det samme som total skatter og avgifter,
@@ -2892,7 +2852,6 @@
 Total(Amt),Total (Amt),
 Total(Qty),Total (Stk),
 Traceability,Sporbarhet,
-Traceback,Spore tilbake,
 Track Leads by Lead Source.,Sporledninger av blykilde.,
 Transaction,Transaksjons,
 Transaction Date,Transaksjonsdato,
@@ -2930,7 +2889,6 @@
 UOM Conversion factor is required in row {0},Målenheter Omregningsfaktor er nødvendig i rad {0},
 UOM coversion factor required for UOM: {0} in Item: {1},Målenheter coversion faktor nødvendig for målenheter: {0} i Sak: {1},
 URL,URL,
-Unable to find DocType {0},Kan ikke finne DocType {0},
 Unable to find exchange rate for {0} to {1} for key date {2}. Please create a Currency Exchange record manually,Kan ikke finne valutakurs for {0} til {1} for nøkkeldato {2}. Vennligst opprett en valutautvekslingsrekord manuelt,
 Unable to find score starting at {0}. You need to have standing scores covering 0 to 100,Kan ikke finne poeng som starter ved {0}. Du må ha stående poeng som dekker 0 til 100,
 Unable to find variable: ,Kan ikke finne variabel:,
@@ -2960,7 +2918,6 @@
 Upload your letter head and logo. (you can edit them later).,Last opp din brevhode og logo. (Du kan redigere dem senere).,
 Upper Income,Øvre inntekt,
 Use Sandbox,bruk Sandbox,
-Used Leaves,Brukte blad,
 User,Bruker,
 User ID,bruker-ID,
 User ID not set for Employee {0},Bruker-ID ikke satt for Employee {0},
@@ -3051,7 +3008,6 @@
 Website Settings,Nettstedinnstillinger,
 Wednesday,Onsdag,
 Week,Uke,
-Weekdays,hver~~POS=TRUNC,
 Weekly,Ukentlig,
 "Weight is mentioned,\nPlease mention ""Weight UOM"" too","Vekt er nevnt, \ nVennligst nevne &quot;Weight målenheter&quot; også",
 Welcome email sent,Velkommen e-post sendt,
@@ -3072,7 +3028,6 @@
 Work Order {0} must be submitted,Arbeidsordre {0} må sendes,
 Work Orders Created: {0},Arbeidsordre opprettet: {0},
 Work-in-Progress Warehouse is required before Submit,Work-in-progress Warehouse er nødvendig før Send,
-Workflow,Arbeidsflyt,
 Working,Arbeids,
 Working Hours,Arbeidstid,
 Workstation,arbeidsstasjon,
@@ -3102,7 +3057,6 @@
 You need to be a user other than Administrator with System Manager and Item Manager roles to register on Marketplace.,Du må være en annen bruker enn Administrator med System Manager og Item Manager roller for å registrere deg på Marketplace.,
 You need to be a user with System Manager and Item Manager roles to add users to Marketplace.,Du må være en bruker med System Manager og Item Manager roller for å legge til brukere på Marketplace.,
 You need to be a user with System Manager and Item Manager roles to register on Marketplace.,Du må være en bruker med System Manager og Item Manager roller for å registrere deg på Marketplace.,
-You need to be logged in to access this page,Du må være innlogget for å få tilgang til denne siden,
 You need to enable Shopping Cart,Du må aktivere Handlevogn,
 You will lose records of previously generated invoices. Are you sure you want to restart this subscription?,Du vil miste oversikt over tidligere genererte fakturaer. Er du sikker på at du vil starte dette abonnementet på nytt?,
 Your Organization,Din organisasjon,
@@ -3218,7 +3172,6 @@
 Assigned To,Tilordnet,
 Chat,Chat,
 Completed By,Fullført av,
-County,fylke,
 Day of Week,Ukedag,
 "Dear System Manager,","Kjære System Manager,",
 Default Value,Standardverdi,
@@ -3229,31 +3182,21 @@
 Fieldtype,Fieldtype,
 Help Articles,Hjelp artikler,
 ID,ID,
-Images,Bilder,
 Import,Import,
 Language,Språk,
 Likes,Likes,
 Merge with existing,Slå sammen med eksisterende,
-Office,Kontor,
 Orientation,orientering,
 Parent,Parent,
-Passive,Passiv,
 Payment Failed,Betalingen feilet,
-Permanent,Fast,
 Personal,Personlig,
-Plant,Plant,
 Post,Post,
-Postal,Postal,
 Postal Code,postnummer,
-Previous,Forrige,
 Provider,Forsørger,
 Read Only,Read Only,
 Recipient,Mottaker,
 Reviews,anmeldelser,
 Sender,Avsender,
-Shop,Butikk,
-Subsidiary,Datterselskap,
-There is some problem with the file url: {0},Det er noe problem med filen url: {0},
 There were errors while sending email. Please try again.,"Det oppstod feil under sending epost. Vær så snill, prøv på nytt.",
 Values Changed,verdier Endret,
 or,eller,
@@ -3280,19 +3223,16 @@
 Quality Feedback Template,Kvalitet Tilbakemelding Mal,
 Rules for applying different promotional schemes.,Regler for anvendelse av forskjellige kampanjer.,
 Show {0},Vis {0},
-"Special Characters except '-', '#', '.', '/', '{{' and '}}' not allowed in naming series {0}","Spesialtegn unntatt &quot;-&quot;, &quot;#&quot;, &quot;.&quot;, &quot;/&quot;, &quot;{{&quot; Og &quot;}}&quot; ikke tillatt i navneserier {0}",
 Target Details,Måldetaljer,
 {0} already has a Parent Procedure {1}.,{0} har allerede en foreldreprosedyre {1}.,
 API,API,
 Annual,Årlig,
 Change,Endre,
 Contact Email,Kontakt Epost,
-Export Type,Eksporttype,
 From Date,Fra Dato,
 Group By,Gruppe av,
 Invalid URL,ugyldig URL,
 Landscape,Landskap,
-Last Sync On,Sist synk på,
 Naming Series,Navngi Series,
 No data to export,Ingen data å eksportere,
 Portrait,Portrett,
@@ -3302,7 +3242,6 @@
 Show Document,Vis dokument,
 Show Traceback,Vis traceback,
 Video,video,
-Webhook Secret,Webhook Secret,
 % Of Grand Total,% Av Grand Total,
 <b>Company</b> is a mandatory filter.,<b>Selskapet</b> er et obligatorisk filter.,
 <b>From Date</b> is a mandatory filter.,<b>Fra dato</b> er et obligatorisk filter.,
@@ -3358,7 +3297,6 @@
 BOM Comparison Tool,BOM-sammenligningsverktøy,
 BOM recursion: {0} cannot be child of {1},Rekursjon for BOM: {0} kan ikke være barn av {1},
 BOM recursion: {0} cannot be parent or child of {1},Rekruttering til BOM: {0} kan ikke være foreldre eller barn til {1},
-Back to Home,Tilbake til hjemmet,
 Back to Messages,Tilbake til Meldinger,
 Bank Data mapper doesn't exist,Bankdatakartlegging eksisterer ikke,
 Bank Details,Bankinformasjon,
@@ -3420,7 +3358,6 @@
 Currency,Valuta,
 Current Status,Nåværende status,
 Customer PO,Kundepost,
-Customize,Tilpass,
 Daily,Daglig,
 Date,Dato,
 Date of Birth cannot be greater than Joining Date.,Fødselsdato kan ikke være større enn tiltredelsesdato.,
@@ -3454,7 +3391,6 @@
 ERPNext could not find any matching payment entry,ERPNext kunne ikke finne noen matchende betalingsoppføringer,
 Earliest Age,Tidligste alder,
 Edit Details,Rediger detaljer,
-Edit Profile,Endre profil,
 Either GST Transporter ID or Vehicle No is required if Mode of Transport is Road,Enten GST Transporter ID eller kjøretøy Nei er påkrevd hvis modus for transport er vei,
 Email,e-post,
 Email Campaigns,E-postkampanjer,
@@ -3482,7 +3418,6 @@
 Fetch Items from Warehouse,Hent gjenstander fra lageret,
 Fetching...,Henter...,
 Field,feltet,
-File Manager,Filbehandler,
 Filters,Filtre,
 Finding linked payments,Finne koblede betalinger,
 Fleet Management,Flåtestyring,
@@ -3521,7 +3456,6 @@
 Incorrect Warehouse,Feil lager,
 Invalid Barcode. There is no Item attached to this barcode.,Ugyldig strekkode. Det er ingen ting knyttet til denne strekkoden.,
 Invalid credentials,Ugyldige legitimasjon,
-Invite as User,Inviter som User,
 Issue Priority.,Utgaveprioritet.,
 Issue Type.,Utgavetype.,
 "It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.",Det ser ut til at det er et problem med serverens stripekonfigurasjon. I tilfelle feil blir beløpet refundert til kontoen din.,
@@ -3564,7 +3498,6 @@
 New Invoice,Ny faktura,
 New Payment,Ny betaling,
 New release date should be in the future,Ny utgivelsesdato bør være i fremtiden,
-Newsletter,Nyhetsbrev,
 No Account matched these filters: {},Ingen kontoer matchet disse filtrene: {},
 No communication found.,Ingen kommunikasjon funnet.,
 No correct answer is set for {0},Det er ikke satt noe riktig svar for {0},
@@ -3640,7 +3573,6 @@
 Please setup a default bank account for company {0},Sett opp en standard bankkonto for selskapet {0},
 Please specify,Vennligst spesifiser,
 Please specify a {0},Angi {0},lead
-Printing,Utskrift,
 Priority,Prioritet,
 Priority has been changed to {0}.,Prioritet er endret til {0}.,
 Priority {0} has been repeated.,Prioritet {0} har blitt gjentatt.,
@@ -3649,7 +3581,6 @@
 Project,Prosjekt,
 Provide the academic year and set the starting and ending date.,Gi studieåret og angi start- og sluttdato.,
 Public token is missing for this bank,Offentlig token mangler for denne banken,
-Publish,publisere,
 Publish 1 Item,Publiser 1 vare,
 Publish Items,Publiser elementer,
 Publish More Items,Publiser flere elementer,
@@ -3677,7 +3608,6 @@
 Reconciled,forsonet,
 Recruitment,Rekruttering,
 Red,Rød,
-Refreshing,forfriskende,
 Release date must be in the future,Utgivelsesdato må være i fremtiden,
 Relieving Date must be greater than or equal to Date of Joining,Relieving Date må være større enn eller lik dato for tiltredelse,
 Rename,Gi nytt navn,
@@ -3721,7 +3651,6 @@
 Search for a payment,Søk etter en betaling,
 Search for anything ...,Søk etter noe ...,
 Search results for,Søkeresultater for,
-Select All,Velg Alle,
 Select Difference Account,Velg Differanse-konto,
 Select a Default Priority.,Velg en standardprioritet.,
 Select a company,Velg et selskap,
@@ -3740,11 +3669,9 @@
 Service Level Agreement has been changed to {0}.,Servicenivåavtale er endret til {0}.,
 Service Level Agreement was reset.,Servicenivåavtale ble tilbakestilt.,
 Service Level Agreement with Entity Type {0} and Entity {1} already exists.,Servicenivåavtale med enhetstype {0} og enhet {1} eksisterer allerede.,
-Set,Set,
 Set Meta Tags,Angi metatagger,
 Set {0} in company {1},Sett {0} i firma {1},
 Setup,Setup,
-Setup Wizard,Setup Wizard,
 Shift Management,Shift Management,
 Show Future Payments,Vis fremtidige betalinger,
 Show Linked Delivery Notes,Vis tilknyttede leveringsnotater,
@@ -3815,7 +3742,6 @@
 Unreconciled,Ikke-avstemt,
 Unsupported GST Category for E-Way Bill JSON generation,Ikke støttet GST-kategori for e-veis Bill JSON-generasjon,
 Update,Oppdater,
-Update Details,Oppdater detaljer,
 Update Taxes for Items,Oppdater skatter for varer,
 "Upload a bank statement, link or reconcile a bank account","Last opp en kontoutskrift, koble til eller forene en bankkonto",
 Upload a statement,Last opp en uttalelse,
@@ -3839,7 +3765,6 @@
 XML Files Processed,XML-filer behandlet,
 Year,År,
 Yearly,årlig,
-You,Du,
 You are not allowed to enroll for this course,Du har ikke lov til å melde deg på dette kurset,
 You are not enrolled in program {0},Du er ikke påmeldt programmet {0},
 You can Feature upto 8 items.,Du kan ha opptil 8 artikler.,
@@ -3856,7 +3781,6 @@
 e-Way Bill already exists for this document,e-Way Bill eksisterer allerede for dette dokumentet,
 woocommerce - {0},woocommerce - {0},
 {0} Coupon used are {1}. Allowed quantity is exhausted,{0} Kupongen som brukes er {1}. Tillatt mengde er oppbrukt,
-{0} Name,{0} Name,
 {0} Operations: {1},{0} Operasjoner: {1},
 {0} bank transaction(s) created,{0} banktransaksjoner er opprettet,
 {0} bank transaction(s) created and {1} errors,{0} banktransaksjoner er opprettet og {1} feil,
@@ -3875,17 +3799,13 @@
 Total Income,Totale inntekter,
 Total Income This Year,Samlet inntekt i år,
 Barcode,Barcode,
-Bold,Modig,
-Center,Sentrum,
 Clear,Klar,
-Comment,Kommentar,
 Comments,Kommentarer,
 DocType,DOCTYPE,
 Download,nedlasting,
 Left,Venstre,
 Link,link,
 New,Ny,
-Not Found,Ikke Funnet,
 Print,Skrive ut,
 Reference Name,referansenavn,
 Refresh,Refresh,
@@ -3908,7 +3828,6 @@
 Email Id,E-ID,
 No,Nei,
 Reference Doctype,Referanse DOCTYPE,
-User Id,Bruker-ID,
 Yes,Ja,
 Actual ,Faktiske,
 Add to cart,Legg til i handlevogn,
@@ -4304,7 +4223,6 @@
 e.g Adjustments for:,f.eks. justeringer for:,
 Section Subtotal,Seksjon Subtotal,
 Section Footer,Seksjon Footer,
-Position,Posisjon,
 Cash Flow Mapping,Cash Flow Mapping,
 Select Maximum Of 1,Velg Maksimum 1,
 Is Finance Cost,Er finansieringskostnad,
@@ -4936,7 +4854,6 @@
 Previous Business Day,Tidligere arbeidsdag,
 Next Business Day,Neste arbeidsdag,
 Urgent,Haster,
-Crop,Avling,
 Crop Name,Beskjære navn,
 Scientific Name,Vitenskapelig navn,
 "You can define all the tasks which need to carried out for this crop here. The day field is used to mention the day on which the task needs to be carried out, 1 being the 1st day, etc.. ","Du kan definere alle oppgavene som må utføres for denne avlingen her. Dagfeltet brukes til å nevne hvilken dag oppgaven må utføres, 1 er 1. dag, osv.",
@@ -5441,7 +5358,6 @@
 To TIme,Til Time,
 Course End Date,Kurs Sluttdato,
 Course Topic,Kursemne,
-Topic,Emne,
 Topic Name,emne Name,
 Education Settings,Utdanning Innstillinger,
 Current Academic Year,Nåværende akademisk år,
@@ -5516,7 +5432,6 @@
 Check this if the Student is residing at the Institute's Hostel.,Sjekk dette hvis studenten er bosatt ved instituttets Hostel.,
 Walking,walking,
 Institute's Bus,Instituttets buss,
-Public Transport,Offentlig transport,
 Self-Driving Vehicle,Selvkjørende kjøretøy,
 Pick/Drop by Guardian,Pick / Drop av Guardian,
 Enrolled courses,Påmeldte kurs,
@@ -5697,7 +5612,6 @@
 Default Cost Center,Standard kostnadssted,
 Undeposited Funds Account,Ubestemt fondskonto,
 Shopify Log,Shopify Log,
-Request Data,Forespørseldata,
 Shopify Settings,Shopify Innstillinger,
 status html,status html,
 Enable Shopify,Aktiver Shopify,
@@ -5817,7 +5731,6 @@
 Exercise Instructions,Treningsinstruksjoner,
 Exercise Video,Treningsvideo,
 Exercise Steps,Treningstrinn,
-Steps,Fremgangsmåte,
 Steps Table,Trinnstabell,
 Exercise Type Step,Treningstype trinn,
 Max number of visit,Maks antall besøk,
@@ -6001,7 +5914,6 @@
 Patient Encounter Symptom,Pasientmøte Symptom,
 HLC-PMR-.YYYY.-,HLC-PMR-.YYYY.-,
 Attach Medical Record,Legg ved journal,
-Reference DocType,Referanse DocType,
 Spouse,Ektefelle,
 Family,Familie,
 Schedule Details,Planlegg detaljer,
@@ -6983,16 +6895,8 @@
 HTML / Banner that will show on the top of product list.,HTML / Banner som vil vises på toppen av listen over produkter.,
 Set prefix for numbering series on your transactions,Still prefiks for nummerering serien på dine transaksjoner,
 Setup Series,Oppsett Series,
-Select Transaction,Velg Transaksjons,
-Help HTML,Hjelp HTML,
-Series List for this Transaction,Serien Liste for denne transaksjonen,
-User must always select,Brukeren må alltid velge,
-Check this if you want to force the user to select a series before saving. There will be no default if you check this.,Sjekk dette hvis du vil tvinge brukeren til å velge en serie før du lagrer. Det blir ingen standard hvis du sjekke dette.,
 Update Series,Update-serien,
 Change the starting / current sequence number of an existing series.,Endre start / strøm sekvensnummer av en eksisterende serie.,
-Prefix,Prefix,
-This is the number of the last created transaction with this prefix,Dette er nummeret på den siste laget transaksjonen med dette prefikset,
-Update Series Number,Update-serien Nummer,
 Quotation Lost Reason,Sitat av Lost Reason,
 A third party distributor / dealer / commission agent / affiliate / reseller who sells the companies products for a commission.,En tredjepart distributør / forhandler / kommisjonær / agent / forhandler som selger selskaper produkter for en kommisjon.,
 Sales Partner Name,Sales Partner Name,
@@ -7687,7 +7591,6 @@
 Warehouse wise Item Balance Age and Value,Lagerbetraktet Varebalanse Alder og verdi,
 Work Order Stock Report,Arbeide ordre lagerrapport,
 Work Orders in Progress,Arbeidsordrer pågår,
-Validation Error,Valideringsfeil,
 Automatically Process Deferred Accounting Entry,Behandle utsatt regnskapsføring automatisk,
 Bank Clearance,Bankklarering,
 Bank Clearance Detail,Bankklaringsdetaljer,
@@ -7724,45 +7627,7 @@
 Therapy Plan: ,Terapiplan:,
 Total Counts Targeted: ,Totalt antall mål:,
 Total Counts Completed: ,Totalt antall teller fullført:,
-Andaman and Nicobar Islands,Andaman- og Nicobarøyene,
-Andhra Pradesh,Andhra Pradesh,
-Arunachal Pradesh,Arunachal Pradesh,
-Assam,Assam,
-Bihar,Bihar,
-Chandigarh,Chandigarh,
-Chhattisgarh,Chhattisgarh,
-Dadra and Nagar Haveli,Dadra og Nagar Haveli,
-Daman and Diu,Daman og Diu,
-Delhi,Delhi,
-Goa,Goa,
-Gujarat,Gujarat,
-Haryana,Haryana,
-Himachal Pradesh,Himachal Pradesh,
-Jammu and Kashmir,Jammu og Kashmir,
-Jharkhand,Jharkhand,
-Karnataka,Karnataka,
-Kerala,Kerala,
-Lakshadweep Islands,Lakshadweep Islands,
-Madhya Pradesh,Madhya Pradesh,
-Maharashtra,Maharashtra,
-Manipur,Manipur,
-Meghalaya,Meghalaya,
-Mizoram,Mizoram,
-Nagaland,Nagaland,
-Odisha,Odisha,
-Other Territory,Annet territorium,
-Pondicherry,Pondicherry,
-Punjab,Punjab,
-Rajasthan,Rajasthan,
-Sikkim,Sikkim,
-Tamil Nadu,Tamil Nadu,
-Telangana,Telangana,
-Tripura,Tripura,
-Uttar Pradesh,Uttar Pradesh,
-Uttarakhand,Uttarakhand,
-West Bengal,Vest-Bengal,
 Is Mandatory,Er obligatorisk,
-Published on,Publisert den,
 Service Received But Not Billed,"Tjeneste mottatt, men ikke fakturert",
 Deferred Accounting Settings,Utsatt regnskapsinnstillinger,
 Book Deferred Entries Based On,Book utsatte oppføringer basert på,
@@ -8035,8 +7900,6 @@
 Worksheet Instructions,Arbeidsarkinstruksjoner,
 Result Legend Print,Resultat Legend Print,
 Print Position,Utskriftsposisjon,
-Bottom,Bunn,
-Top,Topp,
 Both,Både,
 Result Legend,Resultatforklaring,
 Lab Tests,Lab-tester,
@@ -8081,12 +7944,10 @@
 Approvers,Tilstridende,
 The first Approver in the list will be set as the default Approver.,Den første godkjenneren i listen blir angitt som standard godkjenner.,
 Shift Request Approver,Godkjenning av skiftforespørsel,
-PAN Number,PAN-nummer,
 Provident Fund Account,Forsikringskonto,
 MICR Code,MICR-kode,
 Repay unclaimed amount from salary,Tilbakebetalt uavhentet beløp fra lønn,
 Deduction from salary,Trekk fra lønn,
-Expired Leaves,Utløpte blader,
 If this is not checked the loan by default will be considered as a Demand Loan,"Hvis dette ikke er sjekket, vil lånet som standard bli betraktet som et etterspørsel",
 This account is used for booking loan repayments from the borrower and also disbursing loans to the borrower,Denne kontoen brukes til å bestille tilbakebetaling av lån fra låntaker og også utbetale lån til låner,
 This account is capital account which is used to allocate capital for loan disbursal account ,Denne kontoen er en kapitalkonto som brukes til å fordele kapital til utbetaling av lån,
@@ -8844,3 +8705,41 @@
 Creating Purchase Order ...,Opprette innkjøpsordre ...,
 "Select a Supplier from the Default Suppliers of the items below. On selection, a Purchase Order will be made against items belonging to the selected Supplier only.",Velg en leverandør fra standardleverandørene av artiklene nedenfor. Ved valg vil det kun gjøres en innkjøpsordre mot varer som tilhører den valgte leverandøren.,
 Row #{}: You must select {} serial numbers for item {}.,Rad nr. {}: Du må velge {} serienumre for varen {}.,
+Add Comment,Legg til en kommentar,
+More...,Mer...,
+Notes,Notater,
+Payment Gateway,Betaling Gateway,
+Payment Gateway Name,Betalings gateway navn,
+Payments,Betalinger,
+Plan Name,Plan navn,
+Portal,Portal,
+Scan Barcode,Skann strekkode,
+Some information is missing,mangler litt informasjon,
+Successful,Vellykket,
+Tools,Verktøy,
+Use Sandbox,bruk Sandbox,
+Busy,Opptatt,
+Completed By,Fullført av,
+Payment Failed,Betalingen feilet,
+Column {0},Kolonne {0},
+Field Mapping,Feltkartlegging,
+Not Specified,Ikke spesifisert,
+Update Type,Oppdateringstype,
+Dr,Dr,
+End Time,Sluttid,
+Fetching...,Henter...,
+"It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.",Det ser ut til at det er et problem med serverens stripekonfigurasjon. I tilfelle feil blir beløpet refundert til kontoen din.,
+Looks like someone sent you to an incomplete URL. Please ask them to look into it.,Ser ut som noen har sendt deg til en ufullstendig nettadresse. Vennligst be dem om å se nærmere på saken.,
+Master,Master,
+Pay,Betale,
+You can also copy-paste this link in your browser,Du kan også kopiere og lime inn lenken i din nettleser,
+Verified By,Verified by,
+Invalid naming series (. missing) for {0},Ugyldig navneserie (. Mangler) for {0},
+Phone Number,Telefonnummer,
+Account SID,Konto SID,
+Global Defaults,Global Defaults,
+Is Mandatory,Er obligatorisk,
+WhatsApp,Hva skjer,
+Make a call,Ta en telefon,
+Approve,Vedta,
+Reject,Avvis,
diff --git a/erpnext/translations/pl.csv b/erpnext/translations/pl.csv
index 82cc64d..9be56f3 100644
--- a/erpnext/translations/pl.csv
+++ b/erpnext/translations/pl.csv
@@ -113,7 +113,6 @@
 Add Items,Dodaj pozycje,
 Add Leads,Dodaj namiary,
 Add Multiple Tasks,Dodaj wiele zadań,
-Add Row,Dodaj wiersz,
 Add Sales Partners,Dodaj partnerów handlowych,
 Add Serial No,Dodaj nr seryjny,
 Add Students,Dodaj uczniów,
@@ -211,9 +210,7 @@
 An error occurred during the update process,Wystąpił błąd podczas procesu aktualizacji,
 "An item exists with same name ({0}), please change the item group name or rename the item",Istnieje element  o takiej nazwie. Zmień nazwę Grupy lub tego elementu.,
 Analyst,Analityk,
-Analytics,Analityk,
 Annual Billing: {0},Roczne rozliczeniowy: {0},
-Anonymous,Anonimowy,
 Another Budget record '{0}' already exists against {1} '{2}' and account '{3}' for fiscal year {4},Inny rekord budżetu &quot;{0}&quot; już istnieje w stosunku do {1} &quot;{2}&quot; i konta &quot;{3}&quot; w roku finansowym {4},
 Another Period Closing Entry {0} has been made after {1},Kolejny okres Zamknięcie Wejście {0} została wykonana po {1},
 Another Sales Person {0} exists with the same Employee id,Inna osoba Sprzedaż {0} istnieje w tym samym identyfikator pracownika,
@@ -283,13 +280,11 @@
 Attendance not submitted for {0} as {1} on leave.,Obecność nie została przesłana do {0} jako {1} podczas nieobecności.,
 Attribute table is mandatory,Stół atrybut jest obowiązkowy,
 Attribute {0} selected multiple times in Attributes Table,Atrybut {0} wybrane atrybuty kilka razy w tabeli,
-Author,Autor,
 Authorized Signatory,Upoważniony sygnatariusz,
 Auto Material Requests Generated,Wnioski Auto Materiał Generated,
 Auto Repeat,Auto Repeat,
 Auto repeat document updated,Automatycznie powtórzony dokument został zaktualizowany,
 Available,Dostępny,
-Available Leaves,Dostępne Nieobecności,
 Available Qty,Dostępne szt,
 Available Selling,Dostępne sprzedawanie,
 Available for use date is required,Dostępna jest data przydatności do użycia,
@@ -339,7 +334,6 @@
 Base URL,Podstawowy adres URL,
 Based On,Bazujący na,
 Based On Payment Terms,Bazując na Zasadach Płatności,
-Basic,Podstawowy,
 Batch,Partia,
 Batch Entries,Wpisy wsadowe,
 Batch ID is mandatory,Identyfikator zbiorczy jest obowiązkowy,
@@ -360,7 +354,6 @@
 Billable Hours,Rozliczalne godziny,
 Billed,Rozliczony,
 Billed Amount,Ilość Rozliczenia,
-Billing,Dane do faktury,
 Billing Address,Adres Faktury,
 Billing Address is same as Shipping Address,"Adres rozliczeniowy jest taki sam, jak adres wysyłki",
 Billing Amount,Kwota Rozliczenia,
@@ -559,7 +552,6 @@
 Consumed Qty,Skonsumowana ilość,
 Consumer Products,Produkty konsumenckie,
 Contact,Kontakt,
-Contact Details,Szczegóły kontaktu,
 Contact Us,Skontaktuj się z nami,
 Content,Zawartość,
 Content Masters,Mistrzowie treści,
@@ -714,7 +706,6 @@
 Date of Joining,Data Wstąpienia,
 Date of Joining must be greater than Date of Birth,Data Wstąpienie musi być większa niż Data Urodzenia,
 Date of Transaction,Data transakcji,
-Datetime,Data-czas,
 Day,Dzień,
 Debit,Debet,
 Debit ({0}),Debet ({0}),
@@ -873,7 +864,6 @@
 Employee cannot report to himself.,Pracownik nie może odpowiadać do samego siebie.,
 Employee {0} has already applied for {1} between {2} and {3} : ,Pracownik {0} złożył już wniosek o przyznanie {1} między {2} a {3}:,
 Employee {0} of grade {1} have no default leave policy,Pracownik {0} stopnia {1} nie ma domyślnych zasad dotyczących urlopu,
-Enable,Włączyć,
 Enable / disable currencies.,Włącz/wyłącz waluty.,
 Enabled,Aktywny,
 "Enabling 'Use for Shopping Cart', as Shopping Cart is enabled and there should be at least one Tax Rule for Shopping Cart","Włączenie &quot;użycie do koszyka&quot;, ponieważ koszyk jest włączony i nie powinno być co najmniej jedna zasada podatkowa w koszyku",
@@ -904,7 +894,6 @@
 Error: Not a valid id?,Błąd: Nie ważne id?,
 Estimated Cost,Szacowany koszt,
 "Even if there are multiple Pricing Rules with highest priority, then following internal priorities are applied:","Nawet jeśli istnieje wiele przepisów dotyczących cen o najwyższym priorytecie, a następnie następujące priorytety wewnętrznej są stosowane:",
-Event,Wydarzenie,
 Exchange Gain/Loss,Wymiana Zysk / Strata,
 Exchange Rate Revaluation master.,Mistrz wyceny kursu wymiany.,
 Exchange Rate must be same as {0} {1} ({2}),"Kurs wymiany muszą być takie same, jak {0} {1} ({2})",
@@ -1031,7 +1020,6 @@
 From value must be less than to value in row {0},"Wartość ""od"" musi być mniejsza niż wartość w rzędzie {0}",
 From {0} | {1} {2},Od {0} | {1} {2},
 Fulfillment,Spełnienie,
-Full,Pełny,
 Full Name,Imię i nazwisko,
 Fully Depreciated,pełni zamortyzowanych,
 Furnitures and Fixtures,Meble i wyposażenie,
@@ -1132,7 +1120,6 @@
 Hub Sync ID,Identyfikator Hub Sync,
 Human Resource,Zasoby ludzkie,
 Human Resources,Kadry,
-IFSC Code,Kod IFSC,
 IGST Amount,Wielkość IGST,
 IP Address,Adres IP,
 ITC Available (whether in full op part),Dostępne ITC (czy w pełnej wersji),
@@ -1182,7 +1169,6 @@
 Ineligible ITC,Niekwalifikowany ITC,
 Initiated,Zapoczątkowany,
 Inpatient Record,Zapis ambulatoryjny,
-Insert,Wstaw,
 Installation Note,Notka instalacyjna,
 Installation Note {0} has already been submitted,Notka instalacyjna {0} została już dodana,
 Installation date cannot be before delivery date for Item {0},Data instalacji nie może być wcześniejsza niż data dostawy dla pozycji {0},
@@ -1194,7 +1180,6 @@
 Insurance Start date should be less than Insurance End date,Data rozpoczęcia ubezpieczenia powinna być mniejsza niż data zakończenia ubezpieczenia,
 Integrated Tax,Zintegrowany podatek,
 Inter-State Supplies,Dostawy międzypaństwowe,
-Interests,Zainteresowania,
 Internet Publishing,Wydawnictwa internetowe,
 Intra-State Supplies,Materiały wewnątrzpaństwowe,
 Introduction,Wprowadzenie,
@@ -1310,7 +1295,6 @@
 Lab testing datetime cannot be before collection datetime,Data testowania laboratorium nie może być datą zbierania danych,
 Label,etykieta,
 Laboratory,Laboratorium,
-Language Name,Nazwa Język,
 Large,Duży,
 Last Communication,Ostatnia komunikacja,
 Last Communication Date,Ostatni dzień komunikacji,
@@ -1341,8 +1325,6 @@
 Letter Heads for print templates.,Nagłówki dla szablonów druku,
 Level,Poziom,
 Liability,Zobowiązania,
-License,Licencja,
-Limit,Limit,
 Limit Crossed,Limit Crossed,
 Link to Material Request,Link do żądania materiałowego,
 List of all share transactions,Lista wszystkich transakcji akcji,
@@ -1353,7 +1335,6 @@
 Loans (Liabilities),Kredyty (zobowiązania),
 Loans and Advances (Assets),Pożyczki i zaliczki (aktywa),
 Local,Lokalne,
-Log,Log,
 Logs for maintaining sms delivery status,Logi do utrzymania sms stan przesyłki,
 Lost,Straty,
 Lost Reasons,Przegrane przyczyny,
@@ -1439,7 +1420,6 @@
 Medical Department,Wydział Lekarski,
 Medical Record,Historia choroby,
 Medium,Średni,
-Meeting,Spotkanie,
 Member Activity,Aktywność użytkownika,
 Member ID,ID Użytkownika,
 Member Name,Nazwa członka,
@@ -1489,7 +1469,6 @@
 Multiple Variants,Wiele wariantów,
 Multiple fiscal years exist for the date {0}. Please set company in Fiscal Year,Wiele lat podatkowych istnieją na dzień {0}. Proszę ustawić firmy w roku finansowym,
 Music,Muzyka,
-My Account,Moje Konto,
 Name error: {0},Błąd Nazwa: {0},
 Name of new Account. Note: Please don't create accounts for Customers and Suppliers,Nazwa nowego konta. Uwaga: Proszę nie tworzyć konta dla odbiorców i dostawców,
 Name or Email is mandatory,Imię lub E-mail jest obowiązkowe,
@@ -1532,7 +1511,6 @@
 New credit limit is less than current outstanding amount for the customer. Credit limit has to be atleast {0},Nowy limit kredytowy wynosi poniżej aktualnej kwoty należności dla klienta. Limit kredytowy musi być conajmniej {0},
 New task,Nowe zadanie,
 New {0} pricing rules are created,Utworzono nowe {0} reguły cenowe,
-Newsletters,Biuletyny,
 Newspaper Publishers,Wydawcy gazet,
 Next,Dalej,
 Next Contact By cannot be same as the Lead Email Address,Następnie Kontakt By nie może być taki sam jak adres e-mail Wiodącego,
@@ -1679,7 +1657,6 @@
 Other,Inne,
 Other Reports,Inne raporty,
 "Other outward supplies(Nil rated,Exempted)","Inne dostawy zewnętrzne (bez oceny, zwolnione)",
-Others,Inni,
 Out Qty,Brak Ilości,
 Out Value,Brak Wartości,
 Out of Order,Nieczynny,
@@ -1719,7 +1696,6 @@
 Party Type and Party is mandatory for {0} account,Typ strony i strona są obowiązkowe dla konta {0},
 Party Type is mandatory,Rodzaj Partia jest obowiązkowe,
 Party is mandatory,Partia jest obowiązkowe,
-Password,Hasło,
 Past Due Date,Minione terminy,
 Patient,Cierpliwy,
 Patient Appointment,Powtarzanie Pacjenta,
@@ -1777,7 +1753,6 @@
 Pharmaceutical,Farmaceutyczny,
 Pharmaceuticals,Farmaceutyczne,
 Physician,Lekarz,
-Pincode,Kod PIN,
 Place Of Supply (State/UT),Miejsce zaopatrzenia (stan / UT),
 Place Order,Złóż zamówienie,
 Plan Name,Nazwa planu,
@@ -1886,7 +1861,6 @@
 Please select date,Proszę wybrać datę,
 Please select item code,Wybierz kod produktu,
 Please select month and year,Wybierz miesiąc i rok,
-Please select prefix first,Wybierz prefiks,
 Please select the Company,Wybierz firmę,
 Please select the Multiple Tier Program type for more than one collection rules.,Wybierz typ programu dla wielu poziomów dla więcej niż jednej reguły zbierania.,
 Please select the assessment group other than 'All Assessment Groups',Proszę wybrać grupę oceniającą inną niż &quot;Wszystkie grupy oceny&quot;,
@@ -1903,7 +1877,6 @@
 Please set Company filter blank if Group By is 'Company',"Proszę wyłączyć filtr firmy, jeśli Group By jest &quot;Company&quot;",
 Please set Default Payroll Payable Account in Company {0},Proszę ustawić domyślny Payroll konto płatne w Spółce {0},
 Please set Depreciation related Accounts in Asset Category {0} or Company {1},Proszę ustawić amortyzacyjny dotyczący Konta aktywów z kategorii {0} lub {1} Spółki,
-Please set Email Address,Proszę ustawić adres e-mail,
 Please set GST Accounts in GST Settings,Ustaw Konta GST w Ustawieniach GST,
 Please set Hotel Room Rate on {},Ustaw stawkę hotelową na {},
 Please set Number of Depreciations Booked,Proszę ustawić ilość amortyzacji zarezerwowano,
@@ -1926,7 +1899,6 @@
 Please set the Email ID for the Student to send the Payment Request,"Proszę podać identyfikator e-mailowy studenta, aby wysłać żądanie płatności",
 Please set the Item Code first,Proszę najpierw ustawić kod pozycji,
 Please set the Payment Schedule,Ustaw harmonogram płatności,
-Please set the series to be used.,"Ustaw serię, która ma być używana.",
 Please set {0} for address {1},Ustaw {0} na adres {1},
 Please setup Students under Student Groups,Proszę ustawić Studentów w grupach studenckich,
 Please specify Company,Sprecyzuj Firmę,
@@ -1942,7 +1914,6 @@
 Point-of-Sale,Punkt sprzedaży,
 Point-of-Sale Profile,Point-of-Sale profil,
 Portal,Portal,
-Portal Settings,Ustawienia,
 Possible Supplier,Dostawca możliwe,
 Postal Expenses,Wydatki pocztowe,
 Posting Date,Data publikacji,
@@ -2140,12 +2111,10 @@
 Reference No is mandatory if you entered Reference Date,Nr Odniesienia jest obowiązkowy jest wprowadzono Datę Odniesienia,
 Reference No.,Nr referencyjny.,
 Reference Number,Numer Odniesienia,
-Reference Owner,Odniesienie Właściciel,
 Reference Type,Typ Odniesienia,
 "Reference: {0}, Item Code: {1} and Customer: {2}","Odniesienie: {0}, Kod pozycji: {1} i klient: {2}",
 References,Referencje,
 Refresh Token,Odśwież Reklamowe,
-Region,Region,
 Register,Zarejestrować,
 Rejected,Odrzucono,
 Related,Związane z,
@@ -2167,7 +2136,6 @@
 Replace BOM and update latest price in all BOMs,Zastąp BOM i zaktualizuj ostatnią cenę we wszystkich materiałach,
 Replied,Odpowiedziane,
 Report,Raport,
-Report Builder,Kreator raportów,
 Report Type,Typ raportu,
 Report Type is mandatory,Typ raportu jest wymagany,
 Reports,Raporty,
@@ -2338,13 +2306,11 @@
 Same Company is entered more than once,Ta sama Spółka wpisana jest więcej niż jeden raz,
 Same item cannot be entered multiple times.,Sama pozycja nie może być wprowadzone wiele razy.,
 Same supplier has been entered multiple times,"Tego samego dostawcy, który został wpisany wielokrotnie",
-Sample,Próba,
 Sample Collection,Kolekcja próbek,
 Sample quantity {0} cannot be more than received quantity {1},Ilość próbki {0} nie może być większa niż ilość odebranej {1},
 Sanctioned,usankcjonowane,
 Sand,Piasek,
 Saturday,Sobota,
-Saved,Zapisane,
 Saving {0},Zapisywanie {0},
 Scan Barcode,Skanuj kod kreskowy,
 Schedule,Harmonogram,
@@ -2445,7 +2411,6 @@
 Series Updated,Aktualizacja serii,
 Series Updated Successfully,Seria zaktualizowana,
 Series is mandatory,Serie jest obowiązkowa,
-Series {0} already used in {1},Seria {0} już zostały użyte w {1},
 Service,Usługa,
 Service Level Agreement,Umowa o poziomie usług,
 Service Level Agreement.,Umowa o poziomie usług.,
@@ -2461,7 +2426,6 @@
 Set Tax Rule for shopping cart,Ustaw regułę podatkowa do koszyka,
 Set as Closed,Ustaw jako Zamknięty,
 Set as Completed,Ustaw jako ukończone,
-Set as Default,Ustaw jako domyślne,
 Set as Lost,Ustaw jako utracony,
 Set as Open,Ustaw jako otwarty,
 Set default inventory account for perpetual inventory,Ustaw domyślne konto zapasów dla zasobów reklamowych wieczystych,
@@ -2493,7 +2457,6 @@
 Shareholder,Akcjonariusz,
 Ship To State,Ship To State,
 Shipments,Przesyłki,
-Shipping,Wysyłka,
 Shipping Address,Adres dostawy,
 "Shipping Address does not have country, which is required for this Shipping Rule","Adres wysyłki nie ma kraju, który jest wymagany dla tej reguły wysyłki",
 Shipping rule only applicable for Buying,Zasada wysyłki ma zastosowanie tylko do zakupów,
@@ -2546,7 +2509,6 @@
 Split Batch,Podział partii,
 Split Issue,Podziel problem,
 Sports,Sporty,
-Standard,Standard,
 Standard Buying,Standardowe zakupy,
 Standard Selling,Standard sprzedaży,
 Standard contract terms for Sales or Purchase.,Standardowe warunki umowy sprzedaży lub kupna.,
@@ -2709,7 +2671,6 @@
 Terms and Conditions,Regulamin,
 Terms and Conditions Template,Szablony warunków i regulaminów,
 Territory,Region,
-Test,Test,
 Thank you for your business!,Dziękuję dla Twojej firmy!,
 The 'From Package No.' field must neither be empty nor it's value less than 1.,The &#39;From Package No.&#39; pole nie może być puste ani jego wartość mniejsza niż 1.,
 The Brand,Marka,
@@ -2824,7 +2785,6 @@
 Total (Without Tax),Razem (bez podatku),
 Total Achieved,Razem Osiągnięte,
 Total Actual,Razem Rzeczywisty,
-Total Allocated Leaves,Całkowicie Przydzielone Nieobecności,
 Total Amount,Wartość całkowita,
 Total Amount Credited,Całkowita kwota kredytu,
 Total Applicable Charges in Purchase Receipt Items table must be same as Total Taxes and Charges,Wszystkich obowiązujących opłat w ZAKUPU Elementy tabeli muszą być takie same jak Wszystkich podatkach i opłatach,
@@ -2868,7 +2828,6 @@
 Total(Amt),Razem (Amt),
 Total(Qty),Razem (szt),
 Traceability,Śledzenie,
-Traceback,Traceback,
 Track Leads by Lead Source.,Śledzenie potencjalnych klientów przez źródło potencjalnych klientów.,
 Transaction,Transakcja,
 Transaction Date,Data transakcji,
@@ -2906,7 +2865,6 @@
 UOM Conversion factor is required in row {0},Współczynnik konwersji jednostki miary jest wymagany w rzędzie {0},
 UOM coversion factor required for UOM: {0} in Item: {1},Współczynnik konwersji jednostki miary jest wymagany dla jednostki miary: {0} w Przedmiocie: {1},
 URL,URL,
-Unable to find DocType {0},Nie można znaleźć DocType {0},
 Unable to find exchange rate for {0} to {1} for key date {2}. Please create a Currency Exchange record manually,Nie można znaleźć kursu wymiany dla {0} do {1} dla daty klucza {2}. Proszę utworzyć ręcznie rekord wymiany walut,
 Unable to find score starting at {0}. You need to have standing scores covering 0 to 100,"Nie można znaleźć wyników, począwszy od {0}. Musisz mieć stały wynik od 0 do 100",
 Unable to find variable: ,Nie można znaleźć zmiennej:,
@@ -2936,7 +2894,6 @@
 Upload your letter head and logo. (you can edit them later).,Prześlij nagłówek firmowy i logo. (Można je edytować później).,
 Upper Income,Wzrost Wpływów,
 Use Sandbox,Korzystanie Sandbox,
-Used Leaves,Wykorzystane Nieobecności,
 User,Użytkownik,
 User ID,ID Użytkownika,
 User ID not set for Employee {0},ID Użytkownika nie ustawiony dla Pracownika {0},
@@ -3026,7 +2983,6 @@
 Website Settings,Ustawienia witryny,
 Wednesday,Środa,
 Week,Tydzień,
-Weekdays,Dni robocze,
 Weekly,Tygodniowo,
 "Weight is mentioned,\nPlease mention ""Weight UOM"" too","Waga jest określona, \n Ustaw także ""Wagę jednostkową""",
 Welcome email sent,E-mail z powitaniem został wysłany,
@@ -3047,7 +3003,6 @@
 Work Order {0} must be submitted,Zamówienie pracy {0} musi zostać przesłane,
 Work Orders Created: {0},Utworzono zlecenia pracy: {0},
 Work-in-Progress Warehouse is required before Submit,Magazyn z produkcją w toku jest wymagany przed wysłaniem,
-Workflow,Przepływ pracy (Workflow),
 Working,Pracuje,
 Working Hours,Godziny pracy,
 Workstation,Stacja robocza,
@@ -3077,7 +3032,6 @@
 You need to be a user other than Administrator with System Manager and Item Manager roles to register on Marketplace.,"Aby zarejestrować się w Marketplace, musisz być użytkownikiem innym niż Administrator z rolami System Manager i Item Manager.",
 You need to be a user with System Manager and Item Manager roles to add users to Marketplace.,"Musisz być użytkownikiem z rolami System Manager i Menedżera elementów, aby dodawać użytkowników do Marketplace.",
 You need to be a user with System Manager and Item Manager roles to register on Marketplace.,"Aby zarejestrować się w Marketplace, musisz być użytkownikiem z rolami System Manager i Item Manager.",
-You need to be logged in to access this page,Musisz być zalogowany aby uzyskać dostęp do tej strony,
 You need to enable Shopping Cart,Musisz włączyć Koszyk,
 You will lose records of previously generated invoices. Are you sure you want to restart this subscription?,Utracisz zapis wcześniej wygenerowanych faktur. Czy na pewno chcesz zrestartować tę subskrypcję?,
 Your Organization,Twoja organizacja,
@@ -3192,7 +3146,6 @@
 Assigned To,Przypisano do,
 Chat,Czat,
 Completed By,Ukończony przez,
-County,Powiat,
 Day of Week,Dzień tygodnia,
 "Dear System Manager,",Szanowny Dyrektorze ds. Systemu,
 Default Value,Domyślna wartość,
@@ -3203,31 +3156,21 @@
 Fieldtype,Typ pola,
 Help Articles,Artykuły pomocy,
 ID,ID,
-Images,Obrazy,
 Import,Import,
 Language,Język,
 Likes,Lubi,
 Merge with existing,Połączy się z istniejącą,
-Office,Biuro,
 Orientation,Orientacja,
 Parent,Nadrzędny,
-Passive,Nieaktywny,
 Payment Failed,Płatność nie powiodła się,
-Permanent,Stały,
 Personal,Osobiste,
-Plant,Zakład,
 Post,Stanowisko,
-Postal,Pocztowy,
 Postal Code,Kod pocztowy,
-Previous,Wstecz,
 Provider,Dostawca,
 Read Only,Tylko do odczytu,
 Recipient,Adresat,
 Reviews,Recenzje,
 Sender,Nadawca,
-Shop,Sklep,
-Subsidiary,Pomocniczy,
-There is some problem with the file url: {0},Jest jakiś problem z adresem URL pliku: {0},
 There were errors while sending email. Please try again.,Wystąpiły błędy podczas wysyłki e-mail. Proszę spróbuj ponownie.,
 Values Changed,Zmienione wartości,
 or,albo,
@@ -3254,19 +3197,16 @@
 Quality Feedback Template,Szablon opinii o jakości,
 Rules for applying different promotional schemes.,Zasady stosowania różnych programów promocyjnych.,
 Show {0},Pokaż {0},
-"Special Characters except '-', '#', '.', '/', '{{' and '}}' not allowed in naming series {0}","Znaki specjalne z wyjątkiem &quot;-&quot;, &quot;#&quot;, &quot;।&quot;, &quot;/&quot;, &quot;{{&quot; I &quot;}}&quot; niedozwolone w serii nazw {0}",
 Target Details,Szczegóły celu,
 {0} already has a Parent Procedure {1}.,{0} ma już procedurę nadrzędną {1}.,
 API,API,
 Annual,Roczny,
 Change,Reszta,
 Contact Email,E-mail kontaktu,
-Export Type,Typ eksportu,
 From Date,Od daty,
 Group By,Grupuj według,
 Invalid URL,nieprawidłowy URL,
 Landscape,Krajobraz,
-Last Sync On,Ostatnia synchronizacja,
 Naming Series,Seria nazw,
 No data to export,Brak danych do eksportu,
 Portrait,Portret,
@@ -3276,7 +3216,6 @@
 Show Document,Pokaż dokument,
 Show Traceback,Pokaż śledzenie,
 Video,Wideo,
-Webhook Secret,Secret Webhook,
 % Of Grand Total,% Ogólnej sumy,
 <b>Company</b> is a mandatory filter.,<b>Firma</b> jest obowiązkowym filtrem.,
 <b>From Date</b> is a mandatory filter.,<b>Od daty</b> jest obowiązkowym filtrem.,
@@ -3332,7 +3271,6 @@
 BOM Comparison Tool,Narzędzie do porównywania LM,
 BOM recursion: {0} cannot be child of {1},Rekurs BOM: {0} nie może być dzieckiem {1},
 BOM recursion: {0} cannot be parent or child of {1},Rekursja BOM: {0} nie może być rodzicem ani dzieckiem {1},
-Back to Home,Wrócić do domu,
 Back to Messages,Powrót do wiadomości,
 Bank Data mapper doesn't exist,Maper danych banku nie istnieje,
 Bank Details,Dane bankowe,
@@ -3394,7 +3332,6 @@
 Currency,Waluta,
 Current Status,Bieżący status,
 Customer PO,Klient PO,
-Customize,Dostosuj,
 Daily,Codziennie,
 Date,Data,
 Date of Birth cannot be greater than Joining Date.,Data urodzenia nie może być większa niż data przystąpienia.,
@@ -3428,7 +3365,6 @@
 ERPNext could not find any matching payment entry,ERPNext nie mógł znaleźć żadnego pasującego wpisu płatności,
 Earliest Age,Najwcześniejszy wiek,
 Edit Details,Edytuj szczegóły,
-Edit Profile,Edytuj profil,
 Either GST Transporter ID or Vehicle No is required if Mode of Transport is Road,"Wymagany jest identyfikator transportera GST lub nr pojazdu, jeśli tryb transportu to Droga",
 Email,E-mail,
 Email Campaigns,Kampanie e-mail,
@@ -3456,7 +3392,6 @@
 Fetch Items from Warehouse,Pobierz przedmioty z magazynu,
 Fetching...,Ujmujący...,
 Field,Pole,
-File Manager,Menedżer plików,
 Filters,Filtry,
 Finding linked payments,Znajdowanie powiązanych płatności,
 Fleet Management,Fleet Management,
@@ -3495,7 +3430,6 @@
 Incorrect Warehouse,Niepoprawny magazyn,
 Invalid Barcode. There is no Item attached to this barcode.,Nieprawidłowy kod kreskowy. Brak kodu dołączonego do tego kodu kreskowego.,
 Invalid credentials,Nieprawidłowe poświadczenia,
-Invite as User,Zaproś jako Użytkownik,
 Issue Priority.,Priorytet wydania.,
 Issue Type.,Typ problemu.,
 "It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","Wygląda na to, że istnieje problem z konfiguracją pasków serwera. W przypadku niepowodzenia kwota zostanie zwrócona na Twoje konto.",
@@ -3538,7 +3472,6 @@
 New Invoice,Nowa faktura,
 New Payment,Nowa płatność,
 New release date should be in the future,Nowa data wydania powinna być w przyszłości,
-Newsletter,Newsletter,
 No Account matched these filters: {},Brak kont pasujących do tych filtrów: {},
 No communication found.,Nie znaleziono komunikacji.,
 No correct answer is set for {0},Brak poprawnej odpowiedzi dla {0},
@@ -3614,7 +3547,6 @@
 Please setup a default bank account for company {0},Ustaw domyślne konto bankowe dla firmy {0},
 Please specify,Sprecyzuj,
 Please specify a {0},Proszę podać {0},lead
-Printing,Druk,
 Priority,Priorytet,
 Priority has been changed to {0}.,Priorytet został zmieniony na {0}.,
 Priority {0} has been repeated.,Priorytet {0} został powtórzony.,
@@ -3623,7 +3555,6 @@
 Project,Projekt,
 Provide the academic year and set the starting and ending date.,Podaj rok akademicki i ustaw datę początkową i końcową.,
 Public token is missing for this bank,Brakuje publicznego tokena dla tego banku,
-Publish,Publikować,
 Publish 1 Item,Opublikuj 1 przedmiot,
 Publish Items,Publikuj przedmioty,
 Publish More Items,Opublikuj więcej przedmiotów,
@@ -3651,7 +3582,6 @@
 Reconciled,Uzgodnione,
 Recruitment,Rekrutacja,
 Red,Czerwony,
-Refreshing,Odświeżam,
 Release date must be in the future,Data wydania musi być w przyszłości,
 Relieving Date must be greater than or equal to Date of Joining,Data zwolnienia musi być większa lub równa dacie przystąpienia,
 Rename,Zmień nazwę,
@@ -3695,7 +3625,6 @@
 Search for a payment,Wyszukaj płatność,
 Search for anything ...,Wyszukaj cokolwiek ...,
 Search results for,Wyniki wyszukiwania dla,
-Select All,Wybierz wszystko,
 Select Difference Account,Wybierz konto różnicy,
 Select a Default Priority.,Wybierz domyślny priorytet.,
 Select a company,Wybierz firmę,
@@ -3714,11 +3643,9 @@
 Service Level Agreement has been changed to {0}.,Umowa o poziomie usług została zmieniona na {0}.,
 Service Level Agreement was reset.,Umowa o poziomie usług została zresetowana.,
 Service Level Agreement with Entity Type {0} and Entity {1} already exists.,Umowa o poziomie usług z typem podmiotu {0} i podmiotem {1} już istnieje.,
-Set,Zbiór,
 Set Meta Tags,Ustaw meta tagi,
 Set {0} in company {1},Ustaw {0} w firmie {1},
 Setup,Ustawienia,
-Setup Wizard,Ustawienia Wizard,
 Shift Management,Zarządzanie zmianą,
 Show Future Payments,Pokaż przyszłe płatności,
 Show Linked Delivery Notes,Pokaż połączone dowody dostawy,
@@ -3789,7 +3716,6 @@
 Unreconciled,Nieuzgodnione,
 Unsupported GST Category for E-Way Bill JSON generation,Nieobsługiwana kategoria GST dla generacji e-Way Bill JSON,
 Update,Aktualizacja,
-Update Details,Zaktualizuj szczegóły,
 Update Taxes for Items,Zaktualizuj podatki od przedmiotów,
 "Upload a bank statement, link or reconcile a bank account","Prześlij wyciąg z konta bankowego, połącz lub rozlicz konto bankowe",
 Upload a statement,Prześlij oświadczenie,
@@ -3813,7 +3739,6 @@
 XML Files Processed,Przetwarzane pliki XML,
 Year,Rok,
 Yearly,Rocznie,
-You,Ty,
 You are not allowed to enroll for this course,Nie możesz zapisać się na ten kurs,
 You are not enrolled in program {0},Nie jesteś zarejestrowany w programie {0},
 You can Feature upto 8 items.,Możesz polecić do 8 przedmiotów.,
@@ -3830,7 +3755,6 @@
 e-Way Bill already exists for this document,e-Way Bill już istnieje dla tego dokumentu,
 woocommerce - {0},woocommerce - {0},
 {0} Coupon used are {1}. Allowed quantity is exhausted,{0} Wykorzystany kupon to {1}. Dozwolona ilość jest wyczerpana,
-{0} Name,Imię {0},
 {0} Operations: {1},{0} Operacje: {1},
 {0} bank transaction(s) created,{0} utworzono transakcje bankowe,
 {0} bank transaction(s) created and {1} errors,{0} utworzono transakcje bankowe i błędy {1},
@@ -3849,17 +3773,13 @@
 Total Income,Całkowity przychód,
 Total Income This Year,Dochód ogółem w tym roku,
 Barcode,kod kreskowy,
-Bold,Pogrubienie,
-Center,Środek,
 Clear,Jasny,
-Comment,Komentarz,
 Comments,Komentarze,
 DocType,DocType,
 Download,Pobieranie,
 Left,Opuścił,
 Link,Połączyć,
 New,Nowy,
-Not Found,Nie znaleziono,
 Print,Wydrukować,
 Reference Name,Nazwa referencyjna,
 Refresh,Odśwież,
@@ -3882,7 +3802,6 @@
 Email Id,Identyfikator E-mail,
 No,Nie,
 Reference Doctype,DocType Odniesienia,
-User Id,Identyfikator użytkownika,
 Yes,tak,
 Actual ,Właściwy,
 Add to cart,Dodaj do koszyka,
@@ -4274,7 +4193,6 @@
 e.g Adjustments for:,np. korekty dla:,
 Section Subtotal,Podsuma sekcji,
 Section Footer,Sekcja stopki,
-Position,Pozycja,
 Cash Flow Mapping,Mapowanie przepływów pieniężnych,
 Select Maximum Of 1,Wybierz Maksimum 1,
 Is Finance Cost,Koszt finansowy,
@@ -4898,7 +4816,6 @@
 Previous Business Day,Poprzedni dzień roboczy,
 Next Business Day,Następny dzień roboczy,
 Urgent,Pilne,
-Crop,Przyciąć,
 Crop Name,Nazwa uprawy,
 Scientific Name,Nazwa naukowa,
 "You can define all the tasks which need to carried out for this crop here. The day field is used to mention the day on which the task needs to be carried out, 1 being the 1st day, etc.. ","Możesz tu zdefiniować wszystkie zadania, które należy wykonać dla tego zbioru. Pole dnia jest używane do wskazania dnia, w którym należy wykonać zadanie, 1 oznacza pierwszy dzień itd.",
@@ -5400,7 +5317,6 @@
 To TIme,Do czasu,
 Course End Date,Data zakończenia kursu,
 Course Topic,Temat kursu,
-Topic,Temat,
 Topic Name,Nazwa tematu,
 Education Settings,Ustawienia edukacji,
 Current Academic Year,Obecny Rok Akademicki,
@@ -5475,7 +5391,6 @@
 Check this if the Student is residing at the Institute's Hostel.,"Sprawdź, czy Student mieszka w Hostelu Instytutu.",
 Walking,Pieszy,
 Institute's Bus,Autobus Instytutu,
-Public Transport,Transport publiczny,
 Self-Driving Vehicle,Samochód osobowy,
 Pick/Drop by Guardian,Pick / Drop przez Guardian,
 Enrolled courses,Zaplanowane kursy,
@@ -5656,7 +5571,6 @@
 Default Cost Center,Domyślne Centrum Kosztów,
 Undeposited Funds Account,Rachunek nierozliczonych funduszy,
 Shopify Log,Shopify Log,
-Request Data,Żądaj danych,
 Shopify Settings,Zmień ustawienia,
 status html,status html,
 Enable Shopify,Włącz Shopify,
@@ -5776,7 +5690,6 @@
 Exercise Instructions,Instrukcje do ćwiczeń,
 Exercise Video,Ćwiczenia wideo,
 Exercise Steps,Kroki ćwiczeń,
-Steps,Kroki,
 Steps Table,Tabela kroków,
 Exercise Type Step,Krok typu ćwiczenia,
 Max number of visit,Maksymalna liczba wizyt,
@@ -5960,7 +5873,6 @@
 Patient Encounter Symptom,Objaw spotkania pacjenta,
 HLC-PMR-.YYYY.-,HLC-PMR-.YYYY.-,
 Attach Medical Record,Dołącz dokumentację medyczną,
-Reference DocType,Odniesienie do DocType,
 Spouse,Małżonka,
 Family,Rodzina,
 Schedule Details,Szczegóły harmonogramu,
@@ -6924,15 +6836,8 @@
 HTML / Banner that will show on the top of product list.,"HTML / Banner, który pokaże się na górze listy produktów.",
 Set prefix for numbering series on your transactions,Ustaw prefiks dla numeracji serii na swoich transakcji,
 Setup Series,Konfigurowanie serii,
-Select Transaction,Wybierz Transakcję,
-Help HTML,Pomoc HTML,
-Series List for this Transaction,Lista serii dla tej transakcji,
-User must always select,Użytkownik musi zawsze zaznaczyć,
 Update Series,Zaktualizuj Serię,
 Change the starting / current sequence number of an existing series.,Zmień początkowy / obecny numer seryjny istniejącej serii.,
-Prefix,Prefiks,
-This is the number of the last created transaction with this prefix,Jest to numer ostatniej transakcji utworzonego z tym prefiksem,
-Update Series Number,Zaktualizuj Numer Serii,
 Quotation Lost Reason,Utracony Powód Wyceny,
 A third party distributor / dealer / commission agent / affiliate / reseller who sells the companies products for a commission.,"Dystrybutor strona trzecia / handlowiec / prowizji agenta / partner / sprzedawcę, który sprzedaje produkty firm z tytułu prowizji.",
 Sales Partner Name,Imię Partnera Sprzedaży,
@@ -7597,7 +7502,6 @@
 Warehouse wise Item Balance Age and Value,Magazyn mądry Pozycja Bilans Wiek i wartość,
 Work Order Stock Report,Raport o stanie zlecenia pracy,
 Work Orders in Progress,Zlecenia robocze w toku,
-Validation Error,Błąd walidacji,
 Automatically Process Deferred Accounting Entry,Automatycznie przetwarzaj odroczony zapis księgowy,
 Bank Clearance,Rozliczenie bankowe,
 Bank Clearance Detail,Szczegóły dotyczące rozliczeń bankowych,
@@ -7634,45 +7538,7 @@
 Therapy Plan: ,Plan terapii:,
 Total Counts Targeted: ,Łączna liczba docelowa:,
 Total Counts Completed: ,Łączna liczba zakończonych:,
-Andaman and Nicobar Islands,Wyspy Andaman i Nicobar,
-Andhra Pradesh,Andhra Pradesh,
-Arunachal Pradesh,Arunachal Pradesh,
-Assam,Assam,
-Bihar,Bihar,
-Chandigarh,Chandigarh,
-Chhattisgarh,Chhattisgarh,
-Dadra and Nagar Haveli,Dadra i Nagar Haveli,
-Daman and Diu,Daman i Diu,
-Delhi,Delhi,
-Goa,Goa,
-Gujarat,Gujarat,
-Haryana,Haryana,
-Himachal Pradesh,Himachal Pradesh,
-Jammu and Kashmir,Dżammu i Kaszmir,
-Jharkhand,Jharkhand,
-Karnataka,Karnataka,
-Kerala,Kerala,
-Lakshadweep Islands,Wyspy Lakshadweep,
-Madhya Pradesh,Madhya Pradesh,
-Maharashtra,Maharashtra,
-Manipur,Manipur,
-Meghalaya,Meghalaya,
-Mizoram,Mizoram,
-Nagaland,Nagaland,
-Odisha,Odisha,
-Other Territory,Inne terytorium,
-Pondicherry,Puducherry,
-Punjab,Pendżab,
-Rajasthan,Rajasthan,
-Sikkim,Sikkim,
-Tamil Nadu,Tamil Nadu,
-Telangana,Telangana,
-Tripura,Tripura,
-Uttar Pradesh,Uttar Pradesh,
-Uttarakhand,Uttarakhand,
-West Bengal,Bengal Zachodni,
 Is Mandatory,Jest obowiązkowe,
-Published on,Opublikowano,
 Service Received But Not Billed,"Usługa otrzymana, ale niezafakturowana",
 Deferred Accounting Settings,Odroczone ustawienia księgowania,
 Book Deferred Entries Based On,Rezerwuj wpisy odroczone na podstawie,
@@ -7945,8 +7811,6 @@
 Worksheet Instructions,Instrukcje arkusza roboczego,
 Result Legend Print,Wydruk legendy wyników,
 Print Position,Pozycja drukowania,
-Bottom,Dolny,
-Top,Top,
 Both,Obie,
 Result Legend,Legenda wyników,
 Lab Tests,Testy laboratoryjne,
@@ -7991,12 +7855,10 @@
 Approvers,Osoby zatwierdzające,
 The first Approver in the list will be set as the default Approver.,Pierwsza osoba zatwierdzająca na liście zostanie ustawiona jako domyślna osoba zatwierdzająca.,
 Shift Request Approver,Zatwierdzający prośbę o zmianę,
-PAN Number,Numer PAN,
 Provident Fund Account,Konto funduszu rezerwowego,
 MICR Code,Kod MICR,
 Repay unclaimed amount from salary,Zwróć nieodebraną kwotę z wynagrodzenia,
 Deduction from salary,Odliczenie od wynagrodzenia,
-Expired Leaves,Wygasłe liście,
 If this is not checked the loan by default will be considered as a Demand Loan,"Jeśli opcja ta nie zostanie zaznaczona, pożyczka domyślnie zostanie uznana za pożyczkę na żądanie",
 This account is used for booking loan repayments from the borrower and also disbursing loans to the borrower,"To konto służy do księgowania spłat pożyczki od pożyczkobiorcy, a także do wypłaty pożyczki pożyczkobiorcy",
 This account is capital account which is used to allocate capital for loan disbursal account ,"Rachunek ten jest rachunkiem kapitałowym, który służy do alokacji kapitału na rachunek wypłat pożyczki",
@@ -8754,3 +8616,41 @@
 Creating Purchase Order ...,Tworzenie zamówienia zakupu ...,
 "Select a Supplier from the Default Suppliers of the items below. On selection, a Purchase Order will be made against items belonging to the selected Supplier only.","Wybierz dostawcę spośród domyślnych dostawców z poniższych pozycji. Po dokonaniu wyboru, Zamówienie zostanie złożone wyłącznie dla pozycji należących do wybranego Dostawcy.",
 Row #{}: You must select {} serial numbers for item {}.,Wiersz nr {}: należy wybrać {} numery seryjne dla towaru {}.,
+Add Comment,Dodaj komentarz,
+More...,Więcej...,
+Notes,Notatki,
+Payment Gateway,Bramki płatności,
+Payment Gateway Name,Nazwa bramki płatności,
+Payments,Płatności,
+Plan Name,Nazwa planu,
+Portal,Portal,
+Scan Barcode,Skanuj kod kreskowy,
+Some information is missing,Brakuje wymaganych informacji.,
+Successful,Zakończono pomyślnie.,
+Tools,Narzędzia,
+Use Sandbox,Użyj piaskownicy,
+Busy,Zajęty,
+Completed By,Ukończony przez,
+Payment Failed,Płatność nie powiodła się,
+Column {0},Kolumna {0},
+Field Mapping,Mapowanie pola,
+Not Specified,Nieokreślony,
+Update Type,Typ aktualizacji,
+Dr,Dr,
+End Time,Czas zakończenia,
+Fetching...,Ujmujący...,
+"It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","Wygląda na to, że istnieje problem z konfiguracją pasków serwera. W przypadku niepowodzenia kwota zostanie zwrócona na Twoje konto.",
+Looks like someone sent you to an incomplete URL. Please ask them to look into it.,"Wygląda jak ktoś wysłał do niekompletnego adresu URL. Proszę poprosić ich, aby na nią patrzeć.",
+Master,Magister,
+Pay,Zapłacone,
+You can also copy-paste this link in your browser,Można również skopiować i wkleić ten link w przeglądarce,
+Verified By,Zweryfikowane przez,
+Invalid naming series (. missing) for {0},Nieprawidłowa seria nazw (brak.) Dla {0},
+Phone Number,Numer telefonu,
+Account SID,SID konta,
+Global Defaults,Globalne wartości domyślne,
+Is Mandatory,Jest obowiązkowe,
+WhatsApp,WhatsApp,
+Make a call,Zadzwoń,
+Approve,Zatwierdzać,
+Reject,Odrzucać,
diff --git a/erpnext/translations/ps.csv b/erpnext/translations/ps.csv
index 27df03c..8033752 100644
--- a/erpnext/translations/ps.csv
+++ b/erpnext/translations/ps.csv
@@ -113,7 +113,6 @@
 Add Items,سامان ورزیات کړئ,
 Add Leads,لارښوونه زیات کړئ,
 Add Multiple Tasks,ډیری کاري ډلې زیات کړئ,
-Add Row,Add د کتارونو,
 Add Sales Partners,د پلور شریکانو اضافه کړئ,
 Add Serial No,Add شعبه,
 Add Students,زده کوونکي ورزیات کړئ,
@@ -211,9 +210,7 @@
 An error occurred during the update process,د اوسمهال د پروسې په ترڅ کې یوه تېروتنه رامنځته شوه,
 "An item exists with same name ({0}), please change the item group name or rename the item",توکی سره د ورته نوم شتون لري ({0})، لطفا د توکي ډلې نوم بدل کړي او يا د جنس نوم بدلولی شی,
 Analyst,شنونکي,
-Analytics,Analytics,
 Annual Billing: {0},کلنی اولګښت: {0},
-Anonymous,بې نومه,
 Another Budget record '{0}' already exists against {1} '{2}' and account '{3}' for fiscal year {4},د بلې بڼې ریکارډ &#39;{0}&#39; مخکی له {1} &#39;{2}&#39; سره مخ دی او د مالي کال {4} لپاره حساب &#39;{3}&#39; دی.,
 Another Period Closing Entry {0} has been made after {1},وروسته يو بل د دورې په تړلو انفاذ {0} شوی دی {1},
 Another Sales Person {0} exists with the same Employee id,بل خرڅلاو کس {0} د همدې کارکوونکی پېژند شتون لري,
@@ -283,14 +280,12 @@
 Attendance not submitted for {0} as {1} on leave.,حاضری د {1} په توګه د تګ په حیث د {1} لپاره ندی ورکړل شوی.,
 Attribute table is mandatory,ځانتیا جدول الزامی دی,
 Attribute {0} selected multiple times in Attributes Table,ځانتیا د {0} په صفات جدول څو ځلې غوره,
-Author,لیکوال,
 Authorized Signatory,اجازه لاسليک,
 Auto Material Requests Generated,د موټرونو د موادو غوښتنه تولید شوی,
 Auto Repeat,د اتوماتیک تکرار,
 Auto repeat document updated,د اتوم بیاکتنه سند تازه شوی,
 Automotive,مشين,
 Available,شته,
-Available Leaves,شتون لري,
 Available Qty,موجود Qty,
 Available Selling,موجود پلورل,
 Available for use date is required,د کارولو نیټه اړینه ده,
@@ -340,7 +335,6 @@
 Base URL,بنسټ بیس URL,
 Based On,پر بنسټ,
 Based On Payment Terms,د تادیې شرایطو پراساس,
-Basic,د اساسي,
 Batch,دسته,
 Batch Entries,د بیچ ننوتل,
 Batch ID is mandatory,دسته تذکرو الزامی دی,
@@ -361,7 +355,6 @@
 Billable Hours,د ضمانت وړ ساعتونه,
 Billed,د بلونو د,
 Billed Amount,د بلونو د مقدار,
-Billing,بلونو,
 Billing Address,دبیل پته,
 Billing Address is same as Shipping Address,د بلینګ پته د بار وړلو پته ورته ده,
 Billing Amount,د بیلونو په مقدار,
@@ -560,7 +553,6 @@
 Consumed Qty,په مصرف Qty,
 Consumer Products,د استهلاکي تولیداتو,
 Contact,تماس,
-Contact Details,د اړیکو نیولو معلومات,
 Contact Us,موږ سره اړیکه ونیسئ,
 Content,منځپانګه,
 Content Masters,د مینځپانګې ماسټرونه,
@@ -715,7 +707,6 @@
 Date of Joining,د داخلیدل نېټه,
 Date of Joining must be greater than Date of Birth,د داخلیدل نېټه بايد په پرتله د زېږېدو نېټه ډيره وي,
 Date of Transaction,د لیږد نیټه,
-Datetime,نیټه او وخت,
 Day,ورځ,
 Debit,ډیبیټ,
 Debit ({0}),ډبټ ({0},
@@ -874,7 +865,6 @@
 Employee cannot report to himself.,کارکوونکی کولای شي چې د ځان راپور نه ورکوي.,
 Employee {0} has already applied for {1} between {2} and {3} : ,کارمند already 0} دمخه د {2} او {3} تر منځ د {1 for لپاره غوښتنه کړې ده:,
 Employee {0} of grade {1} have no default leave policy,کارمند {0} د {1} د ډایفورډ اجازه نه لري تګلاره لري,
-Enable,په توانول,
 Enable / disable currencies.,فعال / معلول اسعارو.,
 Enabled,وتوانول شوه,
 "Enabling 'Use for Shopping Cart', as Shopping Cart is enabled and there should be at least one Tax Rule for Shopping Cart",توانمنوونکې &#39;کولر په ګاډۍ څخه استفاده وکړئ، په توګه، کولر په ګاډۍ دی فعال شوی او هلته بايد کولر په ګاډۍ لږ تر لږه يو د مالياتو د حاکمیت وي,
@@ -905,7 +895,6 @@
 Error: Not a valid id?,تېروتنه: يو د اعتبار وړ پېژند نه؟,
 Estimated Cost,اټکل شوی لګښت,
 "Even if there are multiple Pricing Rules with highest priority, then following internal priorities are applied:",حتی که د لوړ لومړیتوب څو د بیو اصول شته دي، نو لاندې داخلي لومړیتوبونو دي استعمال:,
-Event,دکمپاینونو,
 Exchange Gain/Loss,په بدل کې لاسته راغلې ګټه / له لاسه ورکول,
 Exchange Rate Revaluation master.,د تبادلې نرخ بیا ارزونې ماسټر.,
 Exchange Rate must be same as {0} {1} ({2}),د بدلولو نرخ باید په توګه ورته وي {0} د {1} ({2}),
@@ -1032,7 +1021,6 @@
 From value must be less than to value in row {0},له ارزښت باید په پرتله د ارزښت په قطار کمه وي {0},
 From {0} | {1} {2},څخه د {0} | {1} {2},
 Fulfillment,تحقق,
-Full,بشپړ,
 Full Name,پوره نوم,
 Fully Depreciated,په بشپړه توګه راکم شو,
 Furnitures and Fixtures,Furnitures او لامپ,
@@ -1133,7 +1121,6 @@
 Hub Sync ID,د کور همکاري ID,
 Human Resource,د بشري منابعو,
 Human Resources,بشري منابع,
-IFSC Code,د IFSC کود,
 IGST Amount,د IGST مقدار,
 IP Address,IP پته,
 ITC Available (whether in full op part),ITC شتون لري (ایا په بشپړ انتخابي برخه کې),
@@ -1185,7 +1172,6 @@
 Ineligible ITC,غیر معقول ITC,
 Initiated,پیل,
 Inpatient Record,د داخل بستر ناروغانو ریکارډ,
-Insert,درج,
 Installation Note,نصب او یادونه,
 Installation Note {0} has already been submitted,نصب او يادونه {0} د مخکې نه سپارل,
 Installation date cannot be before delivery date for Item {0},نصب او نېټې لپاره د قالب د سپارلو نېټې مخکې نه شي {0},
@@ -1197,7 +1183,6 @@
 Insurance Start date should be less than Insurance End date,د بيمې د پیل نیټه بايد د بيمې د پای نیټه په پرتله کمه وي,
 Integrated Tax,مدغم مالیه,
 Inter-State Supplies,د بهرنیو هیوادونو اکمالات,
-Interests,د ګټو,
 Internet Publishing,د انټرنېټ Publishing,
 Intra-State Supplies,د داخلي ریاست اکمالات,
 Introduction,پېژندنه,
@@ -1316,7 +1301,6 @@
 Lab testing datetime cannot be before collection datetime,د لابراتوار ازموینه د وخت څخه د راټولولو دمخه نشي کیدی,
 Label,لیبل,
 Laboratory,لابراتوار,
-Language Name,ژبه نوم,
 Large,لوی,
 Last Communication,تېر مخابراتو,
 Last Communication Date,تېر مخابراتو نېټه,
@@ -1347,8 +1331,6 @@
 Letter Heads for print templates.,د چاپي کينډۍ لیک مشرانو.,
 Level,د ليول,
 Liability,Liability,
-License,منښتليک,
-Limit,حد,
 Limit Crossed,حد اوښتي,
 Link to Material Request,د موادو غوښتنې سره اړیکه,
 List of all share transactions,د ټولو ونډې لیږد لیست,
@@ -1359,7 +1341,6 @@
 Loans (Liabilities),پورونه (مسؤلیتونه),
 Loans and Advances (Assets),پورونو او پرمختګ (شتمني),
 Local,د محلي,
-Log,يادښت,
 Logs for maintaining sms delivery status,د SMS د وړاندې کولو او مقام د ساتلو يادښتونه,
 Lost,له لاسه,
 Lost Reasons,ورک شوي دلایل,
@@ -1445,7 +1426,6 @@
 Medical Department,طبی څانګه,
 Medical Record,طبي ریکارډ,
 Medium,منځني,
-Meeting,غونډه,
 Member Activity,د غړو فعالیت,
 Member ID,د غړیتوب ID,
 Member Name,د غړو نوم,
@@ -1495,7 +1475,6 @@
 Multiple Variants,ګڼ شمیر متغیرات,
 Multiple fiscal years exist for the date {0}. Please set company in Fiscal Year,لپاره د نېټې {0} څو مالي کلونو کې شتون لري. لطفا د مالي کال په شرکت جوړ,
 Music,موسيقي,
-My Account,زما حساب,
 Name error: {0},نوم تېروتنه: {0},
 Name of new Account. Note: Please don't create accounts for Customers and Suppliers,د نوو حساب نوم. یادونه: لطفا لپاره پېرودونکي او عرضه کوونکي حسابونو نه رامنځته کوي,
 Name or Email is mandatory,نوم يا ليک الزامی دی,
@@ -1538,7 +1517,6 @@
 New credit limit is less than current outstanding amount for the customer. Credit limit has to be atleast {0},د پورونو د نوي محدودیت دی لپاره د پیریدونکو د اوسني بيالنس مقدار څخه لږ. پورونو د حد لري تيروخت وي {0},
 New task,نوې دنده,
 New {0} pricing rules are created,نوي {0} قیمت مقررات رامینځته شوي,
-Newsletters,خبرپا,
 Newspaper Publishers,ورځپاڼې اخیستونکي,
 Next,بل,
 Next Contact By cannot be same as the Lead Email Address,بل تماس By نه شي کولای په غاړه دبرېښنا ليک پته په توګه ورته وي,
@@ -1686,7 +1664,6 @@
 Other,نور,
 Other Reports,نور راپورونه,
 "Other outward supplies(Nil rated,Exempted)",نور خارجی اکمالات (نیل ارزول شوی ، معاف شوی),
-Others,نور,
 Out Qty,له جملې څخه Qty,
 Out Value,له جملې څخه د ارزښت,
 Out of Order,له کاره وتلی,
@@ -1726,7 +1703,6 @@
 Party Type and Party is mandatory for {0} account,د ګوند ډول او ګوند د {0} حساب لپاره اړین دی,
 Party Type is mandatory,ګوند ډول فرض ده,
 Party is mandatory,ګوند الزامی دی,
-Password,رمز,
 Past Due Date,د تېر وخت نیټه,
 Patient,ناروغ,
 Patient Appointment,د ناروغ ټاکنه,
@@ -1784,7 +1760,6 @@
 Pharmaceutical,Pharmaceutical,
 Pharmaceuticals,د درملو د,
 Physician,ډاکټر,
-Pincode,Pincode,
 Place Of Supply (State/UT),د تحویلولو ځای (ایالت / UT),
 Place Order,ځای نظم,
 Plan Name,د پلان نوم,
@@ -1896,7 +1871,6 @@
 Please select date,مهرباني غوره نیټه,
 Please select item code,لطفا توکی کوډ وټاکئ,
 Please select month and year,لطفا مياشت او کال وټاکئ,
-Please select prefix first,مهرباني وکړئ لومړی مختاړی وټاکئ,
 Please select the Company,مهرباني وکړئ شرکت غوره کړئ,
 Please select the Multiple Tier Program type for more than one collection rules.,مهرباني وکړئ د ډېرو راټول شویو قواعدو لپاره د ډیری ټیر پروګرام ډول غوره کړئ.,
 Please select the assessment group other than 'All Assessment Groups',لطفا د ارزونې په پرتله &#39;ټول ارزونه ډلو د نورو ګروپ غوره,
@@ -1913,7 +1887,6 @@
 Please set Company filter blank if Group By is 'Company',لطفا جوړ شرکت چاڼ خالي که ډله په دی شرکت,
 Please set Default Payroll Payable Account in Company {0},لطفا په شرکت Default د معاشاتو د راتلوونکې حساب جوړ {0},
 Please set Depreciation related Accounts in Asset Category {0} or Company {1},لطفا په شتمنیو کټه ګورۍ {0} یا د شرکت د استهالک اړوند حسابونه جوړ {1},
-Please set Email Address,لطفا جوړ دبرېښنا ليک پته:,
 Please set GST Accounts in GST Settings,مهرباني وکړئ د GST حسابونه د GST ترتیباتو کې وټاکئ,
 Please set Hotel Room Rate on {},مهرباني وکړئ د هوټل روم شرح په {},
 Please set Number of Depreciations Booked,مهرباني وکړئ ټاکل د Depreciations شمېر بک,
@@ -1936,7 +1909,6 @@
 Please set the Email ID for the Student to send the Payment Request,مهرباني وکړئ د زده کونکي لپاره د بریښناليک ID مقرر کړئ ترڅو د تادیاتو غوښتنه واستوي,
 Please set the Item Code first,مهرباني وکړئ لومړی د کوډ کوډ ولیکئ,
 Please set the Payment Schedule,مهرباني وکړئ د تادیاتو مهالویش تنظیم کړئ,
-Please set the series to be used.,مهرباني وکړئ هغه لړۍ وټاکئ چې کارول کیږي.,
 Please set {0} for address {1},لطفا {0} د پتې لپاره {1} وټاکئ,
 Please setup Students under Student Groups,لطفا د زده کونکو د شاګردانو له ډلې څخه فارغ کړئ,
 Please specify Company,مهرباني وکړئ د شرکت مشخص,
@@ -1953,7 +1925,6 @@
 Point-of-Sale,Point-of-خرڅول,
 Point-of-Sale Profile,Point-of-خرڅول پېژندنه,
 Portal,پورتال,
-Portal Settings,تانبه امستنې,
 Possible Supplier,ممکنه عرضه,
 Postal Expenses,د پستي داخراجاتو,
 Posting Date,نوکرې نېټه,
@@ -2152,12 +2123,10 @@
 Reference No is mandatory if you entered Reference Date,ماخذ نه فرض ده که تاسو ماخذ نېټه ته ننوتل,
 Reference No.,د حوالې نمبر,
 Reference Number,مرجع,
-Reference Owner,ماخذ خاوند,
 Reference Type,ماخذ ډول,
 "Reference: {0}, Item Code: {1} and Customer: {2}",ماخذ: {0}، شمیره کوډ: {1} او پيرودونکو: {2},
 References,ماخذونه,
 Refresh Token,تاندول د نښې,
-Region,Region,
 Register,راجستر,
 Rejected,رد,
 Related,اړوند,
@@ -2179,7 +2148,6 @@
 Replace BOM and update latest price in all BOMs,BOM بدله کړئ او په ټولو BOMs کې وروستي قیمت تازه کړئ,
 Replied,په ځواب کې,
 Report,راپور,
-Report Builder,راپور جوړونکی,
 Report Type,راپور ډول,
 Report Type is mandatory,راپور ډول فرض ده,
 Reports,راپورونه,
@@ -2355,13 +2323,11 @@
 Same Company is entered more than once,همدې شرکت څخه یو ځل بیا ننوتل,
 Same item cannot be entered multiple times.,ورته توکی نه شي کولای شي د څو ځله ننوتل.,
 Same supplier has been entered multiple times,ورته عرضه کړې څو ځلې داخل شوي دي,
-Sample,نمونه,
 Sample Collection,نمونه راغونډول,
 Sample quantity {0} cannot be more than received quantity {1},نمونۍ مقدار {0} د ترلاسه شوي مقدار څخه ډیر نه وي {1},
 Sanctioned,تحریم,
 Sand,رڼا,
 Saturday,شنبه,
-Saved,وژغورل,
 Saving {0},خوندي کول {0},
 Scan Barcode,بارکوډ سکین کړئ,
 Schedule,مهال ويش,
@@ -2463,7 +2429,6 @@
 Series Updated,لړۍ Updated,
 Series Updated Successfully,لړۍ Updated په بریالیتوب,
 Series is mandatory,لړۍ الزامی دی,
-Series {0} already used in {1},لړۍ {0} د مخه په کارول {1},
 Service,خدمت,
 Service Level Agreement,د خدمت کچې تړون,
 Service Level Agreement.,د خدمت کچې تړون.,
@@ -2479,7 +2444,6 @@
 Set Tax Rule for shopping cart,د سودا کراچۍ جوړ د مالياتو د حاکمیت,
 Set as Closed,د ټاکلو په توګه تړل شوي,
 Set as Completed,د بشپړ شوي په توګه وټاکئ,
-Set as Default,د جال په توګه ترتیب کړئ,
 Set as Lost,د ټاکل شويو Lost,
 Set as Open,د ټاکل شويو Open,
 Set default inventory account for perpetual inventory,جوړ تلوالیزه لپاره د دايمي انبار انبار حساب,
@@ -2511,7 +2475,6 @@
 Shareholder,شريکونکي,
 Ship To State,دولت ته جہاز,
 Shipments,مالونو,
-Shipping,لېږدول,
 Shipping Address,د وړلو او راوړلو پته,
 "Shipping Address does not have country, which is required for this Shipping Rule",د لېږد تایید هیواد نلري، کوم چې د دې لیږد قانون لپاره اړین دی,
 Shipping rule only applicable for Buying,د تدارکاتو لپاره یوازې د لیږد حکومتوالی,
@@ -2564,7 +2527,6 @@
 Split Batch,ویش په دسته,
 Split Issue,سپکاوی ټکی,
 Sports,لوبې,
-Standard,معياري,
 Standard Buying,معياري خريداري,
 Standard Selling,معياري پلورل,
 Standard contract terms for Sales or Purchase.,د پلورنې يا رانيول کره د قرارداد د شرطونو.,
@@ -2731,7 +2693,6 @@
 Terms and Conditions,د قرارداد شرايط,
 Terms and Conditions Template,د قرارداد شرايط کينډۍ,
 Territory,خاوره,
-Test,امتحان,
 Thank you for your business!,تاسو د خپلې سوداګرۍ لپاره مننه!,
 The 'From Package No.' field must neither be empty nor it's value less than 1.,د &#39;بکس شمېره&#39; ساحه باید نه وی وی او نه د هغه ارزښت لږ وي.,
 The Brand,د دتوليد,
@@ -2848,7 +2809,6 @@
 Total (Without Tax),ټول (د مالیې پرته),
 Total Achieved,Total السته,
 Total Actual,Total واقعي,
-Total Allocated Leaves,ټول ټاکل شوي پاڼي,
 Total Amount,جمله پیسی,
 Total Amount Credited,ټولې پیسې اعتبار شوي,
 Total Applicable Charges in Purchase Receipt Items table must be same as Total Taxes and Charges,په رانيول رسيد توکي جدول ټولې د تطبیق په تور باید په توګه ټول ماليات او په تور ورته وي,
@@ -2892,7 +2852,6 @@
 Total(Amt),Total (نننیو),
 Total(Qty),Total (Qty),
 Traceability,د واردکوونکو,
-Traceback,Traceback,
 Track Leads by Lead Source.,د لیډ سرچینه لخوا الرښوونه.,
 Transaction,د راکړې ورکړې,
 Transaction Date,د راکړې ورکړې نېټه,
@@ -2930,7 +2889,6 @@
 UOM Conversion factor is required in row {0},په قطار UOM تغیر فکتور ته اړتيا ده {0},
 UOM coversion factor required for UOM: {0} in Item: {1},UOM coversion عامل لپاره UOM ضروري دي: {0} په شمیره: {1},
 URL,URL,
-Unable to find DocType {0},د ډاټا ټائپ موندلو توان نلري {0},
 Unable to find exchange rate for {0} to {1} for key date {2}. Please create a Currency Exchange record manually,لپاره د تبادلې نرخ د موندلو توان نلري {0} د {1} د مهمو نېټه {2}. مهرباني وکړئ د پیسو د بدلولو ریکارډ په لاسي جوړ کړي,
 Unable to find score starting at {0}. You need to have standing scores covering 0 to 100,په {0} پېل کې د پېسو د موندلو توان نلري. تاسو اړتیا لرئ چې د 0 څخه تر 100 پورې پوښلو ته ولاړ شئ,
 Unable to find variable: ,د متغیر موندلو توان نلري:,
@@ -2960,7 +2918,6 @@
 Upload your letter head and logo. (you can edit them later).,پورته ستاسو لیک مشر او لوګو. (کولی شئ چې وروسته د سمولو لپاره).,
 Upper Income,د مشرانو پر عايداتو,
 Use Sandbox,sandbox استعمال,
-Used Leaves,استعمال شوي پاڼي,
 User,کارن,
 User ID,کارن نوم,
 User ID not set for Employee {0},کارن تذکرو لپاره د کارکونکو نه {0},
@@ -3051,7 +3008,6 @@
 Website Settings,وېب پاڼه امستنې,
 Wednesday,چهارشنبه,
 Week,اونۍ,
-Weekdays,اونۍ,
 Weekly,د اونۍ,
 "Weight is mentioned,\nPlease mention ""Weight UOM"" too",د وزن دی، \ n لطفا ذکر &quot;وزن UOM&quot; هم,
 Welcome email sent,ښه راغلاست استولي,
@@ -3072,7 +3028,6 @@
 Work Order {0} must be submitted,د کار امر {0} باید وسپارل شي,
 Work Orders Created: {0},د کار امرونه جوړ شوي: {0},
 Work-in-Progress Warehouse is required before Submit,کار-in-پرمختګ ګدام مخکې اړتیا سپارل,
-Workflow,ننګولې دي,
 Working,کاري,
 Working Hours,کار ساعتونه,
 Workstation,Workstation,
@@ -3102,7 +3057,6 @@
 You need to be a user other than Administrator with System Manager and Item Manager roles to register on Marketplace.,تاسو اړتیا لرئ چې د مدیر څخه پرته د سیسټم مدیر او د منجمنت مدیر رول سره په مارکیټ کې ثبت کولو لپاره بلکې.,
 You need to be a user with System Manager and Item Manager roles to add users to Marketplace.,تاسو ته اړتیا لرئ چې د سیسټم مدیر او د مدیر مدیر رول سره د کاروونکو لپاره د کاروونکو اضافه کولو لپاره یو کارن وي.,
 You need to be a user with System Manager and Item Manager roles to register on Marketplace.,تاسو اړتیا لرئ چې د کاروونکي راجستر کولو لپاره د سیسټم مدیر او د مدیر مدیر رول سره یو کارن وي.,
-You need to be logged in to access this page,تاسو ته په غونډال کې د دې مخ د لاسرسی,
 You need to enable Shopping Cart,تاسو باید د خرید په ګاډۍ وتوانوي,
 You will lose records of previously generated invoices. Are you sure you want to restart this subscription?,تاسو به د مخکینیو پیرود شویو ریکارډونو ریکارډ ورک کړئ. ایا ته باوري یې چې دا ګډون بیا پیلول غواړئ؟,
 Your Organization,ستاسو د سازمان,
@@ -3218,7 +3172,6 @@
 Assigned To,ته ګمارل شوي,
 Chat,Chat,
 Completed By,بشپړ شوي,
-County,County,
 Day of Week,د اونۍ ورځې,
 "Dear System Manager,",ګرانو سیستم مدیر،,
 Default Value,تلواله ارزښت,
@@ -3229,31 +3182,21 @@
 Fieldtype,Fieldtype,
 Help Articles,مرسته بیشتر,
 ID,ID,
-Images,انځورونه,
 Import,د وارداتو,
 Language,ژبه,
 Likes,خوښوي,
 Merge with existing,سره د موجوده لېږدونه,
-Office,دفتر,
 Orientation,لورموندنه,
 Parent,Parent,
-Passive,Passive,
 Payment Failed,د تادیاتو کې پاتې راغی,
-Permanent,د دایمي,
 Personal,د شخصي,
-Plant,د نبات د,
 Post,ليکنه د,
-Postal,د پستي,
 Postal Code,د ډاګ کوډ,
-Previous,مخکینی,
 Provider,وړاندیز,
 Read Only,صرف د لوست وړ,
 Recipient,دترلاسه کوونکي,
 Reviews,بیاکتنې,
 Sender,استوونکی,
-Shop,شاپ,
-Subsidiary,د متمم,
-There is some problem with the file url: {0},شتون سره د دوتنې url ځينو ستونزه دا ده: {0},
 There were errors while sending email. Please try again.,ایمیل استولو په داسې حال کې تېروتنې شوې دي. لطفا بیا هڅه وکړې.,
 Values Changed,ارزښتونه بدله,
 or,او یا,
@@ -3280,19 +3223,16 @@
 Quality Feedback Template,د کیفیت فیډبیک ټیمپلیټ,
 Rules for applying different promotional schemes.,د مختلف پروموشنل سکیمونو پلي کولو قواعد.,
 Show {0},ښودل {0},
-"Special Characters except '-', '#', '.', '/', '{{' and '}}' not allowed in naming series {0}",{0} ځانګړي نومونه د &quot;-&quot; ، &quot;#&quot; ، &quot;.&quot; ، &quot;/&quot; ، &quot;{{&quot; او &quot;}}&quot; نوم لیکلو کې اجازه نه لري,
 Target Details,د هدف توضیحات,
 {0} already has a Parent Procedure {1}.,{0} د مخه د والدین پروسیجر {1} لري.,
 API,API,
 Annual,کلنی,
 Change,د بدلون,
 Contact Email,تماس دبرېښنا ليک,
-Export Type,د صادرولو ډول,
 From Date,له نېټه,
 Group By,ډله په,
 Invalid URL,ناباوره یو ار ایل,
 Landscape,منظره,
-Last Sync On,وروستنۍ هممهال,
 Naming Series,نوم لړۍ,
 No data to export,د صادرولو لپاره هیڅ معلومات نشته,
 Portrait,انځور,
@@ -3302,7 +3242,6 @@
 Show Document,لاسوند وښیه,
 Show Traceback,ټرېبیک ښودل,
 Video,ویډیو,
-Webhook Secret,د ویب هوک راز,
 % Of Grand Total,د لوی مجموعي,
 <b>Company</b> is a mandatory filter.,<b>شرکت</b> لازمي فلټر دی.,
 <b>From Date</b> is a mandatory filter.,<b>له نیټې</b> څخه لازمي فلټر دی.,
@@ -3358,7 +3297,6 @@
 BOM Comparison Tool,د BOM پرتله کولو وسیله,
 BOM recursion: {0} cannot be child of {1},د BOM تکرار: {0} د {1} ماشوم نشی کیدی,
 BOM recursion: {0} cannot be parent or child of {1},د BOM تکرار: {0} د {1} مور او پلار نشي کولی,
-Back to Home,بیرته کور ته,
 Back to Messages,پیغامونو ته بیرته لاړشئ,
 Bank Data mapper doesn't exist,د بانک ډیټا میپیر شتون نلري,
 Bank Details,د بانک توضیحات,
@@ -3420,7 +3358,6 @@
 Currency,د اسعارو,
 Current Status,د اوسني وضعیت,
 Customer PO,د پیرودونکي PO,
-Customize,دتنظيمولو,
 Daily,هره ورځ,
 Date,نېټه,
 Date of Birth cannot be greater than Joining Date.,د زیږون نیټه د شمولیت له نیټې څخه لوی نشي.,
@@ -3454,7 +3391,6 @@
 ERPNext could not find any matching payment entry,ERPNext ونه توانېد چې د سم تادیې ننوتنه ومومي,
 Earliest Age,لومړنی عمر,
 Edit Details,توضيحات,
-Edit Profile,سمول پېژندنه,
 Either GST Transporter ID or Vehicle No is required if Mode of Transport is Road,یا خو د جی ایس پی ټرانسپورټر ID یا د وسایطو نمبر ته اړتیا نشته که د ټرانسپورټ حالت سړک وي,
 Email,بریښنالیک,
 Email Campaigns,د بریښنالیک کمپاینونه,
@@ -3482,7 +3418,6 @@
 Fetch Items from Warehouse,توکي د ګودام څخه راوړي,
 Fetching...,ترلاسه کول ...,
 Field,ساحوي,
-File Manager,د دوتنې د مدير,
 Filters,چاڼګرونه,
 Finding linked payments,د تړلي تادیاتو موندل,
 Fleet Management,د بیړیو د مدیریت,
@@ -3521,7 +3456,6 @@
 Incorrect Warehouse,غلط ګودام,
 Invalid Barcode. There is no Item attached to this barcode.,ناباوره بارکوډ. دې بارکوډ پورې هیڅ توکی ندی تړلی.,
 Invalid credentials,ناباوره سندونه,
-Invite as User,په توګه د کارن بلنه,
 Issue Priority.,لومړیتوب ورکول.,
 Issue Type.,د مسلې ډول.,
 "It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.",داسې ښکاري چې د سرور د پټې ترتیب سره یو مسله شتون لري. د ناکامۍ په صورت کې، ستاسو د حساب رقم به بیرته ترلاسه شي.,
@@ -3564,7 +3498,6 @@
 New Invoice,نوی رسید,
 New Payment,نوې پیسې,
 New release date should be in the future,د خوشې کولو نوي نیټه باید په راتلونکي کې وي,
-Newsletter,خبر پاڼه,
 No Account matched these filters: {},هیڅ ډول حسابونه د دې فلټرونو سره ندي: {,
 No communication found.,هیڅ اړیکه ونه موندل شوه.,
 No correct answer is set for {0},د {0 for لپاره هیڅ سم ځواب نه دی ټاکل شوی,
@@ -3640,7 +3573,6 @@
 Please setup a default bank account for company {0},مهرباني وکړئ د شرکت for 0} لپاره اصلي بانکي حساب تنظیم کړئ,
 Please specify,څرګند یي کړي,
 Please specify a {0},مهرباني وکړئ یو {0} وټاکئ,lead
-Printing,د چاپونې,
 Priority,د لومړیتوب,
 Priority has been changed to {0}.,لومړیتوب په {0} بدل شوی دی.,
 Priority {0} has been repeated.,لومړیتوب {0} تکرار شوی.,
@@ -3649,7 +3581,6 @@
 Project,د پروژې د,
 Provide the academic year and set the starting and ending date.,تعلیمي کال چمتو کړئ او د پیل او پای نیټه یې وټاکئ.,
 Public token is missing for this bank,د دې بانک لپاره عامه نښه نده,
-Publish,خپرول,
 Publish 1 Item,1 توکی خپور کړئ,
 Publish Items,توکي خپاره کړئ,
 Publish More Items,نور توکي خپاره کړئ,
@@ -3677,7 +3608,6 @@
 Reconciled,پخلا شوی,
 Recruitment,د استخدام,
 Red,سور,
-Refreshing,تازه کول,
 Release date must be in the future,د خوشې کولو نیټه باید په راتلونکي کې وي,
 Relieving Date must be greater than or equal to Date of Joining,د نیټې نیټه باید د شاملیدو نیټې څخه لوی یا مساوي وي,
 Rename,نوم بدلول,
@@ -3721,7 +3651,6 @@
 Search for a payment,د پیسو لټون,
 Search for anything ...,د هرڅه لپاره لټون ...,
 Search results for,د پلټنې پايلې,
-Select All,ټول وټاکئ,
 Select Difference Account,د توپیر حساب غوره کړئ,
 Select a Default Priority.,اصلي لومړیتوب غوره کړئ.,
 Select a company,یو شرکت غوره کړئ,
@@ -3740,11 +3669,9 @@
 Service Level Agreement has been changed to {0}.,د خدماتو کچې تړون په {0} بدل شوی دی.,
 Service Level Agreement was reset.,د خدماتو کچې تړون بیا تنظیم شوی و.,
 Service Level Agreement with Entity Type {0} and Entity {1} already exists.,د شرکت ډول {0} او شرکت {1} سره د خدماتي کچې تړون لا دمخه موجود دی.,
-Set,ټاکل شوی,
 Set Meta Tags,میټا ټاګونه تنظیم کړئ,
 Set {0} in company {1},په {1 company شرکت کې {0 Set تنظیم کړئ,
 Setup,چمتو کول,
-Setup Wizard,Setup اسانګر,
 Shift Management,د شفټ مدیریت,
 Show Future Payments,راتلونکي تادیات وښایاست,
 Show Linked Delivery Notes,تړلي تحویلي یادښتونه وښیه,
@@ -3815,7 +3742,6 @@
 Unreconciled,ناتړل شوی,
 Unsupported GST Category for E-Way Bill JSON generation,د E-Way بل JSON تولید لپاره د نامتو جی ایس ٹی کټګورۍ,
 Update,تازه,
-Update Details,تازه معلومات,
 Update Taxes for Items,د توکو لپاره تازه مالیه,
 "Upload a bank statement, link or reconcile a bank account",د بانک بیان اپلوډ کړئ ، د بانک حساب لینک کړئ یا پخلا کړئ,
 Upload a statement,یو بیان اپلوډ کړئ,
@@ -3839,7 +3765,6 @@
 XML Files Processed,د ایکس ایم ایل فایلونو پروسس شوی,
 Year,کال,
 Yearly,کلنی,
-You,تاسو,
 You are not allowed to enroll for this course,تاسو د دې کورس لپاره د نوم لیکلو اجازه نلرئ,
 You are not enrolled in program {0},تاسو په پروګرام {0} کې شامل نه ياست,
 You can Feature upto 8 items.,تاسو کولی شئ تر 8 توکو پورې ب .ه وکړئ.,
@@ -3856,7 +3781,6 @@
 e-Way Bill already exists for this document,د دې لاسوند لپاره د ای - ویز لا دمخه شتون لري,
 woocommerce - {0},WooCommerce - {0},
 {0} Coupon used are {1}. Allowed quantity is exhausted,used 0} کارول شوې کوپون {1} دي. اجازه ورکړل شوې اندازه ختمه شوې,
-{0} Name,{0} نوم,
 {0} Operations: {1},{0} عملیات: {1},
 {0} bank transaction(s) created,د بانک لیږد (ونه) رامینځته شوی,
 {0} bank transaction(s) created and {1} errors,د transaction 0} بانک لیږد (ونه) رامینځته شوي او {1} تېروتنې,
@@ -3875,17 +3799,13 @@
 Total Income,ټوله عاید,
 Total Income This Year,پدې کال کې ټول عاید,
 Barcode,بارکوډ,
-Bold,بولډ,
-Center,مرکز,
 Clear,پاک,
-Comment,څرګندونه,
 Comments,تبصرې,
 DocType,دډاکټ ډول,
 Download,ډاونلوډ,
 Left,کيڼ,
 Link,لینک,
 New,نوی,
-Not Found,پیدا نشو,
 Print,چاپ,
 Reference Name,د سرچینې نوم,
 Refresh,تاندول,
@@ -3908,7 +3828,6 @@
 Email Id,Email ID,
 No,نه,
 Reference Doctype,ماخذ DocType,
-User Id,کارن نوم,
 Yes,هو,
 Actual ,واقعي,
 Add to cart,کارټ ته یی اضافه کړه,
@@ -4304,7 +4223,6 @@
 e.g Adjustments for:,د مثال په توګه:,
 Section Subtotal,برخه فرعي ټوک,
 Section Footer,برخه فوټر,
-Position,حالت,
 Cash Flow Mapping,د نقد فلو نقشه اخیستنه,
 Select Maximum Of 1,غوره د 1 څخه غوره کړئ,
 Is Finance Cost,د مالي لګښت دی,
@@ -4936,7 +4854,6 @@
 Previous Business Day,مخکینی کاروباری ورځ,
 Next Business Day,د سوداګرۍ بله ورځ,
 Urgent,Urgent,
-Crop,فصل,
 Crop Name,د کرهن نوم,
 Scientific Name,سائنسي نوم,
 "You can define all the tasks which need to carried out for this crop here. The day field is used to mention the day on which the task needs to be carried out, 1 being the 1st day, etc.. ",تاسو کولی شئ ټول هغه دندې وټاکئ کوم چې دلته د دې فصل لپاره ترسره کیږي. د ورځې ساحه د هغې ورځې د یادولو لپاره کارول کیږي چې دنده یې باید ترسره شي، 1 لومړی ورځ، او نور.,
@@ -5441,7 +5358,6 @@
 To TIme,ته د وخت,
 Course End Date,د کورس د پای نیټه,
 Course Topic,د کورس موضوع,
-Topic,موضوع,
 Topic Name,موضوع نوم,
 Education Settings,د زده کړې ترتیبات,
 Current Academic Year,د روان تعليمي کال د,
@@ -5516,7 +5432,6 @@
 Check this if the Student is residing at the Institute's Hostel.,وګورئ دا که د زده کوونکو د ده په انستیتیوت په ليليه درلوده.,
 Walking,ګرځي,
 Institute's Bus,د انسټیټوټ بس,
-Public Transport,د عامه ترانسپورت,
 Self-Driving Vehicle,د ځان د چلونې د وسایطو د,
 Pick/Drop by Guardian,دپاک / خوا ګارډین &#39;خه,
 Enrolled courses,ثبت شوي کورسونه,
@@ -5697,7 +5612,6 @@
 Default Cost Center,Default لګښت مرکز,
 Undeposited Funds Account,د نه منل شوي فنډ حساب,
 Shopify Log,د پیرود لوګو,
-Request Data,د ډاټا ډاټا,
 Shopify Settings,د دوتنې سمبالښت,
 status html,حالت HTML,
 Enable Shopify,د دوتنې فعالول,
@@ -5817,7 +5731,6 @@
 Exercise Instructions,د تمرین لارښوونې,
 Exercise Video,ورزش ویډیو,
 Exercise Steps,د تمرین مرحلې,
-Steps,ګامونه,
 Steps Table,د ګامونو جدول,
 Exercise Type Step,د تمرین ډول ډول ګام,
 Max number of visit,د کتنې ډیره برخه,
@@ -6001,7 +5914,6 @@
 Patient Encounter Symptom,د ناروغ د ناروغۍ علامه,
 HLC-PMR-.YYYY.-,HLC-PMR -YYYY-,
 Attach Medical Record,د میډیکل ریکارډ ضمیمه کړئ,
-Reference DocType,د ډاټا ډول,
 Spouse,ښځه,
 Family,کورنۍ,
 Schedule Details,مهالویش توضیحات,
@@ -6983,16 +6895,8 @@
 HTML / Banner that will show on the top of product list.,HTML / بنر چې به د محصول د لست په سر وښيي.,
 Set prefix for numbering series on your transactions,چې د خپلې راکړې ورکړې شمیر لړ جوړ مختاړی,
 Setup Series,Setup لړۍ,
-Select Transaction,انتخاب معامالتو,
-Help HTML,مرسته د HTML,
-Series List for this Transaction,د دې پیسو د انتقال د لړۍ بشپړفهرست,
-User must always select,کارن بايد تل انتخاب,
-Check this if you want to force the user to select a series before saving. There will be no default if you check this.,وګورئ دا که تاسو غواړئ چې د کارونکي زور راوړي ترڅو د سپما لپاره مخکې له یو لړ ټاکي. هلته به نه default وي که چېرې تاسو د دې وګورئ.,
 Update Series,تازه لړۍ,
 Change the starting / current sequence number of an existing series.,د پیل / اوسني تسلسل کې د شته لړ شمېر کې بدلون راولي.,
-Prefix,هغه مختاړی,
-This is the number of the last created transaction with this prefix,دا په دې مختاړی د تېرو جوړ معامله شمیر,
-Update Series Number,تازه لړۍ شمېر,
 Quotation Lost Reason,د داوطلبۍ ورک دلیل,
 A third party distributor / dealer / commission agent / affiliate / reseller who sells the companies products for a commission.,د دریمې ډلې د ویشونکی- / پلورونکي / کمیسیون اجنټ / غړيتوب لری / د پلورنې لپاره د يو کميسون د شرکتونو توليدات پلوري.,
 Sales Partner Name,خرڅلاو همکار نوم,
@@ -7687,7 +7591,6 @@
 Warehouse wise Item Balance Age and Value,د ګودام وارز توکي د توازن عمر او ارزښت,
 Work Order Stock Report,د کار آرډ اسٹاک راپور,
 Work Orders in Progress,په پرمختګ کې کاري امر,
-Validation Error,د اعتبار تېروتنه,
 Automatically Process Deferred Accounting Entry,په اتوماتيک ډول د ټاکل شوي محاسبې ننوتلو پروسه,
 Bank Clearance,د بانک تصفیه,
 Bank Clearance Detail,د بانک تصفیه توضیحات,
@@ -7724,45 +7627,7 @@
 Therapy Plan: ,د درملنې پلان:,
 Total Counts Targeted: ,په نښه شوي ټول شمیر:,
 Total Counts Completed: ,بشپړې شمېرل شوې:,
-Andaman and Nicobar Islands,د اندامان او نیکوبر ټاپو,
-Andhra Pradesh,اندرا پردیش,
-Arunachal Pradesh,اروناچل پردیش,
-Assam,آسام,
-Bihar,بهار,
-Chandigarh,چندیګډ,
-Chhattisgarh,چشت,
-Dadra and Nagar Haveli,دادرا او نګار حویلی,
-Daman and Diu,دامان او ډیو,
-Delhi,ډیلي,
-Goa,ګوا,
-Gujarat,ګجرات,
-Haryana,هریانا,
-Himachal Pradesh,هماچل پردیش,
-Jammu and Kashmir,جمو او کشمير,
-Jharkhand,جارخند,
-Karnataka,کرناټکا,
-Kerala,کیرل,
-Lakshadweep Islands,لکدشویپ ټاپوګان,
-Madhya Pradesh,مدیا پردیش,
-Maharashtra,مهاراشترا,
-Manipur,منیپور,
-Meghalaya,میغالیا,
-Mizoram,میزورم,
-Nagaland,ناګالینډ,
-Odisha,اوډیشا,
-Other Territory,نورې حوزې,
-Pondicherry,پانډیچری,
-Punjab,پنجاب,
-Rajasthan,راجستان,
-Sikkim,سکم,
-Tamil Nadu,تامل ناډو,
-Telangana,تلنګانه,
-Tripura,تریپوره,
-Uttar Pradesh,اترپردیش,
-Uttarakhand,اتراکنډ,
-West Bengal,لویدیځ بنګال,
 Is Mandatory,لازمي دی,
-Published on,په خپور شوی,
 Service Received But Not Billed,خدمت ترلاسه کړی مګر بیل شوی ندی,
 Deferred Accounting Settings,د محاسبې ترتیبونه,
 Book Deferred Entries Based On,پر بنسټ د کتاب ټاکل شوي ننوتنې,
@@ -8035,8 +7900,6 @@
 Worksheet Instructions,د کاري پاetې لارښوونې,
 Result Legend Print,د لیجنډ چاپ,
 Print Position,چاپ چاپ,
-Bottom,ښکته,
-Top,سر,
 Both,دواړه,
 Result Legend,د پایلو لیجنډ,
 Lab Tests,د لیب ټیسټونه,
@@ -8081,12 +7944,10 @@
 Approvers,مخالفت,
 The first Approver in the list will be set as the default Approver.,په لیست کې لومړی تصویبونکی به د ډیفالټ تصویب کونکي په توګه وټاکل شي.,
 Shift Request Approver,د شفټ غوښتنه تصویب,
-PAN Number,د پان شمیره,
 Provident Fund Account,د راتلونکي فنډ حساب,
 MICR Code,د MICR کوډ,
 Repay unclaimed amount from salary,له تنخوا څخه نامعلومه اندازه پیسې بیرته ورکړئ,
 Deduction from salary,له معاش څخه تخفیف,
-Expired Leaves,ختم شوې پاvesې,
 If this is not checked the loan by default will be considered as a Demand Loan,که چیرې دا چک نه شي نو په ډیفالټ ډول به د غوښتنې پور په توګه وګ .ل شي,
 This account is used for booking loan repayments from the borrower and also disbursing loans to the borrower,دا حساب د پور ورکونکي څخه د پور بیرته تادیات کولو لپاره او هم پور اخیستونکي ته د پورونو توزیع لپاره کارول کیږي,
 This account is capital account which is used to allocate capital for loan disbursal account ,دا حساب د پانګوونې حساب دی چې د پور توزیع شوي حساب لپاره د پانګو ځانګړي کولو لپاره کارول کیږي,
@@ -8844,3 +8705,41 @@
 Creating Purchase Order ...,د پیرود امر رامینځته کول ...,
 "Select a Supplier from the Default Suppliers of the items below. On selection, a Purchase Order will be made against items belonging to the selected Supplier only.",د لاندې شیانو ډیفالټ عرضه کونکو څخه یو عرضه کونکی غوره کړئ. په انتخاب کولو کې ، د پیرود امر به یوازې هغه انتخاب شوي چمتو کونکي پورې اړه لرونکي توکو په مقابل کې وي.,
 Row #{}: You must select {} serial numbers for item {}.,قطار # {}: تاسو باید د توکي {{لپاره سریال نمبرونه وټاکئ.,
+Add Comment,Add Comment,
+More...,نور ...,
+Notes,یاداښتونه,
+Payment Gateway,د پیسو ليدونکی,
+Payment Gateway Name,د تادیاتو دروازې نوم,
+Payments,د پیسو ورکړه,
+Plan Name,د پلان نوم,
+Portal,پورتال,
+Scan Barcode,بارکوډ سکین کړئ,
+Some information is missing,ځينې معلومات ورک دی,
+Successful,بریالی,
+Tools,وسیلې,
+Use Sandbox,sandbox استعمال,
+Busy,بوخت,
+Completed By,بشپړ شوي,
+Payment Failed,د تادیاتو کې پاتې راغی,
+Column {0},کالم {0},
+Field Mapping,د ساحې نقشه کول,
+Not Specified,معلوم نه ده,
+Update Type,د اوسمهال ډول,
+Dr,ډاکټر,
+End Time,د پاي وخت,
+Fetching...,ترلاسه کول ...,
+"It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.",داسې ښکاري چې د سرور د پټې ترتیب سره یو مسله شتون لري. د ناکامۍ په صورت کې، ستاسو د حساب رقم به بیرته ترلاسه شي.,
+Looks like someone sent you to an incomplete URL. Please ask them to look into it.,ښکاري چې څوک تاسو ته نامکمل URL ته واستول. لطفا د هغوی څخه غوښتنه وکړی تر څو دا وګوري.,
+Master,ماسټر,
+Pay,د تنخاوو,
+You can also copy-paste this link in your browser,تاسو هم کولای شی کاپي پېسټ-ستاسې په لټونګر کې دې لینک,
+Verified By,تایید شوي By,
+Invalid naming series (. missing) for {0},د {0 for لپاره د نومونې ناسمه لړۍ (. ورکه شوې),
+Phone Number,د تلیفون شمیره,
+Account SID,ګ Sون SID,
+Global Defaults,Global افتراضیو,
+Is Mandatory,لازمي دی,
+WhatsApp,WhatsApp,
+Make a call,یو زنګ ووهه,
+Approve,منظور کړل,
+Reject,رد,
diff --git a/erpnext/translations/pt-BR.csv b/erpnext/translations/pt-BR.csv
index c07082e..9823470 100644
--- a/erpnext/translations/pt-BR.csv
+++ b/erpnext/translations/pt-BR.csv
@@ -113,7 +113,6 @@
 Add Items,Adicionar Itens,
 Add Leads,Adicionar Leads,
 Add Multiple Tasks,Adicionar Várias Tarefas,
-Add Row,Adicionar Linha,
 Add Sales Partners,Adicionar Parceiros de Vendas,
 Add Serial No,Adicionar Serial No,
 Add Students,Adicionar Alunos,
@@ -211,9 +210,7 @@
 An error occurred during the update process,Ocorreu um erro durante o processo de atualização,
 "An item exists with same name ({0}), please change the item group name or rename the item","Um item existe com o mesmo nome ( {0}) , por favor, altere o nome do grupo de itens ou renomeie o item",
 Analyst,Analista,
-Analytics,Análise,
 Annual Billing: {0},Faturação Anual: {0},
-Anonymous,Anônimo,
 Another Budget record '{0}' already exists against {1} '{2}' and account '{3}' for fiscal year {4},Outro registro de orçamento ';{0}'; já existe contra {1} ';{2}'; e conta ';{3}'; para o ano fiscal {4},
 Another Period Closing Entry {0} has been made after {1},Outra entrada no Período de Encerramento {0} foi feita após {1},
 Another Sales Person {0} exists with the same Employee id,Outro Vendedor {0} existe com o mesmo ID de Colaborador,
@@ -283,14 +280,12 @@
 Attendance not submitted for {0} as {1} on leave.,Participação não enviada para {0} como {1} de licença.,
 Attribute table is mandatory,A tabela de atributos é obrigatório,
 Attribute {0} selected multiple times in Attributes Table,Atributo {0} selecionada várias vezes na tabela de atributos,
-Author,Autor,
 Authorized Signatory,Signatário Autorizado,
 Auto Material Requests Generated,Requisições de Material Geradas Automaticamente,
 Auto Repeat,Repetição Automática,
 Auto repeat document updated,Auto repetir documento atualizado,
 Automotive,Automotivo,
 Available,Disponível,
-Available Leaves,Folhas Disponíveis,
 Available Qty,Qtde Disponível,
 Available Selling,Venda Disponível,
 Available for use date is required,Disponível para data de uso é obrigatório,
@@ -340,7 +335,6 @@
 Base URL,URL Base,
 Based On,Baseado Em,
 Based On Payment Terms,Baseado Em Termos de Pagamento,
-Basic,Básico,
 Batch,Lote,
 Batch Entries,Entradas de Lote,
 Batch ID is mandatory,O ID do lote é obrigatório,
@@ -361,7 +355,6 @@
 Billable Hours,Horas Faturáveis,
 Billed,Faturado,
 Billed Amount,Total Faturado,
-Billing,Faturamento,
 Billing Address,Endereço de Faturamento,
 Billing Address is same as Shipping Address,O endereço de cobrança é o mesmo do endereço de entrega,
 Billing Amount,Total Para Faturamento,
@@ -560,7 +553,6 @@
 Consumed Qty,Qtde Consumida,
 Consumer Products,Produtos Para o Consumidor,
 Contact,Contato,
-Contact Details,Detalhes do Contato,
 Contact Us,Contate-nos,
 Content,Conteúdo,
 Content Masters,Mestres de Conteúdo,
@@ -715,7 +707,6 @@
 Date of Joining,Data da Contratação,
 Date of Joining must be greater than Date of Birth,Data de Contratação deve ser maior do que a Data de Nascimento,
 Date of Transaction,Data da Transação,
-Datetime,Data e Hora,
 Day,Dia,
 Debit,Débito,
 Debit ({0}),Débito ({0}),
@@ -874,7 +865,6 @@
 Employee cannot report to himself.,Colaborador não pode denunciar a si mesmo.,
 Employee {0} has already applied for {1} between {2} and {3} : ,O empregado {0} já aplicou {1} entre {2} e {3}:,
 Employee {0} of grade {1} have no default leave policy,Empregado {0} da nota {1} não tem política de licença padrão,
-Enable,Permitir,
 Enable / disable currencies.,Ativar / Desativar moedas.,
 Enabled,Ativado,
 "Enabling 'Use for Shopping Cart', as Shopping Cart is enabled and there should be at least one Tax Rule for Shopping Cart","Ao ativar a ""Utilização para Carrinho de Compras"", o Carrinho de Compras ficará ativado e deverá haver pelo menos uma Regra de Impostos para o Carrinho de Compras",
@@ -905,7 +895,6 @@
 Error: Not a valid id?,Erro: Não é um ID válido?,
 Estimated Cost,Custo Estimado,
 "Even if there are multiple Pricing Rules with highest priority, then following internal priorities are applied:","Mesmo se houver várias regras de preços com maior prioridade, então seguintes prioridades internas são aplicadas:",
-Event,Evento,
 Exchange Gain/Loss,Ganho/perda Com Câmbio,
 Exchange Rate Revaluation master.,Mestre de Reavaliação da Taxa de Câmbio.,
 Exchange Rate must be same as {0} {1} ({2}),Taxa de câmbio deve ser o mesmo que {0} {1} ({2}),
@@ -1032,7 +1021,6 @@
 From value must be less than to value in row {0},Do valor deve ser menor do que o valor na linha {0},
 From {0} | {1} {2},A Partir de {0} | {1} {2},
 Fulfillment,Realização,
-Full,Cheio,
 Full Name,Nome Completo,
 Fully Depreciated,Depreciados Totalmente,
 Furnitures and Fixtures,Móveis e Utensílios,
@@ -1133,7 +1121,6 @@
 Hub Sync ID,Identificação da Sincronização do Hub,
 Human Resource,Recursos Humanos,
 Human Resources,Recursos Humanos,
-IFSC Code,Código IFSC,
 IGST Amount,Valor IGST,
 IP Address,Endereço de Ip,
 ITC Available (whether in full op part),ITC disponível (seja na parte operacional completa),
@@ -1185,7 +1172,6 @@
 Ineligible ITC,ITC Não Elegível,
 Initiated,Iniciada,
 Inpatient Record,Registro de Internamento,
-Insert,Inserir,
 Installation Note,Nota de Instalação,
 Installation Note {0} has already been submitted,A nota de instalação {0} já foi enviada,
 Installation date cannot be before delivery date for Item {0},Data de instalação não pode ser anterior à data de entrega de item {0},
@@ -1197,7 +1183,6 @@
 Insurance Start date should be less than Insurance End date,A data de início da cobertura do seguro deve ser inferior a data de término da cobertura,
 Integrated Tax,Imposto Integrado,
 Inter-State Supplies,Suprimentos Interestaduais,
-Interests,Juros,
 Internet Publishing,Publishing Internet,
 Intra-State Supplies,Suprimentos Intra-estatais,
 Introduction,Introdução,
@@ -1316,7 +1301,6 @@
 Lab testing datetime cannot be before collection datetime,O tempo de exibição no laboratório não pode ser anterior à data de coleta,
 Label,Rótulo,
 Laboratory,Laboratório,
-Language Name,Nome do Idioma,
 Large,Grande,
 Last Communication,Último Contato,
 Last Communication Date,Data do Último Contato,
@@ -1347,8 +1331,6 @@
 Letter Heads for print templates.,Cabeçalhos para modelos de impressão.,
 Level,Nível,
 Liability,Passivo,
-License,Licença,
-Limit,Limite,
 Limit Crossed,Limite Ultrapassado,
 Link to Material Request,Link Para Solicitação de Material,
 List of all share transactions,Lista de todas as transações de compartilhamento,
@@ -1359,7 +1341,6 @@
 Loans (Liabilities),Empréstimos (passivo),
 Loans and Advances (Assets),Empréstimos e Adiantamentos (ativos),
 Local,Local,
-Log,Registo,
 Logs for maintaining sms delivery status,Logs para a manutenção de status de entrega sms,
 Lost,Perdido,
 Lost Reasons,Razões Perdidas,
@@ -1445,7 +1426,6 @@
 Medical Department,Departamento Medico,
 Medical Record,Registo Médico,
 Medium,Médio,
-Meeting,Reunião,
 Member Activity,Atividade de Membro,
 Member ID,ID do Membro,
 Member Name,Nome do Membro,
@@ -1495,7 +1475,6 @@
 Multiple Variants,Variantes Múltiplas,
 Multiple fiscal years exist for the date {0}. Please set company in Fiscal Year,Vários anos fiscais existem para a data {0}. Por favor defina empresa no ano fiscal,
 Music,Música,
-My Account,Minha Conta,
 Name error: {0},Nome de erro: {0},
 Name of new Account. Note: Please don't create accounts for Customers and Suppliers,Nome da nova conta. Nota: Por favor não criar contas para Clientes e Fornecedores,
 Name or Email is mandatory,Nome ou email é obrigatório,
@@ -1538,7 +1517,6 @@
 New credit limit is less than current outstanding amount for the customer. Credit limit has to be atleast {0},Novo limite de crédito é inferior ao saldo devedor atual do cliente. o limite de crédito deve ser de pelo menos {0},
 New task,Nova Tarefa,
 New {0} pricing rules are created,Novas {0} regras de precificação são criadas,
-Newsletters,Newsletters,
 Newspaper Publishers,Editor de Newsletter,
 Next,Próximo,
 Next Contact By cannot be same as the Lead Email Address,Próximo Contato não pode ser o mesmo que o Endereço de Email do Lead,
@@ -1686,7 +1664,6 @@
 Other,Outro,
 Other Reports,Relatórios Adicionais,
 "Other outward supplies(Nil rated,Exempted)","Outras fontes externas (valor nominal nominal, isentos)",
-Others,Outros,
 Out Qty,Qtde Saída,
 Out Value,Valor Saída,
 Out of Order,Fora de Serviço,
@@ -1726,7 +1703,6 @@
 Party Type and Party is mandatory for {0} account,O Tipo de Parceiro e o Parceiro são obrigatórios para a conta {0},
 Party Type is mandatory,É obrigatório colocar o Tipo de Parceiro,
 Party is mandatory,Parceiro é obrigatório,
-Password,Senha,
 Past Due Date,Data de Vencimento Passado,
 Patient,Paciente,
 Patient Appointment,Nomeação do Paciente,
@@ -1784,7 +1760,6 @@
 Pharmaceutical,Farmacêutico,
 Pharmaceuticals,Farmacêuticos,
 Physician,Médico,
-Pincode,Pincode,
 Place Of Supply (State/UT),Lugar de Fornecimento (estado / UT),
 Place Order,Fazer Pedido,
 Plan Name,Nome do Plano,
@@ -1896,7 +1871,6 @@
 Please select date,Por favor selecione a data,
 Please select item code,Por favor selecione o código do item,
 Please select month and year,Selecione mês e ano,
-Please select prefix first,Por favor selecione o prefixo primeiro,
 Please select the Company,Selecione a Empresa,
 Please select the Multiple Tier Program type for more than one collection rules.,Por favor selecione o tipo de Programa de Múltiplas Classes para mais de uma regra de coleta.,
 Please select the assessment group other than 'All Assessment Groups',Selecione o grupo de avaliação diferente de &quot;Todos os grupos de avaliação&quot;,
@@ -1913,7 +1887,6 @@
 Please set Company filter blank if Group By is 'Company',Defina o filtro de empresa em branco se Group By for ';Company';,
 Please set Default Payroll Payable Account in Company {0},Por Favor Definir Payroll Conta a Pagar Padrão In Company {0},
 Please set Depreciation related Accounts in Asset Category {0} or Company {1},Por favor defina as contas relacionadas com depreciação de ativos em Categoria {0} ou Empresa {1},
-Please set Email Address,Por Favor Defina o Endereço de Email,
 Please set GST Accounts in GST Settings,Defina as Contas GST Em Configurações GST,
 Please set Hotel Room Rate on {},Defina a Tarifa do Quarto do Hotel Em {},
 Please set Number of Depreciations Booked,Por Favor Defina o Número de Depreciações Marcado,
@@ -1936,7 +1909,6 @@
 Please set the Email ID for the Student to send the Payment Request,Defina o email para que o Aluno envie a Solicitação de Pagamento,
 Please set the Item Code first,Defina primeiro o código do item,
 Please set the Payment Schedule,Por Favor Defina o Cronograma de Pagamento,
-Please set the series to be used.,Por favor defina a série a ser usada.,
 Please set {0} for address {1},Por favor defina {0} para o endereço {1},
 Please setup Students under Student Groups,Por favor configure alunos sob grupos de estudantes,
 Please specify Company,Por favor especifique Empresa,
@@ -1953,7 +1925,6 @@
 Point-of-Sale,Ponto de Vendas,
 Point-of-Sale Profile,Perfil do Ponto de Vendas,
 Portal,Portal,
-Portal Settings,Configurações do Portal,
 Possible Supplier,Possível Fornecedor,
 Postal Expenses,Despesas Postais,
 Posting Date,Data da Postagem,
@@ -2152,12 +2123,10 @@
 Reference No is mandatory if you entered Reference Date,Referência Não é obrigatório se você entrou Data de Referência,
 Reference No.,Referência No.,
 Reference Number,Número de Referência,
-Reference Owner,Proprietário de Referência,
 Reference Type,Tipo de Referência,
 "Reference: {0}, Item Code: {1} and Customer: {2}","Referência: {0}, Código do Item: {1} e Cliente: {2}",
 References,Referências,
 Refresh Token,Token de Atualização,
-Region,Região,
 Register,Registo,
 Rejected,Rejeitado,
 Related,Relacionados,
@@ -2179,7 +2148,6 @@
 Replace BOM and update latest price in all BOMs,Substitua a LDM e atualize o preço mais recente em todas as LDMs,
 Replied,Respondido,
 Report,Relatório,
-Report Builder,Criador de Relatório,
 Report Type,Tipo de Relatório,
 Report Type is mandatory,Tipo de Relatório é obrigatório,
 Reports,Relatórios,
@@ -2355,13 +2323,11 @@
 Same Company is entered more than once,Mesma empresa está inscrita mais de uma vez,
 Same item cannot be entered multiple times.,Mesmo item não pode ser inserido várias vezes.,
 Same supplier has been entered multiple times,Mesmo fornecedor foi inserido várias vezes,
-Sample,Amostra,
 Sample Collection,Coleção de Amostras,
 Sample quantity {0} cannot be more than received quantity {1},A quantidade de amostra {0} não pode ser superior à quantidade recebida {1},
 Sanctioned,Liberada,
 Sand,Areia,
 Saturday,Sábado,
-Saved,Salvo,
 Saving {0},Salvando {0},
 Scan Barcode,Scan Barcode,
 Schedule,Agendar,
@@ -2463,7 +2429,6 @@
 Series Updated,Série Atualizada,
 Series Updated Successfully,Série Atualizada Com Sucesso,
 Series is mandatory,Série é obrigatório,
-Series {0} already used in {1},Série {0} já usado em {1},
 Service,Serviço,
 Service Level Agreement,Acordo de Nível de Serviço,
 Service Level Agreement.,Acordo de Nível de Serviço.,
@@ -2479,7 +2444,6 @@
 Set Tax Rule for shopping cart,Conjunto de regras de imposto por carrinho de compras,
 Set as Closed,Definir Como Fechado,
 Set as Completed,Definir Como Concluído,
-Set as Default,Definir Como Padrão,
 Set as Lost,Definir Como Perdido,
 Set as Open,Definir Como Aberto,
 Set default inventory account for perpetual inventory,Defina a conta de inventário padrão para o inventário perpétuo,
@@ -2511,7 +2475,6 @@
 Shareholder,Acionista,
 Ship To State,Enviar Para Estado,
 Shipments,Entregas,
-Shipping,Expedição,
 Shipping Address,Endereço Para Entrega,
 "Shipping Address does not have country, which is required for this Shipping Rule","O endereço de envio não tem país, o que é necessário para esta regra de envio",
 Shipping rule only applicable for Buying,Regra de envio aplicável apenas para compra,
@@ -2564,7 +2527,6 @@
 Split Batch,Lote Dividido,
 Split Issue,Problema de Divisão,
 Sports,Esportes,
-Standard,Padrão,
 Standard Buying,Compra Padrão,
 Standard Selling,Venda Padrão,
 Standard contract terms for Sales or Purchase.,Termos do contrato padrão para vendas ou compra.,
@@ -2731,7 +2693,6 @@
 Terms and Conditions,Termos e Condições,
 Terms and Conditions Template,Modelo de Termos e Condições,
 Territory,Território,
-Test,Teste,
 Thank you for your business!,Obrigado pela compra!,
 The 'From Package No.' field must neither be empty nor it's value less than 1.,O ';A partir do número do pacote'; o campo não deve estar vazio nem valor inferior a 1.,
 The Brand,A Marca,
@@ -2848,7 +2809,6 @@
 Total (Without Tax),Total (sem Imposto),
 Total Achieved,Total de Alcançados,
 Total Actual,Total Atual,
-Total Allocated Leaves,Total de Folhas Alocadas,
 Total Amount,Valor Total,
 Total Amount Credited,Quantidade Total Creditada,
 Total Applicable Charges in Purchase Receipt Items table must be same as Total Taxes and Charges,Total de encargos aplicáveis em Purchase mesa Itens recibo deve ser o mesmo que o total Tributos e Encargos,
@@ -2892,7 +2852,6 @@
 Total(Amt),Total (quantia),
 Total(Qty),Total (qtde),
 Traceability,Rastreabilidade,
-Traceback,Traceback,
 Track Leads by Lead Source.,Rastrear Leads Por Origem.,
 Transaction,Transação,
 Transaction Date,Data da Transação,
@@ -2930,7 +2889,6 @@
 UOM Conversion factor is required in row {0},Fator de Conversão da UDM é necessário na linha {0},
 UOM coversion factor required for UOM: {0} in Item: {1},Fator de Conversão de UDM é necessário para Unidade de Medida: {0} no Item: {1},
 URL,URL,
-Unable to find DocType {0},Não foi possível encontrar DocType {0},
 Unable to find exchange rate for {0} to {1} for key date {2}. Please create a Currency Exchange record manually,Não é possível encontrar a taxa de câmbio para {0} a {1} para a data-chave {2}. Crie um registro de troca de moeda manualmente,
 Unable to find score starting at {0}. You need to have standing scores covering 0 to 100,Não foi possível encontrar uma pontuação a partir de {0}. Você precisa ter pontuações em pé cobrindo de 0 a 100,
 Unable to find variable: ,Não foi possível encontrar a variável:,
@@ -2960,7 +2918,6 @@
 Upload your letter head and logo. (you can edit them later).,Publique seu timbre e logotipo. (Você pode editá-las mais tarde).,
 Upper Income,Alta Renda,
 Use Sandbox,Use Sandbox,
-Used Leaves,Folhas Usadas,
 User,Usuário,
 User ID,ID de Usuário,
 User ID not set for Employee {0},ID de Usuário Não Definida Para Colaborador {0},
@@ -3051,7 +3008,6 @@
 Website Settings,Configurações do Site,
 Wednesday,Quarta-feira,
 Week,Semana,
-Weekdays,Dias da Semana,
 Weekly,Semanalmente,
 "Weight is mentioned,\nPlease mention ""Weight UOM"" too","Peso é mencionado, \n Também mencione ""Unidade de Medida de Peso""",
 Welcome email sent,Email de Boas Vindas enviado,
@@ -3072,7 +3028,6 @@
 Work Order {0} must be submitted,A ordem de serviço {0} deve ser enviada,
 Work Orders Created: {0},Ordens de Serviço Criadas: {0},
 Work-in-Progress Warehouse is required before Submit,Armazém de Trabalho em Andamento é necessário antes de Enviar,
-Workflow,Fluxo de Trabalho,
 Working,Trabalhando,
 Working Hours,Horas de Trabalho,
 Workstation,Estação de Trabalho,
@@ -3102,7 +3057,6 @@
 You need to be a user other than Administrator with System Manager and Item Manager roles to register on Marketplace.,Você precisa ser um usuário diferente das funções Administrador com Gerente do Sistema e Gerenciador de Itens para registrar no Marketplace.,
 You need to be a user with System Manager and Item Manager roles to add users to Marketplace.,Você precisa ser um usuário com as funções System Manager e Item Manager para adicionar usuários ao Marketplace.,
 You need to be a user with System Manager and Item Manager roles to register on Marketplace.,Você precisa ser um usuário com as funções System Manager e Item Manager para registrar no Marketplace.,
-You need to be logged in to access this page,Você precisa estar logado para acessar esta página,
 You need to enable Shopping Cart,É preciso ativar o Carrinho de Compras,
 You will lose records of previously generated invoices. Are you sure you want to restart this subscription?,Você perderá registros de faturas geradas anteriormente. Tem certeza de que deseja reiniciar esta assinatura?,
 Your Organization,Sua Organização,
@@ -3218,7 +3172,6 @@
 Assigned To,Atribuído A,
 Chat,Chat,
 Completed By,Completado Por,
-County,Distrito,
 Day of Week,Dia da Semana,
 "Dear System Manager,","Caro Administrador de Sistema,",
 Default Value,Valor Padrão,
@@ -3229,31 +3182,21 @@
 Fieldtype,Tipo de Campo,
 Help Articles,Artigos de Ajuda,
 ID,ID,
-Images,Imagens,
 Import,Importar,
 Language,Idioma,
 Likes,Gostos,
 Merge with existing,Mesclar com existente,
-Office,Escritório,
 Orientation,Orientação,
 Parent,Principal,
-Passive,Passivo,
 Payment Failed,Pagamento Falhou,
-Permanent,Permanente,
 Personal,Pessoal,
-Plant,Fábrica,
 Post,Post,
-Postal,Postal,
 Postal Code,CEP,
-Previous,Anterior,
 Provider,Fornecedor,
 Read Only,Somente Leitura,
 Recipient,Destinatário,
 Reviews,Revisões,
 Sender,Remetente,
-Shop,Loja,
-Subsidiary,Subsidiário,
-There is some problem with the file url: {0},Há algum problema com a url do arquivo: {0},
 There were errors while sending email. Please try again.,Ocorreram erros durante o envio de email. Por favor tente novamente.,
 Values Changed,Valores Alterados,
 or,ou,
@@ -3280,19 +3223,16 @@
 Quality Feedback Template,Modelo de Feedback de Qualidade,
 Rules for applying different promotional schemes.,Regras para aplicar diferentes esquemas promocionais.,
 Show {0},Mostrar {0},
-"Special Characters except '-', '#', '.', '/', '{{' and '}}' not allowed in naming series {0}","Caracteres especiais, exceto &quot;-&quot;, &quot;#&quot;, &quot;.&quot;, &quot;/&quot;, &quot;{{&quot; e &quot;}}&quot; não permitidos na série de nomenclatura {0}",
 Target Details,Detalhes do Alvo,
 {0} already has a Parent Procedure {1}.,{0} já tem um procedimento pai {1}.,
 API,API,
 Annual,Anual,
 Change,Alteração,
 Contact Email,Email de Contato,
-Export Type,Tipo de Exportação,
 From Date,Data De,
 Group By,Agrupar Por,
 Invalid URL,URL inválida,
 Landscape,Panorama,
-Last Sync On,Última sincronização em,
 Naming Series,Código Dos Documentos,
 No data to export,Nenhum dado para exportar,
 Portrait,Retrato,
@@ -3302,7 +3242,6 @@
 Show Document,Mostrar Documento,
 Show Traceback,Mostrar Traceback,
 Video,Vídeo,
-Webhook Secret,Segredo do Webhook,
 % Of Grand Total,% do total geral,
 <b>Company</b> is a mandatory filter.,<b>A empresa</b> é um filtro obrigatório.,
 <b>From Date</b> is a mandatory filter.,<b>A partir da data</b> é um filtro obrigatório.,
@@ -3358,7 +3297,6 @@
 BOM Comparison Tool,Ferramenta de Comparação de BOM,
 BOM recursion: {0} cannot be child of {1},Recursão da BOM: {0} não pode ser filho de {1},
 BOM recursion: {0} cannot be parent or child of {1},Recursão de BOM: {0} não pode ser pai ou filho de {1},
-Back to Home,Retornar ao Início,
 Back to Messages,Voltar Para Mensagens,
 Bank Data mapper doesn't exist,O mapeador de dados bancários não existe,
 Bank Details,Detalhes Bancários,
@@ -3420,7 +3358,6 @@
 Currency,Moeda,
 Current Status,Status Atual,
 Customer PO,PO Cliente,
-Customize,Personalizar,
 Daily,Diário,
 Date,Data,
 Date of Birth cannot be greater than Joining Date.,A data de nascimento não pode ser maior que a data de ingresso.,
@@ -3454,7 +3391,6 @@
 ERPNext could not find any matching payment entry,O ERPNext não conseguiu encontrar qualquer entrada de pagamento correspondente,
 Earliest Age,Idade Mais Antiga,
 Edit Details,Editar Detalhes,
-Edit Profile,Editar Perfil,
 Either GST Transporter ID or Vehicle No is required if Mode of Transport is Road,O ID do Transportador GST ou o Número do Veículo é necessário se o Modo de Transporte for Rodoviário,
 Email,Email,
 Email Campaigns,Campanhas de Email,
@@ -3482,7 +3418,6 @@
 Fetch Items from Warehouse,Buscar itens do armazém,
 Fetching...,Buscando...,
 Field,Campo,
-File Manager,Gestor de Arquivos,
 Filters,Filtros,
 Finding linked payments,Como encontrar pagamentos vinculados,
 Fleet Management,Gestão de Frotas,
@@ -3521,7 +3456,6 @@
 Incorrect Warehouse,Armazém Incorreto,
 Invalid Barcode. There is no Item attached to this barcode.,Código de barras inválido. Não há nenhum item anexado a este código de barras.,
 Invalid credentials,Credenciais inválidas,
-Invite as User,Convidar Como Usuário,
 Issue Priority.,Prioridade do Incidente.,
 Issue Type.,Tipo de Incidente.,
 "It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","Parece que há um problema com a configuração de distribuição do servidor. Em caso de falha, o valor será reembolsado em sua conta.",
@@ -3564,7 +3498,6 @@
 New Invoice,Nova Fatura,
 New Payment,Novo Pagamento,
 New release date should be in the future,A nova data de lançamento deve estar no futuro,
-Newsletter,Newsletter,
 No Account matched these filters: {},Nenhuma conta corresponde a esses filtros: {},
 No communication found.,Nenhuma comunicação encontrada.,
 No correct answer is set for {0},Nenhuma resposta correta está definida para {0},
@@ -3640,7 +3573,6 @@
 Please setup a default bank account for company {0},Por favor configure uma conta bancária padrão para a empresa {0},
 Please specify,Por favor especifique,
 Please specify a {0},Por favor especifique um {0},lead
-Printing,Impressão,
 Priority,Prioridade,
 Priority has been changed to {0}.,A prioridade foi alterada para {0}.,
 Priority {0} has been repeated.,A prioridade {0} foi repetida.,
@@ -3649,7 +3581,6 @@
 Project,Projeto,
 Provide the academic year and set the starting and ending date.,Forneça o ano acadêmico e defina as datas inicial e final.,
 Public token is missing for this bank,O token público está em falta neste banco,
-Publish,Publicar,
 Publish 1 Item,Publicar 1 Item,
 Publish Items,Publicar Itens,
 Publish More Items,Publicar Mais Itens,
@@ -3677,7 +3608,6 @@
 Reconciled,Reconciliado,
 Recruitment,Recrutamento,
 Red,Vermelho,
-Refreshing,Atualizando,
 Release date must be in the future,Data de lançamento deve estar no futuro,
 Relieving Date must be greater than or equal to Date of Joining,A Data de Alívio deve ser maior ou igual à Data de Ingresso,
 Rename,Renomear,
@@ -3721,7 +3651,6 @@
 Search for a payment,Procurar por um pagamento,
 Search for anything ...,Procurar por qualquer coisa...,
 Search results for,Buscar resultados para,
-Select All,Selecionar Tudo,
 Select Difference Account,Selecione Uma Conta de Diferença,
 Select a Default Priority.,Selecione Uma Prioridade Padrão.,
 Select a company,Selecione uma empresa,
@@ -3740,11 +3669,9 @@
 Service Level Agreement has been changed to {0}.,O Acordo de Nível de Serviço foi alterado para {0}.,
 Service Level Agreement was reset.,O Contrato de Nível de Serviço foi redefinido.,
 Service Level Agreement with Entity Type {0} and Entity {1} already exists.,O Acordo de Nível de Serviço com o Tipo de Entidade {0} e a Entidade {1} já existe.,
-Set,Definir,
 Set Meta Tags,Definir Meta Tags,
 Set {0} in company {1},Defina {0} na empresa {1},
 Setup,Configuração,
-Setup Wizard,Assistente de Configuração,
 Shift Management,Gerenciamento de Turno,
 Show Future Payments,Mostrar Pagamentos Futuros,
 Show Linked Delivery Notes,Mostrar Notas de Entrega Vinculadas,
@@ -3815,7 +3742,6 @@
 Unreconciled,Não Reconciliado,
 Unsupported GST Category for E-Way Bill JSON generation,Categoria GST não suportada para geração JSON Bill E-Way,
 Update,Atualizar,
-Update Details,Detalhes da Atualização,
 Update Taxes for Items,Atualizar Impostos Para Itens,
 "Upload a bank statement, link or reconcile a bank account","Carregar extrato bancário, vincular ou reconciliar uma conta bancária",
 Upload a statement,Carregar uma declaração,
@@ -3839,7 +3765,6 @@
 XML Files Processed,Arquivos XML processados,
 Year,Ano,
 Yearly,Anualmente,
-You,Você,
 You are not allowed to enroll for this course,Você não tem permissão para se inscrever neste curso,
 You are not enrolled in program {0},Você não está inscrito no programa {0},
 You can Feature upto 8 items.,Você pode destacar até 8 itens.,
@@ -3856,7 +3781,6 @@
 e-Way Bill already exists for this document,Bill e-Way já existe para este documento,
 woocommerce - {0},woocommerce - {0},
 {0} Coupon used are {1}. Allowed quantity is exhausted,{0} o cupom usado é {1}. a quantidade permitida está esgotada,
-{0} Name,{0} Nome,
 {0} Operations: {1},{0} Operações: {1},
 {0} bank transaction(s) created,{0} transações bancárias criadas,
 {0} bank transaction(s) created and {1} errors,{0} transacções bancárias criadas e {1} erros,
@@ -3875,17 +3799,13 @@
 Total Income,Renda Total,
 Total Income This Year,Renda Total Este Ano,
 Barcode,Código de Barras,
-Bold,Negrito,
-Center,Centro,
 Clear,Limpar,
-Comment,Comentário,
 Comments,Comentários,
 DocType,DocType,
 Download,Baixar,
 Left,Saiu,
 Link,Link,
 New,Novo,
-Not Found,Não Encontrado,
 Print,Impressão,
 Reference Name,Nome de Referência,
 Refresh,Atualizar,
@@ -3908,7 +3828,6 @@
 Email Id,Email,
 No,Não,
 Reference Doctype,DocType de Referência,
-User Id,ID do Usuário,
 Yes,Sim,
 Actual ,Real ,
 Add to cart,Adicionar ao carrinho,
@@ -4304,7 +4223,6 @@
 e.g Adjustments for:,por exemplo ajustes para:,
 Section Subtotal,Subtotal de Seção,
 Section Footer,Rodapé de Seção,
-Position,Posição,
 Cash Flow Mapping,Mapeamento de Fluxo de Caixa,
 Select Maximum Of 1,Selecione Máximo de 1,
 Is Finance Cost,O Custo Das Finanças,
@@ -4936,7 +4854,6 @@
 Previous Business Day,Dia Útil Anterior,
 Next Business Day,Próximo Dia Comercial,
 Urgent,Urgente,
-Crop,Colheita,
 Crop Name,Nome da Cultura,
 Scientific Name,Nome Científico,
 "You can define all the tasks which need to carried out for this crop here. The day field is used to mention the day on which the task needs to be carried out, 1 being the 1st day, etc.. ","Você pode definir todas as tarefas que devem ser realizadas para esta cultura aqui. o campo do dia é usado para mencionar o dia em que a tarefa precisa ser realizada, 1 sendo o 1º dia, etc.",
@@ -5441,7 +5358,6 @@
 To TIme,Até o Horário,
 Course End Date,Data de Término do Curso,
 Course Topic,Tópico do Curso,
-Topic,Tópico,
 Topic Name,Nome do Tópico,
 Education Settings,Configurações de Educação,
 Current Academic Year,Ano Acadêmico Em Curso,
@@ -5516,7 +5432,6 @@
 Check this if the Student is residing at the Institute's Hostel.,Verifique se o estudante reside no albergue do Instituto.,
 Walking,Caminhando,
 Institute's Bus,Ônibus do Instituto,
-Public Transport,Transporte Público,
 Self-Driving Vehicle,Veículo de Auto-condução,
 Pick/Drop by Guardian,Pick / Drop By Guardian,
 Enrolled courses,Cursos matriculados,
@@ -5697,7 +5612,6 @@
 Default Cost Center,Centro de Custo Padrão,
 Undeposited Funds Account,Conta de Fundos Não Depositados,
 Shopify Log,Log do Shopify,
-Request Data,Solicitar Dados,
 Shopify Settings,Configurações do Shopify,
 status html,status html,
 Enable Shopify,Ativar o Shopify,
@@ -5817,7 +5731,6 @@
 Exercise Instructions,Instruções de Exercício,
 Exercise Video,Vídeo de Exercícios,
 Exercise Steps,Etapas do Exercício,
-Steps,Passos,
 Steps Table,Tabela de Passos,
 Exercise Type Step,Etapa de Tipo de Exercício,
 Max number of visit,Número máximo de visitas,
@@ -6001,7 +5914,6 @@
 Patient Encounter Symptom,Sintoma de Encontro Com Paciente,
 HLC-PMR-.YYYY.-,HLC-PMR-.YYYY.-,
 Attach Medical Record,Anexar Prontuário Médico,
-Reference DocType,DocType de Referência,
 Spouse,Cônjuge,
 Family,Família,
 Schedule Details,Detalhes da Programação,
@@ -6983,16 +6895,8 @@
 HTML / Banner that will show on the top of product list.,HTML / Faixa que vai ser mostrada no topo da lista de produtos.,
 Set prefix for numbering series on your transactions,Definir prefixo para séries de numeração em suas transações,
 Setup Series,Configuração de Séries,
-Select Transaction,Selecione a Transação,
-Help HTML,Ajuda HTML,
-Series List for this Transaction,Lista de séries para esta transação,
-User must always select,O Usuário deve sempre selecionar,
-Check this if you want to force the user to select a series before saving. There will be no default if you check this.,Marque esta opção se você deseja forçar o usuário a selecionar uma série antes de salvar. Não haverá nenhum padrão se você marcar isso.,
 Update Series,Atualizar Séries,
 Change the starting / current sequence number of an existing series.,Alterar o número sequencial de início/atual de uma série existente.,
-Prefix,Prefixo,
-This is the number of the last created transaction with this prefix,Este é o número da última transação criada com este prefixo,
-Update Series Number,Atualizar Números de Séries,
 Quotation Lost Reason,Motivo da Perda do Orçamento,
 A third party distributor / dealer / commission agent / affiliate / reseller who sells the companies products for a commission.,Um distribuidor de terceiros / revendedor / comissão do agente / filial / revendedor que vende os produtos de empresas de uma comissão.,
 Sales Partner Name,Nome do Parceiro de Vendas,
@@ -7687,7 +7591,6 @@
 Warehouse wise Item Balance Age and Value,Warehouse wise Item Equilíbrio Idade e Valor,
 Work Order Stock Report,Relatório de Estoque de Ordem de Trabalho,
 Work Orders in Progress,Ordens de Serviço Em Andamento,
-Validation Error,Erro de Validação,
 Automatically Process Deferred Accounting Entry,Processo Automático de Entrada Contábil Diferida,
 Bank Clearance,Liquidação Bancária,
 Bank Clearance Detail,Detalhe de Liquidação de Banco,
@@ -7724,45 +7627,7 @@
 Therapy Plan: ,Plano de Terapia:,
 Total Counts Targeted: ,Total de Contagens Almejadas:,
 Total Counts Completed: ,Total de Contagens Concluídas:,
-Andaman and Nicobar Islands,Ilhas Andaman e Nicobar,
-Andhra Pradesh,Andhra Pradesh,
-Arunachal Pradesh,Arunachal Pradesh,
-Assam,Assam,
-Bihar,Bihar,
-Chandigarh,Chandigarh,
-Chhattisgarh,Chhattisgarh,
-Dadra and Nagar Haveli,Dadra e Nagar Haveli,
-Daman and Diu,Damão e Diu,
-Delhi,Délhi,
-Goa,Goa,
-Gujarat,Gujarat,
-Haryana,Haryana,
-Himachal Pradesh,Himachal Pradesh,
-Jammu and Kashmir,Jammu e Caxemira,
-Jharkhand,Jharkhand,
-Karnataka,Karnataka,
-Kerala,Kerala,
-Lakshadweep Islands,Ilhas Lakshadweep,
-Madhya Pradesh,Madhya Pradesh,
-Maharashtra,Maharashtra,
-Manipur,Manipur,
-Meghalaya,Meghalaya,
-Mizoram,Mizoram,
-Nagaland,Nagaland,
-Odisha,Odisha,
-Other Territory,Outro Território,
-Pondicherry,Pondicherry,
-Punjab,Punjab,
-Rajasthan,Rajasthan,
-Sikkim,Sikkim,
-Tamil Nadu,Tamil Nadu,
-Telangana,Telangana,
-Tripura,Tripura,
-Uttar Pradesh,Uttar Pradesh,
-Uttarakhand,Uttarakhand,
-West Bengal,Bengala Ocidental,
 Is Mandatory,É mandatório,
-Published on,Publicado Em,
 Service Received But Not Billed,Serviço Recebido Mas Não Cobrado,
 Deferred Accounting Settings,Configurações de Contabilidade Diferida,
 Book Deferred Entries Based On,Entradas Diferidas do Livro Com Base Em,
@@ -8035,8 +7900,6 @@
 Worksheet Instructions,Instruções da Planilha,
 Result Legend Print,Impressão da Legenda do Resultado,
 Print Position,Posição de Impressão,
-Bottom,Inferior,
-Top,Topo,
 Both,Ambos,
 Result Legend,Legenda do Resultado,
 Lab Tests,Testes de Laboratório,
@@ -8081,12 +7944,10 @@
 Approvers,Aprovadores,
 The first Approver in the list will be set as the default Approver.,O primeiro aprovador da lista será definido como o aprovador padrão.,
 Shift Request Approver,Aprovador de Solicitação de Turno,
-PAN Number,Número PAN,
 Provident Fund Account,Conta do Fundo de Previdência,
 MICR Code,Código MICR,
 Repay unclaimed amount from salary,Reembolsar quantia não reclamada do salário,
 Deduction from salary,Dedução do salário,
-Expired Leaves,Folhas Vencidas,
 If this is not checked the loan by default will be considered as a Demand Loan,Se esta opção não for marcada o empréstimo por padrão será considerado um empréstimo à vista,
 This account is used for booking loan repayments from the borrower and also disbursing loans to the borrower,Esta conta é usada para registrar reembolsos de empréstimos do mutuário e também desembolsar empréstimos para o mutuário,
 This account is capital account which is used to allocate capital for loan disbursal account ,Esta conta é a conta de capital que é usada para alocar capital para a conta de desembolso do empréstimo,
@@ -8844,3 +8705,41 @@
 Creating Purchase Order ...,Criando Pedido de Compra...,
 "Select a Supplier from the Default Suppliers of the items below. On selection, a Purchase Order will be made against items belonging to the selected Supplier only.","Selecione um fornecedor dos fornecedores padrão dos itens abaixo. na seleção, um pedido de compra será feito apenas para itens pertencentes ao fornecedor selecionado.",
 Row #{}: You must select {} serial numbers for item {}.,Linha {}: você deve selecionar {} números de série para o item {}.,
+Add Comment,Adicionar Comentário,
+More...,Mais...,
+Notes,Notas,
+Payment Gateway,Gateway de Pagamento,
+Payment Gateway Name,Nome do Gateway de Pagamento,
+Payments,Pagamentos,
+Plan Name,Nome do Plano,
+Portal,Portal,
+Scan Barcode,Scan Barcode,
+Some information is missing,Alguma informação está faltando,
+Successful,Bem sucedido,
+Tools,Ferramentas,
+Use Sandbox,Use Sandbox,
+Busy,Ocupado,
+Completed By,Completado por,
+Payment Failed,Pagamento falhou,
+Column {0},Coluna {0},
+Field Mapping,Mapeamento de Campo,
+Not Specified,Não especificado,
+Update Type,Tipo de atualização,
+Dr,Dr,
+End Time,Horário de Término,
+Fetching...,Buscando ...,
+"It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","Parece que há um problema com a configuração de distribuição do servidor. Em caso de falha, o valor será reembolsado em sua conta.",
+Looks like someone sent you to an incomplete URL. Please ask them to look into it.,"Parece que alguém lhe enviou a um URL incompleta. Por favor, pedir-lhes para olhar para ele.",
+Master,Cadastro,
+Pay,Pagar,
+You can also copy-paste this link in your browser,Você também pode copiar e colar este link no seu navegador,
+Verified By,Verificado Por,
+Invalid naming series (. missing) for {0},Série de nomenclatura inválida (. Ausente) para {0},
+Phone Number,Número de telefone,
+Account SID,SID da conta,
+Global Defaults,Padrões Gerais,
+Is Mandatory,É mandatório,
+WhatsApp,Whatsapp,
+Make a call,Faça uma ligação,
+Approve,Aprovar,
+Reject,Rejeitar,
diff --git a/erpnext/translations/pt.csv b/erpnext/translations/pt.csv
index 9b7a854..c2afe32 100644
--- a/erpnext/translations/pt.csv
+++ b/erpnext/translations/pt.csv
@@ -113,7 +113,6 @@
 Add Items,Adicionar itens,
 Add Leads,Adicionar leads,
 Add Multiple Tasks,Adicionar várias tarefas,
-Add Row,Adicionar linha,
 Add Sales Partners,Adicionar parceiros de vendas,
 Add Serial No,Adicionar Nr. de Série,
 Add Students,Adicionar Alunos,
@@ -211,9 +210,7 @@
 An error occurred during the update process,Ocorreu um erro durante o processo de atualização,
 "An item exists with same name ({0}), please change the item group name or rename the item","Já existe um item com o mesmo nome ({0}), por favor, altere o nome deste item ou altere o nome deste item",
 Analyst,Analista,
-Analytics,Análise,
 Annual Billing: {0},Faturação Anual: {0},
-Anonymous,Anônimo,
 Another Budget record '{0}' already exists against {1} '{2}' and account '{3}' for fiscal year {4},Outro registro de orçamento &#39;{0}&#39; já existe contra {1} &#39;{2}&#39; e conta &#39;{3}&#39; para o ano fiscal {4},
 Another Period Closing Entry {0} has been made after {1},Foi efetuado outro Registo de Encerramento de Período {0} após {1},
 Another Sales Person {0} exists with the same Employee id,Já existe outro Vendedor {0} com a mesma id de Funcionário,
@@ -283,14 +280,12 @@
 Attendance not submitted for {0} as {1} on leave.,Participação não enviada para {0} como {1} de licença.,
 Attribute table is mandatory,É obrigatório colocar a tabela do atributos,
 Attribute {0} selected multiple times in Attributes Table,O Atributo {0} foi selecionado várias vezes na Tabela de Atributos,
-Author,Autor,
 Authorized Signatory,Signatário autorizado,
 Auto Material Requests Generated,Solicitações de Materiais Geradas Automaticamente,
 Auto Repeat,Repetição Automática,
 Auto repeat document updated,Auto repetir documento atualizado,
 Automotive,Automóvel,
 Available,Disponível,
-Available Leaves,Folhas Disponíveis,
 Available Qty,Qtd disponível,
 Available Selling,Venda disponível,
 Available for use date is required,Disponível para data de uso é obrigatório,
@@ -340,7 +335,6 @@
 Base URL,URL Base,
 Based On,Baseado Em,
 Based On Payment Terms,Baseado em termos de pagamento,
-Basic,Básico,
 Batch,Lote,
 Batch Entries,Entradas de lote,
 Batch ID is mandatory,O ID do lote é obrigatório,
@@ -361,7 +355,6 @@
 Billable Hours,Horas faturáveis,
 Billed,Faturado,
 Billed Amount,Montante Faturado,
-Billing,Faturação,
 Billing Address,Endereço de Faturação,
 Billing Address is same as Shipping Address,O endereço de cobrança é o mesmo do endereço de entrega,
 Billing Amount,Montante de Faturação,
@@ -560,7 +553,6 @@
 Consumed Qty,Qtd Consumida,
 Consumer Products,Bens de Consumo,
 Contact,Contacto,
-Contact Details,Dados de Contacto,
 Contact Us,Contate-Nos,
 Content,Conteúdo,
 Content Masters,Mestres de Conteúdo,
@@ -715,7 +707,6 @@
 Date of Joining,Data de Admissão,
 Date of Joining must be greater than Date of Birth,A Data de Admissão deve ser mais recente do que a Data de Nascimento,
 Date of Transaction,Data da Transação,
-Datetime,Data e Hora,
 Day,Dia,
 Debit,Débito,
 Debit ({0}),Débito ({0}),
@@ -874,7 +865,6 @@
 Employee cannot report to himself.,O Funcionário não pode reportar-se a si mesmo.,
 Employee {0} has already applied for {1} between {2} and {3} : ,O empregado {0} já aplicou {1} entre {2} e {3}:,
 Employee {0} of grade {1} have no default leave policy,Empregado {0} da nota {1} não tem política de licença padrão,
-Enable,permitir,
 Enable / disable currencies.,Ativar / desativar moedas.,
 Enabled,Ativado,
 "Enabling 'Use for Shopping Cart', as Shopping Cart is enabled and there should be at least one Tax Rule for Shopping Cart","Ao ativar a ""Utilização para Carrinho de Compras"", o Carrinho de Compras ficará ativado e deverá haver pelo menos uma Regra de Impostos para o Carrinho de Compras",
@@ -905,7 +895,6 @@
 Error: Not a valid id?,Erro: Não é uma ID válida?,
 Estimated Cost,Custo estimado,
 "Even if there are multiple Pricing Rules with highest priority, then following internal priorities are applied:","Mesmo se houver várias Regras de Fixação de Preços com alta prioridade, as seguintes prioridades internas serão aplicadas:",
-Event,Evento,
 Exchange Gain/Loss,Ganhos / Perdas de Câmbio,
 Exchange Rate Revaluation master.,Mestre de Reavaliação da Taxa de Câmbio.,
 Exchange Rate must be same as {0} {1} ({2}),Taxa de Câmbio deve ser a mesma que {0} {1} ({2}),
@@ -1032,7 +1021,6 @@
 From value must be less than to value in row {0},O valor de deve ser inferior ao valor da linha {0},
 From {0} | {1} {2},De {0} | {1} {2},
 Fulfillment,Cumprimento,
-Full,Cheio,
 Full Name,Nome Completo,
 Fully Depreciated,Totalmente Depreciados,
 Furnitures and Fixtures,Móveis e Utensílios,
@@ -1133,7 +1121,6 @@
 Hub Sync ID,Identificação da Sincronização do Hub,
 Human Resource,Recursos humanos,
 Human Resources,Recursos humanos,
-IFSC Code,Código IFSC,
 IGST Amount,Valor IGST,
 IP Address,Endereço de IP,
 ITC Available (whether in full op part),ITC disponível (seja na parte operacional completa),
@@ -1185,7 +1172,6 @@
 Ineligible ITC,ITC não elegível,
 Initiated,Iniciado,
 Inpatient Record,Registro de internamento,
-Insert,Inserir,
 Installation Note,Nota de instalação,
 Installation Note {0} has already been submitted,A nota de instalação {0} já foi enviada,
 Installation date cannot be before delivery date for Item {0},A data de instalação não pode ser anterior à data de entrega do item {0},
@@ -1197,7 +1183,6 @@
 Insurance Start date should be less than Insurance End date,A data de Início do Seguro deve ser anterior à data de Término do Seguro,
 Integrated Tax,Imposto Integrado,
 Inter-State Supplies,Suprimentos interestaduais,
-Interests,Juros,
 Internet Publishing,Publicações na Internet,
 Intra-State Supplies,Suprimentos Intra-estatais,
 Introduction,Introdução,
@@ -1316,7 +1301,6 @@
 Lab testing datetime cannot be before collection datetime,O tempo de exibição no laboratório não pode ser anterior à data de coleta,
 Label,Rótulo,
 Laboratory,Laboratório,
-Language Name,Nome do Idioma,
 Large,Grande,
 Last Communication,Última comunicação,
 Last Communication Date,Data da última comunicação,
@@ -1347,8 +1331,6 @@
 Letter Heads for print templates.,Os Cabeçalhos de Carta para modelos de impressão.,
 Level,Nível,
 Liability,Responsabilidade,
-License,Licença,
-Limit,Limite,
 Limit Crossed,Limite Ultrapassado,
 Link to Material Request,Link para solicitação de material,
 List of all share transactions,Lista de todas as transações de compartilhamento,
@@ -1359,7 +1341,6 @@
 Loans (Liabilities),Empréstimos (Passivo),
 Loans and Advances (Assets),Empréstimos e Adiantamentos (Ativos),
 Local,Local,
-Log,Registo,
 Logs for maintaining sms delivery status,Registo para a manutenção do estado de entrega de sms,
 Lost,Perdido,
 Lost Reasons,Razões Perdidas,
@@ -1445,7 +1426,6 @@
 Medical Department,Departamento Medico,
 Medical Record,Registo médico,
 Medium,Médio,
-Meeting,encontro,
 Member Activity,Atividade de membro,
 Member ID,ID do membro,
 Member Name,Nome do membro,
@@ -1495,7 +1475,6 @@
 Multiple Variants,Variantes múltiplas,
 Multiple fiscal years exist for the date {0}. Please set company in Fiscal Year,"Existem diversos anos fiscais para a data {0}. Por favor, defina a empresa nesse Ano Fiscal",
 Music,Música,
-My Account,Minha Conta,
 Name error: {0},Nome de erro: {0},
 Name of new Account. Note: Please don't create accounts for Customers and Suppliers,"Nome da nova conta. Nota: Por favor, não crie contas para clientes e fornecedores",
 Name or Email is mandatory,É obrigatório colocar o Nome ou Email,
@@ -1538,7 +1517,6 @@
 New credit limit is less than current outstanding amount for the customer. Credit limit has to be atleast {0},O novo limite de crédito é inferior ao montante em dívida atual para o cliente. O limite de crédito tem que ser pelo menos {0},
 New task,Nova tarefa,
 New {0} pricing rules are created,Novas {0} regras de precificação são criadas,
-Newsletters,Newsletters,
 Newspaper Publishers,Editores de jornais,
 Next,Seguinte,
 Next Contact By cannot be same as the Lead Email Address,O Próximo Contacto Por não pode ser o mesmo que o Endereço de Email de Potencial Cliente,
@@ -1686,7 +1664,6 @@
 Other,Outro,
 Other Reports,Outros relatórios,
 "Other outward supplies(Nil rated,Exempted)","Outras fontes externas (valor nominal nominal, isentos)",
-Others,Outros,
 Out Qty,Qtd de Saída,
 Out Value,Valor de Saída,
 Out of Order,Fora de serviço,
@@ -1726,7 +1703,6 @@
 Party Type and Party is mandatory for {0} account,O tipo de festa e a parte são obrigatórios para a conta {0},
 Party Type is mandatory,É obrigatório colocar o Tipo de Parte,
 Party is mandatory,É obrigatório colocar a parte,
-Password,Senha,
 Past Due Date,Data de vencimento passado,
 Patient,Paciente,
 Patient Appointment,Nomeação do paciente,
@@ -1784,7 +1760,6 @@
 Pharmaceutical,Farmacêutico,
 Pharmaceuticals,Farmacêuticos,
 Physician,Médico,
-Pincode,Código PIN,
 Place Of Supply (State/UT),Lugar de fornecimento (estado / UT),
 Place Order,Efetuar Ordem,
 Plan Name,Nome do Plano,
@@ -1896,7 +1871,6 @@
 Please select date,Por favor selecione a data,
 Please select item code,"Por favor, seleccione o código do item",
 Please select month and year,"Por favor, selecione o mês e o ano",
-Please select prefix first,"Por favor, seleccione o prefixo primeiro",
 Please select the Company,Selecione a Empresa,
 Please select the Multiple Tier Program type for more than one collection rules.,"Por favor, selecione o tipo de Programa de Múltiplas Classes para mais de uma regra de coleta.",
 Please select the assessment group other than 'All Assessment Groups',Selecione o grupo de avaliação diferente de &quot;Todos os grupos de avaliação&quot;,
@@ -1913,7 +1887,6 @@
 Please set Company filter blank if Group By is 'Company',Defina o filtro de empresa em branco se Group By for &#39;Company&#39;,
 Please set Default Payroll Payable Account in Company {0},Por favor definir Payroll Conta a Pagar padrão in Company {0},
 Please set Depreciation related Accounts in Asset Category {0} or Company {1},"Por favor, defina as Contas relacionadas com a Depreciação na Categoria de ativos {0} ou na Empresa {1}",
-Please set Email Address,"Por favor, defina a ID do Email",
 Please set GST Accounts in GST Settings,Defina as Contas GST em Configurações GST,
 Please set Hotel Room Rate on {},Defina a tarifa do quarto do hotel em {},
 Please set Number of Depreciations Booked,"Por favor, defina o Número de Depreciações Marcado",
@@ -1936,7 +1909,6 @@
 Please set the Email ID for the Student to send the Payment Request,Defina a ID de e-mail para que o Aluno envie a Solicitação de Pagamento,
 Please set the Item Code first,Defina primeiro o código do item,
 Please set the Payment Schedule,"Por favor, defina o cronograma de pagamento",
-Please set the series to be used.,"Por favor, defina a série a ser usada.",
 Please set {0} for address {1},"Por favor, defina {0} para o endereço {1}",
 Please setup Students under Student Groups,"Por favor, configure alunos sob grupos de estudantes",
 Please specify Company,"Por favor, especifique a empresa",
@@ -1953,7 +1925,6 @@
 Point-of-Sale,Ponto de venda,
 Point-of-Sale Profile,Perfil de ponto de venda,
 Portal,Portal,
-Portal Settings,Definições do Portal,
 Possible Supplier,Fornecedor possível,
 Postal Expenses,Despesas Postais,
 Posting Date,Data de postagem,
@@ -2152,12 +2123,10 @@
 Reference No is mandatory if you entered Reference Date,É obrigatório colocar o Nr. de Referência se tiver inserido a Data de Referência,
 Reference No.,Referência No.,
 Reference Number,Número de referência,
-Reference Owner,Dono de Referência,
 Reference Type,Tipo de Referência,
 "Reference: {0}, Item Code: {1} and Customer: {2}","Referência: {0}, código do item: {1} e cliente: {2}",
 References,Referências,
 Refresh Token,token de atualização,
-Region,Região,
 Register,registo,
 Rejected,Rejeitado,
 Related,Relacionado,
@@ -2179,7 +2148,6 @@
 Replace BOM and update latest price in all BOMs,Substitua a Lista de BOM e atualize o preço mais recente em todas as BOMs,
 Replied,Respondeu,
 Report,Relatório,
-Report Builder,Criador de Relatórios,
 Report Type,Tipo de Relatório,
 Report Type is mandatory,É obrigatório colocar o Tipo de Relatório,
 Reports,Relatórios,
@@ -2355,13 +2323,11 @@
 Same Company is entered more than once,Esta mesma empresa está inscrita mais do que uma vez,
 Same item cannot be entered multiple times.,Mesmo item não pode ser inserido várias vezes.,
 Same supplier has been entered multiple times,O mesmo fornecedor foi inserido várias vezes,
-Sample,Amostra,
 Sample Collection,Coleção de amostras,
 Sample quantity {0} cannot be more than received quantity {1},A quantidade de amostra {0} não pode ser superior à quantidade recebida {1},
 Sanctioned,sancionada,
 Sand,Areia,
 Saturday,Sábado,
-Saved,Salvo,
 Saving {0},Salvando {0},
 Scan Barcode,Scan Barcode,
 Schedule,Programar,
@@ -2463,7 +2429,6 @@
 Series Updated,Série atualizada,
 Series Updated Successfully,Série atualizada com sucesso,
 Series is mandatory,É obrigatório colocar a Série,
-Series {0} already used in {1},Série {0} já usado em {1},
 Service,serviço,
 Service Level Agreement,Acordo de Nível de Serviço,
 Service Level Agreement.,Acordo de Nível de Serviço.,
@@ -2479,7 +2444,6 @@
 Set Tax Rule for shopping cart,Estabelecer Regras de Impostos para o carrinho de compras,
 Set as Closed,Definir como fechado,
 Set as Completed,Definir como concluído,
-Set as Default,Instellen als standaard,
 Set as Lost,Defenir como Perdido,
 Set as Open,Definir como aberto,
 Set default inventory account for perpetual inventory,Defina a conta de inventário padrão para o inventário perpétuo,
@@ -2511,7 +2475,6 @@
 Shareholder,Acionista,
 Ship To State,Enviar para Estado,
 Shipments,Envios,
-Shipping,Envio,
 Shipping Address,Endereço de Envio,
 "Shipping Address does not have country, which is required for this Shipping Rule","O endereço de envio não tem país, o que é necessário para esta regra de envio",
 Shipping rule only applicable for Buying,Regra de envio aplicável apenas para compra,
@@ -2564,7 +2527,6 @@
 Split Batch,Lote dividido,
 Split Issue,Problema de divisão,
 Sports,Desportos,
-Standard,Padrão,
 Standard Buying,Compra padrão,
 Standard Selling,Venda Padrão,
 Standard contract terms for Sales or Purchase.,Termos do contrato padrão para Vendas ou Compra.,
@@ -2731,7 +2693,6 @@
 Terms and Conditions,Termos e Condições,
 Terms and Conditions Template,Termos e Condições de Modelo,
 Territory,Território,
-Test,Teste,
 Thank you for your business!,Agradeço pelos seus serviços!,
 The 'From Package No.' field must neither be empty nor it's value less than 1.,O &#39;A partir do número do pacote&#39; O campo não deve estar vazio nem valor inferior a 1.,
 The Brand,A marca,
@@ -2848,7 +2809,6 @@
 Total (Without Tax),Total (sem imposto),
 Total Achieved,Total Alcançado,
 Total Actual,Total real,
-Total Allocated Leaves,Total de Folhas Alocadas,
 Total Amount,Valor total,
 Total Amount Credited,Quantidade Total Creditada,
 Total Applicable Charges in Purchase Receipt Items table must be same as Total Taxes and Charges,Total de encargos aplicáveis em Purchase mesa Itens recibo deve ser o mesmo que o total Tributos e Encargos,
@@ -2892,7 +2852,6 @@
 Total(Amt),Total (Qtd),
 Total(Qty),Total (Qtd),
 Traceability,Rastreabilidade,
-Traceback,Traceback,
 Track Leads by Lead Source.,Rastrear leads por origem de leads.,
 Transaction,Transação,
 Transaction Date,Data da Transação,
@@ -2930,7 +2889,6 @@
 UOM Conversion factor is required in row {0},É necessário colocar o fator de Conversão de UNID na linha {0},
 UOM coversion factor required for UOM: {0} in Item: {1},Fator de conversão de UNID necessário para a UNID: {0} no Item: {1},
 URL,URL,
-Unable to find DocType {0},Não foi possível encontrar DocType {0},
 Unable to find exchange rate for {0} to {1} for key date {2}. Please create a Currency Exchange record manually,Não é possível encontrar a taxa de câmbio para {0} a {1} para a data-chave {2}. Crie um registro de troca de moeda manualmente,
 Unable to find score starting at {0}. You need to have standing scores covering 0 to 100,Não foi possível encontrar uma pontuação a partir de {0}. Você precisa ter pontuações em pé cobrindo de 0 a 100,
 Unable to find variable: ,Não foi possível encontrar a variável:,
@@ -2960,7 +2918,6 @@
 Upload your letter head and logo. (you can edit them later).,Carregue o cabeçalho e logótipo da carta. (Pode editá-los mais tarde.),
 Upper Income,Rendimento Superior,
 Use Sandbox,Use Sandbox,
-Used Leaves,Folhas Usadas,
 User,Do utilizador,
 User ID,ID de Utiliz.,
 User ID not set for Employee {0},Não está definido a ID do utilizador para o Funcionário {0},
@@ -3051,7 +3008,6 @@
 Website Settings,Configurações do site,
 Wednesday,Quarta-feira,
 Week,Semana,
-Weekdays,Dias da semana,
 Weekly,Semanal,
 "Weight is mentioned,\nPlease mention ""Weight UOM"" too","Foi mencionado um Peso,\n Por favor, mencione também a ""UNID de Peso""",
 Welcome email sent,Bem-vindo e-mail enviado,
@@ -3072,7 +3028,6 @@
 Work Order {0} must be submitted,A ordem de serviço {0} deve ser enviada,
 Work Orders Created: {0},Ordens de Serviço Criadas: {0},
 Work-in-Progress Warehouse is required before Submit,Trabalho em andamento Warehouse é necessário antes de Enviar,
-Workflow,Fluxo de trabalho,
 Working,A Trabalhar,
 Working Hours,Horas de trabalho,
 Workstation,Posto de trabalho,
@@ -3102,7 +3057,6 @@
 You need to be a user other than Administrator with System Manager and Item Manager roles to register on Marketplace.,Você precisa ser um usuário diferente das funções Administrador com Gerente do Sistema e Gerenciador de Itens para registrar no Marketplace.,
 You need to be a user with System Manager and Item Manager roles to add users to Marketplace.,Você precisa ser um usuário com as funções System Manager e Item Manager para adicionar usuários ao Marketplace.,
 You need to be a user with System Manager and Item Manager roles to register on Marketplace.,Você precisa ser um usuário com as funções System Manager e Item Manager para registrar no Marketplace.,
-You need to be logged in to access this page,Você precisa estar logado para acessar esta página,
 You need to enable Shopping Cart,É preciso ativar o Carrinho de Compras,
 You will lose records of previously generated invoices. Are you sure you want to restart this subscription?,Você perderá registros de faturas geradas anteriormente. Tem certeza de que deseja reiniciar esta assinatura?,
 Your Organization,Sua organização,
@@ -3218,7 +3172,6 @@
 Assigned To,Atribuído A,
 Chat,Conversar,
 Completed By,Completado por,
-County,Município,
 Day of Week,Dia da semana,
 "Dear System Manager,","Caro Administrador de Sistema,",
 Default Value,Valor Padrão,
@@ -3229,31 +3182,21 @@
 Fieldtype,Tipo de Campo,
 Help Articles,artigo de ajuda,
 ID,ID,
-Images,imagens,
 Import,Importar,
 Language,Linguagem,
 Likes,Gostos,
 Merge with existing,Unir com existente,
-Office,Escritório,
 Orientation,Orientação,
 Parent,Principal,
-Passive,Passivo,
 Payment Failed,Pagamento falhou,
-Permanent,Permanente,
 Personal,Pessoal,
-Plant,Planta,
 Post,Post,
-Postal,Postal,
 Postal Code,Código Postal,
-Previous,Anterior,
 Provider,Fornecedor,
 Read Only,Só de Leitura,
 Recipient,Destinatário,
 Reviews,Rever,
 Sender,Remetente,
-Shop,Loja,
-Subsidiary,Subsidiário,
-There is some problem with the file url: {0},Há algum problema com a url do arquivo: {0},
 There were errors while sending email. Please try again.,"Ocorreram erros durante o envio de e-mail. Por favor, tente novamente.",
 Values Changed,Os valores alterados,
 or,ou,
@@ -3280,19 +3223,16 @@
 Quality Feedback Template,Modelo de Feedback de Qualidade,
 Rules for applying different promotional schemes.,Regras para aplicar diferentes esquemas promocionais.,
 Show {0},Mostrar {0},
-"Special Characters except '-', '#', '.', '/', '{{' and '}}' not allowed in naming series {0}","Caracteres especiais, exceto &quot;-&quot;, &quot;#&quot;, &quot;.&quot;, &quot;/&quot;, &quot;{{&quot; E &quot;}}&quot; não permitidos na série de nomenclatura {0}",
 Target Details,Detalhes do Alvo,
 {0} already has a Parent Procedure {1}.,{0} já tem um procedimento pai {1}.,
 API,API,
 Annual,Anual,
 Change,mudança,
 Contact Email,Email de Contacto,
-Export Type,Tipo de exportação,
 From Date,Data De,
 Group By,Agrupar por,
 Invalid URL,URL inválida,
 Landscape,Panorama,
-Last Sync On,Última sincronização em,
 Naming Series,Série de Atrib. de Nomes,
 No data to export,Nenhum dado para exportar,
 Portrait,Retrato,
@@ -3302,7 +3242,6 @@
 Show Document,Mostrar documento,
 Show Traceback,Mostrar Traceback,
 Video,Vídeo,
-Webhook Secret,Segredo do Webhook,
 % Of Grand Total,% Do total geral,
 <b>Company</b> is a mandatory filter.,<b>A empresa</b> é um filtro obrigatório.,
 <b>From Date</b> is a mandatory filter.,<b>A partir da data</b> é um filtro obrigatório.,
@@ -3358,7 +3297,6 @@
 BOM Comparison Tool,Ferramenta de comparação de BOM,
 BOM recursion: {0} cannot be child of {1},Recursão da BOM: {0} não pode ser filho de {1},
 BOM recursion: {0} cannot be parent or child of {1},Recursão de BOM: {0} não pode ser pai ou filho de {1},
-Back to Home,De volta para casa,
 Back to Messages,Voltar para Mensagens,
 Bank Data mapper doesn't exist,O mapeador de dados bancários não existe,
 Bank Details,Detalhes bancários,
@@ -3420,7 +3358,6 @@
 Currency,Moeda,
 Current Status,Status atual,
 Customer PO,PO Cliente,
-Customize,Personalizar,
 Daily,Diário,
 Date,Data,
 Date of Birth cannot be greater than Joining Date.,A data de nascimento não pode ser maior que a data de ingresso.,
@@ -3454,7 +3391,6 @@
 ERPNext could not find any matching payment entry,O ERPNext não conseguiu encontrar qualquer entrada de pagamento correspondente,
 Earliest Age,Idade mais antiga,
 Edit Details,Editar Detalhes,
-Edit Profile,Editar Perfil,
 Either GST Transporter ID or Vehicle No is required if Mode of Transport is Road,O ID do Transportador GST ou o Número do Veículo é necessário se o Modo de Transporte for Rodoviário,
 Email,O email,
 Email Campaigns,Campanhas de e-mail,
@@ -3482,7 +3418,6 @@
 Fetch Items from Warehouse,Buscar itens do armazém,
 Fetching...,Buscando ...,
 Field,Campo,
-File Manager,Gestor de Ficheiros,
 Filters,Filtros,
 Finding linked payments,Como encontrar pagamentos vinculados,
 Fleet Management,Gestão de Frotas,
@@ -3521,7 +3456,6 @@
 Incorrect Warehouse,Armazém incorreto,
 Invalid Barcode. There is no Item attached to this barcode.,Código de barras inválido. Não há nenhum item anexado a este código de barras.,
 Invalid credentials,Credenciais inválidas,
-Invite as User,Convidar como Utilizador,
 Issue Priority.,Emitir prioridade.,
 Issue Type.,Tipo de problema.,
 "It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","Parece que há um problema com a configuração de distribuição do servidor. Em caso de falha, o valor será reembolsado em sua conta.",
@@ -3564,7 +3498,6 @@
 New Invoice,Nova fatura,
 New Payment,Novo Pagamento,
 New release date should be in the future,A nova data de lançamento deve estar no futuro,
-Newsletter,Newsletter,
 No Account matched these filters: {},Nenhuma conta corresponde a esses filtros: {},
 No communication found.,Nenhuma comunicação encontrada.,
 No correct answer is set for {0},Nenhuma resposta correta está definida para {0},
@@ -3640,7 +3573,6 @@
 Please setup a default bank account for company {0},"Por favor, configure uma conta bancária padrão para a empresa {0}",
 Please specify,"Por favor, especifique",
 Please specify a {0},"Por favor, especifique um {0}",lead
-Printing,Impressão,
 Priority,Prioridade,
 Priority has been changed to {0}.,A prioridade foi alterada para {0}.,
 Priority {0} has been repeated.,A prioridade {0} foi repetida.,
@@ -3649,7 +3581,6 @@
 Project,Projeto,
 Provide the academic year and set the starting and ending date.,Forneça o ano acadêmico e defina as datas inicial e final.,
 Public token is missing for this bank,O token público está em falta neste banco,
-Publish,Publicar,
 Publish 1 Item,Publicar 1 item,
 Publish Items,Publicar itens,
 Publish More Items,Publicar mais itens,
@@ -3677,7 +3608,6 @@
 Reconciled,Reconciliado,
 Recruitment,Recrutamento,
 Red,Vermelho,
-Refreshing,Refrescante,
 Release date must be in the future,Data de lançamento deve estar no futuro,
 Relieving Date must be greater than or equal to Date of Joining,A Data de Alívio deve ser maior ou igual à Data de Ingresso,
 Rename,Alterar Nome,
@@ -3721,7 +3651,6 @@
 Search for a payment,Procurar por um pagamento,
 Search for anything ...,Procurar por qualquer coisa ...,
 Search results for,Buscar resultados para,
-Select All,Selecionar tudo,
 Select Difference Account,Selecione uma conta de diferença,
 Select a Default Priority.,Selecione uma prioridade padrão.,
 Select a company,Selecione uma empresa,
@@ -3740,11 +3669,9 @@
 Service Level Agreement has been changed to {0}.,O Acordo de Nível de Serviço foi alterado para {0}.,
 Service Level Agreement was reset.,O Contrato de Nível de Serviço foi redefinido.,
 Service Level Agreement with Entity Type {0} and Entity {1} already exists.,O Acordo de Nível de Serviço com o Tipo de Entidade {0} e a Entidade {1} já existe.,
-Set,conjunto,
 Set Meta Tags,Definir meta tags,
 Set {0} in company {1},Defina {0} na empresa {1},
 Setup,Configurações,
-Setup Wizard,Assistente de Configuração,
 Shift Management,Gerenciamento de turno,
 Show Future Payments,Mostrar pagamentos futuros,
 Show Linked Delivery Notes,Mostrar notas de entrega vinculadas,
@@ -3815,7 +3742,6 @@
 Unreconciled,Não reconciliado,
 Unsupported GST Category for E-Way Bill JSON generation,Categoria GST não suportada para geração JSON Bill E-Way,
 Update,Atualizar,
-Update Details,Detalhes da atualização,
 Update Taxes for Items,Atualizar impostos para itens,
 "Upload a bank statement, link or reconcile a bank account","Carregar extrato bancário, vincular ou reconciliar uma conta bancária",
 Upload a statement,Carregar uma declaração,
@@ -3839,7 +3765,6 @@
 XML Files Processed,Arquivos XML processados,
 Year,Ano,
 Yearly,Anual,
-You,Você,
 You are not allowed to enroll for this course,Você não tem permissão para se inscrever neste curso,
 You are not enrolled in program {0},Você não está inscrito no programa {0},
 You can Feature upto 8 items.,Você pode destacar até 8 itens.,
@@ -3856,7 +3781,6 @@
 e-Way Bill already exists for this document,Bill e-Way já existe para este documento,
 woocommerce - {0},woocommerce - {0},
 {0} Coupon used are {1}. Allowed quantity is exhausted,{0} O cupom usado é {1}. A quantidade permitida está esgotada,
-{0} Name,Nome de {0},
 {0} Operations: {1},{0} Operações: {1},
 {0} bank transaction(s) created,{0} transações bancárias criadas,
 {0} bank transaction(s) created and {1} errors,{0} transacções bancárias criadas e {1} erros,
@@ -3875,17 +3799,13 @@
 Total Income,Renda total,
 Total Income This Year,Renda Total Este Ano,
 Barcode,Código de barras,
-Bold,Negrito,
-Center,Centro,
 Clear,Claro,
-Comment,Comente,
 Comments,Comentários,
 DocType,DocType,
 Download,Baixar,
 Left,Esquerda,
 Link,Ligação,
 New,Novo,
-Not Found,Não Encontrado,
 Print,Impressão,
 Reference Name,nome de referencia,
 Refresh,Recarregar,
@@ -3908,7 +3828,6 @@
 Email Id,ID de Email,
 No,Não,
 Reference Doctype,DocType de Referência,
-User Id,ID do usuário,
 Yes,sim,
 Actual ,Atual,
 Add to cart,Adicionar ao carrinho,
@@ -4304,7 +4223,6 @@
 e.g Adjustments for:,"por exemplo, ajustes para:",
 Section Subtotal,Subtotal de seção,
 Section Footer,Rodapé de seção,
-Position,Posição,
 Cash Flow Mapping,Mapeamento de fluxo de caixa,
 Select Maximum Of 1,Selecione Máximo de 1,
 Is Finance Cost,O custo das finanças,
@@ -4936,7 +4854,6 @@
 Previous Business Day,Dia útil anterior,
 Next Business Day,Próximo dia comercial,
 Urgent,Urgente,
-Crop,Colheita,
 Crop Name,Nome da cultura,
 Scientific Name,Nome científico,
 "You can define all the tasks which need to carried out for this crop here. The day field is used to mention the day on which the task needs to be carried out, 1 being the 1st day, etc.. ","Você pode definir todas as tarefas que devem ser realizadas para esta cultura aqui. O campo do dia é usado para mencionar o dia em que a tarefa precisa ser realizada, 1 sendo o 1º dia, etc.",
@@ -5441,7 +5358,6 @@
 To TIme,Para Tempo,
 Course End Date,Data de Término do Curso,
 Course Topic,Tópico do curso,
-Topic,Tema,
 Topic Name,Nome do Tópico,
 Education Settings,Configurações de Educação,
 Current Academic Year,Ano Acadêmico em Curso,
@@ -5516,7 +5432,6 @@
 Check this if the Student is residing at the Institute's Hostel.,Verifique se o estudante reside no albergue do Instituto.,
 Walking,Caminhando,
 Institute's Bus,Ônibus do Instituto,
-Public Transport,Transporte público,
 Self-Driving Vehicle,Veículo de auto-condução,
 Pick/Drop by Guardian,Pick / Drop by Guardian,
 Enrolled courses,Cursos matriculados,
@@ -5697,7 +5612,6 @@
 Default Cost Center,Centro de Custo Padrão,
 Undeposited Funds Account,Conta de fundos não depositados,
 Shopify Log,Log do Shopify,
-Request Data,Solicitar dados,
 Shopify Settings,Configurações do Shopify,
 status html,status html,
 Enable Shopify,Ativar o Shopify,
@@ -5817,7 +5731,6 @@
 Exercise Instructions,Instruções de exercício,
 Exercise Video,Vídeo de exercícios,
 Exercise Steps,Etapas do exercício,
-Steps,Passos,
 Steps Table,Tabela de Passos,
 Exercise Type Step,Etapa de tipo de exercício,
 Max number of visit,Número máximo de visitas,
@@ -6001,7 +5914,6 @@
 Patient Encounter Symptom,Sintoma de encontro com paciente,
 HLC-PMR-.YYYY.-,HLC-PMR-.YYYY.-,
 Attach Medical Record,Anexar prontuário médico,
-Reference DocType,Reference DocType,
 Spouse,Cônjuge,
 Family,Família,
 Schedule Details,Detalhes da programação,
@@ -6983,16 +6895,8 @@
 HTML / Banner that will show on the top of product list.,O HTML / Banner que será mostrado no topo da lista de produtos.,
 Set prefix for numbering series on your transactions,Definir prefixo para numeração de série em suas transações,
 Setup Series,Série de Instalação,
-Select Transaction,Selecionar Transação,
-Help HTML,Ajuda de HTML,
-Series List for this Transaction,Lista de Séries para esta Transação,
-User must always select,O utilizador tem sempre que escolher,
-Check this if you want to force the user to select a series before saving. There will be no default if you check this.,Selecione esta opção se deseja forçar o utilizador a selecionar uma série antes de guardar. Não haverá nenhum padrão caso selecione esta opção.,
 Update Series,Atualizar Séries,
 Change the starting / current sequence number of an existing series.,Altera o número de sequência inicial / atual duma série existente.,
-Prefix,Prefixo,
-This is the number of the last created transaction with this prefix,Este é o número da última transacção criada com este prefixo,
-Update Series Number,Atualização de Número de Série,
 Quotation Lost Reason,Motivo de Perda de Cotação,
 A third party distributor / dealer / commission agent / affiliate / reseller who sells the companies products for a commission.,Um distribuidor de terceiros / negociante / agente à comissão / filial / revendedor que vende os produtos das empresas por uma comissão.,
 Sales Partner Name,Nome de Parceiro de Vendas,
@@ -7687,7 +7591,6 @@
 Warehouse wise Item Balance Age and Value,Warehouse wise Item Equilíbrio Idade e Valor,
 Work Order Stock Report,Relatório de estoque de ordem de trabalho,
 Work Orders in Progress,Ordens de serviço em andamento,
-Validation Error,erro de validação,
 Automatically Process Deferred Accounting Entry,Processo automático de entrada contábil diferida,
 Bank Clearance,Liquidação Bancária,
 Bank Clearance Detail,Detalhe de liquidação de banco,
@@ -7724,45 +7627,7 @@
 Therapy Plan: ,Plano de terapia:,
 Total Counts Targeted: ,Total de contagens almejadas:,
 Total Counts Completed: ,Total de contagens concluídas:,
-Andaman and Nicobar Islands,Ilhas Andaman e Nicobar,
-Andhra Pradesh,Andhra Pradesh,
-Arunachal Pradesh,Arunachal Pradesh,
-Assam,Assam,
-Bihar,Bihar,
-Chandigarh,Chandigarh,
-Chhattisgarh,Chhattisgarh,
-Dadra and Nagar Haveli,Dadra e Nagar Haveli,
-Daman and Diu,Damão e Diu,
-Delhi,Délhi,
-Goa,Goa,
-Gujarat,Gujarat,
-Haryana,Haryana,
-Himachal Pradesh,Himachal Pradesh,
-Jammu and Kashmir,Jammu e Caxemira,
-Jharkhand,Jharkhand,
-Karnataka,Karnataka,
-Kerala,Kerala,
-Lakshadweep Islands,Ilhas Lakshadweep,
-Madhya Pradesh,Madhya Pradesh,
-Maharashtra,Maharashtra,
-Manipur,Manipur,
-Meghalaya,Meghalaya,
-Mizoram,Mizoram,
-Nagaland,Nagaland,
-Odisha,Odisha,
-Other Territory,Outro Território,
-Pondicherry,Pondicherry,
-Punjab,Punjab,
-Rajasthan,Rajasthan,
-Sikkim,Sikkim,
-Tamil Nadu,Tamil Nadu,
-Telangana,Telangana,
-Tripura,Tripura,
-Uttar Pradesh,Uttar Pradesh,
-Uttarakhand,Uttarakhand,
-West Bengal,Bengala Ocidental,
 Is Mandatory,É mandatório,
-Published on,publicado em,
 Service Received But Not Billed,"Serviço recebido, mas não cobrado",
 Deferred Accounting Settings,Configurações de contabilidade diferida,
 Book Deferred Entries Based On,Entradas diferidas do livro com base em,
@@ -8035,8 +7900,6 @@
 Worksheet Instructions,Instruções da planilha,
 Result Legend Print,Impressão da legenda do resultado,
 Print Position,Posição de impressão,
-Bottom,Inferior,
-Top,Topo,
 Both,Ambos,
 Result Legend,Legenda do Resultado,
 Lab Tests,Testes de laboratório,
@@ -8081,12 +7944,10 @@
 Approvers,Aprovadores,
 The first Approver in the list will be set as the default Approver.,O primeiro aprovador da lista será definido como o aprovador padrão.,
 Shift Request Approver,Aprovador de solicitação de turno,
-PAN Number,Número PAN,
 Provident Fund Account,Conta do fundo de previdência,
 MICR Code,Código MICR,
 Repay unclaimed amount from salary,Reembolsar quantia não reclamada do salário,
 Deduction from salary,Dedução do salário,
-Expired Leaves,Folhas Vencidas,
 If this is not checked the loan by default will be considered as a Demand Loan,"Se esta opção não for marcada, o empréstimo, por padrão, será considerado um empréstimo à vista",
 This account is used for booking loan repayments from the borrower and also disbursing loans to the borrower,Esta conta é usada para registrar reembolsos de empréstimos do mutuário e também desembolsar empréstimos para o mutuário,
 This account is capital account which is used to allocate capital for loan disbursal account ,Esta conta é a conta de capital que é usada para alocar capital para a conta de desembolso do empréstimo,
@@ -8844,3 +8705,41 @@
 Creating Purchase Order ...,Criando pedido de compra ...,
 "Select a Supplier from the Default Suppliers of the items below. On selection, a Purchase Order will be made against items belonging to the selected Supplier only.","Selecione um fornecedor dos fornecedores padrão dos itens abaixo. Na seleção, um pedido de compra será feito apenas para itens pertencentes ao fornecedor selecionado.",
 Row #{}: You must select {} serial numbers for item {}.,Nº da linha {}: você deve selecionar {} números de série para o item {}.,
+Add Comment,Adicionar Comentário,
+More...,Mais...,
+Notes,Notas,
+Payment Gateway,Portal de Pagamento,
+Payment Gateway Name,Nome do Gateway de Pagamento,
+Payments,Pagamentos,
+Plan Name,Nome do Plano,
+Portal,Portal,
+Scan Barcode,Scan Barcode,
+Some information is missing,Algumas informações está faltando,
+Successful,Bem sucedido,
+Tools,Ferramentas,
+Use Sandbox,Use Sandbox,
+Busy,Ocupado,
+Completed By,Completado por,
+Payment Failed,Pagamento falhou,
+Column {0},Coluna {0},
+Field Mapping,Mapeamento de Campo,
+Not Specified,Não especificado,
+Update Type,Tipo de atualização,
+Dr,Dr,
+End Time,Data de Término,
+Fetching...,Buscando ...,
+"It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","Parece que há um problema com a configuração de distribuição do servidor. Em caso de falha, o valor será reembolsado em sua conta.",
+Looks like someone sent you to an incomplete URL. Please ask them to look into it.,"Parece que alguém lhe enviou a um URL incompleta. Por favor, pedir-lhes para olhar para ele.",
+Master,Mestre,
+Pay,Pagar,
+You can also copy-paste this link in your browser,Você também pode copiar e colar este link no seu navegador,
+Verified By,Verificado Por,
+Invalid naming series (. missing) for {0},Série de nomenclatura inválida (. Ausente) para {0},
+Phone Number,Número de telefone,
+Account SID,SID da conta,
+Global Defaults,Padrões Gerais,
+Is Mandatory,É mandatório,
+WhatsApp,Whatsapp,
+Make a call,Faça uma ligação,
+Approve,Aprovar,
+Reject,Rejeitar,
diff --git a/erpnext/translations/ro.csv b/erpnext/translations/ro.csv
index 6c81419..0cb3f84 100644
--- a/erpnext/translations/ro.csv
+++ b/erpnext/translations/ro.csv
@@ -113,7 +113,6 @@
 Add Items,Adăugă Elemente,
 Add Leads,Adaugă Oportunități,
 Add Multiple Tasks,Adăugă Sarcini Multiple,
-Add Row,Adăugă Rând,
 Add Sales Partners,Adăugă Parteneri de Vânzări,
 Add Serial No,Adăugaţi Nr. de Serie,
 Add Students,Adăugă Elevi,
@@ -211,9 +210,7 @@
 An error occurred during the update process,A apărut o eroare în timpul procesului de actualizare,
 "An item exists with same name ({0}), please change the item group name or rename the item","Există un articol cu aceeaşi denumire ({0}), vă rugăm să schimbați denumirea grupului articolului sau să redenumiţi articolul",
 Analyst,Analist,
-Analytics,Google Analytics,
 Annual Billing: {0},Facturare anuală: {0},
-Anonymous,Anonim,
 Another Budget record '{0}' already exists against {1} '{2}' and account '{3}' for fiscal year {4},O altă înregistrare bugetară {0} există deja pentru {1} &#39;{2}&#39; și contul &#39;{3}&#39; pentru anul fiscal {4},
 Another Period Closing Entry {0} has been made after {1},O altă intrare închidere de perioada {0} a fost efectuată după {1},
 Another Sales Person {0} exists with the same Employee id,Un alt Sales Person {0} există cu același ID Angajat,
@@ -283,14 +280,12 @@
 Attendance not submitted for {0} as {1} on leave.,Participarea nu a fost trimisă pentru {0} ca {1} în concediu.,
 Attribute table is mandatory,Tabelul atribut este obligatoriu,
 Attribute {0} selected multiple times in Attributes Table,Atributul {0} este selectat de mai multe ori în tabelul Atribute,
-Author,Autor,
 Authorized Signatory,Semnatar autorizat,
 Auto Material Requests Generated,Cereri materiale Auto Generat,
 Auto Repeat,Auto Repetare,
 Auto repeat document updated,Documentul repetat automat a fost actualizat,
 Automotive,Autopropulsat,
 Available,Disponibil,
-Available Leaves,Frunzele disponibile,
 Available Qty,Cantitate disponibilă,
 Available Selling,Vânzări disponibile,
 Available for use date is required,Data de utilizare disponibilă pentru utilizare este necesară,
@@ -340,7 +335,6 @@
 Base URL,URL-ul de bază,
 Based On,Bazat pe,
 Based On Payment Terms,Pe baza condițiilor de plată,
-Basic,Elementar,
 Batch,Lot,
 Batch Entries,Înregistrări pe lot,
 Batch ID is mandatory,ID-ul lotului este obligatoriu,
@@ -361,7 +355,6 @@
 Billable Hours,Ore Billable,
 Billed,Facturat,
 Billed Amount,Sumă facturată,
-Billing,Facturare,
 Billing Address,Adresa De Facturare,
 Billing Address is same as Shipping Address,Adresa de facturare este aceeași cu adresa de expediere,
 Billing Amount,Suma de facturare,
@@ -560,7 +553,6 @@
 Consumed Qty,Cantitate consumată,
 Consumer Products,Produse consumator,
 Contact,Persoana de Contact,
-Contact Details,Detalii Persoana de Contact,
 Contact Us,Contacteaza-ne,
 Content,Continut,
 Content Masters,Maeștri de conținut,
@@ -715,7 +707,6 @@
 Date of Joining,Data aderării,
 Date of Joining must be greater than Date of Birth,Data Aderării trebuie să fie ulterioara Datei Nașterii,
 Date of Transaction,Data tranzacției,
-Datetime,DatăTimp,
 Day,Zi,
 Debit,Debit,
 Debit ({0}),Debit ({0}),
@@ -874,7 +865,6 @@
 Employee cannot report to himself.,Angajat nu pot raporta la sine.,
 Employee {0} has already applied for {1} between {2} and {3} : ,Angajatul {0} a solicitat deja {1} între {2} și {3}:,
 Employee {0} of grade {1} have no default leave policy,Angajații {0} ai clasei {1} nu au o politică de concediu implicită,
-Enable,Activare,
 Enable / disable currencies.,Activare / dezactivare valute.,
 Enabled,Activat,
 "Enabling 'Use for Shopping Cart', as Shopping Cart is enabled and there should be at least one Tax Rule for Shopping Cart","Dacă activați opțiunea &quot;Utilizare pentru Cos de cumparaturi &#39;, ca Cosul de cumparaturi este activat și trebuie să existe cel puțin o regulă fiscală pentru Cos de cumparaturi",
@@ -905,7 +895,6 @@
 Error: Not a valid id?,Eroare: Nu a id valid?,
 Estimated Cost,Cost estimat,
 "Even if there are multiple Pricing Rules with highest priority, then following internal priorities are applied:","Chiar dacă există mai multe reguli de stabilire a prețurilor, cu cea mai mare prioritate, se aplică apoi următoarele priorități interne:",
-Event,Eveniment,
 Exchange Gain/Loss,Cheltuiala / Venit din diferente de curs valutar,
 Exchange Rate Revaluation master.,Master reevaluarea cursului de schimb.,
 Exchange Rate must be same as {0} {1} ({2}),Cursul de schimb trebuie să fie același ca și {0} {1} ({2}),
@@ -1032,7 +1021,6 @@
 From value must be less than to value in row {0},Din valoare trebuie să fie mai mică decat in valoare pentru inregistrarea {0},
 From {0} | {1} {2},De la {0} | {1} {2},
 Fulfillment,Împlinire,
-Full,Deplin,
 Full Name,Nume complet,
 Fully Depreciated,Depreciata pe deplin,
 Furnitures and Fixtures,Furnitures și Programe,
@@ -1133,7 +1121,6 @@
 Hub Sync ID,Hub ID de sincronizare,
 Human Resource,Resurse umane,
 Human Resources,Resurse umane,
-IFSC Code,Codul IFSC,
 IGST Amount,Suma IGST,
 IP Address,Adresa IP,
 ITC Available (whether in full op part),ITC Disponibil (fie în opțiune integrală),
@@ -1185,7 +1172,6 @@
 Ineligible ITC,ITC neeligibil,
 Initiated,Iniţiat,
 Inpatient Record,Înregistrări de pacienți,
-Insert,Introduceți,
 Installation Note,Instalare Notă,
 Installation Note {0} has already been submitted,Instalarea Nota {0} a fost deja prezentat,
 Installation date cannot be before delivery date for Item {0},Data de instalare nu poate fi înainte de data de livrare pentru postul {0},
@@ -1197,7 +1183,6 @@
 Insurance Start date should be less than Insurance End date,Asigurare Data de pornire ar trebui să fie mai mică de asigurare Data terminării,
 Integrated Tax,Impozit integrat,
 Inter-State Supplies,Consumabile inter-statale,
-Interests,interese,
 Internet Publishing,Editura Internet,
 Intra-State Supplies,Furnizori intra-statale,
 Introduction,Introducere,
@@ -1316,7 +1301,6 @@
 Lab testing datetime cannot be before collection datetime,Timpul de testare al laboratorului nu poate fi înainte de data de colectare,
 Label,Eticheta,
 Laboratory,Laborator,
-Language Name,Nume limbă,
 Large,Mare,
 Last Communication,Ultima comunicare,
 Last Communication Date,Ultima comunicare,
@@ -1347,8 +1331,6 @@
 Letter Heads for print templates.,Antete de Scrisoare de Sabloane de Imprimare.,
 Level,Nivel,
 Liability,Răspundere,
-License,Licență,
-Limit,Limită,
 Limit Crossed,limita Traversat,
 Link to Material Request,Link la solicitarea materialului,
 List of all share transactions,Lista tuturor tranzacțiilor cu acțiuni,
@@ -1359,7 +1341,6 @@
 Loans (Liabilities),Imprumuturi (Raspunderi),
 Loans and Advances (Assets),Împrumuturi și avansuri (active),
 Local,Local,
-Log,Buturuga,
 Logs for maintaining sms delivery status,Busteni pentru menținerea statutului de livrare sms,
 Lost,Pierdut,
 Lost Reasons,Motivele pierdute,
@@ -1445,7 +1426,6 @@
 Medical Department,Departamentul medical,
 Medical Record,Fișă medicală,
 Medium,Medie,
-Meeting,Întâlnire,
 Member Activity,Activitatea membrilor,
 Member ID,Membru ID,
 Member Name,Numele membrului,
@@ -1495,7 +1475,6 @@
 Multiple Variants,Variante multiple,
 Multiple fiscal years exist for the date {0}. Please set company in Fiscal Year,ani fiscali multiple exista in data de {0}. Vă rugăm să setați companie în anul fiscal,
 Music,Muzica,
-My Account,Contul Meu,
 Name error: {0},Numele de eroare: {0},
 Name of new Account. Note: Please don't create accounts for Customers and Suppliers,Numele de cont nou. Notă: Vă rugăm să nu creați conturi pentru clienți și furnizori,
 Name or Email is mandatory,Nume sau E-mail este obligatorie,
@@ -1538,7 +1517,6 @@
 New credit limit is less than current outstanding amount for the customer. Credit limit has to be atleast {0},Noua limită de credit este mai mică decât valoarea curentă restante pentru client. Limita de credit trebuie să fie atleast {0},
 New task,Sarcina noua,
 New {0} pricing rules are created,Sunt create noi {0} reguli de preț,
-Newsletters,Buletine,
 Newspaper Publishers,Editorii de ziare,
 Next,Următor,
 Next Contact By cannot be same as the Lead Email Address,Următoarea Contact Prin faptul că nu poate fi aceeași cu adresa de e-mail Plumb,
@@ -1686,7 +1664,6 @@
 Other,Altul,
 Other Reports,Alte rapoarte,
 "Other outward supplies(Nil rated,Exempted)","Alte consumabile exterioare (Nil evaluat, scutit)",
-Others,Altel,
 Out Qty,Out Cantitate,
 Out Value,Valoarea afară,
 Out of Order,Scos din uz,
@@ -1726,7 +1703,6 @@
 Party Type and Party is mandatory for {0} account,Tipul partidului și partidul este obligatoriu pentru contul {0},
 Party Type is mandatory,Tipul de partid este obligatorie,
 Party is mandatory,Party este obligatorie,
-Password,Parolă,
 Past Due Date,Data trecută,
 Patient,Rabdator,
 Patient Appointment,Numirea pacientului,
@@ -1784,7 +1760,6 @@
 Pharmaceutical,Farmaceutic,
 Pharmaceuticals,Produse farmaceutice,
 Physician,Medic,
-Pincode,Parola așa,
 Place Of Supply (State/UT),Locul livrării (stat / UT),
 Place Order,Locul de comandă,
 Plan Name,Numele planului,
@@ -1896,7 +1871,6 @@
 Please select date,Vă rugăm să selectați data,
 Please select item code,Vă rugăm să selectați codul de articol,
 Please select month and year,Vă rugăm selectați luna și anul,
-Please select prefix first,Vă rugăm să selectați prefix întâi,
 Please select the Company,Selectați compania,
 Please select the Multiple Tier Program type for more than one collection rules.,Selectați tipul de program cu mai multe niveluri pentru mai multe reguli de colectare.,
 Please select the assessment group other than 'All Assessment Groups',Selectați alt grup de evaluare decât &quot;Toate grupurile de evaluare&quot;,
@@ -1913,7 +1887,6 @@
 Please set Company filter blank if Group By is 'Company',Filtru filtru de companie gol dacă grupul de grup este &quot;companie&quot;,
 Please set Default Payroll Payable Account in Company {0},Vă rugăm să setați Cont Cheltuieli suplimentare salarizare implicit în companie {0},
 Please set Depreciation related Accounts in Asset Category {0} or Company {1},Vă rugăm să setați Conturi aferente amortizării în categoria activelor {0} sau companie {1},
-Please set Email Address,Vă rugăm să setați adresa de e-mail,
 Please set GST Accounts in GST Settings,Vă rugăm să setați Conturi GST în Setări GST,
 Please set Hotel Room Rate on {},Vă rugăm să stabiliți tariful camerei la {},
 Please set Number of Depreciations Booked,Vă rugăm să setați Numărul de Deprecieri rezervat,
@@ -1936,7 +1909,6 @@
 Please set the Email ID for the Student to send the Payment Request,Vă rugăm să setați ID-ul de e-mail pentru ca studentul să trimită Solicitarea de plată,
 Please set the Item Code first,Vă rugăm să setați mai întâi Codul elementului,
 Please set the Payment Schedule,Vă rugăm să setați Programul de plată,
-Please set the series to be used.,Setați seria care urmează să fie utilizată.,
 Please set {0} for address {1},Vă rugăm să setați {0} pentru adresa {1},
 Please setup Students under Student Groups,Configurați elevii din grupurile de studenți,
 Please specify Company,Vă rugăm să specificați companiei,
@@ -1953,7 +1925,6 @@
 Point-of-Sale,Punct-de-Vânzare,
 Point-of-Sale Profile,Profil Punct-de-Vânzare,
 Portal,Portal,
-Portal Settings,Setări portal,
 Possible Supplier,posibil furnizor,
 Postal Expenses,Cheltuieli poștale,
 Posting Date,Dată postare,
@@ -2152,12 +2123,10 @@
 Reference No is mandatory if you entered Reference Date,De referință nu este obligatorie în cazul în care ați introdus Reference Data,
 Reference No.,Numărul de referință,
 Reference Number,Numar de referinta,
-Reference Owner,Proprietar Referință,
 Reference Type,Tipul Referință,
 "Reference: {0}, Item Code: {1} and Customer: {2}","Referință: {0}, Cod articol: {1} și Client: {2}",
 References,Referințe,
 Refresh Token,Actualizează Indicativ,
-Region,Regiune,
 Register,Înregistrare,
 Rejected,Respinse,
 Related,Legate de,
@@ -2179,7 +2148,6 @@
 Replace BOM and update latest price in all BOMs,Înlocuiește BOM și actualizează prețul recent în toate BOM-urile,
 Replied,A răspuns:,
 Report,Raport,
-Report Builder,Constructor Raport,
 Report Type,Tip Raport,
 Report Type is mandatory,Tip Raport obligatoriu,
 Reports,Rapoarte,
@@ -2355,13 +2323,11 @@
 Same Company is entered more than once,Aceeași societate este înscris de mai multe ori,
 Same item cannot be entered multiple times.,Același articol nu poate fi introdus de mai multe ori.,
 Same supplier has been entered multiple times,Același furnizor a fost introdus de mai multe ori,
-Sample,Exemplu,
 Sample Collection,Colectie de mostre,
 Sample quantity {0} cannot be more than received quantity {1},Cantitatea de probe {0} nu poate fi mai mare decât cantitatea primită {1},
 Sanctioned,consacrat,
 Sand,Nisip,
 Saturday,Sâmbătă,
-Saved,Salvat,
 Saving {0},Salvarea {0},
 Scan Barcode,Scanează codul de bare,
 Schedule,Program,
@@ -2463,7 +2429,6 @@
 Series Updated,Seria Actualizat,
 Series Updated Successfully,Seria Actualizat cu succes,
 Series is mandatory,Seria este obligatorie,
-Series {0} already used in {1},Series {0} folosit deja în {1},
 Service,Servicii,
 Service Level Agreement,Acord privind nivelul serviciilor,
 Service Level Agreement.,Acord privind nivelul serviciilor.,
@@ -2479,7 +2444,6 @@
 Set Tax Rule for shopping cart,Set Regula fiscală pentru coșul de cumpărături,
 Set as Closed,Setați ca închis,
 Set as Completed,Setați ca Finalizat,
-Set as Default,Setat ca implicit,
 Set as Lost,Setați ca Lost,
 Set as Open,Setați ca Deschis,
 Set default inventory account for perpetual inventory,Setați contul inventarului implicit pentru inventarul perpetuu,
@@ -2511,7 +2475,6 @@
 Shareholder,Acționar,
 Ship To State,Transport către stat,
 Shipments,Transporturile,
-Shipping,Transport,
 Shipping Address,Adresa de livrare,
 "Shipping Address does not have country, which is required for this Shipping Rule","Adresa de expediere nu are țara, care este necesară pentru această regulă de transport",
 Shipping rule only applicable for Buying,Regulă de expediere aplicabilă numai pentru cumpărături,
@@ -2564,7 +2527,6 @@
 Split Batch,Split Lot,
 Split Issue,Emisiune separată,
 Sports,Sport,
-Standard,Standard,
 Standard Buying,Cumpararea Standard,
 Standard Selling,Vânzarea standard,
 Standard contract terms for Sales or Purchase.,Clauzele contractuale standard pentru vânzări sau de cumpărare.,
@@ -2731,7 +2693,6 @@
 Terms and Conditions,Termeni si conditii,
 Terms and Conditions Template,Termeni și condiții Format,
 Territory,Teritoriu,
-Test,Test,
 Thank you for your business!,Vă mulțumesc pentru afacerea dvs!,
 The 'From Package No.' field must neither be empty nor it's value less than 1.,"&quot;Din pachetul nr.&quot; câmpul nu trebuie să fie nici gol, nici valoarea lui mai mică decât 1.",
 The Brand,Marca,
@@ -2848,7 +2809,6 @@
 Total (Without Tax),Total (fără taxe),
 Total Achieved,Raport Realizat,
 Total Actual,Raport real,
-Total Allocated Leaves,Frunzele totale alocate,
 Total Amount,Suma totală,
 Total Amount Credited,Suma totală creditată,
 Total Applicable Charges in Purchase Receipt Items table must be same as Total Taxes and Charges,Taxe totale aplicabile în tabelul de achiziție Chitanță Elementele trebuie să fie la fel ca total impozite și taxe,
@@ -2892,7 +2852,6 @@
 Total(Amt),Total (Amt),
 Total(Qty),Total (Cantitate),
 Traceability,Trasabilitate,
-Traceback,Traceback,
 Track Leads by Lead Source.,Urmărește Oportunități după Sursă Oportunitate,
 Transaction,Tranzacţie,
 Transaction Date,Data tranzacției,
@@ -2930,7 +2889,6 @@
 UOM Conversion factor is required in row {0},Factor UOM de conversie este necesară în rândul {0},
 UOM coversion factor required for UOM: {0} in Item: {1},Factor coversion UOM UOM necesare pentru: {0} in articol: {1},
 URL,URL-ul,
-Unable to find DocType {0},Nu se poate găsi DocType {0},
 Unable to find exchange rate for {0} to {1} for key date {2}. Please create a Currency Exchange record manually,Imposibil de găsit rata de schimb pentru {0} până la {1} pentru data cheie {2}. Creați manual un registru de schimb valutar,
 Unable to find score starting at {0}. You need to have standing scores covering 0 to 100,Nu se poate găsi scorul începând cu {0}. Trebuie să aveți scoruri în picioare care acoperă între 0 și 100,
 Unable to find variable: ,Imposibil de găsit variabila:,
@@ -2960,7 +2918,6 @@
 Upload your letter head and logo. (you can edit them later).,Încărcați capul scrisoare și logo-ul. (Le puteți edita mai târziu).,
 Upper Income,Venituri de sus,
 Use Sandbox,utilizare Sandbox,
-Used Leaves,Frunze utilizate,
 User,Utilizator,
 User ID,ID-ul de utilizator,
 User ID not set for Employee {0},ID-ul de utilizator nu este setat pentru Angajat {0},
@@ -3051,7 +3008,6 @@
 Website Settings,Setarile site-ului,
 Wednesday,Miercuri,
 Week,Săptămână,
-Weekdays,Zilele saptamanii,
 Weekly,Săptămânal,
 Welcome email sent,E-mailul de bun venit a fost trimis,
 Welcome to ERPNext,Bine ati venit la ERPNext,
@@ -3071,7 +3027,6 @@
 Work Order {0} must be submitted,Ordinul de lucru {0} trebuie trimis,
 Work Orders Created: {0},Comenzi de lucru create: {0},
 Work-in-Progress Warehouse is required before Submit,De lucru-in-Progress Warehouse este necesară înainte Trimite,
-Workflow,Flux de lucru,
 Working,De lucru,
 Working Hours,Ore de lucru,
 Workstation,Stație de lucru,
@@ -3101,7 +3056,6 @@
 You need to be a user other than Administrator with System Manager and Item Manager roles to register on Marketplace.,Trebuie să fii alt utilizator decât Administrator cu rolul managerului de sistem și al Managerului de articole pentru a te înregistra pe Marketplace.,
 You need to be a user with System Manager and Item Manager roles to add users to Marketplace.,Trebuie să fii un utilizator cu roluri de manager de sistem și manager de articole pentru a adăuga utilizatori la Marketplace.,
 You need to be a user with System Manager and Item Manager roles to register on Marketplace.,Trebuie să fiți utilizator cu funcții Manager Manager și Manager de posturi pentru a vă înregistra pe Marketplace.,
-You need to be logged in to access this page,Trebuie să fii conectat pentru a putea accesa această pagină,
 You need to enable Shopping Cart,Trebuie să activați Coșul de cumpărături,
 You will lose records of previously generated invoices. Are you sure you want to restart this subscription?,Veți pierde înregistrări ale facturilor generate anterior. Sigur doriți să reporniți acest abonament?,
 Your Organization,Organizația dumneavoastră,
@@ -3217,7 +3171,6 @@
 Assigned To,Atribuit pentru,
 Chat,Chat,
 Completed By,Completat De,
-County,județ,
 Day of Week,Zi a săptămânii,
 "Dear System Manager,","Dragă System Manager,",
 Default Value,Valoare implicită,
@@ -3228,31 +3181,21 @@
 Fieldtype,Tip câmp,
 Help Articles,Articole de ajutor,
 ID,ID-ul,
-Images,Imagini,
 Import,Importarea,
 Language,Limba,
 Likes,Au apreciat,
 Merge with existing,Merge cu existente,
-Office,Birou,
 Orientation,Orientare,
 Parent,Mamă,
-Passive,Pasiv,
 Payment Failed,Plata esuata,
-Permanent,Permanent,
 Personal,Trader,
-Plant,Instalarea,
 Post,Publică,
-Postal,Poștal,
 Postal Code,Cod poștal,
-Previous,Precedenta,
 Provider,Furnizor de,
 Read Only,Doar Citire,
 Recipient,Destinatar,
 Reviews,opinii,
 Sender,Expeditor,
-Shop,Magazin,
-Subsidiary,Filială,
-There is some problem with the file url: {0},Există unele probleme cu URL-ul fișierului: {0},
 There were errors while sending email. Please try again.,Au fost erori în timp ce trimiterea de e-mail. Încercaţi din nou.,
 Values Changed,valori schimbată,
 or,sau,
@@ -3279,19 +3222,16 @@
 Quality Feedback Template,Șablon de feedback de calitate,
 Rules for applying different promotional schemes.,Reguli pentru aplicarea diferitelor scheme promoționale.,
 Show {0},Afișați {0},
-"Special Characters except '-', '#', '.', '/', '{{' and '}}' not allowed in naming series {0}","Caractere speciale, cu excepția &quot;-&quot;, &quot;#&quot;, &quot;.&quot;, &quot;/&quot;, &quot;{{&quot; Și &quot;}}&quot; nu sunt permise în numirea seriei {0}",
 Target Details,Detalii despre țintă,
 {0} already has a Parent Procedure {1}.,{0} are deja o procedură părinte {1}.,
 API,API-ul,
 Annual,Anual,
 Change,Schimbă,
 Contact Email,Email Persoana de Contact,
-Export Type,Tipul de export,
 From Date,Din data,
 Group By,A se grupa cu,
 Invalid URL,URL invalid,
 Landscape,Peisaj,
-Last Sync On,Ultima sincronizare activată,
 Naming Series,Naming Series,
 No data to export,Nu există date de exportat,
 Portrait,Portret,
@@ -3301,7 +3241,6 @@
 Show Document,Afișează documentul,
 Show Traceback,Afișare Traceback,
 Video,Video,
-Webhook Secret,Secret Webhook,
 % Of Grand Total,% Din totalul mare,
 <b>Company</b> is a mandatory filter.,<b>Compania</b> este un filtru obligatoriu.,
 <b>From Date</b> is a mandatory filter.,<b>De la Date</b> este un filtru obligatoriu.,
@@ -3357,7 +3296,6 @@
 BOM Comparison Tool,Instrument de comparare BOM,
 BOM recursion: {0} cannot be child of {1},Recurs recurs BOM: {0} nu poate fi copil de {1},
 BOM recursion: {0} cannot be parent or child of {1},Recurs din BOM: {0} nu poate fi părinte sau copil de {1},
-Back to Home,Înapoi acasă,
 Back to Messages,Înapoi la mesaje,
 Bank Data mapper doesn't exist,Mapper Data Bank nu există,
 Bank Details,Detalii bancare,
@@ -3419,7 +3357,6 @@
 Currency,Valută,
 Current Status,Starea curentă a armatei,
 Customer PO,PO de client,
-Customize,Personalizeaza,
 Daily,Zilnic,
 Date,Dată,
 Date of Birth cannot be greater than Joining Date.,Data nașterii nu poate fi mai mare decât data de aderare.,
@@ -3453,7 +3390,6 @@
 ERPNext could not find any matching payment entry,ERPNext nu a găsit nicio intrare de plată potrivită,
 Earliest Age,Cea mai timpurie vârstă,
 Edit Details,Editează detaliile,
-Edit Profile,Editează profilul,
 Either GST Transporter ID or Vehicle No is required if Mode of Transport is Road,"Fie ID-ul transportatorului GST, fie numărul vehiculului nu este necesar dacă modul de transport este rutier",
 Email,E-mail,
 Email Campaigns,Campanii prin e-mail,
@@ -3481,7 +3417,6 @@
 Fetch Items from Warehouse,Obține obiecte de la Depozit,
 Fetching...,... Fetching,
 Field,Camp,
-File Manager,Manager de fișiere,
 Filters,Filtre,
 Finding linked payments,Găsirea plăților legate,
 Fleet Management,Conducerea flotei,
@@ -3520,7 +3455,6 @@
 Incorrect Warehouse,Depozit incorect,
 Invalid Barcode. There is no Item attached to this barcode.,Cod de bare nevalid. Nu există niciun articol atașat acestui cod de bare.,
 Invalid credentials,Credențe nevalide,
-Invite as User,Invitați ca utilizator,
 Issue Priority.,Prioritate de emisiune.,
 Issue Type.,Tipul problemei.,
 "It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","Se pare că există o problemă cu configurația benzii serverului. În caz de eșec, suma va fi rambursată în cont.",
@@ -3563,7 +3497,6 @@
 New Invoice,Factură nouă,
 New Payment,Nouă plată,
 New release date should be in the future,Noua dată a lansării ar trebui să fie în viitor,
-Newsletter,Newsletter,
 No Account matched these filters: {},Niciun cont nu se potrivește cu aceste filtre: {},
 No communication found.,Nu a fost găsită nicio comunicare.,
 No correct answer is set for {0},Nu este setat un răspuns corect pentru {0},
@@ -3639,7 +3572,6 @@
 Please setup a default bank account for company {0},Vă rugăm să configurați un cont bancar implicit pentru companie {0},
 Please specify,Vă rugăm să specificați,
 Please specify a {0},Vă rugăm să specificați un {0},lead
-Printing,Tipărire,
 Priority,Prioritate,
 Priority has been changed to {0}.,Prioritatea a fost modificată la {0}.,
 Priority {0} has been repeated.,Prioritatea {0} a fost repetată.,
@@ -3648,7 +3580,6 @@
 Project,Proiect,
 Provide the academic year and set the starting and ending date.,Furnizați anul universitar și stabiliți data de început și de încheiere.,
 Public token is missing for this bank,Jurnalul public lipsește pentru această bancă,
-Publish,Publica,
 Publish 1 Item,Publicați 1 articol,
 Publish Items,Publica articole,
 Publish More Items,Publicați mai multe articole,
@@ -3676,7 +3607,6 @@
 Reconciled,reconciliat,
 Recruitment,Recrutare,
 Red,Roșu,
-Refreshing,Împrospătare,
 Release date must be in the future,Data lansării trebuie să fie în viitor,
 Relieving Date must be greater than or equal to Date of Joining,Data scutirii trebuie să fie mai mare sau egală cu data aderării,
 Rename,Redenumire,
@@ -3720,7 +3650,6 @@
 Search for a payment,Căutați o plată,
 Search for anything ...,Căutați orice ...,
 Search results for,cauta rezultate pentru,
-Select All,Selectează toate,
 Select Difference Account,Selectați Cont de diferență,
 Select a Default Priority.,Selectați o prioritate implicită.,
 Select a company,Selectați o companie,
@@ -3739,11 +3668,9 @@
 Service Level Agreement has been changed to {0}.,Acordul privind nivelul serviciilor a fost modificat în {0}.,
 Service Level Agreement was reset.,Acordul privind nivelul serviciilor a fost resetat.,
 Service Level Agreement with Entity Type {0} and Entity {1} already exists.,Acordul privind nivelul serviciului cu tipul de entitate {0} și entitatea {1} există deja.,
-Set,Setează,
 Set Meta Tags,Setați etichete meta,
 Set {0} in company {1},Setați {0} în companie {1},
 Setup,Configurare,
-Setup Wizard,Vrăjitor Configurare,
 Shift Management,Managementul schimbării,
 Show Future Payments,Afișați plăți viitoare,
 Show Linked Delivery Notes,Afișare Note de livrare conexe,
@@ -3814,7 +3741,6 @@
 Unreconciled,nereconciliat,
 Unsupported GST Category for E-Way Bill JSON generation,Categorie GST neacceptată pentru generarea JSON Bill E-Way,
 Update,Actualizare,
-Update Details,Detalii detalii,
 Update Taxes for Items,Actualizați impozitele pentru articole,
 "Upload a bank statement, link or reconcile a bank account","Încărcați un extras bancar, conectați sau reconciliați un cont bancar",
 Upload a statement,Încărcați o declarație,
@@ -3838,7 +3764,6 @@
 XML Files Processed,Fișiere XML procesate,
 Year,An,
 Yearly,Anual,
-You,Tu,
 You are not allowed to enroll for this course,Nu aveți voie să vă înscrieți la acest curs,
 You are not enrolled in program {0},Nu sunteți înscris în programul {0},
 You can Feature upto 8 items.,Puteți prezenta până la 8 articole.,
@@ -3855,7 +3780,6 @@
 e-Way Bill already exists for this document,e-Way Bill există deja pentru acest document,
 woocommerce - {0},woocommerce - {0},
 {0} Coupon used are {1}. Allowed quantity is exhausted,{0} Cuponul utilizat este {1}. Cantitatea admisă este epuizată,
-{0} Name,{0} Nume,
 {0} Operations: {1},{0} Operații: {1},
 {0} bank transaction(s) created,{0} tranzacțiile bancare create,
 {0} bank transaction(s) created and {1} errors,{0} tranzacțiile bancare create și {1} erori,
@@ -3874,17 +3798,13 @@
 Total Income,Venit total,
 Total Income This Year,Venit total în acest an,
 Barcode,coduri de bare,
-Bold,Îndrăzneţ,
-Center,Centru,
 Clear,clar,
-Comment,cometariu,
 Comments,Comentarii,
 DocType,DocType,
 Download,Descarca,
 Left,Stânga,
 Link,Legătură,
 New,Nou,
-Not Found,Nu a fost găsit,
 Print,Imprimare,
 Reference Name,nume de referinta,
 Refresh,Actualizare,
@@ -3907,7 +3827,6 @@
 Email Id,ID-ul de e-mail,
 No,Nu,
 Reference Doctype,DocType referință,
-User Id,Numele de utilizator,
 Yes,da,
 Actual ,Efectiv,
 Add to cart,Adăugaţi în Coş,
@@ -4303,7 +4222,6 @@
 e.g Adjustments for:,de ex. ajustări pentru:,
 Section Subtotal,Secțiunea Subtotal,
 Section Footer,Secțiunea Footer,
-Position,Poziţie,
 Cash Flow Mapping,Fluxul de numerar,
 Select Maximum Of 1,Selectați maxim de 1,
 Is Finance Cost,Este costul de finanțare,
@@ -4934,7 +4852,6 @@
 Previous Business Day,Ziua lucrătoare anterioară,
 Next Business Day,Ziua următoare de lucru,
 Urgent,De urgență,
-Crop,A decupa,
 Crop Name,Numele plantei,
 Scientific Name,Nume stiintific,
 "You can define all the tasks which need to carried out for this crop here. The day field is used to mention the day on which the task needs to be carried out, 1 being the 1st day, etc.. ","Puteți defini toate sarcinile care trebuie îndeplinite pentru această recoltă aici. Câmpul de zi este folosit pentru a menționa ziua în care sarcina trebuie efectuată, 1 fiind prima zi, etc.",
@@ -5439,7 +5356,6 @@
 To TIme,La timp,
 Course End Date,Desigur Data de încheiere,
 Course Topic,Subiectul cursului,
-Topic,Subiect,
 Topic Name,Nume subiect,
 Education Settings,Setări educaționale,
 Current Academic Year,Anul academic curent,
@@ -5514,7 +5430,6 @@
 Check this if the Student is residing at the Institute's Hostel.,Verificați dacă studentul este rezident la Hostelul Institutului.,
 Walking,mers,
 Institute's Bus,Biblioteca Institutului,
-Public Transport,Transport public,
 Self-Driving Vehicle,Vehicul cu autovehicul,
 Pick/Drop by Guardian,Pick / Drop de Guardian,
 Enrolled courses,Cursuri înscrise,
@@ -5695,7 +5610,6 @@
 Default Cost Center,Centru Cost Implicit,
 Undeposited Funds Account,Contul fondurilor nedeclarate,
 Shopify Log,Magazinul de jurnal,
-Request Data,Solicită Date,
 Shopify Settings,Rafinați setările,
 status html,starea html,
 Enable Shopify,Activați Shopify,
@@ -5815,7 +5729,6 @@
 Exercise Instructions,Instrucțiuni de exerciții,
 Exercise Video,Video de exerciții,
 Exercise Steps,Pași de exerciții,
-Steps,Pași,
 Steps Table,Tabelul Pașilor,
 Exercise Type Step,Tipul exercițiului Pas,
 Max number of visit,Numărul maxim de vizite,
@@ -5999,7 +5912,6 @@
 Patient Encounter Symptom,Simptomul întâlnirii pacientului,
 HLC-PMR-.YYYY.-,HLC-PMR-.YYYY.-,
 Attach Medical Record,Atașați fișa medicală,
-Reference DocType,DocType de referință,
 Spouse,soț,
 Family,Familie,
 Schedule Details,Detalii program,
@@ -6983,16 +6895,8 @@
 HTML / Banner that will show on the top of product list.,"HTML / Banner, care va arăta pe partea de sus a listei de produse.",
 Set prefix for numbering series on your transactions,Set prefix pentru seria de numerotare pe tranzacțiile dvs.,
 Setup Series,Seria de configurare,
-Select Transaction,Selectați Transaction,
-Help HTML,Ajutor HTML,
-Series List for this Transaction,Lista de serie pentru această tranzacție,
-User must always select,Utilizatorul trebuie să selecteze întotdeauna,
-Check this if you want to force the user to select a series before saving. There will be no default if you check this.,"Bifati dacă doriți sa fortati utilizatorul să selecteze o serie înainte de a salva. Nu va exista nici o valoare implicita dacă se bifeaza aici.""",
 Update Series,Actualizare Series,
 Change the starting / current sequence number of an existing series.,Schimbați secventa de numar de inceput / curent a unei serii existente.,
-Prefix,Prefix,
-This is the number of the last created transaction with this prefix,Acesta este numărul ultimei tranzacții create cu acest prefix,
-Update Series Number,Actualizare Serii Număr,
 Quotation Lost Reason,Ofertă pierdut rațiunea,
 A third party distributor / dealer / commission agent / affiliate / reseller who sells the companies products for a commission.,Un distribuitor terță parte / dealer / agent comisionar / afiliat / re-vânzător care vinde produsele companiei pentru un comision.,
 Sales Partner Name,Numele Partner Sales,
@@ -7687,7 +7591,6 @@
 Warehouse wise Item Balance Age and Value,Warehouse wise Item Balance Age și Value,
 Work Order Stock Report,Raport de stoc pentru comanda de lucru,
 Work Orders in Progress,Ordine de lucru în curs,
-Validation Error,eroare de validatie,
 Automatically Process Deferred Accounting Entry,Procesați automat intrarea contabilă amânată,
 Bank Clearance,Clearance bancar,
 Bank Clearance Detail,Detaliu de lichidare bancară,
@@ -7724,45 +7627,7 @@
 Therapy Plan: ,Planul de terapie:,
 Total Counts Targeted: ,Număruri totale vizate:,
 Total Counts Completed: ,Numărul total finalizat:,
-Andaman and Nicobar Islands,Insulele Andaman și Nicobar,
-Andhra Pradesh,Andhra Pradesh,
-Arunachal Pradesh,Arunachal Pradesh,
-Assam,Assam,
-Bihar,Bihar,
-Chandigarh,Chandigarh,
-Chhattisgarh,Chhattisgarh,
-Dadra and Nagar Haveli,Dadra și Nagar Haveli,
-Daman and Diu,Daman și Diu,
-Delhi,Delhi,
-Goa,Goa,
-Gujarat,Gujarat,
-Haryana,Haryana,
-Himachal Pradesh,Himachal Pradesh,
-Jammu and Kashmir,Jammu și Kashmir,
-Jharkhand,Jharkhand,
-Karnataka,Karnataka,
-Kerala,Kerala,
-Lakshadweep Islands,Insulele Lakshadweep,
-Madhya Pradesh,Madhya Pradesh,
-Maharashtra,Maharashtra,
-Manipur,Manipur,
-Meghalaya,Meghalaya,
-Mizoram,Mizoram,
-Nagaland,Nagaland,
-Odisha,Odisha,
-Other Territory,Alt teritoriu,
-Pondicherry,Pondicherry,
-Punjab,Punjab,
-Rajasthan,Rajasthan,
-Sikkim,Sikkim,
-Tamil Nadu,Tamil Nadu,
-Telangana,Telangana,
-Tripura,Tripura,
-Uttar Pradesh,Uttar Pradesh,
-Uttarakhand,Uttarakhand,
-West Bengal,Bengalul de Vest,
 Is Mandatory,Este obligatoriu,
-Published on,publicat pe,
 Service Received But Not Billed,"Serviciu primit, dar nu facturat",
 Deferred Accounting Settings,Setări de contabilitate amânate,
 Book Deferred Entries Based On,Rezervați intrări amânate pe baza,
@@ -8035,8 +7900,6 @@
 Worksheet Instructions,Instrucțiuni pentru foaia de lucru,
 Result Legend Print,Imprimare legendă rezultat,
 Print Position,Poziția de imprimare,
-Bottom,Partea de jos,
-Top,Top,
 Both,Ambii,
 Result Legend,Legenda rezultatului,
 Lab Tests,Teste de laborator,
@@ -8081,12 +7944,10 @@
 Approvers,Aprobatori,
 The first Approver in the list will be set as the default Approver.,Primul aprobator din listă va fi setat ca aprobator implicit.,
 Shift Request Approver,Aprobarea cererii de schimbare,
-PAN Number,Număr PAN,
 Provident Fund Account,Contul Fondului Provident,
 MICR Code,Cod MICR,
 Repay unclaimed amount from salary,Rambursați suma nepreluată din salariu,
 Deduction from salary,Deducerea din salariu,
-Expired Leaves,Frunze expirate,
 If this is not checked the loan by default will be considered as a Demand Loan,"Dacă acest lucru nu este verificat, împrumutul implicit va fi considerat un împrumut la cerere",
 This account is used for booking loan repayments from the borrower and also disbursing loans to the borrower,"Acest cont este utilizat pentru rezervarea rambursărilor de împrumut de la împrumutat și, de asemenea, pentru a plăti împrumuturi către împrumutat",
 This account is capital account which is used to allocate capital for loan disbursal account ,Acest cont este un cont de capital care este utilizat pentru alocarea de capital pentru contul de debursare a împrumutului,
@@ -8844,3 +8705,41 @@
 Creating Purchase Order ...,Se creează comanda de cumpărare ...,
 "Select a Supplier from the Default Suppliers of the items below. On selection, a Purchase Order will be made against items belonging to the selected Supplier only.","Selectați un furnizor din furnizorii prestabiliți ai articolelor de mai jos. La selectare, o comandă de achiziție va fi făcută numai pentru articolele aparținând furnizorului selectat.",
 Row #{}: You must select {} serial numbers for item {}.,Rândul # {}: trebuie să selectați {} numere de serie pentru articol {}.,
+Add Comment,Adăugă Comentariu,
+More...,Mai Mult...,
+Notes,Observații,
+Payment Gateway,Gateway de plată,
+Payment Gateway Name,Numele gateway-ului de plată,
+Payments,Plăți,
+Plan Name,Numele planului,
+Portal,Portal,
+Scan Barcode,Scanează codul de bare,
+Some information is missing,Lipsesc unele informații,
+Successful,De succes,
+Tools,Instrumente,
+Use Sandbox,utilizare Sandbox,
+Busy,Ocupat,
+Completed By,Completat De,
+Payment Failed,Plata esuata,
+Column {0},Coloana {0},
+Field Mapping,Mapare câmp,
+Not Specified,Nespecificat,
+Update Type,Tip de actualizare,
+Dr,Dr,
+End Time,End Time,
+Fetching...,... Fetching,
+"It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","Se pare că există o problemă cu configurația benzii serverului. În caz de eșec, suma va fi rambursată în cont.",
+Looks like someone sent you to an incomplete URL. Please ask them to look into it.,Se pare că cineva te-a trimis la o adresă URL incompletă. Vă rugăm să cereți-le să se uite în ea.,
+Master,Master,
+Pay,Plăti,
+You can also copy-paste this link in your browser,"De asemenea, puteți să copiați-paste această legătură în browser-ul dvs.",
+Verified By,Verificate de,
+Invalid naming series (. missing) for {0},Serii de denumiri nevalide (. Lipsesc) pentru {0},
+Phone Number,Numar de telefon,
+Account SID,Cont SID,
+Global Defaults,Valori Implicite Globale,
+Is Mandatory,Este obligatoriu,
+WhatsApp,WhatsApp,
+Make a call,Efectua un apel,
+Approve,Aproba,
+Reject,Respinge,
diff --git a/erpnext/translations/ru.csv b/erpnext/translations/ru.csv
index 92442cd..da4e1be 100644
--- a/erpnext/translations/ru.csv
+++ b/erpnext/translations/ru.csv
@@ -113,7 +113,6 @@
 Add Items,Добавить продукты,
 Add Leads,Добавить лид,
 Add Multiple Tasks,Добавить несколько задач,
-Add Row,Добавить строку,
 Add Sales Partners,Добавить партнеров по продажам,
 Add Serial No,Добавить серийный номер,
 Add Students,Добавить студентов,
@@ -211,9 +210,7 @@
 An error occurred during the update process,Произошла ошибка во время процесса обновления,
 "An item exists with same name ({0}), please change the item group name or rename the item","Продукт с именем ({0}) существует. Пожалуйста, измените название продуктовой группы или продукта.",
 Analyst,Аналитик,
-Analytics,Аналитика,
 Annual Billing: {0},Годовой оборот: {0},
-Anonymous,анонимное,
 Another Budget record '{0}' already exists against {1} '{2}' and account '{3}' for fiscal year {4},Еще одна запись бюджета «{0}» уже существует в отношении {1} &#39;{2}&#39; и учетной записи &#39;{3}&#39; за финансовый год {4},
 Another Period Closing Entry {0} has been made after {1},Другой Период Окончание Вступление {0} был сделан после {1},
 Another Sales Person {0} exists with the same Employee id,Другой человек Продажи {0} существует с тем же идентификатором Сотрудника,
@@ -283,14 +280,12 @@
 Attendance not submitted for {0} as {1} on leave.,Посещаемость не была отправлена {0} как {1} в отпуске.,
 Attribute table is mandatory,Таблица атрибутов является обязательной,
 Attribute {0} selected multiple times in Attributes Table,Атрибут {0} выбран несколько раз в таблице атрибутов,
-Author,Автор,
 Authorized Signatory,Право подписи,
 Auto Material Requests Generated,"Запросы Авто материал, полученный",
 Auto Repeat,Автоматическое повторение,
 Auto repeat document updated,Автоматический повторный документ обновлен,
 Automotive,Автомобилестроение,
 Available,Доступно,
-Available Leaves,Доступные листья,
 Available Qty,Доступное количество,
 Available Selling,Доступные продажи,
 Available for use date is required,Доступна дата использования.,
@@ -340,7 +335,6 @@
 Base URL,Базовый URL,
 Based On,На основании,
 Based On Payment Terms,На основании условий оплаты,
-Basic,Основной,
 Batch,Партия,
 Batch Entries,Пакетные записи,
 Batch ID is mandatory,Идентификатор партии является обязательным,
@@ -361,7 +355,6 @@
 Billable Hours,Оплачиваемые часы,
 Billed,Выставлен счет,
 Billed Amount,Количество выставленных счетов,
-Billing,Выставление счетов,
 Billing Address,Адрес для выставления счетов,
 Billing Address is same as Shipping Address,Платежный адрес совпадает с адресом доставки,
 Billing Amount,Количество счетов,
@@ -560,7 +553,6 @@
 Consumed Qty,Потребляемое кол-во,
 Consumer Products,Потребительские продукты,
 Contact,Контакты,
-Contact Details,Контактная информация,
 Contact Us,Связаться с нами,
 Content,Содержимое,
 Content Masters,Мастера контента,
@@ -714,7 +706,6 @@
 Date of Joining,Дата вступления,
 Date of Joining must be greater than Date of Birth,Дата Присоединение должно быть больше Дата рождения,
 Date of Transaction,Дата транзакции,
-Datetime,Дата и время,
 Day,День,
 Debit,Дебет,
 Debit ({0}),Дебет ({0}),
@@ -872,7 +863,6 @@
 Employee cannot report to himself.,Сотрудник не может сообщить самому себе.,
 Employee {0} has already applied for {1} between {2} and {3} : ,Сотрудник {0} уже подал заявку на {1} между {2} и {3}:,
 Employee {0} of grade {1} have no default leave policy,Сотрудник {0} класса {1} не имеет политики отпуска по умолчанию,
-Enable, Разрешить,
 Enable / disable currencies.,Разрешить / запретить валюты.,
 Enabled,Разрешено,
 "Enabling 'Use for Shopping Cart', as Shopping Cart is enabled and there should be at least one Tax Rule for Shopping Cart","Включение &quot;Использовать для Корзине», как Корзина включена и должно быть по крайней мере один налог Правило Корзина",
@@ -903,7 +893,6 @@
 Error: Not a valid id?,Ошибка: Не действительный ID?,
 Estimated Cost,Ориентировочная стоимость,
 "Even if there are multiple Pricing Rules with highest priority, then following internal priorities are applied:","Даже если существует несколько правил ценообразования с наивысшим приоритетом, применяются следующие внутренние приоритеты:",
-Event,Событие,
 Exchange Gain/Loss,Обмен Прибыль / Убыток,
 Exchange Rate Revaluation master.,Курс переоценки мастер.,
 Exchange Rate must be same as {0} {1} ({2}),"Курс должен быть таким же, как {0} {1} ({2})",
@@ -1030,7 +1019,6 @@
 From value must be less than to value in row {0},"От значение должно быть меньше, чем значение в строке {0}",
 From {0} | {1} {2},С {0} | {1} {2},
 Fulfillment,свершение,
-Full,Полный,
 Full Name,Полное имя,
 Fully Depreciated,Полностью Амортизируется,
 Furnitures and Fixtures,Мебель и Светильники,
@@ -1131,7 +1119,6 @@
 Hub Sync ID,Идентификатор синхронизации концентратора,
 Human Resource,Кадры,
 Human Resources,Персонал,
-IFSC Code,Код IFSC,
 IGST Amount,Сумма IGST,
 IP Address,IP адрес,
 ITC Available (whether in full op part),ITC Доступен (будь то в полной части оп),
@@ -1183,7 +1170,6 @@
 Ineligible ITC,Неподходящий ITC,
 Initiated,По инициативе,
 Inpatient Record,Стационарная запись,
-Insert,Вставить,
 Installation Note,Замечания по установке,
 Installation Note {0} has already been submitted,Установка Примечание {0} уже представлен,
 Installation date cannot be before delivery date for Item {0},Дата установки не может быть до даты доставки для Пункт {0},
@@ -1195,7 +1181,6 @@
 Insurance Start date should be less than Insurance End date,"Дата начала страхования должна быть раньше, чем дата окончания",
 Integrated Tax,Интегрированный налог,
 Inter-State Supplies,Межгосударственные поставки,
-Interests,Интересы,
 Internet Publishing,Интернет издания,
 Intra-State Supplies,Внутригосударственные поставки,
 Introduction,Введение,
@@ -1314,7 +1299,6 @@
 Lab testing datetime cannot be before collection datetime,Лабораторное тестирование datetime не может быть до даты сбора данных,
 Label,Метка,
 Laboratory,Лаборатория,
-Language Name,Название языка,
 Large,Большой,
 Last Communication,Последняя коммуникация,
 Last Communication Date,Дата последней коммуникации,
@@ -1345,8 +1329,6 @@
 Letter Heads for print templates.,Письмо главы для шаблонов печати.,
 Level,Уровень,
 Liability,Ответственность сторон,
-License,Лицензия,
-Limit,Предел,
 Limit Crossed,предел Скрещенные,
 Link to Material Request,Ссылка на запрос материала,
 List of all share transactions,Список всех сделок с акциями,
@@ -1357,7 +1339,6 @@
 Loans (Liabilities),Кредиты (обязательства),
 Loans and Advances (Assets),Кредиты и авансы (активы),
 Local,Локальные,
-Log,Запись в журнале,
 Logs for maintaining sms delivery status,Журналы для просмотра статуса доставки SMS,
 Lost,Поражений,
 Lost Reasons,Потерянные причины,
@@ -1443,7 +1424,6 @@
 Medical Department,Медицинский отдел,
 Medical Record,Медицинская запись,
 Medium,Средний,
-Meeting,Встреча,
 Member Activity,Активность участника,
 Member ID,ID пользователя,
 Member Name,Имя участника,
@@ -1493,7 +1473,6 @@
 Multiple Variants,Несколько вариантов,
 Multiple fiscal years exist for the date {0}. Please set company in Fiscal Year,"Несколько финансовых лет существуют на дату {0}. Пожалуйста, установите компанию в финансовый год",
 Music,Музыка,
-My Account,Мой аккаунт,
 Name error: {0},Имя ошибки: {0},
 Name of new Account. Note: Please don't create accounts for Customers and Suppliers,"Название нового счёта. Примечание: Пожалуйста, не создавайте счета для клиентов и поставщиков",
 Name or Email is mandatory,Имя или адрес электронной почты является обязательным,
@@ -1536,7 +1515,6 @@
 New credit limit is less than current outstanding amount for the customer. Credit limit has to be atleast {0},Новый кредитный лимит меньше текущей суммы задолженности для клиента. Кредитный лимит должен быть зарегистрировано не менее {0},
 New task,Новая задача,
 New {0} pricing rules are created,Новые {0} правила ценообразования созданы,
-Newsletters,Информационная рассылка,
 Newspaper Publishers,Информационное издательство,
 Next,Далее,
 Next Contact By cannot be same as the Lead Email Address,Следующий контакт не может совпадать с адресом электронной почты лида,
@@ -1684,7 +1662,6 @@
 Other,Другое,
 Other Reports,Другие отчеты,
 "Other outward supplies(Nil rated,Exempted)","Другие внешние поставки (Ноль оценили, освобождены)",
-Others,Другое,
 Out Qty,Из кол-ва,
 Out Value,Выходное значение,
 Out of Order,Вышел из строя,
@@ -1724,7 +1701,6 @@
 Party Type and Party is mandatory for {0} account,Тип и сторона партии обязательны для учетной записи {0},
 Party Type is mandatory,Тип партии является обязательным,
 Party is mandatory,Партия является обязательным,
-Password,Пароль,
 Past Due Date,Прошлая дата погашения,
 Patient,Пациент,
 Patient Appointment,Назначение пациента,
@@ -1782,7 +1758,6 @@
 Pharmaceutical,Фармацевтический,
 Pharmaceuticals,Фармацевтика,
 Physician,Врач,
-Pincode,PIN код,
 Place Of Supply (State/UT),Место поставки (штат / UT),
 Place Order,Разместить заказ,
 Plan Name,Название плана,
@@ -1894,7 +1869,6 @@
 Please select date,"Пожалуйста, выберите даты",
 Please select item code,"Пожалуйста, выберите код продукта",
 Please select month and year,"Пожалуйста, выберите месяц и год",
-Please select prefix first,"Пожалуйста, выберите префикс первым",
 Please select the Company,"Пожалуйста, выберите компанию",
 Please select the Multiple Tier Program type for more than one collection rules.,Выберите несколько типов программ для нескольких правил сбора.,
 Please select the assessment group other than 'All Assessment Groups',"Выберите группу оценки, отличную от «Все группы оценки»,",
@@ -1911,7 +1885,6 @@
 Please set Company filter blank if Group By is 'Company',"Пожалуйста, установите фильтр компании blank, если Group By является «Company»",
 Please set Default Payroll Payable Account in Company {0},"Пожалуйста, установите по умолчанию Payroll расчётный счёт в компании {0}",
 Please set Depreciation related Accounts in Asset Category {0} or Company {1},"Пожалуйста, установите Амортизация соответствующих счетов в Asset Категория {0} или компании {1}",
-Please set Email Address,"Пожалуйста, установите адрес электронной почты",
 Please set GST Accounts in GST Settings,"Пожалуйста, установите счета НДС в настройках НДС",
 Please set Hotel Room Rate on {},"Пожалуйста, установите рейтинг номера в отеле {}",
 Please set Number of Depreciations Booked,"Пожалуйста, установите Количество отчислений на амортизацию бронирования",
@@ -1934,7 +1907,6 @@
 Please set the Email ID for the Student to send the Payment Request,"Пожалуйста, установите идентификатор электронной почты для Студента, чтобы отправить Запрос на оплату",
 Please set the Item Code first,Сначала укажите код продукта,
 Please set the Payment Schedule,"Пожалуйста, установите график оплаты",
-Please set the series to be used.,"Пожалуйста, установите серию, которая будет использоваться.",
 Please set {0} for address {1},"Пожалуйста, установите {0} для адреса {1}",
 Please setup Students under Student Groups,"Пожалуйста, настройте учащихся по студенческим группам",
 Please specify Company,"Пожалуйста, сформулируйте Компания",
@@ -1951,7 +1923,6 @@
 Point-of-Sale,Торговая точка,
 Point-of-Sale Profile,Точка-в-продажи профиля,
 Portal,Портал,
-Portal Settings,Настройки портала,
 Possible Supplier,Возможный поставщик,
 Postal Expenses,Почтовые расходы,
 Posting Date,Дата публикации,
@@ -2150,12 +2121,10 @@
 Reference No is mandatory if you entered Reference Date,"Ссылка № является обязательным, если вы ввели Исходной дате",
 Reference No.,Номер ссылки,
 Reference Number,Номер для ссылок,
-Reference Owner,Владелец ссылки,
 Reference Type,Тип ссылки,
 "Reference: {0}, Item Code: {1} and Customer: {2}","Ссылка: {0}, Код товара: {1} и Заказчик: {2}",
 References,Рекомендации,
 Refresh Token,Токен обновления,
-Region,Область,
 Register,Регистр,
 Rejected,Отклоненные,
 Related,Связанный,
@@ -2177,7 +2146,6 @@
 Replace BOM and update latest price in all BOMs,Заменить спецификацию и обновить последнюю цену во всех спецификациях,
 Replied,С ответом,
 Report,Отчет,
-Report Builder,Конструктор отчетов,
 Report Type,Тип отчета,
 Report Type is mandatory,Тип отчета является обязательным,
 Reports,Отчеты,
@@ -2353,13 +2321,11 @@
 Same Company is entered more than once,То же компания вошла более чем один раз,
 Same item cannot be entered multiple times.,Один продукт нельзя вводить несколько раз.,
 Same supplier has been entered multiple times,То же поставщик был введен несколько раз,
-Sample,Образец,
 Sample Collection,Сбор образцов,
 Sample quantity {0} cannot be more than received quantity {1},"Количество образцов {0} не может быть больше, чем полученное количество {1}",
 Sanctioned,санкционированные,
 Sand,песок,
 Saturday,Суббота,
-Saved,Сохраненные,
 Saving {0},Сохранение {0},
 Scan Barcode,Сканирование штрих-кода,
 Schedule,Расписание,
@@ -2461,7 +2427,6 @@
 Series Updated,Идентификатор обновлен,
 Series Updated Successfully,Идентификатор успешно обновлен,
 Series is mandatory,Идентификатор является обязательным,
-Series {0} already used in {1},Идентификатор {0} уже используется в {1},
 Service,Услуга,
 Service Level Agreement,Соглашение об уровне обслуживания,
 Service Level Agreement.,Соглашение об уровне обслуживания.,
@@ -2477,7 +2442,6 @@
 Set Tax Rule for shopping cart,Установить налоговое правило для корзины,
 Set as Closed,"Установить как ""Закрыт""",
 Set as Completed,"Установить как ""Завершен""",
-Set as Default,"Установить ""По умолчанию""",
 Set as Lost,"Установить как ""Потерянный""",
 Set as Open,"Установить как ""Открытый""",
 Set default inventory account for perpetual inventory,Установить учетную запись по умолчанию для вечной инвентаризации,
@@ -2509,7 +2473,6 @@
 Shareholder,Акционер,
 Ship To State,Корабль в штат,
 Shipments,Поставки,
-Shipping,Доставка,
 Shipping Address,Адрес доставки,
 "Shipping Address does not have country, which is required for this Shipping Rule","Адрес доставки не имеет страны, которая требуется для этого правила доставки",
 Shipping rule only applicable for Buying,Правило доставки применимо только для покупки,
@@ -2562,7 +2525,6 @@
 Split Batch,Сплит-пакет,
 Split Issue,Сплит-выпуск,
 Sports,Спорт,
-Standard,Стандартный,
 Standard Buying,Стандартный Покупка,
 Standard Selling,Стандартный Продажа,
 Standard contract terms for Sales or Purchase.,Стандартные условия договора для продажи или покупки.,
@@ -2729,7 +2691,6 @@
 Terms and Conditions,Правила и условия,
 Terms and Conditions Template,Условия шаблона,
 Territory,Территория,
-Test,Тест,
 Thank you for your business!,Благодарим Вас за сотрудничество!,
 The 'From Package No.' field must neither be empty nor it's value less than 1.,«Из пакета №» поле не должно быть пустым или его значение меньше 1.,
 The Brand,Марка,
@@ -2846,7 +2807,6 @@
 Total (Without Tax),Всего (без налога),
 Total Achieved,Всего выполнено,
 Total Actual,Общий фактический,
-Total Allocated Leaves,Всего выделенных листов,
 Total Amount,Общая сумма,
 Total Amount Credited,Общая сумма кредита,
 Total Applicable Charges in Purchase Receipt Items table must be same as Total Taxes and Charges,"Всего Применимые сборы в таблице Purchase квитанций Элементов должны быть такими же, как все налоги и сборы",
@@ -2890,7 +2850,6 @@
 Total(Amt),Всего (сумма),
 Total(Qty),Всего (кол-во),
 Traceability,Прослеживаемость,
-Traceback,Диагностика,
 Track Leads by Lead Source.,Отслеживать лидов по источнику.,
 Transaction,Транзакция,
 Transaction Date,Дата транзакции,
@@ -2928,7 +2887,6 @@
 UOM Conversion factor is required in row {0},Фактор Единица измерения преобразования требуется в строке {0},
 UOM coversion factor required for UOM: {0} in Item: {1},Единица измерения фактором Конверсия требуется для UOM: {0} в пункте: {1},
 URL,URL,
-Unable to find DocType {0},Не удалось найти DocType {0},
 Unable to find exchange rate for {0} to {1} for key date {2}. Please create a Currency Exchange record manually,Невозможно найти обменный курс {0} до {1} за контрольную дату {2}. Создайте запись обмена валюты вручную.,
 Unable to find score starting at {0}. You need to have standing scores covering 0 to 100,"Не удалось найти результат, начинающийся с {0}. Вы должны иметь постоянные баллы, покрывающие 0 до 100",
 Unable to find variable: ,Не удалось найти переменную: ,
@@ -2958,7 +2916,6 @@
 Upload your letter head and logo. (you can edit them later).,Загрузить шапку фирменного бланка и логотип. (Вы можете отредактировать их позднее).,
 Upper Income,Высокий уровень дохода,
 Use Sandbox,Использовать «песочницу»,
-Used Leaves,Используемые листы,
 User,Пользователь,
 User ID,ID пользователя,
 User ID not set for Employee {0},ID пользователя не установлен для сотрудника {0},
@@ -3049,7 +3006,6 @@
 Website Settings,Настройки сайта,
 Wednesday,Среда,
 Week,Неделя,
-Weekdays,Будни,
 Weekly,Еженедельно,
 "Weight is mentioned,\nPlease mention ""Weight UOM"" too","Вес упоминается, \n Пожалуйста, укажите ""Вес Единица измерения"" слишком",
 Welcome email sent,Письмо с приглашением в систему отправлено,
@@ -3070,7 +3026,6 @@
 Work Order {0} must be submitted,Порядок работы {0} должен быть отправлен,
 Work Orders Created: {0},Созданы рабочие задания: {0},
 Work-in-Progress Warehouse is required before Submit,Перед утверждением требуется склад незавершенного производства,
-Workflow,Рабочий процесс,
 Working,В работе,
 Working Hours,Часы работы,
 Workstation,Рабочее место,
@@ -3100,7 +3055,6 @@
 You need to be a user other than Administrator with System Manager and Item Manager roles to register on Marketplace.,"Чтобы зарегистрироваться на Marketplace, вам необходимо быть другим пользователем, кроме Администратора, с ролями System Manager и Item Manager.",
 You need to be a user with System Manager and Item Manager roles to add users to Marketplace.,"Чтобы добавить пользователей в Marketplace, вы должны быть пользователем с диспетчерами System Manager и Item Manager.",
 You need to be a user with System Manager and Item Manager roles to register on Marketplace.,Для регистрации на Marketplace вам необходимо быть пользователем с диспетчерами System Manager и Item Manager.,
-You need to be logged in to access this page,"Вы должны быть войти в систему, чтобы открыть эту страницу",
 You need to enable Shopping Cart,Вам необходимо включить «корзину»,
 You will lose records of previously generated invoices. Are you sure you want to restart this subscription?,Вы потеряете записи ранее сгенерированных счетов-фактур. Вы действительно хотите перезапустить эту подписку?,
 Your Organization,Ваша организация,
@@ -3216,7 +3170,6 @@
 Assigned To,Назначено для,
 Chat,Чат,
 Completed By,Завершено,
-County,Округ,
 Day of Week,День недели,
 "Dear System Manager,","Уважаемый менеджер системы,",
 Default Value,Значение по умолчанию,
@@ -3227,31 +3180,21 @@
 Fieldtype,Тип поля,
 Help Articles,Статьи помощи,
 ID,ID,
-Images,Изображении,
 Import,Импорт,
 Language,Язык,
 Likes,Лайки,
 Merge with existing,Слияние с существующими,
-Office,Офис,
 Orientation,Ориентация,
 Parent,Родитель,
-Passive,Пассивный,
 Payment Failed,Платеж не прошел,
-Permanent,Постоянный,
 Personal,Личное,
-Plant,Завод,
 Post,Опубликовать,
-Postal,Почтовый,
 Postal Code,Почтовый индекс,
-Previous,Предыдущая,
 Provider,Поставщик,
 Read Only,Только чтение,
 Recipient,Сторона-реципиент,
 Reviews,Отзывы,
 Sender,Отправитель,
-Shop,Магазин,
-Subsidiary,Филиал,
-There is some problem with the file url: {0},Существует некоторая проблема с файловой URL: {0},
 There were errors while sending email. Please try again.,"При отправке электронной почты возникли ошибки. Пожалуйста, попробуйте ещё раз.",
 Values Changed,Значения изменено,
 or,или,
@@ -3278,19 +3221,16 @@
 Quality Feedback Template,Шаблон обратной связи по качеству,
 Rules for applying different promotional schemes.,Правила применения разных рекламных схем.,
 Show {0},Показать {0},
-"Special Characters except '-', '#', '.', '/', '{{' and '}}' not allowed in naming series {0}","Специальные символы, кроме &quot;-&quot;, &quot;#&quot;, &quot;।&quot;, &quot;/&quot;, &quot;{{&quot; и &quot;}}&quot;, не допускаются в серийных номерах {0}",
 Target Details,Детали цели,
 {0} already has a Parent Procedure {1}.,{0} уже имеет родительскую процедуру {1}.,
 API,API,
 Annual,За год,
 Change,Изменение,
 Contact Email,Эл.почта для связи,
-Export Type,Тип экспорта,
 From Date,С даты,
 Group By,Группа по,
 Invalid URL,Неправильный URL,
 Landscape,Альбомный,
-Last Sync On,Последняя синхронизация,
 Naming Series,Идентификация по имени,
 No data to export,Нет данных для экспорта,
 Portrait,Портретный,
@@ -3300,7 +3240,6 @@
 Show Document,Показать документ,
 Show Traceback,Показать трассировку,
 Video,Видео,
-Webhook Secret,Webhook Secret,
 % Of Grand Total,% От общего итога,
 <b>Company</b> is a mandatory filter.,<b>Компания</b> является обязательным фильтром.,
 <b>From Date</b> is a mandatory filter.,<b>С даты</b> является обязательным фильтром.,
@@ -3356,7 +3295,6 @@
 BOM Comparison Tool,Инструмент сравнения спецификации,
 BOM recursion: {0} cannot be child of {1},Рекурсия спецификации: {0} не может быть дочерним по отношению к {1},
 BOM recursion: {0} cannot be parent or child of {1},Рекурсия спецификации: {0} не может быть родительским или дочерним по отношению к {1},
-Back to Home,Вернуться домой,
 Back to Messages,Вернуться к сообщениям,
 Bank Data mapper doesn't exist,Картограф данных банка не существует,
 Bank Details,Банковские реквизиты,
@@ -3418,7 +3356,6 @@
 Currency,Валюта,
 Current Status,Текущее состояние,
 Customer PO,Заказчик ПО,
-Customize,Настроить,
 Daily,Ежедневно,
 Date,Дата,
 Date of Birth cannot be greater than Joining Date.,Дата рождения не может быть больше даты присоединения.,
@@ -3452,7 +3389,6 @@
 ERPNext could not find any matching payment entry,ERPNext не может найти подходящую запись о платеже,
 Earliest Age,Самый ранний возраст,
 Edit Details,Редактировать детали,
-Edit Profile,Редактировать профиль,
 Either GST Transporter ID or Vehicle No is required if Mode of Transport is Road,"Требуется либо GST Transporter ID, либо номер транспортного средства, если вид транспорта - автомобильный",
 Email,Эл. адрес,
 Email Campaigns,Кампании по электронной почте,
@@ -3480,7 +3416,6 @@
 Fetch Items from Warehouse,Получить товары со склада,
 Fetching...,Получение...,
 Field,Поле,
-File Manager,Файловый менеджер,
 Filters,Фильтры,
 Finding linked payments,Поиск связанных платежей,
 Fleet Management,Автопарк,
@@ -3519,7 +3454,6 @@
 Incorrect Warehouse,Неправильный склад,
 Invalid Barcode. There is no Item attached to this barcode.,Неверный штрих-код. К этому штрих-коду не прикреплено ни одного предмета.,
 Invalid credentials,Неверные учетные данные,
-Invite as User,Пригласить в пользователя,
 Issue Priority.,Приоритет вопроса.,
 Issue Type.,Тип проблемы.,
 "It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","Кажется, что существует проблема с конфигурацией полосок сервера. В случае сбоя сумма будет возвращена на ваш счет.",
@@ -3562,7 +3496,6 @@
 New Invoice,Новый счет,
 New Payment,Новый платеж,
 New release date should be in the future,Дата нового релиза должна быть в будущем,
-Newsletter,Рассылка новостей,
 No Account matched these filters: {},"Нет аккаунта, соответствующего этим фильтрам: {}",
 No communication found.,Связь не найдена.,
 No correct answer is set for {0},Не указан правильный ответ для {0},
@@ -3642,7 +3575,6 @@
 Please setup a default bank account for company {0},"Пожалуйста, настройте банковский счет по умолчанию для компании {0}",
 Please specify,"Пожалуйста, сформулируйте",
 Please specify a {0},"Пожалуйста, укажите {0}",lead
-Printing,Печать,
 Priority,Приоритет,
 Priority has been changed to {0}.,Приоритет был изменен на {0}.,
 Priority {0} has been repeated.,Приоритет {0} был повторен.,
@@ -3651,7 +3583,6 @@
 Project,Проект,
 Provide the academic year and set the starting and ending date.,Укажите учебный год и установите дату начала и окончания.,
 Public token is missing for this bank,Публичный токен отсутствует для этого банка,
-Publish,Публиковать,
 Publish 1 Item,Опубликовать 1 пункт,
 Publish Items,Публикация продуктов,
 Publish More Items,Опубликовать больше продуктов,
@@ -3679,7 +3610,6 @@
 Reconciled,Примирение,
 Recruitment,Набор персонала,
 Red,Красный,
-Refreshing,Обновление,
 Release date must be in the future,Дата релиза должна быть в будущем,
 Relieving Date must be greater than or equal to Date of Joining,Дата освобождения должна быть больше или равна дате присоединения,
 Rename,Переименовать,
@@ -3723,7 +3653,6 @@
 Search for a payment,Поиск платежа,
 Search for anything ...,Искать что угодно ...,
 Search results for,Результаты поиска,
-Select All,Выбрать все,
 Select Difference Account,Выберите учетную запись разницы,
 Select a Default Priority.,Выберите приоритет по умолчанию.,
 Select a company,Выберите компанию,
@@ -3742,11 +3671,9 @@
 Service Level Agreement has been changed to {0}.,Соглашение об уровне обслуживания изменено на {0}.,
 Service Level Agreement was reset.,Соглашение об уровне обслуживания было сброшено.,
 Service Level Agreement with Entity Type {0} and Entity {1} already exists.,Соглашение об уровне обслуживания с типом объекта {0} и объектом {1} уже существует.,
-Set,Комплект,
 Set Meta Tags,Установить метатеги,
 Set {0} in company {1},Установить {0} в компании {1},
 Setup,Настройки,
-Setup Wizard,Мастер установки,
 Shift Management,Управление сменой,
 Show Future Payments,Показать будущие платежи,
 Show Linked Delivery Notes,Показать связанные заметки о доставке,
@@ -3817,7 +3744,6 @@
 Unreconciled,Несверенный,
 Unsupported GST Category for E-Way Bill JSON generation,Неподдерживаемая категория НДС для генерации E-Way Bill JSON,
 Update,Обновить,
-Update Details,Обновить данные,
 Update Taxes for Items,Обновить налоги на товары,
 "Upload a bank statement, link or reconcile a bank account","Загрузить выписку из банковского счета, связать или сверить банковский счет",
 Upload a statement,Загрузить заявление,
@@ -3841,7 +3767,6 @@
 XML Files Processed,XML-файлы обработаны,
 Year,Год,
 Yearly,Ежегодно,
-You,Вы,
 You are not allowed to enroll for this course,Вы не можете записаться на этот курс,
 You are not enrolled in program {0},Вы не зарегистрированы в программе {0},
 You can Feature upto 8 items.,Вы можете добавить до 8 элементов.,
@@ -3858,7 +3783,6 @@
 e-Way Bill already exists for this document,e-Way платеж уже существует для этого документа,
 woocommerce - {0},woocommerce - {0},
 {0} Coupon used are {1}. Allowed quantity is exhausted,Использован {0} купон: {1}. Допустимое количество исчерпано,
-{0} Name,{0} Имя,
 {0} Operations: {1},{0} Операции: {1},
 {0} bank transaction(s) created,Банковские транзакции {0} созданы,
 {0} bank transaction(s) created and {1} errors,Создана банковская транзакция {0} и ошибки {1},
@@ -3877,17 +3801,13 @@
 Total Income,Суммарный доход,
 Total Income This Year,Общий доход в этом году,
 Barcode,Штрих-код,
-Bold,Жирный,
-Center,Центр,
 Clear,Отчистить,
-Comment,Комментарий,
 Comments,Комментарии,
 DocType,DocType,
 Download,Скачать,
 Left,Слева,
 Link,Ссылка,
 New,Новый,
-Not Found,Не найдено,
 Print,Распечатать,
 Reference Name,Имя ссылки,
 Refresh,Обновить,
@@ -3910,7 +3830,6 @@
 Email Id,Email ID,
 No,Нет,
 Reference Doctype,Ссылка DocType,
-User Id,ID пользователя,
 Yes,Да,
 Actual ,Актуальный ,
 Add to cart,Добавить в корзину,
@@ -4301,7 +4220,6 @@
 e.g Adjustments for:,"например, корректировки для:",
 Section Subtotal,Раздел Итого,
 Section Footer,Нижний колонтитул,
-Position,Позиция,
 Cash Flow Mapping,Отображение денежных потоков,
 Select Maximum Of 1,Выберите Максимум 1,
 Is Finance Cost,Стоимость финансирования,
@@ -4925,7 +4843,6 @@
 Previous Business Day,Предыдущий рабочий день,
 Next Business Day,Следующий рабочий день,
 Urgent,Важно,
-Crop,Урожай,
 Crop Name,Название урожая,
 Scientific Name,Научное название,
 "You can define all the tasks which need to carried out for this crop here. The day field is used to mention the day on which the task needs to be carried out, 1 being the 1st day, etc.. ","Здесь вы можете определить все задачи, которые необходимо выполнить для этого урожая. Поле дня используется для обозначения дня, когда задача должна быть выполнена, 1 - 1-й день и т. Д.",
@@ -5419,7 +5336,6 @@
 To TIme,До,
 Course End Date,Дата окончания курса,
 Course Topic,Тема курса,
-Topic,Тема,
 Topic Name,Название темы,
 Education Settings,Настройки образования,
 Current Academic Year,Текущий академический год,
@@ -5490,7 +5406,6 @@
 Check this if the Student is residing at the Institute's Hostel.,"Поставьте галочку, если студент проживает в общежитии института",
 Walking,Пешком,
 Institute's Bus,Автобус института,
-Public Transport,Общественный транспорт,
 Self-Driving Vehicle,Личное транспортное средство,
 Pick/Drop by Guardian,Доставляет и забирает родитель/попечитель,
 Enrolled courses,Зачисленные курсы,
@@ -5661,7 +5576,6 @@
 Default Cost Center,Центр затрат по умолчанию,
 Undeposited Funds Account,Учет нераспределенных средств,
 Shopify Log,Логи Shopify,
-Request Data,Запросить данные,
 Shopify Settings,Shopify настройки,
 status html,статус html,
 Enable Shopify,Включить Shopify,
@@ -5780,7 +5694,6 @@
 Exercise Instructions,Инструкции по упражнениям,
 Exercise Video,Видео с упражнениями,
 Exercise Steps,Шаги упражнений,
-Steps,Шаги,
 Steps Table,Таблица шагов,
 Exercise Type Step,Тип упражнения Шаг,
 Max number of visit,Максимальное количество посещений,
@@ -5957,7 +5870,6 @@
 Patient Encounter Diagnosis,Диагностика встречи с пациентом,
 Patient Encounter Symptom,Симптом встречи с пациентом,
 Attach Medical Record,Прикрепите медицинскую карту,
-Reference DocType,Ссылка DocType,
 Spouse,Супруга,
 Family,Семья,
 Schedule Details,Детали расписания,
@@ -6919,16 +6831,8 @@
 HTML / Banner that will show on the top of product list.,HTML / Баннер который будет отображаться в верхней части списка продуктов.,
 Set prefix for numbering series on your transactions,Установить префикс для идентификаторов по номеру в ваших транзакциях,
 Setup Series,Установка Идентификаторов,
-Select Transaction,Выберите операцию,
-Help HTML,Помощь HTML,
-Series List for this Transaction,Список Идентификаторов для этой транзакции,
-User must always select,Пользователь всегда должен выбирать,
-Check this if you want to force the user to select a series before saving. There will be no default if you check this.,"Отметьте это, если вы хотите заставить пользователя выбрать идентификатор перед сохранением. Там не будет варианта по умолчанию, если вы поставите эту отметку.",
 Update Series,Обновить Идентификаторы,
 Change the starting / current sequence number of an existing series.,Измените начальный / текущий порядковый номер существующей идентификации.,
-Prefix,Префикс,
-This is the number of the last created transaction with this prefix,Это число последнего созданного сделки с этим префиксом,
-Update Series Number,Обновить серийный номер,
 Quotation Lost Reason,Причина Отказа от Предложения,
 A third party distributor / dealer / commission agent / affiliate / reseller who sells the companies products for a commission.,"Сторонний дистрибьютер, дилер, агент, филиал или реселлер, который продаёт продукты компании за комиссионное вознаграждение.",
 Sales Partner Name,Имя партнера по продажам,
@@ -7606,7 +7510,6 @@
 Warehouse wise Item Balance Age and Value,Складские товары Элемент Баланс Возраст и стоимость,
 Work Order Stock Report,Отчет о работе заказа,
 Work Orders in Progress,Незавершенные заказы,
-Validation Error,Ошибка проверки,
 Automatically Process Deferred Accounting Entry,Автоматическая обработка отложенной бухгалтерской записи,
 Bank Clearance,Банковское оформление,
 Bank Clearance Detail,Реквизиты банка,
@@ -7643,45 +7546,7 @@
 Therapy Plan: ,План терапии:,
 Total Counts Targeted: ,Общее количество целевых:,
 Total Counts Completed: ,Всего завершено подсчетов:,
-Andaman and Nicobar Islands,Андаманские и Никобарские острова,
-Andhra Pradesh,Андхра-Прадеш,
-Arunachal Pradesh,Аруначал-Прадеш,
-Assam,Ассам,
-Bihar,Бихар,
-Chandigarh,Чандигарх,
-Chhattisgarh,Чхаттисгарх,
-Dadra and Nagar Haveli,Дадра и Нагар Хавели,
-Daman and Diu,Даман и Диу,
-Delhi,Дели,
-Goa,Гоа,
-Gujarat,Гуджарат,
-Haryana,Харьяна,
-Himachal Pradesh,Химачал-Прадеш,
-Jammu and Kashmir,Джамму и Кашмир,
-Jharkhand,Джаркханд,
-Karnataka,Карнатака,
-Kerala,Керала,
-Lakshadweep Islands,Острова Лакшадвип,
-Madhya Pradesh,Мадхья-Прадеш,
-Maharashtra,Махараштра,
-Manipur,Манипур,
-Meghalaya,Мегхалая,
-Mizoram,Мизорам,
-Nagaland,Нагаленд,
-Odisha,Одиша,
-Other Territory,Другая территория,
-Pondicherry,Пондичерри,
-Punjab,Пенджаб,
-Rajasthan,Раджастхан,
-Sikkim,Сикким,
-Tamil Nadu,Тамил Наду,
-Telangana,Телангана,
-Tripura,Трипура,
-Uttar Pradesh,Уттар-Прадеш,
-Uttarakhand,Уттаракханд,
-West Bengal,Западная Бенгалия,
 Is Mandatory,Является обязательным,
-Published on,Опубликован в,
 Service Received But Not Billed,"Услуга получена, но счет не выставлен",
 Deferred Accounting Settings,Настройки отложенного учета,
 Book Deferred Entries Based On,Забронируйте отложенные заявки на основе,
@@ -7948,8 +7813,6 @@
 Worksheet Instructions,Инструкции по рабочему листу,
 Result Legend Print,Печать легенды результатов,
 Print Position,Позиция печати,
-Bottom,Низ,
-Top,Верх,
 Both,Оба,
 Result Legend,Легенда результата,
 Lab Tests,Лабораторные тесты,
@@ -7993,12 +7856,10 @@
 Approvers,Утверждающие,
 The first Approver in the list will be set as the default Approver.,Первый утверждающий в списке будет установлен как утверждающий по умолчанию.,
 Shift Request Approver,Утверждающий запрос смены,
-PAN Number,Номер PAN,
 Provident Fund Account,Счет фонда обеспечения персонала,
 MICR Code,Код MICR,
 Repay unclaimed amount from salary,Вернуть невостребованную сумму из заработной платы,
 Deduction from salary,Удержание из заработной платы,
-Expired Leaves,Просроченные листья,
 If this is not checked the loan by default will be considered as a Demand Loan,"Если этот флажок не установлен, ссуда по умолчанию будет считаться ссудой до востребования.",
 This account is used for booking loan repayments from the borrower and also disbursing loans to the borrower,"Этот счет используется для регистрации платежей по ссуде от заемщика, а также для выдачи ссуд заемщику.",
 This account is capital account which is used to allocate capital for loan disbursal account ,"Этот счет является счетом движения капитала, который используется для распределения капитала на счет выдачи кредита.",
@@ -8758,8 +8619,47 @@
 Completed Tasks,Выполненные задачи,
 Total Tasks,Всего задач,
 Build,Конструктор,
-Amend,Исправить,
 Role Allowed to Over Deliver/Receive,"Роль, разрешенная для сверхдоставки/получения",
 Unit of Measure (UOM),Единицы измерения (ЕИ),
 Bank Reconciliation Tool,Инструмент сверки банковских счетов,
 Delayed Tasks Summary,Сводка отложенных задач,
+Add Comment,Добавить комментарий,
+More...,Больше...,
+Notes,Заметки,
+Payment Gateway,Платежный шлюз,
+Payment Gateway Name,Имя платежного шлюза,
+Payments,Оплата,
+Plan Name,Название плана,
+Portal,Портал,
+Scan Barcode,Сканирование штрих-кода,
+Some information is missing,Некоторая информация отсутствует,
+Successful,Успешно,
+Tools,Инструменты,
+Use Sandbox,Использовать «песочницу»,
+Busy,Занятый,
+Completed By,Завершил(а),
+Completed On,Завершено,
+Payment Failed,Платеж не прошел,
+Column {0},Колонка {0},
+Field Mapping,Полевое картографирование,
+Not Specified,Не указан,
+Update Type,Тип обновления,
+Dr,Доктор,
+End Time,Время окончания,
+Fetching...,Получение...,
+"It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","Кажется, что существует проблема с конфигурацией полосок сервера. В случае сбоя сумма будет возвращена на ваш счет.",
+Looks like someone sent you to an incomplete URL. Please ask them to look into it.,"Похоже, кто-то послал вас к неполному URL. Пожалуйста, попросите их посмотреть в нее.",
+Master,Мастер,
+Pay,Платить,
+You can also copy-paste this link in your browser,Вы также можете скопировать и вставить эту ссылку в свой браузер,
+Verified By,Утверждено,
+Invalid naming series (. missing) for {0},Недопустимая серия имен (. Отсутствует) для {0},
+Phone Number,Телефонный номер,
+Account SID,SID аккаунта,
+Global Defaults,Глобальные вводные по умолчанию,
+Is Mandatory,Является обязательным,
+WhatsApp,WhatsApp,
+Make a call,Позвонить,
+Is Template,Является шаблоном,
+Approve,Одобрить,
+Reject,Отклонить,
diff --git a/erpnext/translations/rw.csv b/erpnext/translations/rw.csv
index 55b79fe..ae0cb3a 100644
--- a/erpnext/translations/rw.csv
+++ b/erpnext/translations/rw.csv
@@ -113,7 +113,6 @@
 Add Items,Ongeramo Ibintu,
 Add Leads,Ongeramo Ubuyobozi,
 Add Multiple Tasks,Ongeraho Imirimo myinshi,
-Add Row,Ongeraho umurongo,
 Add Sales Partners,Ongeraho Abafatanyabikorwa,
 Add Serial No,Ongeraho Serial No.,
 Add Students,Ongeramo Abanyeshuri,
@@ -211,9 +210,7 @@
 An error occurred during the update process,Ikosa ryabaye mugihe cyo kuvugurura,
 "An item exists with same name ({0}), please change the item group name or rename the item","Ikintu kibaho gifite izina rimwe ({0}), nyamuneka uhindure izina ryitsinda cyangwa uhindure izina",
 Analyst,Isesengura,
-Analytics,Isesengura,
 Annual Billing: {0},Kwishyuza buri mwaka: {0},
-Anonymous,Anonymous,
 Another Budget record '{0}' already exists against {1} '{2}' and account '{3}' for fiscal year {4},Indi ngengo yimari &#39;{0}&#39; isanzwe ibaho kurwanya {1} &#39;{2}&#39; na konti &#39;{3}&#39; y&#39;umwaka w&#39;ingengo y&#39;imari {4},
 Another Period Closing Entry {0} has been made after {1},Ikindi gihe cyo gusoza ibyinjira {0} byakozwe nyuma ya {1},
 Another Sales Person {0} exists with the same Employee id,Undi muntu ugurisha {0} abaho hamwe id id Umukozi umwe,
@@ -283,14 +280,12 @@
 Attendance not submitted for {0} as {1} on leave.,Kwitabira ntabwo byatanzwe kuri {0} nka {1} mu kiruhuko.,
 Attribute table is mandatory,Imbonerahamwe ya kiranga ni itegeko,
 Attribute {0} selected multiple times in Attributes Table,Ikiranga {0} cyatoranijwe inshuro nyinshi mubiranga Imbonerahamwe,
-Author,Umwanditsi,
 Authorized Signatory,Byemewe,
 Auto Material Requests Generated,Gusaba Ibikoresho Byimodoka Byakozwe,
 Auto Repeat,Gusubiramo Imodoka,
 Auto repeat document updated,Ongera usubiremo inyandiko ivugururwa,
 Automotive,Imodoka,
 Available,Birashoboka,
-Available Leaves,Amababi aboneka,
 Available Qty,Kuboneka Qty,
 Available Selling,Kugurisha Kuboneka,
 Available for use date is required,Kuboneka kumatariki yo gukoresha birakenewe,
@@ -340,7 +335,6 @@
 Base URL,URL shingiro,
 Based On,Bishingiye,
 Based On Payment Terms,Bishingiye ku Masezerano yo Kwishura,
-Basic,Shingiro,
 Batch,Batch,
 Batch Entries,Ibyinjira,
 Batch ID is mandatory,Indangamuntu y&#39;icyiciro ni itegeko,
@@ -361,7 +355,6 @@
 Billable Hours,Amasaha yemewe,
 Billed,Yishyurwa,
 Billed Amount,Amafaranga yishyuwe,
-Billing,Kwishyuza,
 Billing Address,Aderesi ya fagitire,
 Billing Address is same as Shipping Address,Aderesi ya fagitire ni kimwe na Aderesi yoherejwe,
 Billing Amount,Amafaranga yo kwishyuza,
@@ -560,7 +553,6 @@
 Consumed Qty,Kumara Qty,
 Consumer Products,Ibicuruzwa byabaguzi,
 Contact,Twandikire,
-Contact Details,Menyesha Ibisobanuro,
 Contact Us,Twandikire,
 Content,Ibirimo,
 Content Masters,Abashinzwe Ibirimo,
@@ -715,7 +707,6 @@
 Date of Joining,Itariki yo Kwinjira,
 Date of Joining must be greater than Date of Birth,Itariki yo Kwinjira igomba kuba irenze Itariki Yavutse,
 Date of Transaction,Itariki yo gucuruza,
-Datetime,Igihe cyagenwe,
 Day,Umunsi,
 Debit,Amadeni,
 Debit ({0}),Amadeni ({0}),
@@ -874,7 +865,6 @@
 Employee cannot report to himself.,Umukozi ntashobora kwimenyekanisha wenyine.,
 Employee {0} has already applied for {1} between {2} and {3} : ,Umukozi {0} yamaze gusaba {1} hagati ya {2} na {3}:,
 Employee {0} of grade {1} have no default leave policy,Umukozi {0} wurwego {1} nta politiki yikiruhuko isanzwe,
-Enable,Gushoboza,
 Enable / disable currencies.,Gushoboza / guhagarika amafaranga.,
 Enabled,Gushoboza,
 "Enabling 'Use for Shopping Cart', as Shopping Cart is enabled and there should be at least one Tax Rule for Shopping Cart","Gushoboza &#39;Koresha Ikarita yo Guhaha&#39;, nkuko Ikarita yo Guhaha ishoboye kandi hagomba kubaho byibuze itegeko rimwe ryimisoro yo kugura",
@@ -905,7 +895,6 @@
 Error: Not a valid id?,Ikosa: Ntabwo id yemewe?,
 Estimated Cost,Ikigereranyo,
 "Even if there are multiple Pricing Rules with highest priority, then following internal priorities are applied:","Nubwo haba hari amategeko menshi yo kugena ibiciro byihutirwa, noneho gukurikiza ibyihutirwa byimbere bikurikizwa:",
-Event,Icyabaye,
 Exchange Gain/Loss,Kungurana inyungu / Gutakaza,
 Exchange Rate Revaluation master.,Igiciro cyo Kuvugurura Igiciro.,
 Exchange Rate must be same as {0} {1} ({2}),Igipimo cyo kuvunja kigomba kuba kimwe na {0} {1} ({2}),
@@ -1032,7 +1021,6 @@
 From value must be less than to value in row {0},Kuva ku gaciro bigomba kuba munsi y agaciro kumurongo {0},
 From {0} | {1} {2},Kuva {0} | {1} {2},
 Fulfillment,Kurangiza,
-Full,Byuzuye,
 Full Name,Izina ryuzuye,
 Fully Depreciated,Yataye agaciro rwose,
 Furnitures and Fixtures,Ibikoresho n&#39;ibikoresho,
@@ -1133,7 +1121,6 @@
 Hub Sync ID,Indangamuntu ya Hub,
 Human Resource,Abakozi,
 Human Resources,Abakozi,
-IFSC Code,Kode ya IFSC,
 IGST Amount,Amafaranga IGST,
 IP Address,Aderesi ya IP,
 ITC Available (whether in full op part),ITC Iraboneka (haba mubice byuzuye op),
@@ -1185,7 +1172,6 @@
 Ineligible ITC,ITC itemewe,
 Initiated,Yatangijwe,
 Inpatient Record,Inyandiko y&#39;abarwayi,
-Insert,Shyiramo,
 Installation Note,Icyitonderwa,
 Installation Note {0} has already been submitted,Icyitonderwa cyo kwishyiriraho {0} kimaze gutangwa,
 Installation date cannot be before delivery date for Item {0},Itariki yo kwishyiriraho ntishobora kuba mbere yitariki yo gutanga kubintu {0},
@@ -1197,7 +1183,6 @@
 Insurance Start date should be less than Insurance End date,Itariki yo Gutangiriraho Ubwishingizi igomba kuba munsi yumunsi wubwishingizi,
 Integrated Tax,Umusoro uhuriweho,
 Inter-State Supplies,Ibikoresho hagati ya Leta,
-Interests,Inyungu,
 Internet Publishing,Gutangaza kuri interineti,
 Intra-State Supplies,Ibikoresho byo mu Gihugu,
 Introduction,Intangiriro,
@@ -1316,7 +1301,6 @@
 Lab testing datetime cannot be before collection datetime,Ibizamini bya laboratoire ntibishobora kuba mbere yo gukusanya igihe,
 Label,Ikirango,
 Laboratory,Laboratoire,
-Language Name,Izina ry&#39;ururimi,
 Large,Kinini,
 Last Communication,Itumanaho rya nyuma,
 Last Communication Date,Itariki Yitumanaho Ryanyuma,
@@ -1347,8 +1331,6 @@
 Letter Heads for print templates.,Inyuguti Imitwe yo gucapa inyandikorugero.,
 Level,Urwego,
 Liability,Inshingano,
-License,Uruhushya,
-Limit,Imipaka,
 Limit Crossed,Imipaka ntarengwa,
 Link to Material Request,Ihuza Kubisabwa,
 List of all share transactions,Urutonde rwibicuruzwa byose,
@@ -1359,7 +1341,6 @@
 Loans (Liabilities),Inguzanyo (Inshingano),
 Loans and Advances (Assets),Inguzanyo n&#39;Iterambere (Umutungo),
 Local,Byaho,
-Log,Injira,
 Logs for maintaining sms delivery status,Ibiti byo kubungabunga imiterere ya sms,
 Lost,Yatakaye,
 Lost Reasons,Impamvu Zatakaye,
@@ -1445,7 +1426,6 @@
 Medical Department,Ishami ry&#39;ubuvuzi,
 Medical Record,Ubuvuzi,
 Medium,Hagati,
-Meeting,Inama,
 Member Activity,Igikorwa cyabanyamuryango,
 Member ID,Indangamuntu,
 Member Name,Izina ry&#39;abanyamuryango,
@@ -1495,7 +1475,6 @@
 Multiple Variants,Ibice byinshi,
 Multiple fiscal years exist for the date {0}. Please set company in Fiscal Year,Imyaka myinshi yingengo yimari ibaho kumunsi {0}. Nyamuneka shiraho isosiyete mu mwaka w&#39;ingengo y&#39;imari,
 Music,Umuziki,
-My Account,Konti yanjye,
 Name error: {0},Ikosa ryizina: {0},
 Name of new Account. Note: Please don't create accounts for Customers and Suppliers,Izina rya Konti nshya. Icyitonderwa: Nyamuneka ntugashire konti kubakiriya nabatanga isoko,
 Name or Email is mandatory,Izina cyangwa imeri ni itegeko,
@@ -1538,7 +1517,6 @@
 New credit limit is less than current outstanding amount for the customer. Credit limit has to be atleast {0},Umubare ntarengwa w&#39;inguzanyo uri munsi y&#39;amafaranga asigaye ku bakiriya. Inguzanyo ntarengwa igomba kuba byibuze {0},
 New task,Igikorwa gishya,
 New {0} pricing rules are created,Amategeko mashya {0} yashizweho,
-Newsletters,Akanyamakuru,
 Newspaper Publishers,Abanditsi b&#39;ikinyamakuru,
 Next,Ibikurikira,
 Next Contact By cannot be same as the Lead Email Address,Ibikurikira Twandikire Ntushobora kumera nka Aderesi imeyiri,
@@ -1686,7 +1664,6 @@
 Other,Ibindi,
 Other Reports,Izindi Raporo,
 "Other outward supplies(Nil rated,Exempted)","Ibindi bikoresho byo hanze (Nil rated, Usonewe)",
-Others,Abandi,
 Out Qty,Hanze Qty,
 Out Value,Agaciro,
 Out of Order,Bitemewe,
@@ -1726,7 +1703,6 @@
 Party Type and Party is mandatory for {0} account,Ubwoko bw&#39;Ishyaka n&#39;Ishyaka ni itegeko kuri konte {0},
 Party Type is mandatory,Ubwoko bw&#39;Ishyaka ni itegeko,
 Party is mandatory,Ishyaka ni itegeko,
-Password,Ijambobanga,
 Past Due Date,Itariki Yashize,
 Patient,Mwihangane,
 Patient Appointment,Ishyirwaho ry&#39;abarwayi,
@@ -1784,7 +1760,6 @@
 Pharmaceutical,Imiti,
 Pharmaceuticals,Imiti,
 Physician,Umuganga,
-Pincode,Pincode,
 Place Of Supply (State/UT),Ahantu ho gutanga (Leta / UT),
 Place Order,Urutonde,
 Plan Name,Izina rya gahunda,
@@ -1896,7 +1871,6 @@
 Please select date,Nyamuneka hitamo itariki,
 Please select item code,Nyamuneka hitamo kode y&#39;ibintu,
 Please select month and year,Nyamuneka hitamo ukwezi n&#39;umwaka,
-Please select prefix first,Nyamuneka hitamo mbere,
 Please select the Company,Nyamuneka hitamo Isosiyete,
 Please select the Multiple Tier Program type for more than one collection rules.,Nyamuneka hitamo ubwoko bwinshi bwa gahunda ya progaramu kumategeko arenze imwe.,
 Please select the assessment group other than 'All Assessment Groups',Nyamuneka hitamo itsinda ryisuzuma ritari &#39;Amatsinda yose yo gusuzuma&#39;,
@@ -1913,7 +1887,6 @@
 Please set Company filter blank if Group By is 'Company',Nyamuneka shyira isosiyete iyungurura ubusa niba Itsinda By ari &#39;Isosiyete&#39;,
 Please set Default Payroll Payable Account in Company {0},Nyamuneka shyira Konti Yishyuwe Yishyuwe Muri Sosiyete {0},
 Please set Depreciation related Accounts in Asset Category {0} or Company {1},Nyamuneka shyira Konti zijyanye no guta agaciro mubyiciro byumutungo {0} cyangwa Isosiyete {1},
-Please set Email Address,Nyamuneka shiraho aderesi imeri,
 Please set GST Accounts in GST Settings,Nyamuneka shyira Konti ya GST muri GST Igenamiterere,
 Please set Hotel Room Rate on {},Nyamuneka shyira igiciro cya Hotel kuri {},
 Please set Number of Depreciations Booked,Nyamuneka shyira Umubare Wabataye agaciro,
@@ -1936,7 +1909,6 @@
 Please set the Email ID for the Student to send the Payment Request,Nyamuneka shiraho imeri ya imeri kugirango Umunyeshuri yohereze Icyifuzo cyo Kwishura,
 Please set the Item Code first,Nyamuneka shyira mbere kode yikintu,
 Please set the Payment Schedule,Nyamuneka shiraho Gahunda yo Kwishura,
-Please set the series to be used.,Nyamuneka shiraho urukurikirane ruzakoreshwa.,
 Please set {0} for address {1},Nyamuneka shyira {0} kuri aderesi {1},
 Please setup Students under Student Groups,Nyamuneka shiraho Abanyeshuri munsi yitsinda ryabanyeshuri,
 Please specify Company,Nyamuneka sobanura Isosiyete,
@@ -1953,7 +1925,6 @@
 Point-of-Sale,Ingingo-yo kugurisha,
 Point-of-Sale Profile,Ingingo-yo-Kugurisha Umwirondoro,
 Portal,Urubuga,
-Portal Settings,Igenamiterere rya portal,
 Possible Supplier,Birashoboka,
 Postal Expenses,Amafaranga y&#39;iposita,
 Posting Date,Itariki yoherejwe,
@@ -2152,12 +2123,10 @@
 Reference No is mandatory if you entered Reference Date,Reba Oya ni itegeko niba winjiye Itariki,
 Reference No.,Reba No.,
 Reference Number,Inomero,
-Reference Owner,Nyirubwite,
 Reference Type,Ubwoko bwa Reba,
 "Reference: {0}, Item Code: {1} and Customer: {2}","Reba: {0}, Kode y&#39;Ikintu: {1} n&#39;umukiriya: {2}",
 References,Reba,
 Refresh Token,Fungura Token,
-Region,Intara,
 Register,Iyandikishe,
 Rejected,Yanze,
 Related,Bifitanye isano,
@@ -2179,7 +2148,6 @@
 Replace BOM and update latest price in all BOMs,Simbuza BOM hanyuma uvugurure igiciro giheruka muri BOM zose,
 Replied,Yasubijwe,
 Report,Raporo,
-Report Builder,Raporo Yubaka,
 Report Type,Ubwoko bwa Raporo,
 Report Type is mandatory,Ubwoko bwa Raporo ni itegeko,
 Reports,Raporo,
@@ -2355,13 +2323,11 @@
 Same Company is entered more than once,Isosiyete imwe yinjiye inshuro zirenze imwe,
 Same item cannot be entered multiple times.,Ikintu kimwe ntigishobora kwinjizwa inshuro nyinshi.,
 Same supplier has been entered multiple times,Utanga isoko rimwe yinjiye inshuro nyinshi,
-Sample,Icyitegererezo,
 Sample Collection,Icyegeranyo cy&#39;icyitegererezo,
 Sample quantity {0} cannot be more than received quantity {1},Ingano ntangarugero {0} ntishobora kurenza umubare wakiriwe {1},
 Sanctioned,Yemerewe,
 Sand,Umusenyi,
 Saturday,Ku wa gatandatu,
-Saved,Yakijijwe,
 Saving {0},Kuzigama {0},
 Scan Barcode,Suzuma Barcode,
 Schedule,Gahunda,
@@ -2463,7 +2429,6 @@
 Series Updated,Urukurikirane ruvugururwa,
 Series Updated Successfully,Urukurikirane ruvugururwa neza,
 Series is mandatory,Urukurikirane ni itegeko,
-Series {0} already used in {1},Urukurikirane {0} rumaze gukoreshwa muri {1},
 Service,Serivisi,
 Service Level Agreement,Amasezerano yo murwego rwa serivisi,
 Service Level Agreement.,Amasezerano yo murwego rwa serivisi.,
@@ -2479,7 +2444,6 @@
 Set Tax Rule for shopping cart,Shiraho amategeko yimisoro yo kugura,
 Set as Closed,Shiraho nkuko bifunze,
 Set as Completed,Shiraho Byuzuye,
-Set as Default,Shiraho nkibisanzwe,
 Set as Lost,Shiraho nk&#39;uwazimiye,
 Set as Open,Shiraho Gufungura,
 Set default inventory account for perpetual inventory,Shiraho konte idasanzwe yo kubara kubarura ibihe byose,
@@ -2511,7 +2475,6 @@
 Shareholder,Umunyamigabane,
 Ship To State,Ubwato Kuri Leta,
 Shipments,Kohereza,
-Shipping,Kohereza,
 Shipping Address,Aderesi yoherejwe,
 "Shipping Address does not have country, which is required for this Shipping Rule","Aderesi yoherejwe ntabwo ifite igihugu, gisabwa kuri iri tegeko ryo kohereza",
 Shipping rule only applicable for Buying,Amategeko yo kohereza akurikizwa gusa Kugura,
@@ -2564,7 +2527,6 @@
 Split Batch,Gutandukanya,
 Split Issue,Gutandukanya Ikibazo,
 Sports,Imikino,
-Standard,Bisanzwe,
 Standard Buying,Kugura bisanzwe,
 Standard Selling,Kugurisha bisanzwe,
 Standard contract terms for Sales or Purchase.,Amasezerano asanzwe yo kugurisha cyangwa kugura.,
@@ -2731,7 +2693,6 @@
 Terms and Conditions,Amategeko n&#39;amabwiriza,
 Terms and Conditions Template,Inyandikorugero,
 Territory,Ifasi,
-Test,Ikizamini,
 Thank you for your business!,Urakoze kubucuruzi bwawe!,
 The 'From Package No.' field must neither be empty nor it's value less than 1.,&#39;Kuva Mubipapuro Oya.&#39; umurima ntugomba kuba ubusa cyangwa agaciro kari munsi ya 1.,
 The Brand,Ikirango,
@@ -2848,7 +2809,6 @@
 Total (Without Tax),Igiteranyo (Nta musoro),
 Total Achieved,Byose Byagezweho,
 Total Actual,Igiteranyo Cyuzuye,
-Total Allocated Leaves,Amababi yose yatanzwe,
 Total Amount,Umubare wose,
 Total Amount Credited,Amafaranga yose yatanzwe,
 Total Applicable Charges in Purchase Receipt Items table must be same as Total Taxes and Charges,Amafaranga yose akoreshwa muburyo bwo kugura ibicuruzwa byakiriwe bigomba kumera nkimisoro yose hamwe,
@@ -2892,7 +2852,6 @@
 Total(Amt),Yose (Amt),
 Total(Qty),Igiteranyo (Qty),
 Traceability,Gukurikirana,
-Traceback,Inzira,
 Track Leads by Lead Source.,Gukurikirana Biyobowe nisoko ryambere.,
 Transaction,Gucuruza,
 Transaction Date,Itariki yo gucuruza,
@@ -2930,7 +2889,6 @@
 UOM Conversion factor is required in row {0},UOM Guhindura ibintu bisabwa kumurongo {0},
 UOM coversion factor required for UOM: {0} in Item: {1},Ikintu cyo gutwikira UOM gikenewe kuri UOM: {0} mu ngingo: {1},
 URL,URL,
-Unable to find DocType {0},Ntushobora kubona DocType {0},
 Unable to find exchange rate for {0} to {1} for key date {2}. Please create a Currency Exchange record manually,Ntushobora kubona igipimo cyivunjisha kuri {0} kugeza {1} kumunsi wingenzi {2}. Nyamuneka kora inyandiko yo kuvunja intoki,
 Unable to find score starting at {0}. You need to have standing scores covering 0 to 100,Ntushobora kubona amanota guhera kuri {0}. Ugomba kugira amanota ahagaze akubiyemo 0 kugeza 100,
 Unable to find variable: ,Ntibishobora kubona impinduka:,
@@ -2960,7 +2918,6 @@
 Upload your letter head and logo. (you can edit them later).,Kuramo ibaruwa yawe umutwe hamwe nikirangantego. (urashobora kubihindura nyuma).,
 Upper Income,Amafaranga yinjira,
 Use Sandbox,Koresha Sandbox,
-Used Leaves,Amababi yakoreshejwe,
 User,Umukoresha,
 User ID,Indangamuntu,
 User ID not set for Employee {0},Indangamuntu yumukoresha ntabwo yashyizweho kubakozi {0},
@@ -3051,7 +3008,6 @@
 Website Settings,Igenamiterere ryurubuga,
 Wednesday,Ku wa gatatu,
 Week,Icyumweru,
-Weekdays,Iminsi y&#39;icyumweru,
 Weekly,Buri cyumweru,
 "Weight is mentioned,\nPlease mention ""Weight UOM"" too","Ibiro byavuzwe, \ n Nyamuneka vuga &quot;Uburemere UOM&quot;",
 Welcome email sent,Ikaze imeri yoherejwe,
@@ -3072,7 +3028,6 @@
 Work Order {0} must be submitted,Iteka ry&#39;akazi {0} rigomba gutangwa,
 Work Orders Created: {0},Amabwiriza y&#39;akazi Yashyizweho: {0},
 Work-in-Progress Warehouse is required before Submit,Ububiko-Imirimo-Iterambere Ububiko burasabwa mbere yo Kohereza,
-Workflow,Urupapuro rw&#39;akazi,
 Working,Gukora,
 Working Hours,Amasaha y&#39;akazi,
 Workstation,Akazi,
@@ -3102,7 +3057,6 @@
 You need to be a user other than Administrator with System Manager and Item Manager roles to register on Marketplace.,Ugomba kuba umukoresha usibye Umuyobozi hamwe na sisitemu ya sisitemu hamwe ninshingano zumuyobozi kugirango wiyandikishe kumasoko.,
 You need to be a user with System Manager and Item Manager roles to add users to Marketplace.,Ugomba kuba umukoresha ufite sisitemu ya sisitemu hamwe ninshingano zumuyobozi kugirango wongere abakoresha kumasoko.,
 You need to be a user with System Manager and Item Manager roles to register on Marketplace.,Ugomba kuba umukoresha hamwe na sisitemu ya sisitemu hamwe ninshingano zumuyobozi kugirango wiyandikishe kumasoko.,
-You need to be logged in to access this page,Ugomba kwinjira kugirango ugere kuriyi page,
 You need to enable Shopping Cart,Ugomba gukora Ikarita yo Guhaha,
 You will lose records of previously generated invoices. Are you sure you want to restart this subscription?,Uzatakaza inyandiko za fagitire zakozwe mbere. Uzi neza ko ushaka kongera kwiyandikisha?,
 Your Organization,Ishirahamwe ryanyu,
@@ -3218,7 +3172,6 @@
 Assigned To,Yashinzwe Kuri,
 Chat,Kuganira,
 Completed By,Byarangiye Na,
-County,Intara,
 Day of Week,Umunsi w&#39;icyumweru,
 "Dear System Manager,","Nshuti Umuyobozi wa Sisitemu,",
 Default Value,Agaciro gasanzwe,
@@ -3229,31 +3182,21 @@
 Fieldtype,Ubwoko,
 Help Articles,Fasha Ingingo,
 ID,Indangamuntu,
-Images,Amashusho,
 Import,Kuzana ibicuruzwa,
 Language,Ururimi,
 Likes,Gukunda,
 Merge with existing,Ihuze nibihari,
-Office,Ibiro,
 Orientation,Icyerekezo,
 Parent,Ababyeyi,
-Passive,Passive,
 Payment Failed,Kwishura byarananiranye,
-Permanent,Iteka,
 Personal,Umuntu ku giti cye,
-Plant,Gutera,
 Post,Kohereza,
-Postal,Amaposita,
 Postal Code,Kode y&#39;iposita,
-Previous,Mbere,
 Provider,Utanga,
 Read Only,Soma gusa,
 Recipient,Uwakiriye,
 Reviews,Isubiramo,
 Sender,Kohereza,
-Shop,Amaduka,
-Subsidiary,Inkunga,
-There is some problem with the file url: {0},Hano hari ikibazo na dosiye url: {0},
 There were errors while sending email. Please try again.,Habayeho amakosa mugihe wohereje imeri. Nyamuneka gerageza.,
 Values Changed,Indangagaciro,
 or,cyangwa,
@@ -3280,19 +3223,16 @@
 Quality Feedback Template,Inyandikorugero nziza,
 Rules for applying different promotional schemes.,Amategeko yo gukoresha gahunda zitandukanye zo kwamamaza.,
 Show {0},Erekana {0},
-"Special Characters except '-', '#', '.', '/', '{{' and '}}' not allowed in naming series {0}","Inyuguti zidasanzwe usibye &quot;-&quot;, &quot;#&quot;, &quot;.&quot;, &quot;/&quot;, &quot;{{&quot; Na &quot;}}&quot; ntibyemewe mu ruhererekane rwo kwita izina {0}",
 Target Details,Intego Ibisobanuro,
 {0} already has a Parent Procedure {1}.,{0} isanzwe ifite uburyo bwababyeyi {1}.,
 API,API,
 Annual,Buri mwaka,
 Change,Hindura,
 Contact Email,Menyesha imeri,
-Export Type,Ubwoko bwo kohereza hanze,
 From Date,Kuva Itariki,
 Group By,Itsinda Na,
 Invalid URL,URL itemewe,
 Landscape,Ahantu nyaburanga,
-Last Sync On,Ihuza rya nyuma,
 Naming Series,Urukurikirane rw&#39;izina,
 No data to export,Nta makuru yo kohereza hanze,
 Portrait,Igishushanyo,
@@ -3302,7 +3242,6 @@
 Show Document,Erekana Inyandiko,
 Show Traceback,Erekana inzira,
 Video,Video,
-Webhook Secret,Urubuga rwibanga,
 % Of Grand Total,% Bya Byose,
 <b>Company</b> is a mandatory filter.,<b>Isosiyete</b> ni filteri iteganijwe.,
 <b>From Date</b> is a mandatory filter.,<b>Kuva Itariki</b> ni itegeko riteganijwe.,
@@ -3358,7 +3297,6 @@
 BOM Comparison Tool,Igikoresho cyo Kugereranya BOM,
 BOM recursion: {0} cannot be child of {1},BOM isubiramo: {0} ntishobora kuba umwana wa {1},
 BOM recursion: {0} cannot be parent or child of {1},BOM isubiramo: {0} ntishobora kuba umubyeyi cyangwa umwana wa {1},
-Back to Home,Subira Murugo,
 Back to Messages,Subira ku butumwa,
 Bank Data mapper doesn't exist,Ikarita ya Data Data ntabwo ibaho,
 Bank Details,Ibisobanuro bya Banki,
@@ -3420,7 +3358,6 @@
 Currency,Ifaranga,
 Current Status,Imiterere y&#39;ubu,
 Customer PO,Umukiriya PO,
-Customize,Hindura,
 Daily,Buri munsi,
 Date,Itariki,
 Date of Birth cannot be greater than Joining Date.,Itariki y&#39;amavuko ntishobora kuba iruta Kwinjira.,
@@ -3454,7 +3391,6 @@
 ERPNext could not find any matching payment entry,ERPNext ntishobora kubona ibyinjira byinjira,
 Earliest Age,Imyaka Yambere,
 Edit Details,Hindura Ibisobanuro,
-Edit Profile,Hindura ibikuranga,
 Either GST Transporter ID or Vehicle No is required if Mode of Transport is Road,Haba indangamuntu ya GST cyangwa Ikinyabiziga Oya ntibisabwa niba uburyo bwo gutwara abantu ari Umuhanda,
 Email,Imeri,
 Email Campaigns,Kwamamaza imeri,
@@ -3482,7 +3418,6 @@
 Fetch Items from Warehouse,Fata Ibintu biva mububiko,
 Fetching...,Kubona ...,
 Field,Umurima,
-File Manager,Umuyobozi wa dosiye,
 Filters,Muyunguruzi,
 Finding linked payments,Kubona ubwishyu buhujwe,
 Fleet Management,Gucunga amato,
@@ -3521,7 +3456,6 @@
 Incorrect Warehouse,Ububiko butari bwo,
 Invalid Barcode. There is no Item attached to this barcode.,Barcode itemewe. Nta kintu gifatanye niyi barcode.,
 Invalid credentials,Ibyangombwa bitemewe,
-Invite as User,Tumira nkumukoresha,
 Issue Priority.,Tanga Icyambere.,
 Issue Type.,Ubwoko bw&#39;Ibibazo.,
 "It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","Birasa nkaho hari ikibazo hamwe na seriveri iboneza. Mugihe byananiranye, amafaranga azasubizwa kuri konte yawe.",
@@ -3564,7 +3498,6 @@
 New Invoice,Inyemezabuguzi nshya,
 New Payment,Ubwishyu bushya,
 New release date should be in the future,Itariki nshya yo gusohora igomba kuba mugihe kizaza,
-Newsletter,Akanyamakuru,
 No Account matched these filters: {},Nta Konti ihuye n&#39;iyungurura: {},
 No communication found.,Nta tumanaho ryabonetse.,
 No correct answer is set for {0},Nta gisubizo nyacyo cyashyizweho kuri {0},
@@ -3640,7 +3573,6 @@
 Please setup a default bank account for company {0},Nyamuneka shiraho konti ya banki isanzwe ya sosiyete {0},
 Please specify,Nyamuneka sobanura,
 Please specify a {0},Nyamuneka sobanura {0},lead
-Printing,Gucapa,
 Priority,Ibyingenzi,
 Priority has been changed to {0}.,Ibyingenzi byahinduwe kuri {0}.,
 Priority {0} has been repeated.,Ibyingenzi {0} byasubiwemo.,
@@ -3649,7 +3581,6 @@
 Project,Umushinga,
 Provide the academic year and set the starting and ending date.,Tanga umwaka w&#39;amashuri hanyuma ushireho itariki yo gutangiriraho no kurangiriraho.,
 Public token is missing for this bank,Ikimenyetso rusange kibuze iyi banki,
-Publish,Tangaza,
 Publish 1 Item,Tangaza Ingingo 1,
 Publish Items,Tangaza Ibintu,
 Publish More Items,Tangaza Ibindi Byinshi,
@@ -3677,7 +3608,6 @@
 Reconciled,Kwiyunga,
 Recruitment,Gushaka abakozi,
 Red,Umutuku,
-Refreshing,Kuruhura,
 Release date must be in the future,Itariki yo gusohora igomba kuba mugihe kizaza,
 Relieving Date must be greater than or equal to Date of Joining,Itariki Yoroheje igomba kuba irenze cyangwa ingana nitariki yo Kwinjira,
 Rename,Hindura izina,
@@ -3721,7 +3651,6 @@
 Search for a payment,Shakisha ubwishyu,
 Search for anything ...,Shakisha ikintu icyo ari cyo cyose ...,
 Search results for,Shakisha ibisubizo kuri,
-Select All,Hitamo byose,
 Select Difference Account,Hitamo Konti Itandukanye,
 Select a Default Priority.,Hitamo Icyambere.,
 Select a company,Hitamo isosiyete,
@@ -3740,11 +3669,9 @@
 Service Level Agreement has been changed to {0}.,Amasezerano yo murwego rwa serivisi yahinduwe kuri {0}.,
 Service Level Agreement was reset.,Amasezerano yo murwego rwa serivisi yarasubitswe.,
 Service Level Agreement with Entity Type {0} and Entity {1} already exists.,Urwego rwa Serivisi Amasezerano Ubwoko {0} hamwe na {1} birahari.,
-Set,Shiraho,
 Set Meta Tags,Shiraho Meta Tagi,
 Set {0} in company {1},Shyira {0} muri sosiyete {1},
 Setup,Gushiraho,
-Setup Wizard,Gushiraho Wizard,
 Shift Management,Ubuyobozi bwa Shift,
 Show Future Payments,Erekana ubwishyu bw&#39;ejo hazaza,
 Show Linked Delivery Notes,Erekana Inyandiko Zitangwa,
@@ -3815,7 +3742,6 @@
 Unreconciled,Ntabwo byemewe,
 Unsupported GST Category for E-Way Bill JSON generation,Icyiciro cya GST kidashyigikiwe na E-Way Bill JSON ibisekuruza,
 Update,Kuvugurura,
-Update Details,Kuvugurura Ibisobanuro,
 Update Taxes for Items,Kuvugurura imisoro kubintu,
 "Upload a bank statement, link or reconcile a bank account","Kuramo inyandiko ya banki, uhuze cyangwa uhuze konti ya banki",
 Upload a statement,Kuramo itangazo,
@@ -3839,7 +3765,6 @@
 XML Files Processed,XML Idosiye Yatunganijwe,
 Year,Umwaka,
 Yearly,Buri mwaka,
-You,Wowe,
 You are not allowed to enroll for this course,Ntiwemerewe kwiyandikisha muri aya masomo,
 You are not enrolled in program {0},Ntabwo wiyandikishije muri gahunda {0},
 You can Feature upto 8 items.,Urashobora Kugaragaza Ibintu 8.,
@@ -3856,7 +3781,6 @@
 e-Way Bill already exists for this document,e-Way Bill isanzwe ibaho kuriyi nyandiko,
 woocommerce - {0},woocommerce - {0},
 {0} Coupon used are {1}. Allowed quantity is exhausted,{0} Coupon yakoreshejwe ni {1}. Umubare wemewe urarangiye,
-{0} Name,{0} Izina,
 {0} Operations: {1},{0} Ibikorwa: {1},
 {0} bank transaction(s) created,{0 action ibikorwa bya banki byakozwe,
 {0} bank transaction(s) created and {1} errors,{0 transaction ibikorwa bya banki byakozwe na {1} amakosa,
@@ -3875,17 +3799,13 @@
 Total Income,Amafaranga yose yinjiza,
 Total Income This Year,Amafaranga yinjiza muri uyu mwaka,
 Barcode,Barcode,
-Bold,Ubutinyutsi,
-Center,Ikigo,
 Clear,Biragaragara,
-Comment,Igitekerezo,
 Comments,Ibitekerezo,
 DocType,Inyandiko,
 Download,Kuramo,
 Left,Ibumoso,
 Link,Ihuza,
 New,Gishya,
-Not Found,Ntibabonetse,
 Print,Icapa,
 Reference Name,Izina,
 Refresh,Ongera,
@@ -3908,7 +3828,6 @@
 Email Id,Imeri Id,
 No,Oya,
 Reference Doctype,Reba Inyandiko,
-User Id,Umukoresha Id,
 Yes,Yego,
 Actual ,Mubyukuri,
 Add to cart,Ongera ku igare,
@@ -4304,7 +4223,6 @@
 e.g Adjustments for:,urugero Ibyahinduwe kuri:,
 Section Subtotal,Icyiciro Subtotal,
 Section Footer,Igice Umutwe,
-Position,Umwanya,
 Cash Flow Mapping,Ikarita y&#39;amafaranga,
 Select Maximum Of 1,Hitamo Ntarengwa Ya 1,
 Is Finance Cost,Nibiciro byimari,
@@ -4936,7 +4854,6 @@
 Previous Business Day,Umunsi wubucuruzi,
 Next Business Day,Umunsi w&#39;Ubutaha,
 Urgent,Byihutirwa,
-Crop,Igihingwa,
 Crop Name,Izina ry&#39;ibihingwa,
 Scientific Name,Izina ry&#39;ubumenyi,
 "You can define all the tasks which need to carried out for this crop here. The day field is used to mention the day on which the task needs to be carried out, 1 being the 1st day, etc.. ","Urashobora gusobanura imirimo yose ikeneye gukorwa kuri iki gihingwa hano. Umwanya wumunsi ukoreshwa mukuvuga umunsi umurimo ugomba gukorerwa, 1 ukaba umunsi wa 1, nibindi ..",
@@ -5441,7 +5358,6 @@
 To TIme,Kuri TIme,
 Course End Date,Itariki yo kurangiriraho,
 Course Topic,Ingingo y&#39;amasomo,
-Topic,Ingingo,
 Topic Name,Izina ry&#39;insanganyamatsiko,
 Education Settings,Igenamiterere ry&#39;uburezi,
 Current Academic Year,Umwaka w&#39;Amashuri,
@@ -5516,7 +5432,6 @@
 Check this if the Student is residing at the Institute's Hostel.,Reba ibi niba Umunyeshuri atuye muri Hoteri y&#39;Ikigo.,
 Walking,Kugenda,
 Institute's Bus,Bus ya Institute,
-Public Transport,Ubwikorezi rusange,
 Self-Driving Vehicle,Ikinyabiziga Cyigenga,
 Pick/Drop by Guardian,Tora / Kureka na Murinzi,
 Enrolled courses,Kwiyandikisha,
@@ -5697,7 +5612,6 @@
 Default Cost Center,Ibiciro bisanzwe,
 Undeposited Funds Account,Konti y&#39;amafaranga atabitswe,
 Shopify Log,Guhindura Logi,
-Request Data,Saba amakuru,
 Shopify Settings,Guhindura Igenamiterere,
 status html,imiterere html,
 Enable Shopify,Gushoboza Guhindura,
@@ -5817,7 +5731,6 @@
 Exercise Instructions,Imyitozo,
 Exercise Video,Kora Video,
 Exercise Steps,Imyitozo,
-Steps,Intambwe,
 Steps Table,Imbonerahamwe Intambwe,
 Exercise Type Step,Imyitozo Ubwoko Intambwe,
 Max number of visit,Umubare munini wo gusurwa,
@@ -6001,7 +5914,6 @@
 Patient Encounter Symptom,Ikimenyetso cyo Guhura kw&#39;abarwayi,
 HLC-PMR-.YYYY.-,HLC-PMR-.YYYY.-,
 Attach Medical Record,Ongeraho inyandiko yubuvuzi,
-Reference DocType,Reba Inyandiko,
 Spouse,Uwo mwashakanye,
 Family,Umuryango,
 Schedule Details,Gahunda irambuye,
@@ -6983,16 +6895,8 @@
 HTML / Banner that will show on the top of product list.,HTML / Ibendera ryerekana hejuru kurutonde rwibicuruzwa.,
 Set prefix for numbering series on your transactions,Shiraho imbanzirizamushinga yo gutondekanya ibikorwa byawe,
 Setup Series,Gushiraho,
-Select Transaction,Hitamo Igicuruzwa,
-Help HTML,Fasha HTML,
-Series List for this Transaction,Urutonde rwuruhererekane rwuruhererekane,
-User must always select,Umukoresha agomba guhitamo buri gihe,
-Check this if you want to force the user to select a series before saving. There will be no default if you check this.,Reba ibi niba ushaka guhatira umukoresha guhitamo urukurikirane mbere yo kuzigama. Ntabwo byanze bikunze uramutse ugenzuye ibi.,
 Update Series,Kuvugurura Urukurikirane,
 Change the starting / current sequence number of an existing series.,Hindura intangiriro / ikurikirana ikurikirana yumubare uriho.,
-Prefix,Ijambo ryibanze,
-This is the number of the last created transaction with this prefix,Numubare wanyuma wakozwe hamwe niyi prefix,
-Update Series Number,Kuvugurura inomero yuruhererekane,
 Quotation Lost Reason,Amagambo Yatakaye Impamvu,
 A third party distributor / dealer / commission agent / affiliate / reseller who sells the companies products for a commission.,Undi muntu ukwirakwiza / umucuruzi / umukozi wa komisiyo / umufatanyabikorwa / ugurisha ibicuruzwa bya sosiyete kuri komisiyo.,
 Sales Partner Name,Izina ryabafatanyabikorwa,
@@ -7687,7 +7591,6 @@
 Warehouse wise Item Balance Age and Value,Ububiko bwubwenge Ikintu Kuringaniza Imyaka nagaciro,
 Work Order Stock Report,Raporo Yumurimo Raporo,
 Work Orders in Progress,Amabwiriza y&#39;akazi aratera imbere,
-Validation Error,Ikosa ryo Kwemeza,
 Automatically Process Deferred Accounting Entry,Mu buryo bwikora Gutunganyiriza Ibaruramari ryatinze,
 Bank Clearance,Banki,
 Bank Clearance Detail,Ibisobanuro birambuye kuri banki,
@@ -7724,45 +7627,7 @@
 Therapy Plan: ,Gahunda yo kuvura:,
 Total Counts Targeted: ,Umubare wuzuye ugamije:,
 Total Counts Completed: ,Amafaranga yose yarangiye:,
-Andaman and Nicobar Islands,Ibirwa bya Andaman na Nikobari,
-Andhra Pradesh,Andhra Pradesh,
-Arunachal Pradesh,Arunachal Pradesh,
-Assam,Assam,
-Bihar,Bihar,
-Chandigarh,Chandigarh,
-Chhattisgarh,Chhattisgarh,
-Dadra and Nagar Haveli,Dadra na Nagar Haveli,
-Daman and Diu,Daman na Diu,
-Delhi,Delhi,
-Goa,Goa,
-Gujarat,Gujarat,
-Haryana,Haryana,
-Himachal Pradesh,Himachal Pradesh,
-Jammu and Kashmir,Jammu and Kashmir,
-Jharkhand,Jharkhand,
-Karnataka,Karnataka,
-Kerala,Kerala,
-Lakshadweep Islands,Ibirwa bya Lakshadweep,
-Madhya Pradesh,Madhya Pradesh,
-Maharashtra,Maharashtra,
-Manipur,Manipur,
-Meghalaya,Meghalaya,
-Mizoram,Mizoram,
-Nagaland,Nagaland,
-Odisha,U Rwanda,
-Other Territory,Utundi turere,
-Pondicherry,Pondicherry,
-Punjab,Punjab,
-Rajasthan,Rajasthan,
-Sikkim,Sikkim,
-Tamil Nadu,Tamil Nadu,
-Telangana,Telangana,
-Tripura,Tripura,
-Uttar Pradesh,Uttar Pradesh,
-Uttarakhand,Uttarakhand,
-West Bengal,Iburengerazuba,
 Is Mandatory,Ni itegeko,
-Published on,Byatangajwe kuri,
 Service Received But Not Billed,Serivisi yakiriwe ariko ntabwo yishyuwe,
 Deferred Accounting Settings,Igenamigambi ryatinze,
 Book Deferred Entries Based On,Igitabo Cyatinze Ibyanditswe Bishingiye,
@@ -8035,8 +7900,6 @@
 Worksheet Instructions,Urupapuro rw&#39;akazi,
 Result Legend Print,Igisubizo cy&#39;Imigani Icapa,
 Print Position,Umwanya,
-Bottom,Hasi,
-Top,Hejuru,
 Both,Byombi,
 Result Legend,Igisubizo,
 Lab Tests,Ibizamini bya Laboratoire,
@@ -8081,12 +7944,10 @@
 Approvers,Abashinzwe,
 The first Approver in the list will be set as the default Approver.,Icyemezo cya mbere murutonde kizashyirwaho nkibisanzwe byemewe.,
 Shift Request Approver,Guhindura Gusaba,
-PAN Number,Numero ya PAN,
 Provident Fund Account,Konti y&#39;Ikigega cy&#39;Imari,
 MICR Code,Kode ya MICR,
 Repay unclaimed amount from salary,Subiza amafaranga atasabwe kuva kumushahara,
 Deduction from salary,Gukurwa ku mushahara,
-Expired Leaves,Amababi yarangiye,
 If this is not checked the loan by default will be considered as a Demand Loan,Niba ibi bitagenzuwe inguzanyo byanze bikunze bizafatwa nkinguzanyo isabwa,
 This account is used for booking loan repayments from the borrower and also disbursing loans to the borrower,Iyi konti ikoreshwa mugutanga inguzanyo zishyuwe nuwagurijwe kandi ikanatanga inguzanyo kubagurijwe,
 This account is capital account which is used to allocate capital for loan disbursal account ,Konti ni konti shingiro ikoreshwa mugutanga igishoro kuri konti yo gutanga inguzanyo,
@@ -8844,3 +8705,41 @@
 Creating Purchase Order ...,Gushiraho gahunda yo kugura ...,
 "Select a Supplier from the Default Suppliers of the items below. On selection, a Purchase Order will be made against items belonging to the selected Supplier only.","Hitamo Utanga isoko uhereye kubisanzwe bitanga ibintu hepfo. Muguhitamo, Iteka ryubuguzi rizakorwa kurwanya ibintu byatoranijwe gusa.",
 Row #{}: You must select {} serial numbers for item {}.,Umurongo # {}: Ugomba guhitamo {} nimero yuruhererekane kubintu {}.,
+Add Comment,Ongeraho Igitekerezo,
+More...,Ibindi ...,
+Notes,Inyandiko,
+Payment Gateway,Irembo ryo Kwishura,
+Payment Gateway Name,Izina rya Gateway,
+Payments,Kwishura,
+Plan Name,Izina rya gahunda,
+Portal,Urubuga,
+Scan Barcode,Suzuma Barcode,
+Some information is missing,Amakuru amwe arabuze,
+Successful,Intsinzi,
+Tools,Ibikoresho,
+Use Sandbox,Koresha Sandbox,
+Busy,Irahuze,
+Completed By,Byarangiye Na,
+Payment Failed,Kwishura byarananiranye,
+Column {0},Inkingi {0},
+Field Mapping,Ikarita yo Kumurima,
+Not Specified,Ntabwo bisobanuwe neza,
+Update Type,Ubwoko bwo Kuvugurura,
+Dr,Dr.,
+End Time,Igihe cyanyuma,
+Fetching...,Kubona ...,
+"It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","Birasa nkaho hari ikibazo hamwe na seriveri iboneza. Mugihe byananiranye, amafaranga azasubizwa kuri konte yawe.",
+Looks like someone sent you to an incomplete URL. Please ask them to look into it.,Birasa nkumuntu wohereje kuri URL ituzuye. Nyamuneka ubasabe kubireba.,
+Master,Umwigisha,
+Pay,Kwishura,
+You can also copy-paste this link in your browser,Urashobora kandi gukoporora-komatanya iyi link muri mushakisha yawe,
+Verified By,Byagenzuwe na,
+Invalid naming series (. missing) for {0},Urukurikirane rwo kwita amazina (,
+Phone Number,Numero ya terefone,
+Account SID,Konti SID,
+Global Defaults,Mburabuzi,
+Is Mandatory,Ni itegeko,
+WhatsApp,WhatsApp,
+Make a call,Hamagara,
+Approve,Emeza,
+Reject,Wange,
diff --git a/erpnext/translations/si.csv b/erpnext/translations/si.csv
index b43af74..fa6fbf0 100644
--- a/erpnext/translations/si.csv
+++ b/erpnext/translations/si.csv
@@ -113,7 +113,6 @@
 Add Items,අයිතම එකතු කරන්න,
 Add Leads,මඟ පෙන්වන්න,
 Add Multiple Tasks,බහු කාර්යයන් එකතු කරන්න,
-Add Row,ෙරෝ එකතු කරන්න,
 Add Sales Partners,විකුණුම් හවුල්කරුවන් එකතු කරන්න,
 Add Serial No,අනු අංකය එකතු කරන්න,
 Add Students,සිසුන් එක් කරන්න,
@@ -211,9 +210,7 @@
 An error occurred during the update process,යාවත්කාලීන කිරීමේ ක්රියාවලියේදී දෝශයක් ඇතිවිය,
 "An item exists with same name ({0}), please change the item group name or rename the item","අයිතමයක් ම නම ({0}) සමග පවතී, අයිතමය කණ්ඩායමේ නම වෙනස් කිරීම හෝ අයිතමය නැවත නම් කරුණාකර",
 Analyst,රස පරීක්ෂක,
-Analytics,විශ්ලේෂණ,
 Annual Billing: {0},වාර්ෂික ගෙවීම්: {0},
-Anonymous,නිර්නාමික,
 Another Budget record '{0}' already exists against {1} '{2}' and account '{3}' for fiscal year {4},{1} &#39;{2}&#39; සහ &#39;{3}&#39; ගිණුම් වර්ෂය සඳහා {0} තවත් අයවැය වාර්තාවක් {4},
 Another Period Closing Entry {0} has been made after {1},{0} {1} පසු කර තිබේ තවත් කාලය අවසාන සටහන්,
 Another Sales Person {0} exists with the same Employee id,තවත් විකුණුම් පුද්ගලයෙක් {0} එම සේවක අංකය සහිත පවතී,
@@ -283,14 +280,12 @@
 Attendance not submitted for {0} as {1} on leave.,{0} නිවාඩු නොදී {1} සඳහා ඉදිරිපත් නොකරන ලද පැමිණීම.,
 Attribute table is mandatory,ගති ලක්ෂණය වගුව අනිවාර්ය වේ,
 Attribute {0} selected multiple times in Attributes Table,ගති ලක්ෂණය {0} දන්ත ධාතුන් වගුව කිහිපවතාවක් තෝරාගත්,
-Author,කර්තෘ,
 Authorized Signatory,බලයලත් අත්සන්,
 Auto Material Requests Generated,වාහන ද්රව්ය ඉල්ලීම් උත්පාදිත,
 Auto Repeat,මෝටර් රථය නැවත නැවතත්,
 Auto repeat document updated,ස්වයං යාවත්කාලීන ලියවිල්ල යාවත්කාලීන කරන ලදි,
 Automotive,රථ,
 Available,ඇත,
-Available Leaves,පවතින ලීස්,
 Available Qty,ලබා ගත හැකි යවන ලද,
 Available Selling,විකුණා තිබේ,
 Available for use date is required,භාවිතයට ගත හැකි දිනය සඳහා අවශ්ය වේ,
@@ -340,7 +335,6 @@
 Base URL,මූලික URL,
 Based On,මත පදනම්ව,
 Based On Payment Terms,ගෙවීම් නියමයන් මත පදනම්ව,
-Basic,මූලික,
 Batch,කණ්ඩායම,
 Batch Entries,කණ්ඩායම් ඇතුළත් කිරීම්,
 Batch ID is mandatory,කණ්ඩායම හැඳුනුම්පත අනිවාර්ය වේ,
@@ -361,7 +355,6 @@
 Billable Hours,බිල් කළ හැකි පැය,
 Billed,අසූහත,
 Billed Amount,බිල්පතක් මුදල,
-Billing,බිල්පත්,
 Billing Address,බිල්පත් ලිපිනය,
 Billing Address is same as Shipping Address,බිල්පත් ලිපිනය නැව්ගත කිරීමේ ලිපිනයට සමාන වේ,
 Billing Amount,බිල්පත් ප්රමාණය,
@@ -560,7 +553,6 @@
 Consumed Qty,පරිභෝජනය යවන ලද,
 Consumer Products,පාරිභෝගික භාණ්ඩ,
 Contact,අමතන්න,
-Contact Details,ඇමතුම් විස්තර,
 Contact Us,අප අමතන්න,
 Content,අන්තර්ගත,
 Content Masters,අන්තර්ගත මාස්ටර්,
@@ -715,7 +707,6 @@
 Date of Joining,සමඟ සම්බන්ධවීම දිනය,
 Date of Joining must be greater than Date of Birth,සමඟ සම්බන්ධවීම දිනය උපන් දිනය වඩා වැඩි විය යුතුය,
 Date of Transaction,ගනුදෙනුවේ දිනය,
-Datetime,දිනය වේලාව,
 Day,දවස,
 Debit,ඩෙබිට්,
 Debit ({0}),හර ({0}),
@@ -874,7 +865,6 @@
 Employee cannot report to himself.,සේවක තමා වෙත වාර්තා කළ නොහැක.,
 Employee {0} has already applied for {1} between {2} and {3} : ,සේවකයා {0} දැනටමත් {2} සහ {3} අතර {1} සඳහා අයදුම් කර ඇත:,
 Employee {0} of grade {1} have no default leave policy,ශ්රේණියේ {1} ශ්රේණියේ සේවක {1} වල පෙරනිමි නිවාඩු ප්රතිපත්තිය නොමැත,
-Enable,සක්රිය කරන්න,
 Enable / disable currencies.,මුදල් සක්රිය කරන්න / අක්රිය කරන්න.,
 Enabled,සක්රීය,
 "Enabling 'Use for Shopping Cart', as Shopping Cart is enabled and there should be at least one Tax Rule for Shopping Cart","සාප්පු සවාරි කරත්ත සක්රීය වේ පරිදි, &#39;&#39; කරත්තයක් සඳහා භාවිතා කරන්න &#39;සක්රීය කිරීම හා ෂොපිං කරත්ත සඳහා අවම වශයෙන් එක් බදු පාලනය කිරීමට හැකි විය යුතුය",
@@ -905,7 +895,6 @@
 Error: Not a valid id?,දෝෂය: වලංගු id නොවේ ද?,
 Estimated Cost,තක්සේරු කළ පිරිවැය,
 "Even if there are multiple Pricing Rules with highest priority, then following internal priorities are applied:","ඉහළම ප්රමුඛත්වය සමග බහු මිල නියම රීති තිබිය දී පවා, නම්, පහත සඳහන් අභ්යන්තර ප්රමුඛතා අයදුම් කර ඇත:",
-Event,උත්සවය,
 Exchange Gain/Loss,විනිමය ලාභ / අඞු කිරීමට,
 Exchange Rate Revaluation master.,විනිමය අනුපාත නැවත ඇගයීමේ මාස්ටර්.,
 Exchange Rate must be same as {0} {1} ({2}),විනිමය අනුපාතය {0} ලෙස {1} සමාන විය යුතු ය ({2}),
@@ -1032,7 +1021,6 @@
 From value must be less than to value in row {0},වටිනාකම පේළිය {0} අගය කිරීමට වඩා අඩු විය යුතුය,
 From {0} | {1} {2},{0} සිට | {1} {2},
 Fulfillment,ඉටු වීම,
-Full,පූර්ණ,
 Full Name,සම්පූර්ණ නම,
 Fully Depreciated,සම්පූර්ණෙයන් ක්ෂය,
 Furnitures and Fixtures,ගෘහ භාණ්ඞ සහ සවිකිරීම්,
@@ -1133,7 +1121,6 @@
 Hub Sync ID,Hub Sync ID,
 Human Resource,මානව සම්පත්,
 Human Resources,මානව සම්පත්,
-IFSC Code,IFSC සංග්රහය,
 IGST Amount,IGST මුදල,
 IP Address,IP ලිපිනය,
 ITC Available (whether in full op part),ITC ලබා ගත හැකිය (පූර්ණ වශයෙන් වුවද),
@@ -1185,7 +1172,6 @@
 Ineligible ITC,නුසුදුසු අයිටීසී,
 Initiated,ආරම්භ,
 Inpatient Record,රෝගියාගේ වාර්තාව,
-Insert,ඇතුළු කරන්න,
 Installation Note,ස්ථාපන සටහන,
 Installation Note {0} has already been submitted,ස්ථාපන සටහන {0} දැනටමත් ඉදිරිපත් කර ඇති,
 Installation date cannot be before delivery date for Item {0},ස්ථාපනය දිනය අයිතමය {0} සඳහා බෙදාහැරීමේ දිනට පෙර විය නොහැකි,
@@ -1197,7 +1183,6 @@
 Insurance Start date should be less than Insurance End date,රක්ෂණ අරඹන්න දිනය රක්ෂණ අවසාන දිනය වඩා අඩු විය යුතුය,
 Integrated Tax,ඒකාබද්ධ බද්ද,
 Inter-State Supplies,අන්තර් රාජ්ය සැපයුම්,
-Interests,උනන්දුව දක්වන ක්ෂෙත්ර:,
 Internet Publishing,අන්තර්ජාල ප්රකාශන,
 Intra-State Supplies,අන්තර් රාජ්‍ය සැපයුම්,
 Introduction,හැදින්වීම,
@@ -1316,7 +1301,6 @@
 Lab testing datetime cannot be before collection datetime,පරීක්ෂණ කාලය datetime ලේබල් පරික්ෂා කිරීම datetime පෙර විය නොහැක,
 Label,ලේබලය,
 Laboratory,විද්යාගාරය,
-Language Name,භාෂා නම,
 Large,මහා,
 Last Communication,පසුගිය සන්නිවේදන,
 Last Communication Date,පසුගිය සන්නිවේදන දිනය,
@@ -1347,8 +1331,6 @@
 Letter Heads for print templates.,මුද්රණය සැකිලි සඳහා ලිපිය ධා.,
 Level,මට්ටමින්,
 Liability,වගකීම්,
-License,බලපත්රය,
-Limit,සීමාව,
 Limit Crossed,සීමාව ඉක්මවා ගොස්,
 Link to Material Request,ද්රව්ය ඉල්ලීම සම්බන්ධ කිරීම,
 List of all share transactions,සියලුම කොටස් ගනුදෙනු ලැයිස්තුව,
@@ -1359,7 +1341,6 @@
 Loans (Liabilities),ණය (වගකීම්),
 Loans and Advances (Assets),"ණය හා අත්තිකාරම්, (වත්කම්)",
 Local,දේශීය,
-Log,ලඝු,
 Logs for maintaining sms delivery status,කෙටි පණිවිඩ බෙදා හැරීමේ තත්වය පවත්වා ගෙන යාම සඳහා ලඝු-සටහන්,
 Lost,අහිමි,
 Lost Reasons,නැතිවූ හේතු,
@@ -1445,7 +1426,6 @@
 Medical Department,වෛද්ය දෙපාර්තමේන්තුව,
 Medical Record,වෛද්ය වාර්තාව,
 Medium,මධ්යම,
-Meeting,රැස්වීම,
 Member Activity,සාමාජික ක්රියාකාරිත්වය,
 Member ID,සාමාජික හැඳුනුම්පත,
 Member Name,සාමාජික නම,
@@ -1495,7 +1475,6 @@
 Multiple Variants,බහු ප්රභේද,
 Multiple fiscal years exist for the date {0}. Please set company in Fiscal Year,දිනය {0} සඳහා බහු පිස්කල් අවුරුදු පවතී. රාජ්ය මූල්ය වර්ෂය තුළ දී සමාගමේ සකස් කරන්න,
 Music,සංගීත,
-My Account,මගේ ගිණුම,
 Name error: {0},නම දෝෂය: {0},
 Name of new Account. Note: Please don't create accounts for Customers and Suppliers,නව ගිණුම් නම. සටහන: පාරිභෝගිකයින් සහ සැපයුම්කරුවන් සඳහා ගිණුම් නිර්මාණය කරන්න එපා,
 Name or Email is mandatory,නම හෝ විද්යුත් අනිවාර්ය වේ,
@@ -1538,7 +1517,6 @@
 New credit limit is less than current outstanding amount for the customer. Credit limit has to be atleast {0},නව ණය සීමාව පාරිභෝගික වත්මන් හිඟ මුදල වඩා අඩු වේ. ණය සීමාව බෙ {0} විය යුතුය,
 New task,නව කාර්ය,
 New {0} pricing rules are created,නව {0} මිල නියමයන් සාදනු ලැබේ,
-Newsletters,පුවත් ලිපි,
 Newspaper Publishers,පුවත්පත් ප්රකාශකයින්ගේ,
 Next,ඊලඟ,
 Next Contact By cannot be same as the Lead Email Address,ඊළඟ අමතන්න වන විට පෙරමුණ විද්යුත් තැපැල් ලිපිනය ලෙස සමාන විය නොහැකි,
@@ -1686,7 +1664,6 @@
 Other,වෙනත්,
 Other Reports,වෙනත් වාර්තා,
 "Other outward supplies(Nil rated,Exempted)","වෙනත් බාහිර සැපයුම් (නිල් ශ්‍රේණිගත, නිදහස්)",
-Others,අන් අය,
 Out Qty,යවන ලද අතරින්,
 Out Value,අගය පෙන්වා,
 Out of Order,ක්රියාවිරහිත වී ඇත,
@@ -1726,7 +1703,6 @@
 Party Type and Party is mandatory for {0} account,පක්ෂ වර්ගය සහ පක්ෂය {0} ගිණුමට අනිවාර්ය වේ,
 Party Type is mandatory,පක්ෂය වර්ගය අනිවාර්ය වේ,
 Party is mandatory,පක්ෂය අනිවාර්ය වේ,
-Password,මුරපදය,
 Past Due Date,කල් ඉකුත්වන දිනය,
 Patient,රෝගියා,
 Patient Appointment,රෝගීන් පත්කිරීම,
@@ -1784,7 +1760,6 @@
 Pharmaceutical,ඖෂධ,
 Pharmaceuticals,ඖෂධ,
 Physician,වෛද්යවරයෙක්,
-Pincode,Pincode,
 Place Of Supply (State/UT),සැපයුම් ස්ථානය (රාජ්‍ය / යූටී),
 Place Order,ඇනවුම කරන්න,
 Plan Name,සැලසුම් නම,
@@ -1896,7 +1871,6 @@
 Please select date,කරුණාකර දිනය තෝරන්න,
 Please select item code,කරුණාකර අයිතමය කේතය තෝරා,
 Please select month and year,කරුණාකර වසර සහ මාසය තෝරා,
-Please select prefix first,කරුණාකර පළමු උපසර්ගය තෝරා,
 Please select the Company,කරුණාකර සමාගම තෝරා ගන්න,
 Please select the Multiple Tier Program type for more than one collection rules.,එකතු කිරීමේ නීති වලට වඩා වැඩි ගණනක් සඳහා කරුණාකර බහු ස්ථරයේ වැඩසටහන් වර්ගය තෝරන්න.,
 Please select the assessment group other than 'All Assessment Groups',කරුණාකර &#39;සියලුම තක්සේරු කණ්ඩායම්&#39; හැර වෙනත් තක්සේරු කණ්ඩායම තෝරන්න,
@@ -1913,7 +1887,6 @@
 Please set Company filter blank if Group By is 'Company',පිරිසක් විසින් &#39;සමාගම&#39; නම් හිස් පෙරීමට සමාගම සකස් කරන්න,
 Please set Default Payroll Payable Account in Company {0},සමාගම {0} හි පෙරනිමි වැටුප් ගෙවිය යුතු ගිණුම් සකස් කරන්න,
 Please set Depreciation related Accounts in Asset Category {0} or Company {1},වත්කම් ප්රවර්ගය {0} හෝ සමාගම {1} තුළ ක්ෂය සම්බන්ධ ගිණුම් සකස් කරන්න,
-Please set Email Address,විද්යුත් තැපැල් ලිපිනය සකස් කරන්න,
 Please set GST Accounts in GST Settings,කරුණාකර GST සැකසුම් තුළ GST ගිණුම සකසන්න,
 Please set Hotel Room Rate on {},කරුණාකර හෝටල් කාමර ගාස්තු {{,
 Please set Number of Depreciations Booked,වෙන් කරවා අගය පහත සංඛ්යාව සකස් කරන්න,
@@ -1936,7 +1909,6 @@
 Please set the Email ID for the Student to send the Payment Request,කරුණාකර ගෙවීම් ඉල්ලීම යැවීමට ශිෂ්ය හැඳුනුම්පත සකසන්න,
 Please set the Item Code first,කරුණාකර අයිතම කේතය මුලින්ම සකසන්න,
 Please set the Payment Schedule,කරුණාකර ගෙවීම් කාලසටහන සකසන්න,
-Please set the series to be used.,කරුණාකර භාවිතා කරන මාලාව සකසන්න.,
 Please set {0} for address {1},කරුණාකර {0} ලිපිනයට {0},
 Please setup Students under Student Groups,ශිෂ්ය කණ්ඩායම් යටතේ සිසුන් හදන්න,
 Please specify Company,සමාගම සඳහන් කරන්න,
@@ -1953,7 +1925,6 @@
 Point-of-Sale,පේදුරු-of-Sale විකිණීමට,
 Point-of-Sale Profile,පේදුරු-of-Sale විකිණීමට නරඹන්න,
 Portal,ද්වාරය,
-Portal Settings,ද්වාරය සැකසුම්,
 Possible Supplier,හැකි සැපයුම්කරු,
 Postal Expenses,තැපැල් වියදම්,
 Posting Date,"ගිය තැන, දිනය",
@@ -2152,12 +2123,10 @@
 Reference No is mandatory if you entered Reference Date,ධව ඔබ විමර්ශන දිනය ඇතුළු නම් කිසිම අනිවාර්ය වේ,
 Reference No.,ෙයොමු අංකය,
 Reference Number,යොමු අංකය,
-Reference Owner,විමර්ශන න,
 Reference Type,විමර්ශන වර්ගය,
 "Reference: {0}, Item Code: {1} and Customer: {2}","මූලාශ්ර: {0}, අයිතමය සංකේතය: {1} සහ පාරිභෝගික: {2}",
 References,ආශ්රිත,
 Refresh Token,නැවුම් කරන්න ටෝකනය,
-Region,කලාපයේ,
 Register,ලියාපදිංචි වන්න,
 Rejected,ප්රතික්ෂේප,
 Related,ආශ්රිත,
@@ -2179,7 +2148,6 @@
 Replace BOM and update latest price in all BOMs,BOM ආකෘති වෙනුවට නවීනතම අළුත් යාවත්කාලීන කිරීම,
 Replied,ප්රතිචාර ලද්දේ,
 Report,වාර්තාව,
-Report Builder,වාර්තාව Builder,
 Report Type,වර්ගය වාර්තාව,
 Report Type is mandatory,වර්ගය වාර්තාව අනිවාර්ය වේ,
 Reports,වාර්තා,
@@ -2355,13 +2323,11 @@
 Same Company is entered more than once,එම සමාගම එක් වරකට වඩා ඇතුලත් කර,
 Same item cannot be entered multiple times.,එම අයිතමය වාර කිහිපයක් ඇතුළත් කළ නොහැක.,
 Same supplier has been entered multiple times,අදාළ සැපයුම්කරු කිහිපවතාවක් ඇතුලත් කර ඇත,
-Sample,නියැදි,
 Sample Collection,සාම්පල එකතුව,
 Sample quantity {0} cannot be more than received quantity {1},සාම්පල ප්රමාණය {0} ප්රමාණයට වඩා වැඩි විය නොහැක {1},
 Sanctioned,අනුමත,
 Sand,වැලි,
 Saturday,සෙනසුරාදා,
-Saved,දිවි ගළවාගත්,
 Saving {0},සුරකින්න {0},
 Scan Barcode,තීරු කේතය පරිලෝකනය කරන්න,
 Schedule,උපෙල්ඛනෙය්,
@@ -2463,7 +2429,6 @@
 Series Updated,මාලාවක් යාවත්කාලීන කිරීම,
 Series Updated Successfully,මාලාවක් සාර්ථකව යාවත්කාලීන කිරීම,
 Series is mandatory,මාලාවක් අනිවාර්ය වේ,
-Series {0} already used in {1},මාලාවක් {0} දැනටමත් {1} භාවිතා,
 Service,සේවය,
 Service Level Agreement,සේවා මට්ටමේ ගිවිසුම,
 Service Level Agreement.,සේවා මට්ටමේ ගිවිසුම.,
@@ -2479,7 +2444,6 @@
 Set Tax Rule for shopping cart,කරත්තයක් සඳහා බදු පාලනය සකසන්න,
 Set as Closed,සංවෘත ලෙස සකසන්න,
 Set as Completed,සම්පුර්ණ කළ ලෙස සකසන්න,
-Set as Default,පෙරනිමි ලෙස සකසන්න,
 Set as Lost,ලොස්ට් ලෙස සකසන්න,
 Set as Open,විවෘත ලෙස සකසන්න,
 Set default inventory account for perpetual inventory,භාණ්ඩ තොගය සඳහා සකසන්න පෙරනිමි බඩු තොග ගිණුමක්,
@@ -2511,7 +2475,6 @@
 Shareholder,කොටස්කරු,
 Ship To State,නැව් රාජ්යය,
 Shipments,භාණ්ඩ නිකුත් කිරීම්,
-Shipping,නාවික,
 Shipping Address,බෙදාහැරීමේ ලිපිනය,
 "Shipping Address does not have country, which is required for this Shipping Rule",නැව්ගත කිරීමේ ලියවිල්ලට මෙම නැව් රෙගුලාසියට අවශ්ය වන රටක් නොමැත,
 Shipping rule only applicable for Buying,නැව්ගත කිරීමේ නීතිය මිලට ගැනීම සඳහා පමණි,
@@ -2564,7 +2527,6 @@
 Split Batch,භේදය කණ්ඩායම,
 Split Issue,බෙදීම් නිකුත් කිරීම,
 Sports,ක්රීඩා,
-Standard,සම්මත,
 Standard Buying,සම්මත මිලට ගැනීම,
 Standard Selling,සම්මත විකිණීම,
 Standard contract terms for Sales or Purchase.,විකුණුම් හෝ මිළදී සඳහා සම්මත කොන්ත්රාත් කොන්දේසි.,
@@ -2731,7 +2693,6 @@
 Terms and Conditions,නියම සහ කොන්දේසි,
 Terms and Conditions Template,නියමයන් හා කොන්දේසි සැකිල්ල,
 Territory,භූමි ප්රදේශය,
-Test,ටෙස්ට්,
 Thank you for your business!,ඔබේ ව්යාපාරය සඳහා ඔබට ස්තුතියි!,
 The 'From Package No.' field must neither be empty nor it's value less than 1.,"&#39;පැකේජ අංකය&#39; ක්ෂේත්රයේ හිස්ව තිබිය යුතු නැත, එය 1 ට වඩා අඩු අගයක් විය යුතුය.",
 The Brand,සන්නාම,
@@ -2848,7 +2809,6 @@
 Total (Without Tax),මුළු (බදු රහිත),
 Total Achieved,මුළු ලබාගත්,
 Total Actual,මුළු තත,
-Total Allocated Leaves,සමස්ථ වෙන් කළ කොළ,
 Total Amount,මුලු වටිනාකම,
 Total Amount Credited,මුළු මුදල අයකෙරේ,
 Total Applicable Charges in Purchase Receipt Items table must be same as Total Taxes and Charges,මිලදී ගැනීම රිසිට්පත අයිතම වගුවේ මුළු අදාළ ගාස්තු මුළු බදු හා ගාස්තු ලෙස එම විය යුතුය,
@@ -2892,7 +2852,6 @@
 Total(Amt),එකතුව (ඒඑම්ටී),
 Total(Qty),එකතුව (යවන ලද),
 Traceability,පාලනයන් යනාදී,
-Traceback,traceback,
 Track Leads by Lead Source.,මූලාශ්ර ප්රභවයෙන් මඟ පෙන්වීම,
 Transaction,ගනුදෙනු,
 Transaction Date,ගනුදෙනු දිනය,
@@ -2930,7 +2889,6 @@
 UOM Conversion factor is required in row {0},UOM පරිවර්තනය සාධකය පේළිය {0} අවශ්ය කරන්නේ,
 UOM coversion factor required for UOM: {0} in Item: {1},UOM සඳහා අවශ්ය UOM coversion සාධකය: අයිතම ගැන {0}: {1},
 URL,URL එක,
-Unable to find DocType {0},DocType සොයා ගැනීමට නොහැකි විය {0},
 Unable to find exchange rate for {0} to {1} for key date {2}. Please create a Currency Exchange record manually,"ප්රධාන දිනය {2} සඳහා {1} කර ගැනීම සඳහා, {0} සඳහා විනිමය අනුපාතය සොයා ගැනීමට නොහැකි විය. මුදල් හුවමාරු වාර්තා අතින් නිර්මාණය කරන්න",
 Unable to find score starting at {0}. You need to have standing scores covering 0 to 100,{0} ආරම්භ කිරීමේ ලකුණු සොයාගත නොහැක. ඔබ 0 සිට 100 ආවරණ මට්ටමේ සිට ස්ථීර ලකුණු තිබිය යුතුය,
 Unable to find variable: ,විචල්යය සොයා ගත නොහැක:,
@@ -2960,7 +2918,6 @@
 Upload your letter head and logo. (you can edit them later).,ඔබේ ලිපිය හිස සහ ලාංඡනය උඩුගත කරන්න. (ඔබ ඔවුන්ට පසුව සංස්කරණය කළ හැකි).,
 Upper Income,ඉහළ ආදායම්,
 Use Sandbox,වැලිපිල්ල භාවිතා,
-Used Leaves,පාවිච්චි කළ කොළ,
 User,පරිශීලක,
 User ID,පරිශීලක ID,
 User ID not set for Employee {0},සේවක {0} සඳහා පරිශීලක අනන්යාංකය පිහිටුවා නැත,
@@ -3051,7 +3008,6 @@
 Website Settings,වෙබ් අඩවිය සැකසුම්,
 Wednesday,බදාදා,
 Week,සතිය,
-Weekdays,සතියේ දිනවල,
 Weekly,සතිපතා,
 "Weight is mentioned,\nPlease mention ""Weight UOM"" too","සිරුරේ බර සඳහන් වන්නේ, \ n කරුණාකර &quot;සිරුරේ බර UOM&quot; ගැන සඳහන් ද",
 Welcome email sent,ඔබ සාදරයෙන් පිළිගනිමු ඊ-තැපැල් යවන,
@@ -3072,7 +3028,6 @@
 Work Order {0} must be submitted,වැඩ පිළිවෙළ {0} ඉදිරිපත් කළ යුතුය,
 Work Orders Created: {0},රැකියා ඇණවුම් නිර්මාණය: {0},
 Work-in-Progress Warehouse is required before Submit,සිදු වෙමින් පවතින වැඩ ගබඩාව පෙර ඉදිරිපත් අවශ්ය වේ,
-Workflow,කාර්ය ප්රවාහ,
 Working,කම්කරු,
 Working Hours,වැඩ කරන පැය,
 Workstation,සේවා පරිගණකයක්,
@@ -3102,7 +3057,6 @@
 You need to be a user other than Administrator with System Manager and Item Manager roles to register on Marketplace.,ඔබ Marketplace හි ලියාපදිංචි වීම සඳහා පද්ධති කළමනාකරු සහ අයිතම කළමනාකරුගේ භූමිකාවන් සමඟ පරිපාලක හැර වෙනත් පරිශීලකයෙකු විය යුතුය.,
 You need to be a user with System Manager and Item Manager roles to add users to Marketplace.,පරිශීලකයින් Marketplace වෙත එකතු කිරීම සඳහා ඔබට පද්ධති කළමණාකරු සහ අයිතම කළමනාකරුගේ භූමිකාවන් සමඟ භාවිතා කරන්නෙකු විය යුතුය.,
 You need to be a user with System Manager and Item Manager roles to register on Marketplace.,ඔබ Marketplace හි ලියාපදිංචි වීමට System Manager සහ අයිතම කළමනාකරුගේ භූමිකාවන් සමඟ භාවිතා කරන්නෙකු විය යුතුය.,
-You need to be logged in to access this page,ඔබ විසින් මෙම පිටුව වෙත ප්රවේශ වීමට ලොගින් වී කළ යුතු,
 You need to enable Shopping Cart,ඔබ සාප්පු සවාරි කරත්ත සක්රිය කර ගැනීමට අවශ්ය,
 You will lose records of previously generated invoices. Are you sure you want to restart this subscription?,කලින් ජනනය කළ ඉන්වොයිසිවල වාර්තා ඔබ අහිමි වනු ඇත. මෙම දායකත්වය නැවත ආරම්භ කිරීමට අවශ්ය බව ඔබට විශ්වාසද?,
 Your Organization,ඔබේ සංවිධානය,
@@ -3218,7 +3172,6 @@
 Assigned To,කිරීම සඳහා පවරා,
 Chat,චැට්,
 Completed By,විසින් සම්පූර්ණ,
-County,කවුන්ටි,
 Day of Week,සතියේ දින,
 "Dear System Manager,","හිතවත් පද්ධතිය කළමනාකරු,",
 Default Value,පෙරනිමි අගය,
@@ -3229,31 +3182,21 @@
 Fieldtype,Fieldtype,
 Help Articles,උදවු ලිපි,
 ID,හැඳුනුම්පත,
-Images,රූප,
 Import,ආනයන,
 Language,භාෂාව,
 Likes,වැන්නන්,
 Merge with existing,දැනට පවතින සමඟ ඒකාබද්ධ වීමේ,
-Office,කාර්යාල,
 Orientation,දිශානතිය,
 Parent,මව්,
-Passive,උදාසීන,
 Payment Failed,ගෙවීම් අසාර්ථක විය,
-Permanent,ස්ථිර,
 Personal,පුද්ගලික,
-Plant,ශාක,
 Post,තැපැල්,
-Postal,තැපැල්,
 Postal Code,තැපැල් කේතය,
-Previous,කලින්,
 Provider,සපයන්නා,
 Read Only,පමණක් කියවන්න,
 Recipient,පලමු වරට පිරිනැමු,
 Reviews,සමාලෝචන,
 Sender,යවන්නාගේ,
-Shop,වෙළඳසැල්,
-Subsidiary,අනුබද්ධිත සමාගමක්,
-There is some problem with the file url: {0},ගොනුව url එක සමග යම් ගැටළුවක් වේ: {0},
 There were errors while sending email. Please try again.,ඊ-තැපැල් යැවීම අතර දෝෂ ඇතිවිය. කරුණාකර නැවත උත්සාහ කරන්න.,
 Values Changed,වෙනස් අගයන්,
 or,හෝ,
@@ -3280,19 +3223,16 @@
 Quality Feedback Template,ගුණාත්මක ප්‍රතිපෝෂණ ආකෘතිය,
 Rules for applying different promotional schemes.,විවිධ ප්‍රවර්ධන යෝජනා ක්‍රම යෙදීම සඳහා නීති.,
 Show {0},{0 Show පෙන්වන්න,
-"Special Characters except '-', '#', '.', '/', '{{' and '}}' not allowed in naming series {0}","&quot;-&quot;, &quot;#&quot;, &quot;.&quot;, &quot;/&quot;, &quot;{{&quot; සහ &quot;}}&quot; හැර විශේෂ අක්ෂර නම් කිරීමේ ශ්‍රේණියේ අවසර නැත {0}",
 Target Details,ඉලක්ක විස්තර,
 {0} already has a Parent Procedure {1}.,{0} දැනටමත් දෙමාපිය ක්‍රියා පටිපාටියක් ඇත {1}.,
 API,API,
 Annual,වාර්ෂික,
 Change,වෙනස්,
 Contact Email,අප අමතන්න විද්යුත්,
-Export Type,අපනයන වර්ගය,
 From Date,දින සිට,
 Group By,කණ්ඩායම විසින්,
 Invalid URL,වලංගු නැති URL,
 Landscape,භූ දර්ශනය,
-Last Sync On,අවසාන සමමුහුර්ත කිරීම,
 Naming Series,ශ්රේණි අනුප්රාප්තිකයා නම් කිරීම,
 No data to export,අපනයනය කිරීමට දත්ත නොමැත,
 Portrait,ආලේඛ්‍ය චිත්‍රය,
@@ -3302,7 +3242,6 @@
 Show Document,ලේඛනය පෙන්වන්න,
 Show Traceback,ලුහුබැඳීම පෙන්වන්න,
 Video,වීඩියෝ,
-Webhook Secret,වෙබ්හුක් රහස,
 % Of Grand Total,මුළු එකතුවෙන්%,
 <b>Company</b> is a mandatory filter.,<b>සමාගම</b> අනිවාර්ය පෙරණයකි.,
 <b>From Date</b> is a mandatory filter.,<b>දිනය සිට</b> අනිවාර්ය පෙරණයකි.,
@@ -3358,7 +3297,6 @@
 BOM Comparison Tool,BOM සංසන්දනාත්මක මෙවලම,
 BOM recursion: {0} cannot be child of {1},BOM පුනරාවර්තනය: {0 {{1 child හි දරුවෙකු විය නොහැක,
 BOM recursion: {0} cannot be parent or child of {1},BOM පුනරාවර්තනය: {0 parent දෙමව්පියන් හෝ {1 of දරුවෙකු විය නොහැක,
-Back to Home,නැවත ගෙදරට,
 Back to Messages,පණිවිඩ වෙත ආපසු,
 Bank Data mapper doesn't exist,බැංකු දත්ත සිතියම්කරුවා නොපවතී,
 Bank Details,බැංකු තොරතුරු,
@@ -3420,7 +3358,6 @@
 Currency,මුදල්,
 Current Status,දැනට පවතින තත්වය,
 Customer PO,පාරිභෝගික තැ.පෙ.,
-Customize,රිසිකරණය,
 Daily,දිනපතා,
 Date,දිනය,
 Date of Birth cannot be greater than Joining Date.,උපන් දිනය සම්බන්ධ වන දිනයට වඩා වැඩි විය නොහැක.,
@@ -3454,7 +3391,6 @@
 ERPNext could not find any matching payment entry,ERPNext හට ගැලපෙන ගෙවීම් ප්‍රවේශයක් සොයාගත නොහැකි විය,
 Earliest Age,මුල්ම වයස,
 Edit Details,විස්තර සංස්කරණය කරන්න,
-Edit Profile,සංස්කරණය කරන්න නරඹන්න,
 Either GST Transporter ID or Vehicle No is required if Mode of Transport is Road,ප්‍රවාහන ක්‍රමය මාර්ගයක් නම් ජීඑස්ටී ට්‍රාන්ස්පෝටර් හැඳුනුම්පත හෝ වාහන අංකය අවශ්‍ය නොවේ,
 Email,විද්යුත් තැපෑල,
 Email Campaigns,ඊමේල් ව්‍යාපාර,
@@ -3482,7 +3418,6 @@
 Fetch Items from Warehouse,ගබඩාවෙන් අයිතම ලබා ගන්න,
 Fetching...,ලබා ගැනීම ...,
 Field,ක්ෂේත්ර,
-File Manager,ගොනුව කළමනාකරු,
 Filters,පෙරහන්,
 Finding linked payments,සම්බන්ධිත ගෙවීම් සොයා ගැනීම,
 Fleet Management,රථ වාහන කළමනාකරණය,
@@ -3521,7 +3456,6 @@
 Incorrect Warehouse,වැරදි ගබඩාව,
 Invalid Barcode. There is no Item attached to this barcode.,වලංගු නොවන තීරු කේතය. මෙම තීරු කේතයට කිසිදු අයිතමයක් අමුණා නැත.,
 Invalid credentials,අවලංගු අක්තපත්‍ර,
-Invite as User,පරිශීලක ලෙස ආරාධනා,
 Issue Priority.,ප්‍රමුඛතාවය නිකුත් කරන්න.,
 Issue Type.,නිකුත් කිරීමේ වර්ගය.,
 "It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","සර්වරයේ තීරු වින්යාසය සමඟ ගැටළුවක් පවතින බව පෙනේ. අසාර්ථකත්වයේ දී, එම මුදල ඔබේ ගිණුමට නැවත ලබා දෙනු ඇත.",
@@ -3564,7 +3498,6 @@
 New Invoice,නව ඉන්වොයිසිය,
 New Payment,නව ගෙවීම,
 New release date should be in the future,නව මුදාහැරීමේ දිනය අනාගතයේදී විය යුතුය,
-Newsletter,පුවත් ලිපියක්,
 No Account matched these filters: {},මෙම පෙරහන් සමඟ කිසිදු ගිණුමක් නොගැලපේ: {},
 No communication found.,සන්නිවේදනයක් හමු නොවීය.,
 No correct answer is set for {0},Answer 0 for සඳහා නිවැරදි පිළිතුරක් සකසා නොමැත,
@@ -3640,7 +3573,6 @@
 Please setup a default bank account for company {0},කරුණාකර company 0 company සමාගම සඳහා සුපුරුදු බැංකු ගිණුමක් සකසන්න,
 Please specify,සඳහන් කරන්න,
 Please specify a {0},කරුණාකර {0} සඳහන් කරන්න,lead
-Printing,මුද්රණ,
 Priority,ප්රමුඛ,
 Priority has been changed to {0}.,ප්‍රමුඛතාවය {0 to ලෙස වෙනස් කර ඇත.,
 Priority {0} has been repeated.,ප්‍රමුඛතා {0} නැවත නැවතත් කර ඇත.,
@@ -3649,7 +3581,6 @@
 Project,ව්යාපෘති,
 Provide the academic year and set the starting and ending date.,අධ්‍යයන වර්ෂය ලබා දී ආරම්භක හා අවසන් දිනය නියම කරන්න.,
 Public token is missing for this bank,මෙම බැංකුව සඳහා පොදු ටෝකනයක් නොමැත,
-Publish,පළ කරන්න,
 Publish 1 Item,1 අයිතමය ප්රකාශයට පත් කරන්න,
 Publish Items,අයිතම ප්‍රකාශයට පත් කරන්න,
 Publish More Items,තවත් අයිතම ප්‍රකාශයට පත් කරන්න,
@@ -3677,7 +3608,6 @@
 Reconciled,ප්‍රතිසන්ධානය,
 Recruitment,බඳවා ගැනීම,
 Red,රතු,
-Refreshing,ප්රබෝධමත්,
 Release date must be in the future,මුදා හැරීමේ දිනය අනාගතයේදී විය යුතුය,
 Relieving Date must be greater than or equal to Date of Joining,සහන දිනය එක්වන දිනයට වඩා වැඩි හෝ සමාන විය යුතුය,
 Rename,නැවත නම් කරන්න,
@@ -3721,7 +3651,6 @@
 Search for a payment,ගෙවීමක් සොයන්න,
 Search for anything ...,ඕනෑම දෙයක් සොයන්න ...,
 Search results for,සඳහා ගවේෂණ ප්රතිඵල,
-Select All,සියලු තෝරන්න,
 Select Difference Account,වෙනස ගිණුම තෝරන්න,
 Select a Default Priority.,පෙරනිමි ප්‍රමුඛතාවයක් තෝරන්න.,
 Select a company,සමාගමක් තෝරන්න,
@@ -3740,11 +3669,9 @@
 Service Level Agreement has been changed to {0}.,සේවා මට්ටමේ ගිවිසුම {0 to දක්වා වෙනස් කර ඇත.,
 Service Level Agreement was reset.,සේවා මට්ටමේ ගිවිසුම යළි පිහිටුවන ලදි.,
 Service Level Agreement with Entity Type {0} and Entity {1} already exists.,ආයතන වර්ගය {0} සහ ආයතන {1 with සමඟ සේවා මට්ටමේ ගිවිසුම දැනටමත් පවතී.,
-Set,set,
 Set Meta Tags,මෙටා ටැග් සකසන්න,
 Set {0} in company {1},සමාගම තුළ {0 Set සකසන්න {1},
 Setup,පිහිටුවීම,
-Setup Wizard,පිහිටුවීමේ කාර්ය්ය,
 Shift Management,මාරුව කළමනාකරණය,
 Show Future Payments,අනාගත ගෙවීම් පෙන්වන්න,
 Show Linked Delivery Notes,සම්බන්ධිත බෙදා හැරීමේ සටහන් පෙන්වන්න,
@@ -3815,7 +3742,6 @@
 Unreconciled,එකඟ නොවූ,
 Unsupported GST Category for E-Way Bill JSON generation,ඊ-වේ බිල් JSON උත්පාදනය සඳහා සහාය නොදක්වන ජීඑස්ටී කාණ්ඩය,
 Update,යාවත්කාලීන,
-Update Details,විස්තර යාවත්කාලීන කරන්න,
 Update Taxes for Items,අයිතම සඳහා බදු යාවත්කාලීන කරන්න,
 "Upload a bank statement, link or reconcile a bank account","බැංකු ප්‍රකාශයක් උඩුගත කරන්න, බැංකු ගිණුමක් සම්බන්ධ කරන්න හෝ ප්‍රතිසන්ධානය කරන්න",
 Upload a statement,ප්‍රකාශයක් උඩුගත කරන්න,
@@ -3839,7 +3765,6 @@
 XML Files Processed,XML ගොනු සැකසූ,
 Year,අවුරුදු,
 Yearly,වාර්ෂිකව,
-You,ඔබට,
 You are not allowed to enroll for this course,මෙම පා .මාලාවට ඇතුළත් වීමට ඔබට අවසර නැත,
 You are not enrolled in program {0},ඔබ program 0 program වැඩසටහනට ඇතුළත් කර නොමැත,
 You can Feature upto 8 items.,ඔබට අයිතම 8 ක් දක්වා විශේෂාංග කළ හැකිය.,
@@ -3856,7 +3781,6 @@
 e-Way Bill already exists for this document,මෙම ලේඛනය සඳහා ඊ-වේ බිල්පත දැනටමත් පවතී,
 woocommerce - {0},woocommerce - {0},
 {0} Coupon used are {1}. Allowed quantity is exhausted,භාවිතා කරන කූපන් {1 are වේ. අවසර ලත් ප්‍රමාණය අවසන්,
-{0} Name,{0} නම,
 {0} Operations: {1},{0} මෙහෙයුම්: {1},
 {0} bank transaction(s) created,{0} බැංකු ගනුදෙනු (ය) නිර්මාණය කරන ලදි,
 {0} bank transaction(s) created and {1} errors,{0} බැංකු ගනුදෙනු (ය) නිර්මාණය කර ඇති අතර {1} දෝෂ,
@@ -3875,17 +3799,13 @@
 Total Income,මුළු ආදායම,
 Total Income This Year,මේ වසරේ මුළු ආදායම,
 Barcode,තීරු කේතය,
-Bold,නිර්භීත,
-Center,මධ්යස්ථානය,
 Clear,පැහැදිලිව,
-Comment,අදහස් දක්වන්න,
 Comments,අදහස්,
 DocType,DocType,
 Download,බාගත,
 Left,වම්,
 Link,සබැඳිය,
 New,අලුත්,
-Not Found,සොයා ගත නොහැක,
 Print,මුද්‍රණය කරන්න,
 Reference Name,යොමු නම,
 Refresh,නැවුම් කරන්න,
@@ -3908,7 +3828,6 @@
 Email Id,ඊ-තැපැල් හැඳුනුම්පත,
 No,නැත,
 Reference Doctype,විමර්ශන DocType,
-User Id,පරිශීලක ID,
 Yes,ඔව්,
 Actual ,සැබෑ,
 Add to cart,ගැලට එක් කරන්න,
@@ -4304,7 +4223,6 @@
 e.g Adjustments for:,නිද.,
 Section Subtotal,උප වගන්තිය,
 Section Footer,පාද පාදකය,
-Position,පිහිටීම,
 Cash Flow Mapping,මුදල් ප්රවාහ සිතියම්කරණය,
 Select Maximum Of 1,1 උපරිම තෝරන්න,
 Is Finance Cost,මූල්ය පිරිවැය,
@@ -4936,7 +4854,6 @@
 Previous Business Day,පසුගිය ව්යාපාරික දිනය,
 Next Business Day,ඊළඟ ව්යාපාරික දිනය,
 Urgent,හදිසි,
-Crop,බෝග,
 Crop Name,බෝග නම,
 Scientific Name,විද්යාත්මක නාමය,
 "You can define all the tasks which need to carried out for this crop here. The day field is used to mention the day on which the task needs to be carried out, 1 being the 1st day, etc.. ",මෙම බෝග සඳහා සිදු කළ යුතු සියලු කාර්යයන් ඔබට අර්ථ දැක්විය හැක. කාර්යය ඉටු කළ යුතු දිනය සඳහන් කිරීම සඳහා දින දර්ශනය භාවිතා කරනු ලැබේ.,
@@ -5441,7 +5358,6 @@
 To TIme,වේලාව,
 Course End Date,පාඨමාලා අවසානය දිනය,
 Course Topic,පා se මාලා මාතෘකාව,
-Topic,මාතෘකාව,
 Topic Name,මාතෘකාව නම,
 Education Settings,අධ්යාපන සැකසුම්,
 Current Academic Year,වත්මන් අධ්යයන වර්ෂය,
@@ -5516,7 +5432,6 @@
 Check this if the Student is residing at the Institute's Hostel.,"ශිෂ්ය ආයතනයේ නේවාසිකාගාරය පදිංචි, නම් මෙම පරීක්ෂා කරන්න.",
 Walking,ඇවිදීම,
 Institute's Bus,ආයතනය බස් රථය,
-Public Transport,රාජ්ය ප්රවාහන,
 Self-Driving Vehicle,ස්වයං-රියදුරු වාහන,
 Pick/Drop by Guardian,ගාර්ඩියන් පුවත්පත විසින් / Drop ගන්න,
 Enrolled courses,ලියාපදිංචි පාඨමාලා,
@@ -5697,7 +5612,6 @@
 Default Cost Center,පෙරනිමි පිරිවැය මධ්යස්ථානය,
 Undeposited Funds Account,නොබැඳි අරමුදල් ගිණුම,
 Shopify Log,ලොග් කරන්න,
-Request Data,ඉල්ලීම් දත්ත,
 Shopify Settings,සාප්පු සවාරම්,
 status html,තත්වය html,
 Enable Shopify,Shopify සක්රිය කරන්න,
@@ -5817,7 +5731,6 @@
 Exercise Instructions,ව්‍යායාම උපදෙස්,
 Exercise Video,ව්‍යායාම වීඩියෝ,
 Exercise Steps,ව්යායාම පියවර,
-Steps,පියවර,
 Steps Table,පියවර වගුව,
 Exercise Type Step,ව්‍යායාම වර්ගය පියවර,
 Max number of visit,සංචාරය කරන ලද උපරිම සංඛ්යාව,
@@ -6001,7 +5914,6 @@
 Patient Encounter Symptom,රෝගියා හමුවීමේ රෝග ලක්ෂණය,
 HLC-PMR-.YYYY.-,HLC-PMR-.YYYY.-,
 Attach Medical Record,වෛද්‍ය වාර්තාව අමුණන්න,
-Reference DocType,යොමු ලේඛනය,
 Spouse,කලත්රයා,
 Family,පවුලක්,
 Schedule Details,උපලේඛන විස්තර,
@@ -6983,16 +6895,8 @@
 HTML / Banner that will show on the top of product list.,HTML / බැනරය නිෂ්පාදන ලැයිස්තුව මුදුනේ පෙන්වන බව.,
 Set prefix for numbering series on your transactions,ඔබගේ ගනුදෙනු මාලාවක් සංඛ්යාවක් සඳහා උපසර්ගය සකසන්න,
 Setup Series,setup ශ්රේණි,
-Select Transaction,ගනුදෙනු තෝරන්න,
-Help HTML,HTML උදව්,
-Series List for this Transaction,මෙම ගනුදෙනු සඳහා මාලාවක් ලැයිස්තුව,
-User must always select,පරිශීලක සෑම විටම තෝරාගත යුතුය,
-Check this if you want to force the user to select a series before saving. There will be no default if you check this.,"ඔබ &#39;සුරැකුමට පෙර, මාලාවක් තෝරාගැනීමට පරිශීලක බල කිරීම සඳහා අවශ්ය නම් මෙම පරීක්ෂා කරන්න. ඔබ මෙම පරීක්ෂා නම් කිසිඳු පෙරනිමි වනු ඇත.",
 Update Series,යාවත්කාලීන ශ්රේණි,
 Change the starting / current sequence number of an existing series.,දැනට පවතින මාලාවේ ආරම්භක / වත්මන් අනුක්රමය අංකය වෙනස් කරන්න.,
-Prefix,උපසර්ගය,
-This is the number of the last created transaction with this prefix,මෙය මේ උපසර්ගය සහිත පසුගිය නිර්මාණය ගනුදෙනුව සංඛ්යාව වේ,
-Update Series Number,යාවත්කාලීන ශ්රේණි අංකය,
 Quotation Lost Reason,උද්ධෘත ලොස්ට් හේතුව,
 A third party distributor / dealer / commission agent / affiliate / reseller who sells the companies products for a commission.,තුන්වන පක්ෂය බෙදාහැරීමේ / අලෙවි නියෝජිත / කොමිස් සඳහා සමාගම් නිෂ්පාදන අලෙවි කරන කොමිෂන් නියෝජිතයා / අනුබද්ධ / දේශීය වෙළඳ සහකරුවන්.,
 Sales Partner Name,විකුණුම් සහකරු නම,
@@ -7687,7 +7591,6 @@
 Warehouse wise Item Balance Age and Value,ගබඩා අස්වැන්න නිශ්චල ෙශේෂය සහ වටිනාකම,
 Work Order Stock Report,වැඩ පිළිවෙළේ වාර්තාව,
 Work Orders in Progress,ප්රගතියේ වැඩ කිරීම,
-Validation Error,වලංගු කිරීමේ දෝෂයකි,
 Automatically Process Deferred Accounting Entry,විලම්බිත ගිණුම්කරණ ප්‍රවේශය ස්වයංක්‍රීයව සැකසීම,
 Bank Clearance,බැංකු නිෂ්කාශනය,
 Bank Clearance Detail,බැංකු නිෂ්කාශන විස්තර,
@@ -7724,45 +7627,7 @@
 Therapy Plan: ,චිකිත්සක සැලැස්ම:,
 Total Counts Targeted: ,ඉලක්කගත මුළු ගණන්:,
 Total Counts Completed: ,සම්පුර්ණ කළ ගණන්:,
-Andaman and Nicobar Islands,අන්දමන් සහ නිකොබාර් දූපත්,
-Andhra Pradesh,අන්ද්‍රා ප්‍රදේශ්,
-Arunachal Pradesh,අරුණාචාල් ප්‍රදේශ්,
-Assam,ඇසෑම්,
-Bihar,බිහාර්,
-Chandigarh,චන්දිගාර්,
-Chhattisgarh,චට්ටිස්ගාර්,
-Dadra and Nagar Haveli,දද්‍රා සහ නගර් හවේලි,
-Daman and Diu,ඩමන් සහ ඩියූ,
-Delhi,දිල්ලිය,
-Goa,ගෝවා,
-Gujarat,ගුජරාට්,
-Haryana,හර්යානා,
-Himachal Pradesh,හිමාචල් ප්‍රදේශ්,
-Jammu and Kashmir,ජම්මු හා කාශ්මීරය,
-Jharkhand,ජාර්කන්ඩ්,
-Karnataka,කර්ණාටක,
-Kerala,කේරළය,
-Lakshadweep Islands,ලක්ෂ්වීප් දූපත්,
-Madhya Pradesh,මධ්‍ය ප්‍රදේශ්,
-Maharashtra,මහාරාෂ්ට්‍ර,
-Manipur,මනිපූර්,
-Meghalaya,මේ Meg ලය,
-Mizoram,මිසෝරාම්,
-Nagaland,නාගලන්ඩ්,
-Odisha,ඔඩීෂා,
-Other Territory,වෙනත් ප්‍රදේශ,
-Pondicherry,පොන්ඩිචෙරි,
-Punjab,පන්ජාබ්,
-Rajasthan,රාජස්ථාන්,
-Sikkim,සිකිම්,
-Tamil Nadu,තමිල්නාඩුව,
-Telangana,තෙලන්ගානා,
-Tripura,ත්‍රිපුර,
-Uttar Pradesh,උත්තර් ප්‍රදේශ්,
-Uttarakhand,උත්තරාකන්ඩ්,
-West Bengal,බටහිර බෙංගාලය,
 Is Mandatory,අනිවාර්යයි,
-Published on,ප්‍රකාශයට පත් කරන ලදි,
 Service Received But Not Billed,සේවාව ලැබුන නමුත් බිල් කර නැත,
 Deferred Accounting Settings,විලම්බිත ගිණුම්කරණ සැකසුම්,
 Book Deferred Entries Based On,පදනම් කරගත් පොත් විලම්බිත සටහන්,
@@ -8035,8 +7900,6 @@
 Worksheet Instructions,වැඩ පත්‍රිකා උපදෙස්,
 Result Legend Print,ප්‍රති Le ල පුරාවෘත්ත මුද්‍රණය,
 Print Position,මුද්‍රණ ස්ථානය,
-Bottom,පහළ,
-Top,ඉහළට,
 Both,දෙකම,
 Result Legend,ප්‍රති Le ල පුරාවෘත්තය,
 Lab Tests,විද්‍යාගාර පරීක්ෂණ,
@@ -8081,12 +7944,10 @@
 Approvers,අනුමත කරන්නන්,
 The first Approver in the list will be set as the default Approver.,ලැයිස්තුවේ පළමු අනුමත කරන්නා පෙරනිමි අනුමත කරන්නා ලෙස සකසනු ඇත.,
 Shift Request Approver,මාරුව ඉල්ලීම් අනුමත කරන්නා,
-PAN Number,පෑන් අංකය,
 Provident Fund Account,අර්ථසාධක අරමුදල් ගිණුම,
 MICR Code,MICR කේතය,
 Repay unclaimed amount from salary,ඉල්ලුම් නොකළ මුදල වැටුපෙන් ආපසු ගෙවන්න,
 Deduction from salary,වැටුපෙන් අඩු කිරීම,
-Expired Leaves,කල් ඉකුත් වූ කොළ,
 If this is not checked the loan by default will be considered as a Demand Loan,මෙය පරීක්‍ෂා නොකළ හොත් ණය පෙරනිමියෙන් ඉල්ලුම් ණය ලෙස සැලකේ,
 This account is used for booking loan repayments from the borrower and also disbursing loans to the borrower,මෙම ගිණුම ණය ගැනුම්කරුගෙන් ණය ආපසු ගෙවීම් වෙන්කරවා ගැනීම සඳහා සහ ණය ගැනුම්කරුට ණය ලබා දීම සඳහා යොදා ගනී,
 This account is capital account which is used to allocate capital for loan disbursal account ,මෙම ගිණුම ණය බෙදා හැරීමේ ගිණුම සඳහා ප්‍රාග්ධනය වෙන් කිරීම සඳහා භාවිතා කරන ප්‍රාග්ධන ගිණුමකි,
@@ -8844,3 +8705,41 @@
 Creating Purchase Order ...,මිලදී ගැනීමේ ඇණවුමක් නිර්මාණය කිරීම ...,
 "Select a Supplier from the Default Suppliers of the items below. On selection, a Purchase Order will be made against items belonging to the selected Supplier only.","පහත අයිතමවල පෙරනිමි සැපයුම්කරුවන්ගෙන් සැපයුම්කරුවෙකු තෝරන්න. තෝරාගැනීමේදී, තෝරාගත් සැපයුම්කරුට පමණක් අයත් භාණ්ඩවලට එරෙහිව මිලදී ගැනීමේ නියෝගයක් කරනු ලැබේ.",
 Row #{}: You must select {} serial numbers for item {}.,පේළිය # {}: ඔබ item item අයිතමය සඳහා {} අනුක්‍රමික අංක තෝරාගත යුතුය.,
+Add Comment,පරිකථනය එකතු කරන්න,
+More...,තව...,
+Notes,සටහන්,
+Payment Gateway,ගෙවීම් ගේට්වේ,
+Payment Gateway Name,ගෙවීම් මාර්ගයේ නම,
+Payments,ගෙවීම,
+Plan Name,සැලසුම් නම,
+Portal,ද්වාරය,
+Scan Barcode,තීරු කේතය පරිලෝකනය කරන්න,
+Some information is missing,යම් තොරතුරු අතුරුදහන්,
+Successful,සාර්ථක,
+Tools,මෙවලම්,
+Use Sandbox,වැලිපිල්ල භාවිතා,
+Busy,කාර්යබහුලයි,
+Completed By,විසින් සම්පූර්ණ,
+Payment Failed,ගෙවීම් අසාර්ථක විය,
+Column {0},තීරුව {0},
+Field Mapping,ක්ෂේත්‍ර සිතියම්කරණය,
+Not Specified,විශේෂයෙන් දක්වා නැති,
+Update Type,යාවත්කාලීන වර්ගය,
+Dr,ආචාර්ය,
+End Time,අවසන් කාල,
+Fetching...,ලබා ගැනීම ...,
+"It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","සර්වරයේ තීරු වින්යාසය සමඟ ගැටළුවක් පවතින බව පෙනේ. අසාර්ථකත්වයේ දී, එම මුදල ඔබේ ගිණුමට නැවත ලබා දෙනු ඇත.",
+Looks like someone sent you to an incomplete URL. Please ask them to look into it.,ඔබ අසම්පූර්ණ URL එක වෙත යවන කෙනෙක් වගේ. එය සොයා බැලීමට ඔවුන්ට කරුණාකර.,
+Master,ස්වාමියා,
+Pay,වැටුප්,
+You can also copy-paste this link in your browser,ඔබ ද පිටපත්-ඇලවිය හැකි ඔබගේ බ්රවුසරයෙහි පහත සබැඳිය,
+Verified By,වන විට තහවුරු කර,
+Invalid naming series (. missing) for {0},{0 for සඳහා අවලංගු නම් කිරීමේ ශ්‍රේණියක් (. අස්ථානගත වී ඇත),
+Phone Number,දුරකතන අංකය,
+Account SID,ගිණුම SID,
+Global Defaults,ගෝලීය Defaults,
+Is Mandatory,අනිවාර්යයි,
+WhatsApp,WhatsApp,
+Make a call,ඇමතුමක් ගන්න,
+Approve,අනුමත,
+Reject,ප්රතික්ෂේප,
diff --git a/erpnext/translations/sk.csv b/erpnext/translations/sk.csv
index 451b882..0e51158 100644
--- a/erpnext/translations/sk.csv
+++ b/erpnext/translations/sk.csv
@@ -113,7 +113,6 @@
 Add Items,Pridať položky,
 Add Leads,Pridať návrhy,
 Add Multiple Tasks,Pridať viacero úloh,
-Add Row,Pridať riadok,
 Add Sales Partners,Pridať obchodných partnerov,
 Add Serial No,Pridať sériové číslo,
 Add Students,Pridajte študentov,
@@ -211,9 +210,7 @@
 An error occurred during the update process,Počas procesu aktualizácie sa vyskytla chyba,
 "An item exists with same name ({0}), please change the item group name or rename the item","Položka s rovnakým názvom už existuje ({0}), prosím, zmente názov skupiny položiek alebo premenujte položku",
 Analyst,analytik,
-Analytics,analytika,
 Annual Billing: {0},Ročný Billing: {0},
-Anonymous,anonymný,
 Another Budget record '{0}' already exists against {1} '{2}' and account '{3}' for fiscal year {4},Ďalší rozpočetový záznam {0} už existuje proti {1} &#39;{2}&#39; a účet {3} pre fiškálny rok {4},
 Another Period Closing Entry {0} has been made after {1},Další období Uzávěrka Entry {0} byla podána po {1},
 Another Sales Person {0} exists with the same Employee id,Ďalšia predaja osoba {0} existuje s rovnakým id zamestnanca,
@@ -283,14 +280,12 @@
 Attendance not submitted for {0} as {1} on leave.,Účasť sa nepodala za {0} ako {1} v dovolenke.,
 Attribute table is mandatory,Atribút tabuľka je povinné,
 Attribute {0} selected multiple times in Attributes Table,Atribút {0} vybraný niekoľkokrát v atribútoch tabuľke,
-Author,autor,
 Authorized Signatory,Prokurista,
 Auto Material Requests Generated,Žiadosti Auto materiál vygenerovaný,
 Auto Repeat,Automatické opakovanie,
 Auto repeat document updated,Dokument bol aktualizovaný automaticky,
 Automotive,Automobilový,
 Available,K dispozici,
-Available Leaves,Dostupné listy,
 Available Qty,Množství k dispozici,
 Available Selling,Dostupný predaj,
 Available for use date is required,Je potrebný dátum použiteľného na použitie,
@@ -340,7 +335,6 @@
 Base URL,Základná adresa URL,
 Based On,Založené na,
 Based On Payment Terms,Na základe platobných podmienok,
-Basic,základné,
 Batch,Šarža,
 Batch Entries,Dávky šarže,
 Batch ID is mandatory,Číslo šarže je povinné,
@@ -361,7 +355,6 @@
 Billable Hours,Fakturovateľné hodiny,
 Billed,Fakturované,
 Billed Amount,Fakturovaná čiastka,
-Billing,Fakturácia,
 Billing Address,Fakturačná adresa,
 Billing Address is same as Shipping Address,Fakturačná adresa je rovnaká ako dodacia adresa,
 Billing Amount,Fakturovaná čiastka,
@@ -560,7 +553,6 @@
 Consumed Qty,Spotřeba Množství,
 Consumer Products,Zákaznícke produkty,
 Contact,Kontakt,
-Contact Details,Kontaktné údaje,
 Contact Us,Kontaktuj nás,
 Content,Obsah,
 Content Masters,Obsahové mastery,
@@ -715,7 +707,6 @@
 Date of Joining,Datum přistoupení,
 Date of Joining must be greater than Date of Birth,Datum přistoupení musí být větší než Datum narození,
 Date of Transaction,Dátum transakcie,
-Datetime,Datum a čas,
 Day,Deň,
 Debit,Debet,
 Debit ({0}),Debet ({0}),
@@ -874,7 +865,6 @@
 Employee cannot report to himself.,Zamestnanec nemôže reportovať sám sebe.,
 Employee {0} has already applied for {1} between {2} and {3} : ,Zamestnanec {0} už požiadal {1} medzi {2} a {3}:,
 Employee {0} of grade {1} have no default leave policy,Zamestnanec {0} v platovej triede {1} nemá žiadne predvolené pravidlá pre dovolenku,
-Enable,Zapnout,
 Enable / disable currencies.,Povolit / zakázat měny.,
 Enabled,Zapnuto,
 "Enabling 'Use for Shopping Cart', as Shopping Cart is enabled and there should be at least one Tax Rule for Shopping Cart","Povolenie &quot;použitia na nákupného košíka&quot;, ako je povolené Nákupný košík a tam by mala byť aspoň jedna daňové pravidlá pre Košík",
@@ -905,7 +895,6 @@
 Error: Not a valid id?,Chyba: Nie je platný id?,
 Estimated Cost,Odhadované náklady,
 "Even if there are multiple Pricing Rules with highest priority, then following internal priorities are applied:","I když existuje více pravidla pro tvorbu cen s nejvyšší prioritou, pak následující interní priority jsou použity:",
-Event,Událost,
 Exchange Gain/Loss,Exchange zisk / strata,
 Exchange Rate Revaluation master.,Master preceňovacieho kurzu.,
 Exchange Rate must be same as {0} {1} ({2}),Exchange Rate musí byť rovnaká ako {0} {1} ({2}),
@@ -1032,7 +1021,6 @@
 From value must be less than to value in row {0},Z hodnota musí být menší než hodnota v řadě {0},
 From {0} | {1} {2},Od {0} | {1} {2},
 Fulfillment,splnenie,
-Full,plne,
 Full Name,Celé meno/názov,
 Fully Depreciated,plne odpísaný,
 Furnitures and Fixtures,Nábytok a svietidlá,
@@ -1133,7 +1121,6 @@
 Hub Sync ID,ID synchronizácie Hubu,
 Human Resource,Ľudské Zdroje,
 Human Resources,Lidské zdroje,
-IFSC Code,Kód IFSC,
 IGST Amount,Suma IGST,
 IP Address,IP adresa,
 ITC Available (whether in full op part),ITC k dispozícii (či už v plnej op časti),
@@ -1185,7 +1172,6 @@
 Ineligible ITC,Neoprávnené ITC,
 Initiated,Zahájil,
 Inpatient Record,Liečebný záznam,
-Insert,Vložit,
 Installation Note,Poznámka k instalaci,
 Installation Note {0} has already been submitted,Poznámka k instalaci {0} již byla odeslána,
 Installation date cannot be before delivery date for Item {0},Datum Instalace nemůže být před datem dodání pro bod {0},
@@ -1197,7 +1183,6 @@
 Insurance Start date should be less than Insurance End date,Dátum poistenie štarte by mala byť menšia ako poistenie koncovým dátumom,
 Integrated Tax,Integrovaná daň,
 Inter-State Supplies,Medzištátne dodávky,
-Interests,záujmy,
 Internet Publishing,Internet Publishing,
 Intra-State Supplies,Vnútroštátne dodávky,
 Introduction,Úvod,
@@ -1316,7 +1301,6 @@
 Lab testing datetime cannot be before collection datetime,Laboratórne testovanie dátumu nemôže byť pred dátumom zberu,
 Label,Popis,
 Laboratory,laboratórium,
-Language Name,Názov jazyka,
 Large,Veľký,
 Last Communication,Posledná komunikácia,
 Last Communication Date,Dátum poslednej komunikácie,
@@ -1347,8 +1331,6 @@
 Letter Heads for print templates.,Dopis hlavy na tiskových šablon.,
 Level,Úroveň,
 Liability,Odpovědnost,
-License,licencie,
-Limit,limit,
 Limit Crossed,limit skríženými,
 Link to Material Request,Odkaz na žiadosť o materiál,
 List of all share transactions,Zoznam všetkých transakcií s akciami,
@@ -1359,7 +1341,6 @@
 Loans (Liabilities),Úvěry (závazky),
 Loans and Advances (Assets),Úvěrů a půjček (aktiva),
 Local,Místní,
-Log,log,
 Logs for maintaining sms delivery status,Protokoly pre udržanie stavu doručenia sms,
 Lost,Ztracený,
 Lost Reasons,Stratené dôvody,
@@ -1445,7 +1426,6 @@
 Medical Department,Lekárske oddelenie,
 Medical Record,Zdravotný záznam,
 Medium,Střední,
-Meeting,stretnutie,
 Member Activity,Členská aktivita,
 Member ID,ID člena,
 Member Name,Meno člena,
@@ -1495,7 +1475,6 @@
 Multiple Variants,Viac variantov,
 Multiple fiscal years exist for the date {0}. Please set company in Fiscal Year,Niekoľko fiškálnych rokov existujú pre dáta {0}. Prosím nastavte spoločnosť vo fiškálnom roku,
 Music,Hudba,
-My Account,Môj Účet,
 Name error: {0},Názov chyba: {0},
 Name of new Account. Note: Please don't create accounts for Customers and Suppliers,"Názov nového účtu. Poznámka: Prosím, vytvárať účty pre zákazníkov a dodávateľmi",
 Name or Email is mandatory,Meno alebo e-mail je povinné,
@@ -1538,7 +1517,6 @@
 New credit limit is less than current outstanding amount for the customer. Credit limit has to be atleast {0},Nový úverový limit je nižšia ako aktuálna dlžnej čiastky za zákazníka. Úverový limit musí byť aspoň {0},
 New task,novú úlohu,
 New {0} pricing rules are created,Vytvoria sa nové {0} pravidlá tvorby cien,
-Newsletters,Newslettery,
 Newspaper Publishers,Vydavatelia novín,
 Next,Ďalej,
 Next Contact By cannot be same as the Lead Email Address,Nasledujúce Kontakt Tým nemôže byť rovnaký ako hlavný e-mailovú adresu,
@@ -1686,7 +1664,6 @@
 Other,Ostatní,
 Other Reports,Ostatné správy,
 "Other outward supplies(Nil rated,Exempted)","Ostatné pasívne výrobky (bez hodnotenia, oslobodené)",
-Others,Ostatní,
 Out Qty,Out Množství,
 Out Value,limitu,
 Out of Order,Mimo prevádzky,
@@ -1726,7 +1703,6 @@
 Party Type and Party is mandatory for {0} account,Typ strany a strana je povinný pre účet {0},
 Party Type is mandatory,Typ strana je povinná,
 Party is mandatory,Party je povinná,
-Password,Heslo,
 Past Due Date,Dátum splatnosti,
 Patient,trpezlivý,
 Patient Appointment,Menovanie pacienta,
@@ -1784,7 +1760,6 @@
 Pharmaceutical,farmaceutické,
 Pharmaceuticals,Farmaceutické,
 Physician,lekár,
-Pincode,Pinkód,
 Place Of Supply (State/UT),Miesto dodania (štát / UT),
 Place Order,Objednať,
 Plan Name,Názov plánu,
@@ -1896,7 +1871,6 @@
 Please select date,"Prosím, vyberte dátum",
 Please select item code,"Prosím, vyberte položku kód",
 Please select month and year,Vyberte měsíc a rok,
-Please select prefix first,"Prosím, vyberte první prefix",
 Please select the Company,Vyberte spoločnosť,
 Please select the Multiple Tier Program type for more than one collection rules.,Vyberte typ viacvrstvového programu pre viac ako jednu pravidlá kolekcie.,
 Please select the assessment group other than 'All Assessment Groups',Vyberte inú hodnotiacu skupinu ako &quot;Všetky hodnotiace skupiny&quot;,
@@ -1913,7 +1887,6 @@
 Please set Company filter blank if Group By is 'Company',"Filtrovanie spoločnosti nastavte prázdne, ak je položka Skupina pod skupinou &quot;Spoločnosť&quot;",
 Please set Default Payroll Payable Account in Company {0},"Prosím nastaviť predvolený účet mzdy, splatnú v spoločnosti {0}",
 Please set Depreciation related Accounts in Asset Category {0} or Company {1},"Prosím, amortizácia účty s ním súvisiacich v kategórii Asset {0} alebo {1} Company",
-Please set Email Address,Prosím nastavte e-mailovú adresu,
 Please set GST Accounts in GST Settings,Nastavte si účty GST v nastaveniach služby GST,
 Please set Hotel Room Rate on {},"Prosím, nastavte sadzbu izby hotela na {}",
 Please set Number of Depreciations Booked,Prosím nastavte Počet Odpisy rezervované,
@@ -1936,7 +1909,6 @@
 Please set the Email ID for the Student to send the Payment Request,"Prosím, nastavte ID e-mailu, aby študent poslal Žiadosť o platbu",
 Please set the Item Code first,Najprv nastavte kód položky,
 Please set the Payment Schedule,Nastavte plán platieb,
-Please set the series to be used.,"Nastavte prosím sériu, ktorú chcete použiť.",
 Please set {0} for address {1},Nastavte {0} pre adresu {1},
 Please setup Students under Student Groups,Nastavte prosím študentov pod študentskými skupinami,
 Please specify Company,"Uveďte prosím, firmu",
@@ -1953,7 +1925,6 @@
 Point-of-Sale,Mieste predaja,
 Point-of-Sale Profile,Point-of-Sale Profil,
 Portal,Portál,
-Portal Settings,Nastavenie portálu,
 Possible Supplier,možné Dodávateľ,
 Postal Expenses,Poštovní náklady,
 Posting Date,Dátum pridania,
@@ -2152,12 +2123,10 @@
 Reference No is mandatory if you entered Reference Date,"Referenční číslo je povinné, pokud jste zadali k rozhodnému dni",
 Reference No.,Referenčné číslo,
 Reference Number,Referenční číslo,
-Reference Owner,referenčnej Vlastník,
 Reference Type,Typ reference,
 "Reference: {0}, Item Code: {1} and Customer: {2}","Odkaz: {0}, Kód položky: {1} a zákazník: {2}",
 References,Referencie,
 Refresh Token,obnoviť Token,
-Region,Kraj,
 Register,Registrovať,
 Rejected,Zamítnuto,
 Related,príbuzný,
@@ -2179,7 +2148,6 @@
 Replace BOM and update latest price in all BOMs,Nahraďte kusovník a aktualizujte najnovšiu cenu vo všetkých kusovníkoch,
 Replied,Odpovězeno,
 Report,Report,
-Report Builder,Konfigurátor Reportu,
 Report Type,Typ výpisu,
 Report Type is mandatory,Report Type je povinné,
 Reports,správy,
@@ -2355,13 +2323,11 @@
 Same Company is entered more than once,Rovnaký Spoločnosť je zapísaná viac ako raz,
 Same item cannot be entered multiple times.,Rovnakú položku nemožno zadávať viackrát.,
 Same supplier has been entered multiple times,Rovnaký dodávateľ bol zadaný viackrát,
-Sample,Vzorka,
 Sample Collection,Zbierka vzoriek,
 Sample quantity {0} cannot be more than received quantity {1},Množstvo vzorky {0} nemôže byť väčšie ako prijaté množstvo {1},
 Sanctioned,Sankcionované,
 Sand,piesok,
 Saturday,Sobota,
-Saved,Uložené,
 Saving {0},Uloženie {0},
 Scan Barcode,Naskenujte čiarový kód,
 Schedule,plán,
@@ -2463,7 +2429,6 @@
 Series Updated,Řada Aktualizováno,
 Series Updated Successfully,Řada Aktualizováno Úspěšně,
 Series is mandatory,Série je povinné,
-Series {0} already used in {1},Série {0} jsou již použity v {1},
 Service,Služba,
 Service Level Agreement,Dohoda o úrovni služieb,
 Service Level Agreement.,Dohoda o úrovni služieb.,
@@ -2479,7 +2444,6 @@
 Set Tax Rule for shopping cart,Sada Daňové Pravidlo pre nákupného košíka,
 Set as Closed,Nastaviť ako zatvorené,
 Set as Completed,Nastaviť ako dokončené,
-Set as Default,Nastavit jako výchozí,
 Set as Lost,Nastaviť ako Nezískané,
 Set as Open,Nastaviť ako Otvorené,
 Set default inventory account for perpetual inventory,Nastavte predvolený inventárny účet pre trvalý inventár,
@@ -2511,7 +2475,6 @@
 Shareholder,akcionár,
 Ship To State,Loď do štátu,
 Shipments,zásielky,
-Shipping,Dodanie,
 Shipping Address,Dodacia adresa,
 "Shipping Address does not have country, which is required for this Shipping Rule","Adresa pre odosielanie nemá krajinu, ktorá sa vyžaduje pre toto Pravidlo plavby",
 Shipping rule only applicable for Buying,Pravidlo platia iba pre nákup,
@@ -2564,7 +2527,6 @@
 Split Batch,Split Batch,
 Split Issue,Split Issue,
 Sports,Sportovní,
-Standard,Štandard,
 Standard Buying,Štandardný nákup,
 Standard Selling,Štandardný predaj,
 Standard contract terms for Sales or Purchase.,Standardní smluvní podmínky pro prodej nebo koupi.,
@@ -2731,7 +2693,6 @@
 Terms and Conditions,Podmínky,
 Terms and Conditions Template,Podmínky Template,
 Territory,Území,
-Test,Test,
 Thank you for your business!,Ďakujeme vám za vašu firmu!,
 The 'From Package No.' field must neither be empty nor it's value less than 1.,&quot;Z balíka č.&quot; pole nesmie byť prázdne ani jeho hodnota nižšia ako 1.,
 The Brand,Značka,
@@ -2848,7 +2809,6 @@
 Total (Without Tax),Spolu (bez dane),
 Total Achieved,Celkem Dosažená,
 Total Actual,Celkem Aktuální,
-Total Allocated Leaves,Celkové pridelené listy,
 Total Amount,Celková částka,
 Total Amount Credited,Celková čiastka bola pripísaná,
 Total Applicable Charges in Purchase Receipt Items table must be same as Total Taxes and Charges,"Celkom Použiteľné Poplatky v doklade o kúpe tovaru, ktorý tabuľky musí byť rovnaká ako celkom daní a poplatkov",
@@ -2892,7 +2852,6 @@
 Total(Amt),Total (Amt),
 Total(Qty),Total (ks),
 Traceability,sledovateľnosť,
-Traceback,Vystopovať,
 Track Leads by Lead Source.,Track Leads by Lead Zdroj.,
 Transaction,Transakce,
 Transaction Date,Transakce Datum,
@@ -2930,7 +2889,6 @@
 UOM Conversion factor is required in row {0},UOM Konverzní faktor je nutné v řadě {0},
 UOM coversion factor required for UOM: {0} in Item: {1},Koeficient prepočtu MJ je potrebný k MJ: {0} v bode: {1},
 URL,URL,
-Unable to find DocType {0},Nepodarilo sa nájsť DocType {0},
 Unable to find exchange rate for {0} to {1} for key date {2}. Please create a Currency Exchange record manually,Nepodarilo sa nájsť kurz {0} až {1} pre kľúčový dátum {2}. Ručne vytvorte záznam o menovej karte,
 Unable to find score starting at {0}. You need to have standing scores covering 0 to 100,Nepodarilo sa nájsť skóre od {0}. Musíte mať stály počet bodov od 0 do 100,
 Unable to find variable: ,Nepodarilo sa nájsť premennú:,
@@ -2960,7 +2918,6 @@
 Upload your letter head and logo. (you can edit them later).,Nahrajte svoju hlavičku a logo pre dokumenty. (Môžete ich upravovať neskôr.),
 Upper Income,Horní příjmů,
 Use Sandbox,použitie Sandbox,
-Used Leaves,Použité listy,
 User,užívateľ,
 User ID,User ID,
 User ID not set for Employee {0},User ID není nastavena pro zaměstnance {0},
@@ -3051,7 +3008,6 @@
 Website Settings,Nastavení www stránky,
 Wednesday,Středa,
 Week,týždeň,
-Weekdays,Dni v týždni,
 Weekly,Týdenní,
 "Weight is mentioned,\nPlease mention ""Weight UOM"" too","Hmotnosť je uvedená, \n uveďte prosím aj ""váhu MJ""",
 Welcome email sent,Uvítací email odeslán,
@@ -3072,7 +3028,6 @@
 Work Order {0} must be submitted,Musí sa odoslať pracovná objednávka {0},
 Work Orders Created: {0},Vytvorené pracovné príkazy: {0},
 Work-in-Progress Warehouse is required before Submit,Work-in-Progress sklad je zapotřebí před Odeslat,
-Workflow,Toky (workflow),
 Working,Pracovní,
 Working Hours,Pracovní doba,
 Workstation,pracovna stanica,
@@ -3102,7 +3057,6 @@
 You need to be a user other than Administrator with System Manager and Item Manager roles to register on Marketplace.,"Aby ste sa mohli zaregistrovať na trhu, musíte byť iným používateľom než správcom s roly Správcu systémov a Správca položiek.",
 You need to be a user with System Manager and Item Manager roles to add users to Marketplace.,"Musíte byť používateľom s funkciami Správca systémov a Správca položiek, pomocou ktorých môžete používateľov pridávať do služby Marketplace.",
 You need to be a user with System Manager and Item Manager roles to register on Marketplace.,Musíte byť používateľom s funkciami Správca systému a Správca položiek na registráciu na trhu.,
-You need to be logged in to access this page,Musíte byť prihlásený na prístup na túto stránku,
 You need to enable Shopping Cart,Musíte povolit Nákupní košík,
 You will lose records of previously generated invoices. Are you sure you want to restart this subscription?,Ztratíte záznamy o predtým vygenerovaných faktúrach. Naozaj chcete tento odber reštartovať?,
 Your Organization,Vaša organizácia,
@@ -3218,7 +3172,6 @@
 Assigned To,Priradené (komu),
 Chat,Čet,
 Completed By,Dokončené kým,
-County,Okres,
 Day of Week,Deň v týždni,
 "Dear System Manager,","Vážený System Manager,",
 Default Value,Výchozí hodnota,
@@ -3229,31 +3182,21 @@
 Fieldtype,Typ pole,
 Help Articles,články pomocníka,
 ID,ID,
-Images,snímky,
 Import,Importovat,
 Language,Jazyk,
 Likes,Záľuby,
 Merge with existing,Zlúčiť s existujúcim,
-Office,Kancelář,
 Orientation,orientácia,
 Parent,Rodič,
-Passive,Pasívny,
 Payment Failed,platba zlyhala,
-Permanent,stály,
 Personal,Osobné,
-Plant,Rostlina,
 Post,Príspevok,
-Postal,Poštovní,
 Postal Code,poštové smerovacie číslo,
-Previous,Predchádzajúci,
 Provider,poskytovateľ,
 Read Only,Len na čítanie,
 Recipient,Príjemca,
 Reviews,recenzia,
 Sender,Odosielateľ,
-Shop,Obchod,
-Subsidiary,Dceřiný,
-There is some problem with the file url: {0},Tam je nejaký problém s URL súboru: {0},
 There were errors while sending email. Please try again.,Narazili jsme na problémy při odesílání emailu. Prosím zkuste to znovu.,
 Values Changed,hodnoty Zmenil,
 or,alebo,
@@ -3280,19 +3223,16 @@
 Quality Feedback Template,Šablóna spätnej väzby kvality,
 Rules for applying different promotional schemes.,Pravidlá uplatňovania rôznych propagačných programov.,
 Show {0},Zobraziť {0},
-"Special Characters except '-', '#', '.', '/', '{{' and '}}' not allowed in naming series {0}","Špeciálne znaky s výnimkou &quot;-&quot;, &quot;#&quot;, &quot;।&quot;, &quot;/&quot;, &quot;{{&quot; A &quot;}}&quot; nie sú v názvových sériách povolené {0}.",
 Target Details,Podrobnosti o cieli,
 {0} already has a Parent Procedure {1}.,{0} už má rodičovský postup {1}.,
 API,API,
 Annual,Roční,
 Change,Zmena,
 Contact Email,Kontaktný e-mail,
-Export Type,Typ exportu,
 From Date,Od data,
 Group By,Zoskupiť podľa,
 Invalid URL,neplatná URL adresa,
 Landscape,krajina,
-Last Sync On,Posledná synchronizácia zapnutá,
 Naming Series,Číselné rady,
 No data to export,Žiadne údaje na export,
 Portrait,portrét,
@@ -3302,7 +3242,6 @@
 Show Document,Zobraziť dokument,
 Show Traceback,Zobraziť Traceback,
 Video,video,
-Webhook Secret,Webhook Secret,
 % Of Grand Total,% Z celkového súčtu,
 <b>Company</b> is a mandatory filter.,<b>Spoločnosť</b> je povinný filter.,
 <b>From Date</b> is a mandatory filter.,<b>Od dátumu</b> je povinný filter.,
@@ -3358,7 +3297,6 @@
 BOM Comparison Tool,Nástroj na porovnávanie kusovníkov,
 BOM recursion: {0} cannot be child of {1},Rekurzia kusovníka: {0} nemôže byť dieťaťom z {1},
 BOM recursion: {0} cannot be parent or child of {1},Rekurzia kusovníka: {0} nemôže byť rodičom alebo dieťaťom {1},
-Back to Home,Späť domov,
 Back to Messages,Späť na Správy,
 Bank Data mapper doesn't exist,Mapovač bankových údajov neexistuje,
 Bank Details,Bankové údaje,
@@ -3420,7 +3358,6 @@
 Currency,Mena,
 Current Status,Aktuální stav,
 Customer PO,Zákazník PO,
-Customize,Prispôsobiť,
 Daily,Denne,
 Date,Dátum,
 Date of Birth cannot be greater than Joining Date.,Dátum narodenia nemôže byť väčší ako dátum vstupu.,
@@ -3454,7 +3391,6 @@
 ERPNext could not find any matching payment entry,ERPNext nemohol nájsť žiadny zodpovedajúci platobný záznam,
 Earliest Age,Najstarší vek,
 Edit Details,Upraviť podrobnosti,
-Edit Profile,Upraviť profil,
 Either GST Transporter ID or Vehicle No is required if Mode of Transport is Road,"Ak je spôsob dopravy cestná, vyžaduje sa ID prepravcu GST alebo číslo vozidla",
 Email,e-mail,
 Email Campaigns,E-mailové kampane,
@@ -3482,7 +3418,6 @@
 Fetch Items from Warehouse,Načítať položky zo skladu,
 Fetching...,Načítanie ...,
 Field,Pole,
-File Manager,Správca súborov,
 Filters,Filtry,
 Finding linked payments,Hľadanie prepojených platieb,
 Fleet Management,fleet management,
@@ -3521,7 +3456,6 @@
 Incorrect Warehouse,Nesprávny sklad,
 Invalid Barcode. There is no Item attached to this barcode.,Neplatný čiarový kód. K tomuto čiarovému kódu nie je pripojená žiadna položka.,
 Invalid credentials,Neplatné poverenia,
-Invite as User,Pozvať ako Užívateľ,
 Issue Priority.,Priorita vydania.,
 Issue Type.,Typ vydania.,
 "It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","Zdá sa, že existuje problém s konfiguráciou pásma servera. V prípade zlyhania bude suma vrátená na váš účet.",
@@ -3564,7 +3498,6 @@
 New Invoice,Nová faktúra,
 New Payment,Nová platba,
 New release date should be in the future,Nový dátum vydania by mal byť v budúcnosti,
-Newsletter,Newsletter,
 No Account matched these filters: {},K týmto filtrom nezodpovedal žiadny účet: {},
 No communication found.,Nenašla sa žiadna komunikácia.,
 No correct answer is set for {0},Pre {0} nie je nastavená žiadna správna odpoveď,
@@ -3640,7 +3573,6 @@
 Please setup a default bank account for company {0},Nastavte predvolený bankový účet spoločnosti {0},
 Please specify,Prosím upresnite,
 Please specify a {0},Zadajte {0},lead
-Printing,Tlačenie,
 Priority,Priorita,
 Priority has been changed to {0}.,Priorita sa zmenila na {0}.,
 Priority {0} has been repeated.,Priorita {0} bola opakovaná.,
@@ -3649,7 +3581,6 @@
 Project,Projekt,
 Provide the academic year and set the starting and ending date.,Uveďte akademický rok a stanovte počiatočný a konečný dátum.,
 Public token is missing for this bank,V tejto banke chýba verejný token,
-Publish,publikovať,
 Publish 1 Item,Zverejniť 1 položku,
 Publish Items,Publikovať položky,
 Publish More Items,Zverejniť viac položiek,
@@ -3677,7 +3608,6 @@
 Reconciled,zmierený,
 Recruitment,nábor,
 Red,Červená,
-Refreshing,Obnovovanie,
 Release date must be in the future,Dátum vydania musí byť v budúcnosti,
 Relieving Date must be greater than or equal to Date of Joining,Dátum vydania musí byť väčší alebo rovný dátumu pripojenia,
 Rename,Premenovať,
@@ -3721,7 +3651,6 @@
 Search for a payment,Vyhľadajte platbu,
 Search for anything ...,Vyhľadajte čokoľvek ...,
 Search results for,Výsledky vyhľadávania pre,
-Select All,Označiť všetko,
 Select Difference Account,Vyberte rozdielny účet,
 Select a Default Priority.,Vyberte predvolenú prioritu.,
 Select a company,Vyberte spoločnosť,
@@ -3740,11 +3669,9 @@
 Service Level Agreement has been changed to {0}.,Dohoda o úrovni služieb sa zmenila na {0}.,
 Service Level Agreement was reset.,Dohoda o úrovni služieb bola obnovená.,
 Service Level Agreement with Entity Type {0} and Entity {1} already exists.,Dohoda o úrovni služieb s typom entity {0} a entitou {1} už existuje.,
-Set,Nastaviť,
 Set Meta Tags,Nastavte značky meta,
 Set {0} in company {1},Set {0} v spoločnosti {1},
 Setup,Nastavenie,
-Setup Wizard,Sprievodca nastavením,
 Shift Management,Shift Management,
 Show Future Payments,Zobraziť budúce platby,
 Show Linked Delivery Notes,Zobraziť prepojené dodacie listy,
@@ -3815,7 +3742,6 @@
 Unreconciled,nezmierilo,
 Unsupported GST Category for E-Way Bill JSON generation,Nepodporovaná kategória GST pre generáciu E-Way Bill JSON,
 Update,Aktualizovat,
-Update Details,Aktualizujte podrobnosti,
 Update Taxes for Items,Aktualizujte dane pre položky,
 "Upload a bank statement, link or reconcile a bank account","Odovzdajte bankový výpis, prepojte bankový účet alebo ho zladte",
 Upload a statement,Nahrajte vyhlásenie,
@@ -3839,7 +3765,6 @@
 XML Files Processed,Spracované súbory XML,
 Year,Rok,
 Yearly,Ročne,
-You,Vy,
 You are not allowed to enroll for this course,Nemáte povolenie sa prihlásiť na tento kurz,
 You are not enrolled in program {0},Nie ste prihlásení do programu {0},
 You can Feature upto 8 items.,Môžete obsahovať až 8 položiek.,
@@ -3856,7 +3781,6 @@
 e-Way Bill already exists for this document,Elektronický účet už pre tento dokument existuje,
 woocommerce - {0},woocommerce - {0},
 {0} Coupon used are {1}. Allowed quantity is exhausted,{0} Používa sa kupón {1}. Povolené množstvo je vyčerpané,
-{0} Name,{0} Meno,
 {0} Operations: {1},{0} Operácie: {1},
 {0} bank transaction(s) created,Vytvorené bankové transakcie,
 {0} bank transaction(s) created and {1} errors,Počet vytvorených bankových transakcií: {0} a {1} chýb,
@@ -3875,17 +3799,13 @@
 Total Income,Celkový príjem,
 Total Income This Year,Celkový príjem v tomto roku,
 Barcode,čiarový kód,
-Bold,smelý,
-Center,Stred,
 Clear,jasný,
-Comment,komentár,
 Comments,Komentáre,
 DocType,DOCTYPE,
 Download,Stiahnuť ▼,
 Left,Vľavo,
 Link,odkaz,
 New,Nový,
-Not Found,Nenájdené,
 Print,vytlačiť,
 Reference Name,Referenčný názov,
 Refresh,Obnoviť,
@@ -3908,7 +3828,6 @@
 Email Id,Email ID,
 No,Nie,
 Reference Doctype,Reference DocType,
-User Id,ID používateľa,
 Yes,Áno,
 Actual ,Aktuální,
 Add to cart,Pridať do košíka,
@@ -4304,7 +4223,6 @@
 e.g Adjustments for:,napr. Úpravy pre:,
 Section Subtotal,Oddiel Medzisúčet,
 Section Footer,Päta sekcie,
-Position,pozície,
 Cash Flow Mapping,Mapovanie peňažných tokov,
 Select Maximum Of 1,Vyberte možnosť Maximálne 1,
 Is Finance Cost,Sú finančné náklady,
@@ -4936,7 +4854,6 @@
 Previous Business Day,Predchádzajúci pracovný deň,
 Next Business Day,Nasledujúci pracovný deň,
 Urgent,Naléhavý,
-Crop,Plodina,
 Crop Name,Názov plodiny,
 Scientific Name,Vedecké meno,
 "You can define all the tasks which need to carried out for this crop here. The day field is used to mention the day on which the task needs to be carried out, 1 being the 1st day, etc.. ","Môžete definovať všetky úlohy, ktoré je potrebné vykonať pre túto plodinu tu. Denné pole sa používa na uvedenie dňa, kedy je potrebné vykonať úlohu, 1 je prvý deň atď.",
@@ -5441,7 +5358,6 @@
 To TIme,Chcete-li čas,
 Course End Date,Koniec Samozrejme Dátum,
 Course Topic,Téma kurzu,
-Topic,téma,
 Topic Name,Názov témy,
 Education Settings,Nastavenia vzdelávania,
 Current Academic Year,Súčasný akademický rok,
@@ -5516,7 +5432,6 @@
 Check this if the Student is residing at the Institute's Hostel.,"Skontrolujte, či študent býva v hosteli inštitútu.",
 Walking,chôdza,
 Institute's Bus,Autobus ústavu,
-Public Transport,Verejná doprava,
 Self-Driving Vehicle,Samohybné vozidlo,
 Pick/Drop by Guardian,Pick / Drop od Guardian,
 Enrolled courses,Zapísané kurzy,
@@ -5697,7 +5612,6 @@
 Default Cost Center,Predvolené nákladové stredisko,
 Undeposited Funds Account,Účet neukladaných finančných prostriedkov,
 Shopify Log,Obchodný záznam,
-Request Data,Vyžiadajte si údaje,
 Shopify Settings,Nastavenie nakupovania,
 status html,status html,
 Enable Shopify,Povoliť funkciu Shopify,
@@ -5817,7 +5731,6 @@
 Exercise Instructions,Pokyny na cvičenie,
 Exercise Video,Cvičebné video,
 Exercise Steps,Kroky na cvičenie,
-Steps,Kroky,
 Steps Table,Tabuľka krokov,
 Exercise Type Step,Typ cvičenia Krok,
 Max number of visit,Maximálny počet návštev,
@@ -6001,7 +5914,6 @@
 Patient Encounter Symptom,Príznak stretnutia pacienta,
 HLC-PMR-.YYYY.-,HLC-PMR-.YYYY.-,
 Attach Medical Record,Priložte lekársky záznam,
-Reference DocType,Referenčný DocType,
 Spouse,manželka,
 Family,Rodina,
 Schedule Details,Podrobnosti rozvrhu,
@@ -6983,16 +6895,8 @@
 HTML / Banner that will show on the top of product list.,"HTML / Banner, které se zobrazí na první místo v seznamu výrobků.",
 Set prefix for numbering series on your transactions,Nastavit prefix pro číslování série na vašich transakcí,
 Setup Series,Řada Setup,
-Select Transaction,Vybrat Transaction,
-Help HTML,Nápoveda HTML,
-Series List for this Transaction,Řada seznam pro tuto transakci,
-User must always select,Uživatel musí vždy vybrat,
-Check this if you want to force the user to select a series before saving. There will be no default if you check this.,"Zaškrtněte, pokud chcete, aby uživateli vybrat sérii před uložením. Tam bude žádná výchozí nastavení, pokud jste zkontrolovat.",
 Update Series,Řada Aktualizace,
 Change the starting / current sequence number of an existing series.,Změnit výchozí / aktuální pořadové číslo existujícího série.,
-Prefix,Prefix,
-This is the number of the last created transaction with this prefix,To je číslo poslední vytvořené transakci s tímto prefixem,
-Update Series Number,Aktualizace Series Number,
 Quotation Lost Reason,Dôvod neúspešnej ponuky,
 A third party distributor / dealer / commission agent / affiliate / reseller who sells the companies products for a commission.,"Distributor / dealer / jednatel / partner / prodejce, který prodává produkty společnosti za provizi.",
 Sales Partner Name,Meno predajného partnera,
@@ -7687,7 +7591,6 @@
 Warehouse wise Item Balance Age and Value,Skladové číslo Položka Stav veku a hodnoty,
 Work Order Stock Report,Správa o stave pracovnej objednávky,
 Work Orders in Progress,Pracovné príkazy v procese,
-Validation Error,Chyba overenia,
 Automatically Process Deferred Accounting Entry,Automaticky spracovať odložený záznam účtovníctva,
 Bank Clearance,Bankové spojenie,
 Bank Clearance Detail,Detail bankového zúčtovania,
@@ -7724,45 +7627,7 @@
 Therapy Plan: ,Terapeutický plán:,
 Total Counts Targeted: ,Celkový počet zameraných:,
 Total Counts Completed: ,Celkový počet dokončených:,
-Andaman and Nicobar Islands,Andamanské a Nikobarské ostrovy,
-Andhra Pradesh,Ándhrapradéš,
-Arunachal Pradesh,Arunáčalpradéš,
-Assam,Assam,
-Bihar,Bihar,
-Chandigarh,Chandigarh,
-Chhattisgarh,Chhattisgarh,
-Dadra and Nagar Haveli,Dadra a Nagar Haveli,
-Daman and Diu,Daman a Diu,
-Delhi,Dillí,
-Goa,Goa,
-Gujarat,Gujarat,
-Haryana,Haryana,
-Himachal Pradesh,Himáčalpradéš,
-Jammu and Kashmir,Džammú a Kašmír,
-Jharkhand,Jharkhand,
-Karnataka,Karnataka,
-Kerala,Kerala,
-Lakshadweep Islands,Ostrovy Lakshadweep,
-Madhya Pradesh,Madhya Pradesh,
-Maharashtra,Maharashtra,
-Manipur,Manipur,
-Meghalaya,Meghalaya,
-Mizoram,Mizoram,
-Nagaland,Nagaland,
-Odisha,Urísa,
-Other Territory,Iné územie,
-Pondicherry,Pondicherry,
-Punjab,Paňdžáb,
-Rajasthan,Rádžasthán,
-Sikkim,Sikkim,
-Tamil Nadu,Tamil Nadu,
-Telangana,Telangana,
-Tripura,Tripura,
-Uttar Pradesh,Uttarpradéš,
-Uttarakhand,Uttarakhand,
-West Bengal,Západné Bengálsko,
 Is Mandatory,Je povinné,
-Published on,Publikované dňa,
 Service Received But Not Billed,"Služba prijatá, ale neúčtovaná",
 Deferred Accounting Settings,Nastavenia odloženého účtovníctva,
 Book Deferred Entries Based On,Rezervovať odložené príspevky na základe,
@@ -8035,8 +7900,6 @@
 Worksheet Instructions,Pokyny k pracovnému listu,
 Result Legend Print,Výsledok Tlač legendy,
 Print Position,Poloha tlače,
-Bottom,Dole,
-Top,Top,
 Both,Oboje,
 Result Legend,Výsledková legenda,
 Lab Tests,Laboratórne testy,
@@ -8081,12 +7944,10 @@
 Approvers,Schvaľovatelia,
 The first Approver in the list will be set as the default Approver.,Prvý schvaľovateľ v zozname bude nastavený ako predvolený schvaľovateľ.,
 Shift Request Approver,Schvaľovateľ žiadosti o zmenu,
-PAN Number,Číslo PAN,
 Provident Fund Account,Účet podielového fondu,
 MICR Code,Kód MICR,
 Repay unclaimed amount from salary,Vrátiť nevyzdvihnutú sumu z platu,
 Deduction from salary,Odpočet z platu,
-Expired Leaves,Vypršala platnosť,
 If this is not checked the loan by default will be considered as a Demand Loan,"Pokiaľ to nie je zaškrtnuté, pôžička sa štandardne bude považovať za pôžičku na požiadanie",
 This account is used for booking loan repayments from the borrower and also disbursing loans to the borrower,Tento účet sa používa na rezerváciu splátok pôžičky od dlžníka a tiež na vyplácanie pôžičiek dlžníkovi,
 This account is capital account which is used to allocate capital for loan disbursal account ,"Tento účet je kapitálovým účtom, ktorý sa používa na pridelenie kapitálu pre účet vyplácania pôžičiek",
@@ -8844,3 +8705,41 @@
 Creating Purchase Order ...,Vytvára sa objednávka ...,
 "Select a Supplier from the Default Suppliers of the items below. On selection, a Purchase Order will be made against items belonging to the selected Supplier only.",Z predvolených dodávateľov nižšie uvedených položiek vyberte dodávateľa. Pri výbere sa uskutoční objednávka iba na položky patriace vybranému dodávateľovi.,
 Row #{}: You must select {} serial numbers for item {}.,Riadok č. {}: Musíte zvoliť {} sériové čísla pre položku {}.,
+Add Comment,Pridať komentár,
+More...,Viac ...,
+Notes,Poznámky,
+Payment Gateway,Platobná brána,
+Payment Gateway Name,Názov platobnej brány,
+Payments,Platby,
+Plan Name,Názov plánu,
+Portal,Portál,
+Scan Barcode,Naskenujte čiarový kód,
+Some information is missing,Niektoré informácie chýbajú,
+Successful,Úspešný,
+Tools,Nástroje,
+Use Sandbox,použitie Sandbox,
+Busy,Zaneprázdnený,
+Completed By,Dokončené kým,
+Payment Failed,platba zlyhala,
+Column {0},Stĺpec {0},
+Field Mapping,Polné mapovanie,
+Not Specified,Nešpecifikované,
+Update Type,Typ aktualizácie,
+Dr,Dr,
+End Time,End Time,
+Fetching...,Načítanie ...,
+"It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","Zdá sa, že existuje problém s konfiguráciou pásma servera. V prípade zlyhania bude suma vrátená na váš účet.",
+Looks like someone sent you to an incomplete URL. Please ask them to look into it.,"Vyzerá to, že vás niekto poslal k neúplnému URL. Požiadajte ho, aby sa na to pozrel.",
+Master,Hlavné,
+Pay,Platiť,
+You can also copy-paste this link in your browser,Můžete také kopírovat - vložit tento odkaz do Vašeho prohlížeče,
+Verified By,Verified By,
+Invalid naming series (. missing) for {0},Neplatný rad pomenovaní (. Chýba) pre {0},
+Phone Number,Telefónne číslo,
+Account SID,SID účtu,
+Global Defaults,Globální Výchozí,
+Is Mandatory,Je povinné,
+WhatsApp,WhatsApp,
+Make a call,Zavolať,
+Approve,schvaľovať,
+Reject,Odmietnuť,
diff --git a/erpnext/translations/sl.csv b/erpnext/translations/sl.csv
index 0cb7a6f..7c4e11b 100644
--- a/erpnext/translations/sl.csv
+++ b/erpnext/translations/sl.csv
@@ -113,7 +113,6 @@
 Add Items,Dodaj artikel,
 Add Leads,Dodaj jezike,
 Add Multiple Tasks,Dodaj več nalog,
-Add Row,Dodaj vrstico,
 Add Sales Partners,Dodaj prodajne partnerje,
 Add Serial No,Dodaj Serijska št,
 Add Students,Dodaj študente,
@@ -211,9 +210,7 @@
 An error occurred during the update process,Pri postopku posodabljanja je prišlo do napake,
 "An item exists with same name ({0}), please change the item group name or rename the item","Element obstaja z istim imenom ({0}), prosimo, spremenite ime postavka skupine ali preimenovanje postavke",
 Analyst,Analitik,
-Analytics,Analytics,
 Annual Billing: {0},Letni obračun: {0},
-Anonymous,Anonimno,
 Another Budget record '{0}' already exists against {1} '{2}' and account '{3}' for fiscal year {4},Drugi proračunski zapis &#39;{0}&#39; že obstaja {1} &#39;{2}&#39; in račun &#39;{3}&#39; za proračunsko leto {4},
 Another Period Closing Entry {0} has been made after {1},Drug zaključnem obdobju Začetek {0} je bil dosežen po {1},
 Another Sales Person {0} exists with the same Employee id,Obstaja še ena Sales Oseba {0} z enako id zaposlenih,
@@ -283,14 +280,12 @@
 Attendance not submitted for {0} as {1} on leave.,Udeležba ni potrjena {0} kot {1} na dopustu.,
 Attribute table is mandatory,Lastnost miza je obvezna,
 Attribute {0} selected multiple times in Attributes Table,Lastnost {0} izbrana večkrat v atributih tabeli,
-Author,Avtor,
 Authorized Signatory,Pooblaščeni podpisnik,
 Auto Material Requests Generated,Auto Material Zahteve Izdelano,
 Auto Repeat,Samodejno ponavljanje,
 Auto repeat document updated,Posodobljen samodejno ponavljanje dokumenta,
 Automotive,Avtomobilizem,
 Available,Na voljo,
-Available Leaves,Na voljo listi,
 Available Qty,Na voljo Količina,
 Available Selling,Razpoložljiva prodaja,
 Available for use date is required,Potreben je datum uporabe,
@@ -340,7 +335,6 @@
 Base URL,Osnovni URL,
 Based On,Temelji na,
 Based On Payment Terms,Na podlagi plačilnih pogojev,
-Basic,Osnovni,
 Batch,Serija,
 Batch Entries,Vstopne serije,
 Batch ID is mandatory,Serija ID je obvezen,
@@ -361,7 +355,6 @@
 Billable Hours,Obračunske ure,
 Billed,Zaračunavajo,
 Billed Amount,Zaračunavajo Znesek,
-Billing,Zaračunavanje,
 Billing Address,Naslov za pošiljanje računa,
 Billing Address is same as Shipping Address,Naslov za izstavitev računa je isti kot naslov za pošiljanje,
 Billing Amount,Zaračunavanje Znesek,
@@ -560,7 +553,6 @@
 Consumed Qty,Porabljeno Kol,
 Consumer Products,Consumer Products,
 Contact,Kontakt,
-Contact Details,Kontaktni podatki,
 Contact Us,Kontaktiraj nas,
 Content,Vsebina,
 Content Masters,Vsebine,
@@ -715,7 +707,6 @@
 Date of Joining,Datum pridružitve,
 Date of Joining must be greater than Date of Birth,Datum pridružitva mora biti večji od datuma rojstva,
 Date of Transaction,Datum transakcije,
-Datetime,Datum in čas,
 Day,Dan,
 Debit,Debet,
 Debit ({0}),Debet ({0}),
@@ -874,7 +865,6 @@
 Employee cannot report to himself.,Delavec ne more poročati zase.,
 Employee {0} has already applied for {1} between {2} and {3} : ,Zaposleni {0} je že zaprosil za {1} med {2} in {3}:,
 Employee {0} of grade {1} have no default leave policy,Zaposleni {0} razreda {1} nimajo pravilnika o privzetem dopustu,
-Enable,Omogoči,
 Enable / disable currencies.,Omogoči / onemogoči valute.,
 Enabled,Omogočeno,
 "Enabling 'Use for Shopping Cart', as Shopping Cart is enabled and there should be at least one Tax Rule for Shopping Cart","Omogočanje &quot;uporabiti za košarico&quot;, kot je omogočeno Košarica in da mora biti vsaj ena Davčna pravilo za Košarica",
@@ -905,7 +895,6 @@
 Error: Not a valid id?,Napaka: ni veljaven ID?,
 Estimated Cost,Ocenjeni strošek,
 "Even if there are multiple Pricing Rules with highest priority, then following internal priorities are applied:","Tudi če obstaja več cenovnih Pravila z najvišjo prioriteto, se uporabljajo nato naslednji notranje prednostne naloge:",
-Event,Dogodek,
 Exchange Gain/Loss,Exchange dobiček / izguba,
 Exchange Rate Revaluation master.,Poveljnik prevrednotenja deviznega tečaja,
 Exchange Rate must be same as {0} {1} ({2}),Menjalni tečaj mora biti enaka kot {0} {1} ({2}),
@@ -1032,7 +1021,6 @@
 From value must be less than to value in row {0},Iz mora biti vrednost manj kot na vrednosti v vrstici {0},
 From {0} | {1} {2},Od {0} | {1} {2},
 Fulfillment,Izpolnitev,
-Full,Poln,
 Full Name,Polno ime,
 Fully Depreciated,celoti amortizirana,
 Furnitures and Fixtures,Pohištvo in Fixtures,
@@ -1133,7 +1121,6 @@
 Hub Sync ID,Sync ID vozlišča,
 Human Resource,Človeški vir,
 Human Resources,Človeški viri,
-IFSC Code,Kodeks IFSC,
 IGST Amount,Znesek IGST,
 IP Address,IP naslov,
 ITC Available (whether in full op part),ITC Na voljo (v celoti v delu),
@@ -1185,7 +1172,6 @@
 Ineligible ITC,Neupravičena ITC,
 Initiated,Začela,
 Inpatient Record,Hišni bolezen,
-Insert,Insert,
 Installation Note,Namestitev Opomba,
 Installation Note {0} has already been submitted,Je že bil predložen Namestitev Opomba {0},
 Installation date cannot be before delivery date for Item {0},Datum namestitve ne more biti pred datumom dostave za postavko {0},
@@ -1197,7 +1183,6 @@
 Insurance Start date should be less than Insurance End date,Datum zavarovanje Začetek sme biti manjša od datuma zavarovanje End,
 Integrated Tax,Integrirani davek,
 Inter-State Supplies,Meddržavne dobrine,
-Interests,Zanima,
 Internet Publishing,Internet Založništvo,
 Intra-State Supplies,Potrebščine znotraj države,
 Introduction,Predstavitev,
@@ -1316,7 +1301,6 @@
 Lab testing datetime cannot be before collection datetime,Testiranje datotečnega laboratorija ne more biti pred zbiranjem datetime,
 Label,Label,
 Laboratory,Laboratorij,
-Language Name,Jezik Ime,
 Large,Velika,
 Last Communication,Zadnje sporočilo,
 Last Communication Date,Zadnje Sporočilo Datum,
@@ -1347,8 +1331,6 @@
 Letter Heads for print templates.,Letter Glave za tiskane predloge.,
 Level,Stopnja,
 Liability,Odgovornost,
-License,Licenca,
-Limit,Limit,
 Limit Crossed,Limit navzkrižnim,
 Link to Material Request,Povezava z zahtevo za material,
 List of all share transactions,Seznam vseh deležev transakcij,
@@ -1359,7 +1341,6 @@
 Loans (Liabilities),Posojili (obveznosti),
 Loans and Advances (Assets),Posojila in predujmi (sredstva),
 Local,Lokalno,
-Log,dnevnik,
 Logs for maintaining sms delivery status,Dnevniki za ohranjanje statusa dostave sms,
 Lost,Lost,
 Lost Reasons,Izgubljeni razlogi,
@@ -1445,7 +1426,6 @@
 Medical Department,Medicinski oddelek,
 Medical Record,Medicinski zapis,
 Medium,Medium,
-Meeting,Srečanje,
 Member Activity,Članska dejavnost,
 Member ID,ID člana,
 Member Name,Ime člana,
@@ -1495,7 +1475,6 @@
 Multiple Variants,Večkratne različice,
 Multiple fiscal years exist for the date {0}. Please set company in Fiscal Year,"obstaja več proračunskih let za datum {0}. Prosim, nastavite podjetje v poslovnem letu",
 Music,Glasba,
-My Account,Moj račun,
 Name error: {0},Ime napaka: {0},
 Name of new Account. Note: Please don't create accounts for Customers and Suppliers,"Ime novega računa. Opomba: Prosimo, da ne ustvarjajo računov za kupce in dobavitelje",
 Name or Email is mandatory,Ime ali e-pošta je obvezna,
@@ -1538,7 +1517,6 @@
 New credit limit is less than current outstanding amount for the customer. Credit limit has to be atleast {0},Nova kreditna meja je nižja od trenutne neporavnani znesek za stranko. Kreditno linijo mora biti atleast {0},
 New task,Nova naloga,
 New {0} pricing rules are created,Izdelana so nova {0} pravila za določanje cen,
-Newsletters,Glasila,
 Newspaper Publishers,Newspaper Publishers,
 Next,Naslednja,
 Next Contact By cannot be same as the Lead Email Address,Naslednja Kontakt Po ne more biti enaka kot vodilni e-poštni naslov,
@@ -1686,7 +1664,6 @@
 Other,Drugi,
 Other Reports,Druga poročila,
 "Other outward supplies(Nil rated,Exempted)","Druge zunanje dobave (ničelno, oproščeno)",
-Others,Drugi,
 Out Qty,Out Kol,
 Out Value,iz Vrednost,
 Out of Order,Ne deluje,
@@ -1726,7 +1703,6 @@
 Party Type and Party is mandatory for {0} account,Vrsta stranke in stranka je obvezna za račun {0},
 Party Type is mandatory,Vrsta Party je obvezen,
 Party is mandatory,Party je obvezen,
-Password,Geslo,
 Past Due Date,Pretekli rok,
 Patient,Bolnik,
 Patient Appointment,Imenovanje pacienta,
@@ -1784,7 +1760,6 @@
 Pharmaceutical,Pharmaceutical,
 Pharmaceuticals,Farmacevtski izdelki,
 Physician,Zdravnik,
-Pincode,Kodi PIN,
 Place Of Supply (State/UT),Kraj dobave (država / UT),
 Place Order,Naročiti,
 Plan Name,Ime načrta,
@@ -1896,7 +1871,6 @@
 Please select date,Izberite datum,
 Please select item code,"Prosimo, izberite postavko kodo",
 Please select month and year,"Prosimo, izberite mesec in leto",
-Please select prefix first,"Prosimo, izberite predpono najprej",
 Please select the Company,Izberite podjetje,
 Please select the Multiple Tier Program type for more than one collection rules.,"Prosimo, izberite vrsto programa z več tirnimi sistemi za več pravil za zbiranje.",
 Please select the assessment group other than 'All Assessment Groups',"Izberite ocenjevalne skupine, razen &quot;vseh skupin za presojo&quot;",
@@ -1913,7 +1887,6 @@
 Please set Company filter blank if Group By is 'Company',"Nastavite Podjetje filtriranje prazno, če skupina Z je &quot;Podjetje&quot;",
 Please set Default Payroll Payable Account in Company {0},"Prosimo, nastavite privzetega izplačane plače je treba plačati račun v družbi {0}",
 Please set Depreciation related Accounts in Asset Category {0} or Company {1},"Prosim, nastavite račune, povezane Amortizacija v sredstvih kategoriji {0} ali družbe {1}",
-Please set Email Address,Nastavite e-poštni naslov,
 Please set GST Accounts in GST Settings,Nastavite GST račune v nastavitvah GST,
 Please set Hotel Room Rate on {},"Prosimo, nastavite hotelsko sobo na {",
 Please set Number of Depreciations Booked,"Prosim, nastavite Število amortizacije Rezervirano",
@@ -1936,7 +1909,6 @@
 Please set the Email ID for the Student to send the Payment Request,"Prosimo, nastavite e-poštni ID za študenta, da pošljete zahtevek za plačilo",
 Please set the Item Code first,Najprej nastavite kodo izdelka,
 Please set the Payment Schedule,"Prosimo, nastavite plačilni načrt",
-Please set the series to be used.,"Prosimo, nastavite serijo za uporabo.",
 Please set {0} for address {1},"Prosimo, nastavite {0} za naslov {1}",
 Please setup Students under Student Groups,"Prosimo, nastavite Študente v študentskih skupinah",
 Please specify Company,"Prosimo, navedite Company",
@@ -1953,7 +1925,6 @@
 Point-of-Sale,Prodajno mesto,
 Point-of-Sale Profile,Point-of-Sale profila,
 Portal,Portal,
-Portal Settings,Portal Nastavitve,
 Possible Supplier,Možni Dobavitelj,
 Postal Expenses,Poštni stroški,
 Posting Date,Napotitev Datum,
@@ -2152,12 +2123,10 @@
 Reference No is mandatory if you entered Reference Date,"Referenčna številka je obvezna, če ste vnesli referenčni datum",
 Reference No.,Referenčna št.,
 Reference Number,Referenčna številka,
-Reference Owner,referenčna lastnika,
 Reference Type,Referenčna Type,
 "Reference: {0}, Item Code: {1} and Customer: {2}",Referenca: {0} Oznaka: {1} in stranke: {2},
 References,Reference,
 Refresh Token,Osveži Token,
-Region,Regija,
 Register,Registriraj se,
 Rejected,Zavrnjeno,
 Related,Podobni,
@@ -2179,7 +2148,6 @@
 Replace BOM and update latest price in all BOMs,Zamenjajte BOM in posodobite najnovejšo ceno v vseh BOM,
 Replied,Odgovorjeno,
 Report,Poročilo,
-Report Builder,Gradnik poročil,
 Report Type,Poročilo Type,
 Report Type is mandatory,Vrsta poročila je obvezna,
 Reports,Poročila,
@@ -2355,13 +2323,11 @@
 Same Company is entered more than once,Ista družba je vpisana več kot enkrat,
 Same item cannot be entered multiple times.,Isti element ni mogoče vnesti večkrat.,
 Same supplier has been entered multiple times,Enako dobavitelj je bila vpisana večkrat,
-Sample,Vzorec,
 Sample Collection,Zbiranje vzorcev,
 Sample quantity {0} cannot be more than received quantity {1},Količina vzorca {0} ne sme biti večja od prejete količine {1},
 Sanctioned,Sankcionirano,
 Sand,Pesek,
 Saturday,Sobota,
-Saved,Shranjena,
 Saving {0},Shranjevanje {0},
 Scan Barcode,Skeniranje črtne kode,
 Schedule,Urnik,
@@ -2463,7 +2429,6 @@
 Series Updated,Zaporedje posodobljeno,
 Series Updated Successfully,Zaporedje uspešno posodobljeno,
 Series is mandatory,Serija je obvezna,
-Series {0} already used in {1},Zaporedje {0} se že uporablja v {1},
 Service,Storitev,
 Service Level Agreement,Sporazum o ravni storitev,
 Service Level Agreement.,Sporazum o ravni storitev.,
@@ -2479,7 +2444,6 @@
 Set Tax Rule for shopping cart,Nastavite Davčna pravilo za nakupovalno košarico,
 Set as Closed,Nastavi kot zaprto,
 Set as Completed,Nastavi kot dokončano,
-Set as Default,Nastavi kot privzeto,
 Set as Lost,Nastavi kot Lost,
 Set as Open,Nastavi kot Odpri,
 Set default inventory account for perpetual inventory,Privzeta nastavitev popis račun za stalne inventarizacije,
@@ -2511,7 +2475,6 @@
 Shareholder,Delničar,
 Ship To State,Pošiljanje v državo,
 Shipments,Pošiljke,
-Shipping,Dostava,
 Shipping Address,naslov za pošiljanje,
 "Shipping Address does not have country, which is required for this Shipping Rule","Naslov za dostavo nima države, ki je potrebna za to pravilo o pošiljanju",
 Shipping rule only applicable for Buying,Pravilo o dostavi velja samo za nakup,
@@ -2564,7 +2527,6 @@
 Split Batch,Split Serija,
 Split Issue,Razdelitev izdaje,
 Sports,Šport,
-Standard,Standardni,
 Standard Buying,Standardna nabavna,
 Standard Selling,Standardna prodaja,
 Standard contract terms for Sales or Purchase.,Standardni pogodbeni pogoji za prodajo ali nakup.,
@@ -2731,7 +2693,6 @@
 Terms and Conditions,Pravila in pogoji,
 Terms and Conditions Template,Pogoji Template,
 Territory,Ozemlje,
-Test,Testna,
 Thank you for your business!,Hvala za vaš posel!,
 The 'From Package No.' field must neither be empty nor it's value less than 1.,&quot;Od paketa št.&quot; polje ne sme biti prazno niti je vrednost manjša od 1.,
 The Brand,Brand,
@@ -2848,7 +2809,6 @@
 Total (Without Tax),Skupaj (brez davka),
 Total Achieved,Skupaj Doseženi,
 Total Actual,Skupaj Actual,
-Total Allocated Leaves,Skupna dodeljena lista,
 Total Amount,Skupni znesek,
 Total Amount Credited,Skupni znesek kredita,
 Total Applicable Charges in Purchase Receipt Items table must be same as Total Taxes and Charges,Skupaj veljavnih cenah na Potrdilo o nakupu postavke tabele mora biti enaka kot Skupaj davkov in dajatev,
@@ -2892,7 +2852,6 @@
 Total(Amt),Skupaj (Amt),
 Total(Qty),Skupaj (Kol),
 Traceability,Sledljivost,
-Traceback,Izslediti,
 Track Leads by Lead Source.,Sledite navodilom po viru.,
 Transaction,Posel,
 Transaction Date,Transakcijski Datum,
@@ -2930,7 +2889,6 @@
 UOM Conversion factor is required in row {0},Faktor UOM Pretvorba je potrebno v vrstici {0},
 UOM coversion factor required for UOM: {0} in Item: {1},"UOM coversion dejavnik, potreben za UOM: {0} v postavki: {1}",
 URL,URL,
-Unable to find DocType {0},Datoteke DocType {0} ni mogoče najti,
 Unable to find exchange rate for {0} to {1} for key date {2}. Please create a Currency Exchange record manually,Mogoče najti menjalni tečaj za {0} in {1} za ključ datumu {2}. Prosimo ustvariti zapis Valuta Exchange ročno,
 Unable to find score starting at {0}. You need to have standing scores covering 0 to 100,"Rezultate ni mogoče najti od {0}. Imeti morate stoječe rezultate, ki pokrivajo od 0 do 100",
 Unable to find variable: ,Ni mogoče najti spremenljivke:,
@@ -2960,7 +2918,6 @@
 Upload your letter head and logo. (you can edit them later).,Naložite svoje pismo glavo in logotip. (lahko jih uredite kasneje).,
 Upper Income,Zgornja Prihodki,
 Use Sandbox,uporaba Sandbox,
-Used Leaves,Uporabljeni listi,
 User,Uporabnik,
 User ID,Uporabniško ime,
 User ID not set for Employee {0},ID uporabnika ni nastavljena za Employee {0},
@@ -3051,7 +3008,6 @@
 Website Settings,Spletna stran Nastavitve,
 Wednesday,Sreda,
 Week,teden,
-Weekdays,Delovni dnevi,
 Weekly,Tedenski,
 "Weight is mentioned,\nPlease mention ""Weight UOM"" too","Teža je omenjeno, \ nProsim omenja &quot;Teža UOM&quot; preveč",
 Welcome email sent,Dobrodošli email poslan,
@@ -3072,7 +3028,6 @@
 Work Order {0} must be submitted,Delovni nalog {0} mora biti predložen,
 Work Orders Created: {0},Ustvarjeni delovni nalogi: {0},
 Work-in-Progress Warehouse is required before Submit,Work-in-Progress Warehouse je pred potreben Submit,
-Workflow,Workflow,
 Working,Delovna,
 Working Hours,Delovni čas,
 Workstation,Workstation,
@@ -3102,7 +3057,6 @@
 You need to be a user other than Administrator with System Manager and Item Manager roles to register on Marketplace.,"Če se želite registrirati v Marketplace, morate biti uporabnik, ki ni administrator, z vlogo Upravitelja sistema in Upravitelja elementov.",
 You need to be a user with System Manager and Item Manager roles to add users to Marketplace.,"Če želite dodati uporabnike v Marketplace, morate biti uporabnik z vlogami upravitelja sistema in upravitelja elementov.",
 You need to be a user with System Manager and Item Manager roles to register on Marketplace.,Za registracijo v Marketplace morate biti uporabnik z vlogami upravitelja sistemov in upravitelja elementov.,
-You need to be logged in to access this page,Morate biti prijavljeni za dostop do te strani,
 You need to enable Shopping Cart,Morate omogočiti Košarica,
 You will lose records of previously generated invoices. Are you sure you want to restart this subscription?,"Izgubili boste zapise o že ustvarjenih računih. Ali ste prepričani, da želite znova zagnati to naročnino?",
 Your Organization,Vaša organizacija,
@@ -3218,7 +3172,6 @@
 Assigned To,Dodeljeno,
 Chat,Klepet,
 Completed By,Dokončano z,
-County,County,
 Day of Week,Dan v tednu,
 "Dear System Manager,","Dragi System Manager,",
 Default Value,Privzeta vrednost,
@@ -3229,31 +3182,21 @@
 Fieldtype,Fieldtype,
 Help Articles,Članki za pomoč,
 ID,ID,
-Images,slike,
 Import,Uvoz,
 Language,Jezik,
 Likes,Likes,
 Merge with existing,Združi z obstoječo,
-Office,Pisarna,
 Orientation,usmerjenost,
 Parent,Parent,
-Passive,Pasivna,
 Payment Failed,plačilo ni uspelo,
-Permanent,Stalno,
 Personal,Osebni,
-Plant,Rastlina,
 Post,Objavi,
-Postal,Postal,
 Postal Code,Poštna številka,
-Previous,Prejšnja,
 Provider,Ponudnik,
 Read Only,Le za branje,
 Recipient,Prejemnik,
 Reviews,Ocene,
 Sender,Sender,
-Shop,Trgovina,
-Subsidiary,Hčerinska družba,
-There is some problem with the file url: {0},Obstaja nekaj problem z datoteko url: {0},
 There were errors while sending email. Please try again.,Tam so bile napake pri pošiljanju e-pošte. Prosim poskusi znova.,
 Values Changed,vrednosti Spremenjeno,
 or,ali,
@@ -3280,19 +3223,16 @@
 Quality Feedback Template,Predloga za povratne informacije o kakovosti,
 Rules for applying different promotional schemes.,Pravila za uporabo različnih promocijskih shem.,
 Show {0},Prikaži {0},
-"Special Characters except '-', '#', '.', '/', '{{' and '}}' not allowed in naming series {0}","Posebni znaki, razen &quot;-&quot;, &quot;#&quot;, &quot;.&quot;, &quot;/&quot;, &quot;{{&quot; In &quot;}}&quot; v poimenovanju ni dovoljen {0}",
 Target Details,Podrobnosti cilja,
 {0} already has a Parent Procedure {1}.,{0} že ima nadrejeni postopek {1}.,
 API,API,
 Annual,Letno,
 Change,Spremeni,
 Contact Email,Kontakt E-pošta,
-Export Type,Izvozna vrsta,
 From Date,Od datuma,
 Group By,Skupina avtorja,
 Invalid URL,Neveljaven URL,
 Landscape,Pokrajina,
-Last Sync On,Zadnja sinhronizacija je vključena,
 Naming Series,Poimenovanje zaporedja,
 No data to export,Ni podatkov za izvoz,
 Portrait,Portret,
@@ -3302,7 +3242,6 @@
 Show Document,Prikaži dokument,
 Show Traceback,Pokaži sled,
 Video,Video,
-Webhook Secret,Spletna skrivnost,
 % Of Grand Total,% Od skupne vsote,
 <b>Company</b> is a mandatory filter.,<b>Podjetje</b> je obvezen filter.,
 <b>From Date</b> is a mandatory filter.,<b>From Date</b> je obvezen filter.,
@@ -3358,7 +3297,6 @@
 BOM Comparison Tool,Orodje za primerjavo BOM,
 BOM recursion: {0} cannot be child of {1},BOM rekurzija: {0} ne more biti otrok od {1},
 BOM recursion: {0} cannot be parent or child of {1},BOM rekurzija: {0} ne sme biti starš ali otrok od {1},
-Back to Home,Nazaj domov,
 Back to Messages,Nazaj na sporočila,
 Bank Data mapper doesn't exist,Bančni podatkovni zemljevid ne obstaja,
 Bank Details,Bančne podrobnosti,
@@ -3420,7 +3358,6 @@
 Currency,Valuta,
 Current Status,Trenutni status,
 Customer PO,Stranka PO,
-Customize,Prilagajanje,
 Daily,Dnevno,
 Date,Datum,
 Date of Birth cannot be greater than Joining Date.,Datum rojstva ne sme biti večji od datuma pridružitve.,
@@ -3454,7 +3391,6 @@
 ERPNext could not find any matching payment entry,ERPNext ni mogel najti nobenega ustreznega vnosa za plačilo,
 Earliest Age,Najstarejša starost,
 Edit Details,Uredite podrobnosti,
-Edit Profile,Uredi profil,
 Either GST Transporter ID or Vehicle No is required if Mode of Transport is Road,"Če je način prevoza cestni, GST Transporter ID ali vozilo ne potrebujeta",
 Email,E-naslov,
 Email Campaigns,E-poštne oglaševalske akcije,
@@ -3482,7 +3418,6 @@
 Fetch Items from Warehouse,Pridobivanje izdelkov iz skladišča,
 Fetching...,Pridobivanje ...,
 Field,field,
-File Manager,Upravitelj datotek,
 Filters,Filtri,
 Finding linked payments,Iskanje povezanih plačil,
 Fleet Management,Fleet management,
@@ -3521,7 +3456,6 @@
 Incorrect Warehouse,Nepravilna skladišča,
 Invalid Barcode. There is no Item attached to this barcode.,Neveljavna črtna koda. Na tej črtni kodi ni nobenega predmeta.,
 Invalid credentials,Neveljavne poverilnice,
-Invite as User,Povabi kot uporabnik,
 Issue Priority.,Prednostna izdaja.,
 Issue Type.,Vrsta izdaje,
 "It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","Zdi se, da obstaja težava s strežniško konfiguracijo črtne kode. V primeru neuspeha bo znesek povrnjen na vaš račun.",
@@ -3564,7 +3498,6 @@
 New Invoice,Nov račun,
 New Payment,Novo plačilo,
 New release date should be in the future,Nov datum izida bi moral biti v prihodnosti,
-Newsletter,Glasilo,
 No Account matched these filters: {},Noben račun se ni ujemal s temi filtri: {},
 No communication found.,Sporočila ni mogoče najti.,
 No correct answer is set for {0},Za {0} ni nastavljen pravilen odgovor,
@@ -3640,7 +3573,6 @@
 Please setup a default bank account for company {0},Nastavite privzeti bančni račun za podjetje {0},
 Please specify,"Prosimo, navedite",
 Please specify a {0},Navedite {0},lead
-Printing,Tiskanje,
 Priority,Prednost,
 Priority has been changed to {0}.,Prednost je spremenjena na {0}.,
 Priority {0} has been repeated.,Prednost {0} se je ponovila.,
@@ -3649,7 +3581,6 @@
 Project,Projekt,
 Provide the academic year and set the starting and ending date.,Navedite študijsko leto in določite datum začetka in konca.,
 Public token is missing for this bank,Za to banko manjka javni žeton,
-Publish,Objavi,
 Publish 1 Item,Objavite 1 kos,
 Publish Items,Objavite predmete,
 Publish More Items,Objavite več predmetov,
@@ -3677,7 +3608,6 @@
 Reconciled,Pomirjen,
 Recruitment,Zaposlovanje,
 Red,Red,
-Refreshing,Osvežujoč,
 Release date must be in the future,Datum izdaje mora biti v prihodnosti,
 Relieving Date must be greater than or equal to Date of Joining,Datum razrešitve mora biti večji ali enak datumu pridružitve,
 Rename,Preimenovanje,
@@ -3721,7 +3651,6 @@
 Search for a payment,Poiščite plačilo,
 Search for anything ...,Poiščite karkoli ...,
 Search results for,Rezultati iskanja,
-Select All,Izberi vse,
 Select Difference Account,Izberite račun za razlike,
 Select a Default Priority.,Izberite privzeto prioriteto.,
 Select a company,Izberite podjetje,
@@ -3740,11 +3669,9 @@
 Service Level Agreement has been changed to {0}.,Pogodba o ravni storitve je spremenjena na {0}.,
 Service Level Agreement was reset.,Sporazum o ravni storitev je bil ponastavljen.,
 Service Level Agreement with Entity Type {0} and Entity {1} already exists.,Pogodba o ravni storitve s tipom entitete {0} in entiteto {1} že obstaja.,
-Set,Set,
 Set Meta Tags,Nastavite Meta oznake,
 Set {0} in company {1},Nastavite {0} v podjetju {1},
 Setup,Nastavitve,
-Setup Wizard,Setup Wizard,
 Shift Management,Shift Management,
 Show Future Payments,Prikažite bodoča plačila,
 Show Linked Delivery Notes,Pokaži povezane dobavnice,
@@ -3815,7 +3742,6 @@
 Unreconciled,Neusklajeno,
 Unsupported GST Category for E-Way Bill JSON generation,Nepodprta kategorija GST za E-Way Bill JSON generacije,
 Update,Update,
-Update Details,Posodobite podrobnosti,
 Update Taxes for Items,Posodobite davke za izdelke,
 "Upload a bank statement, link or reconcile a bank account","Naložite bančni izpisek, povežite ali uskladite bančni račun",
 Upload a statement,Naložite izjavo,
@@ -3839,7 +3765,6 @@
 XML Files Processed,Obdelane datoteke XML,
 Year,Leto,
 Yearly,Letni,
-You,Vi,
 You are not allowed to enroll for this course,Nimate dovoljenja za vpis na ta tečaj,
 You are not enrolled in program {0},Niste vpisani v program {0},
 You can Feature upto 8 items.,Predstavite lahko do 8 elementov.,
@@ -3856,7 +3781,6 @@
 e-Way Bill already exists for this document,Ta dokument že obstaja,
 woocommerce - {0},woocommerce - {0},
 {0} Coupon used are {1}. Allowed quantity is exhausted,{0} Uporabljeni kuponi so {1}. Dovoljena količina je izčrpana,
-{0} Name,{0} Ime,
 {0} Operations: {1},{0} Operacije: {1},
 {0} bank transaction(s) created,{0} ustvarili bančne transakcije,
 {0} bank transaction(s) created and {1} errors,{0} nastale bančne transakcije in {1} napake,
@@ -3875,17 +3799,13 @@
 Total Income,Skupni dohodek,
 Total Income This Year,Skupni dohodek v tem letu,
 Barcode,Črtna koda,
-Bold,Drzno,
-Center,Center,
 Clear,Jasno,
-Comment,Komentar,
 Comments,Komentarji,
 DocType,DocType,
 Download,Prenesi,
 Left,Levo,
 Link,Povezava,
 New,Novo,
-Not Found,Ni najdeno,
 Print,Natisni,
 Reference Name,Referenčno ime,
 Refresh,Osveži,
@@ -3908,7 +3828,6 @@
 Email Id,E-pošta ID,
 No,Ne,
 Reference Doctype,Referenčna DOCTYPE,
-User Id,Uporabniško ime,
 Yes,Da,
 Actual ,Actual,
 Add to cart,Dodaj v voziček,
@@ -4304,7 +4223,6 @@
 e.g Adjustments for:,npr. prilagoditve za:,
 Section Subtotal,Vmesni del vsote,
 Section Footer,Noga odseka,
-Position,Položaj,
 Cash Flow Mapping,Kartiranje denarnih tokov,
 Select Maximum Of 1,Izberite največ 1,
 Is Finance Cost,Je strošek financiranja,
@@ -4936,7 +4854,6 @@
 Previous Business Day,Prejšnji delovni dan,
 Next Business Day,Naslednji delovni dan,
 Urgent,Nujna,
-Crop,Pridelek,
 Crop Name,Ime pridelka,
 Scientific Name,Znanstveno ime,
 "You can define all the tasks which need to carried out for this crop here. The day field is used to mention the day on which the task needs to be carried out, 1 being the 1st day, etc.. ","Določite lahko vse naloge, ki jih je treba izvesti za ta pridelek tukaj. Dansko polje se uporablja za navedbo dneva, ko je naloga treba opraviti, 1 je 1. dan itd.",
@@ -5441,7 +5358,6 @@
 To TIme,Time,
 Course End Date,Seveda Končni datum,
 Course Topic,Tema predmeta,
-Topic,tema,
 Topic Name,Ime temo,
 Education Settings,Nastavitve izobraževanja,
 Current Academic Year,Trenutni študijsko leto,
@@ -5516,7 +5432,6 @@
 Check this if the Student is residing at the Institute's Hostel.,"Označite to, če je študent s stalnim prebivališčem v Hostel inštituta.",
 Walking,Hoditi,
 Institute's Bus,Inštitutski avtobus,
-Public Transport,Javni prevoz,
 Self-Driving Vehicle,Self-Vožnja vozil,
 Pick/Drop by Guardian,Pick / znižala za Guardian,
 Enrolled courses,vpisani tečaji,
@@ -5697,7 +5612,6 @@
 Default Cost Center,Privzet Stroškovni Center,
 Undeposited Funds Account,Račun nedefiniranih skladov,
 Shopify Log,Nakup dnevnika,
-Request Data,Zahtevajte podatke,
 Shopify Settings,Nakup nastavitev,
 status html,status html,
 Enable Shopify,Omogoči Shopify,
@@ -5817,7 +5731,6 @@
 Exercise Instructions,Navodila za vadbo,
 Exercise Video,Video za vajo,
 Exercise Steps,Koraki za vadbo,
-Steps,Koraki,
 Steps Table,Tabela korakov,
 Exercise Type Step,Korak vrste vadbe,
 Max number of visit,Največje število obiska,
@@ -6001,7 +5914,6 @@
 Patient Encounter Symptom,Simptom pacientovega srečanja,
 HLC-PMR-.YYYY.-,HLC-PMR-YYYY.-,
 Attach Medical Record,Priložite zdravstveni karton,
-Reference DocType,Referenčni DocType,
 Spouse,Zakonec,
 Family,Družina,
 Schedule Details,Podrobnosti urnika,
@@ -6983,16 +6895,8 @@
 HTML / Banner that will show on the top of product list.,"HTML pasica, ki se bo prikazala na vrhu seznama izdelkov.",
 Set prefix for numbering series on your transactions,Nastavite predpona za številčenje serij na vaše transakcije,
 Setup Series,Nastavitve zaporedja,
-Select Transaction,Izberite Transaction,
-Help HTML,Pomoč HTML,
-Series List for this Transaction,Seznam zaporedij za to transakcijo,
-User must always select,Uporabnik mora vedno izbrati,
-Check this if you want to force the user to select a series before saving. There will be no default if you check this.,"Označite to, če želite, da prisili uporabnika, da izberete vrsto pred shranjevanjem. Tam ne bo privzeto, če to preverite.",
 Update Series,Posodobi zaporedje,
 Change the starting / current sequence number of an existing series.,Spremenite izhodiščno / trenutno zaporedno številko obstoječega zaporedja.,
-Prefix,Predpona,
-This is the number of the last created transaction with this prefix,To je številka zadnjega ustvarjene transakcijo s tem predpono,
-Update Series Number,Posodobi številko zaporedja,
 Quotation Lost Reason,Kotacija Lost Razlog,
 A third party distributor / dealer / commission agent / affiliate / reseller who sells the companies products for a commission.,"Distributer tretja oseba / trgovec / provizije agent / podružnica / prodajalec, ki prodaja podjetja, izdelke za provizijo.",
 Sales Partner Name,Prodaja Partner Name,
@@ -7687,7 +7591,6 @@
 Warehouse wise Item Balance Age and Value,Skladiščno pametno Postavka Balansna doba in vrednost,
 Work Order Stock Report,Poročilo o delovni nalogi,
 Work Orders in Progress,Delovni nalogi v teku,
-Validation Error,Napaka pri preverjanju,
 Automatically Process Deferred Accounting Entry,Samodejno obdelaj odloženi računovodski vnos,
 Bank Clearance,Obračun bank,
 Bank Clearance Detail,Podrobnosti o bančnem obračunu,
@@ -7724,45 +7627,7 @@
 Therapy Plan: ,Načrt terapije:,
 Total Counts Targeted: ,Skupno ciljno štetje:,
 Total Counts Completed: ,Skupno zaključeno štetje:,
-Andaman and Nicobar Islands,Andamanski in Nikobarski otoki,
-Andhra Pradesh,Andhra Pradesh,
-Arunachal Pradesh,Arunachal Pradesh,
-Assam,Assam,
-Bihar,Bihar,
-Chandigarh,Chandigarh,
-Chhattisgarh,Chhattisgarh,
-Dadra and Nagar Haveli,Dadra in Nagar Haveli,
-Daman and Diu,Daman in Diu,
-Delhi,Delhi,
-Goa,Goa,
-Gujarat,Gujarat,
-Haryana,Haryana,
-Himachal Pradesh,Himachal Pradesh,
-Jammu and Kashmir,Džamu in Kašmir,
-Jharkhand,Jharkhand,
-Karnataka,Karnataka,
-Kerala,Kerala,
-Lakshadweep Islands,Otoki Lakshadweep,
-Madhya Pradesh,Madhya Pradesh,
-Maharashtra,Maharaštra,
-Manipur,Manipur,
-Meghalaya,Meghalaya,
-Mizoram,Mizoram,
-Nagaland,Nagaland,
-Odisha,Odisha,
-Other Territory,Drugo ozemlje,
-Pondicherry,Pondicherry,
-Punjab,Punjab,
-Rajasthan,Rajasthan,
-Sikkim,Sikkim,
-Tamil Nadu,Tamil Nadu,
-Telangana,Telangana,
-Tripura,Tripura,
-Uttar Pradesh,Uttar Pradesh,
-Uttarakhand,Uttarakhand,
-West Bengal,Zahodna Bengalija,
 Is Mandatory,Je obvezno,
-Published on,Objavljeno dne,
 Service Received But Not Billed,"Storitev prejeta, vendar ne obračunana",
 Deferred Accounting Settings,Odložene nastavitve računovodstva,
 Book Deferred Entries Based On,Rezervirajte odložene vnose na podlagi,
@@ -8035,8 +7900,6 @@
 Worksheet Instructions,Navodila za delovni list,
 Result Legend Print,Rezultat Legenda Natisni,
 Print Position,Položaj tiskanja,
-Bottom,Spodaj,
-Top,Na vrh,
 Both,Oboje,
 Result Legend,Legenda rezultata,
 Lab Tests,Laboratorijski testi,
@@ -8081,12 +7944,10 @@
 Approvers,Odobritelji,
 The first Approver in the list will be set as the default Approver.,Prvi odobritelj na seznamu bo nastavljen kot privzeti odobritelj.,
 Shift Request Approver,Odobritelj zahteve za premik,
-PAN Number,Številka PAN,
 Provident Fund Account,Račun rezervnega sklada,
 MICR Code,Koda MICR,
 Repay unclaimed amount from salary,Vrnite neizterjani znesek iz plače,
 Deduction from salary,Odbitek od plače,
-Expired Leaves,Potekli listi,
 If this is not checked the loan by default will be considered as a Demand Loan,"Če to ni potrjeno, bo posojilo privzeto obravnavano kot posojilo na zahtevo",
 This account is used for booking loan repayments from the borrower and also disbursing loans to the borrower,Ta račun se uporablja za rezervacijo odplačil posojilojemalca in tudi za izplačilo posojil posojilojemalcu,
 This account is capital account which is used to allocate capital for loan disbursal account ,"Ta račun je račun kapitala, ki se uporablja za dodelitev kapitala za račun izplačila posojila",
@@ -8844,3 +8705,41 @@
 Creating Purchase Order ...,Ustvarjanje naročilnice ...,
 "Select a Supplier from the Default Suppliers of the items below. On selection, a Purchase Order will be made against items belonging to the selected Supplier only.","Izberite dobavitelja med privzetimi dobavitelji spodnjih elementov. Po izbiri bo naročilnica narejena samo za izdelke, ki pripadajo izbranemu dobavitelju.",
 Row #{}: You must select {} serial numbers for item {}.,Vrstica # {}: Izbrati morate {} serijske številke za izdelek {}.,
+Add Comment,Dodaj komentar,
+More...,Več ...,
+Notes,Opombe,
+Payment Gateway,Plačilo Gateway,
+Payment Gateway Name,Ime plačilnega prehoda,
+Payments,Plačila,
+Plan Name,Ime načrta,
+Portal,Portal,
+Scan Barcode,Skeniranje črtne kode,
+Some information is missing,Nekateri podatki manjkajo,
+Successful,Uspešno,
+Tools,Orodja,
+Use Sandbox,uporaba Sandbox,
+Busy,Zaseden,
+Completed By,Dokončano z,
+Payment Failed,plačilo ni uspelo,
+Column {0},Stolpec {0},
+Field Mapping,Kartiranje polja,
+Not Specified,Ni določeno,
+Update Type,Vrsta posodobitve,
+Dr,Dr,
+End Time,Končni čas,
+Fetching...,Pridobivanje ...,
+"It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","Zdi se, da obstaja težava s strežniško konfiguracijo črtne kode. V primeru neuspeha bo znesek povrnjen na vaš račun.",
+Looks like someone sent you to an incomplete URL. Please ask them to look into it.,"Izgleda, da nekdo pošlje na nepopolno URL. Prosite, da pogled na to.",
+Master,Master,
+Pay,Plačajte,
+You can also copy-paste this link in your browser,"Lahko tudi kopirate, prilepite to povezavo v vašem brskalniku",
+Verified By,Verified by,
+Invalid naming series (. missing) for {0},Neveljavna serija poimenovanj (. Manjka) za {0},
+Phone Number,Telefonska številka,
+Account SID,SID računa,
+Global Defaults,Globalni Privzeto,
+Is Mandatory,Je obvezno,
+WhatsApp,WhatsApp,
+Make a call,Opraviti klic,
+Approve,Odobri,
+Reject,Zavrni,
diff --git a/erpnext/translations/sq.csv b/erpnext/translations/sq.csv
index 742dfcc..0f10795 100644
--- a/erpnext/translations/sq.csv
+++ b/erpnext/translations/sq.csv
@@ -113,7 +113,6 @@
 Add Items,Shto Items,
 Add Leads,Shto kryeson,
 Add Multiple Tasks,Shto detyra të shumëfishta,
-Add Row,Shto Row,
 Add Sales Partners,Shtoni Partnerët e Shitjes,
 Add Serial No,Shto Jo Serial,
 Add Students,Shto Studentët,
@@ -211,9 +210,7 @@
 An error occurred during the update process,Gjatë procesit të azhurnimit ndodhi një gabim,
 "An item exists with same name ({0}), please change the item group name or rename the item","Një artikull ekziston me të njëjtin emër ({0}), ju lutemi të ndryshojë emrin e grupit pika ose riemërtoj pika",
 Analyst,analist,
-Analytics,analitikë,
 Annual Billing: {0},Faturimi vjetore: {0},
-Anonymous,anonim,
 Another Budget record '{0}' already exists against {1} '{2}' and account '{3}' for fiscal year {4},Një tjetër rekord i buxhetit &#39;{0}&#39; tashmë ekziston kundër {1} &#39;{2}&#39; dhe llogari &#39;{3}&#39; për vitin fiskal {4},
 Another Period Closing Entry {0} has been made after {1},Një tjetër Periudha Mbyllja Hyrja {0} është bërë pas {1},
 Another Sales Person {0} exists with the same Employee id,Një person tjetër Sales {0} ekziston me të njëjtin id punonjës,
@@ -283,14 +280,12 @@
 Attendance not submitted for {0} as {1} on leave.,Pjesëmarrja nuk është dorëzuar për {0} si {1} në pushim.,
 Attribute table is mandatory,Tabela atribut është i detyrueshëm,
 Attribute {0} selected multiple times in Attributes Table,Atribut {0} zgjedhur disa herë në atributet Tabelën,
-Author,autor,
 Authorized Signatory,Nënshkrues i autorizuar,
 Auto Material Requests Generated,Kërkesat Auto Materiale Generated,
 Auto Repeat,Repeat automatikisht,
 Auto repeat document updated,Dokumenti i përsëritjes automatike përditësohej,
 Automotive,automobilistik,
 Available,në dispozicion,
-Available Leaves,Lejet e disponueshme,
 Available Qty,Qty në dispozicion,
 Available Selling,Shitja në dispozicion,
 Available for use date is required,Kërkohet data e përdorimit,
@@ -340,7 +335,6 @@
 Base URL,URL bazë,
 Based On,Bazuar në,
 Based On Payment Terms,Bazuar në Kushtet e Pagesës,
-Basic,themelor,
 Batch,grumbull,
 Batch Entries,Hyrjet në grupe,
 Batch ID is mandatory,Grumbull ID është i detyrueshëm,
@@ -361,7 +355,6 @@
 Billable Hours,Orari i faturimit,
 Billed,faturuar,
 Billed Amount,Shuma e faturuar,
-Billing,Faturimi,
 Billing Address,Faturimi Adresa,
 Billing Address is same as Shipping Address,Adresa e Faturimit është e njëjtë me Adresa e Transportit,
 Billing Amount,Shuma Faturimi,
@@ -560,7 +553,6 @@
 Consumed Qty,Konsumuar Qty,
 Consumer Products,Consumer Products,
 Contact,Kontakt,
-Contact Details,Detajet Kontakt,
 Contact Us,Na kontaktoni,
 Content,I kënaqur,
 Content Masters,Mjeshtrat e përmbajtjes,
@@ -715,7 +707,6 @@
 Date of Joining,Data e Bashkimi,
 Date of Joining must be greater than Date of Birth,Data e bashkuar duhet të jetë më i madh se Data e lindjes,
 Date of Transaction,Data e transaksionit,
-Datetime,Datetime,
 Day,ditë,
 Debit,debi,
 Debit ({0}),Debiti ({0}),
@@ -874,7 +865,6 @@
 Employee cannot report to himself.,Punonjësi nuk mund të raportojnë për veten e tij.,
 Employee {0} has already applied for {1} between {2} and {3} : ,Punonjësi {0} ka aplikuar për {1} mes {2} dhe {3}:,
 Employee {0} of grade {1} have no default leave policy,Punonjësi {0} i klasës {1} nuk ka politikë pushimi default,
-Enable,mundësoj,
 Enable / disable currencies.,Enable / disable monedhave.,
 Enabled,Aktivizuar,
 "Enabling 'Use for Shopping Cart', as Shopping Cart is enabled and there should be at least one Tax Rule for Shopping Cart","Duke bërë të mundur &#39;Përdorimi për Shportë&#39;, si Shporta është aktivizuar dhe duhet të ketë të paktën një Rule Tax per Shporta",
@@ -905,7 +895,6 @@
 Error: Not a valid id?,Gabim: Nuk është një ID të vlefshme?,
 Estimated Cost,Kostoja e vlerësuar,
 "Even if there are multiple Pricing Rules with highest priority, then following internal priorities are applied:","Edhe në qoftë se ka rregulla të shumta çmimeve me prioritet më të lartë, prioritetet e brendshme atëherë në vijim aplikohen:",
-Event,Ngjarje,
 Exchange Gain/Loss,Exchange Gain / Humbje,
 Exchange Rate Revaluation master.,Master i rivlerësimit të kursit të këmbimit.,
 Exchange Rate must be same as {0} {1} ({2}),Exchange Rate duhet të jetë i njëjtë si {0} {1} ({2}),
@@ -1032,7 +1021,6 @@
 From value must be less than to value in row {0},Nga Vlera duhet të jetë më pak se të vlerës në rresht {0},
 From {0} | {1} {2},Nga {0} | {1} {2},
 Fulfillment,përmbushje,
-Full,i plotë,
 Full Name,Emri i plotë,
 Fully Depreciated,amortizuar plotësisht,
 Furnitures and Fixtures,Furnitures dhe Regjistrimet,
@@ -1133,7 +1121,6 @@
 Hub Sync ID,ID e sinkronizimit të Hub,
 Human Resource,Burimeve Njerëzore,
 Human Resources,Burimeve Njerëzore,
-IFSC Code,Kodi IFSC,
 IGST Amount,Shuma IGST,
 IP Address,Adresa IP,
 ITC Available (whether in full op part),ITC në dispozicion (qoftë në pjesën e plotë të op),
@@ -1185,7 +1172,6 @@
 Ineligible ITC,ITC i papranueshëm,
 Initiated,Iniciuar,
 Inpatient Record,Regjistri ambulator,
-Insert,Fut,
 Installation Note,Instalimi Shënim,
 Installation Note {0} has already been submitted,Instalimi Shënim {0} tashmë është dorëzuar,
 Installation date cannot be before delivery date for Item {0},Data Instalimi nuk mund të jetë para datës së dorëzimit për pika {0},
@@ -1197,7 +1183,6 @@
 Insurance Start date should be less than Insurance End date,date Insurance Fillimi duhet të jetë më pak se data Insurance Fund,
 Integrated Tax,Taksa e integruar,
 Inter-State Supplies,Pajisjet Ndër-Shtetërore,
-Interests,interesat,
 Internet Publishing,Botime Internet,
 Intra-State Supplies,Pajisjet brenda shtetit,
 Introduction,Paraqitje,
@@ -1316,7 +1301,6 @@
 Lab testing datetime cannot be before collection datetime,Datetime testimi i laboratorit nuk mund të jetë para datës së grumbullimit,
 Label,Etiketë,
 Laboratory,laborator,
-Language Name,Gjuha Emri,
 Large,i madh,
 Last Communication,Komunikimi i fundit,
 Last Communication Date,Data e fundit Komunikimi,
@@ -1347,8 +1331,6 @@
 Letter Heads for print templates.,Kryetarët letër për të shtypura templates.,
 Level,Nivel,
 Liability,detyrim,
-License,Liçensë,
-Limit,limit,
 Limit Crossed,Limit Kaloi,
 Link to Material Request,Lidhje me kërkesën materiale,
 List of all share transactions,Lista e të gjitha transaksioneve të aksioneve,
@@ -1359,7 +1341,6 @@
 Loans (Liabilities),Kredi (obligimeve),
 Loans and Advances (Assets),Kreditë dhe paradhëniet (aktiveve),
 Local,Lokal,
-Log,Identifikohu,
 Logs for maintaining sms delivery status,Shkrime për ruajtjen e statusit të dorëzimit SMS,
 Lost,i humbur,
 Lost Reasons,Arsyet e humbura,
@@ -1445,7 +1426,6 @@
 Medical Department,Departamenti i Mjekësisë,
 Medical Record,Regjistri mjekësor,
 Medium,Medium,
-Meeting,takim,
 Member Activity,Aktiviteti Anëtar,
 Member ID,ID e anëtarit,
 Member Name,Emri i Anëtarit,
@@ -1495,7 +1475,6 @@
 Multiple Variants,Variante të shumëfishta,
 Multiple fiscal years exist for the date {0}. Please set company in Fiscal Year,vite të shumta fiskale ekzistojnë për datën {0}. Ju lutemi të vënë kompaninë në vitin fiskal,
 Music,muzikë,
-My Account,Llogaria ime,
 Name error: {0},Emri error: {0},
 Name of new Account. Note: Please don't create accounts for Customers and Suppliers,Emri i llogarisë së re. Shënim: Ju lutem mos krijoni llogari për klientët dhe furnizuesit,
 Name or Email is mandatory,Emri ose adresa është e detyrueshme,
@@ -1538,7 +1517,6 @@
 New credit limit is less than current outstanding amount for the customer. Credit limit has to be atleast {0},Kufiri i ri i kredisë është më pak se shuma aktuale të papaguar për konsumatorin. kufiri i kreditit duhet të jetë atleast {0},
 New task,Detyra e re,
 New {0} pricing rules are created,Janë krijuar rregulla të reja {0} të çmimeve,
-Newsletters,Buletinet,
 Newspaper Publishers,Gazeta Botuesit,
 Next,Tjetër,
 Next Contact By cannot be same as the Lead Email Address,Next kontaktoni me nuk mund të jetë i njëjtë si adresë Lead Email,
@@ -1686,7 +1664,6 @@
 Other,Tjetër,
 Other Reports,Raportet tjera,
 "Other outward supplies(Nil rated,Exempted)","Furnizime të tjera të jashtme (vlerësuar me Nil, Përjashtuar)",
-Others,Të tjerët,
 Out Qty,Nga Qty,
 Out Value,Vlera out,
 Out of Order,Jashtë përdorimit,
@@ -1726,7 +1703,6 @@
 Party Type and Party is mandatory for {0} account,Lloji i Partisë dhe Partia është i detyrueshëm për llogarinë {0},
 Party Type is mandatory,Lloji Party është e detyrueshme,
 Party is mandatory,Partia është e detyrueshme,
-Password,Fjalëkalim,
 Past Due Date,Data e Kaluar e Kaluar,
 Patient,pacient,
 Patient Appointment,Emërimi i pacientit,
@@ -1784,7 +1760,6 @@
 Pharmaceutical,farmaceutike,
 Pharmaceuticals,farmaceutike,
 Physician,mjek,
-Pincode,Pincode,
 Place Of Supply (State/UT),Vendi i Furnizimit (Shteti / UT),
 Place Order,Vendi Renditja,
 Plan Name,Emri i Planit,
@@ -1896,7 +1871,6 @@
 Please select date,Ju lutemi zgjidhni data,
 Please select item code,Ju lutemi zgjidhni kodin pika,
 Please select month and year,"Ju lutem, përzgjidhni muaji dhe viti",
-Please select prefix first,"Ju lutem, përzgjidhni prefiks parë",
 Please select the Company,Ju lutemi zgjidhni Kompaninë,
 Please select the Multiple Tier Program type for more than one collection rules.,Ju lutemi zgjidhni llojin e Programit Multiple Tier për më shumë se një rregulla mbledhjeje.,
 Please select the assessment group other than 'All Assessment Groups',Ju lutemi zgjidhni grupin e vlerësimit të tjera se &quot;të gjitha grupet e vlerësimit &#39;,
@@ -1913,7 +1887,6 @@
 Please set Company filter blank if Group By is 'Company',Ju lutemi të vendosur Company filtër bosh nëse Group By është &#39;Company&#39;,
 Please set Default Payroll Payable Account in Company {0},Ju lutemi të vendosur Default Payroll Llogaria e pagueshme në Kompaninë {0},
 Please set Depreciation related Accounts in Asset Category {0} or Company {1},Ju lutemi të vendosur Llogaritë zhvlerësimit lidhur në Kategorinë Aseteve {0} ose kompanisë {1},
-Please set Email Address,Ju lutemi të vendosur Email Adresa,
 Please set GST Accounts in GST Settings,Vendosni Llogaritë GST në Cilësimet GST,
 Please set Hotel Room Rate on {},Ju lutemi përcaktoni vlerën e dhomës së hotelit në {},
 Please set Number of Depreciations Booked,Ju lutemi të vendosur Numri i nënçmime rezervuar,
@@ -1936,7 +1909,6 @@
 Please set the Email ID for the Student to send the Payment Request,Ju lutemi vendosni ID Email për Studentin për të dërguar Kërkesën e Pagesës,
 Please set the Item Code first,Ju lutemi të vendosni fillimisht Kodin e Artikullit,
 Please set the Payment Schedule,Ju lutemi vendosni Programin e Pagesave,
-Please set the series to be used.,Ju lutem vendosni serinë që do të përdoret.,
 Please set {0} for address {1},Ju lutem vendosni {0} për adresën {1},
 Please setup Students under Student Groups,Ju lutemi të organizoni Studentët nën Grupet Studentore,
 Please specify Company,Ju lutem specifikoni Company,
@@ -1953,7 +1925,6 @@
 Point-of-Sale,Point-of-Sale,
 Point-of-Sale Profile,Point-of-Sale Profilin,
 Portal,Portal,
-Portal Settings,Cilësimet Portal,
 Possible Supplier,mundur Furnizuesi,
 Postal Expenses,Shpenzimet postare,
 Posting Date,Posting Data,
@@ -2152,12 +2123,10 @@
 Reference No is mandatory if you entered Reference Date,"Referenca Nuk është e detyrueshme, nëse keni hyrë Reference Data",
 Reference No.,Nr. I referencës,
 Reference Number,Numri i referencës,
-Reference Owner,Reference Owner,
 Reference Type,Referenca Type,
 "Reference: {0}, Item Code: {1} and Customer: {2}",Referenca: {0} Artikull Code: {1} dhe klientit: {2},
 References,Referencat,
 Refresh Token,Refresh Token,
-Region,Rajon,
 Register,Regjistrohu,
 Rejected,Refuzuar,
 Related,i lidhur,
@@ -2179,7 +2148,6 @@
 Replace BOM and update latest price in all BOMs,Replace BOM dhe update çmimin e fundit në të gjitha BOMs,
 Replied,U përgjigj,
 Report,Raport,
-Report Builder,Raporti Builder,
 Report Type,Raporti Type,
 Report Type is mandatory,Raporti Lloji është i detyrueshëm,
 Reports,raportet,
@@ -2355,13 +2323,11 @@
 Same Company is entered more than once,Njëjta kompani është futur më shumë se një herë,
 Same item cannot be entered multiple times.,Same artikull nuk mund të futen shumë herë.,
 Same supplier has been entered multiple times,Same furnizuesi është lidhur shumë herë,
-Sample,Mostër,
 Sample Collection,Sample Collection,
 Sample quantity {0} cannot be more than received quantity {1},Sasia e mostrës {0} nuk mund të jetë më e madhe sesa {1},
 Sanctioned,sanksionuar,
 Sand,rërë,
 Saturday,E shtunë,
-Saved,Saved,
 Saving {0},Ruajtja {0},
 Scan Barcode,Skanoni barkodin,
 Schedule,orar,
@@ -2463,7 +2429,6 @@
 Series Updated,Seria Përditësuar,
 Series Updated Successfully,Seria Përditësuar sukses,
 Series is mandatory,Seria është i detyrueshëm,
-Series {0} already used in {1},Seria {0} përdorur tashmë në {1},
 Service,Shërbim,
 Service Level Agreement,Marrëveshja e nivelit të shërbimit,
 Service Level Agreement.,Marrëveshja e nivelit të shërbimit.,
@@ -2479,7 +2444,6 @@
 Set Tax Rule for shopping cart,Set Rregulla Taksa për shopping cart,
 Set as Closed,Bëje si Mbyllur,
 Set as Completed,Vendos si e plotësuar,
-Set as Default,Vendosur si default,
 Set as Lost,Bëje si Lost,
 Set as Open,Bëje si Open,
 Set default inventory account for perpetual inventory,Bëje llogari inventarit parazgjedhur për inventarit të përhershëm,
@@ -2511,7 +2475,6 @@
 Shareholder,aksionari,
 Ship To State,Anije në shtet,
 Shipments,dërgesat,
-Shipping,Transporti,
 Shipping Address,Transporti Adresa,
 "Shipping Address does not have country, which is required for this Shipping Rule","Adresa e transportit nuk ka vend, i cili kërkohet për këtë Rregull të Transportit",
 Shipping rule only applicable for Buying,Rregullimi i transportit është i zbatueshëm vetëm për Blerjen,
@@ -2564,7 +2527,6 @@
 Split Batch,Batch Split,
 Split Issue,Split Çështja,
 Sports,sportiv,
-Standard,Standard,
 Standard Buying,Blerja Standard,
 Standard Selling,Shitja Standard,
 Standard contract terms for Sales or Purchase.,Kushtet e kontratës standarde për shitje ose blerje.,
@@ -2731,7 +2693,6 @@
 Terms and Conditions,Termat dhe Kushtet,
 Terms and Conditions Template,Termat dhe Kushtet Template,
 Territory,territor,
-Test,Provë,
 Thank you for your business!,Ju faleminderit për biznesin tuaj!,
 The 'From Package No.' field must neither be empty nor it's value less than 1.,&#39;Nga Paketa Nr&#39; fusha nuk duhet të jetë as bosh as vlera e saj më e vogël se 1.,
 The Brand,Markë,
@@ -2848,7 +2809,6 @@
 Total (Without Tax),Totali (Pa Tatimore),
 Total Achieved,Gjithsej Arritur,
 Total Actual,Gjithsej aktuale,
-Total Allocated Leaves,Totali i lëkundjeve të alokuara,
 Total Amount,Shuma totale,
 Total Amount Credited,Shuma totale e kredituar,
 Total Applicable Charges in Purchase Receipt Items table must be same as Total Taxes and Charges,Akuzat totale të zbatueshme në Blerje tryezë Receipt artikujt duhet të jetë i njëjtë si Total taksat dhe tarifat,
@@ -2892,7 +2852,6 @@
 Total(Amt),Gjithsej (Amt),
 Total(Qty),Gjithsej (Qty),
 Traceability,Gjurmimi,
-Traceback,Gjurmim,
 Track Leads by Lead Source.,Rruga kryeson nga burimi kryesor.,
 Transaction,transaksion,
 Transaction Date,Transaksioni Data,
@@ -2930,7 +2889,6 @@
 UOM Conversion factor is required in row {0},Faktori UOM Konvertimi është e nevojshme në rresht {0},
 UOM coversion factor required for UOM: {0} in Item: {1},Faktori UOM Coversion nevojshme për UOM: {0} në Item: {1},
 URL,URL,
-Unable to find DocType {0},E pamundur për të gjetur DocType {0},
 Unable to find exchange rate for {0} to {1} for key date {2}. Please create a Currency Exchange record manually,Në pamundësi për të gjetur kursin e këmbimit për {0} në {1} për datën kyçe {2}. Ju lutem të krijuar një rekord Currency Exchange dorë,
 Unable to find score starting at {0}. You need to have standing scores covering 0 to 100,Nuk mund të gjej rezultatin duke filluar nga {0}. Duhet të kesh pikët e qendrës që mbulojnë 0 deri në 100,
 Unable to find variable: ,Nuk mund të gjeni ndryshore:,
@@ -2960,7 +2918,6 @@
 Upload your letter head and logo. (you can edit them later).,Ngarko kokën tuaj letër dhe logo. (Ju mund të modifikoni ato më vonë).,
 Upper Income,Të ardhurat e sipërme,
 Use Sandbox,Përdorimi Sandbox,
-Used Leaves,Lë të përdorura,
 User,përdorues,
 User ID,User ID,
 User ID not set for Employee {0},Përdoruesi ID nuk është caktuar për punonjësit {0},
@@ -3051,7 +3008,6 @@
 Website Settings,Website Cilësimet,
 Wednesday,E mërkurë,
 Week,javë,
-Weekdays,gjatë ditëve të javës,
 Weekly,Javor,
 "Weight is mentioned,\nPlease mention ""Weight UOM"" too","Pesha është përmendur, \ nJu lutemi të përmendim &quot;Weight UOM&quot; shumë",
 Welcome email sent,Mirë se vini email dërguar,
@@ -3072,7 +3028,6 @@
 Work Order {0} must be submitted,Urdhri i punës {0} duhet të dorëzohet,
 Work Orders Created: {0},Rendi i punës i krijuar: {0},
 Work-in-Progress Warehouse is required before Submit,Puna në progres Magazina është e nevojshme para se të Submit,
-Workflow,Workflow,
 Working,Punës,
 Working Hours,Orari i punës,
 Workstation,workstation,
@@ -3102,7 +3057,6 @@
 You need to be a user other than Administrator with System Manager and Item Manager roles to register on Marketplace.,Duhet të jesh një përdorues i ndryshëm nga Administratori me rolin e Menaxhuesit të Sistemit dhe të Menaxhmentit të Arteve për t&#39;u regjistruar në Marketplace.,
 You need to be a user with System Manager and Item Manager roles to add users to Marketplace.,Duhet të jesh një përdorues me rolet e Menaxhimit të Sistemit dhe Menaxhimit të Arteve për t&#39;i shtuar përdoruesit në Marketplace.,
 You need to be a user with System Manager and Item Manager roles to register on Marketplace.,Duhet të jeni përdorues me role të Menaxhmentit të Sistemit dhe Menaxhimit të Arteve për t&#39;u regjistruar në Marketplace.,
-You need to be logged in to access this page,Ju duhet të keni hyrë brenda për të hyrë në këtë faqe,
 You need to enable Shopping Cart,Ju duhet të mundësojnë Shporta,
 You will lose records of previously generated invoices. Are you sure you want to restart this subscription?,Ju do të humbni regjistrat e faturave të krijuara më parë. Jeni i sigurt se doni të rifilloni këtë pajtim?,
 Your Organization,Organizata juaj,
@@ -3218,7 +3172,6 @@
 Assigned To,Caktuar për,
 Chat,Bisedë,
 Completed By,Përfunduar nga,
-County,qark,
 Day of Week,Dita e Javës,
 "Dear System Manager,","Sistemi Menaxheri i nderuar,",
 Default Value,Vlera e albumit,
@@ -3229,31 +3182,21 @@
 Fieldtype,Fieldtype,
 Help Articles,Ndihmë Artikuj,
 ID,ID,
-Images,images,
 Import,Import,
 Language,Gjuhë,
 Likes,Preferencë,
 Merge with existing,Përziej me ekzistuese,
-Office,Zyrë,
 Orientation,Orientim,
 Parent,Prind,
-Passive,Pasiv,
 Payment Failed,pagesa Dështoi,
-Permanent,i përhershëm,
 Personal,Personal,
-Plant,Fabrikë,
 Post,Post,
-Postal,Postar,
 Postal Code,Kodi Postar,
-Previous,I mëparshëm,
 Provider,Provider,
 Read Only,Lexoni Vetëm,
 Recipient,Marrës,
 Reviews,Shqyrtime,
 Sender,Dërgues,
-Shop,Dyqan,
-Subsidiary,Ndihmës,
-There is some problem with the file url: {0},Ka disa probleme me file url: {0},
 There were errors while sending email. Please try again.,Ka pasur gabime ndërsa dërguar një email. Ju lutemi provoni përsëri.,
 Values Changed,vlerat Ndryshuar,
 or,ose,
@@ -3280,19 +3223,16 @@
 Quality Feedback Template,Modeli i reagimit të cilësisë,
 Rules for applying different promotional schemes.,Rregulla për aplikimin e skemave të ndryshme promovuese.,
 Show {0},Trego {0},
-"Special Characters except '-', '#', '.', '/', '{{' and '}}' not allowed in naming series {0}","Karaktere speciale përveç &quot;-&quot;, &quot;#&quot;, &quot;.&quot;, &quot;/&quot;, &quot;{{&quot; Dhe &quot;}}&quot; nuk lejohen në seritë emërtuese {0}",
 Target Details,Detaje të synuara,
 {0} already has a Parent Procedure {1}.,{0} tashmë ka një procedurë prindërore {1}.,
 API,API,
 Annual,Vjetor,
 Change,Ndryshim,
 Contact Email,Kontakti Email,
-Export Type,Lloji i eksportit,
 From Date,Nga Data,
 Group By,Grupi Nga,
 Invalid URL,URL e pavlefshme,
 Landscape,peizazh,
-Last Sync On,Sinjali i fundit në,
 Naming Series,Emërtimi Series,
 No data to export,Nuk ka të dhëna për eksport,
 Portrait,portret,
@@ -3302,7 +3242,6 @@
 Show Document,Trego Dokumentin,
 Show Traceback,Shfaq gjurmimin,
 Video,video,
-Webhook Secret,Sekreti i faqes në internet,
 % Of Grand Total,% E Totalit të Madh,
 <b>Company</b> is a mandatory filter.,<b>Kompania</b> është një filtër i detyrueshëm.,
 <b>From Date</b> is a mandatory filter.,<b>Nga data</b> është një filtër i detyrueshëm.,
@@ -3358,7 +3297,6 @@
 BOM Comparison Tool,Mjet për krahasimin e BOM,
 BOM recursion: {0} cannot be child of {1},Rekursimi i BOM: {0} nuk mund të jetë fëmijë i {1,
 BOM recursion: {0} cannot be parent or child of {1},Rekursimi i BOM: {0} nuk mund të jetë prind ose fëmijë i {1,
-Back to Home,Përsëri në shtëpi,
 Back to Messages,Kthehu tek Mesazhet,
 Bank Data mapper doesn't exist,Paraqitësi i të dhënave bankare nuk ekziston,
 Bank Details,Te dhenat e Bankes,
@@ -3420,7 +3358,6 @@
 Currency,Monedhë,
 Current Status,Statusi aktual,
 Customer PO,PO e klientit,
-Customize,Customize,
 Daily,I përditshëm,
 Date,Data,
 Date of Birth cannot be greater than Joining Date.,Data e lindjes nuk mund të jetë më e madhe se data e bashkimit.,
@@ -3454,7 +3391,6 @@
 ERPNext could not find any matching payment entry,ERPNext nuk mund të gjente ndonjë hyrje të pagesës që përputhet,
 Earliest Age,Mosha e hershme,
 Edit Details,Ndrysho detajet,
-Edit Profile,Ndrysho Profilin,
 Either GST Transporter ID or Vehicle No is required if Mode of Transport is Road,Ose ID e Transportuesit GST ose Automjetit Nr kërkohet nëse Mënyra e Transportit është Rrugore,
 Email,Email,
 Email Campaigns,Fushata me Email,
@@ -3482,7 +3418,6 @@
 Fetch Items from Warehouse,Fetch Artikuj nga Magazina,
 Fetching...,Ngarkuar ...,
 Field,fushë,
-File Manager,File Manager,
 Filters,Filtra,
 Finding linked payments,Gjetja e pagesave të lidhura,
 Fleet Management,Menaxhimi Fleet,
@@ -3521,7 +3456,6 @@
 Incorrect Warehouse,Magazinë e pasaktë,
 Invalid Barcode. There is no Item attached to this barcode.,Barkodi i pavlefshëm. Nuk ka asnjë artikull të bashkangjitur në këtë barkod.,
 Invalid credentials,Kredencialet e pavlefshme,
-Invite as User,Fto si Përdorues,
 Issue Priority.,Lëshoni përparësi.,
 Issue Type.,Lloji i çështjes.,
 "It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","Duket se ka një problem me konfigurimin e shiritit të serverit. Në rast të dështimit, shuma do të kthehet në llogarinë tuaj.",
@@ -3564,7 +3498,6 @@
 New Invoice,Faturë e re,
 New Payment,Pagesa e re,
 New release date should be in the future,Data e re e lëshimit duhet të jetë në të ardhmen,
-Newsletter,Newsletter,
 No Account matched these filters: {},Asnjë llogari nuk përputhet me këto filtra: {},
 No communication found.,Asnjë komunikim nuk u gjet.,
 No correct answer is set for {0},Asnjë përgjigje e saktë nuk është vendosur për {0},
@@ -3640,7 +3573,6 @@
 Please setup a default bank account for company {0},Ju lutemi vendosni një llogari bankare të paracaktuar për kompaninë {0,
 Please specify,Ju lutem specifikoni,
 Please specify a {0},Ju lutemi specifikoni një {0,lead
-Printing,Shtypje,
 Priority,Prioritet,
 Priority has been changed to {0}.,Prioriteti është ndryshuar në {0.,
 Priority {0} has been repeated.,Prioriteti {0} është përsëritur.,
@@ -3649,7 +3581,6 @@
 Project,Projekt,
 Provide the academic year and set the starting and ending date.,Siguroni vitin akademik dhe caktoni datën e fillimit dhe mbarimit.,
 Public token is missing for this bank,Shenja publike mungon për këtë bankë,
-Publish,publikoj,
 Publish 1 Item,Botoni 1 Artikull,
 Publish Items,Publikoni Artikujt,
 Publish More Items,Publikoni Më shumë Artikuj,
@@ -3677,7 +3608,6 @@
 Reconciled,pajtuar,
 Recruitment,rekrutim,
 Red,I kuq,
-Refreshing,freskues,
 Release date must be in the future,Data e lëshimit duhet të jetë në të ardhmen,
 Relieving Date must be greater than or equal to Date of Joining,Data e besimit duhet të jetë më e madhe se ose e barabartë me datën e bashkimit,
 Rename,Riemërtoj,
@@ -3721,7 +3651,6 @@
 Search for a payment,Kërkoni për një pagesë,
 Search for anything ...,Kërkoni për ndonjë gjë ...,
 Search results for,Rezultatet e kerkimit per,
-Select All,Zgjidhni të gjitha,
 Select Difference Account,Zgjidhni Llogarinë e Diferencës,
 Select a Default Priority.,Zgjidhni një përparësi të paracaktuar.,
 Select a company,Zgjidhni një kompani,
@@ -3740,11 +3669,9 @@
 Service Level Agreement has been changed to {0}.,Marrëveshja e nivelit të shërbimit është ndryshuar në {0.,
 Service Level Agreement was reset.,Marrëveshja e nivelit të shërbimit u rivendos.,
 Service Level Agreement with Entity Type {0} and Entity {1} already exists.,Marrëveshja e nivelit të shërbimit me njësinë tip ity 0} dhe entitetin {1} tashmë ekziston.,
-Set,Set,
 Set Meta Tags,Vendosni Etiketat Meta,
 Set {0} in company {1},Vendosni {0 në kompani {1,
 Setup,Setup,
-Setup Wizard,Setup Wizard,
 Shift Management,Menaxhimi i Shiftit,
 Show Future Payments,Trego Pagesat e Ardhme,
 Show Linked Delivery Notes,Shfaq shënimet e dorëzimit të lidhura,
@@ -3815,7 +3742,6 @@
 Unreconciled,pabarazuar,
 Unsupported GST Category for E-Way Bill JSON generation,Kategoria e pambështetur GST për gjeneratën e Bill Bill JSON e-Way,
 Update,Update,
-Update Details,Detaje të azhurnuara,
 Update Taxes for Items,Azhurnoni taksat për artikujt,
 "Upload a bank statement, link or reconcile a bank account","Vendosni një deklaratë bankare, lidhni ose barazoni një llogari bankare",
 Upload a statement,Ngarko një deklaratë,
@@ -3839,7 +3765,6 @@
 XML Files Processed,File të përpunuara XML,
 Year,Vit,
 Yearly,Vjetor,
-You,Ju,
 You are not allowed to enroll for this course,Nuk lejohet të regjistrohesh për këtë kurs,
 You are not enrolled in program {0},Ju nuk jeni regjistruar në program {0,
 You can Feature upto 8 items.,Ju mund të Karakteristikat deri në 8 artikuj.,
@@ -3856,7 +3781,6 @@
 e-Way Bill already exists for this document,Bill-e-Way tashmë ekziston për këtë dokument,
 woocommerce - {0},woocommerce - {0,
 {0} Coupon used are {1}. Allowed quantity is exhausted,Oup 0 oup Kuponi i përdorur është {1. Sasia e lejuar është e rraskapitur,
-{0} Name,{0} Emri,
 {0} Operations: {1},{0} Operacione: {1,
 {0} bank transaction(s) created,Krijuar transaction 0 transaction transaksione bankare,
 {0} bank transaction(s) created and {1} errors,Created 0 transaction transaksione bankare të krijuara dhe gabime {1,
@@ -3875,17 +3799,13 @@
 Total Income,Të ardhurat totale,
 Total Income This Year,Të ardhurat totale këtë vit,
 Barcode,barcode,
-Bold,guximtar,
-Center,Qendër,
 Clear,Qartë,
-Comment,koment,
 Comments,Komente,
 DocType,DOCTYPE,
 Download,Shkarko,
 Left,Majtas,
 Link,lidhje,
 New,I ri,
-Not Found,Not Found,
 Print,shtyp,
 Reference Name,Emri i Referencës,
 Refresh,Freskoj,
@@ -3908,7 +3828,6 @@
 Email Id,Email ID,
 No,jo,
 Reference Doctype,DOCTYPE Referenca,
-User Id,ID-ja e përdoruesit,
 Yes,po,
 Actual ,aktual,
 Add to cart,Futeni në kosh,
@@ -4304,7 +4223,6 @@
 e.g Adjustments for:,p.sh. Rregullimet për:,
 Section Subtotal,Seksioni Nëntotali,
 Section Footer,Seksioni i faqes,
-Position,pozitë,
 Cash Flow Mapping,Mapping Flow Flow,
 Select Maximum Of 1,Përzgjedh maksimumin e 1,
 Is Finance Cost,Është kostoja e financimit,
@@ -4936,7 +4854,6 @@
 Previous Business Day,Dita e mëparshme e punës,
 Next Business Day,Dita e ardhshme e punës,
 Urgent,Urgjent,
-Crop,prodhim,
 Crop Name,Emri i farërave,
 Scientific Name,Emer shkencor,
 "You can define all the tasks which need to carried out for this crop here. The day field is used to mention the day on which the task needs to be carried out, 1 being the 1st day, etc.. ","Ju mund të përcaktoni të gjitha detyrat që duhet të kryhen për këtë kulture këtu. Fusha ditore përdoret për të përmendur ditën në të cilën duhet kryer detyra, 1 është dita e parë, etj.",
@@ -5441,7 +5358,6 @@
 To TIme,Për Koha,
 Course End Date,Sigurisht End Date,
 Course Topic,Tema e kursit,
-Topic,temë,
 Topic Name,Topic Emri,
 Education Settings,Cilësimet e edukimit,
 Current Academic Year,Aktual akademik Year,
@@ -5516,7 +5432,6 @@
 Check this if the Student is residing at the Institute's Hostel.,Kontrolloni këtë nëse studenti banon në Hostel e Institutit.,
 Walking,ecje,
 Institute's Bus,Autobus i Institutit,
-Public Transport,Transporti publik,
 Self-Driving Vehicle,Self-Driving automjeteve,
 Pick/Drop by Guardian,Pick / rënie nga Guardian,
 Enrolled courses,kurse regjistruar,
@@ -5697,7 +5612,6 @@
 Default Cost Center,Qendra Kosto e albumit,
 Undeposited Funds Account,Llogaria e fondeve të papaguara,
 Shopify Log,Dyqan log,
-Request Data,Kërkoni të dhëna,
 Shopify Settings,Rregullimet e Shopify,
 status html,status html,
 Enable Shopify,Aktivizo Shopify,
@@ -5817,7 +5731,6 @@
 Exercise Instructions,Udhëzime Ushtrimi,
 Exercise Video,Video Ushtrimi,
 Exercise Steps,Hapat e Ushtrimit,
-Steps,Hapat,
 Steps Table,Tabela e hapave,
 Exercise Type Step,Hapi i Llojit të Ushtrimit,
 Max number of visit,Numri maksimal i vizitës,
@@ -6001,7 +5914,6 @@
 Patient Encounter Symptom,Simptoma e Takimit të Pacientit,
 HLC-PMR-.YYYY.-,FDH-PMR-.YYYY.-,
 Attach Medical Record,Bashkangjit Regjistrin Mjekësor,
-Reference DocType,Doktipi i referencës,
 Spouse,bashkëshort,
 Family,familje,
 Schedule Details,Detajet e orarit,
@@ -6983,16 +6895,8 @@
 HTML / Banner that will show on the top of product list.,HTML / Banner që do të tregojnë në krye të listës së produktit.,
 Set prefix for numbering series on your transactions,Prefiksi vendosur për numëron seri mbi transaksionet tuaja,
 Setup Series,Setup Series,
-Select Transaction,Përzgjedhjen e transaksioneve,
-Help HTML,Ndihmë HTML,
-Series List for this Transaction,Lista Seria për këtë transaksion,
-User must always select,Përdoruesi duhet të zgjidhni gjithmonë,
-Check this if you want to force the user to select a series before saving. There will be no default if you check this.,Kontrolloni këtë në qoftë se ju doni për të detyruar përdoruesit për të zgjedhur një seri përpara se të kryeni. Nuk do të ketë parazgjedhur në qoftë se ju kontrolloni këtë.,
 Update Series,Update Series,
 Change the starting / current sequence number of an existing series.,Ndryshimi filluar / numrin e tanishëm sekuencë e një serie ekzistuese.,
-Prefix,Parashtesë,
-This is the number of the last created transaction with this prefix,Ky është numri i transaksionit të fundit të krijuar me këtë prefiks,
-Update Series Number,Update Seria Numri,
 Quotation Lost Reason,Citat Humbur Arsyeja,
 A third party distributor / dealer / commission agent / affiliate / reseller who sells the companies products for a commission.,Një shpërndarës i palës së tretë / tregtari / komision agjent / degë / reseller që shet produkte kompani për një komision.,
 Sales Partner Name,Emri Sales Partner,
@@ -7687,7 +7591,6 @@
 Warehouse wise Item Balance Age and Value,Magazina e mençur Item Balance Age and Value,
 Work Order Stock Report,Raporti i Renditjes së Rendit të Punës,
 Work Orders in Progress,Rendi i punës në vazhdim,
-Validation Error,Gabim i vlerësimit,
 Automatically Process Deferred Accounting Entry,Përpunoni automatikisht hyrjen e kontabilitetit të shtyrë,
 Bank Clearance,Pastrimi i bankës,
 Bank Clearance Detail,Detaji i pastrimit të bankës,
@@ -7724,45 +7627,7 @@
 Therapy Plan: ,Plani i Terapisë:,
 Total Counts Targeted: ,Numri i përgjithshëm i synuar:,
 Total Counts Completed: ,Numërimet totale të përfunduara:,
-Andaman and Nicobar Islands,Ishujt Andaman dhe Nicobar,
-Andhra Pradesh,Andhra Pradesh,
-Arunachal Pradesh,Arunachal Pradesh,
-Assam,Asam,
-Bihar,Bihar,
-Chandigarh,Chandigarh,
-Chhattisgarh,Chhattisgarh,
-Dadra and Nagar Haveli,Dadra dhe Nagar Haveli,
-Daman and Diu,Daman dhe Diu,
-Delhi,Delhi,
-Goa,Goa,
-Gujarat,Guxharat,
-Haryana,Haryana,
-Himachal Pradesh,Himachal Pradesh,
-Jammu and Kashmir,Jammu dhe Kashmir,
-Jharkhand,Xharkhand,
-Karnataka,Karnataka,
-Kerala,Kerala,
-Lakshadweep Islands,Ishujt Lakshadweep,
-Madhya Pradesh,Madhya Pradesh,
-Maharashtra,Maharashtra,
-Manipur,Manipur,
-Meghalaya,Meghalaya,
-Mizoram,Mizoram,
-Nagaland,Nagaland,
-Odisha,Odisha,
-Other Territory,Territori tjetër,
-Pondicherry,Pondicherry,
-Punjab,Punxhab,
-Rajasthan,Rajasthan,
-Sikkim,Sikkim,
-Tamil Nadu,Tamil Nadu,
-Telangana,Telangana,
-Tripura,Tripura,
-Uttar Pradesh,Uttar Pradesh,
-Uttarakhand,Uttarakhand,
-West Bengal,Bengali Perëndimor,
 Is Mandatory,Shtë e Detyrueshme,
-Published on,Botuar më,
 Service Received But Not Billed,Shërbimi i Marrë Por Jo i Faturuar,
 Deferred Accounting Settings,Cilësimet e Kontabilitetit të Shtyrë,
 Book Deferred Entries Based On,Regjistrimet e shtyra të librit bazuar në,
@@ -8035,8 +7900,6 @@
 Worksheet Instructions,Udhëzime të fletës së punës,
 Result Legend Print,Rezultati Legjenda Shtyp,
 Print Position,Pozicioni i printimit,
-Bottom,Fund,
-Top,Top,
 Both,Të dyja,
 Result Legend,Legjenda e rezultatit,
 Lab Tests,Testet laboratorike,
@@ -8081,12 +7944,10 @@
 Approvers,Përgjegjës,
 The first Approver in the list will be set as the default Approver.,Miratuesi i parë në listë do të caktohet si Miratuesi i paracaktuar.,
 Shift Request Approver,Miratuesi i kërkesës për ndërrim,
-PAN Number,Numri PAN,
 Provident Fund Account,Llogaria e Fondit të Providencës,
 MICR Code,Kodi MICR,
 Repay unclaimed amount from salary,Shlyeni shumën e pakërkuar nga paga,
 Deduction from salary,Zbritja nga paga,
-Expired Leaves,Gjethet e skaduara,
 If this is not checked the loan by default will be considered as a Demand Loan,"Nëse kjo nuk kontrollohet, kredia si parazgjedhje do të konsiderohet si një Kredi e Kërkesës",
 This account is used for booking loan repayments from the borrower and also disbursing loans to the borrower,Kjo llogari përdoret për rezervimin e ripagimeve të huasë nga huamarrësi dhe gjithashtu disbursimin e huamarrësve,
 This account is capital account which is used to allocate capital for loan disbursal account ,Kjo llogari është llogari kapitale e cila përdoret për të alokuar kapitalin për llogarinë e disbursimit të kredisë,
@@ -8844,3 +8705,41 @@
 Creating Purchase Order ...,Krijimi i urdhrit të blerjes ...,
 "Select a Supplier from the Default Suppliers of the items below. On selection, a Purchase Order will be made against items belonging to the selected Supplier only.","Zgjidhni një furnitor nga furnitorët e parazgjedhur të artikujve më poshtë. Gjatë zgjedhjes, një Urdhër Blerje do të bëhet vetëm kundër artikujve që i përkasin vetëm Furnizuesit të zgjedhur.",
 Row #{}: You must select {} serial numbers for item {}.,Rreshti # {}: Duhet të zgjidhni {} numrat rendorë për artikullin {}.,
+Add Comment,Shto koment,
+More...,Më shumë ...,
+Notes,Shënime,
+Payment Gateway,Gateway Pagesa,
+Payment Gateway Name,Emri i portës së pagesës,
+Payments,Pagesat,
+Plan Name,Emri i Planit,
+Portal,Portal,
+Scan Barcode,Skanoni barkodin,
+Some information is missing,Disa informata mungon,
+Successful,E suksesshme,
+Tools,Mjete,
+Use Sandbox,Përdorimi Sandbox,
+Busy,I zënë,
+Completed By,Përfunduar nga,
+Payment Failed,pagesa Dështoi,
+Column {0},Kolona {0,
+Field Mapping,Hartimi në terren,
+Not Specified,E paspecifikuar,
+Update Type,Lloji i azhurnimit,
+Dr,Dr,
+End Time,Fundi Koha,
+Fetching...,Ngarkuar ...,
+"It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","Duket se ka një problem me konfigurimin e shiritit të serverit. Në rast të dështimit, shuma do të kthehet në llogarinë tuaj.",
+Looks like someone sent you to an incomplete URL. Please ask them to look into it.,"Duket sikur dikush ju ka dërguar në një URL jo të plotë. Ju lutem, pyesni ata për të shikojmë në të.",
+Master,Mjeshtër,
+Pay,Kushtoj,
+You can also copy-paste this link in your browser,Ju gjithashtu mund të kopjoni-ngjisni këtë lidhje në shfletuesin tuaj,
+Verified By,Verifikuar nga,
+Invalid naming series (. missing) for {0},Seri të pavlefshme emërtimesh (. Mungon) për {0},
+Phone Number,Numri i telefonit,
+Account SID,SID llogari,
+Global Defaults,Defaults Global,
+Is Mandatory,Shtë e Detyrueshme,
+WhatsApp,WhatsApp,
+Make a call,Bej nje telefonate,
+Approve,miratoj,
+Reject,hedh poshtë,
diff --git a/erpnext/translations/sr-BA.csv b/erpnext/translations/sr-BA.csv
new file mode 100644
index 0000000..2a9ba54
--- /dev/null
+++ b/erpnext/translations/sr-BA.csv
@@ -0,0 +1,15 @@
+Notes,Bilješke,
+What do you need help with?,Oko čega Vam je potrebna pomoć?
+Explore,Istraži,
+Make ,Napravi,
+Chart of Accounts,Kontni plan,
+You can also copy-paste this link in your browser,Можете и да копирате и налепите овај линк у свој претраживач.
+Add Comment,Dodaj komentar,
+Payment Failed,Plaćanje nije uspjelo,
+Address and Contacts,Adresa i kontakti,
+Tools,Alati,
+Pay,Plati,
+Added,Dodato,
+Mobile Number,Mobilni br. telefona,
+Payments,Plaćanja,
+Series,Vrsta dokumenta,
diff --git a/erpnext/translations/sr-SP.csv b/erpnext/translations/sr-SP.csv
index bb28353..ac5711f 100644
--- a/erpnext/translations/sr-SP.csv
+++ b/erpnext/translations/sr-SP.csv
@@ -7,10 +7,8 @@
 Warehouse {0} does not exist,Skladište {0} ne postoji,
 Confirmed orders from Customers.,Potvrđene porudžbine od strane kupaca,
 Healthcare (beta),Klinika (beta)
-Salary Structure,Структура плата
 Item Reorder,Dopuna artikla,
 Report an Issue,Prijavi grešku,
-Net Pay,Neto plaćanje,
 Internal Transfer,Interni prenos,
 Item Tax Rate,Poreska stopa,
 Create a new Customer,Kreirajte novog kupca,
@@ -52,7 +50,6 @@
 You can only select a maximum of one option from the list of check boxes.,Из листе поља за потврду можете изабрати највише једну опцију.
 Group by Voucher,Grupiši po knjiženjima,
 Total Outstanding,Ukupno preostalo,
-Email Salary Slip to Employee,Pošalji platnu listu Zaposlenom,
 Customer Code,Šifra kupca,
 Allow multiple Sales Orders against a Customer's Purchase Order,Dozvolite više prodajnih naloga koji su vezani sa porudžbenicom kupca,
 Total Outgoing,Ukupno isporučeno,
@@ -61,7 +58,6 @@
 %  Delivered,% Isporučeno,
 Appraisal {0} created for Employee {1} in the given date range,Procjena {0} kreirana za Zaposlenog {1} za dati period,
 Party Balance,Stanje kupca,
-{0} already allocated for Employee {1} for period {2} to {3},{0} već dodijeljeno zaposlenom {1} za period {2} {3}
 Customers,Kupci,
 Please set User ID field in an Employee record to set Employee Role,Molimo podesite polje Korisnički ID u evidenciji Zaposlenih radi podešavanja zaduženja Zaposlenih,
 Task Completion,Završenost zadataka,
@@ -89,7 +85,6 @@
 Consultations,Pregledi,
 Classification of Customers by region,Klasifikacija kupaca po regiji,
 Quotation To,Ponuda za,
-Payroll Employee Detail,Detalji o platnom spisku Zaposlenih,
 Timesheet for tasks.,Potrošeno vrijeme za zadatke,
 Remark,Napomena,
 Tree of Item Groups.,Stablo Vrste artikala,
@@ -122,13 +117,11 @@
 `Freeze Stocks Older Than` should be smaller than %d days.,"""Zamrzni akcije starije"" trebalo bi da budu manje %d dana."
 Patient Age,Starost pacijenta,
 Employee cannot report to himself.,Zaposleni ne može izvještavati sebi,
-You can only submit Leave Encashment for a valid encashment amount,Можете поднети Исплату одсуства само са валидном количином за исплату.
 Customer Address,Adresa kupca,
 Total Amount {0},Ukupan iznos {0}
 Total (Credit),Ukupno bez PDV-a (duguje)
 In Words (Export) will be visible once you save the Delivery Note.,Slovima (izvoz) će biti vidljiv onda kad sačuvate otpremnicu,
 Opportunity Date,Datum prilike,
-Marked Attendance HTML,Označeno prisustvo HTML,
 Delivery Note Item,Pozicija otpremnice,
 Customer's Purchase Order,Porudžbenica kupca,
 Get items from,Dodaj stavke iz,
@@ -150,14 +143,12 @@
 Account: {0} can only be updated via Stock Transactions,Računovodstvo: {0} može samo da se ažurira u dijelu Promjene na zalihama,
 Leave Approver,Odobrava izlaske s posla,
 Customer or Item,Kupac ili proizvod,
-Attendance To Date,Prisustvo do danas,
 Requested Qty,Tražena kol,
 Attendance Freeze Date,Datum zamrzavanja prisustva,
 No Item with Serial No {0},Ne postoji artikal sa serijskim brojem {0}
 Taxes and Charges,Porezi i naknade,
 Serial Number Series,Serijski broj serije,
 Delivered,Isporučeno,
-No employee found,Zaposleni nije pronađen,
 Default Territory,Podrazumijevana država,
 Asset Category,Grupe osnovnih sredstava,
 Customer Warehouse (Optional),Skladište kupca (opciono)
@@ -190,10 +181,8 @@
 Sales Partners Commission,Provizija za prodajne partnere,
 Territory,Teritorija,
 Sales Order Message,Poruka prodajnog naloga,
-Employees HTML,HTML Zaposlenih,
 Employee Leave Balance,Pregled odsustva Zaposlenih,
 Minute,Minut,
-Emails salary slip to employee based on preferred email selected in Employee,Pošalji platnu listu Zaposlenom na željenu adresu označenu u tab-u ZAPOSLENI,
 Litre,Litar,
 Opening (Cr),Početno stanje (Po)
 Academics User,Akademski korisnik,
@@ -222,11 +211,9 @@
 Product Bundle Item,Sastavljeni proizvodi,
 Select Employees,Odaberite Zaposlene,
 "Create Employee records to manage leaves, expense claims and payroll","Kreiraj evidenciju o Zaposlenom kako bi upravljali odsustvom, potraživanjima za troškove i platnim spiskovima"
-This is based on the attendance of this Employee,Ovo se zasniva na pohađanju ovog zaposlenog,
 Address & Contact,Adresa i kontakt,
 Reserved Qty for Production,Rezervisana kol. za proizvodnju,
 This is based on stock movement. See {0} for details,Ovo praćenje je zasnovano na kretanje zaliha. Pogledajte {0} za više detalja,
-Training Event Employee,Obuke Zaposlenih,
 All Contacts.,Svi kontakti,
 Sales Person,Prodajni agent,
 Default Warehouse,Podrazumijevano skladište,
@@ -237,7 +224,6 @@
 Credit,Potražuje,
 Grand Total,Za plaćanje,
 Human Resource,Ljudski resursi,
-Employees,Zaposleni,
 Delivery Note Required,Otpremnica je obavezna,
 Type of Payment,Vrsta plaćanja,
 UOM,JM,
@@ -284,15 +270,12 @@
 Customer is required,Kupac je obavezan podatak,
 Manufacturer,Proizvođač
 Selling Amount,Prodajni iznos,
-Please set the Date Of Joining for employee {0},Molimo podesite datum zasnivanja radnog odnosa {0}
 Allow over delivery or receipt upto this percent,Dozvolite isporukuili prijem robe ukoliko ne premaši ovaj procenat,
 Orders,Porudžbine,
 Stock Transactions,Promjene na zalihama,
-You are not authorized to approve leaves on Block Dates,Немате дозволу да одобравате одсуства на Блок Датумима.
 Daily Timesheet Summary,Pregled dnevnog potrošenog vremena,
 View Timesheet,Pogledaj potrošeno vrijeme,
 Rounded Total (Company Currency),Zaokruženi ukupan iznos (valuta preduzeća)
-Salary Slip of employee {0} already created for this period,Isplatna lista Zaposlenog {0} kreirana je već za ovaj period,
 "If this item has variants, then it cannot be selected in sales orders etc.","Ako ovaj artikal ima varijante, onda ne može biti biran u prodajnom nalogu."
 You can only redeem max {0} points in this order.,Можете унети највише {0} поена у овој наруџбини.
 No leave record found for employee {0} for {1},Nije nađena evidancija o odsustvu Zaposlenog {0} za {1}
@@ -312,7 +295,6 @@
 Additional Operating Cost,Dodatni operativni troškovi,
 Rejected Warehouse,Odbijeno skladište,
 Manufacturing Manager,Menadžer proizvodnje,
-You are not present all day(s) between compensatory leave request days,Нисте присутни свих дана између захтева за компензацијски одмор.
 Is Fixed Asset,Artikal je osnovno sredstvo,
 POS,POS,
 Timesheet {0} is already completed or cancelled,Potrošeno vrijeme {0} je već potvrđeno ili otkazano,
@@ -327,7 +309,6 @@
 Sync Offline Invoices,Sinhronizuj offline fakture,
 Manufacturing,Proizvodnja,
 {0}% Delivered,{0}% Isporučeno,
-Attendance,Prisustvo,
 Customer's Purchase Order No,Broj porudžbenice kupca,
 Please enter Sales Orders in the above table,U tabelu iznad unesite prodajni nalog,
 Report Date,Datum izvještaja,
@@ -338,7 +319,6 @@
 Payment Request,Upit za plaćanje,
 Purchase Analytics,Analiza nabavke,
 Tree Details,Detalji stabla,
-Upload Attendance,Priloži evidenciju,
 Against,Povezano sa,
 Requested Amount,Traženi iznos,
 "Record of all communications of type email, phone, chat, visit, etc.","Snimanje svih komunikacija tipa email, telefon, poruke, posjete, itd."
@@ -365,7 +345,6 @@
 Project Status,Status Projekta,
 All Item Groups,Sve vrste artikala,
 Serial No {0} does not exist,Serijski broj {0} ne postoji,
-No contacts added yet.,Još uvijek nema dodatih kontakata,
 Ageing Range 3,Opseg dospijeća 3,
 Request for Quotation,Zahtjev za ponudu,
 Account Paid To,Račun plaćen u,
@@ -382,7 +361,6 @@
 Please select a warehouse,Izaberite skladište,
 Received and Accepted,Primio i prihvatio,
 Project will be accessible on the website to these users,Projekat će biti dostupan na sajtu sledećim korisnicima,
-Upload HTML,Priloži HTML,
 Services,Usluge,
 Item Cart,Korpa sa artiklima,
 Total Paid Amt,Ukupno plaćeno,
@@ -391,7 +369,6 @@
 Employee Advance,Napredak Zaposlenog,
 Warehouse and Reference,Skladište i veza,
 {0} {1}: Account {2} is inactive,{0} {1}: Nalog {2} je neaktivan,
-Fiscal Year {0} not found,Fiskalna godina {0} nije pronađena,
 No Remarks,Nema napomene,
 Purchase Receipt Message,Poruka u Prijemu robe,
 Taxes and Charges Deducted,Umanjeni porezi i naknade,
@@ -428,7 +405,6 @@
 Closing Date,Datum zatvaranja,
 Cheque/Reference Date,Datum izvoda,
 Planned Qty,Planirana količina,
-Payment Date,Datum plaćanja,
 Additional Details,Dodatni detalji,
 Create Chart Of Accounts Based On,Kreiraj kontni plan prema,
 You can not change rate if BOM mentioned agianst any item,Не можете променити цену ако постоји Саставница за било коју ставку.
@@ -441,8 +417,6 @@
 Add Employees,Dodaj Zaposlenog,
 Setting up Employees,Podešavanja Zaposlenih,
 Warehouse not found in the system,Skladište nije pronađeno u sistemu,
-Attendance for employee {0} is already marked for this day,Prisustvo zaposlenog {0} је već označeno za ovaj dan,
-Employee relieved on {0} must be set as 'Left',"Zaposleni smijenjen na {0} mora biti označen kao ""Napustio"""
  Shipping Bill Number,Broj isporuke,
 Lab Test Report,Izvještaj labaratorijskog testa,
 You cannot credit and debit same account at the same time,Не можете кредитирати и дебитовати исти налог у исто време.
@@ -476,17 +450,14 @@
 Reserved for manufacturing,Rezervisana za proizvodnju,
 Pricing Rule Help,Pravilnik za cijene pomoć
 Ageing Range 2,Opseg dospijeća 2,
-Employee Benefits,Primanja Zaposlenih,
 POS Item Group,POS Vrsta artikala,
 Lead,Lead,
-Employee Settings,Podešavanja zaposlenih,
 View All Products,Pogledajte sve proizvode,
 Patient Medical Record,Medicinski karton pacijenta,
 Batch,Serija,
 Purchase Receipt,Prijem robe,
 Warranty Period (in days),Garantni rok (u danima)
 Customer database.,Korisnička baza podataka,
-Attendance Date,Datum prisustva,
 Notify Employee,Obavijestiti Zaposlenog,
 User ID not set for Employee {0},Korisnički ID nije podešen za Zaposlenog {0}
 Stock Projected Qty,Projektovana količina na zalihama,
@@ -508,7 +479,6 @@
 Task,Zadatak,
 Add / Edit Prices,Dodaj / Izmijeni cijene,
 Item Prices,Cijene artikala,
-Salary Component,Компонента плате
 Customer's Purchase Order Date,Datum porudžbenice kupca,
 Country of Origin,Zemlja porijekla,
 Please select Employee Record first.,Molimo izaberite registar Zaposlenih prvo,
@@ -521,7 +491,6 @@
 {0} against Bill {1} dated {2},{0} veza sa računom {1} na datum {2}
 You are not authorized to set Frozen value,Немате дозволу да постављате замрзнуту вредност
 Requested Items To Be Ordered,Tražene stavke za isporuku,
-Unmarked Attendance,Neobilježeno prisustvo,
 Sales Order {0} is not submitted,Prodajni nalog {0} nije potvrđen,
 Default Material Request Type,Podrazumijevani zahtjev za tip materijala,
 Sales Pipeline,Prodajna linija,
@@ -581,7 +550,6 @@
 Warning: Another {0} # {1} exists against stock entry {2},Upozorenje: Još jedan  {0} # {1} postoji u vezanom Unosu zaliha {2}
 Suplier,Dobavljač
 Has Serial No,Ima serijski broj,
-Employee {0} on Half day on {1},Zaposleni {0} na pola radnog vremena {1}
 Difference Amount (Company Currency),Razlika u iznosu (Valuta)
 Add Serial No,Dodaj serijski broj,
 Company and Accounts,Preduzeće i računi,
@@ -615,7 +583,6 @@
 Customer / Item Name,Kupac / Naziv proizvoda,
 Total Billed Amount,Ukupno fakturisano,
 In Value,Prijem vrije.
-Employees Email Id,ID email Zaposlenih,
 Tree Type,Tip stabla,
 Update Rate and Availability,Izmijenite cijenu i dostupnost,
 Supplier Quotation,Ponuda dobavljača,
@@ -644,11 +611,8 @@
 Purchase Receipt Item,Stavka Prijema robe,
 Invoices,Fakture,
 Task Progress,% završenosti zadataka,
-Employee Attendance Tool,Alat za prisustvo Zaposlenih,
-Payment Days,Dana za plaćanje,
 Recruitment,Zapošljavanje,
 Taxes and Charges Calculation,Izračun Poreza,
-For Employee,Za Zaposlenog,
 Terms and Conditions Template,Uslovi i odredbe šablon,
 Change,Kusur,
 Stock Entry {0} created,Unos zaliha {0} je kreiran,
@@ -673,7 +637,6 @@
 Income Account,Račun prihoda,
 Account Balance,Knjigovodstveno stanje,
 'Expected Start Date' can not be greater than 'Expected End Date',Očekivani datum početka ne može biti veći od očekivanog datuma završetka,
-Employee Emails,Elektronska pošta Zaposlenog,
 Opening Qty,Početna količina,
 Reorder level based on Warehouse,Nivo dopune u zavisnosti od skladišta,
 To Warehouse,U skladište,
@@ -684,7 +647,6 @@
 Request for Quotation Supplier,Zahtjev za ponudu dobavljača,
 LeaderBoard,Tabla,
 Lab Test Groups,Labaratorijske grupe,
-Training Result Employee,Rezultati obuke Zaposlenih,
 Invoice Details,Detalji fakture,
 Banking and Payments,Bakarstvo i plaćanja,
 Employee Name,Ime Zaposlenog,
@@ -703,10 +665,8 @@
 Transaction reference no {0} dated {1},Broj izvoda {0} na datum {1}
 Make Sales Order,Kreiraj prodajni nalog,
 Items,Artikli,
-Employees working on a holiday,Zaposleni koji rade za vrijeme praznika,
 Allocate Payment Amount,Poveži uplaćeni iznos,
 Patient ID,ID pacijenta,
-Printed On,Datum i vrijeme štampe,
 Debit To,Zaduženje za,
 Global Settings,Globalna podešavanja,
 Make Employee,Keriraj Zaposlenog,
@@ -733,7 +693,6 @@
 Target Warehouse,Ciljno skladište,
 Delivery Note Trends,Trendovi Otpremnica,
 Default Source Warehouse,Izdajno skladište,
-"{0}: Employee email not found, hence email not sent","{0}: Email zaposlenog nije pronađena, stoga email nije poslat"
 All Warehouses,Sva skladišta,
 Difference Amount,Razlika u iznosu,
 User Remark,Korisnička napomena,
@@ -763,7 +722,6 @@
 View Task,Pogledaj zadatak,
 Employee Education,Obrazovanje Zaposlenih,
 Expense,Rashod,
-Newsletters,Newsletter-i,
 Select Supplier Address,Izaberite adresu dobavljača,
 Price List {0} is disabled or does not exist,Cjenovnik {0} je zaključan ili ne postoji,
 Billing Address Name,Naziv adrese za naplatu,
@@ -777,23 +735,18 @@
 Ageing Range 1,Opseg dospijeća 1,
 Incoming Rate,Nabavna cijena,
 Timesheets,Potrošnja vremena,
-Attendance From Date,Datum početka prisustva,
 Stock Items,Artikli na zalihama,
 New Cart,Nova korpa,
 Opening Value,Početna vrijednost,
 "Setting Events to {0}, since the Employee attached to the below Sales Persons does not have a User ID{1}","Podešavanje stanja na {0}, pošto Zaposleni koji se priključio Prodavcima nema koririsnički ID {1}"
-Import Attendance,Uvoz prisustva,
-Analytics,Analitika,
 Bank Balance,Stanje na računu,
 Employee Number,Broj Zaposlenog,
 Rate and Amount,Cijena i vrijednost sa popustom,
 'Total','Ukupno bez PDV-a'
 Total Taxes and Charges,Porez,
-No active or default Salary Structure found for employee {0} for the given dates,Nisu pronađene aktivne ili podrazumjevane strukture plate za Zaposlenog {0} za dati period,
 Supplier Part Number,Dobavljačeva šifra,
 Project Task,Projektni zadatak,
 Parent Item Group,Nadređena Vrsta artikala,
-Mark Attendance,Označi prisustvo,
 {0} created,Kreirao je korisnik {0}
 Advance Paid,Avansno plačanje,
 Projected,Projektovana količina na zalihama,
@@ -827,7 +780,6 @@
 Purchase Price List,Nabavni cjenovnik,
 Accounts Payable Summary,Pregled obaveze prema dobavljačima,
 Delivery Notes {0} must be cancelled before cancelling this Sales Order,Otpremnice {0} moraju biti otkazane prije otkazivanja prodajnog naloga,
-Total Payment,Ukupno plaćeno,
 POS Settings,POS podešavanja,
 Buying Amount,Iznos nabavke,
 Valuation Rate,Prosječna nab. cijena,
@@ -848,7 +800,6 @@
 Shipping Rule Condition,Uslovi  pravila nabavke,
 Opening Stock Balance,Početno stanje zalihe,
 Customer Credit Balance,Kreditni limit kupca,
-No address added yet.,Adresa još nije dodata.
 Net Total,Ukupno bez PDV-a,
 Total Qty,Ukupna kol.
 Return,Povraćaj,
@@ -866,7 +817,6 @@
 90-Above,Iznad 90 dana,
 You have already assessed for the assessment criteria {}.,Већ сте оценили за критеријум оцењивања {}.
 Serial Numbers in row {0} does not match with Delivery Note,Serijski broj na poziciji {0} se ne poklapa sa otpremnicom,
-New Contact,Novi kontakt,
 Returns,Povraćaj,
 Delivery To,Isporuka za,
 Project Value,Vrijednost Projekta,
@@ -911,7 +861,6 @@
 From Customer,Od kupca,
 Maintain Stock,Vođenje zalihe,
 Sales Order Item,Pozicija prodajnog naloga,
-Attendance From Date and Attendance To Date is mandatory,Datum početka prisustva i prisustvo do danas su obavezni,
 Reserved Qty,Rezervisana kol.
 Not items found,Ništa nije pronađeno,
 Copy From Item Group,Kopiraj iz vrste artikala,
@@ -937,7 +886,6 @@
 Due Date is mandatory,Datum dospijeća je obavezan,
 Cart,Korpa,
 Stock transactions before {0} are frozen,Promjene na zalihama prije {0} su zamrznute,
-Employee {0} is not active or does not exist,Zaposleni {0} nije aktivan ili ne postoji,
 You have entered duplicate items. Please rectify and try again.,Унели сте дупликате. Молимо проверите и покушајте поново.
 Closing (Dr),Saldo (Du)
 Product Bundle Help,Sastavnica Pomoć
@@ -952,7 +900,6 @@
 Gantt Chart,Gant dijagram,
 Requested Quantity,Tražena količina,
 Chart Of Accounts Template,Templejt za kontni plan,
-Marked Attendance,Označeno prisustvo,
 Please set a default Holiday List for Employee {0} or Company {1},Molimo podesite podrazumjevanu listu praznika za Zaposlenog {0} ili Preduzeće {1}
 Pending Amount,Iznos na čekanju,
 Supplier Invoice No,Broj fakture dobavljača,
@@ -978,18 +925,15 @@
 You cannot delete Project Type 'External',"Не можете обрисати ""Спољни"" тип пројекта."
 Delivery Note,Otpremnice,
 In Words will be visible once you save the Sales Order.,U riječima će biti vidljivo tek kada sačuvate prodajni nalog.
-Show Salary Slip,Прикажи одсечак плате
 Activity Cost per Employee,Troškovi aktivnosti po zaposlenom,
 Sales Order,Prodajni nalog,
 Customer or Supplier Details,Detalji kupca ili dobavljača,
 Sell,Prodaja,
-Salary Slip of employee {0} already created for time sheet {1},Isplatna lista Zaposlenog {0} kreirana je već za raspored {1}
 Additional Discount Percentage,Dodatni procenat popusta,
 HR User,Korisnik za ljudske resure,
 Stock Reports,Izvještaji zaliha robe,
 Return Against Sales Invoice,Povraćaj u vezi sa Fakturom prodaje,
 Naming Series,Vrste dokumenta,
-Monthly Attendance Sheet,Mjesečni list prisustva,
 Stock Ledger,Skladišni karton,
 Sales Invoice {0} must be cancelled before cancelling this Sales Order,Faktura {0} mora biti otkazana prije otkazivanja ovog prodajnog naloga,
 New Quotations,Nove ponude,
@@ -999,3 +943,18 @@
 Healthcare,Klinika,
 Actual qty in stock,Trenutna količina na zalihama,
 Actual Qty,Trenutna kol.
+Notes,Bilješke,
+What do you need help with?,Oko čega Vam je potrebna pomoć?
+Explore,Istraži,
+Make ,Napravi,
+Chart of Accounts,Kontni plan,
+You can also copy-paste this link in your browser,Можете и да копирате и налепите овај линк у свој претраживач.
+Add Comment,Dodaj komentar,
+Payment Failed,Plaćanje nije uspjelo,
+Address and Contacts,Adresa i kontakti,
+Tools,Alati,
+Pay,Plati,
+Added,Dodato,
+Mobile Number,Mobilni br. telefona,
+Payments,Plaćanja,
+Series,Vrsta dokumenta,
diff --git a/erpnext/translations/sr.csv b/erpnext/translations/sr.csv
index c5662ad..38116ec 100644
--- a/erpnext/translations/sr.csv
+++ b/erpnext/translations/sr.csv
@@ -113,7 +113,6 @@
 Add Items,Додај артикле,
 Add Leads,Адд Леадс,
 Add Multiple Tasks,Додајте више задатака,
-Add Row,Додај ред,
 Add Sales Partners,Додајте продајне партнере,
 Add Serial No,Додај сериал но,
 Add Students,Додај Студенти,
@@ -211,9 +210,7 @@
 An error occurred during the update process,Дошло је до грешке током процеса ажурирања,
 "An item exists with same name ({0}), please change the item group name or rename the item","Элемент существует с тем же именем ({0} ) , пожалуйста, измените название группы или переименовать пункт",
 Analyst,аналитичар,
-Analytics,аналитика,
 Annual Billing: {0},Годишња плаћања: {0},
-Anonymous,Анонимно,
 Another Budget record '{0}' already exists against {1} '{2}' and account '{3}' for fiscal year {4},Још један запис о буџету &#39;{0}&#39; већ постоји {1} &#39;{2}&#39; и рачун &#39;{3}&#39; за фискалну годину {4},
 Another Period Closing Entry {0} has been made after {1},Другой Период Окончание Вступление {0} был сделан после {1},
 Another Sales Person {0} exists with the same Employee id,Још једна особа Продаја {0} постоји са истим запослених ид,
@@ -283,14 +280,12 @@
 Attendance not submitted for {0} as {1} on leave.,Присуство није послато за {0} као {1} на одсуству.,
 Attribute table is mandatory,Атрибут сто је обавезно,
 Attribute {0} selected multiple times in Attributes Table,Атрибут {0} изабран више пута у атрибутима табели,
-Author,аутор,
 Authorized Signatory,Овлашћени потписник,
 Auto Material Requests Generated,Аутоматско Материјал Захтеви Генератед,
 Auto Repeat,Ауто Репеат,
 Auto repeat document updated,Аутоматско понављање документа је ажурирано,
 Automotive,аутомобилски,
 Available,Доступно,
-Available Leaves,Расположиве листе,
 Available Qty,Доступно ком,
 Available Selling,Доступна продаја,
 Available for use date is required,Потребан је датум употребе,
@@ -340,7 +335,6 @@
 Base URL,База УРЛ,
 Based On,На Дана,
 Based On Payment Terms,На основу услова плаћања,
-Basic,основной,
 Batch,Серија,
 Batch Entries,Батцх Ентриес,
 Batch ID is mandatory,Батцх ИД је обавезна,
@@ -361,7 +355,6 @@
 Billable Hours,Сати на наплату,
 Billed,Изграђена,
 Billed Amount,Изграђена Износ,
-Billing,Обрачун,
 Billing Address,Адреса за наплату,
 Billing Address is same as Shipping Address,Адреса за наплату једнака је адреси за доставу,
 Billing Amount,Обрачун Износ,
@@ -560,7 +553,6 @@
 Consumed Qty,Потрошено Кол,
 Consumer Products,Производи широке потрошње,
 Contact,Контакт,
-Contact Details,Контакт Детаљи,
 Contact Us,Контактирајте нас,
 Content,Садржина,
 Content Masters,Цонтент Мастерс,
@@ -715,7 +707,6 @@
 Date of Joining,Датум Придруживање,
 Date of Joining must be greater than Date of Birth,Дата Присоединение должно быть больше Дата рождения,
 Date of Transaction,Датум трансакције,
-Datetime,Датетиме,
 Day,дан,
 Debit,Задужење,
 Debit ({0}),Дебит ({0}),
@@ -874,7 +865,6 @@
 Employee cannot report to himself.,Запослени не може пријавити за себе.,
 Employee {0} has already applied for {1} between {2} and {3} : ,Запосленик {0} већ је пријавио за {1} између {2} и {3}:,
 Employee {0} of grade {1} have no default leave policy,Запослени {0} разреда {1} немају никакву политику за одлазни одмор,
-Enable,омогућити,
 Enable / disable currencies.,Включение / отключение валюты.,
 Enabled,Омогућено,
 "Enabling 'Use for Shopping Cart', as Shopping Cart is enabled and there should be at least one Tax Rule for Shopping Cart","Омогућавање &#39;Користи се за Корпа &quot;, као што је омогућено Корпа и требало би да постоји најмање један Пореска правила за Корпа",
@@ -905,7 +895,6 @@
 Error: Not a valid id?,Грешка: Не важи? Ид?,
 Estimated Cost,Процењени трошкови,
 "Even if there are multiple Pricing Rules with highest priority, then following internal priorities are applied:","Чак и ако постоји више Цене правила са највишим приоритетом, онда следећи интерни приоритети се примењују:",
-Event,Догађај,
 Exchange Gain/Loss,Курсне / Губитак,
 Exchange Rate Revaluation master.,Мастер ревалоризације курса,
 Exchange Rate must be same as {0} {1} ({2}),Курс курс мора да буде исти као {0} {1} ({2}),
@@ -1032,7 +1021,6 @@
 From value must be less than to value in row {0},"От значение должно быть меньше , чем значение в строке {0}",
 From {0} | {1} {2},Од {0} | {1} {2},
 Fulfillment,испуњење,
-Full,Пуно,
 Full Name,Пуно име,
 Fully Depreciated,потпуно отписаних,
 Furnitures and Fixtures,Намештај и инвентар,
@@ -1133,7 +1121,6 @@
 Hub Sync ID,Хуб Синц ИД,
 Human Resource,Људски ресурси,
 Human Resources,Человеческие ресурсы,
-IFSC Code,ИФСЦ код,
 IGST Amount,ИГСТ Износ,
 IP Address,ИП адреса,
 ITC Available (whether in full op part),Доступан ИТЦ (било у целокупном делу),
@@ -1185,7 +1172,6 @@
 Ineligible ITC,Неподобан ИТЦ,
 Initiated,Покренут,
 Inpatient Record,Записник о стационарном стању,
-Insert,Инсерт,
 Installation Note,Инсталација Напомена,
 Installation Note {0} has already been submitted,Установка Примечание {0} уже представлен,
 Installation date cannot be before delivery date for Item {0},Дата установки не может быть до даты доставки для Пункт {0},
@@ -1197,7 +1183,6 @@
 Insurance Start date should be less than Insurance End date,Осигурање Датум почетка треба да буде мања од осигурања Енд дате,
 Integrated Tax,Интегрисани порез,
 Inter-State Supplies,Међудржавне потрепштине,
-Interests,Интереси,
 Internet Publishing,Интернет издаваштво,
 Intra-State Supplies,Унутарње државе,
 Introduction,Увод,
@@ -1316,7 +1301,6 @@
 Lab testing datetime cannot be before collection datetime,Тестирање лабораторије за датотиме не може бити пре снимања датетиме,
 Label,Налепница,
 Laboratory,Лабораторија,
-Language Name,Језик Име,
 Large,Велики,
 Last Communication,Последњи Комуникација,
 Last Communication Date,Последњи Комуникација Датум,
@@ -1347,8 +1331,6 @@
 Letter Heads for print templates.,Письмо главы для шаблонов печати .,
 Level,Ниво,
 Liability,Одговорност,
-License,Лиценца,
-Limit,лимит,
 Limit Crossed,Лимит Цроссед,
 Link to Material Request,Линк на захтев за материјал,
 List of all share transactions,Списак свих дионица трансакција,
@@ -1359,7 +1341,6 @@
 Loans (Liabilities),Кредиты ( обязательства),
 Loans and Advances (Assets),Кредиты и авансы ( активы ),
 Local,местный,
-Log,Пријава,
 Logs for maintaining sms delivery status,Протоколи за одржавање смс статус испоруке,
 Lost,изгубљен,
 Lost Reasons,Лост Реасонс,
@@ -1445,7 +1426,6 @@
 Medical Department,Медицински одјел,
 Medical Record,Медицински запис,
 Medium,Средњи,
-Meeting,Састанак,
 Member Activity,Члан Активност,
 Member ID,Члан ИД,
 Member Name,Име члан,
@@ -1495,7 +1475,6 @@
 Multiple Variants,Вишеструке варијанте,
 Multiple fiscal years exist for the date {0}. Please set company in Fiscal Year,Више фискалне године постоје за датум {0}. Молимо поставите компаније у фискалној години,
 Music,музика,
-My Account,Мој налог,
 Name error: {0},Име грешка: {0},
 Name of new Account. Note: Please don't create accounts for Customers and Suppliers,Име новог налога. Напомена: Молимо вас да не стварају налоге за купцима и добављачима,
 Name or Email is mandatory,Име или е-маил је обавезан,
@@ -1538,7 +1517,6 @@
 New credit limit is less than current outstanding amount for the customer. Credit limit has to be atleast {0},Нови кредитни лимит је мање од тренутног преосталог износа за купца. Кредитни лимит мора да садржи најмање {0},
 New task,Нови задатак,
 New {0} pricing rules are created,Створена су нова {0} правила за цене,
-Newsletters,Билтен,
 Newspaper Publishers,Новински издавачи,
 Next,следующий,
 Next Contact By cannot be same as the Lead Email Address,Следећа контактирати путем не може бити исто као водећи Емаил Аддресс,
@@ -1686,7 +1664,6 @@
 Other,Други,
 Other Reports,Остали извештаји,
 "Other outward supplies(Nil rated,Exempted)","Остале спољне залихе (Нил, Ослобођено)",
-Others,другие,
 Out Qty,Од Кол,
 Out Value,od Вредност,
 Out of Order,Неисправно,
@@ -1726,7 +1703,6 @@
 Party Type and Party is mandatory for {0} account,Тип странке и странка је обавезна за {0} налог,
 Party Type is mandatory,Парти Тип је обавезно,
 Party is mandatory,Парти је обавезно,
-Password,Шифра,
 Past Due Date,Датум прошлости,
 Patient,Пацијент,
 Patient Appointment,Именовање пацијента,
@@ -1784,7 +1760,6 @@
 Pharmaceutical,фармацевтический,
 Pharmaceuticals,Фармација,
 Physician,Лекар,
-Pincode,Пинцоде,
 Place Of Supply (State/UT),Место снабдевања (држава / држава),
 Place Order,Извршите поруџбину,
 Plan Name,Име плана,
@@ -1896,7 +1871,6 @@
 Please select date,Молимо одаберите датум,
 Please select item code,"Пожалуйста, выберите элемент кода",
 Please select month and year,Изаберите месец и годину,
-Please select prefix first,"Пожалуйста, выберите префикс первым",
 Please select the Company,Изаберите компанију,
 Please select the Multiple Tier Program type for more than one collection rules.,Молимо изаберите тип вишеструког нивоа програма за више правила колекције.,
 Please select the assessment group other than 'All Assessment Groups',Молимо одаберите групу процене осим &quot;Све за оцењивање група&quot;,
@@ -1913,7 +1887,6 @@
 Please set Company filter blank if Group By is 'Company',Молимо поставите Фирма филтер празно ако Група По је &#39;Фирма&#39;,
 Please set Default Payroll Payable Account in Company {0},Молимо поставите Дефаулт Паиролл Паиабле рачун у компанији {0},
 Please set Depreciation related Accounts in Asset Category {0} or Company {1},Молимо поставите рачуна везаним амортизације средстава категорије {0} или компаније {1},
-Please set Email Address,Молимо поставите емаил адресу,
 Please set GST Accounts in GST Settings,Молимо поставите ГСТ налоге у ГСТ подешавањима,
 Please set Hotel Room Rate on {},Молимо подесите Хотел Роом Рате на {},
 Please set Number of Depreciations Booked,Молимо поставите Број Амортизација Жути картони,
@@ -1936,7 +1909,6 @@
 Please set the Email ID for the Student to send the Payment Request,Молимо подесите Емаил ИД за Студент да бисте послали Захтев за плаћање,
 Please set the Item Code first,Молимо прво поставите код за ставку,
 Please set the Payment Schedule,Молимо поставите Распоред плаћања,
-Please set the series to be used.,Молимо поставите серију која ће се користити.,
 Please set {0} for address {1},Молимо вас подесите {0} за адресу {1},
 Please setup Students under Student Groups,Молим поставите студенте под студентске групе,
 Please specify Company,Молимо наведите фирму,
@@ -1953,7 +1925,6 @@
 Point-of-Sale,Место продаје,
 Point-of-Sale Profile,Поинт-оф-Сале Профиле,
 Portal,Портал,
-Portal Settings,Портал Подешавања,
 Possible Supplier,могуће добављача,
 Postal Expenses,Почтовые расходы,
 Posting Date,Постављање Дате,
@@ -2152,12 +2123,10 @@
 Reference No is mandatory if you entered Reference Date,"Ссылка № является обязательным, если вы ввели Исходной дате",
 Reference No.,Референтни број.,
 Reference Number,Референтни број,
-Reference Owner,референце Власник,
 Reference Type,Референтни Тип,
 "Reference: {0}, Item Code: {1} and Customer: {2}","Референца: {0}, Код товара: {1} Цустомер: {2}",
 References,Референце,
 Refresh Token,рефресх токен,
-Region,Регија,
 Register,Регистровати,
 Rejected,Одбијен,
 Related,Повезан,
@@ -2179,7 +2148,6 @@
 Replace BOM and update latest price in all BOMs,Замените БОМ и ажурирајте најновију цену у свим БОМ,
 Replied,Одговорено,
 Report,Извештај,
-Report Builder,Репорт Буилдер,
 Report Type,Врста извештаја,
 Report Type is mandatory,Тип отчета является обязательным,
 Reports,Извештаји,
@@ -2355,13 +2323,11 @@
 Same Company is entered more than once,Иста компанија је ушла у више наврата,
 Same item cannot be entered multiple times.,Исто ставка не може се уписати више пута.,
 Same supplier has been entered multiple times,Исти добављач је ушао више пута,
-Sample,Узорак,
 Sample Collection,Сампле Цоллецтион,
 Sample quantity {0} cannot be more than received quantity {1},Количина узорка {0} не може бити већа од примљене количине {1},
 Sanctioned,санкционисан,
 Sand,Песак,
 Saturday,Субота,
-Saved,Савед,
 Saving {0},Сачувај {0},
 Scan Barcode,Скенирајте бар код,
 Schedule,Распоред,
@@ -2463,7 +2429,6 @@
 Series Updated,Серия Обновлено,
 Series Updated Successfully,Серия Обновлено Успешно,
 Series is mandatory,Серия является обязательным,
-Series {0} already used in {1},Серия {0} уже используется в {1},
 Service,служба,
 Service Level Agreement,Уговор о нивоу услуге,
 Service Level Agreement.,Уговор о нивоу услуге.,
@@ -2479,7 +2444,6 @@
 Set Tax Rule for shopping cart,Сет Пореска Правило за куповину,
 Set as Closed,Постави као Цлосед,
 Set as Completed,Поставите као довршено,
-Set as Default,Постави као подразумевано,
 Set as Lost,Постави као Лост,
 Set as Open,Постави као Опен,
 Set default inventory account for perpetual inventory,Сет Дефаулт инвентар рачун за вечити инвентар,
@@ -2511,7 +2475,6 @@
 Shareholder,Акционар,
 Ship To State,Брод у државу,
 Shipments,Пошиљке,
-Shipping,Шпедиција,
 Shipping Address,Адреса испоруке,
 "Shipping Address does not have country, which is required for this Shipping Rule","Адреса за доставу нема земљу, која је потребна за ово правило о испоруци",
 Shipping rule only applicable for Buying,Правило о испоруци важи само за куповину,
@@ -2564,7 +2527,6 @@
 Split Batch,подела Серија,
 Split Issue,Сплит Иссуе,
 Sports,спортски,
-Standard,Стандард,
 Standard Buying,Стандардна куповина,
 Standard Selling,Стандардна продаја,
 Standard contract terms for Sales or Purchase.,Стандартные условия договора для продажи или покупки.,
@@ -2731,7 +2693,6 @@
 Terms and Conditions,Услови,
 Terms and Conditions Template,Услови коришћења шаблона,
 Territory,Територија,
-Test,Тест,
 Thank you for your business!,Хвала за ваш посао!,
 The 'From Package No.' field must neither be empty nor it's value less than 1.,&quot;Из пакета бр.&quot; поље не сме бити празно нити је вриједност мања од 1.,
 The Brand,Бренд,
@@ -2848,7 +2809,6 @@
 Total (Without Tax),Укупно (без пореза),
 Total Achieved,Укупно Постигнута,
 Total Actual,Укупно Стварна,
-Total Allocated Leaves,Укупно издвојене листе,
 Total Amount,Укупан износ,
 Total Amount Credited,Укупан износ кредита,
 Total Applicable Charges in Purchase Receipt Items table must be same as Total Taxes and Charges,Укупно Важећи Оптужбе у куповини потврда за ставке табели мора бити исти као и укупних пореза и накнада,
@@ -2892,7 +2852,6 @@
 Total(Amt),Укупно (Амт),
 Total(Qty),Укупно (ком),
 Traceability,Следљивост,
-Traceback,Трацебацк,
 Track Leads by Lead Source.,Трацк Леадс би Леад Соурце.,
 Transaction,Трансакција,
 Transaction Date,Трансакција Датум,
@@ -2930,7 +2889,6 @@
 UOM Conversion factor is required in row {0},Фактор Единица измерения преобразования требуется в строке {0},
 UOM coversion factor required for UOM: {0} in Item: {1},УОМ цоверсион фактор потребан за УЦГ: {0} тачке: {1},
 URL,УРЛ адреса,
-Unable to find DocType {0},Не могу да пронађем ДоцТипе {0},
 Unable to find exchange rate for {0} to {1} for key date {2}. Please create a Currency Exchange record manually,Није могуће пронаћи курс за {0} до {1} за кључне дана {2}. Направите валута Екцханге рекорд ручно,
 Unable to find score starting at {0}. You need to have standing scores covering 0 to 100,Није могуће пронаћи резултат који почиње са {0}. Морате имати стојеће резултате који покривају 0 до 100,
 Unable to find variable: ,Није могуће пронаћи варијаблу:,
@@ -2960,7 +2918,6 @@
 Upload your letter head and logo. (you can edit them later).,Уплоад главу писмо и лого. (Можете их уредити касније).,
 Upper Income,Горња прихода,
 Use Sandbox,Употреба Песак,
-Used Leaves,Користи Леавес,
 User,Усер,
 User ID,Кориснички ИД,
 User ID not set for Employee {0},ID пользователя не установлен Требуются {0},
@@ -3051,7 +3008,6 @@
 Website Settings,Сајт Подешавања,
 Wednesday,Среда,
 Week,Недеља,
-Weekdays,Радним данима,
 Weekly,Недељни,
 "Weight is mentioned,\nPlease mention ""Weight UOM"" too","Тежина се спомиње, \n Молимо вас да се позовете на ""Тежина УОМ"" превише",
 Welcome email sent,"Добро пожаловать Письмо, отправленное",
@@ -3072,7 +3028,6 @@
 Work Order {0} must be submitted,Радни налог {0} мора бити поднет,
 Work Orders Created: {0},Креирани радни налоги: {0},
 Work-in-Progress Warehouse is required before Submit,Работа -в- Прогресс Склад требуется перед Отправить,
-Workflow,Воркфлов,
 Working,Радни,
 Working Hours,Радно време,
 Workstation,Воркстатион,
@@ -3102,7 +3057,6 @@
 You need to be a user other than Administrator with System Manager and Item Manager roles to register on Marketplace.,Потребно је да будете други корисник осим Администратора са улогама Систем Манагер и Манагер за регистрацију на Маркетплаце.,
 You need to be a user with System Manager and Item Manager roles to add users to Marketplace.,Морате бити корисник са улогама Систем Манагер и Итем Манагер да бисте додали кориснике у Маркетплаце.,
 You need to be a user with System Manager and Item Manager roles to register on Marketplace.,Морате бити корисник са улогама Систем Манагер и Итем Манагер за пријављивање на Маркетплаце.,
-You need to be logged in to access this page,Потребно је да бити пријављени да бисте приступили овој страници,
 You need to enable Shopping Cart,Потребно је да омогућите Корпа,
 You will lose records of previously generated invoices. Are you sure you want to restart this subscription?,Изгубићете податке о претходно генерисаним рачунима. Да ли сте сигурни да желите поново покренути ову претплату?,
 Your Organization,Ваш Организација,
@@ -3218,7 +3172,6 @@
 Assigned To,Додељено,
 Chat,Ћаскање,
 Completed By,Завршен,
-County,округ,
 Day of Week,Дан у недељи,
 "Dear System Manager,","Драги систем директор,",
 Default Value,Подразумевана вредност,
@@ -3229,31 +3182,21 @@
 Fieldtype,Фиелдтипе,
 Help Articles,Чланци помоћи,
 ID,ИД,
-Images,slike,
 Import,Увоз,
 Language,Језик,
 Likes,Ликес,
 Merge with existing,Споји са постојећим,
-Office,Канцеларија,
 Orientation,оријентација,
 Parent,Родитељ,
-Passive,Пасиван,
 Payment Failed,Уплата није успела,
-Permanent,Стални,
 Personal,Лични,
-Plant,Биљка,
 Post,пост,
-Postal,Поштански,
 Postal Code,поштански код,
-Previous,предыдущий,
 Provider,Провајдер,
 Read Only,Прочитајте само,
 Recipient,Прималац,
 Reviews,Коментара,
 Sender,Пошиљалац,
-Shop,Продавница,
-Subsidiary,Подружница,
-There is some problem with the file url: {0},Постоји неки проблем са Филе УРЛ: {0},
 There were errors while sending email. Please try again.,"Были ошибки при отправке электронной почты . Пожалуйста, попробуйте еще раз .",
 Values Changed,vrednosti Цхангед,
 or,или,
@@ -3280,19 +3223,16 @@
 Quality Feedback Template,Квалитетни образац за повратне информације,
 Rules for applying different promotional schemes.,Правила за примену различитих промотивних шема.,
 Show {0},Прикажи {0},
-"Special Characters except '-', '#', '.', '/', '{{' and '}}' not allowed in naming series {0}","Посебни знакови осим &quot;-&quot;, &quot;#&quot;, &quot;.&quot;, &quot;/&quot;, &quot;{{&quot; И &quot;}}&quot; нису дозвољени у именовању серија {0}",
 Target Details,Детаљи циља,
 {0} already has a Parent Procedure {1}.,{0} већ има родитељску процедуру {1}.,
 API,АПИ,
 Annual,годовой,
 Change,Промена,
 Contact Email,Контакт Емаил,
-Export Type,Тип извоза,
 From Date,Од датума,
 Group By,Група од,
 Invalid URL,Неважећи УРЛ,
 Landscape,Пејзаж,
-Last Sync On,Ласт Синц Он,
 Naming Series,Именовање Сериес,
 No data to export,Нема података за извоз,
 Portrait,Портрет,
@@ -3302,7 +3242,6 @@
 Show Document,Прикажи документ,
 Show Traceback,Прикажи Трацебацк,
 Video,Видео,
-Webhook Secret,Вебхоок Сецрет,
 % Of Grand Total,% Од укупног износа,
 <b>Company</b> is a mandatory filter.,<b>Компанија</b> је обавезан филтер.,
 <b>From Date</b> is a mandatory filter.,<b>Фром Дате</b> је обавезан филтер.,
@@ -3358,7 +3297,6 @@
 BOM Comparison Tool,Алат за упоређивање БОМ-а,
 BOM recursion: {0} cannot be child of {1},БОМ рекурзија: {0} не може бити дете од {1},
 BOM recursion: {0} cannot be parent or child of {1},БОМ рекурзија: {0} не може бити родитељ или дете од {1},
-Back to Home,Назад кући,
 Back to Messages,Назад на поруке,
 Bank Data mapper doesn't exist,Мапа података банке не постоји,
 Bank Details,Банковног,
@@ -3420,7 +3358,6 @@
 Currency,Валута,
 Current Status,Тренутни статус,
 Customer PO,Потрошачки ПО,
-Customize,Прилагодите,
 Daily,Дневно,
 Date,Датум,
 Date of Birth cannot be greater than Joining Date.,Датум рођења не може бити већи од датума придруживања.,
@@ -3454,7 +3391,6 @@
 ERPNext could not find any matching payment entry,ЕРПНект није могао да нађе ниједан одговарајући унос за плаћање,
 Earliest Age,Најраније доба,
 Edit Details,Измените детаље,
-Edit Profile,Измена профила,
 Either GST Transporter ID or Vehicle No is required if Mode of Transport is Road,"Ако је начин превоза друмски, ГСТ Транспортер ИД или возило не треба",
 Email,Емаил,
 Email Campaigns,Е-маил кампање,
@@ -3482,7 +3418,6 @@
 Fetch Items from Warehouse,Дохваћање предмета из складишта,
 Fetching...,Дохваћање ...,
 Field,поље,
-File Manager,Филе Манагер,
 Filters,Филтери,
 Finding linked payments,Проналажење повезаних плаћања,
 Fleet Management,Управљање возним парком,
@@ -3521,7 +3456,6 @@
 Incorrect Warehouse,Погрешно складиште,
 Invalid Barcode. There is no Item attached to this barcode.,Неважећи баркод. Ниједна ставка није приложена уз овај бар код.,
 Invalid credentials,Неважећи акредитив,
-Invite as User,Позови као корисник,
 Issue Priority.,Приоритет питања.,
 Issue Type.,Врста издања.,
 "It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","Чини се да постоји проблем са конфигурацијом стрипе сервера. У случају неуспеха, износ ће бити враћен на ваш рачун.",
@@ -3564,7 +3498,6 @@
 New Invoice,Нова фактура,
 New Payment,Нова уплата,
 New release date should be in the future,Нови датум изласка требао би бити у будућности,
-Newsletter,Билтен,
 No Account matched these filters: {},Нема налога који се подударају са овим филтерима: {},
 No communication found.,Није пронађена комуникација.,
 No correct answer is set for {0},Није постављен тачан одговор за {0},
@@ -3640,7 +3573,6 @@
 Please setup a default bank account for company {0},Подесите задани банковни рачун за компанију {0},
 Please specify,Наведите,
 Please specify a {0},Молимо наведите {0},lead
-Printing,Штампање,
 Priority,Приоритет,
 Priority has been changed to {0}.,Приоритет је промењен у {0}.,
 Priority {0} has been repeated.,Приоритет {0} је поновљен.,
@@ -3649,7 +3581,6 @@
 Project,Пројекат,
 Provide the academic year and set the starting and ending date.,Наведите академску годину и одредите датум почетка и завршетка.,
 Public token is missing for this bank,Јавни токен недостаје за ову банку,
-Publish,Објави,
 Publish 1 Item,Објавите 1 предмет,
 Publish Items,Објавите ставке,
 Publish More Items,Објавите још предмета,
@@ -3677,7 +3608,6 @@
 Reconciled,Помирјен,
 Recruitment,Регрутовање,
 Red,Црвен,
-Refreshing,Освежавајуће,
 Release date must be in the future,Датум изласка мора бити у будућности,
 Relieving Date must be greater than or equal to Date of Joining,Датум ослобађања мора бити већи или једнак датуму придруживања,
 Rename,Преименовање,
@@ -3721,7 +3651,6 @@
 Search for a payment,Тражи плаћање,
 Search for anything ...,Тражи било шта ...,
 Search results for,Резултати претраге за,
-Select All,Изабери све,
 Select Difference Account,Изаберите Рачун разлике,
 Select a Default Priority.,Изаберите подразумевани приоритет.,
 Select a company,Изаберите компанију,
@@ -3740,11 +3669,9 @@
 Service Level Agreement has been changed to {0}.,Уговор о нивоу услуге промењен је на {0}.,
 Service Level Agreement was reset.,Споразум о нивоу услуге је ресетован.,
 Service Level Agreement with Entity Type {0} and Entity {1} already exists.,Уговор о нивоу услуге са типом ентитета {0} и ентитетом {1} већ постоји.,
-Set,набор,
 Set Meta Tags,Постављање мета тагова,
 Set {0} in company {1},Поставите {0} у компанији {1},
 Setup,Намештаљка,
-Setup Wizard,Мастер установки,
 Shift Management,Схифт Манагемент,
 Show Future Payments,Прикажи будуће исплате,
 Show Linked Delivery Notes,Прикажи повезане биљешке испоруке,
@@ -3815,7 +3742,6 @@
 Unreconciled,Неусклађено,
 Unsupported GST Category for E-Way Bill JSON generation,Неподржана ГСТ категорија за Е-Ваи Билл ЈСОН генерације,
 Update,ажурирање,
-Update Details,Ажурирај детаље,
 Update Taxes for Items,Ажурирајте порез на ставке,
 "Upload a bank statement, link or reconcile a bank account","Пошаљите банковни извод, повежите или усклађујете банковни рачун",
 Upload a statement,Пошаљите изјаву,
@@ -3839,7 +3765,6 @@
 XML Files Processed,Обрађене КСМЛ датотеке,
 Year,Година,
 Yearly,Годишње,
-You,Ви,
 You are not allowed to enroll for this course,Није вам дозвољено да се упишете на овај курс,
 You are not enrolled in program {0},Нисте уписани у програм {0},
 You can Feature upto 8 items.,Можете представити до 8 ставки.,
@@ -3856,7 +3781,6 @@
 e-Way Bill already exists for this document,За овај документ већ постоји е-Ваи Билл,
 woocommerce - {0},вооцоммерце - {0},
 {0} Coupon used are {1}. Allowed quantity is exhausted,{0} Купон се користи {1}. Дозвољена количина се исцрпљује,
-{0} Name,{0} Име,
 {0} Operations: {1},{0} Операције: {1},
 {0} bank transaction(s) created,{0} направљене банкарске трансакције,
 {0} bank transaction(s) created and {1} errors,{0} направљене банкарске трансакције и грешке {1},
@@ -3875,17 +3799,13 @@
 Total Income,Укупни приходи,
 Total Income This Year,Укупни приход у овој години,
 Barcode,Баркод,
-Bold,Одважан,
-Center,Центар,
 Clear,Јасно,
-Comment,Коментирај,
 Comments,Коментари,
 DocType,ДоцТипе,
 Download,Преузимање,
 Left,Лево,
 Link,Линк,
 New,Нова,
-Not Found,Није пронађен,
 Print,Принт,
 Reference Name,Референтно име,
 Refresh,Освежити,
@@ -3908,7 +3828,6 @@
 Email Id,Е-маил ИД,
 No,Не,
 Reference Doctype,Референтни ДоцТипе,
-User Id,ИД корисник,
 Yes,да,
 Actual ,Стваран,
 Add to cart,Добавить в корзину,
@@ -4304,7 +4223,6 @@
 e.g Adjustments for:,нпр. прилагођавања за:,
 Section Subtotal,Секција субота,
 Section Footer,Секција Фоотер,
-Position,Позиција,
 Cash Flow Mapping,Мапирање токова готовине,
 Select Maximum Of 1,Изаберите максимум од 1,
 Is Finance Cost,Је финансијски трошак,
@@ -4936,7 +4854,6 @@
 Previous Business Day,Претходни радни дан,
 Next Business Day,Следећи радни дан,
 Urgent,Хитан,
-Crop,Усев,
 Crop Name,Цроп Наме,
 Scientific Name,Научно име,
 "You can define all the tasks which need to carried out for this crop here. The day field is used to mention the day on which the task needs to be carried out, 1 being the 1st day, etc.. ","Можете дефинисати све задатке које је потребно извршити за ову жетву овдје. Дневно поље се користи да помене дан на који је задатак потребно извршити, 1 је 1. дан, итд.",
@@ -5441,7 +5358,6 @@
 To TIme,За време,
 Course End Date,Наравно Датум завршетка,
 Course Topic,Тема курса,
-Topic,тема,
 Topic Name,Назив теме,
 Education Settings,Образовне поставке,
 Current Academic Year,Тренутни академска година,
@@ -5516,7 +5432,6 @@
 Check this if the Student is residing at the Institute's Hostel.,Проверите ово ако је ученик борави у Института Хостел.,
 Walking,Ходање,
 Institute's Bus,Институтски аутобус,
-Public Transport,Јавни превоз,
 Self-Driving Vehicle,Селф-Дривинг возила,
 Pick/Drop by Guardian,Пицк / сврати Гуардиан,
 Enrolled courses,уписана курсеви,
@@ -5697,7 +5612,6 @@
 Default Cost Center,Уобичајено Трошкови Центар,
 Undeposited Funds Account,Рачун Ундепоситед Фундс,
 Shopify Log,Схопифи Лог,
-Request Data,Захтевајте податке,
 Shopify Settings,Схопифи Сеттингс,
 status html,статус хтмл,
 Enable Shopify,Омогући Схопифи,
@@ -5817,7 +5731,6 @@
 Exercise Instructions,Упутства за вежбање,
 Exercise Video,Видео за вежбу,
 Exercise Steps,Кораци вежбања,
-Steps,Кораци,
 Steps Table,Табела корака,
 Exercise Type Step,Тип вежбе корак,
 Max number of visit,Максималан број посета,
@@ -6001,7 +5914,6 @@
 Patient Encounter Symptom,Симптом сусрета са пацијентима,
 HLC-PMR-.YYYY.-,ХЛЦ-ПМР-ИИИИ.-,
 Attach Medical Record,Приложите медицинску евиденцију,
-Reference DocType,Референца ДоцТипе,
 Spouse,Супруга,
 Family,Породица,
 Schedule Details,Детаљи распореда,
@@ -6983,16 +6895,8 @@
 HTML / Banner that will show on the top of product list.,ХТМЛ / банер који ће се појавити на врху листе производа.,
 Set prefix for numbering series on your transactions,Сет префикс за нумерисање серију на својим трансакцијама,
 Setup Series,Подешавање Серија,
-Select Transaction,Изаберите трансакцију,
-Help HTML,Помоћ ХТМЛ,
-Series List for this Transaction,Серија Листа за ову трансакције,
-User must always select,Корисник мора увек изабрати,
-Check this if you want to force the user to select a series before saving. There will be no default if you check this.,Проверите ово ако желите да натера кориснику да одабере серију пре чувања. Неће бити подразумевано ако проверите ово.,
 Update Series,Упдате,
 Change the starting / current sequence number of an existing series.,Промена стартовања / струја број редни постојеће серије.,
-Prefix,Префикс,
-This is the number of the last created transaction with this prefix,То је број последње створеног трансакције са овим префиксом,
-Update Series Number,Упдате Број,
 Quotation Lost Reason,Понуда Лост разлог,
 A third party distributor / dealer / commission agent / affiliate / reseller who sells the companies products for a commission.,Треће лице дистрибутер / дилер / заступника / сарадник / дистрибутер који продаје компанијама производе за провизију.,
 Sales Partner Name,Продаја Име партнера,
@@ -7687,7 +7591,6 @@
 Warehouse wise Item Balance Age and Value,Стварно складиште ставке Балансно доба и вриједност,
 Work Order Stock Report,Извештај о радном налогу,
 Work Orders in Progress,Радни налоги у току,
-Validation Error,Грешка при потврђивању,
 Automatically Process Deferred Accounting Entry,Аутоматски обради одложено књиговодство,
 Bank Clearance,Потврда банке,
 Bank Clearance Detail,Детаљи о одобрењу банке,
@@ -7724,45 +7627,7 @@
 Therapy Plan: ,План терапије:,
 Total Counts Targeted: ,Укупан циљани број:,
 Total Counts Completed: ,Укупно завршено бројање:,
-Andaman and Nicobar Islands,Андаманска и Никобарска острва,
-Andhra Pradesh,Андхра Прадесх,
-Arunachal Pradesh,Арунацхал Прадесх,
-Assam,Ассам,
-Bihar,Бихар,
-Chandigarh,Цхандигарх,
-Chhattisgarh,Цххаттисгарх,
-Dadra and Nagar Haveli,Дадра и Нагар Хавели,
-Daman and Diu,Даман и Диу,
-Delhi,Делхи,
-Goa,Гоа,
-Gujarat,Гујарат,
-Haryana,Хариана,
-Himachal Pradesh,Химацхал Прадесх,
-Jammu and Kashmir,Џаму и Кашмир,
-Jharkhand,Јхаркханд,
-Karnataka,Карнатака,
-Kerala,Керала,
-Lakshadweep Islands,Острва Лаксхадвееп,
-Madhya Pradesh,Мадхиа Прадесх,
-Maharashtra,Махарасхтра,
-Manipur,Манипур,
-Meghalaya,Мегхалаиа,
-Mizoram,Мизорам,
-Nagaland,Нагаланд,
-Odisha,Одисха,
-Other Territory,Друга територија,
-Pondicherry,Пондицхерри,
-Punjab,Пуњаб,
-Rajasthan,Рајастхан,
-Sikkim,Сикким,
-Tamil Nadu,Тамил Наду,
-Telangana,Телангана,
-Tripura,Трипура,
-Uttar Pradesh,Уттар Прадесх,
-Uttarakhand,Уттаракханд,
-West Bengal,Западни Бенгал,
 Is Mandatory,Је обавезно,
-Published on,Објављено на,
 Service Received But Not Billed,"Услуга је примљена, али није наплаћена",
 Deferred Accounting Settings,Поставке одложеног рачуноводства,
 Book Deferred Entries Based On,Резервишите уносе на основу,
@@ -8035,8 +7900,6 @@
 Worksheet Instructions,Упутства за радни лист,
 Result Legend Print,Резултат Легенд Принт,
 Print Position,Принт Поситион,
-Bottom,Дно,
-Top,Врх,
 Both,И једно и друго,
 Result Legend,Легенда резултата,
 Lab Tests,Лабораторијски тестови,
@@ -8081,12 +7944,10 @@
 Approvers,Одобривачи,
 The first Approver in the list will be set as the default Approver.,Први одобравач на листи биће постављен као подразумевани одобраватељ.,
 Shift Request Approver,Одобривач захтева за смену,
-PAN Number,ПАН број,
 Provident Fund Account,Рачун осигуравајућег фонда,
 MICR Code,МИЦР код,
 Repay unclaimed amount from salary,Отплати неискоришћени износ из плате,
 Deduction from salary,Одбитак од зараде,
-Expired Leaves,Истекло лишће,
 If this is not checked the loan by default will be considered as a Demand Loan,"Ако ово није потврђено, зајам ће се подразумевано сматрати зајмом на захтев",
 This account is used for booking loan repayments from the borrower and also disbursing loans to the borrower,Овај рачун се користи за резервирање отплате зајма од зајмопримца и за исплату зајмова зајмопримцу,
 This account is capital account which is used to allocate capital for loan disbursal account ,Овај рачун је рачун капитала који се користи за алокацију капитала за рачун за издвајање кредита,
@@ -8844,3 +8705,41 @@
 Creating Purchase Order ...,Креирање налога за куповину ...,
 "Select a Supplier from the Default Suppliers of the items below. On selection, a Purchase Order will be made against items belonging to the selected Supplier only.","Изаберите добављача од задатих добављача доле наведених ставки. Након одабира, наруџбеница ће се извршити само за производе који припадају изабраном добављачу.",
 Row #{}: You must select {} serial numbers for item {}.,Ред # {}: Морате одабрати {} серијске бројеве за ставку {}.,
+Add Comment,Додај коментар,
+More...,Више...,
+Notes,Белешке,
+Payment Gateway,Паимент Гатеваи,
+Payment Gateway Name,Назив Гатеваи Гатеваи-а,
+Payments,Исплате,
+Plan Name,Име плана,
+Portal,Портал,
+Scan Barcode,Скенирајте бар код,
+Some information is missing,Неке информације недостаје,
+Successful,Успешно,
+Tools,Алат,
+Use Sandbox,Употреба Песак,
+Busy,Заузет,
+Completed By,Завршен,
+Payment Failed,Уплата није успела,
+Column {0},Ступац {0},
+Field Mapping,Мапирање поља,
+Not Specified,Није прецизирано,
+Update Type,Тип ажурирања,
+Dr,Др,
+End Time,Крајње време,
+Fetching...,Дохваћање ...,
+"It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","Чини се да постоји проблем са конфигурацијом стрипе сервера. У случају неуспеха, износ ће бити враћен на ваш рачун.",
+Looks like someone sent you to an incomplete URL. Please ask them to look into it.,"Изгледа да вам је неко послао на недовршеном УРЛ. Молим Вас, питајте их да гледају у њу.",
+Master,Мајстор,
+Pay,Платити,
+You can also copy-paste this link in your browser,Иоу цан алсо цопи-пасте овај линк у вашем бровсеру,
+Verified By,Верифиед би,
+Invalid naming series (. missing) for {0},Неважећа серија именовања (. Недостаје) за {0},
+Phone Number,Број телефона,
+Account SID,СИД налога,
+Global Defaults,Глобални Дефаултс,
+Is Mandatory,Је обавезно,
+WhatsApp,ВхатсАпп,
+Make a call,Позивање,
+Approve,одобрити,
+Reject,Одбити,
diff --git a/erpnext/translations/sv.csv b/erpnext/translations/sv.csv
index abdbc6b..c4d46ea 100644
--- a/erpnext/translations/sv.csv
+++ b/erpnext/translations/sv.csv
@@ -113,7 +113,6 @@
 Add Items,Lägg produkter,
 Add Leads,Lägg till Leads,
 Add Multiple Tasks,Lägg till flera uppgifter,
-Add Row,Lägg till rad,
 Add Sales Partners,Lägg till försäljningspartners,
 Add Serial No,Lägg till Serienr,
 Add Students,Lägg till elever,
@@ -211,9 +210,7 @@
 An error occurred during the update process,Ett fel uppstod under uppdateringsprocessen,
 "An item exists with same name ({0}), please change the item group name or rename the item","Ett objekt finns med samma namn ({0}), ändra objektets varugrupp eller byt namn på objektet",
 Analyst,Analytiker,
-Analytics,Analytics,
 Annual Billing: {0},Årlig Billing: {0},
-Anonymous,Anonym,
 Another Budget record '{0}' already exists against {1} '{2}' and account '{3}' for fiscal year {4},En annan budgetpost &quot;{0}&quot; finns redan mot {1} &quot;{2}&quot; och konto &quot;{3}&quot; för verksamhetsåret {4},
 Another Period Closing Entry {0} has been made after {1},En annan period Utgående anteckning {0} har gjorts efter {1},
 Another Sales Person {0} exists with the same Employee id,En annan säljare {0} finns med samma anställningsid,
@@ -283,14 +280,12 @@
 Attendance not submitted for {0} as {1} on leave.,Närvaro som inte lämnats in för {0} som {1} på ledighet.,
 Attribute table is mandatory,Attributtabell är obligatoriskt,
 Attribute {0} selected multiple times in Attributes Table,Attribut {0} valda flera gånger i attribut Tabell,
-Author,Författare,
 Authorized Signatory,Firmatecknare,
 Auto Material Requests Generated,Automaterial Framställningar Generated,
 Auto Repeat,Auto Repeat,
 Auto repeat document updated,Automatisk upprepa dokument uppdaterad,
 Automotive,Fordon,
 Available,Tillgängligt,
-Available Leaves,Tillgängliga löv,
 Available Qty,Tillgång Antal,
 Available Selling,Tillgänglig försäljning,
 Available for use date is required,Tillgängligt för användning datum krävs,
@@ -340,7 +335,6 @@
 Base URL,Basadress,
 Based On,Baserat På,
 Based On Payment Terms,Baserat på Betalningsvillkor,
-Basic,Grundläggande,
 Batch,Batch,
 Batch Entries,Batchposter,
 Batch ID is mandatory,Batch-ID är obligatoriskt,
@@ -361,7 +355,6 @@
 Billable Hours,Fakturerbara timmar,
 Billed,Fakturerad,
 Billed Amount,Fakturerat antal,
-Billing,Fakturering,
 Billing Address,Fakturaadress,
 Billing Address is same as Shipping Address,Faktureringsadress är samma som fraktadress,
 Billing Amount,Fakturerings Mängd,
@@ -560,7 +553,6 @@
 Consumed Qty,Förbrukad Antal,
 Consumer Products,Konsumentprodukter,
 Contact,Kontakt,
-Contact Details,Kontaktuppgifter,
 Contact Us,Kontakta oss,
 Content,Innehåll,
 Content Masters,Innehåll Masters,
@@ -715,7 +707,6 @@
 Date of Joining,Datum för att delta,
 Date of Joining must be greater than Date of Birth,Datum för att delta måste vara större än Födelsedatum,
 Date of Transaction,Datum för transaktion,
-Datetime,Datum Tid,
 Day,Dag,
 Debit,Debit-,
 Debit ({0}),Debit ({0}),
@@ -874,7 +865,6 @@
 Employee cannot report to himself.,Anställd kan inte anmäla sig själv.,
 Employee {0} has already applied for {1} between {2} and {3} : ,Anställd {0} har redan ansökt om {1} mellan {2} och {3}:,
 Employee {0} of grade {1} have no default leave policy,Anställd {0} i betyg {1} har ingen standardlovspolicy,
-Enable,Gör det möjligt,
 Enable / disable currencies.,Aktivera / inaktivera valutor.,
 Enabled,Aktiverat,
 "Enabling 'Use for Shopping Cart', as Shopping Cart is enabled and there should be at least one Tax Rule for Shopping Cart","Aktivera användning för Varukorgen &quot;, som Kundvagnen är aktiverad och det bör finnas åtminstone en skattebestämmelse för Varukorgen",
@@ -905,7 +895,6 @@
 Error: Not a valid id?,Fel: Inte ett giltigt id?,
 Estimated Cost,Beräknad kostnad,
 "Even if there are multiple Pricing Rules with highest priority, then following internal priorities are applied:","Även om det finns flera prissättningsregler med högsta prioritet, kommer följande interna prioriteringar tillämpas:",
-Event,Händelse,
 Exchange Gain/Loss,Exchange vinst / förlust,
 Exchange Rate Revaluation master.,Valutakursrevaluering master.,
 Exchange Rate must be same as {0} {1} ({2}),Växelkurs måste vara samma som {0} {1} ({2}),
@@ -1032,7 +1021,6 @@
 From value must be less than to value in row {0},Från Talet måste vara lägre än värdet i rad {0},
 From {0} | {1} {2},Från {0} | {1} {2},
 Fulfillment,Uppfyllelse,
-Full,Full,
 Full Name,Fullständigt Namn,
 Fully Depreciated,helt avskriven,
 Furnitures and Fixtures,Möbler och inventarier,
@@ -1133,7 +1121,6 @@
 Hub Sync ID,Hub Sync ID,
 Human Resource,Personal administration,
 Human Resources,Personal Resurser,
-IFSC Code,IFSC-kod,
 IGST Amount,IGST-belopp,
 IP Address,IP-adress,
 ITC Available (whether in full op part),ITC tillgängligt (oavsett om det är fullständigt),
@@ -1185,7 +1172,6 @@
 Ineligible ITC,Icke kvalificerad ITC,
 Initiated,initierad,
 Inpatient Record,Inpatient Record,
-Insert,Infoga,
 Installation Note,Installeringsnotis,
 Installation Note {0} has already been submitted,Installeringsnotis {0} har redan lämnats in,
 Installation date cannot be before delivery date for Item {0},Installationsdatum kan inte vara före leveransdatum för punkt {0},
@@ -1197,7 +1183,6 @@
 Insurance Start date should be less than Insurance End date,Insurance Startdatum bör vara mindre än försäkring Slutdatum,
 Integrated Tax,Integrerad skatt,
 Inter-State Supplies,Mellanstatliga leveranser,
-Interests,Intressen,
 Internet Publishing,Internet Publishing,
 Intra-State Supplies,Mellanstatliga leveranser,
 Introduction,Introduktion,
@@ -1316,7 +1301,6 @@
 Lab testing datetime cannot be before collection datetime,Labtestning datetime kan inte vara före datetime samling,
 Label,Etikett,
 Laboratory,Laboratorium,
-Language Name,språk Namn,
 Large,Stor,
 Last Communication,Senaste kommunikationen,
 Last Communication Date,Senaste kommunikationsdatum,
@@ -1347,8 +1331,6 @@
 Letter Heads for print templates.,Brevhuvuden för utskriftsmallar.,
 Level,Nivå,
 Liability,Ansvar,
-License,Licens,
-Limit,Begränsa,
 Limit Crossed,gräns Korsade,
 Link to Material Request,Länk till materialförfrågan,
 List of all share transactions,Lista över alla aktie transaktioner,
@@ -1359,7 +1341,6 @@
 Loans (Liabilities),Lån (Skulder),
 Loans and Advances (Assets),Utlåning (tillgångar),
 Local,Lokal,
-Log,Logga,
 Logs for maintaining sms delivery status,Loggar för att upprätthålla sms leveransstatus,
 Lost,Förlorade,
 Lost Reasons,Förlorade skäl,
@@ -1445,7 +1426,6 @@
 Medical Department,Medicinska avdelningen,
 Medical Record,Vårdjournal,
 Medium,Medium,
-Meeting,Möte,
 Member Activity,Medlemsaktivitet,
 Member ID,Medlems-ID,
 Member Name,Medlemsnamn,
@@ -1495,7 +1475,6 @@
 Multiple Variants,Flera varianter,
 Multiple fiscal years exist for the date {0}. Please set company in Fiscal Year,Flera räkenskapsår finns för dagen {0}. Ställ företag under räkenskapsåret,
 Music,musik,
-My Account,Mitt Konto,
 Name error: {0},Namn fel: {0},
 Name of new Account. Note: Please don't create accounts for Customers and Suppliers,Namn på ett nytt konto. Obs: Vänligen inte skapa konton för kunder och leverantörer,
 Name or Email is mandatory,Namn eller e-post är obligatoriskt,
@@ -1538,7 +1517,6 @@
 New credit limit is less than current outstanding amount for the customer. Credit limit has to be atleast {0},Nya kreditgränsen är mindre än nuvarande utestående beloppet för kunden. Kreditgräns måste vara minst {0},
 New task,Ny uppgift,
 New {0} pricing rules are created,Nya {0} prisregler skapas,
-Newsletters,nyhetsbrev,
 Newspaper Publishers,Tidningsutgivarna,
 Next,Nästa,
 Next Contact By cannot be same as the Lead Email Address,Nästa Kontakta Vid kan inte vara densamma som den ledande e-postadress,
@@ -1686,7 +1664,6 @@
 Other,Annat,
 Other Reports,Andra rapporter,
 "Other outward supplies(Nil rated,Exempted)","Andra leveranser utifrån (noll betyg, undantagna)",
-Others,Annat,
 Out Qty,Ut antal,
 Out Value,ut Värde,
 Out of Order,Trasig,
@@ -1726,7 +1703,6 @@
 Party Type and Party is mandatory for {0} account,Party Type och Party är obligatorisk för {0} konto,
 Party Type is mandatory,Party Type är obligatorisk,
 Party is mandatory,Party är obligatoriskt,
-Password,Lösenord,
 Past Due Date,Förfallodagen,
 Patient,Patient,
 Patient Appointment,Patientavnämning,
@@ -1784,7 +1760,6 @@
 Pharmaceutical,Farmaceutiska,
 Pharmaceuticals,Läkemedel,
 Physician,Läkare,
-Pincode,Pinkod,
 Place Of Supply (State/UT),Leveransplats (staten / UT),
 Place Order,Beställa,
 Plan Name,Plannamn,
@@ -1896,7 +1871,6 @@
 Please select date,Välj datum,
 Please select item code,Välj artikelkod,
 Please select month and year,Välj månad och år,
-Please select prefix first,Välj prefix först,
 Please select the Company,Var god välj Företaget,
 Please select the Multiple Tier Program type for more than one collection rules.,Var god välj flerprograms-programtypen för mer än en insamlingsregler.,
 Please select the assessment group other than 'All Assessment Groups',Var god välj bedömningsgruppen annan än &quot;Alla bedömningsgrupper&quot;,
@@ -1913,7 +1887,6 @@
 Please set Company filter blank if Group By is 'Company',Vänligen ange Företagets filter tomt om Group By är &quot;Company&quot;,
 Please set Default Payroll Payable Account in Company {0},Ställ Default Lön betalas konto i bolaget {0},
 Please set Depreciation related Accounts in Asset Category {0} or Company {1},Ställ Avskrivningar relaterade konton i tillgångsslag {0} eller Company {1},
-Please set Email Address,Ställ in e-postadress,
 Please set GST Accounts in GST Settings,Ange GST-konton i GST-inställningar,
 Please set Hotel Room Rate on {},Ange hotellets rumspris på {},
 Please set Number of Depreciations Booked,Ställ in Antal Avskrivningar bokat,
@@ -1936,7 +1909,6 @@
 Please set the Email ID for the Student to send the Payment Request,Ange e-postadressen för studenten för att skicka betalningsförfrågan,
 Please set the Item Code first,Vänligen ange produktkoden först,
 Please set the Payment Schedule,Ställ in betalningsschemat,
-Please set the series to be used.,Ange serien som ska användas.,
 Please set {0} for address {1},Ange {0} för adress {1},
 Please setup Students under Student Groups,Vänligen uppsättning studenter under studentgrupper,
 Please specify Company,Ange Företag,
@@ -1953,7 +1925,6 @@
 Point-of-Sale,Butiksförsäljnig,
 Point-of-Sale Profile,Butikförsäljnings profil,
 Portal,Portal,
-Portal Settings,Portal Settings,
 Possible Supplier,Möjlig leverantör,
 Postal Expenses,Post Kostnader,
 Posting Date,Bokningsdatum,
@@ -2152,12 +2123,10 @@
 Reference No is mandatory if you entered Reference Date,Referensnummer är obligatoriskt om du har angett referens Datum,
 Reference No.,Referensnummer.,
 Reference Number,Referensnummer,
-Reference Owner,referens Ägare,
 Reference Type,Referens Typ,
 "Reference: {0}, Item Code: {1} and Customer: {2}","Referens: {0}, Artikelnummer: {1} och Kund: {2}",
 References,referenser,
 Refresh Token,Uppdatera Token,
-Region,Region,
 Register,Registrera,
 Rejected,Avvisad,
 Related,Relaterad,
@@ -2179,7 +2148,6 @@
 Replace BOM and update latest price in all BOMs,Byt BOM och uppdatera senaste pris i alla BOM,
 Replied,Svarade,
 Report,Rapport,
-Report Builder,Rapportgenerator,
 Report Type,Rapporttyp,
 Report Type is mandatory,Rapporttyp är obligatorisk,
 Reports,rapporter,
@@ -2355,13 +2323,11 @@
 Same Company is entered more than once,Samma Företaget anges mer än en gång,
 Same item cannot be entered multiple times.,Samma post kan inte anges flera gånger.,
 Same supplier has been entered multiple times,Samma leverantör har angetts flera gånger,
-Sample,Prov,
 Sample Collection,Provsamling,
 Sample quantity {0} cannot be more than received quantity {1},Provkvantitet {0} kan inte vara mer än mottagen kvantitet {1},
 Sanctioned,sanktionerade,
 Sand,Sand,
 Saturday,Lördag,
-Saved,sparad,
 Saving {0},Sparar {0},
 Scan Barcode,Skanna streckkod,
 Schedule,Tidtabell,
@@ -2463,7 +2429,6 @@
 Series Updated,Serie uppdaterad,
 Series Updated Successfully,Serie uppdaterats,
 Series is mandatory,Serien är obligatorisk,
-Series {0} already used in {1},Serie {0} används redan i {1},
 Service,Tjänsten,
 Service Level Agreement,Servicenivåavtal,
 Service Level Agreement.,Servicenivåavtal.,
@@ -2479,7 +2444,6 @@
 Set Tax Rule for shopping cart,Ställ skatt Regel för varukorgen,
 Set as Closed,Ange som Stängt,
 Set as Completed,Ställ in som klar,
-Set as Default,Ange som standard,
 Set as Lost,Ange som förlorade,
 Set as Open,Ange som Open,
 Set default inventory account for perpetual inventory,Ange standardinventeringskonto för evig inventering,
@@ -2511,7 +2475,6 @@
 Shareholder,Aktieägare,
 Ship To State,Ship to State,
 Shipments,transporter,
-Shipping,Frakt,
 Shipping Address,Leverans Adress,
 "Shipping Address does not have country, which is required for this Shipping Rule","Fraktadressen har inget land, vilket krävs för denna leveransregel",
 Shipping rule only applicable for Buying,Fraktregel gäller endast för köp,
@@ -2564,7 +2527,6 @@
 Split Batch,Split Batch,
 Split Issue,Delat utgåva,
 Sports,Sport,
-Standard,Standard,
 Standard Buying,Standard handla,
 Standard Selling,Standardförsäljnings,
 Standard contract terms for Sales or Purchase.,Standard avtalsvillkor för försäljning eller köp.,
@@ -2731,7 +2693,6 @@
 Terms and Conditions,Villkor,
 Terms and Conditions Template,Villkor Mall,
 Territory,Territorium,
-Test,Test,
 Thank you for your business!,Tack för din verksamhet!,
 The 'From Package No.' field must neither be empty nor it's value less than 1.,&quot;Från paketnummer&quot; Fältet får inte vara tomt eller det är värdet mindre än 1.,
 The Brand,Varumärket,
@@ -2848,7 +2809,6 @@
 Total (Without Tax),Totalt (utan skatt),
 Total Achieved,Totalt Uppnått,
 Total Actual,Totalt Faktisk,
-Total Allocated Leaves,Totalt tilldelade blad,
 Total Amount,Totala summan,
 Total Amount Credited,Summa belopp Credited,
 Total Applicable Charges in Purchase Receipt Items table must be same as Total Taxes and Charges,Totalt tillämpliga avgifter i inköpskvittot Items tabellen måste vara densamma som den totala skatter och avgifter,
@@ -2892,7 +2852,6 @@
 Total(Amt),Totalt (Amt),
 Total(Qty),Totalt (Antal),
 Traceability,spårbarhet,
-Traceback,Spåra tillbaka,
 Track Leads by Lead Source.,Spåra ledningar av blykälla.,
 Transaction,Transaktion,
 Transaction Date,Transaktionsdatum,
@@ -2930,7 +2889,6 @@
 UOM Conversion factor is required in row {0},UOM omräkningsfaktor i rad {0},
 UOM coversion factor required for UOM: {0} in Item: {1},UOM coverfaktor krävs för UOM: {0} i punkt: {1},
 URL,URL,
-Unable to find DocType {0},Det gick inte att hitta DocType {0},
 Unable to find exchange rate for {0} to {1} for key date {2}. Please create a Currency Exchange record manually,Det gick inte att hitta växelkursen för {0} till {1} för nyckeldatum {2}. Var god skapa en valutautbyteslista manuellt,
 Unable to find score starting at {0}. You need to have standing scores covering 0 to 100,Det gick inte att hitta poäng från {0}. Du måste ha stående poäng som täcker 0 till 100,
 Unable to find variable: ,Det gick inte att hitta variabel:,
@@ -2960,7 +2918,6 @@
 Upload your letter head and logo. (you can edit them later).,Ladda upp din brevhuvud och logotyp. (Du kan redigera dem senare).,
 Upper Income,Övre inkomst,
 Use Sandbox,användning Sandbox,
-Used Leaves,Använda löv,
 User,Användare,
 User ID,användar ID,
 User ID not set for Employee {0},Användar-ID inte satt för anställd {0},
@@ -3051,7 +3008,6 @@
 Website Settings,Webbplatsinställningar,
 Wednesday,Onsdag,
 Week,Vecka,
-Weekdays,vardagar,
 Weekly,Veckovis,
 "Weight is mentioned,\nPlease mention ""Weight UOM"" too","Vikt nämns \ Vänligen ange ""Vikt UOM"" också",
 Welcome email sent,Välkommen e-postmeddelandet,
@@ -3072,7 +3028,6 @@
 Work Order {0} must be submitted,Arbetsorder {0} måste lämnas in,
 Work Orders Created: {0},Arbetsorder skapade: {0},
 Work-in-Progress Warehouse is required before Submit,Pågående Arbete - Lager krävs innan du kan Skicka,
-Workflow,Workflow,
 Working,Arbetande,
 Working Hours,Arbetstimmar,
 Workstation,Arbetsstation,
@@ -3102,7 +3057,6 @@
 You need to be a user other than Administrator with System Manager and Item Manager roles to register on Marketplace.,Du måste vara en annan användare än Administratör med systemhanteraren och objekthanterarens roller för att registrera dig på Marketplace.,
 You need to be a user with System Manager and Item Manager roles to add users to Marketplace.,Du måste vara användare med systemhanteraren och objekthanterarens roller för att lägga till användare på Marketplace.,
 You need to be a user with System Manager and Item Manager roles to register on Marketplace.,Du måste vara en användare med systemhanteraren och objekthanterarens roller för att registrera dig på Marketplace.,
-You need to be logged in to access this page,Du måste vara inloggad för att få tillgång till den här sidan,
 You need to enable Shopping Cart,Du måste aktivera Varukorgen,
 You will lose records of previously generated invoices. Are you sure you want to restart this subscription?,Du kommer att förlora register över tidigare genererade fakturor. Är du säker på att du vill starta om den här prenumerationen?,
 Your Organization,Din organisation,
@@ -3218,7 +3172,6 @@
 Assigned To,Tilldelats,
 Chat,Chatta,
 Completed By,Fullgjord av,
-County,Grevskap,
 Day of Week,Dag i veckan,
 "Dear System Manager,","Kära Systemansvarig,",
 Default Value,Standardvärde,
@@ -3229,31 +3182,21 @@
 Fieldtype,Fieldtype,
 Help Articles,Hjälpartiklar,
 ID,ID,
-Images,Bilder,
 Import,Import,
 Language,Språk,
 Likes,Gillar,
 Merge with existing,Sammanfoga med befintlig,
-Office,Kontors,
 Orientation,Orientering,
 Parent,Förälder,
-Passive,Passiv,
 Payment Failed,Betalning misslyckades,
-Permanent,Permanent,
 Personal,Personligt,
-Plant,Fastighet,
 Post,Inlägg,
-Postal,Post,
 Postal Code,Postkod,
-Previous,Föregående,
 Provider,provider,
 Read Only,Endast läs,
 Recipient,Mottagare,
 Reviews,recensioner,
 Sender,Avsändare,
-Shop,Shop,
-Subsidiary,Dotterbolag,
-There is some problem with the file url: {0},Det finns vissa problem med filen url: {0},
 There were errors while sending email. Please try again.,Det fanns fel när du skickar e-post. Var god försök igen.,
 Values Changed,värden Ändrad,
 or,eller,
@@ -3280,19 +3223,16 @@
 Quality Feedback Template,Kvalitetsåterkopplingsmall,
 Rules for applying different promotional schemes.,Regler för tillämpning av olika kampanjprogram.,
 Show {0},Visa {0},
-"Special Characters except '-', '#', '.', '/', '{{' and '}}' not allowed in naming series {0}","Specialtecken utom &quot;-&quot;, &quot;#&quot;, &quot;.&quot;, &quot;/&quot;, &quot;{{&quot; Och &quot;}}&quot; är inte tillåtna i namnserien {0}",
 Target Details,Måldetaljer,
 {0} already has a Parent Procedure {1}.,{0} har redan en överordnad procedur {1}.,
 API,API,
 Annual,Årlig,
 Change,Byta,
 Contact Email,Kontakt E-Post,
-Export Type,Exportera typ,
 From Date,Från Datum,
 Group By,Grupp av,
 Invalid URL,Ogiltig URL,
 Landscape,Landskap,
-Last Sync On,Senast synkroniserad,
 Naming Series,Namge Serien,
 No data to export,Inga data att exportera,
 Portrait,Porträtt,
@@ -3302,7 +3242,6 @@
 Show Document,Visa dokument,
 Show Traceback,Visa spårning,
 Video,Video,
-Webhook Secret,Webhook Secret,
 % Of Grand Total,% Av total summan,
 <b>Company</b> is a mandatory filter.,<b>Företaget</b> är ett obligatoriskt filter.,
 <b>From Date</b> is a mandatory filter.,<b>From Date</b> är ett obligatoriskt filter.,
@@ -3358,7 +3297,6 @@
 BOM Comparison Tool,BOM-jämförelseverktyg,
 BOM recursion: {0} cannot be child of {1},BOM-rekursion: {0} kan inte vara barn till {1},
 BOM recursion: {0} cannot be parent or child of {1},BOM-rekursion: {0} kan inte vara förälder eller barn till {1},
-Back to Home,Tillbaka till hemmet,
 Back to Messages,Tillbaka till meddelanden,
 Bank Data mapper doesn't exist,Bankdata-mapper finns inte,
 Bank Details,Bankuppgifter,
@@ -3420,7 +3358,6 @@
 Currency,Valuta,
 Current Status,Nuvarande status,
 Customer PO,Kundpost,
-Customize,Anpassa,
 Daily,Dagligen,
 Date,Datum,
 Date of Birth cannot be greater than Joining Date.,Födelsedatum kan inte vara större än anslutningsdatum.,
@@ -3454,7 +3391,6 @@
 ERPNext could not find any matching payment entry,ERPNext kunde inte hitta någon matchande betalningspost,
 Earliest Age,Tidigaste ålder,
 Edit Details,Redigera detaljer,
-Edit Profile,Redigera profil,
 Either GST Transporter ID or Vehicle No is required if Mode of Transport is Road,Antingen GST-transporter-ID eller fordonsnummer krävs om transportläget är väg,
 Email,E-post,
 Email Campaigns,E-postkampanjer,
@@ -3482,7 +3418,6 @@
 Fetch Items from Warehouse,Hämta objekt från lagret,
 Fetching...,Hämtar ...,
 Field,Fält,
-File Manager,Filhanterare,
 Filters,Filter,
 Finding linked payments,Hitta länkade betalningar,
 Fleet Management,Fleet Management,
@@ -3521,7 +3456,6 @@
 Incorrect Warehouse,Felaktigt lager,
 Invalid Barcode. There is no Item attached to this barcode.,Ogiltig streckkod. Det finns ingen artikel bifogad denna streckkod.,
 Invalid credentials,Ogiltiga uppgifter,
-Invite as User,Bjud in som Användare,
 Issue Priority.,Utgåva prioritet.,
 Issue Type.,Problemtyp.,
 "It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.",Det verkar som om det finns ett problem med serverns randkonfiguration. Vid fel kommer beloppet att återbetalas till ditt konto.,
@@ -3564,7 +3498,6 @@
 New Invoice,Ny faktura,
 New Payment,Ny betalning,
 New release date should be in the future,Nytt släppdatum borde vara i framtiden,
-Newsletter,Nyhetsbrev,
 No Account matched these filters: {},Inget konto matchade dessa filter: {},
 No communication found.,Ingen kommunikation hittades.,
 No correct answer is set for {0},Inget korrekt svar är inställt för {0},
@@ -3640,7 +3573,6 @@
 Please setup a default bank account for company {0},Ställ in ett standardkonto för företag {0},
 Please specify,Vänligen specificera,
 Please specify a {0},Vänligen ange en {0},lead
-Printing,Tryckning,
 Priority,Prioritet,
 Priority has been changed to {0}.,Prioritet har ändrats till {0}.,
 Priority {0} has been repeated.,Prioritet {0} har upprepats.,
@@ -3649,7 +3581,6 @@
 Project,Projekt,
 Provide the academic year and set the starting and ending date.,Ange läsåret och ange start- och slutdatum.,
 Public token is missing for this bank,Offentligt symbol saknas för denna bank,
-Publish,Publicera,
 Publish 1 Item,Publicera en artikel,
 Publish Items,Publicera artiklar,
 Publish More Items,Publicera fler artiklar,
@@ -3677,7 +3608,6 @@
 Reconciled,förenas,
 Recruitment,Rekrytering,
 Red,Röd,
-Refreshing,Uppfriskande,
 Release date must be in the future,Släppdatum måste vara i framtiden,
 Relieving Date must be greater than or equal to Date of Joining,Relief-datum måste vara större än eller lika med Datum för anslutning,
 Rename,Byt namn,
@@ -3721,7 +3651,6 @@
 Search for a payment,Sök efter en betalning,
 Search for anything ...,Sök efter allt ...,
 Search results for,Sökresultat för,
-Select All,Välj Alla,
 Select Difference Account,Välj Skillnadskonto,
 Select a Default Priority.,Välj en standardprioritet.,
 Select a company,Välj ett företag,
@@ -3740,11 +3669,9 @@
 Service Level Agreement has been changed to {0}.,Servicenivåavtalet har ändrats till {0}.,
 Service Level Agreement was reset.,Servicenivåavtalet återställdes.,
 Service Level Agreement with Entity Type {0} and Entity {1} already exists.,Servicenivåavtal med entitetstyp {0} och enhet {1} finns redan.,
-Set,Set,
 Set Meta Tags,Ställ in metataggar,
 Set {0} in company {1},Ställ in {0} i företag {1},
 Setup,Inställning,
-Setup Wizard,Installationsguiden,
 Shift Management,Shift Management,
 Show Future Payments,Visa framtida betalningar,
 Show Linked Delivery Notes,Visa länkade leveransanmärkningar,
@@ -3815,7 +3742,6 @@
 Unreconciled,sonade,
 Unsupported GST Category for E-Way Bill JSON generation,Ostödd GST-kategori för E-Way Bill JSON-generation,
 Update,Uppdatera,
-Update Details,Uppdatera detaljer,
 Update Taxes for Items,Uppdatera skatter för objekt,
 "Upload a bank statement, link or reconcile a bank account","Ladda upp ett kontoutdrag, länk eller förena ett bankkonto",
 Upload a statement,Ladda upp ett uttalande,
@@ -3839,7 +3765,6 @@
 XML Files Processed,XML-filer bearbetade,
 Year,År,
 Yearly,Årlig,
-You,Du,
 You are not allowed to enroll for this course,Du får inte anmäla dig till den här kursen,
 You are not enrolled in program {0},Du är inte registrerad i programmet {0},
 You can Feature upto 8 items.,Du kan ha upp till 8 artiklar.,
@@ -3856,7 +3781,6 @@
 e-Way Bill already exists for this document,e-Way Bill finns redan för det här dokumentet,
 woocommerce - {0},woocommerce - {0},
 {0} Coupon used are {1}. Allowed quantity is exhausted,{0} Kupongen som används är {1}. Tillåten kvantitet är slut,
-{0} Name,{0} Namn,
 {0} Operations: {1},{0} Verksamhet: {1},
 {0} bank transaction(s) created,{0} banktransaktion (er) skapade,
 {0} bank transaction(s) created and {1} errors,{0} banktransaktioner skapade och {1} fel,
@@ -3875,17 +3799,13 @@
 Total Income,Total inkomst,
 Total Income This Year,Total inkomst i år,
 Barcode,Streckkod,
-Bold,Djärv,
-Center,Centrum,
 Clear,Klar,
-Comment,Kommentar,
 Comments,Kommentarer,
 DocType,DocType,
 Download,Ladda ner,
 Left,Vänster,
 Link,Länk,
 New,Ny,
-Not Found,Hittades Inte,
 Print,Skriva ut,
 Reference Name,referens namn,
 Refresh,Uppdatera,
@@ -3908,7 +3828,6 @@
 Email Id,E-post-ID,
 No,Nej,
 Reference Doctype,Referens DocType,
-User Id,Användar ID,
 Yes,Ja,
 Actual ,Faktisk,
 Add to cart,Lägg till i kundvagn,
@@ -4304,7 +4223,6 @@
 e.g Adjustments for:,t.ex. justeringar för:,
 Section Subtotal,Sektion Subtotal,
 Section Footer,Avsnitt Footer,
-Position,Placera,
 Cash Flow Mapping,Kassaflödesmappning,
 Select Maximum Of 1,Välj maximalt 1,
 Is Finance Cost,Är finansieringskostnad,
@@ -4936,7 +4854,6 @@
 Previous Business Day,Tidigare företagsdag,
 Next Business Day,Nästa affärsdags,
 Urgent,Brådskande,
-Crop,Beskära,
 Crop Name,Skörda namn,
 Scientific Name,Vetenskapligt namn,
 "You can define all the tasks which need to carried out for this crop here. The day field is used to mention the day on which the task needs to be carried out, 1 being the 1st day, etc.. ","Du kan definiera alla uppgifter som behöver utföras för denna gröda här. Dagfältet används för att nämna den dag då uppgiften ska utföras, 1 är första dagen, etc.",
@@ -5441,7 +5358,6 @@
 To TIme,Till Time,
 Course End Date,Kurs Slutdatum,
 Course Topic,Kursens ämne,
-Topic,Ämne,
 Topic Name,ämnet Namn,
 Education Settings,Utbildningsinställningar,
 Current Academic Year,Nuvarande akademiska året,
@@ -5516,7 +5432,6 @@
 Check this if the Student is residing at the Institute's Hostel.,Kolla här om studenten är bosatt vid institutets vandrarhem.,
 Walking,Gående,
 Institute's Bus,Institutets buss,
-Public Transport,Kollektivtrafik,
 Self-Driving Vehicle,Självkörande fordon,
 Pick/Drop by Guardian,Pick / Drop av Guardian,
 Enrolled courses,Inskrivna kurser,
@@ -5697,7 +5612,6 @@
 Default Cost Center,Standardkostnadsställe,
 Undeposited Funds Account,Oavsett fondkonto,
 Shopify Log,Shopify Log,
-Request Data,Förfrågningsuppgifter,
 Shopify Settings,Shopify-inställningar,
 status html,status html,
 Enable Shopify,Aktivera Shopify,
@@ -5817,7 +5731,6 @@
 Exercise Instructions,Träningsinstruktioner,
 Exercise Video,Träningsvideo,
 Exercise Steps,Träningssteg,
-Steps,Steg,
 Steps Table,Steg Tabell,
 Exercise Type Step,Övningstyp Steg,
 Max number of visit,Max antal besök,
@@ -6001,7 +5914,6 @@
 Patient Encounter Symptom,Patientens möte Symptom,
 HLC-PMR-.YYYY.-,HLC-PMR-.YYYY.-,
 Attach Medical Record,Bifoga medicinska journaler,
-Reference DocType,Referens DocType,
 Spouse,Make,
 Family,Familj,
 Schedule Details,Schemalägg detaljer,
@@ -6983,16 +6895,8 @@
 HTML / Banner that will show on the top of product list.,HTML / Banner som visar på toppen av produktlista.,
 Set prefix for numbering series on your transactions,Ställ prefix för nummerserie på dina transaktioner,
 Setup Series,Inställnings Serie,
-Select Transaction,Välj transaktion,
-Help HTML,Hjälp HTML,
-Series List for this Transaction,Serie Lista för denna transaktion,
-User must always select,Användaren måste alltid välja,
-Check this if you want to force the user to select a series before saving. There will be no default if you check this.,Markera det här om du vill tvinga användaren att välja en serie innan du sparar. Det blir ingen standard om du kontrollera detta.,
 Update Series,Uppdatera Serie,
 Change the starting / current sequence number of an existing series.,Ändra start / aktuella sekvensnumret av en befintlig serie.,
-Prefix,Prefix,
-This is the number of the last created transaction with this prefix,Detta är numret på den senast skapade transaktionen med detta prefix,
-Update Series Number,Uppdatera Serie Nummer,
 Quotation Lost Reason,Anledning förlorad Offert,
 A third party distributor / dealer / commission agent / affiliate / reseller who sells the companies products for a commission.,En tredjepartsdistributör/återförsäljare/kommissionär/influencer som säljer företagets produkter mot provision.,
 Sales Partner Name,Försäljnings Partner Namn,
@@ -7687,7 +7591,6 @@
 Warehouse wise Item Balance Age and Value,Lagerklassigt objekt Balansålder och värde,
 Work Order Stock Report,Arbetsordningsbeståndsrapport,
 Work Orders in Progress,Arbetsorder pågår,
-Validation Error,Valideringsfel,
 Automatically Process Deferred Accounting Entry,Bearbeta uppskjutna bokföringsposter automatiskt,
 Bank Clearance,Bankklarering,
 Bank Clearance Detail,Bankklareringsdetalj,
@@ -7724,45 +7627,7 @@
 Therapy Plan: ,Terapiplan:,
 Total Counts Targeted: ,Totalt antal inriktningar:,
 Total Counts Completed: ,Totalt antal räknade slutförda:,
-Andaman and Nicobar Islands,Andaman- och Nicobaröarna,
-Andhra Pradesh,Andhra Pradesh,
-Arunachal Pradesh,Arunachal Pradesh,
-Assam,Assam,
-Bihar,Bihar,
-Chandigarh,Chandigarh,
-Chhattisgarh,Chhattisgarh,
-Dadra and Nagar Haveli,Dadra och Nagar Haveli,
-Daman and Diu,Daman och Diu,
-Delhi,delhi,
-Goa,Goa,
-Gujarat,Gujarat,
-Haryana,Haryana,
-Himachal Pradesh,Himachal Pradesh,
-Jammu and Kashmir,Jammu och Kashmir,
-Jharkhand,Jharkhand,
-Karnataka,Karnataka,
-Kerala,Kerala,
-Lakshadweep Islands,Lakshadweep Islands,
-Madhya Pradesh,Madhya Pradesh,
-Maharashtra,Maharashtra,
-Manipur,Manipur,
-Meghalaya,Meghalaya,
-Mizoram,Mizoram,
-Nagaland,Nagaland,
-Odisha,Odisha,
-Other Territory,Annat territorium,
-Pondicherry,Pondicherry,
-Punjab,Punjab,
-Rajasthan,Rajasthan,
-Sikkim,Sikkim,
-Tamil Nadu,Tamil Nadu,
-Telangana,Telangana,
-Tripura,Tripura,
-Uttar Pradesh,Uttar Pradesh,
-Uttarakhand,Uttarakhand,
-West Bengal,Västbengalen,
 Is Mandatory,Är obligatorisk,
-Published on,publicerad på,
 Service Received But Not Billed,Tjänsten mottagen men inte fakturerad,
 Deferred Accounting Settings,Uppskjutna redovisningsinställningar,
 Book Deferred Entries Based On,Boka uppskjutna poster baserat på,
@@ -8035,8 +7900,6 @@
 Worksheet Instructions,Instruktioner för arbetsblad,
 Result Legend Print,Resultat Legend Print,
 Print Position,Utskriftsposition,
-Bottom,Botten,
-Top,Topp,
 Both,Både,
 Result Legend,Resultatförklaring,
 Lab Tests,Labtest,
@@ -8081,12 +7944,10 @@
 Approvers,Omstridda,
 The first Approver in the list will be set as the default Approver.,Den första godkännaren i listan kommer att ställas in som standard godkännare.,
 Shift Request Approver,Skiftbegäran godkännare,
-PAN Number,PAN-nummer,
 Provident Fund Account,Försäkringskassakonto,
 MICR Code,MICR-kod,
 Repay unclaimed amount from salary,Återbetala obefogat belopp från lönen,
 Deduction from salary,Avdrag från lön,
-Expired Leaves,Utgångna löv,
 If this is not checked the loan by default will be considered as a Demand Loan,Om detta inte är markerat kommer lånet som standard att betraktas som ett efterfrågelån,
 This account is used for booking loan repayments from the borrower and also disbursing loans to the borrower,Detta konto används för bokning av återbetalningar av lån från låntagaren och för utbetalning av lån till låntagaren,
 This account is capital account which is used to allocate capital for loan disbursal account ,Det här kontot är ett kapitalkonto som används för att fördela kapital för lånekonto,
@@ -8844,3 +8705,41 @@
 Creating Purchase Order ...,Skapar inköpsorder ...,
 "Select a Supplier from the Default Suppliers of the items below. On selection, a Purchase Order will be made against items belonging to the selected Supplier only.",Välj en leverantör bland standardleverantörerna av artiklarna nedan. Vid val kommer en inköpsorder endast göras mot föremål som tillhör vald leverantör.,
 Row #{}: You must select {} serial numbers for item {}.,Rad nr {}: Du måste välja {} serienummer för artikeln {}.,
+Add Comment,Lägg till kommentar,
+More...,Mer...,
+Notes,Anmärkningar,
+Payment Gateway,Payment Gateway,
+Payment Gateway Name,Betalnings Gateway Name,
+Payments,Betalningar,
+Plan Name,Plannamn,
+Portal,Portal,
+Scan Barcode,Skanna streckkod,
+Some information is missing,Viss information saknas,
+Successful,Framgångsrik,
+Tools,Verktyg,
+Use Sandbox,användning Sandbox,
+Busy,Upptagen,
+Completed By,Fullgjord av,
+Payment Failed,Betalning misslyckades,
+Column {0},Kolumn {0},
+Field Mapping,Fältkartläggning,
+Not Specified,Ej angivet,
+Update Type,Uppdateringstyp,
+Dr,Dr,
+End Time,Sluttid,
+Fetching...,Hämtar ...,
+"It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.",Det verkar som om det finns ett problem med serverns randkonfiguration. Vid fel kommer beloppet att återbetalas till ditt konto.,
+Looks like someone sent you to an incomplete URL. Please ask them to look into it.,Ser ut som någon skickat till en ofullständig webbadress. Vänligen be dem att undersöka saken.,
+Master,Ledar-,
+Pay,Betala,
+You can also copy-paste this link in your browser,Du kan också kopiera och klistra in den här länken i din webbläsare,
+Verified By,Verifierad Av,
+Invalid naming series (. missing) for {0},Ogiltig namngivningsserie (. Saknas) för {0},
+Phone Number,Telefonnummer,
+Account SID,Konto SID,
+Global Defaults,Globala standardinställningar,
+Is Mandatory,Är obligatorisk,
+WhatsApp,WhatsApp,
+Make a call,Ringa ett samtal,
+Approve,Godkänna,
+Reject,Avvisa,
diff --git a/erpnext/translations/sw.csv b/erpnext/translations/sw.csv
index 5f29c3f..ad144f0 100644
--- a/erpnext/translations/sw.csv
+++ b/erpnext/translations/sw.csv
@@ -113,7 +113,6 @@
 Add Items,Ongeza Vitu,
 Add Leads,Ongeza Msaidizi,
 Add Multiple Tasks,Ongeza Kazi nyingi,
-Add Row,Ongeza Mstari,
 Add Sales Partners,Ongeza Washirika wa Mauzo,
 Add Serial No,Ongeza No ya Serial,
 Add Students,Ongeza Wanafunzi,
@@ -211,9 +210,7 @@
 An error occurred during the update process,Hitilafu ilitokea wakati wa mchakato wa sasisho,
 "An item exists with same name ({0}), please change the item group name or rename the item","Kipengee kinacho na jina moja ({0}), tafadhali soma jina la kikundi cha bidhaa au uunda jina tena",
 Analyst,Mchambuzi,
-Analytics,Analytics,
 Annual Billing: {0},Ulipaji wa Mwaka: {0},
-Anonymous,Haijulikani,
 Another Budget record '{0}' already exists against {1} '{2}' and account '{3}' for fiscal year {4},Rekodi nyingine ya Bajeti &#39;{0}&#39; tayari imesimama dhidi ya {1} &#39;{2}&#39; na akaunti &#39;{3}&#39; kwa mwaka wa fedha {4},
 Another Period Closing Entry {0} has been made after {1},Muda mwingine wa Kuingia Ufungashaji {0} umefanywa baada ya {1},
 Another Sales Person {0} exists with the same Employee id,Mtu mwingine wa Mauzo {0} yupo na id idumu ya mfanyakazi,
@@ -283,14 +280,12 @@
 Attendance not submitted for {0} as {1} on leave.,Mahudhurio hayajawasilishwa kwa {0} kama {1} wakati wa kuondoka.,
 Attribute table is mandatory,Toleo la meza ni lazima,
 Attribute {0} selected multiple times in Attributes Table,Ishara {0} imechaguliwa mara nyingi kwenye Jedwali la Attributes,
-Author,Mwandishi,
 Authorized Signatory,Ishara iliyoidhinishwa,
 Auto Material Requests Generated,Maombi ya Nyenzo za Auto yanayotokana,
 Auto Repeat,Rudia tena,
 Auto repeat document updated,Rudia tena hati iliyosasishwa,
 Automotive,Magari,
 Available,Inapatikana,
-Available Leaves,Majani Inapatikana,
 Available Qty,Uchina unaopatikana,
 Available Selling,Inapatikana Kuuza,
 Available for use date is required,Inapatikana kwa tarehe ya matumizi inahitajika,
@@ -340,7 +335,6 @@
 Base URL,URL ya Msingi,
 Based On,Kulingana na,
 Based On Payment Terms,Kulingana na Masharti ya Malipo,
-Basic,Msingi,
 Batch,Kundi,
 Batch Entries,Viingilio vya Batch,
 Batch ID is mandatory,Kitambulisho cha Batch ni lazima,
@@ -361,7 +355,6 @@
 Billable Hours,Masaa yanayoweza kulipwa,
 Billed,Inauzwa,
 Billed Amount,Ulipa kiasi,
-Billing,Ulipaji,
 Billing Address,Mahali deni litakapotumwa,
 Billing Address is same as Shipping Address,Anwani ya Bili ni sawa na Anwani ya Usafirishaji,
 Billing Amount,Kiwango cha kulipia,
@@ -560,7 +553,6 @@
 Consumed Qty,Uchina uliotumiwa,
 Consumer Products,Bidhaa za Watumiaji,
 Contact,Wasiliana,
-Contact Details,Maelezo ya Mawasiliano,
 Contact Us,Wasiliana nasi,
 Content,Maudhui,
 Content Masters,Mabwana wa Yaliyomo,
@@ -715,7 +707,6 @@
 Date of Joining,Tarehe ya kujiunga,
 Date of Joining must be greater than Date of Birth,Tarehe ya kujiunga lazima iwe kubwa zaidi kuliko tarehe ya kuzaliwa,
 Date of Transaction,Tarehe ya Shughuli,
-Datetime,Saa ya tarehe,
 Day,Siku,
 Debit,Debit,
 Debit ({0}),Debit ({0}),
@@ -874,7 +865,6 @@
 Employee cannot report to himself.,Mfanyakazi hawezi kujijulisha mwenyewe.,
 Employee {0} has already applied for {1} between {2} and {3} : ,Mfanyakazi {0} tayari ameomba kwa {1} kati ya {2} na {3}:,
 Employee {0} of grade {1} have no default leave policy,Mfanyakazi {0} wa daraja {1} hawana sera ya kuacha ya kuondoka,
-Enable,Wezesha,
 Enable / disable currencies.,Wezesha / afya ya fedha.,
 Enabled,Imewezeshwa,
 "Enabling 'Use for Shopping Cart', as Shopping Cart is enabled and there should be at least one Tax Rule for Shopping Cart","Kuwezesha &#39;Matumizi kwa Ununuzi wa Ununuzi&#39;, kama Kifaa cha Ununuzi kinawezeshwa na kuna lazima iwe na Kanuni moja ya Ushuru kwa Kundi la Ununuzi",
@@ -905,7 +895,6 @@
 Error: Not a valid id?,Hitilafu: Si id idhini?,
 Estimated Cost,Gharama zilizohesabiwa,
 "Even if there are multiple Pricing Rules with highest priority, then following internal priorities are applied:","Hata kama kuna Kanuni nyingi za bei na kipaumbele cha juu, basi kufuatia vipaumbele vya ndani vinatumika:",
-Event,Tukio,
 Exchange Gain/Loss,Kubadilisha / Kupoteza,
 Exchange Rate Revaluation master.,Kubadilisha Mabadiliko ya Viwango vya kubadilishana.,
 Exchange Rate must be same as {0} {1} ({2}),Kiwango cha Exchange lazima iwe sawa na {0} {1} ({2}),
@@ -1032,7 +1021,6 @@
 From value must be less than to value in row {0},Kutoka thamani lazima iwe chini kuliko ya thamani katika mstari {0},
 From {0} | {1} {2},Kutoka {0} | {1} {2},
 Fulfillment,Utekelezaji,
-Full,Kamili,
 Full Name,Jina kamili,
 Fully Depreciated,Kikamilifu imepungua,
 Furnitures and Fixtures,Furnitures na Marekebisho,
@@ -1133,7 +1121,6 @@
 Hub Sync ID,ID ya Usawazishaji wa Hub,
 Human Resource,Rasilimali watu,
 Human Resources,Rasilimali,
-IFSC Code,IFSC Kanuni,
 IGST Amount,IGST Kiasi,
 IP Address,Anwani ya IP,
 ITC Available (whether in full op part),ITC Inapatikana (iwe katika sehemu kamili),
@@ -1185,7 +1172,6 @@
 Ineligible ITC,ITC isiyoweza kufikiwa,
 Initiated,Ilianzishwa,
 Inpatient Record,Rekodi ya wagonjwa,
-Insert,Ingiza,
 Installation Note,Maelezo ya Ufungaji,
 Installation Note {0} has already been submitted,Maelezo ya Usanidi {0} tayari imewasilishwa,
 Installation date cannot be before delivery date for Item {0},Tarehe ya usanii haiwezi kuwa kabla ya tarehe ya utoaji wa Bidhaa {0},
@@ -1197,7 +1183,6 @@
 Insurance Start date should be less than Insurance End date,Tarehe ya kuanza kwa bima inapaswa kuwa chini ya tarehe ya mwisho ya Bima,
 Integrated Tax,Ushuru uliojumuishwa,
 Inter-State Supplies,Ugavi wa Jimbo la Kimataifa,
-Interests,Maslahi,
 Internet Publishing,Kuchapisha mtandao,
 Intra-State Supplies,Ugavi wa Jimbo la ndani,
 Introduction,Utangulizi,
@@ -1316,7 +1301,6 @@
 Lab testing datetime cannot be before collection datetime,Siku ya tarehe ya kupima Lab haiwezi kuwa kabla ya tarehe ya kukusanya,
 Label,Lebo,
 Laboratory,Maabara,
-Language Name,Jina la Lugha,
 Large,Kubwa,
 Last Communication,Mawasiliano ya Mwisho,
 Last Communication Date,Tarehe ya Mawasiliano ya Mwisho,
@@ -1347,8 +1331,6 @@
 Letter Heads for print templates.,Viongozi wa Barua kwa templates za kuchapisha.,
 Level,Kiwango,
 Liability,Dhima,
-License,Leseni,
-Limit,Punguza,
 Limit Crossed,Upeo umevuka,
 Link to Material Request,Unganisha Ombi la Nyenzo,
 List of all share transactions,Orodha ya shughuli zote za kushiriki,
@@ -1359,7 +1341,6 @@
 Loans (Liabilities),Mikopo (Madeni),
 Loans and Advances (Assets),Mikopo na Maendeleo (Mali),
 Local,Mitaa,
-Log,Ingia,
 Logs for maintaining sms delivery status,Ingia kwa kudumisha hali ya utoaji wa SMS,
 Lost,Potea,
 Lost Reasons,Sababu zilizopotea,
@@ -1445,7 +1426,6 @@
 Medical Department,Idara ya Matibabu,
 Medical Record,Rekodi ya Matibabu,
 Medium,Kati,
-Meeting,Mkutano,
 Member Activity,Shughuli ya Mjumbe,
 Member ID,Kitambulisho cha Mwanachama,
 Member Name,Jina la Mwanachama,
@@ -1495,7 +1475,6 @@
 Multiple Variants,Vipengele vingi,
 Multiple fiscal years exist for the date {0}. Please set company in Fiscal Year,Miaka kadhaa ya fedha ikopo kwa tarehe {0}. Tafadhali weka kampuni katika Mwaka wa Fedha,
 Music,Muziki,
-My Account,Akaunti yangu,
 Name error: {0},Jina la kosa: {0},
 Name of new Account. Note: Please don't create accounts for Customers and Suppliers,Jina la Akaunti mpya. Kumbuka: Tafadhali usijenge akaunti kwa Wateja na Wauzaji,
 Name or Email is mandatory,Jina au barua pepe ni lazima,
@@ -1538,7 +1517,6 @@
 New credit limit is less than current outstanding amount for the customer. Credit limit has to be atleast {0},Mpaka mpya wa mkopo ni chini ya kiasi cha sasa cha sasa kwa wateja. Kizuizi cha mkopo kinapaswa kuwa kikubwa {0},
 New task,Kazi mpya,
 New {0} pricing rules are created,Sheria mpya za bei {0} zimeundwa,
-Newsletters,Majarida,
 Newspaper Publishers,Waandishi wa gazeti,
 Next,Ifuatayo,
 Next Contact By cannot be same as the Lead Email Address,Kuwasiliana Nafuatayo hawezi kuwa sawa na Anwani ya barua pepe,
@@ -1686,7 +1664,6 @@
 Other,Nyingine,
 Other Reports,Taarifa nyingine,
 "Other outward supplies(Nil rated,Exempted)","Vifaa vingine vya nje (Nilikadiriwa, Imesamehewa)",
-Others,Wengine,
 Out Qty,Nje ya Uchina,
 Out Value,Thamani ya nje,
 Out of Order,Nje ya Utaratibu,
@@ -1726,7 +1703,6 @@
 Party Type and Party is mandatory for {0} account,Aina ya Chama na Chama ni lazima kwa akaunti ya {0},
 Party Type is mandatory,Aina ya Chama ni lazima,
 Party is mandatory,Chama ni lazima,
-Password,Nenosiri,
 Past Due Date,Tarehe ya Uliopita,
 Patient,Mgonjwa,
 Patient Appointment,Uteuzi wa Mgonjwa,
@@ -1784,7 +1760,6 @@
 Pharmaceutical,Madawa,
 Pharmaceuticals,Madawa,
 Physician,Daktari,
-Pincode,Pincode,
 Place Of Supply (State/UT),Mahali pa Ugavi (Jimbo / UT),
 Place Order,Agiza,
 Plan Name,Mpango Jina,
@@ -1896,7 +1871,6 @@
 Please select date,Tafadhali chagua tarehe,
 Please select item code,Tafadhali chagua msimbo wa kipengee,
 Please select month and year,Tafadhali chagua mwezi na mwaka,
-Please select prefix first,Tafadhali chagua kiambatisho kwanza,
 Please select the Company,Tafadhali chagua Kampuni,
 Please select the Multiple Tier Program type for more than one collection rules.,Tafadhali chagua aina ya Programu ya Mipango ya Multiple kwa sheria zaidi ya moja ya ukusanyaji.,
 Please select the assessment group other than 'All Assessment Groups',Tafadhali chagua kikundi cha tathmini badala ya &#39;Makundi Yote ya Tathmini&#39;,
@@ -1913,7 +1887,6 @@
 Please set Company filter blank if Group By is 'Company',Tafadhali weka Chujio cha Kampuni kikiwa tupu ikiwa Kundi Na &#39;Kampuni&#39;,
 Please set Default Payroll Payable Account in Company {0},Tafadhali weka Akaunti ya Kulipa ya Payroll ya Kipawa katika Kampuni {0},
 Please set Depreciation related Accounts in Asset Category {0} or Company {1},Tafadhali weka Akaunti ya Depreciation kuhusiana na Kundi la Malipo {0} au Kampuni {1},
-Please set Email Address,Tafadhali weka anwani ya barua pepe,
 Please set GST Accounts in GST Settings,Tafadhali weka Akaunti za GST katika Mipangilio ya GST,
 Please set Hotel Room Rate on {},Tafadhali weka Kiwango cha Chumba cha Hoteli kwenye {},
 Please set Number of Depreciations Booked,Tafadhali weka Idadi ya Dhamana iliyopangwa,
@@ -1936,7 +1909,6 @@
 Please set the Email ID for the Student to send the Payment Request,Tafadhali weka Kitambulisho cha Barua pepe kwa Mwanafunzi ili kutuma Ombi la Malipo,
 Please set the Item Code first,Tafadhali weka Kanuni ya Kwanza,
 Please set the Payment Schedule,Tafadhali weka Ratiba ya Malipo,
-Please set the series to be used.,Tafadhali weka mfululizo kutumiwa.,
 Please set {0} for address {1},Tafadhali weka {0} kwa anuani {1},
 Please setup Students under Student Groups,Tafadhali kuanzisha Wanafunzi chini ya Vikundi vya Wanafunzi,
 Please specify Company,Tafadhali taja Kampuni,
@@ -1953,7 +1925,6 @@
 Point-of-Sale,Uhakika wa Kuuza,
 Point-of-Sale Profile,Ushauri wa Maandishi ya Uhakika,
 Portal,Portal,
-Portal Settings,Mipangilio ya Portal,
 Possible Supplier,Wafanyabiashara wawezekana,
 Postal Expenses,Malipo ya posta,
 Posting Date,Tarehe ya Kuchapisha,
@@ -2152,12 +2123,10 @@
 Reference No is mandatory if you entered Reference Date,Hakuna kumbukumbu ni lazima ikiwa umeingia Tarehe ya Kumbukumbu,
 Reference No.,Nambari ya kumbukumbu.,
 Reference Number,Nambari ya Kumbukumbu,
-Reference Owner,Mmiliki wa Kumbukumbu,
 Reference Type,Aina ya Kumbukumbu,
 "Reference: {0}, Item Code: {1} and Customer: {2}","Rejea: {0}, Msimbo wa Item: {1} na Wateja: {2}",
 References,Marejeleo,
 Refresh Token,Rejea Kitambulisho,
-Region,Mkoa,
 Register,Jisajili,
 Rejected,Imekataliwa,
 Related,Kuhusiana,
@@ -2179,7 +2148,6 @@
 Replace BOM and update latest price in all BOMs,Badilisha BOM na usasishe bei ya hivi karibuni katika BOM zote,
 Replied,Alijibu,
 Report,Ripoti,
-Report Builder,Mjenzi wa Ripoti,
 Report Type,Aina ya Ripoti,
 Report Type is mandatory,Aina ya Ripoti ni lazima,
 Reports,Ripoti,
@@ -2355,13 +2323,11 @@
 Same Company is entered more than once,Kampuni sawa imeingia zaidi ya mara moja,
 Same item cannot be entered multiple times.,Kitu kimoja hawezi kuingizwa mara nyingi.,
 Same supplier has been entered multiple times,Muuzaji sawa ameingizwa mara nyingi,
-Sample,Mfano,
 Sample Collection,Mkusanyiko wa Mfano,
 Sample quantity {0} cannot be more than received quantity {1},Mfano wa wingi {0} hauwezi kuwa zaidi ya kupokea kiasi {1},
 Sanctioned,Imeteuliwa,
 Sand,Mchanga,
 Saturday,Jumamosi,
-Saved,Imehifadhiwa,
 Saving {0},Inahifadhi {0},
 Scan Barcode,Scan Barcode,
 Schedule,Ratiba,
@@ -2463,7 +2429,6 @@
 Series Updated,Mfululizo umehifadhiwa,
 Series Updated Successfully,Mfululizo umehifadhiwa kwa ufanisi,
 Series is mandatory,Mfululizo ni lazima,
-Series {0} already used in {1},Mfululizo {0} tayari kutumika katika {1},
 Service,Huduma,
 Service Level Agreement,Mkataba wa kiwango cha huduma,
 Service Level Agreement.,Mkataba wa kiwango cha huduma.,
@@ -2479,7 +2444,6 @@
 Set Tax Rule for shopping cart,Weka Kanuni ya Ushuru kwa gari la ununuzi,
 Set as Closed,Weka kama Imefungwa,
 Set as Completed,Weka kama Imekamilika,
-Set as Default,Weka kama Msingi,
 Set as Lost,Weka Kama Imepotea,
 Set as Open,Weka kama Fungua,
 Set default inventory account for perpetual inventory,Weka akaunti ya hesabu ya msingi kwa hesabu ya daima,
@@ -2511,7 +2475,6 @@
 Shareholder,Mbia,
 Ship To State,Ship To State,
 Shipments,Upelekaji,
-Shipping,Utoaji,
 Shipping Address,Anwani ya kusafirishia,
 "Shipping Address does not have country, which is required for this Shipping Rule","Anwani ya Mafikisho haina nchi, ambayo inahitajika kwa Utawala huu wa Usafirishaji",
 Shipping rule only applicable for Buying,Sheria ya usafirishaji inatumika tu kwa Ununuzi,
@@ -2564,7 +2527,6 @@
 Split Batch,Piga Kundi,
 Split Issue,Fungua Suala,
 Sports,Michezo,
-Standard,Kiwango,
 Standard Buying,Ununuzi wa kawaida,
 Standard Selling,Uuzaji wa kawaida,
 Standard contract terms for Sales or Purchase.,Kanuni za mkataba wa Standard kwa Mauzo au Ununuzi.,
@@ -2731,7 +2693,6 @@
 Terms and Conditions,Sheria na Masharti,
 Terms and Conditions Template,Masharti na Masharti Kigezo,
 Territory,Nchi,
-Test,Mtihani,
 Thank you for your business!,Asante kwa biashara yako!,
 The 'From Package No.' field must neither be empty nor it's value less than 1.,Ya &#39;Kutoka Pakiti&#39; shamba haipaswi kuwa tupu wala ni thamani chini ya 1.,
 The Brand,Brand,
@@ -2848,7 +2809,6 @@
 Total (Without Tax),Jumla (bila ya Kodi),
 Total Achieved,Jumla imefikia,
 Total Actual,Jumla halisi,
-Total Allocated Leaves,Jumla ya Majani yaliyowekwa,
 Total Amount,Jumla,
 Total Amount Credited,Jumla ya Kizuizi,
 Total Applicable Charges in Purchase Receipt Items table must be same as Total Taxes and Charges,Malipo Yote ya Kuhitajika katika Jedwali la Vipokezi vya Ununuzi lazima lifanane na Jumla ya Kodi na Malipo,
@@ -2892,7 +2852,6 @@
 Total(Amt),Jumla (Amt),
 Total(Qty),Jumla (Uchina),
 Traceability,Ufuatiliaji,
-Traceback,Traceback,
 Track Leads by Lead Source.,Orodha inayoongozwa na Chanzo cha Kiongozi.,
 Transaction,Shughuli,
 Transaction Date,Tarehe ya Ushirikiano,
@@ -2930,7 +2889,6 @@
 UOM Conversion factor is required in row {0},Kipengele cha kubadilisha UOM kinahitajika katika mstari {0},
 UOM coversion factor required for UOM: {0} in Item: {1},Kipengele cha ufunuo wa UOM kinahitajika kwa UOM: {0} katika Item: {1},
 URL,URL,
-Unable to find DocType {0},Haikuweza kupata DocType {0},
 Unable to find exchange rate for {0} to {1} for key date {2}. Please create a Currency Exchange record manually,Haiwezi kupata kiwango cha ubadilishaji kwa {0} kwa {1} kwa tarehe muhimu {2}. Tafadhali tengeneza rekodi ya Fedha ya Fedha kwa mkono,
 Unable to find score starting at {0}. You need to have standing scores covering 0 to 100,Haikuweza kupata alama kuanzia {0}. Unahitaji kuwa na alama zilizosimama zinazofunika 0 hadi 100,
 Unable to find variable: ,Haiwezi kupata variable:,
@@ -2960,7 +2918,6 @@
 Upload your letter head and logo. (you can edit them later).,Pakia kichwa chako na alama. (unaweza kuwahariri baadaye).,
 Upper Income,Mapato ya Juu,
 Use Sandbox,Tumia Sandbox,
-Used Leaves,Majani yaliyotumika,
 User,Mtumiaji,
 User ID,Kitambulisho cha mtumiaji,
 User ID not set for Employee {0},Kitambulisho cha mtumiaji hakiwekwa kwa Waajiriwa {0},
@@ -3051,7 +3008,6 @@
 Website Settings,Mipangilio ya tovuti,
 Wednesday,Jumatano,
 Week,Wiki,
-Weekdays,Siku za wiki,
 Weekly,Kila wiki,
 "Weight is mentioned,\nPlease mention ""Weight UOM"" too","Uzito umetajwa, \ nSafadhali kutaja &quot;Uzito UOM&quot; pia",
 Welcome email sent,Karibu barua pepe imetumwa,
@@ -3072,7 +3028,6 @@
 Work Order {0} must be submitted,Kazi ya Kazi {0} lazima iwasilishwa,
 Work Orders Created: {0},Amri ya Kazi Iliundwa: {0},
 Work-in-Progress Warehouse is required before Submit,Ghala ya Maendeleo ya Kazi inahitajika kabla ya Wasilisha,
-Workflow,Kazi ya kazi,
 Working,Kufanya kazi,
 Working Hours,Saa za kazi,
 Workstation,Kazi ya kazi,
@@ -3102,7 +3057,6 @@
 You need to be a user other than Administrator with System Manager and Item Manager roles to register on Marketplace.,Unahitaji kuwa mtumiaji mwingine isipokuwa Msimamizi na Meneja wa Mfumo na Majukumu ya Meneja wa Item kujiandikisha kwenye Soko.,
 You need to be a user with System Manager and Item Manager roles to add users to Marketplace.,Unahitaji kuwa mtumiaji na Meneja wa Mfumo na majukumu ya Meneja wa Bidhaa ili kuongeza watumiaji kwenye Marketplace.,
 You need to be a user with System Manager and Item Manager roles to register on Marketplace.,Unahitaji kuwa mtumiaji na Meneja wa Mfumo na majukumu ya Meneja wa Item kujiandikisha kwenye Soko.,
-You need to be logged in to access this page,Unahitaji kuingia ili kufikia ukurasa huu,
 You need to enable Shopping Cart,Unahitaji kuwezesha Kifaa cha Ununuzi,
 You will lose records of previously generated invoices. Are you sure you want to restart this subscription?,Utapoteza rekodi za ankara zinazozalishwa hapo awali. Una uhakika unataka kuanzisha upya usajili huu?,
 Your Organization,Shirika lako,
@@ -3218,7 +3172,6 @@
 Assigned To,Iliyopewa,
 Chat,Ongea,
 Completed By,Imekamilishwa na,
-County,Kata,
 Day of Week,Siku ya Juma,
 "Dear System Manager,","Mpendwa Meneja wa Mfumo,",
 Default Value,Thamani ya Hitilafu,
@@ -3229,31 +3182,21 @@
 Fieldtype,Fieldtype,
 Help Articles,Msaada Makala,
 ID,Kitambulisho,
-Images,Picha,
 Import,Ingiza,
 Language,Lugha,
 Likes,Anapenda,
 Merge with existing,Unganisha na zilizopo,
-Office,Ofisi,
 Orientation,Mwelekeo,
 Parent,Mzazi,
-Passive,Passive,
 Payment Failed,Malipo Imeshindwa,
-Permanent,Kudumu,
 Personal,Binafsi,
-Plant,Mmea,
 Post,Chapisho,
-Postal,Posta,
 Postal Code,Posta,
-Previous,Kabla,
 Provider,Mtoa huduma,
 Read Only,Soma tu,
 Recipient,Mpokeaji,
 Reviews,Maoni,
 Sender,Sender,
-Shop,Duka,
-Subsidiary,Msaidizi,
-There is some problem with the file url: {0},Kuna tatizo fulani na url ya faili: {0},
 There were errors while sending email. Please try again.,Kulikuwa na makosa wakati wa kutuma barua pepe. Tafadhali jaribu tena.,
 Values Changed,Maadili yalibadilishwa,
 or,au,
@@ -3280,19 +3223,16 @@
 Quality Feedback Template,Kiolezo cha Maoni ya Ubora,
 Rules for applying different promotional schemes.,Sheria za kutumia miradi tofauti ya uendelezaji.,
 Show {0},Onyesha {0},
-"Special Characters except '-', '#', '.', '/', '{{' and '}}' not allowed in naming series {0}","Tabia maalum isipokuwa &quot;-&quot;, &quot;#&quot;, &quot;.&quot;, &quot;/&quot;, &quot;{{&quot; Na &quot;}}&quot; hairuhusiwi katika kutaja mfululizo {0}",
 Target Details,Maelezo ya Lengo,
 {0} already has a Parent Procedure {1}.,{0} tayari ina Utaratibu wa Mzazi {1}.,
 API,API,
 Annual,Kila mwaka,
 Change,Badilisha,
 Contact Email,Mawasiliano ya barua pepe,
-Export Type,Aina ya Nje,
 From Date,Kutoka Tarehe,
 Group By,Kikundi Na,
 Invalid URL,URL batili,
 Landscape,Mazingira,
-Last Sync On,Mwisho Sync On,
 Naming Series,Mfululizo wa majina,
 No data to export,Hakuna data ya kuuza nje,
 Portrait,Picha,
@@ -3302,7 +3242,6 @@
 Show Document,Onyesha Hati,
 Show Traceback,Onyesha Traceback,
 Video,Video,
-Webhook Secret,Siri ya Webhook,
 % Of Grand Total,Jumla ya Jumla,
 <b>Company</b> is a mandatory filter.,<b>Kampuni</b> ni kichujio cha lazima.,
 <b>From Date</b> is a mandatory filter.,<b>Kuanzia Tarehe</b> ni kichujio cha lazima.,
@@ -3358,7 +3297,6 @@
 BOM Comparison Tool,Chombo cha kulinganisha cha BOM,
 BOM recursion: {0} cannot be child of {1},Kurudiwa kwa BOM: {0} haiwezi kuwa mtoto wa {1},
 BOM recursion: {0} cannot be parent or child of {1},Kurudiwa kwa BOM: {0} haiwezi kuwa mzazi au mtoto wa {1},
-Back to Home,Rudi Nyumbani,
 Back to Messages,Rudi kwa Ujumbe,
 Bank Data mapper doesn't exist,Programu ya data ya Benki haipo,
 Bank Details,Taarifa za benki,
@@ -3420,7 +3358,6 @@
 Currency,Fedha,
 Current Status,Hali ya Sasa,
 Customer PO,Mteja PO,
-Customize,Customize,
 Daily,Kila siku,
 Date,Tarehe,
 Date of Birth cannot be greater than Joining Date.,Tarehe ya kuzaliwa haiwezi kuwa kubwa kuliko Tarehe ya Kujiunga.,
@@ -3454,7 +3391,6 @@
 ERPNext could not find any matching payment entry,ERPNext haikuweza kupata kiingilio chochote cha malipo kinacholingana,
 Earliest Age,Umri wa mapema,
 Edit Details,Maelezo ya Hariri,
-Edit Profile,Badilisha Profaili,
 Either GST Transporter ID or Vehicle No is required if Mode of Transport is Road,Kitambulisho cha Transporter ya GST au gari La Hakuna inahitajika ikiwa Njia ya Usafiri ni Barabara,
 Email,Barua pepe,
 Email Campaigns,Kampeni za barua pepe,
@@ -3482,7 +3418,6 @@
 Fetch Items from Warehouse,Chukua Vitu kutoka Ghala,
 Fetching...,Inachukua ...,
 Field,Shamba,
-File Manager,Meneja wa faili,
 Filters,Filters,
 Finding linked payments,Kupata malipo yaliyounganishwa,
 Fleet Management,Usimamizi wa Fleet,
@@ -3521,7 +3456,6 @@
 Incorrect Warehouse,Ghala isiyo sahihi,
 Invalid Barcode. There is no Item attached to this barcode.,Msimbo batili. Hakuna Kitu kilichojumuishwa kwenye barcode hii.,
 Invalid credentials,Uthibitishaji batili,
-Invite as User,Paribisha kama Mtumiaji,
 Issue Priority.,Kipaumbele cha Hoja.,
 Issue Type.,Aina ya Toleo.,
 "It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","Inaonekana kwamba kuna suala la usanidi wa stripe ya seva. Katika hali ya kushindwa, kiasi hicho kitarejeshwa kwa akaunti yako.",
@@ -3564,7 +3498,6 @@
 New Invoice,Ankara mpya,
 New Payment,Malipo Mpya,
 New release date should be in the future,Tarehe mpya ya kutolewa inapaswa kuwa katika siku zijazo,
-Newsletter,Jarida,
 No Account matched these filters: {},Hakuna Akaunti iliyolingana na vichungi hivi: {},
 No communication found.,Hakuna mawasiliano yaliyopatikana.,
 No correct answer is set for {0},Hakuna jibu sahihi ambalo limewekwa kwa {0},
@@ -3640,7 +3573,6 @@
 Please setup a default bank account for company {0},Tafadhali sasisha akaunti ya benki ya msingi ya kampuni {0},
 Please specify,Tafadhali fafanua,
 Please specify a {0},Tafadhali taja {0},lead
-Printing,Uchapishaji,
 Priority,Kipaumbele,
 Priority has been changed to {0}.,Kipaumbele kimebadilishwa kuwa {0}.,
 Priority {0} has been repeated.,Kipaumbele {0} kimerudiwa.,
@@ -3649,7 +3581,6 @@
 Project,Mradi,
 Provide the academic year and set the starting and ending date.,Toa mwaka wa masomo na weka tarehe ya kuanza na kumalizia.,
 Public token is missing for this bank,Baina ya umma haipo kwenye benki hii,
-Publish,Kuchapisha,
 Publish 1 Item,Chapisha Bidhaa 1,
 Publish Items,Chapisha Vitu,
 Publish More Items,Chapisha Vitu Zaidi,
@@ -3677,7 +3608,6 @@
 Reconciled,Kupatanishwa,
 Recruitment,Uajiri,
 Red,Nyekundu,
-Refreshing,Inafariji,
 Release date must be in the future,Tarehe ya kutolewa lazima iwe katika siku zijazo,
 Relieving Date must be greater than or equal to Date of Joining,Tarehe ya Kuachana lazima iwe kubwa kuliko au sawa na Tarehe ya Kujiunga,
 Rename,Badilisha tena,
@@ -3721,7 +3651,6 @@
 Search for a payment,Tafuta malipo,
 Search for anything ...,Tafuta chochote ...,
 Search results for,Matokeo ya Utafutaji,
-Select All,Chagua Wote,
 Select Difference Account,Chagua Akaunti ya Tofauti,
 Select a Default Priority.,Chagua Kipaumbele Cha msingi.,
 Select a company,Chagua kampuni,
@@ -3740,11 +3669,9 @@
 Service Level Agreement has been changed to {0}.,Mkataba wa Kiwango cha Huduma umebadilishwa kuwa {0}.,
 Service Level Agreement was reset.,Mkataba wa Kiwango cha Huduma uliwekwa tena.,
 Service Level Agreement with Entity Type {0} and Entity {1} already exists.,Mkataba wa Kiwango cha Huduma na Aina ya Taasisi {0} na Taasisi {1} tayari ipo.,
-Set,Weka,
 Set Meta Tags,Weka Tepe za Meta,
 Set {0} in company {1},Weka {0} katika kampuni {1},
 Setup,Kuweka,
-Setup Wizard,Mwekaji wa Kuweka,
 Shift Management,Usimamizi wa Shift,
 Show Future Payments,Onyesha Malipo ya Baadaye,
 Show Linked Delivery Notes,Onyesha Vidokezo vya Utoaji vilivyounganishwa,
@@ -3815,7 +3742,6 @@
 Unreconciled,Haijaridhishwa,
 Unsupported GST Category for E-Way Bill JSON generation,Jamii ya GST isiyosaidiwa kwa kizazi cha E-Way Bill JSON,
 Update,Sasisha,
-Update Details,Sasisha Maelezo,
 Update Taxes for Items,Sasisha Ushuru kwa Vitu,
 "Upload a bank statement, link or reconcile a bank account","Sasisha taarifa ya benki, unganisha au upatanishe akaunti ya benki",
 Upload a statement,Sasisha taarifa,
@@ -3839,7 +3765,6 @@
 XML Files Processed,Faili za XML Zinasindika,
 Year,Mwaka,
 Yearly,Kila mwaka,
-You,Wewe,
 You are not allowed to enroll for this course,Hairuhusiwi kujiandikisha kwa kozi hii,
 You are not enrolled in program {0},Haujaandikishwa katika mpango {0},
 You can Feature upto 8 items.,Unaweza Kuangazia vitu 8.,
@@ -3856,7 +3781,6 @@
 e-Way Bill already exists for this document,Mswada wa e-Way tayari uko kwa hati hii,
 woocommerce - {0},woocommerce - {0},
 {0} Coupon used are {1}. Allowed quantity is exhausted,{0} Coupon inayotumiwa ni {1}. Wingi ulioruhusiwa umechoka,
-{0} Name,{0} Jina,
 {0} Operations: {1},{0} Operesheni: {1},
 {0} bank transaction(s) created,{0} manunuzi ya benki yameundwa,
 {0} bank transaction(s) created and {1} errors,{0} shughuli za benki iliyoundwa na makosa ya {1},
@@ -3875,17 +3799,13 @@
 Total Income,Mapato Jumla,
 Total Income This Year,Mapato Jumla ya Mwaka huu,
 Barcode,Barcode,
-Bold,Jasiri,
-Center,Kituo,
 Clear,Wazi,
-Comment,Maoni,
 Comments,Maoni,
 DocType,DocType,
 Download,Pakua,
 Left,Kushoto,
 Link,Kiunga,
 New,Mpya,
-Not Found,Haipatikani,
 Print,Chapisha,
 Reference Name,Jina la Marejeleo,
 Refresh,Furahisha,
@@ -3908,7 +3828,6 @@
 Email Id,Kitambulisho cha Barua pepe,
 No,Hapana,
 Reference Doctype,Rejea DocType,
-User Id,Kitambulisho cha Mtumiaji,
 Yes,Ndiyo,
 Actual ,Kweli,
 Add to cart,Ongeza kwenye Cart,
@@ -4304,7 +4223,6 @@
 e.g Adjustments for:,kwa mfano Marekebisho kwa:,
 Section Subtotal,Subtotal Sehemu,
 Section Footer,Sehemu ya Sehemu,
-Position,Nafasi,
 Cash Flow Mapping,Mapato ya Mapato ya Fedha,
 Select Maximum Of 1,Chagua Upeo wa 1,
 Is Finance Cost,Ni Gharama za Fedha,
@@ -4936,7 +4854,6 @@
 Previous Business Day,Siku ya Biashara ya awali,
 Next Business Day,Siku inayofuata ya Biashara,
 Urgent,Haraka,
-Crop,Mazao,
 Crop Name,Jina la Mazao,
 Scientific Name,Jina la Sayansi,
 "You can define all the tasks which need to carried out for this crop here. The day field is used to mention the day on which the task needs to be carried out, 1 being the 1st day, etc.. ","Unaweza kufafanua kazi zote zinazohitajika kwa mazao haya hapa. Shamba la siku linatumiwa kutaja siku ambayo kazi inahitaji kufanywa, 1 kuwa siku ya 1, nk.",
@@ -5441,7 +5358,6 @@
 To TIme,Kwa Muda,
 Course End Date,Tarehe ya Mwisho wa Kozi,
 Course Topic,Mada ya kozi,
-Topic,Mada,
 Topic Name,Jina la Mada,
 Education Settings,Mipangilio ya Elimu,
 Current Academic Year,Mwaka wa Mafunzo ya Sasa,
@@ -5516,7 +5432,6 @@
 Check this if the Student is residing at the Institute's Hostel.,Angalia hii ikiwa Mwanafunzi anaishi katika Hosteli ya Taasisi.,
 Walking,Kutembea,
 Institute's Bus,Basi ya Taasisi,
-Public Transport,Usafiri wa Umma,
 Self-Driving Vehicle,Gari ya kujitegemea,
 Pick/Drop by Guardian,Chagua / Kuacha na Mlezi,
 Enrolled courses,Kozi iliyosajiliwa,
@@ -5697,7 +5612,6 @@
 Default Cost Center,Kituo cha Ghali cha Default,
 Undeposited Funds Account,Akaunti ya Mfuko usiopuuzwa,
 Shopify Log,Weka Ingia,
-Request Data,Omba Data,
 Shopify Settings,Weka Mipangilio,
 status html,hali html,
 Enable Shopify,Wezesha Shopify,
@@ -5817,7 +5731,6 @@
 Exercise Instructions,Zoezi Maagizo,
 Exercise Video,Zoezi Video,
 Exercise Steps,Zoezi Hatua,
-Steps,Hatua,
 Steps Table,Jedwali la Hatua,
 Exercise Type Step,Aina ya Zoezi Hatua,
 Max number of visit,Idadi kubwa ya ziara,
@@ -6001,7 +5914,6 @@
 Patient Encounter Symptom,Dalili ya Kukutana na Wagonjwa,
 HLC-PMR-.YYYY.-,HLC-PMR -YYYY.-,
 Attach Medical Record,Ambatisha Rekodi ya Matibabu,
-Reference DocType,Aina ya Hati ya Marejeo,
 Spouse,Mwenzi wako,
 Family,Familia,
 Schedule Details,Maelezo ya Ratiba,
@@ -6983,16 +6895,8 @@
 HTML / Banner that will show on the top of product list.,HTML / Banner ambayo itaonyesha juu ya orodha ya bidhaa.,
 Set prefix for numbering series on your transactions,Weka kiambishi kwa mfululizo wa nambari kwenye shughuli zako,
 Setup Series,Mipangilio ya kuanzisha,
-Select Transaction,Chagua Shughuli,
-Help HTML,Msaada HTML,
-Series List for this Transaction,Orodha ya Mfululizo kwa Shughuli hii,
-User must always select,Mtumiaji lazima ague daima,
-Check this if you want to force the user to select a series before saving. There will be no default if you check this.,Angalia hii ikiwa unataka kulazimisha mtumiaji kuchagua mfululizo kabla ya kuokoa. Hutakuwa na default ikiwa utaangalia hii.,
 Update Series,Sasisha Mfululizo,
 Change the starting / current sequence number of an existing series.,Badilisha idadi ya mwanzo / ya sasa ya mlolongo wa mfululizo uliopo.,
-Prefix,Kiambatisho,
-This is the number of the last created transaction with this prefix,Huu ndio idadi ya shughuli za mwisho zilizoundwa na kiambishi hiki,
-Update Series Number,Sasisha Nambari ya Mfululizo,
 Quotation Lost Reason,Sababu iliyopoteza Nukuu,
 A third party distributor / dealer / commission agent / affiliate / reseller who sells the companies products for a commission.,Washirika wa tatu / muuzaji / wakala wa tume / mshirika / wauzaji ambaye anauza bidhaa za kampuni kwa tume.,
 Sales Partner Name,Jina la Mshirika wa Mauzo,
@@ -7687,7 +7591,6 @@
 Warehouse wise Item Balance Age and Value,Ghala la hekima jambo la kupima Umri na Thamani,
 Work Order Stock Report,Ripoti ya Kazi ya Kazi ya Kazi,
 Work Orders in Progress,Kazi ya Kazi katika Maendeleo,
-Validation Error,Hitilafu ya uthibitishaji,
 Automatically Process Deferred Accounting Entry,Tengeneza kiotomatiki Uingizaji wa Uhasibu Ulioahirishwa,
 Bank Clearance,Usafishaji wa Benki,
 Bank Clearance Detail,Maelezo ya Usafishaji wa Benki,
@@ -7724,45 +7627,7 @@
 Therapy Plan: ,Mpango wa Tiba:,
 Total Counts Targeted: ,Jumla ya Hesabu Zilizolengwa:,
 Total Counts Completed: ,Hesabu Zilizokamilika:,
-Andaman and Nicobar Islands,Visiwa vya Andaman na Nicobar,
-Andhra Pradesh,Andhra Pradesh,
-Arunachal Pradesh,Arunachal Pradesh,
-Assam,Assam,
-Bihar,Bihar,
-Chandigarh,Chandigarh,
-Chhattisgarh,Chhattisgarh,
-Dadra and Nagar Haveli,Dadra na Nagar Haveli,
-Daman and Diu,Daman na Diu,
-Delhi,Delhi,
-Goa,Goa,
-Gujarat,Gujarat,
-Haryana,Haryana,
-Himachal Pradesh,Himachal Pradesh,
-Jammu and Kashmir,Jammu na Kashmir,
-Jharkhand,Jharkhand,
-Karnataka,Karnataka,
-Kerala,Kerala,
-Lakshadweep Islands,Visiwa vya Lakshadweep,
-Madhya Pradesh,Madhya Pradesh,
-Maharashtra,Maharashtra,
-Manipur,Manipur,
-Meghalaya,Meghalaya,
-Mizoram,Mizoramu,
-Nagaland,Nagaland,
-Odisha,Odisha,
-Other Territory,Wilaya nyingine,
-Pondicherry,Pondicherry,
-Punjab,Punjab,
-Rajasthan,Rajasthan,
-Sikkim,Sikkim,
-Tamil Nadu,Kitamil Nadu,
-Telangana,Telangana,
-Tripura,Tripura,
-Uttar Pradesh,Uttar Pradesh,
-Uttarakhand,Uttarakhand,
-West Bengal,Bengal Magharibi,
 Is Mandatory,Ni lazima,
-Published on,Imechapishwa mnamo,
 Service Received But Not Billed,Huduma Imepokelewa Lakini Haitozwa,
 Deferred Accounting Settings,Mipangilio ya Uhasibu iliyoahirishwa,
 Book Deferred Entries Based On,Vitambulisho Vilivyoahirishwa kwa Kitabu kulingana na,
@@ -8035,8 +7900,6 @@
 Worksheet Instructions,Maagizo ya Karatasi ya Kazi,
 Result Legend Print,Matokeo Magazeti ya Hadithi,
 Print Position,Nafasi ya Chapisha,
-Bottom,Chini,
-Top,Juu,
 Both,Wote wawili,
 Result Legend,Hadithi ya Matokeo,
 Lab Tests,Uchunguzi wa Maabara,
@@ -8081,12 +7944,10 @@
 Approvers,Waunga mkono,
 The first Approver in the list will be set as the default Approver.,Mtangazaji wa kwanza kwenye orodha atawekwa kama Mtoaji Mbadala.,
 Shift Request Approver,Ombi la Shift Liidhinishe,
-PAN Number,Nambari ya PAN,
 Provident Fund Account,Akaunti ya Mfuko wa Utoaji,
 MICR Code,Nambari ya MICR,
 Repay unclaimed amount from salary,Lipa kiasi ambacho hakijadai kutoka kwa mshahara,
 Deduction from salary,Utoaji kutoka kwa mshahara,
-Expired Leaves,Majani yaliyomalizika,
 If this is not checked the loan by default will be considered as a Demand Loan,Ikiwa hii haijakaguliwa mkopo kwa chaguo-msingi utazingatiwa kama Mkopo wa Mahitaji,
 This account is used for booking loan repayments from the borrower and also disbursing loans to the borrower,Akaunti hii inatumika kwa uhifadhi wa mikopo kutoka kwa akopaye na pia kutoa mikopo kwa akopaye,
 This account is capital account which is used to allocate capital for loan disbursal account ,Akaunti hii ni akaunti kuu ambayo hutumiwa kutenga mtaji kwa akaunti ya utoaji wa mkopo,
@@ -8844,3 +8705,41 @@
 Creating Purchase Order ...,Inaunda Agizo la Ununuzi ...,
 "Select a Supplier from the Default Suppliers of the items below. On selection, a Purchase Order will be made against items belonging to the selected Supplier only.","Chagua Muuzaji kutoka kwa Wasambazaji Default wa vitu hapa chini. Wakati wa kuchagua, Agizo la Ununuzi litafanywa dhidi ya vitu vya Muuzaji aliyechaguliwa tu.",
 Row #{}: You must select {} serial numbers for item {}.,Mstari # {}: Lazima uchague {} nambari za serial za kipengee {}.,
+Add Comment,Ongeza Maoni,
+More...,Zaidi ...,
+Notes,Vidokezo,
+Payment Gateway,Njia ya Malipo,
+Payment Gateway Name,Jina la Gateway ya Malipo,
+Payments,Malipo,
+Plan Name,Mpango Jina,
+Portal,Portal,
+Scan Barcode,Scan Barcode,
+Some information is missing,Taarifa zingine hazipo,
+Successful,Inafanikiwa,
+Tools,Zana,
+Use Sandbox,Tumia Sandbox,
+Busy,Inafaa,
+Completed By,Imekamilishwa na,
+Payment Failed,Malipo Imeshindwa,
+Column {0},Safu {0},
+Field Mapping,Ramani ya shamba,
+Not Specified,Haijabainishwa,
+Update Type,Sasisha Aina,
+Dr,Dk,
+End Time,Muda wa Mwisho,
+Fetching...,Inachukua ...,
+"It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","Inaonekana kwamba kuna suala la usanidi wa stripe ya seva. Katika hali ya kushindwa, kiasi hicho kitarejeshwa kwa akaunti yako.",
+Looks like someone sent you to an incomplete URL. Please ask them to look into it.,Inaonekana kama mtu alikutumia kwenye URL isiyokwisha. Tafadhali waulize kuangalia ndani yake.,
+Master,Mwalimu,
+Pay,Kulipa,
+You can also copy-paste this link in your browser,Unaweza pia nakala-kuweka kiungo hiki kwenye kivinjari chako,
+Verified By,Imehakikishwa na,
+Invalid naming series (. missing) for {0},Mfululizo batili wa kutaja majina (. Haupo) kwa {0},
+Phone Number,Nambari ya simu,
+Account SID,Akaunti SID,
+Global Defaults,Ufafanuzi wa Global,
+Is Mandatory,Ni lazima,
+WhatsApp,WhatsApp,
+Make a call,Piga simu,
+Approve,Thibitisha,
+Reject,Kataa,
diff --git a/erpnext/translations/ta.csv b/erpnext/translations/ta.csv
index d36f47c..5ccabc0 100644
--- a/erpnext/translations/ta.csv
+++ b/erpnext/translations/ta.csv
@@ -113,7 +113,6 @@
 Add Items,பொருட்களை சேர்க்க,
 Add Leads,வழிகாட்டிகளைச் சேர்க்கவும்,
 Add Multiple Tasks,பல பணிகள் சேர்க்கவும்,
-Add Row,வரிசையில் சேர்,
 Add Sales Partners,விற்பனை பங்குதாரர்களைச் சேர்க்கவும்,
 Add Serial No,தொடர் எண் சேர்,
 Add Students,மாணவர்கள் சேர்,
@@ -211,9 +210,7 @@
 An error occurred during the update process,புதுப்பிப்பு செயல்பாட்டின் போது பிழை ஏற்பட்டது,
 "An item exists with same name ({0}), please change the item group name or rename the item","ஒரு பொருளை ( {0} ) , உருப்படி குழு பெயர் மாற்ற அல்லது மறுபெயரிட தயவு செய்து அதே பெயரில்",
 Analyst,ஆய்வாளர்,
-Analytics,அனலிட்டிக்ஸ்,
 Annual Billing: {0},வருடாந்த பில்லிங்: {0},
-Anonymous,அநாமதேய,
 Another Budget record '{0}' already exists against {1} '{2}' and account '{3}' for fiscal year {4},மற்றொரு பட்ஜெட் பதிவு &#39;{0}&#39; ஏற்கனவே {1} &#39;{2}&#39; மற்றும் கணக்கு &#39;{3}&#39; நிதியாண்டு {4 against க்கு எதிராக உள்ளது.,
 Another Period Closing Entry {0} has been made after {1},மற்றொரு காலம் நிறைவு நுழைவு {0} பின்னர் செய்யப்பட்ட {1},
 Another Sales Person {0} exists with the same Employee id,மற்றொரு விற்பனைப் {0} அதே பணியாளர் ஐடி கொண்டு உள்ளது,
@@ -283,14 +280,12 @@
 Attendance not submitted for {0} as {1} on leave.,விடுமுறை நாட்களில் {0} {0} க்கான வருகை சமர்ப்பிக்கப்படவில்லை.,
 Attribute table is mandatory,கற்பிதம் அட்டவணையின் கட்டாயமாகும்,
 Attribute {0} selected multiple times in Attributes Table,கற்பிதம் {0} காரணிகள் அட்டவணை பல முறை தேர்வு,
-Author,ஆசிரியர்,
 Authorized Signatory,அங்கீகரிக்கப்பட்ட கையொப்பதாரரால்,
 Auto Material Requests Generated,ஆட்டோ பொருள் கோரிக்கைகள் உருவாக்கிய,
 Auto Repeat,ஆட்டோ மீண்டும்,
 Auto repeat document updated,தானியங்கு திரும்ப ஆவணம் புதுப்பிக்கப்பட்டது,
 Automotive,வாகன,
 Available,கிடைக்கக்கூடிய,
-Available Leaves,கிடைக்கும் இலைகள்,
 Available Qty,கிடைக்கும் அளவு,
 Available Selling,கிடைக்கும் விற்பனை,
 Available for use date is required,உபயோகத்திற்கான தேதி கிடைக்க வேண்டும்,
@@ -340,7 +335,6 @@
 Base URL,அடிப்படை URL,
 Based On,அடிப்படையில்,
 Based On Payment Terms,கட்டண விதிமுறைகளின் அடிப்படையில்,
-Basic,அடிப்படையான,
 Batch,கூட்டம்,
 Batch Entries,தொகுதி உள்ளீடுகள்,
 Batch ID is mandatory,தொகுப்பு ஐடி கட்டாயமாகும்,
@@ -361,7 +355,6 @@
 Billable Hours,பில் செய்யக்கூடிய நேரம்,
 Billed,கட்டணம்,
 Billed Amount,பில் செய்த தொகை,
-Billing,பட்டியலிடல்,
 Billing Address,பில்லிங் முகவரி,
 Billing Address is same as Shipping Address,பில்லிங் முகவரி கப்பல் முகவரி போன்றது,
 Billing Amount,பில்லிங் அளவு,
@@ -560,7 +553,6 @@
 Consumed Qty,நுகரப்படும் அளவு,
 Consumer Products,நுகர்வோர் தயாரிப்புகள்,
 Contact,தொடர்பு,
-Contact Details,விபரங்கள்,
 Contact Us,எங்களை தொடர்பு கொள்ள,
 Content,உள்ளடக்கம்,
 Content Masters,உள்ளடக்க முதுநிலை,
@@ -715,7 +707,6 @@
 Date of Joining,சேர்வது தேதி,
 Date of Joining must be greater than Date of Birth,சேர்ந்த தேதி பிறந்த தேதி விட அதிகமாக இருக்க வேண்டும்,
 Date of Transaction,பரிவர்த்தனை தேதி,
-Datetime,நாள்நேரம்,
 Day,தினம்,
 Debit,பற்று,
 Debit ({0}),பற்று ({0}),
@@ -874,7 +865,6 @@
 Employee cannot report to himself.,பணியாளர் தன்னை தெரிவிக்க முடியாது.,
 Employee {0} has already applied for {1} between {2} and {3} : ,பணியாளர் {0} {2} மற்றும் {3} இடையே {1},
 Employee {0} of grade {1} have no default leave policy,தரம் {0} தரத்தின் ஊழியர் {0} இயல்புநிலை விடுப்புக் கொள்கை இல்லை,
-Enable,இயக்கு,
 Enable / disable currencies.,/ முடக்கு நாணயங்கள் செயல்படுத்து.,
 Enabled,இயலுமைப்படுத்த,
 "Enabling 'Use for Shopping Cart', as Shopping Cart is enabled and there should be at least one Tax Rule for Shopping Cart","இயக்குவதால் என வண்டியில் செயல்படுத்தப்படும், &#39;வண்டியில் பயன்படுத்தவும்&#39; மற்றும் வண்டியில் குறைந்தபட்சம் ஒரு வரி விதி இருக்க வேண்டும்",
@@ -905,7 +895,6 @@
 Error: Not a valid id?,பிழை: ஒரு செல்லுபடியாகும் அடையாள?,
 Estimated Cost,விலை மதிப்பீடு,
 "Even if there are multiple Pricing Rules with highest priority, then following internal priorities are applied:","அதிகபட்ச முன்னுரிமை கொண்ட பல விலை விதிகள் உள்ளன என்றால், பின் பின்வரும் உள் முன்னுரிமைகள் பயன்படுத்தப்படும்:",
-Event,சம்பவம்,
 Exchange Gain/Loss,செலாவணி லாபம் / நஷ்டம்,
 Exchange Rate Revaluation master.,பரிமாற்ற வீத மறுமதிப்பீடு மாஸ்டர்.,
 Exchange Rate must be same as {0} {1} ({2}),மாற்று வீதம் அதே இருக்க வேண்டும் {0} {1} ({2}),
@@ -1032,7 +1021,6 @@
 From value must be less than to value in row {0},மதிப்பு வரிசையில் மதிப்பு குறைவாக இருக்க வேண்டும் {0},
 From {0} | {1} {2},இருந்து {0} | {1} {2},
 Fulfillment,நிறைவேற்றுதல்,
-Full,முழு,
 Full Name,முழு பெயர்,
 Fully Depreciated,முழுமையாக தணியாக,
 Furnitures and Fixtures,மரச்சாமான்கள் மற்றும் சாதனங்கள்,
@@ -1133,7 +1121,6 @@
 Hub Sync ID,மைய ஒருங்கிணைப்பு ஐடி,
 Human Resource,மையம்  வள,
 Human Resources,மனித வளங்கள்,
-IFSC Code,IFSC கோட்,
 IGST Amount,IGST தொகை,
 IP Address,ஐபி முகவரி,
 ITC Available (whether in full op part),ஐ.டி.சி கிடைக்கிறது (முழு ஒப் பகுதியாக இருந்தாலும்),
@@ -1185,7 +1172,6 @@
 Ineligible ITC,தகுதியற்ற ஐ.டி.சி.,
 Initiated,தொடங்கப்பட்ட,
 Inpatient Record,உள்நோயாளி பதிவு,
-Insert,நுழைக்கவும்,
 Installation Note,நிறுவல் குறிப்பு,
 Installation Note {0} has already been submitted,நிறுவல் குறிப்பு {0} ஏற்கனவே சமர்ப்பித்த,
 Installation date cannot be before delivery date for Item {0},நிறுவல் தேதி உருப்படி பிரசவ தேதி முன் இருக்க முடியாது {0},
@@ -1197,7 +1183,6 @@
 Insurance Start date should be less than Insurance End date,காப்புறுதி தொடக்க தேதி காப்புறுதி முடிவு தேதி விட குறைவாக இருக்க வேண்டும்,
 Integrated Tax,ஒருங்கிணைந்த வரி,
 Inter-State Supplies,மாநிலங்களுக்கு இடையேயான பொருட்கள்,
-Interests,ஆர்வம்,
 Internet Publishing,இணைய \nவெளியிடுதல்,
 Intra-State Supplies,உள்-மாநில பொருட்கள்,
 Introduction,அறிமுகப்படுத்துதல்,
@@ -1316,7 +1301,6 @@
 Lab testing datetime cannot be before collection datetime,ஆய்வக சோதனை தரவுத்தளத்திற்கு முன்பே தரவுத்தளம் இருக்காது,
 Label,சிட்டை,
 Laboratory,ஆய்வகம்,
-Language Name,மொழி பெயர்,
 Large,பெரிய,
 Last Communication,கடைசியாக தொடர்பாடல்,
 Last Communication Date,கடைசியாக தொடர்பாடல் தேதி,
@@ -1347,8 +1331,6 @@
 Letter Heads for print templates.,அச்சு வார்ப்புருக்கள் தலைமை பெயர்.,
 Level,நிலை,
 Liability,பொறுப்பு,
-License,உரிமம்,
-Limit,அளவு,
 Limit Crossed,எல்லை குறுக்கு கோடிட்ட,
 Link to Material Request,பொருள் வேண்டுகோளுக்கு இணைப்பு,
 List of all share transactions,அனைத்து பங்கு பரிமாற்றங்களின் பட்டியல்,
@@ -1359,7 +1341,6 @@
 Loans (Liabilities),கடன்கள் ( கடன்),
 Loans and Advances (Assets),கடன்கள் ( சொத்துக்கள் ),
 Local,உள்ளூர்,
-Log,புகுபதிகை,
 Logs for maintaining sms delivery status,எஸ்எம்எஸ் விநியோகம் அந்தஸ்து தக்கவைப்பதற்கு பதிவுகள்,
 Lost,லாஸ்ட்,
 Lost Reasons,இழந்த காரணங்கள்,
@@ -1445,7 +1426,6 @@
 Medical Department,மருத்துவ துறை,
 Medical Record,மருத்துவ பதிவு,
 Medium,ஊடகம்,
-Meeting,சந்தித்தல்,
 Member Activity,உறுப்பினர் செயல்பாடு,
 Member ID,உறுப்பினர் அடையாள எண்,
 Member Name,உறுப்பினர் பெயர்,
@@ -1495,7 +1475,6 @@
 Multiple Variants,பல மாறுபாடுகள்,
 Multiple fiscal years exist for the date {0}. Please set company in Fiscal Year,பல நிதியாண்டு தேதி {0} உள்ளன. இந்த நிதி ஆண்டில் நிறுவனம் அமைக்கவும்,
 Music,இசை,
-My Account,எனது கணக்கு,
 Name error: {0},பெயர் பிழை: {0},
 Name of new Account. Note: Please don't create accounts for Customers and Suppliers,புதிய கணக்கு பெயர். குறிப்பு: வாடிக்கையாளர்களும் விநியோகத்தர்களும் கணக்குகள் உருவாக்க வேண்டாம்,
 Name or Email is mandatory,பெயர் அல்லது மின்னஞ்சல் அத்தியாவசியமானதாகும்,
@@ -1538,7 +1517,6 @@
 New credit limit is less than current outstanding amount for the customer. Credit limit has to be atleast {0},புதிய கடன் வரம்பை வாடிக்கையாளர் தற்போதைய கடன் தொகையை விட குறைவாக உள்ளது. கடன் வரம்பு குறைந்தது இருக்க வேண்டும் {0},
 New task,புதிய பணி,
 New {0} pricing rules are created,புதிய {0} விலை விதிகள் உருவாக்கப்படுகின்றன,
-Newsletters,செய்தி மடல்,
 Newspaper Publishers,பத்திரிகை வெளியீட்டாளர்கள்,
 Next,அடுத்து,
 Next Contact By cannot be same as the Lead Email Address,அடுத்து தொடர்பு மூலம் முன்னணி மின்னஞ்சல் முகவரி அதே இருக்க முடியாது,
@@ -1686,7 +1664,6 @@
 Other,வேறு,
 Other Reports,பிற அறிக்கைகள்,
 "Other outward supplies(Nil rated,Exempted)","பிற வெளிப்புற பொருட்கள் (இல்லை மதிப்பிடப்பட்டது, விலக்கு)",
-Others,மற்றவை,
 Out Qty,அளவு அவுட்,
 Out Value,அவுட் மதிப்பு,
 Out of Order,ஆர்டர் அவுட்,
@@ -1726,7 +1703,6 @@
 Party Type and Party is mandatory for {0} account,{0} கணக்குக்கு கட்சி வகை மற்றும் கட்சி கட்டாயமாகும்,
 Party Type is mandatory,கட்சி வகை அத்தியாவசியமானதாகும்,
 Party is mandatory,கட்சி அத்தியாவசியமானதாகும்,
-Password,கடவுச்சொல்,
 Past Due Date,கடந்த Due தேதி,
 Patient,நோயாளி,
 Patient Appointment,நோயாளி நியமனம்,
@@ -1784,7 +1760,6 @@
 Pharmaceutical,மருந்து,
 Pharmaceuticals,மருந்துப்பொருள்கள்,
 Physician,மருத்துவர்,
-Pincode,ப ன்ேகா,
 Place Of Supply (State/UT),வழங்கல் இடம் (மாநிலம் / யூடி),
 Place Order,ஸ்நாக்ஸ்,
 Plan Name,திட்டத்தின் பெயர்,
@@ -1896,7 +1871,6 @@
 Please select date,தேதியைத் தேர்ந்தெடுக்கவும்,
 Please select item code,உருப்படியை குறியீடு தேர்வு செய்க,
 Please select month and year,மாதம் மற்றும் ஆண்டு தேர்ந்தெடுக்கவும்,
-Please select prefix first,முதல் முன்னொட்டு தேர்வு செய்க,
 Please select the Company,தயவு செய்து நிறுவனத்தைத் தேர்ந்தெடுக்கவும்,
 Please select the Multiple Tier Program type for more than one collection rules.,ஒன்றுக்கு மேற்பட்ட தொகுப்பு விதிமுறைகளுக்கு பல அடுக்கு வகை வகைகளை தேர்ந்தெடுக்கவும்.,
 Please select the assessment group other than 'All Assessment Groups',தயவு செய்து &#39;அனைத்து மதிப்பீடு குழுக்கள்&#39; தவிர வேறு மதிப்பீடு குழு தேர்வு,
@@ -1913,7 +1887,6 @@
 Please set Company filter blank if Group By is 'Company',நிறுவனத்தின் வெற்று வடிகட்ட அமைக்கவும் என்றால் குழுவினராக &#39;நிறுவனத்தின்&#39; ஆகும்,
 Please set Default Payroll Payable Account in Company {0},நிறுவனத்தின் இயல்புநிலை சம்பளப்பட்டியல் செலுத்த வேண்டிய கணக்கு அமைக்கவும் {0},
 Please set Depreciation related Accounts in Asset Category {0} or Company {1},சொத்து வகை {0} அல்லது நிறுவனத்தின் தேய்மானம் தொடர்பான கணக்குகள் அமைக்கவும் {1},
-Please set Email Address,மின்னஞ்சல் முகவரி அமைக்கவும்,
 Please set GST Accounts in GST Settings,GST அமைப்புகளில் GST கணக்குகளை அமைக்கவும்,
 Please set Hotel Room Rate on {},{@} ஹோட்டல் அறை விகிதத்தை தயவுசெய்து அமைக்கவும்,
 Please set Number of Depreciations Booked,Depreciations எண்ணிக்கை பதிவுசெய்தீர்கள் அமைக்கவும்,
@@ -1936,7 +1909,6 @@
 Please set the Email ID for the Student to send the Payment Request,கட்டண கோரிக்கை அனுப்ப மாணவருக்கு மின்னஞ்சல் ஐடியை அமைக்கவும்,
 Please set the Item Code first,முதலில் உருப்படி கோட் ஐ அமைக்கவும்,
 Please set the Payment Schedule,கட்டண அட்டவணையை அமைக்கவும்,
-Please set the series to be used.,பயன்படுத்த வேண்டிய தொடரை அமைக்கவும்.,
 Please set {0} for address {1},முகவரிக்கு {0} {0},
 Please setup Students under Student Groups,மாணவர் குழுக்களுக்கு கீழ் மாணவர்களை அமைத்திடுங்கள்,
 Please specify Company,நிறுவனத்தின் குறிப்பிடவும்,
@@ -1953,7 +1925,6 @@
 Point-of-Sale,புள்ளி விற்பனை,
 Point-of-Sale Profile,புள்ளி விற்பனை செய்தது,
 Portal,போர்டல்,
-Portal Settings,போர்டல் அமைப்புகள்,
 Possible Supplier,சாத்தியமான சப்ளையர்,
 Postal Expenses,தபால் செலவுகள்,
 Posting Date,தேதி தகவல்களுக்கு,
@@ -2152,12 +2123,10 @@
 Reference No is mandatory if you entered Reference Date,நீங்கள் பரிந்துரை தேதி உள்ளிட்ட குறிப்பு இல்லை கட்டாயமாகும்,
 Reference No.,குறிப்பு எண்.,
 Reference Number,குறிப்பு எண்,
-Reference Owner,குறிப்பு உரிமையாளர்,
 Reference Type,குறிப்பு வகை,
 "Reference: {0}, Item Code: {1} and Customer: {2}",குறிப்பு: {0} பொருள் குறியீடு: {1} மற்றும் வாடிக்கையாளர்: {2},
 References,குறிப்புகள்,
 Refresh Token,புதுப்பிப்பு டோக்கன்,
-Region,பகுதி,
 Register,பதிவு,
 Rejected,நிராகரிக்கப்பட்டது,
 Related,சம்பந்தப்பட்ட,
@@ -2179,7 +2148,6 @@
 Replace BOM and update latest price in all BOMs,BOM ஐ மாற்றவும் மற்றும் அனைத்து BOM களில் சமீபத்திய விலை புதுப்பிக்கவும்,
 Replied,பதில்,
 Report,புகார்,
-Report Builder,அறிக்கை பில்டர்,
 Report Type,வகை புகார்,
 Report Type is mandatory,புகார் வகை கட்டாய ஆகிறது,
 Reports,அறிக்கைகள்,
@@ -2355,13 +2323,11 @@
 Same Company is entered more than once,அதே நிறுவனம் ஒன்றுக்கு மேற்பட்ட முறை உள்ளிட்ட,
 Same item cannot be entered multiple times.,அதே பொருளைப் பலமுறை உள்ளிட முடியாது.,
 Same supplier has been entered multiple times,அதே சப்ளையர் பல முறை உள்ளிட்ட வருகிறது,
-Sample,மாதிரி,
 Sample Collection,மாதிரி சேகரிப்பு,
 Sample quantity {0} cannot be more than received quantity {1},மாதிரி அளவு {0} பெறப்பட்ட அளவைவிட அதிகமாக இருக்க முடியாது {1},
 Sanctioned,ஒப்புதல்,
 Sand,மணல்,
 Saturday,சனிக்கிழமை,
-Saved,சேமித்த,
 Saving {0},சேமித்தல் {0},
 Scan Barcode,பார்கோடு ஸ்கேன்,
 Schedule,அனுபந்தம்,
@@ -2463,7 +2429,6 @@
 Series Updated,தொடர் இற்றை,
 Series Updated Successfully,தொடர் வெற்றிகரமாக புதுப்பிக்கப்பட்டது,
 Series is mandatory,தொடர் கட்டாயமாகும்,
-Series {0} already used in {1},தொடர் {0} ஏற்கனவே பயன்படுத்தப்படுகிறது {1},
 Service,சேவை,
 Service Level Agreement,சேவை நிலை ஒப்பந்தம்,
 Service Level Agreement.,சேவை நிலை ஒப்பந்தம்.,
@@ -2479,7 +2444,6 @@
 Set Tax Rule for shopping cart,வண்டியை அமைக்க வரி விதி,
 Set as Closed,மூடப்பட்ட அமை,
 Set as Completed,முடிந்ததாக அமைக்கவும்,
-Set as Default,இயல்புநிலை அமை,
 Set as Lost,லாஸ்ட் அமை,
 Set as Open,திறந்த அமை,
 Set default inventory account for perpetual inventory,நிரந்தர சரக்கு இயல்புநிலை சரக்கு கணக்கை அமை,
@@ -2511,7 +2475,6 @@
 Shareholder,பங்குதாரரின்,
 Ship To State,மாநிலம் கப்பல்,
 Shipments,படுவதற்கு,
-Shipping,கப்பல் வாணிபம்,
 Shipping Address,கப்பல் முகவரி,
 "Shipping Address does not have country, which is required for this Shipping Rule",இந்த கப்பல் விதிக்கு தேவைப்படும் கப்பல் முகவரிக்கு நாடு இல்லை,
 Shipping rule only applicable for Buying,கொள்முதல் செய்வதற்கு மட்டுமே பொருந்தும் கப்பல் விதி,
@@ -2564,7 +2527,6 @@
 Split Batch,பிரி தொகுதி,
 Split Issue,பிளவு வெளியீடு,
 Sports,விளையாட்டு,
-Standard,நிலையான,
 Standard Buying,ஸ்டாண்டர்ட் வாங்குதல்,
 Standard Selling,ஸ்டாண்டர்ட் விற்பனை,
 Standard contract terms for Sales or Purchase.,விற்பனை அல்லது கொள்முதல் தரநிலை ஒப்பந்த அடிப்படையில் .,
@@ -2731,7 +2693,6 @@
 Terms and Conditions,நிபந்தனைகள்,
 Terms and Conditions Template,நிபந்தனைகள் வார்ப்புரு,
 Territory,மண்டலம்,
-Test,சோதனை,
 Thank you for your business!,உங்கள் வணிக நன்றி!,
 The 'From Package No.' field must neither be empty nor it's value less than 1.,&#39;முதல் தொகுப்பு எண்&#39; துறையில் வெற்று இருக்க கூடாது அல்லது அது மதிப்பு 1 குறைவாக இருக்க வேண்டும்.,
 The Brand,பிராண்ட்,
@@ -2848,7 +2809,6 @@
 Total (Without Tax),மொத்தம் (வரி இல்லாமல்),
 Total Achieved,மொத்த Achieved,
 Total Actual,உண்மையான மொத்த,
-Total Allocated Leaves,மொத்த ஒதுக்கப்பட்ட இலைகள்,
 Total Amount,மொத்த தொகை,
 Total Amount Credited,மொத்த தொகை பாராட்டப்பட்டது,
 Total Applicable Charges in Purchase Receipt Items table must be same as Total Taxes and Charges,கொள்முதல் ரசீது பொருட்கள் அட்டவணையில் மொத்த பொருந்தும் கட்டணங்கள் மொத்த வரி மற்றும் கட்டணங்கள் அதே இருக்க வேண்டும்,
@@ -2892,7 +2852,6 @@
 Total(Amt),மொத்தம் (விவரங்கள்),
 Total(Qty),மொத்தம் (அளவு),
 Traceability,கண்டறிதல்,
-Traceback,மீண்டும் கண்டுபிடிக்க,
 Track Leads by Lead Source.,ட்ராக் மூலத்தை வழிநடத்துகிறது.,
 Transaction,பரிவர்த்தனை,
 Transaction Date,பரிவர்த்தனை தேதி,
@@ -2930,7 +2889,6 @@
 UOM Conversion factor is required in row {0},மொறட்டுவ பல்கலைகழகம் மாற்ற காரணி வரிசையில் தேவைப்படுகிறது {0},
 UOM coversion factor required for UOM: {0} in Item: {1},மொறட்டுவ பல்கலைகழகம் தேவையான மொறட்டுவ பல்கலைகழகம் Coversion காரணி: {0} உருப்படியை: {1},
 URL,URL ஐ,
-Unable to find DocType {0},DocType {0} கண்டுபிடிக்க முடியவில்லை,
 Unable to find exchange rate for {0} to {1} for key date {2}. Please create a Currency Exchange record manually,ஈடாக விகிதம் கண்டுபிடிக்க முடியவில்லை {0} {1} முக்கிய தேதி {2}. கைமுறையாக ஒரு செலாவணி பதிவை உருவாக்க கொள்ளவும்,
 Unable to find score starting at {0}. You need to have standing scores covering 0 to 100,{0} இல் தொடங்கும் ஸ்கோர் கண்டுபிடிக்க முடியவில்லை. 0 முதல் 100 வரையிலான மதிப்பெண்களை நீங்கள் கொண்டிருக்க வேண்டும்,
 Unable to find variable: ,மாறி கண்டுபிடிக்க முடியவில்லை:,
@@ -2960,7 +2918,6 @@
 Upload your letter head and logo. (you can edit them later).,உங்கள் கடிதம் தலை மற்றும் சின்னம் பதிவேற்ற. (நீங்கள் பின்னர் அவர்களை திருத்த முடியும்).,
 Upper Income,உயர் வருமானம்,
 Use Sandbox,சாண்ட்பாக்ஸினைப் பயன்படுத்தவும்,
-Used Leaves,பயன்படுத்திய இலைகள்,
 User,பயனர்,
 User ID,பயனர் ஐடி,
 User ID not set for Employee {0},பயனர் ஐடி பணியாளர் அமைக்க{0},
@@ -3051,7 +3008,6 @@
 Website Settings,இணைய அமைப்புகள்,
 Wednesday,புதன்கிழமை,
 Week,வீக்,
-Weekdays,வார,
 Weekly,வாரந்தோறும்,
 "Weight is mentioned,\nPlease mention ""Weight UOM"" too","எடை கூட ""எடை UOM"" குறிப்பிட தயவு செய்து \n குறிப்பிடப்பட்டுள்ளது",
 Welcome email sent,வரவேற்கிறோம் மின்னஞ்சல் அனுப்பி,
@@ -3072,7 +3028,6 @@
 Work Order {0} must be submitted,பணி வரிசை {0} சமர்ப்பிக்கப்பட வேண்டும்,
 Work Orders Created: {0},பணி ஆணைகள் உருவாக்கப்பட்டன: {0},
 Work-in-Progress Warehouse is required before Submit,"வேலை, முன்னேற்றம் கிடங்கு சமர்ப்பிக்க முன் தேவை",
-Workflow,பணியோட்டம்,
 Working,உழைக்கும்,
 Working Hours,வேலை நேரங்கள்,
 Workstation,பணிநிலையம்,
@@ -3102,7 +3057,6 @@
 You need to be a user other than Administrator with System Manager and Item Manager roles to register on Marketplace.,நீங்கள் மார்க்கெட்ப்ளேட்டில் பதிவு செய்ய கணினி நிர்வாகி மற்றும் பொருள் மேலாளர் பாத்திரங்களை நிர்வாகி தவிர வேறு பயனர் இருக்க வேண்டும்.,
 You need to be a user with System Manager and Item Manager roles to add users to Marketplace.,சந்தையில் பயனர்களை சேர்க்க கணினி மேலாளர் மற்றும் பொருள் மேலாளர் பாத்திரங்களைக் கொண்ட பயனராக இருக்க வேண்டும்.,
 You need to be a user with System Manager and Item Manager roles to register on Marketplace.,Marketplace இல் பதிவு செய்ய நீங்கள் கணினி மேலாளர் மற்றும் பொருள் நிர்வாக மேலாளர்களுடன் ஒரு பயனர் இருக்க வேண்டும்.,
-You need to be logged in to access this page,இந்த பக்கத்தை அணுக உள்நுழைந்திருக்க வேண்டும்,
 You need to enable Shopping Cart,வண்டியில் செயல்படுத்த வேண்டும்,
 You will lose records of previously generated invoices. Are you sure you want to restart this subscription?,முன்பு உருவாக்கப்பட்ட பொருட்களின் பதிவுகளை நீங்கள் இழப்பீர்கள். இந்த சந்தாவை நிச்சயமாக மீண்டும் தொடங்க விரும்புகிறீர்களா?,
 Your Organization,உங்கள் அமைப்பு,
@@ -3218,7 +3172,6 @@
 Assigned To,ஒதுக்கப்படும்,
 Chat,அரட்டை,
 Completed By,நிறைவு செய்தவர்,
-County,உள்ளூரில்,
 Day of Week,வார நாள்,
 "Dear System Manager,","அன்புக்குரிய அமைப்பு மேலாளர்,",
 Default Value,முன்னிருப்பு மதிப்பு,
@@ -3229,31 +3182,21 @@
 Fieldtype,துறை வகை,
 Help Articles,உதவி கட்டுரைகள்,
 ID,ஐடி,
-Images,படங்கள்,
 Import,இறக்குமதி பொருள்கள்,
 Language,மொழி,
 Likes,விருப்பு,
 Merge with existing,இருக்கும் இணைவதற்கு,
-Office,அலுவலகம்,
 Orientation,திசை,
 Parent,பெற்றோர்,
-Passive,மந்தமான,
 Payment Failed,கொடுப்பனவு தோல்வி,
-Permanent,நிரந்தர,
 Personal,தனிப்பட்ட,
-Plant,தாவரம்,
 Post,போஸ்ட்,
-Postal,தபால் அலுவலகம் சார்ந்த,
 Postal Code,அஞ்சல் குறியீடு,
-Previous,முந்தைய,
 Provider,வழங்குநர்,
 Read Only,படிக்க மட்டும்,
 Recipient,பெறுபவர்,
 Reviews,விமர்சனங்கள்,
 Sender,அனுப்புபவர்,
-Shop,ஷாப்பிங்,
-Subsidiary,உப,
-There is some problem with the file url: {0},கோப்பு URL சில சிக்கல் உள்ளது: {0},
 There were errors while sending email. Please try again.,மின்னஞ்சல் அனுப்பும் போது பிழைகள் இருந்தன . மீண்டும் முயற்சிக்கவும்.,
 Values Changed,மதிப்புகள் மாற்றப்பட்டது,
 or,அல்லது,
@@ -3280,19 +3223,16 @@
 Quality Feedback Template,தரமான கருத்து வார்ப்புரு,
 Rules for applying different promotional schemes.,வெவ்வேறு விளம்பர திட்டங்களைப் பயன்படுத்துவதற்கான விதிகள்.,
 Show {0},{0 Show ஐக் காட்டு,
-"Special Characters except '-', '#', '.', '/', '{{' and '}}' not allowed in naming series {0}","&quot;-&quot;, &quot;#&quot;, &quot;.&quot;, &quot;/&quot;, &quot;{{&quot; மற்றும் &quot;}}&quot; தவிர சிறப்பு எழுத்துக்கள் பெயரிடும் தொடரில் அனுமதிக்கப்படவில்லை {0}",
 Target Details,இலக்கு விவரங்கள்,
 {0} already has a Parent Procedure {1}.,{0} ஏற்கனவே பெற்றோர் நடைமுறை {1 has ஐக் கொண்டுள்ளது.,
 API,ஏபிஐ,
 Annual,வருடாந்திர,
 Change,மாற்றம்,
 Contact Email,மின்னஞ்சல் தொடர்பு,
-Export Type,ஏற்றுமதி வகை,
 From Date,தேதி,
 Group By,குழு மூலம்,
 Invalid URL,தவறான வலைதள முகவரி,
 Landscape,இயற்கை,
-Last Sync On,கடைசி ஒத்திசைவு,
 Naming Series,தொடர் பெயரிடும்,
 No data to export,ஏற்றுமதி செய்ய தரவு இல்லை,
 Portrait,ஓவிய,
@@ -3302,7 +3242,6 @@
 Show Document,ஆவணத்தைக் காட்டு,
 Show Traceback,டிரேஸ்பேக்கைக் காட்டு,
 Video,காணொளி,
-Webhook Secret,வெப்ஹூக் ரகசியம்,
 % Of Grand Total,மொத்தத்தில்%,
 <b>Company</b> is a mandatory filter.,<b>நிறுவனம்</b> ஒரு கட்டாய வடிப்பான்.,
 <b>From Date</b> is a mandatory filter.,<b>தேதி முதல்</b> கட்டாய வடிப்பான்.,
@@ -3358,7 +3297,6 @@
 BOM Comparison Tool,BOM ஒப்பீட்டு கருவி,
 BOM recursion: {0} cannot be child of {1},BOM மறுநிகழ்வு: {0} {1 குழந்தையாக இருக்க முடியாது,
 BOM recursion: {0} cannot be parent or child of {1},BOM மறுநிகழ்வு: {0 parent பெற்றோராகவோ அல்லது {1 of குழந்தையாகவோ இருக்க முடியாது,
-Back to Home,வீட்டிற்கு திரும்பவும்,
 Back to Messages,செய்திகளுக்குத் திரும்பு,
 Bank Data mapper doesn't exist,வங்கி தரவு மேப்பர் இல்லை,
 Bank Details,வங்கி விவரங்கள்,
@@ -3420,7 +3358,6 @@
 Currency,நாணய,
 Current Status,தற்போதைய நிலை,
 Customer PO,வாடிக்கையாளர் பி.ஓ.,
-Customize,தனிப்பயனாக்கு,
 Daily,தினசரி,
 Date,தேதி,
 Date of Birth cannot be greater than Joining Date.,சேரும் தேதியை விட பிறந்த தேதி அதிகமாக இருக்க முடியாது.,
@@ -3454,7 +3391,6 @@
 ERPNext could not find any matching payment entry,பொருந்தக்கூடிய கட்டண நுழைவு எதுவும் ஈஆர்பிஎன்ஸ்ட்டால் கண்டுபிடிக்க முடியவில்லை,
 Earliest Age,ஆரம்ப வயது,
 Edit Details,விவரங்களைத் திருத்துக,
-Edit Profile,திருத்து,
 Either GST Transporter ID or Vehicle No is required if Mode of Transport is Road,போக்குவரத்து முறை சாலையாக இருந்தால் ஜிஎஸ்டி டிரான்ஸ்போர்ட்டர் ஐடி அல்லது வாகன எண் தேவையில்லை,
 Email,மின்னஞ்சல்,
 Email Campaigns,மின்னஞ்சல் பிரச்சாரங்கள்,
@@ -3482,7 +3418,6 @@
 Fetch Items from Warehouse,கிடங்கிலிருந்து பொருட்களைப் பெறுங்கள்,
 Fetching...,பெறுகிறது ...,
 Field,களம்,
-File Manager,கோப்பு மேலாளர்,
 Filters,வடிகட்டிகள்,
 Finding linked payments,இணைக்கப்பட்ட கொடுப்பனவுகளைக் கண்டறிதல்,
 Fleet Management,கடற்படை  மேலாண்மை,
@@ -3521,7 +3456,6 @@
 Incorrect Warehouse,தவறான கிடங்கு,
 Invalid Barcode. There is no Item attached to this barcode.,தவறான பார்கோடு. இந்த பார்கோடு இணைக்கப்பட்ட பொருள் எதுவும் இல்லை.,
 Invalid credentials,தவறான ஆவண சான்றுகள்,
-Invite as User,பயனர் அழைக்கவும்,
 Issue Priority.,முன்னுரிமை வழங்குதல்.,
 Issue Type.,வெளியீட்டு வகை.,
 "It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","சர்வர் ஸ்ட்ரீப் கட்டமைப்பில் சிக்கல் இருப்பதாகத் தோன்றுகிறது. தோல்வி ஏற்பட்டால், உங்கள் கணக்கில் பணம் திரும்பப்பெறப்படும்.",
@@ -3564,7 +3498,6 @@
 New Invoice,புதிய விலைப்பட்டியல்,
 New Payment,புதிய கட்டணம்,
 New release date should be in the future,புதிய வெளியீட்டு தேதி எதிர்காலத்தில் இருக்க வேண்டும்,
-Newsletter,செய்தி மடல்,
 No Account matched these filters: {},இந்த வடிப்பான்களுடன் எந்தக் கணக்கும் பொருந்தவில்லை: {},
 No communication found.,தகவல் தொடர்பு எதுவும் கிடைக்கவில்லை.,
 No correct answer is set for {0},Answer 0 for க்கு சரியான பதில் எதுவும் அமைக்கப்படவில்லை,
@@ -3640,7 +3573,6 @@
 Please setup a default bank account for company {0},Company 0 company நிறுவனத்திற்கான இயல்புநிலை வங்கி கணக்கை அமைக்கவும்,
 Please specify,குறிப்பிடவும்,
 Please specify a {0},{0 if ஐ குறிப்பிடவும்,lead
-Printing,அச்சிடுதல்,
 Priority,முதன்மை,
 Priority has been changed to {0}.,முன்னுரிமை {0 to ஆக மாற்றப்பட்டுள்ளது.,
 Priority {0} has been repeated.,முன்னுரிமை {0 மீண்டும் மீண்டும் செய்யப்பட்டுள்ளது.,
@@ -3649,7 +3581,6 @@
 Project,திட்டம்,
 Provide the academic year and set the starting and ending date.,கல்வி ஆண்டை வழங்கி தொடக்க மற்றும் இறுதி தேதியை அமைக்கவும்.,
 Public token is missing for this bank,இந்த வங்கிக்கு பொது டோக்கன் இல்லை,
-Publish,வெளியிடு,
 Publish 1 Item,1 பொருளை வெளியிடுக,
 Publish Items,உருப்படிகளை வெளியிடுங்கள்,
 Publish More Items,மேலும் பொருட்களை வெளியிடுக,
@@ -3677,7 +3608,6 @@
 Reconciled,ஒருமைப்படுத்திய,
 Recruitment,ஆட்சேர்ப்பு,
 Red,சிவப்பு,
-Refreshing,புதுப்பிக்கிறது,
 Release date must be in the future,வெளியீட்டு தேதி எதிர்காலத்தில் இருக்க வேண்டும்,
 Relieving Date must be greater than or equal to Date of Joining,நிவாரண தேதி சேரும் தேதியை விட அதிகமாகவோ அல்லது சமமாகவோ இருக்க வேண்டும்,
 Rename,மறுபெயரிடு,
@@ -3721,7 +3651,6 @@
 Search for a payment,கட்டணத்தைத் தேடுங்கள்,
 Search for anything ...,எதையும் தேடுங்கள் ...,
 Search results for,தேடல் முடிவுகள்,
-Select All,அனைத்து தேர்வு,
 Select Difference Account,வேறுபாடு கணக்கைத் தேர்ந்தெடுக்கவும்,
 Select a Default Priority.,இயல்புநிலை முன்னுரிமையைத் தேர்ந்தெடுக்கவும்.,
 Select a company,ஒரு நிறுவனத்தைத் தேர்ந்தெடுக்கவும்,
@@ -3740,11 +3669,9 @@
 Service Level Agreement has been changed to {0}.,சேவை நிலை ஒப்பந்தம் {0 to ஆக மாற்றப்பட்டுள்ளது.,
 Service Level Agreement was reset.,சேவை நிலை ஒப்பந்தம் மீட்டமைக்கப்பட்டது.,
 Service Level Agreement with Entity Type {0} and Entity {1} already exists.,நிறுவன வகை {0} மற்றும் நிறுவன {1 with உடன் சேவை நிலை ஒப்பந்தம் ஏற்கனவே உள்ளது.,
-Set,அமை,
 Set Meta Tags,மெட்டா குறிச்சொற்களை அமைக்கவும்,
 Set {0} in company {1},நிறுவனத்தில் {0 Set ஐ அமைக்கவும் {1},
 Setup,அமைப்பு முறை,
-Setup Wizard,அமைவு வழிகாட்டி,
 Shift Management,ஷிப்ட் மேலாண்மை,
 Show Future Payments,எதிர்கால கொடுப்பனவுகளைக் காட்டு,
 Show Linked Delivery Notes,இணைக்கப்பட்ட விநியோக குறிப்புகளைக் காட்டு,
@@ -3815,7 +3742,6 @@
 Unreconciled,ஒப்புரவாகவேயில்லை,
 Unsupported GST Category for E-Way Bill JSON generation,இ-வே பில் JSON தலைமுறைக்கு ஆதரிக்கப்படாத ஜிஎஸ்டி வகை,
 Update,புதுப்பிக்க,
-Update Details,விவரங்களைப் புதுப்பிக்கவும்,
 Update Taxes for Items,பொருட்களுக்கான வரிகளைப் புதுப்பிக்கவும்,
 "Upload a bank statement, link or reconcile a bank account","வங்கி அறிக்கையை பதிவேற்றவும், வங்கி கணக்கை இணைக்கவும் அல்லது சரிசெய்யவும்",
 Upload a statement,ஒரு அறிக்கையை பதிவேற்றவும்,
@@ -3839,7 +3765,6 @@
 XML Files Processed,எக்ஸ்எம்எல் கோப்புகள் செயலாக்கப்பட்டன,
 Year,ஆண்டு,
 Yearly,வருடாந்திர,
-You,நீங்கள்,
 You are not allowed to enroll for this course,இந்த பாடநெறியில் சேர உங்களுக்கு அனுமதி இல்லை,
 You are not enrolled in program {0},நீங்கள் program 0 program நிரலில் சேரவில்லை,
 You can Feature upto 8 items.,நீங்கள் 8 உருப்படிகள் வரை இடம்பெறலாம்.,
@@ -3856,7 +3781,6 @@
 e-Way Bill already exists for this document,இந்த ஆவணத்திற்கு ஈ-வே பில் ஏற்கனவே உள்ளது,
 woocommerce - {0},woocommerce - {0},
 {0} Coupon used are {1}. Allowed quantity is exhausted,{0 used பயன்படுத்தப்படும் கூப்பன் {1 are. அனுமதிக்கப்பட்ட அளவு தீர்ந்துவிட்டது,
-{0} Name,{0} பெயர்,
 {0} Operations: {1},{0} செயல்பாடுகள்: {1},
 {0} bank transaction(s) created,{0} வங்கி பரிவர்த்தனை (கள்) உருவாக்கப்பட்டது,
 {0} bank transaction(s) created and {1} errors,{0} வங்கி பரிவர்த்தனை (கள்) உருவாக்கப்பட்டது மற்றும் {1} பிழைகள்,
@@ -3875,17 +3799,13 @@
 Total Income,மொத்த வருமானம்,
 Total Income This Year,இந்த ஆண்டு மொத்த வருமானம்,
 Barcode,பார்கோடு,
-Bold,தைரியமான,
-Center,மையம்,
 Clear,அழி,
-Comment,கருத்து,
 Comments,கருத்துகள்,
 DocType,டாக் டைப்,
 Download,பதிவிறக்க Tamil,
 Left,விட்டு,
 Link,இணைப்பு,
 New,புதியது,
-Not Found,கிடைக்கவில்லை,
 Print,அச்சிடுக,
 Reference Name,குறிப்பு பெயர்,
 Refresh,இளைப்பா (ற்) று,
@@ -3908,7 +3828,6 @@
 Email Id,மின்னஞ்சல் ஐடி,
 No,இல்லை,
 Reference Doctype,குறிப்பு Doctype,
-User Id,பயனர் ஐடி,
 Yes,ஆம்,
 Actual ,உண்மையான,
 Add to cart,வணிக வண்டியில் சேர்,
@@ -4304,7 +4223,6 @@
 e.g Adjustments for:,எ.கா. சரிசெய்தல்:,
 Section Subtotal,பிரிவு கூட்டுத்தொகை,
 Section Footer,பகுதி அடிக்குறிப்பு,
-Position,நிலை,
 Cash Flow Mapping,பணப்பாய்வு வரைபடம்,
 Select Maximum Of 1,1 அதிகபட்சம் தேர்ந்தெடுக்கவும்,
 Is Finance Cost,நிதி செலவு,
@@ -4936,7 +4854,6 @@
 Previous Business Day,முந்தைய வர்த்தக நாள்,
 Next Business Day,அடுத்த வணிக நாள்,
 Urgent,அவசரமான,
-Crop,பயிர்,
 Crop Name,பயிர் பெயர்,
 Scientific Name,அறிவியல் பெயர்,
 "You can define all the tasks which need to carried out for this crop here. The day field is used to mention the day on which the task needs to be carried out, 1 being the 1st day, etc.. ","இங்கே இந்த பயிர் செய்ய வேண்டிய அனைத்து பணிகளையும் நீங்கள் வரையறுக்கலாம். தினம் புலம் பணியில் ஈடுபட வேண்டிய நாள் குறித்து, 1 முதல் நாள், முதலியவை குறிப்பிடப்படுகிறது.",
@@ -5441,7 +5358,6 @@
 To TIme,டைம்,
 Course End Date,நிச்சயமாக முடிவு தேதி,
 Course Topic,பாட தலைப்பு,
-Topic,தலைப்பு,
 Topic Name,தலைப்பு பெயர்,
 Education Settings,கல்வி அமைப்புகள்,
 Current Academic Year,தற்போதைய கல்வி ஆண்டு,
@@ -5516,7 +5432,6 @@
 Check this if the Student is residing at the Institute's Hostel.,மாணவர் நிறுவனத்தின் விடுதி வசிக்கிறார் இந்த பாருங்கள்.,
 Walking,வாக்கிங்,
 Institute's Bus,இன்ஸ்டிடியூஸ் பஸ்,
-Public Transport,பொது போக்குவரத்து,
 Self-Driving Vehicle,சுயமாக ஓட்டும் வாகன,
 Pick/Drop by Guardian,/ கார்டியன் மூலம் டிராப் எடு,
 Enrolled courses,சேர்ந்துள்ள பாடத்திட்டங்கள்,
@@ -5697,7 +5612,6 @@
 Default Cost Center,இயல்புநிலை விலை மையம்,
 Undeposited Funds Account,Undeposited நிதி கணக்கு,
 Shopify Log,Shopify பதிவு,
-Request Data,தரவு கோரிக்கை,
 Shopify Settings,Shopify அமைப்புகள்,
 status html,நிலை HTML,
 Enable Shopify,Shopify ஐ இயக்கு,
@@ -5817,7 +5731,6 @@
 Exercise Instructions,உடற்பயிற்சி வழிமுறைகள்,
 Exercise Video,வீடியோவை உடற்பயிற்சி செய்யுங்கள்,
 Exercise Steps,உடற்பயிற்சி படிகள்,
-Steps,படிகள்,
 Steps Table,படிகள் அட்டவணை,
 Exercise Type Step,உடற்பயிற்சி வகை படி,
 Max number of visit,விஜயத்தின் அதிகபட்ச எண்ணிக்கை,
@@ -6001,7 +5914,6 @@
 Patient Encounter Symptom,நோயாளி சந்திப்பு அறிகுறி,
 HLC-PMR-.YYYY.-,ஹெச்எல்சி-பிஎம்ஆர்-.YYYY.-,
 Attach Medical Record,மருத்துவ பதிவை இணைக்கவும்,
-Reference DocType,குறிப்பு டாக் டைப்,
 Spouse,மனைவி,
 Family,குடும்ப,
 Schedule Details,அட்டவணை விவரங்கள்,
@@ -6983,16 +6895,8 @@
 HTML / Banner that will show on the top of product list.,தயாரிப்பு பட்டியலில் காண்பிக்கும் என்று HTML / பதாகை.,
 Set prefix for numbering series on your transactions,உங்கள் நடவடிக்கைகள் மீது தொடர் எண்ணுவதற்கான முன்னொட்டு அமைக்க,
 Setup Series,அமைப்பு தொடர்,
-Select Transaction,பரிவர்த்தனை தேர்வு,
-Help HTML,HTML உதவி,
-Series List for this Transaction,இந்த பரிவர்த்தனை தொடர் பட்டியல்,
-User must always select,பயனர் எப்போதும் தேர்ந்தெடுக்க வேண்டும்,
-Check this if you want to force the user to select a series before saving. There will be no default if you check this.,நீங்கள் பயனர் சேமிப்பு முன்பு ஒரு தொடர் தேர்ந்தெடுக்க கட்டாயப்படுத்தும் விரும்பினால் இந்த சோதனை. இந்த சோதனை என்றால் இல்லை இயல்பாக இருக்கும்.,
 Update Series,மேம்படுத்தல் தொடர்,
 Change the starting / current sequence number of an existing series.,ஏற்கனவே தொடரில் தற்போதைய / தொடக்க வரிசை எண் மாற்ற.,
-Prefix,முற்சேர்க்கை,
-This is the number of the last created transaction with this prefix,இந்த முன்னொட்டு கடந்த உருவாக்கப்பட்ட பரிவர்த்தனை எண்ணிக்கை,
-Update Series Number,மேம்படுத்தல் தொடர் எண்,
 Quotation Lost Reason,மேற்கோள் காரணம் லாஸ்ட்,
 A third party distributor / dealer / commission agent / affiliate / reseller who sells the companies products for a commission.,கமிஷன் நிறுவனங்கள் பொருட்கள் விற்கும் ஒரு மூன்றாம் தரப்பு விநியோகஸ்தராக / வியாபாரி / கமிஷன் முகவர் / இணைப்பு / விற்பனையாளரை.,
 Sales Partner Name,விற்பனை வரன்வாழ்க்கை துணை பெயர்,
@@ -7687,7 +7591,6 @@
 Warehouse wise Item Balance Age and Value,கிடங்கு வாரியாக பொருள் இருப்பு வயது மற்றும் மதிப்பு,
 Work Order Stock Report,வேலை ஆணை பங்கு அறிக்கை,
 Work Orders in Progress,வேலை ஆணைகள் முன்னேற்றம்,
-Validation Error,சரிபார்ப்பு பிழை,
 Automatically Process Deferred Accounting Entry,ஒத்திவைக்கப்பட்ட கணக்கியல் உள்ளீட்டை தானாக செயலாக்குங்கள்,
 Bank Clearance,வங்கி அனுமதி,
 Bank Clearance Detail,வங்கி அனுமதி விவரம்,
@@ -7724,45 +7627,7 @@
 Therapy Plan: ,சிகிச்சை திட்டம்:,
 Total Counts Targeted: ,மொத்த எண்ணிக்கைகள் இலக்கு:,
 Total Counts Completed: ,மொத்த எண்ணிக்கைகள் முடிந்தது:,
-Andaman and Nicobar Islands,அந்தமான் மற்றும் நிக்கோபார் தீவுகள்,
-Andhra Pradesh,ஆந்திரா,
-Arunachal Pradesh,அருணாச்சல பிரதேசம்,
-Assam,அசாம்,
-Bihar,பீகார்,
-Chandigarh,சண்டிகர்,
-Chhattisgarh,சத்தீஸ்கர்,
-Dadra and Nagar Haveli,தாத்ரா மற்றும் நகர் ஹவேலி,
-Daman and Diu,தமன் மற்றும் டியு,
-Delhi,டெல்லி,
-Goa,கோவா,
-Gujarat,குஜராத்,
-Haryana,ஹரியானா,
-Himachal Pradesh,இமாச்சல பிரதேசம்,
-Jammu and Kashmir,ஜம்மு-காஷ்மீர்,
-Jharkhand,ஜார்க்கண்ட்,
-Karnataka,கர்நாடகா,
-Kerala,கேரளா,
-Lakshadweep Islands,லட்சத்தீவு தீவுகள்,
-Madhya Pradesh,மத்தியப் பிரதேசம்,
-Maharashtra,மகாராஷ்டிரா,
-Manipur,மணிப்பூர்,
-Meghalaya,மேகாலயா,
-Mizoram,மிசோரம்,
-Nagaland,நாகாலாந்து,
-Odisha,ஒடிசா,
-Other Territory,பிற பகுதி,
-Pondicherry,பாண்டிச்சேரி,
-Punjab,பஞ்சாப்,
-Rajasthan,ராஜஸ்தான்,
-Sikkim,சிக்கிம்,
-Tamil Nadu,தமிழ்நாடு,
-Telangana,தெலுங்கானா,
-Tripura,திரிபுரா,
-Uttar Pradesh,உத்தரபிரதேசம்,
-Uttarakhand,உத்தரகண்ட்,
-West Bengal,மேற்கு வங்கம்,
 Is Mandatory,அத்தியாவசியமானதாகும்,
-Published on,அன்று வெளியிடப்பட்டது,
 Service Received But Not Billed,சேவை பெறப்பட்டது ஆனால் கட்டணம் செலுத்தப்படவில்லை,
 Deferred Accounting Settings,ஒத்திவைக்கப்பட்ட கணக்கியல் அமைப்புகள்,
 Book Deferred Entries Based On,புத்தக ஒத்திவைக்கப்பட்ட உள்ளீடுகள் அடிப்படையில்,
@@ -8035,8 +7900,6 @@
 Worksheet Instructions,பணித்தாள் வழிமுறைகள்,
 Result Legend Print,முடிவு லெஜண்ட் அச்சு,
 Print Position,அச்சு நிலை,
-Bottom,கீழே,
-Top,மேலே,
 Both,இருவரும்,
 Result Legend,முடிவு புராணக்கதை,
 Lab Tests,ஆய்வக சோதனைகள்,
@@ -8081,12 +7944,10 @@
 Approvers,ஒப்புதல்கள்,
 The first Approver in the list will be set as the default Approver.,பட்டியலில் முதல் ஒப்புதல் இயல்புநிலை ஒப்புதலாக அமைக்கப்படும்.,
 Shift Request Approver,ஷிப்ட் கோரிக்கை ஒப்புதல்,
-PAN Number,பான் எண்,
 Provident Fund Account,வருங்கால வைப்பு நிதி கணக்கு,
 MICR Code,MICR குறியீடு,
 Repay unclaimed amount from salary,கோரப்படாத தொகையை சம்பளத்திலிருந்து திருப்பிச் செலுத்துங்கள்,
 Deduction from salary,சம்பளத்திலிருந்து கழித்தல்,
-Expired Leaves,காலாவதியான இலைகள்,
 If this is not checked the loan by default will be considered as a Demand Loan,"இது சரிபார்க்கப்படாவிட்டால், இயல்புநிலையாக கடன் தேவை கடனாக கருதப்படும்",
 This account is used for booking loan repayments from the borrower and also disbursing loans to the borrower,கடன் வாங்கியவரிடமிருந்து கடன் திருப்பிச் செலுத்துவதற்கு முன்பதிவு செய்வதற்கும் கடன் வாங்கியவருக்கு கடன்களை வழங்குவதற்கும் இந்த கணக்கு பயன்படுத்தப்படுகிறது,
 This account is capital account which is used to allocate capital for loan disbursal account ,"இந்த கணக்கு மூலதன கணக்கு ஆகும், இது கடன் வழங்கல் கணக்கிற்கு மூலதனத்தை ஒதுக்க பயன்படுகிறது",
@@ -8844,3 +8705,41 @@
 Creating Purchase Order ...,கொள்முதல் ஆணையை உருவாக்குதல் ...,
 "Select a Supplier from the Default Suppliers of the items below. On selection, a Purchase Order will be made against items belonging to the selected Supplier only.","கீழே உள்ள பொருட்களின் இயல்புநிலை சப்ளையர்களிடமிருந்து ஒரு சப்ளையரைத் தேர்ந்தெடுக்கவும். தேர்ந்தெடுக்கும் போது, தேர்ந்தெடுக்கப்பட்ட சப்ளையருக்கு மட்டுமே சொந்தமான பொருட்களுக்கு எதிராக கொள்முதல் ஆணை செய்யப்படும்.",
 Row #{}: You must select {} serial numbers for item {}.,வரிசை # {}: நீங்கள் item item உருப்படிக்கு {} வரிசை எண்களைத் தேர்ந்தெடுக்க வேண்டும்.,
+Add Comment,கருத்து சேர்,
+More...,மேலும் ...,
+Notes,குறிப்புகள்,
+Payment Gateway,பணம் நுழைவாயில்,
+Payment Gateway Name,கட்டணம் நுழைவாயில் பெயர்,
+Payments,பணம்,
+Plan Name,திட்டத்தின் பெயர்,
+Portal,போர்டல்,
+Scan Barcode,பார்கோடு ஸ்கேன்,
+Some information is missing,சில தகவல்கள் இல்லை உள்ளது,
+Successful,வெற்றிகரமான,
+Tools,கருவிகள்,
+Use Sandbox,சாண்ட்பாக்ஸினைப் பயன்படுத்தவும்,
+Busy,பிஸி,
+Completed By,நிறைவு செய்தவர்,
+Payment Failed,கொடுப்பனவு தோல்வி,
+Column {0},நெடுவரிசை {0},
+Field Mapping,புலம் மேப்பிங்,
+Not Specified,குறிப்பிடப்படவில்லை,
+Update Type,புதுப்பிப்பு வகை,
+Dr,டாக்டர்,
+End Time,முடிவு நேரம்,
+Fetching...,பெறுகிறது ...,
+"It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","சர்வர் ஸ்ட்ரீப் கட்டமைப்பில் சிக்கல் இருப்பதாகத் தோன்றுகிறது. தோல்வி ஏற்பட்டால், உங்கள் கணக்கில் பணம் திரும்பப்பெறப்படும்.",
+Looks like someone sent you to an incomplete URL. Please ask them to look into it.,"ஒருவர், ஒரு முழுமையற்ற URL ஐ அனுப்பி போல் தெரிகிறது. அதை பார்க்க கூறவும்.",
+Master,தலைவன்,
+Pay,செலுத்த,
+You can also copy-paste this link in your browser,நீங்கள் உங்கள் உலாவியில் இந்த இணைப்பை நகலெடுத்து முடியும்,
+Verified By,மூலம் சரிபார்க்கப்பட்ட,
+Invalid naming series (. missing) for {0},{0 for க்கு தவறான பெயரிடும் தொடர் (. காணவில்லை),
+Phone Number,தொலைபேசி எண்,
+Account SID,கணக்கு SID,
+Global Defaults,உலக இயல்புநிலைகளுக்கு,
+Is Mandatory,அத்தியாவசியமானதாகும்,
+WhatsApp,பகிரி,
+Make a call,அழைப்பு விடுங்கள்,
+Approve,ஒப்புதல்,
+Reject,நிராகரி,
diff --git a/erpnext/translations/te.csv b/erpnext/translations/te.csv
index 83d9c8c..8472163 100644
--- a/erpnext/translations/te.csv
+++ b/erpnext/translations/te.csv
@@ -113,7 +113,6 @@
 Add Items,అంశాలు జోడించండి,
 Add Leads,లీడ్స్ జోడించండి,
 Add Multiple Tasks,బహుళ విధులను జోడించండి,
-Add Row,రో జోడించండి,
 Add Sales Partners,సేల్స్ భాగస్వాములు జోడించండి,
 Add Serial No,సీరియల్ లేవు జోడించండి,
 Add Students,స్టూడెంట్స్ జోడించండి,
@@ -211,9 +210,7 @@
 An error occurred during the update process,నవీకరణ ప్రాసెస్ సమయంలో లోపం సంభవించింది,
 "An item exists with same name ({0}), please change the item group name or rename the item","ఒక అంశం అదే పేరుతో ({0}), అంశం గుంపు పేరు మార్చడానికి లేదా అంశం పేరు దయచేసి",
 Analyst,అనలిస్ట్,
-Analytics,విశ్లేషణలు,
 Annual Billing: {0},వార్షిక బిల్లింగ్: {0},
-Anonymous,అనామక,
 Another Budget record '{0}' already exists against {1} '{2}' and account '{3}' for fiscal year {4},మరో బడ్జెట్ రికార్డ్ &#39;{0}&#39; ఇప్పటికే {1} &#39;{2}&#39; కు వ్యతిరేకంగా ఉంది మరియు {4} ఆర్థిక సంవత్సరానికి ఖాతా {{3} &#39;,
 Another Period Closing Entry {0} has been made after {1},మరో కాలం ముగింపు ఎంట్రీ {0} తర్వాత జరిగింది {1},
 Another Sales Person {0} exists with the same Employee id,మరో సేల్స్ పర్సన్ {0} అదే ఉద్యోగి ఐడితో ఉంది,
@@ -283,14 +280,12 @@
 Attendance not submitted for {0} as {1} on leave.,సెలవులో {0} {0} గా హాజరు కావడం లేదు.,
 Attribute table is mandatory,లక్షణం పట్టిక తప్పనిసరి,
 Attribute {0} selected multiple times in Attributes Table,లక్షణం {0} గుణాలు పట్టిక పలుమార్లు ఎంపిక,
-Author,రచయిత,
 Authorized Signatory,సంతకం పెట్టడానికి అధికారం,
 Auto Material Requests Generated,ఆటో మెటీరియల్ అభ్యర్థనలు రూపొందించినవి,
 Auto Repeat,ఆటో రిపీట్,
 Auto repeat document updated,ఆటో రిపీట్ పత్రం నవీకరించబడింది,
 Automotive,ఆటోమోటివ్,
 Available,అందుబాటులో,
-Available Leaves,అందుబాటులో ఉన్న ఆకులు,
 Available Qty,అందుబాటులో ప్యాక్ చేసిన అంశాల,
 Available Selling,అందుబాటులో సెల్లింగ్,
 Available for use date is required,ఉపయోగ తేదీ కోసం అందుబాటులో ఉంది,
@@ -340,7 +335,6 @@
 Base URL,బేస్ URL,
 Based On,ఆధారంగా,
 Based On Payment Terms,చెల్లింపు నిబంధనల ఆధారంగా,
-Basic,ప్రాథమిక,
 Batch,బ్యాచ్,
 Batch Entries,బ్యాచ్ ఎంట్రీలు,
 Batch ID is mandatory,బ్యాచ్ ID తప్పనిసరి,
@@ -361,7 +355,6 @@
 Billable Hours,బిల్ చేయదగిన గంటలు,
 Billed,బిల్,
 Billed Amount,బిల్ మొత్తం,
-Billing,బిల్లింగ్,
 Billing Address,రశీదు చిరునామా,
 Billing Address is same as Shipping Address,బిల్లింగ్ చిరునామా షిప్పింగ్ చిరునామా వలె ఉంటుంది,
 Billing Amount,బిల్లింగ్ మొత్తం,
@@ -560,7 +553,6 @@
 Consumed Qty,సేవించాలి ప్యాక్ చేసిన అంశాల,
 Consumer Products,కన్జ్యూమర్ ప్రొడక్ట్స్,
 Contact,సంప్రదించండి,
-Contact Details,సంప్రదింపు వివరాలు,
 Contact Us,మమ్మల్ని సంప్రదించండి,
 Content,కంటెంట్,
 Content Masters,కంటెంట్ మాస్టర్స్,
@@ -715,7 +707,6 @@
 Date of Joining,చేరిన తేదీ,
 Date of Joining must be greater than Date of Birth,చేరిన తేదీ పుట్టిన తేది కంటే ఎక్కువ ఉండాలి,
 Date of Transaction,లావాదేవీ తేదీ,
-Datetime,తేదీసమయం,
 Day,డే,
 Debit,డెబిట్,
 Debit ({0}),డెబిట్ ({0}),
@@ -874,7 +865,6 @@
 Employee cannot report to himself.,Employee తనను రిపోర్ట్ చేయలేరు.,
 Employee {0} has already applied for {1} between {2} and {3} : ,ఉద్యోగి {0 already ఇప్పటికే {1} కోసం {2} మరియు {3 between మధ్య దరఖాస్తు చేసుకున్నారు:,
 Employee {0} of grade {1} have no default leave policy,గ్రేడ్ {1} యొక్క ఉద్యోగి {0} డిఫాల్ట్ లీక్ విధానాన్ని కలిగి లేరు,
-Enable,ప్రారంభించు,
 Enable / disable currencies.,/ డిసేబుల్ కరెన్సీలు ప్రారంభించు.,
 Enabled,ప్రారంభించబడ్డ,
 "Enabling 'Use for Shopping Cart', as Shopping Cart is enabled and there should be at least one Tax Rule for Shopping Cart","సమర్ధించే షాపింగ్ కార్ట్ ప్రారంభించబడింది వంటి, &#39;షాపింగ్ కార్ట్ ఉపయోగించండి&#39; మరియు షాపింగ్ కార్ట్ కోసం కనీసం ఒక పన్ను రూల్ ఉండాలి",
@@ -905,7 +895,6 @@
 Error: Not a valid id?,లోపం: చెల్లని ఐడి?,
 Estimated Cost,అంచనా వ్యయం,
 "Even if there are multiple Pricing Rules with highest priority, then following internal priorities are applied:","అధిక ప్రాధాన్యతతో బహుళ ధర రూల్స్ ఉన్నాయి ఒకవేళ, అప్పుడు క్రింది అంతర్గత ప్రాధాన్యతలను అమలవుతాయి:",
-Event,ఈవెంట్,
 Exchange Gain/Loss,ఎక్స్చేంజ్ పెరుగుట / నష్టం,
 Exchange Rate Revaluation master.,మార్పిడి రేటు రీవాల్యుయేషన్ మాస్టర్.,
 Exchange Rate must be same as {0} {1} ({2}),ఎక్స్చేంజ్ రేట్ అదే ఉండాలి {0} {1} ({2}),
@@ -1032,7 +1021,6 @@
 From value must be less than to value in row {0},విలువ వరుసగా విలువ కంటే తక్కువ ఉండాలి నుండి {0},
 From {0} | {1} {2},నుండి {0} | {1} {2},
 Fulfillment,నిర్వాహ,
-Full,పూర్తి,
 Full Name,పూర్తి పేరు,
 Fully Depreciated,పూర్తిగా విలువ తగ్గుతున్న,
 Furnitures and Fixtures,సామాగ్రీ మరియు ఫిక్స్చర్స్,
@@ -1133,7 +1121,6 @@
 Hub Sync ID,హబ్ సమకాలీకరణ ID,
 Human Resource,మానవ వనరుల,
 Human Resources,మానవ వనరులు,
-IFSC Code,IFSC కోడ్,
 IGST Amount,IGST మొత్తం,
 IP Address,IP చిరునామా,
 ITC Available (whether in full op part),ఐటిసి అందుబాటులో ఉంది (పూర్తిస్థాయిలో ఉన్నా),
@@ -1185,7 +1172,6 @@
 Ineligible ITC,అనర్హమైన ఐటిసి,
 Initiated,ప్రారంభించిన,
 Inpatient Record,ఇన్పేషెంట్ రికార్డ్,
-Insert,చొప్పించు,
 Installation Note,సంస్థాపన సూచన,
 Installation Note {0} has already been submitted,సంస్థాపన సూచన {0} ఇప్పటికే సమర్పించబడింది,
 Installation date cannot be before delivery date for Item {0},సంస్థాపన తేదీ అంశం కోసం డెలివరీ తేదీ ముందు ఉండరాదు {0},
@@ -1197,7 +1183,6 @@
 Insurance Start date should be less than Insurance End date,భీమా తేదీ ప్రారంభించండి భీమా ముగింపు తేదీ కంటే తక్కువ ఉండాలి,
 Integrated Tax,ఇంటిగ్రేటెడ్ టాక్స్,
 Inter-State Supplies,ఇంటర్-స్టేట్ సప్లైస్,
-Interests,అభిరుచులు,
 Internet Publishing,ఇంటర్నెట్ పబ్లిషింగ్,
 Intra-State Supplies,ఇంట్రా-స్టేట్ సామాగ్రి,
 Introduction,పరిచయం,
@@ -1316,7 +1301,6 @@
 Lab testing datetime cannot be before collection datetime,ల్యాబ్ టెస్టింగ్ తేదీసమయం సేకరణ తేదీకి ముందు ఉండదు,
 Label,లేబుల్,
 Laboratory,ప్రయోగశాల,
-Language Name,భాష పేరు,
 Large,పెద్ద,
 Last Communication,చివరి కమ్యూనికేషన్,
 Last Communication Date,చివరి కమ్యూనికేషన్ తేదీ,
@@ -1347,8 +1331,6 @@
 Letter Heads for print templates.,ముద్రణ టెంప్లేట్లు లెటర్ హెడ్స్.,
 Level,స్థాయి,
 Liability,బాధ్యత,
-License,లైసెన్సు,
-Limit,పరిమితి,
 Limit Crossed,పరిమితి దాటి,
 Link to Material Request,మెటీరియల్ అభ్యర్థనకు లింక్,
 List of all share transactions,అన్ని వాటా లావాదేవీల జాబితా,
@@ -1359,7 +1341,6 @@
 Loans (Liabilities),రుణాలు (లయబిలిటీస్),
 Loans and Advances (Assets),రుణాలు మరియు అడ్వాన్సెస్ (ఆస్తులు),
 Local,స్థానిక,
-Log,లోనికి ప్రవేశించండి,
 Logs for maintaining sms delivery status,SMS పంపిణీ స్థితి నిర్వహించాల్సిన దినచర్య,
 Lost,లాస్ట్,
 Lost Reasons,కోల్పోయిన కారణాలు,
@@ -1445,7 +1426,6 @@
 Medical Department,మెడికల్ డిపార్ట్మెంట్,
 Medical Record,మెడికల్ రికార్డు,
 Medium,మీడియం,
-Meeting,సమావేశం,
 Member Activity,సభ్యుని కార్యాచరణ,
 Member ID,సభ్యుడు ID,
 Member Name,సభ్యుని పేరు,
@@ -1495,7 +1475,6 @@
 Multiple Variants,బహుళ వైవిధ్యాలు,
 Multiple fiscal years exist for the date {0}. Please set company in Fiscal Year,బహుళ ఆర్థిక సంవత్సరాలలో తేదీ {0} ఉన్నాయి. ఫిస్కల్ ఇయర్ లో కంపెనీని స్థాపించారు దయచేసి,
 Music,సంగీతం,
-My Account,నా ఖాతా,
 Name error: {0},దోషం: {0},
 Name of new Account. Note: Please don't create accounts for Customers and Suppliers,కొత్త ఖాతా యొక్క పేరు. గమనిక: వినియోగదారులు మరియు సరఫరాదారులతో కోసం ఖాతాలను సృష్టించడం లేదు దయచేసి,
 Name or Email is mandatory,పేరు లేదా ఇమెయిల్ తప్పనిసరి,
@@ -1538,7 +1517,6 @@
 New credit limit is less than current outstanding amount for the customer. Credit limit has to be atleast {0},క్రొత్త క్రెడిట్ పరిమితి కస్టమర్ ప్రస్తుత అసాధారణ మొత్తం కంటే తక్కువగా ఉంటుంది. క్రెడిట్ పరిమితి కనీసం ఉండాలి {0},
 New task,క్రొత్త విధిని,
 New {0} pricing rules are created,క్రొత్త {0} ధర నియమాలు సృష్టించబడతాయి,
-Newsletters,వార్తాలేఖలు,
 Newspaper Publishers,వార్తాపత్రిక ప్రచురణ,
 Next,తదుపరి,
 Next Contact By cannot be same as the Lead Email Address,తదుపరి సంప్రదించండి ద్వారా లీడ్ ఇమెయిల్ అడ్రస్ అదే ఉండకూడదు,
@@ -1686,7 +1664,6 @@
 Other,ఇతర,
 Other Reports,ఇతర నివేదికలు,
 "Other outward supplies(Nil rated,Exempted)","ఇతర బాహ్య సామాగ్రి (నిల్ రేట్, మినహాయింపు)",
-Others,ఇతరత్రా,
 Out Qty,ప్యాక్ చేసిన అంశాల అవుట్,
 Out Value,అవుట్ విలువ,
 Out of Order,పనిచేయటంలేదు,
@@ -1726,7 +1703,6 @@
 Party Type and Party is mandatory for {0} account,{0} ఖాతా కోసం పార్టీ పద్ధతి మరియు పార్టీ తప్పనిసరి,
 Party Type is mandatory,పార్టీ టైప్ తప్పనిసరి,
 Party is mandatory,పార్టీ తప్పనిసరి,
-Password,పాస్వర్డ్,
 Past Due Date,గత తేదీ తేదీ,
 Patient,రోగి,
 Patient Appointment,పేషెంట్ నియామకం,
@@ -1784,7 +1760,6 @@
 Pharmaceutical,ఫార్మాస్యూటికల్,
 Pharmaceuticals,ఫార్మాస్యూటికల్స్,
 Physician,వైద్యుడు,
-Pincode,పిన్కోడు,
 Place Of Supply (State/UT),సరఫరా స్థలం (రాష్ట్రం / యుటి),
 Place Order,ప్లేస్ ఆర్డర్,
 Plan Name,ప్రణాళిక పేరు,
@@ -1896,7 +1871,6 @@
 Please select date,దయచేసి తేదీని ఎంచుకోండి,
 Please select item code,అంశం కోడ్ దయచేసి ఎంచుకోండి,
 Please select month and year,నెల మరియు సంవత్సరం దయచేసి ఎంచుకోండి,
-Please select prefix first,మొదటి ఉపసర్గ దయచేసి ఎంచుకోండి,
 Please select the Company,దయచేసి కంపెనీని ఎంచుకోండి,
 Please select the Multiple Tier Program type for more than one collection rules.,ఒకటి కంటే ఎక్కువ సేకరణ నిబంధనలకు బహుళ టైర్ ప్రోగ్రామ్ రకాన్ని ఎంచుకోండి.,
 Please select the assessment group other than 'All Assessment Groups',దయచేసి &#39;అన్ని అసెస్మెంట్ గుంపులు&#39; కంటే ఇతర అంచనా సమూహం ఎంచుకోండి,
@@ -1913,7 +1887,6 @@
 Please set Company filter blank if Group By is 'Company',కంపెనీ ఖాళీ ఫిల్టర్ సెట్ చేయండి బృందంచే &#39;కంపెనీ&#39; ఉంది,
 Please set Default Payroll Payable Account in Company {0},కంపెనీ డిఫాల్ట్ పేరోల్ చెల్లించవలసిన ఖాతా సెట్ దయచేసి {0},
 Please set Depreciation related Accounts in Asset Category {0} or Company {1},ఆస్తి వర్గం {0} లేదా కంపెనీ లో అరుగుదల సంబంధించిన అకౌంట్స్ సెట్ దయచేసి {1},
-Please set Email Address,ఇమెయిల్ అడ్రస్ సెట్ దయచేసి,
 Please set GST Accounts in GST Settings,దయచేసి GST సెట్టింగులలో GST ఖాతాలను సెట్ చేయండి,
 Please set Hotel Room Rate on {},దయచేసి {@} పై హోటల్ రూట్ రేటును సెట్ చేయండి,
 Please set Number of Depreciations Booked,దయచేసి Depreciations సంఖ్య బుక్ సెట్,
@@ -1936,7 +1909,6 @@
 Please set the Email ID for the Student to send the Payment Request,దయచేసి చెల్లింపు అభ్యర్థనను పంపడానికి స్టూడెంట్ కోసం ఇమెయిల్ ID ని సెట్ చేయండి,
 Please set the Item Code first,దయచేసి మొదటి అంశం కోడ్ను సెట్ చేయండి,
 Please set the Payment Schedule,దయచేసి చెల్లింపు షెడ్యూల్ను సెట్ చేయండి,
-Please set the series to be used.,దయచేసి ఉపయోగించవలసిన శ్రేణిని సెట్ చేయండి.,
 Please set {0} for address {1},దయచేసి చిరునామాకు {0} {0},
 Please setup Students under Student Groups,స్టూడెంట్ గుంపుల క్రింద విద్యార్థులు సెటప్ చేయండి,
 Please specify Company,కంపెనీ రాయండి,
@@ -1953,7 +1925,6 @@
 Point-of-Sale,పాయింట్ ఆఫ్ అమ్మకానికి,
 Point-of-Sale Profile,పాయింట్ ఆఫ్ అమ్మకానికి ప్రొఫైల్,
 Portal,పోర్టల్,
-Portal Settings,పోర్టల్ సెట్టింగులు,
 Possible Supplier,సాధ్యమైన సరఫరాదారు,
 Postal Expenses,పోస్టల్ ఖర్చులు,
 Posting Date,పోస్ట్ చేసిన తేదీ,
@@ -2152,12 +2123,10 @@
 Reference No is mandatory if you entered Reference Date,మీరు ప్రస్తావన తేదీ ఎంటర్ చేస్తే ప్రస్తావన తప్పనిసరి,
 Reference No.,సూచి సంఖ్య.,
 Reference Number,సూచన సంఖ్య,
-Reference Owner,రిఫరెన్స్ యజమాని,
 Reference Type,సూచన టైప్,
 "Reference: {0}, Item Code: {1} and Customer: {2}","సూచన: {0}, Item కోడ్: {1} మరియు కస్టమర్: {2}",
 References,సూచనలు,
 Refresh Token,రిఫ్రెష్ టోకెన్,
-Region,ప్రాంతం,
 Register,నమోదు,
 Rejected,తిరస్కరించబడిన,
 Related,సంబంధిత,
@@ -2179,7 +2148,6 @@
 Replace BOM and update latest price in all BOMs,"BOM ని పునఃస్థాపించి, అన్ని BOM లలో తాజా ధరను నవీకరించండి",
 Replied,బదులిచ్చారు,
 Report,నివేదిక,
-Report Builder,నివేదిక బిల్డర్,
 Report Type,నివేదిక రకం,
 Report Type is mandatory,నివేదిక రకం తప్పనిసరి,
 Reports,నివేదికలు,
@@ -2355,13 +2323,11 @@
 Same Company is entered more than once,అదే కంపెనీ ఒకసారి కంటే ఎక్కువ ఎంటర్ ఉంది,
 Same item cannot be entered multiple times.,అదే అంశం అనేకసార్లు ఎంటర్ చేయలేరు.,
 Same supplier has been entered multiple times,అదే సరఫరాదారు అనేకసార్లు నమోదు చేసిన,
-Sample,నమూనా,
 Sample Collection,నమూనా కలెక్షన్,
 Sample quantity {0} cannot be more than received quantity {1},నమూనా పరిమాణం {0} పొందింది కంటే ఎక్కువ కాదు {1},
 Sanctioned,మంజూరు,
 Sand,ఇసుక,
 Saturday,శనివారం,
-Saved,సేవ్,
 Saving {0},సేవ్ చేయడం {0},
 Scan Barcode,బార్‌కోడ్‌ను స్కాన్ చేయండి,
 Schedule,షెడ్యూల్,
@@ -2463,7 +2429,6 @@
 Series Updated,సిరీస్ నవీకరించబడింది,
 Series Updated Successfully,సిరీస్ విజయవంతంగా నవీకరించబడింది,
 Series is mandatory,సిరీస్ తప్పనిసరి,
-Series {0} already used in {1},ఇప్పటికే ఉపయోగించిన సిరీస్ {0} {1},
 Service,సర్వీస్,
 Service Level Agreement,సేవా స్థాయి ఒప్పందం,
 Service Level Agreement.,సేవా స్థాయి ఒప్పందం.,
@@ -2479,7 +2444,6 @@
 Set Tax Rule for shopping cart,షాపింగ్ కార్ట్ సెట్ పన్ను రూల్,
 Set as Closed,ముగించబడినది గా సెట్,
 Set as Completed,పూర్తయినట్లు సెట్ చేయండి,
-Set as Default,డిఫాల్ట్ గా సెట్,
 Set as Lost,లాస్ట్ గా సెట్,
 Set as Open,ఓపెన్ గా సెట్,
 Set default inventory account for perpetual inventory,శాశ్వత జాబితా కోసం డిఫాల్ట్ జాబితా ఖాతా సెట్,
@@ -2511,7 +2475,6 @@
 Shareholder,వాటాదారు,
 Ship To State,రాష్ట్రం షిప్,
 Shipments,ప్యాకేజీల,
-Shipping,షిప్పింగ్,
 Shipping Address,షిప్పింగ్ చిరునామా,
 "Shipping Address does not have country, which is required for this Shipping Rule",ఈ షిప్పింగ్ రూల్ కోసం షిప్పింగ్ అడ్రస్కు దేశం లేదు,
 Shipping rule only applicable for Buying,కొనుగోలు చేయడానికి మాత్రమే వర్తించే షిప్పింగ్ నియమం,
@@ -2564,7 +2527,6 @@
 Split Batch,స్ప్లిట్ బ్యాచ్,
 Split Issue,స్ప్లిట్ ఇష్యూ,
 Sports,క్రీడలు,
-Standard,ప్రామాణిక,
 Standard Buying,ప్రామాణిక కొనుగోలు,
 Standard Selling,ప్రామాణిక సెల్లింగ్,
 Standard contract terms for Sales or Purchase.,సేల్స్ లేదా కొనుగోలు ప్రామాణిక ఒప్పందం నిబంధనలు.,
@@ -2731,7 +2693,6 @@
 Terms and Conditions,నిబంధనలు మరియు షరతులు,
 Terms and Conditions Template,నియమాలు మరియు నిబంధనలు మూస,
 Territory,భూభాగం,
-Test,టెస్ట్,
 Thank you for your business!,మీ వ్యాపారానికి ధన్యవాదములు!,
 The 'From Package No.' field must neither be empty nor it's value less than 1.,&#39;ప్యాకేజీ సంఖ్య నుండి&#39; ఫీల్డ్ ఖాళీగా ఉండకూడదు లేదా అది విలువ 1 కంటే తక్కువగా ఉండాలి.,
 The Brand,బ్రాండ్,
@@ -2848,7 +2809,6 @@
 Total (Without Tax),మొత్తం (పన్ను లేకుండా),
 Total Achieved,మొత్తం ఆర్జిత,
 Total Actual,యదార్థమైన మొత్తం,
-Total Allocated Leaves,మొత్తం కేటాయించిన ఆకులు,
 Total Amount,మొత్తం డబ్బు,
 Total Amount Credited,మొత్తం మొత్తంలో పొందింది,
 Total Applicable Charges in Purchase Receipt Items table must be same as Total Taxes and Charges,కొనుగోలు స్వీకరణపై అంశాలు పట్టికలో మొత్తం వర్తించే ఛార్జీలు మొత్తం పన్నులు మరియు ఆరోపణలు అదే ఉండాలి,
@@ -2892,7 +2852,6 @@
 Total(Amt),మొత్తం (ఆంట్),
 Total(Qty),మొత్తం () ప్యాక్ చేసిన అంశాల,
 Traceability,కనిపెట్టగలిగే శక్తి,
-Traceback,.ట్రేస్బ్యాక్,
 Track Leads by Lead Source.,లీడ్ సోర్స్ ద్వారా దారితీస్తుంది ట్రాక్.,
 Transaction,లావాదేవీ,
 Transaction Date,లావాదేవీ తేదీ,
@@ -2930,7 +2889,6 @@
 UOM Conversion factor is required in row {0},UoM మార్పిడి అంశం వరుసగా అవసరం {0},
 UOM coversion factor required for UOM: {0} in Item: {1},UoM అవసరం UoM coversion ఫ్యాక్టర్: {0} Item లో: {1},
 URL,URL,
-Unable to find DocType {0},DocType {0} ను కనుగొనడం సాధ్యం కాలేదు,
 Unable to find exchange rate for {0} to {1} for key date {2}. Please create a Currency Exchange record manually,మారక రేటు దొరక్కపోతే {0} కు {1} కీ తేదీ కోసం {2}. దయచేసి కరెన్సీ ఎక్స్ఛేంజ్ రికార్డు మానవీయంగా సృష్టించడానికి,
 Unable to find score starting at {0}. You need to have standing scores covering 0 to 100,{0} వద్ద ప్రారంభమయ్యే స్కోర్ను కనుగొనడం సాధ్యం కాలేదు. మీరు 100 నుండి 100 వరకు ఉన్న స్కోర్లను కలిగి ఉండాలి,
 Unable to find variable: ,వేరియబుల్ని కనుగొనడం సాధ్యం కాదు:,
@@ -2960,7 +2918,6 @@
 Upload your letter head and logo. (you can edit them later).,మీ లేఖ తల మరియు లోగో అప్లోడ్. (మీరు తర్వాత వాటిని సవరించవచ్చు).,
 Upper Income,ఉన్నత ఆదాయపు,
 Use Sandbox,శాండ్బాక్స్ ఉపయోగించండి,
-Used Leaves,వాడిన ఆకులు,
 User,వాడుకరి,
 User ID,వినియోగదారుని గుర్తింపు,
 User ID not set for Employee {0},వాడుకరి ID ఉద్యోగి సెట్ {0},
@@ -3051,7 +3008,6 @@
 Website Settings,వెబ్సైట్ సెట్టింగ్లు,
 Wednesday,బుధవారం,
 Week,వారం,
-Weekdays,వారపు రోజులు,
 Weekly,వీక్లీ,
 "Weight is mentioned,\nPlease mention ""Weight UOM"" too","బరువు \ n దయచేసి చాలా &quot;బరువు UoM&quot; చెప్పలేదు, ప్రస్తావించబడింది",
 Welcome email sent,స్వాగతం ఇమెయిల్ పంపారు,
@@ -3072,7 +3028,6 @@
 Work Order {0} must be submitted,కార్య క్రమాన్ని {0} సమర్పించాలి,
 Work Orders Created: {0},పని ఆర్డర్లు సృష్టించబడ్డాయి: {0},
 Work-in-Progress Warehouse is required before Submit,పని లో ప్రోగ్రెస్ వేర్హౌస్ సమర్పించండి ముందు అవసరం,
-Workflow,వర్క్ఫ్లో,
 Working,వర్కింగ్,
 Working Hours,పని గంటలు,
 Workstation,కార్యక్షేత్ర,
@@ -3102,7 +3057,6 @@
 You need to be a user other than Administrator with System Manager and Item Manager roles to register on Marketplace.,మీరు మార్కెట్ మేనేజర్లో రిజిస్టర్ చేసుకోవడానికి సిస్టమ్ మేనేజర్ మరియు ఐప్యాడ్ మేనేజర్ పాత్రలతో నిర్వాహకుడిగా కాకుండా వేరే వినియోగదారుగా ఉండాలి.,
 You need to be a user with System Manager and Item Manager roles to add users to Marketplace.,మీరు మార్కెట్ నిర్వాహకులకు వినియోగదారులను జోడించడానికి సిస్టమ్ మేనేజర్ మరియు అంశం మేనేజర్ పాత్రలతో వినియోగదారుగా ఉండాలి.,
 You need to be a user with System Manager and Item Manager roles to register on Marketplace.,Marketplace పై రిజిస్టర్ చేయడానికి మీరు సిస్టమ్ మేనేజర్ మరియు Item మేనేజర్ పాత్రలతో ఒక యూజర్గా ఉండాలి.,
-You need to be logged in to access this page,ఈ పేజీని ప్రాప్తి చెయ్యడానికి లాగిన్ అయి అవసరం,
 You need to enable Shopping Cart,మీరు షాపింగ్ కార్ట్ ఎనేబుల్ చెయ్యాలి,
 You will lose records of previously generated invoices. Are you sure you want to restart this subscription?,మీరు గతంలో ఉత్పత్తి చేయబడిన ఇన్వాయిస్ల యొక్క రికార్డులను కోల్పోతారు. మీరు ఖచ్చితంగా ఈ సభ్యత్వాన్ని పునఃప్రారంభించదలిచారా?,
 Your Organization,మీ ఆర్గనైజేషన్,
@@ -3218,7 +3172,6 @@
 Assigned To,కేటాయించిన,
 Chat,చాట్,
 Completed By,ద్వారా పూర్తి,
-County,కౌంటీ,
 Day of Week,వీక్ డే,
 "Dear System Manager,","డియర్ వ్యవస్థ మేనేజర్,",
 Default Value,డిఫాల్ట్ విలువ,
@@ -3229,31 +3182,21 @@
 Fieldtype,Fieldtype,
 Help Articles,Articles సహాయం,
 ID,ID,
-Images,చిత్రాలు,
 Import,దిగుమతి,
 Language,భాషా,
 Likes,ఇష్టాలు,
 Merge with existing,ఇప్పటికే విలీనం,
-Office,ఆఫీసు,
 Orientation,దిశ,
 Parent,మాతృ,
-Passive,నిష్క్రియాత్మక,
 Payment Failed,చెల్లింపు విఫలమైంది,
-Permanent,శాశ్వత,
 Personal,వ్యక్తిగత,
-Plant,ప్లాంట్,
 Post,పోస్ట్,
-Postal,పోస్టల్,
 Postal Code,పోస్టల్ కోడ్,
-Previous,మునుపటి,
 Provider,ప్రొవైడర్,
 Read Only,చదవడానికి మాత్రమే,
 Recipient,స్వీకర్త,
 Reviews,సమీక్షలు,
 Sender,పంపినవారు,
-Shop,షాప్,
-Subsidiary,అనుబంధ,
-There is some problem with the file url: {0},ఫైల్ URL కొన్ని సమస్య ఉంది: {0},
 There were errors while sending email. Please try again.,ఇమెయిల్ పంపడం అయితే కొన్ని లోపాలు ఉన్నాయి. మళ్ళి ప్రయత్నించండి.,
 Values Changed,విలువలు మార్చబడింది,
 or,లేదా,
@@ -3280,19 +3223,16 @@
 Quality Feedback Template,నాణ్యమైన అభిప్రాయ మూస,
 Rules for applying different promotional schemes.,విభిన్న ప్రచార పథకాలను వర్తింపజేయడానికి నియమాలు.,
 Show {0},{0 Show చూపించు,
-"Special Characters except '-', '#', '.', '/', '{{' and '}}' not allowed in naming series {0}","&quot;-&quot;, &quot;#&quot;, &quot;.&quot;, &quot;/&quot;, &quot;{{&quot; మరియు &quot;}}&quot; మినహా ప్రత్యేక అక్షరాలు పేరు పెట్టే సిరీస్‌లో అనుమతించబడవు {0}",
 Target Details,లక్ష్య వివరాలు,
 {0} already has a Parent Procedure {1}.,{0} ఇప్పటికే తల్లిదండ్రుల విధానం {1 has ను కలిగి ఉంది.,
 API,API,
 Annual,వార్షిక,
 Change,మార్చు,
 Contact Email,సంప్రదించండి ఇమెయిల్,
-Export Type,ఎగుమతి రకం,
 From Date,తేదీ నుండి,
 Group By,గ్రూప్ బై,
 Invalid URL,చెల్లని URL,
 Landscape,ప్రకృతి దృశ్యం,
-Last Sync On,చివరి సమకాలీకరణ ఆన్ చేయబడింది,
 Naming Series,నామకరణ సిరీస్,
 No data to export,ఎగుమతి చేయడానికి డేటా లేదు,
 Portrait,చిత్తరువు,
@@ -3302,7 +3242,6 @@
 Show Document,పత్రాన్ని చూపించు,
 Show Traceback,ట్రేస్‌బ్యాక్ చూపించు,
 Video,వీడియో,
-Webhook Secret,వెబ్‌హూక్ సీక్రెట్,
 % Of Grand Total,గ్రాండ్ మొత్తం,
 <b>Company</b> is a mandatory filter.,<b>కంపెనీ</b> తప్పనిసరి వడపోత.,
 <b>From Date</b> is a mandatory filter.,<b>తేదీ నుండి</b> తప్పనిసరి వడపోత.,
@@ -3358,7 +3297,6 @@
 BOM Comparison Tool,BOM పోలిక సాధనం,
 BOM recursion: {0} cannot be child of {1},BOM పునరావృతం: {0} {1 child యొక్క పిల్లవాడు కాదు,
 BOM recursion: {0} cannot be parent or child of {1},BOM పునరావృతం: {0 parent తల్లిదండ్రులు లేదా {1 of సంతానం కాకూడదు,
-Back to Home,తిరిగి ఇంటికి,
 Back to Messages,సందేశాలకు తిరిగి వెళ్ళు,
 Bank Data mapper doesn't exist,బ్యాంక్ డేటా మ్యాపర్ ఉనికిలో లేదు,
 Bank Details,బ్యాంక్ వివరములు,
@@ -3420,7 +3358,6 @@
 Currency,కరెన్సీ,
 Current Status,ప్రస్తుత స్థితి,
 Customer PO,కస్టమర్ పిఒ,
-Customize,అనుకూలీకరించు,
 Daily,డైలీ,
 Date,తేదీ,
 Date of Birth cannot be greater than Joining Date.,చేరిన తేదీ కంటే పుట్టిన తేదీ ఎక్కువ కాదు.,
@@ -3454,7 +3391,6 @@
 ERPNext could not find any matching payment entry,ERPNext సరిపోయే చెల్లింపు ఎంట్రీని కనుగొనలేకపోయింది,
 Earliest Age,ప్రారంభ వయస్సు,
 Edit Details,వివరాలను సవరించండి,
-Edit Profile,ప్రొఫైల్ను సవరించు,
 Either GST Transporter ID or Vehicle No is required if Mode of Transport is Road,రవాణా విధానం రహదారి అయితే జిఎస్‌టి ట్రాన్స్‌పోర్టర్ ఐడి లేదా వెహికల్ నెం అవసరం,
 Email,ఇమెయిల్,
 Email Campaigns,ఇమెయిల్ ప్రచారాలు,
@@ -3482,7 +3418,6 @@
 Fetch Items from Warehouse,గిడ్డంగి నుండి వస్తువులను పొందండి,
 Fetching...,తెస్తోంది ...,
 Field,ఫీల్డ్,
-File Manager,ఫైల్ మేనేజర్,
 Filters,వడపోతలు,
 Finding linked payments,లింక్ చేసిన చెల్లింపులను కనుగొనడం,
 Fleet Management,ఫ్లీట్ మేనేజ్మెంట్,
@@ -3521,7 +3456,6 @@
 Incorrect Warehouse,తప్పు గిడ్డంగి,
 Invalid Barcode. There is no Item attached to this barcode.,చెల్లని బార్‌కోడ్. ఈ బార్‌కోడ్‌కు ఏ అంశం జోడించబడలేదు.,
 Invalid credentials,చెల్లని ఆధారాలు,
-Invite as User,వాడుకరి ఆహ్వానించండి,
 Issue Priority.,ఇష్యూ ప్రాధాన్యత.,
 Issue Type.,ఇష్యూ రకం.,
 "It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","ఇది సర్వర్ యొక్క చారల కాన్ఫిగరేషన్తో సమస్య ఉన్నట్లు తెలుస్తోంది. వైఫల్యం విషయంలో, మీ ఖాతాకు మొత్తం తిరిగి చెల్లించబడుతుంది.",
@@ -3564,7 +3498,6 @@
 New Invoice,కొత్త ఇన్వాయిస్,
 New Payment,కొత్త చెల్లింపు,
 New release date should be in the future,కొత్త విడుదల తేదీ భవిష్యత్తులో ఉండాలి,
-Newsletter,వార్తా,
 No Account matched these filters: {},ఈ ఫిల్టర్‌లతో ఖాతా సరిపోలలేదు: {},
 No communication found.,కమ్యూనికేషన్ కనుగొనబడలేదు.,
 No correct answer is set for {0},Answer 0 for కోసం సరైన సమాధానం సెట్ చేయబడలేదు,
@@ -3640,7 +3573,6 @@
 Please setup a default bank account for company {0},దయచేసి కంపెనీ for 0 for కోసం డిఫాల్ట్ బ్యాంక్ ఖాతాను సెటప్ చేయండి,
 Please specify,పేర్కొనండి,
 Please specify a {0},దయచేసి {0 పేర్కొనండి,lead
-Printing,ప్రింటింగ్,
 Priority,ప్రాధాన్య,
 Priority has been changed to {0}.,ప్రాధాన్యత {0 to కు మార్చబడింది.,
 Priority {0} has been repeated.,ప్రాధాన్యత {0} పునరావృతమైంది.,
@@ -3649,7 +3581,6 @@
 Project,ప్రాజెక్టు,
 Provide the academic year and set the starting and ending date.,విద్యా సంవత్సరాన్ని అందించండి మరియు ప్రారంభ మరియు ముగింపు తేదీని సెట్ చేయండి.,
 Public token is missing for this bank,ఈ బ్యాంకుకు పబ్లిక్ టోకెన్ లేదు,
-Publish,ప్రచురించు,
 Publish 1 Item,1 అంశాన్ని ప్రచురించండి,
 Publish Items,అంశాలను ప్రచురించండి,
 Publish More Items,మరిన్ని అంశాలను ప్రచురించండి,
@@ -3677,7 +3608,6 @@
 Reconciled,రాజీపడి,
 Recruitment,నియామక,
 Red,ఎరుపు,
-Refreshing,రిఫ్రెష్,
 Release date must be in the future,విడుదల తేదీ భవిష్యత్తులో ఉండాలి,
 Relieving Date must be greater than or equal to Date of Joining,ఉపశమన తేదీ చేరిన తేదీ కంటే ఎక్కువ లేదా సమానంగా ఉండాలి,
 Rename,పేరుమార్చు,
@@ -3721,7 +3651,6 @@
 Search for a payment,చెల్లింపు కోసం శోధించండి,
 Search for anything ...,ఏదైనా వెతకండి ...,
 Search results for,కోసం శోధన ఫలితాలు,
-Select All,అన్ని ఎంచుకోండి,
 Select Difference Account,తేడా ఖాతాను ఎంచుకోండి,
 Select a Default Priority.,డిఫాల్ట్ ప్రాధాన్యతను ఎంచుకోండి.,
 Select a company,ఒక సంస్థను ఎంచుకోండి,
@@ -3740,11 +3669,9 @@
 Service Level Agreement has been changed to {0}.,సేవా స్థాయి ఒప్పందం {0 to కు మార్చబడింది.,
 Service Level Agreement was reset.,సేవా స్థాయి ఒప్పందం రీసెట్ చేయబడింది.,
 Service Level Agreement with Entity Type {0} and Entity {1} already exists.,ఎంటిటీ రకం {0} మరియు ఎంటిటీ {1 with తో సేవా స్థాయి ఒప్పందం ఇప్పటికే ఉంది.,
-Set,సెట్,
 Set Meta Tags,మెటా ట్యాగ్‌లను సెట్ చేయండి,
 Set {0} in company {1},కంపెనీ {1} లో {0 Set సెట్ చేయండి,
 Setup,సెటప్,
-Setup Wizard,సెటప్ విజార్డ్,
 Shift Management,Shift నిర్వహణ,
 Show Future Payments,భవిష్యత్ చెల్లింపులను చూపించు,
 Show Linked Delivery Notes,లింక్డ్ డెలివరీ నోట్స్ చూపించు,
@@ -3815,7 +3742,6 @@
 Unreconciled,Unreconciled,
 Unsupported GST Category for E-Way Bill JSON generation,ఇ-వే బిల్ JSON తరం కోసం మద్దతు లేని GST వర్గం,
 Update,నవీకరణ,
-Update Details,వివరాలను నవీకరించండి,
 Update Taxes for Items,వస్తువుల కోసం పన్నులను నవీకరించండి,
 "Upload a bank statement, link or reconcile a bank account","బ్యాంక్ స్టేట్‌మెంట్‌ను అప్‌లోడ్ చేయండి, బ్యాంక్ ఖాతాను లింక్ చేయండి లేదా పునరుద్దరించండి",
 Upload a statement,స్టేట్‌మెంట్‌ను అప్‌లోడ్ చేయండి,
@@ -3839,7 +3765,6 @@
 XML Files Processed,XML ఫైల్స్ ప్రాసెస్ చేయబడ్డాయి,
 Year,ఇయర్,
 Yearly,వార్షిక,
-You,మీరు,
 You are not allowed to enroll for this course,ఈ కోర్సు కోసం నమోదు చేయడానికి మీకు అనుమతి లేదు,
 You are not enrolled in program {0},మీరు program 0 program ప్రోగ్రామ్‌లో నమోదు కాలేదు,
 You can Feature upto 8 items.,మీరు 8 అంశాల వరకు ఫీచర్ చేయవచ్చు.,
@@ -3856,7 +3781,6 @@
 e-Way Bill already exists for this document,ఈ పత్రం కోసం ఇ-వే బిల్ ఇప్పటికే ఉంది,
 woocommerce - {0},woocommerce - {0},
 {0} Coupon used are {1}. Allowed quantity is exhausted,{0 used ఉపయోగించిన కూపన్ {1 are. అనుమతించబడిన పరిమాణం అయిపోయింది,
-{0} Name,{0} పేరు,
 {0} Operations: {1},{0} కార్యకలాపాలు: {1},
 {0} bank transaction(s) created,{0} బ్యాంక్ లావాదేవీ (లు) సృష్టించబడ్డాయి,
 {0} bank transaction(s) created and {1} errors,{0} బ్యాంక్ లావాదేవీ (లు) సృష్టించబడ్డాయి మరియు {1} లోపాలు,
@@ -3875,17 +3799,13 @@
 Total Income,మొత్తం రాబడి,
 Total Income This Year,ఈ సంవత్సరం మొత్తం ఆదాయం,
 Barcode,బార్కోడ్,
-Bold,బోల్డ్,
-Center,సెంటర్,
 Clear,ప్రశాంతంగా,
-Comment,వ్యాఖ్య,
 Comments,వ్యాఖ్యలు,
 DocType,DOCTYPE,
 Download,డౌన్లోడ్,
 Left,ఎడమ,
 Link,లింక్,
 New,న్యూ,
-Not Found,దొరకలేదు,
 Print,ముద్రణ,
 Reference Name,సూచన పేరు,
 Refresh,రిఫ్రెష్,
@@ -3908,7 +3828,6 @@
 Email Id,ఇమెయిల్ ID,
 No,ఏ,
 Reference Doctype,సూచన DOCTYPE,
-User Id,వినియోగదారుని గుర్తింపు,
 Yes,అవును,
 Actual ,వాస్తవ,
 Add to cart,కార్ట్ జోడించు,
@@ -4304,7 +4223,6 @@
 e.g Adjustments for:,ఉదా కోసం సర్దుబాట్లు:,
 Section Subtotal,విభాగం ఉపవిభాగం,
 Section Footer,విభాగం ఫుటర్,
-Position,స్థానం,
 Cash Flow Mapping,క్యాష్ ఫ్లో మాపింగ్,
 Select Maximum Of 1,గరిష్టంగా 1 ను ఎంచుకోండి,
 Is Finance Cost,ఆర్థిక వ్యయం,
@@ -4936,7 +4854,6 @@
 Previous Business Day,మునుపటి బిజినెస్ డే,
 Next Business Day,తదుపరి బిజినెస్ డే,
 Urgent,అర్జంట్,
-Crop,పంట,
 Crop Name,పంట పేరు,
 Scientific Name,శాస్త్రీయ పేరు,
 "You can define all the tasks which need to carried out for this crop here. The day field is used to mention the day on which the task needs to be carried out, 1 being the 1st day, etc.. ","మీరు ఈ పంట కోసం చేపట్టవలసిన అన్ని పనులను నిర్వచించవచ్చు. రోజువారీ ఫీల్డ్ పనిని నిర్వహించవలసిన రోజును పేర్కొనడానికి ఉపయోగించబడింది, 1 వ రోజు, మొదలైనవి.",
@@ -5441,7 +5358,6 @@
 To TIme,సమయం,
 Course End Date,కోర్సు ముగింపు తేదీ,
 Course Topic,కోర్సు అంశం,
-Topic,టాపిక్,
 Topic Name,టాపిక్ పేరు,
 Education Settings,విద్య సెట్టింగులు,
 Current Academic Year,ప్రస్తుత విద్యా సంవత్సరం,
@@ -5516,7 +5432,6 @@
 Check this if the Student is residing at the Institute's Hostel.,విద్యార్థుల సంస్థ హాస్టల్ వద్ద నివసిస్తున్నారు ఉంది అయితే దీన్ని ఎంచుకోండి.,
 Walking,వాకింగ్,
 Institute's Bus,ఇన్స్టిట్యూట్ బస్,
-Public Transport,ప్రజా రవాణా,
 Self-Driving Vehicle,సెల్ఫ్-డ్రైవింగ్ వాహనం,
 Pick/Drop by Guardian,/ గార్డియన్ ద్వారా డ్రాప్ ఎంచుకోండి,
 Enrolled courses,నమోదు చేసుకున్న కోర్సులు,
@@ -5697,7 +5612,6 @@
 Default Cost Center,డిఫాల్ట్ ఖర్చు సెంటర్,
 Undeposited Funds Account,Undeposited ఫండ్స్ ఖాతా,
 Shopify Log,Shopify లాగ్,
-Request Data,డేటాను అభ్యర్థించండి,
 Shopify Settings,Shopify సెట్టింగులు,
 status html,స్థితి html,
 Enable Shopify,Shopify ని ప్రారంభించండి,
@@ -5817,7 +5731,6 @@
 Exercise Instructions,వ్యాయామ సూచనలు,
 Exercise Video,వీడియోను వ్యాయామం చేయండి,
 Exercise Steps,వ్యాయామ దశలు,
-Steps,దశలు,
 Steps Table,స్టెప్స్ టేబుల్,
 Exercise Type Step,వ్యాయామ రకం దశ,
 Max number of visit,సందర్శన యొక్క అత్యధిక సంఖ్య,
@@ -6001,7 +5914,6 @@
 Patient Encounter Symptom,రోగి ఎన్కౌంటర్ లక్షణం,
 HLC-PMR-.YYYY.-,HLC-PMR-.YYYY.-,
 Attach Medical Record,మెడికల్ రికార్డ్ అటాచ్ చేయండి,
-Reference DocType,రిఫరెన్స్ డాక్ టైప్,
 Spouse,జీవిత భాగస్వామి,
 Family,కుటుంబ,
 Schedule Details,షెడ్యూల్ వివరాలు,
@@ -6983,16 +6895,8 @@
 HTML / Banner that will show on the top of product list.,ఉత్పత్తి జాబితా పైన కనిపిస్తాయి ఆ HTML / బ్యానర్.,
 Set prefix for numbering series on your transactions,మీ లావాదేవీలపై సిరీస్ నంబరింగ్ కోసం సెట్ ఉపసర్గ,
 Setup Series,సెటప్ సిరీస్,
-Select Transaction,Select లావాదేవీ,
-Help HTML,సహాయం HTML,
-Series List for this Transaction,ఈ లావాదేవీ కోసం సిరీస్ జాబితా,
-User must always select,వినియోగదారు ఎల్లప్పుడూ ఎంచుకోవాలి,
-Check this if you want to force the user to select a series before saving. There will be no default if you check this.,మీరు సేవ్ ముందు వరుస ఎంచుకోండి యూజర్ బలవంతం అనుకుంటే ఈ తనిఖీ. మీరు ఈ తనిఖీ ఉంటే ఏ డిఫాల్ట్ ఉంటుంది.,
 Update Series,నవీకరణ సిరీస్,
 Change the starting / current sequence number of an existing series.,అప్పటికే ఉన్న సిరీస్ ప్రారంభం / ప్రస్తుత క్రమ సంఖ్య మార్చండి.,
-Prefix,ఆదిపదం,
-This is the number of the last created transaction with this prefix,ఈ ఉపసర్గ గత రూపొందించినవారు లావాదేవీ సంఖ్య,
-Update Series Number,నవీకరణ సిరీస్ సంఖ్య,
 Quotation Lost Reason,కొటేషన్ లాస్ట్ కారణము,
 A third party distributor / dealer / commission agent / affiliate / reseller who sells the companies products for a commission.,కమిషన్ కొరకు కంపెనీలు ఉత్పత్తులను విక్రయిస్తుంది ఒక మూడవ పార్టీ పంపిణీదారు / డీలర్ / కమిషన్ ఏజెంట్ / అనుబంధ / పునఃవిక్రేత.,
 Sales Partner Name,సేల్స్ భాగస్వామి పేరు,
@@ -7687,7 +7591,6 @@
 Warehouse wise Item Balance Age and Value,వేర్హౌస్ వారీస్ ఐక్యత సంతులనం వయస్సు మరియు విలువ,
 Work Order Stock Report,వర్క్ ఆర్డర్ స్టాక్ రిపోర్ట్,
 Work Orders in Progress,పని ఆర్డర్స్ ఇన్ ప్రోగ్రెస్,
-Validation Error,ధ్రువీకరణ లోపం,
 Automatically Process Deferred Accounting Entry,వాయిదాపడిన అకౌంటింగ్ ఎంట్రీని స్వయంచాలకంగా ప్రాసెస్ చేయండి,
 Bank Clearance,బ్యాంక్ క్లియరెన్స్,
 Bank Clearance Detail,బ్యాంక్ క్లియరెన్స్ వివరాలు,
@@ -7724,45 +7627,7 @@
 Therapy Plan: ,చికిత్స ప్రణాళిక:,
 Total Counts Targeted: ,లక్ష్యంగా ఉన్న మొత్తం గణనలు:,
 Total Counts Completed: ,మొత్తం గణనలు పూర్తయ్యాయి:,
-Andaman and Nicobar Islands,అండమాన్ మరియు నికోబార్ దీవులు,
-Andhra Pradesh,ఆంధ్రప్రదేశ్,
-Arunachal Pradesh,అరుణాచల్ ప్రదేశ్,
-Assam,అస్సాం,
-Bihar,బీహార్,
-Chandigarh,చండీగ .్,
-Chhattisgarh,ఛత్తీస్‌గ h ్,
-Dadra and Nagar Haveli,దాద్రా మరియు నగర్ హవేలి,
-Daman and Diu,డామన్ మరియు డియు,
-Delhi,.ిల్లీ,
-Goa,గోవా,
-Gujarat,గుజరాత్,
-Haryana,హర్యానా,
-Himachal Pradesh,హిమాచల్ ప్రదేశ్,
-Jammu and Kashmir,జమ్మూ కాశ్మీర్,
-Jharkhand,జార్ఖండ్,
-Karnataka,కర్ణాటక,
-Kerala,కేరళ,
-Lakshadweep Islands,లక్షద్వీప్ దీవులు,
-Madhya Pradesh,మధ్యప్రదేశ్,
-Maharashtra,మహారాష్ట్ర,
-Manipur,మణిపూర్,
-Meghalaya,మేఘాలయ,
-Mizoram,మిజోరం,
-Nagaland,నాగాలాండ్,
-Odisha,ఒడిశా,
-Other Territory,ఇతర భూభాగం,
-Pondicherry,పాండిచేరి,
-Punjab,పంజాబ్,
-Rajasthan,రాజస్థాన్,
-Sikkim,సిక్కిం,
-Tamil Nadu,తమిళనాడు,
-Telangana,తెలంగాణ,
-Tripura,త్రిపుర,
-Uttar Pradesh,ఉత్తర ప్రదేశ్,
-Uttarakhand,ఉత్తరాఖండ్,
-West Bengal,పశ్చిమ బెంగాల్,
 Is Mandatory,తప్పనిసరి,
-Published on,ప్రచురించబడింది,
 Service Received But Not Billed,సేవ స్వీకరించబడింది కాని బిల్ చేయబడలేదు,
 Deferred Accounting Settings,వాయిదాపడిన అకౌంటింగ్ సెట్టింగులు,
 Book Deferred Entries Based On,పుస్తకం వాయిదా వేసిన ఎంట్రీలు ఆధారంగా,
@@ -8035,8 +7900,6 @@
 Worksheet Instructions,వర్క్‌షీట్ సూచనలు,
 Result Legend Print,ఫలితం లెజెండ్ ప్రింట్,
 Print Position,ప్రింట్ స్థానం,
-Bottom,దిగువ,
-Top,టాప్,
 Both,రెండు,
 Result Legend,ఫలితం లెజెండ్,
 Lab Tests,ల్యాబ్ పరీక్షలు,
@@ -8081,12 +7944,10 @@
 Approvers,అప్రూవర్స్,
 The first Approver in the list will be set as the default Approver.,జాబితాలోని మొదటి ఆమోదం డిఫాల్ట్ ఆమోదంగా సెట్ చేయబడుతుంది.,
 Shift Request Approver,షిఫ్ట్ అభ్యర్థన ఆమోదం,
-PAN Number,పాన్ సంఖ్య,
 Provident Fund Account,ప్రావిడెంట్ ఫండ్ ఖాతా,
 MICR Code,MICR కోడ్,
 Repay unclaimed amount from salary,క్లెయిమ్ చేయని మొత్తాన్ని జీతం నుండి తిరిగి చెల్లించండి,
 Deduction from salary,జీతం నుండి మినహాయింపు,
-Expired Leaves,గడువు ముగిసిన ఆకులు,
 If this is not checked the loan by default will be considered as a Demand Loan,ఇది తనిఖీ చేయకపోతే అప్పును అప్పుగా డిమాండ్ లోన్‌గా పరిగణిస్తారు,
 This account is used for booking loan repayments from the borrower and also disbursing loans to the borrower,ఈ ఖాతా రుణగ్రహీత నుండి రుణ తిరిగి చెల్లించటానికి మరియు రుణగ్రహీతకు రుణాలు పంపిణీ చేయడానికి ఉపయోగించబడుతుంది,
 This account is capital account which is used to allocate capital for loan disbursal account ,"ఈ ఖాతా మూలధన ఖాతా, ఇది రుణ పంపిణీ ఖాతాకు మూలధనాన్ని కేటాయించడానికి ఉపయోగించబడుతుంది",
@@ -8844,3 +8705,41 @@
 Creating Purchase Order ...,కొనుగోలు క్రమాన్ని సృష్టిస్తోంది ...,
 "Select a Supplier from the Default Suppliers of the items below. On selection, a Purchase Order will be made against items belonging to the selected Supplier only.","దిగువ వస్తువుల డిఫాల్ట్ సరఫరాదారుల నుండి సరఫరాదారుని ఎంచుకోండి. ఎంపికపై, ఎంచుకున్న సరఫరాదారుకు చెందిన వస్తువులపై మాత్రమే కొనుగోలు ఆర్డర్ చేయబడుతుంది.",
 Row #{}: You must select {} serial numbers for item {}.,అడ్డు వరుస # {}: మీరు తప్పక item} అంశం కోసం {} క్రమ సంఖ్యలను ఎంచుకోవాలి.,
+Add Comment,వ్యాఖ్యను జోడించండి,
+More...,మరింత...,
+Notes,గమనికలు,
+Payment Gateway,చెల్లింపు గేట్వే,
+Payment Gateway Name,చెల్లింపు గేట్వే పేరు,
+Payments,చెల్లింపులు,
+Plan Name,ప్రణాళిక పేరు,
+Portal,పోర్టల్,
+Scan Barcode,బార్‌కోడ్‌ను స్కాన్ చేయండి,
+Some information is missing,కొంత సమాచారాన్ని లేదు,
+Successful,విజయవంతమైన,
+Tools,పరికరములు,
+Use Sandbox,శాండ్బాక్స్ ఉపయోగించండి,
+Busy,బిజీగా,
+Completed By,ద్వారా పూర్తి,
+Payment Failed,చెల్లింపు విఫలమైంది,
+Column {0},కాలమ్ {0},
+Field Mapping,ఫీల్డ్ మ్యాపింగ్,
+Not Specified,పేర్కొనలేదు,
+Update Type,నవీకరణ రకం,
+Dr,డాక్టర్,
+End Time,ముగింపు సమయం,
+Fetching...,తెస్తోంది ...,
+"It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","ఇది సర్వర్ యొక్క చారల కాన్ఫిగరేషన్తో సమస్య ఉన్నట్లు తెలుస్తోంది. వైఫల్యం విషయంలో, మీ ఖాతాకు మొత్తం తిరిగి చెల్లించబడుతుంది.",
+Looks like someone sent you to an incomplete URL. Please ask them to look into it.,ఎవరైనా అసంపూర్ణ URL కు మీరు పంపిన కనిపిస్తోంది. దీనిని పరిశీలిస్తాము కోరండి.,
+Master,మాస్టర్,
+Pay,చెల్లించండి,
+You can also copy-paste this link in your browser,మీరు కూడా మీ బ్రౌజర్లో ఈ లింక్ కాపీ పేస్ట్ చేయవచ్చు,
+Verified By,ద్వారా ధృవీకరించబడిన,
+Invalid naming series (. missing) for {0},{0 for కోసం చెల్లని నామకరణ సిరీస్ (. లేదు),
+Phone Number,ఫోను నంబరు,
+Account SID,ఖాతా SID,
+Global Defaults,గ్లోబల్ డిఫాల్ట్,
+Is Mandatory,తప్పనిసరి,
+WhatsApp,వాట్సాప్,
+Make a call,కాల్ చేయుము,
+Approve,ఆమోదించడానికి,
+Reject,తిరస్కరించు,
diff --git a/erpnext/translations/th.csv b/erpnext/translations/th.csv
index e492856..dcd632b 100644
--- a/erpnext/translations/th.csv
+++ b/erpnext/translations/th.csv
@@ -113,7 +113,6 @@
 Add Items,เพิ่มรายการ,
 Add Leads,เพิ่ม Leads,
 Add Multiple Tasks,เพิ่มงานหลายรายการ,
-Add Row,เพิ่มแถว,
 Add Sales Partners,เพิ่มพันธมิตรการขาย,
 Add Serial No,เพิ่ม หมายเลขซีเรียล,
 Add Students,เพิ่มนักเรียน,
@@ -211,9 +210,7 @@
 An error occurred during the update process,เกิดข้อผิดพลาดระหว่างการอัพเดต,
 "An item exists with same name ({0}), please change the item group name or rename the item",รายการที่มีอยู่ ที่มีชื่อเดียวกัน ({0}) กรุณาเปลี่ยนชื่อกลุ่ม รายการ หรือเปลี่ยนชื่อ รายการ,
 Analyst,นักวิเคราะห์,
-Analytics,Analytics,
 Annual Billing: {0},การเรียกเก็บเงินประจำปี: {0},
-Anonymous,ไม่ระบุชื่อ,
 Another Budget record '{0}' already exists against {1} '{2}' and account '{3}' for fiscal year {4},บันทึกงบประมาณ &#39;{0}&#39; มีอยู่แล้วสำหรับ {1} &#39;{2}&#39; และบัญชี &#39;{3}&#39; สำหรับปีงบประมาณ {4},
 Another Period Closing Entry {0} has been made after {1},อีก รายการ ระยะเวลา ปิด {0} ได้รับการทำ หลังจาก {1},
 Another Sales Person {0} exists with the same Employee id,อีกคนขาย {0} อยู่กับรหัสพนักงานเดียวกัน,
@@ -283,14 +280,12 @@
 Attendance not submitted for {0} as {1} on leave.,การเข้าร่วมไม่ได้ส่งสำหรับ {0} เป็น {1} เมื่อออก,
 Attribute table is mandatory,ตาราง Attribute มีผลบังคับใช้,
 Attribute {0} selected multiple times in Attributes Table,แอตทริบิวต์ {0} เลือกหลายครั้งในคุณสมบัติตาราง,
-Author,ผู้เขียน,
 Authorized Signatory,ผู้มีอำนาจลงนาม,
 Auto Material Requests Generated,Auto วัสดุการขอสร้าง,
 Auto Repeat,ทำซ้ำอัตโนมัติ,
 Auto repeat document updated,อัปเดตเอกสารซ้ำอัตโนมัติแล้ว,
 Automotive,ยานยนต์,
 Available,ที่มีจำหน่าย,
-Available Leaves,มีใบ,
 Available Qty,จำนวนที่มีจำหน่าย,
 Available Selling,ขายได้,
 Available for use date is required,ต้องมีวันที่ใช้งาน,
@@ -340,7 +335,6 @@
 Base URL,URL พื้นฐาน,
 Based On,ขึ้นอยู่กับ,
 Based On Payment Terms,ตามเงื่อนไขการชำระเงิน,
-Basic,ขั้นพื้นฐาน,
 Batch,ชุด,
 Batch Entries,รายการแบทช์,
 Batch ID is mandatory,ต้องใช้รหัสแบทช์,
@@ -361,7 +355,6 @@
 Billable Hours,ชั่วโมงที่เรียกเก็บเงินได้,
 Billed,ได้เรียกเก็บเงินแล้ว,
 Billed Amount,จำนวนเงินที่ เรียกเก็บเงิน,
-Billing,การเรียกเก็บเงิน,
 Billing Address,ที่อยู่ในการเรียกเก็บเงิน,
 Billing Address is same as Shipping Address,ที่อยู่สำหรับเรียกเก็บเงินนั้นเหมือนกับที่อยู่สำหรับจัดส่ง,
 Billing Amount,จำนวนเงินที่เรียกเก็บ,
@@ -560,7 +553,6 @@
 Consumed Qty,จำนวนการบริโภค,
 Consumer Products,สินค้าอุปโภคบริโภค,
 Contact,ติดต่อ,
-Contact Details,รายละเอียดการติดต่อ,
 Contact Us,ติดต่อเรา,
 Content,เนื้อหา,
 Content Masters,ผู้เชี่ยวชาญด้านเนื้อหา,
@@ -715,7 +707,6 @@
 Date of Joining,วันที่ของการเข้าร่วม,
 Date of Joining must be greater than Date of Birth,วันที่ เข้าร่วม จะต้องมากกว่า วันเกิด,
 Date of Transaction,วันที่ทำรายการ,
-Datetime,datetime,
 Day,วัน,
 Debit,หักบัญชี,
 Debit ({0}),เดบิต ({0}),
@@ -874,7 +865,6 @@
 Employee cannot report to himself.,พนักงานไม่สามารถรายงานให้กับตัวเอง,
 Employee {0} has already applied for {1} between {2} and {3} : ,พนักงาน {0} ใช้ {1} ระหว่าง {2} ถึง {3} แล้ว:,
 Employee {0} of grade {1} have no default leave policy,พนักงาน {0} ของเกรด {1} ไม่มีนโยบายลาออกเริ่มต้น,
-Enable,การเปิดใช้งาน,
 Enable / disable currencies.,เปิด / ปิดการใช้งาน สกุลเงิน,
 Enabled,เปิดการใช้งาน,
 "Enabling 'Use for Shopping Cart', as Shopping Cart is enabled and there should be at least one Tax Rule for Shopping Cart",การเปิดใช้งาน &#39;ใช้สำหรับรถเข็น&#39; เป็นรถเข็นถูกเปิดใช้งานและควรจะมีกฎภาษีอย่างน้อยหนึ่งสำหรับรถเข็น,
@@ -905,7 +895,6 @@
 Error: Not a valid id?,ข้อผิดพลาด: ไม่ได้รหัสที่ถูกต้อง?,
 Estimated Cost,ค่าใช้จ่ายประมาณ,
 "Even if there are multiple Pricing Rules with highest priority, then following internal priorities are applied:",แม้ว่าจะมีกฎการกำหนดราคาหลายกับความสำคัญสูงสุดแล้วจัดลำดับความสำคัญดังต่อไปนี้ภายในจะใช้:,
-Event,เหตุการณ์,
 Exchange Gain/Loss,กำไรจากอัตราแลกเปลี่ยน / ขาดทุน,
 Exchange Rate Revaluation master.,หลักการประเมินค่าอัตราแลกเปลี่ยน,
 Exchange Rate must be same as {0} {1} ({2}),อัตราแลกเปลี่ยนจะต้องเป็นเช่นเดียวกับ {0} {1} ({2}),
@@ -1032,7 +1021,6 @@
 From value must be less than to value in row {0},จากค่า ต้องน้อยกว่า ค่า ในแถว {0},
 From {0} | {1} {2},จาก {0} | {1} {2},
 Fulfillment,การบรรลุเป้าหมาย,
-Full,เต็ม,
 Full Name,ชื่อเต็ม,
 Fully Depreciated,ค่าเสื่อมราคาหมด,
 Furnitures and Fixtures,เฟอร์นิเจอร์และติดตั้ง,
@@ -1133,7 +1121,6 @@
 Hub Sync ID,รหัสการซิงค์ของ Hub,
 Human Resource,ทรัพยากรมนุษย์,
 Human Resources,ทรัพยากรบุคคล,
-IFSC Code,รหัส IFSC,
 IGST Amount,IGST Amount,
 IP Address,ที่อยู่ IP,
 ITC Available (whether in full op part),ITC ว่าง (ไม่ว่าจะอยู่ในส่วน op แบบเต็ม),
@@ -1185,7 +1172,6 @@
 Ineligible ITC,ITC ที่ไม่มีสิทธิ์,
 Initiated,ริเริ่ม,
 Inpatient Record,บันทึกผู้ป่วย,
-Insert,แทรก,
 Installation Note,หมายเหตุการติดตั้ง,
 Installation Note {0} has already been submitted,หมายเหตุ การติดตั้ง {0} ได้ ถูกส่งมา อยู่แล้ว,
 Installation date cannot be before delivery date for Item {0},วันที่ การติดตั้ง ไม่สามารถ ก่อนวันที่ จัดส่ง สินค้า {0},
@@ -1197,7 +1183,6 @@
 Insurance Start date should be less than Insurance End date,วันประกันเริ่มต้นควรจะน้อยกว่าวันประกันสิ้นสุด,
 Integrated Tax,ภาษีรวม,
 Inter-State Supplies,วัสดุระหว่างรัฐ,
-Interests,ความสนใจ,
 Internet Publishing,สำนักพิมพ์ ทางอินเทอร์เน็ต,
 Intra-State Supplies,วัสดุภายในรัฐ,
 Introduction,การแนะนำ,
@@ -1316,7 +1301,6 @@
 Lab testing datetime cannot be before collection datetime,datetime การทดสอบห้องปฏิบัติการต้องไม่มาก่อน datetime การรวบรวมข้อมูล,
 Label,ฉลาก,
 Laboratory,ห้องปฏิบัติการ,
-Language Name,ชื่อภาษา,
 Large,ใหญ่,
 Last Communication,การสื่อสารครั้งล่าสุด,
 Last Communication Date,วันที่ผ่านรายการล่าสุด,
@@ -1347,8 +1331,6 @@
 Letter Heads for print templates.,หัว จดหมาย สำหรับการพิมพ์ แม่แบบ,
 Level,ชั้น,
 Liability,ความรับผิดชอบ,
-License,การอนุญาต,
-Limit,จำกัด,
 Limit Crossed,จำกัด การข้าม,
 Link to Material Request,ลิงก์ไปยังคำขอ Material,
 List of all share transactions,รายชื่อการทำธุรกรรมร่วมกันทั้งหมด,
@@ -1359,7 +1341,6 @@
 Loans (Liabilities),เงินให้กู้ยืม ( หนี้สิน ),
 Loans and Advances (Assets),เงินให้กู้ยืม และ เงินทดรอง ( สินทรัพย์ ),
 Local,ในประเทศ,
-Log,เข้าสู่ระบบ,
 Logs for maintaining sms delivery status,บันทึกการรักษาสถานะการจัดส่งทาง SMS,
 Lost,สูญหาย,
 Lost Reasons,เหตุผลที่หายไป,
@@ -1445,7 +1426,6 @@
 Medical Department,แผนกการแพทย์,
 Medical Record,บันทึกการแพทย์,
 Medium,กลาง,
-Meeting,การประชุม,
 Member Activity,กิจกรรมสมาชิก,
 Member ID,รหัสสมาชิก,
 Member Name,ชื่อสมาชิก,
@@ -1495,7 +1475,6 @@
 Multiple Variants,หลายรูปแบบ,
 Multiple fiscal years exist for the date {0}. Please set company in Fiscal Year,รอบระยะเวลาบัญชีที่มีอยู่หลายสำหรับวันที่ {0} โปรดตั้ง บริษัท ในปีงบประมาณ,
 Music,เพลง,
-My Account,บัญชีของฉัน,
 Name error: {0},ข้อผิดพลาดชื่อ: {0},
 Name of new Account. Note: Please don't create accounts for Customers and Suppliers,ชื่อของบัญชีใหม่ หมายเหตุ: กรุณาอย่าสร้างบัญชีสำหรับลูกค้าและผู้จำหน่าย,
 Name or Email is mandatory,ชื่อหรืออีเมล์มีผลบังคับใช้,
@@ -1538,7 +1517,6 @@
 New credit limit is less than current outstanding amount for the customer. Credit limit has to be atleast {0},วงเงินสินเชื่อใหม่น้อยกว่าจำนวนเงินที่ค้างในปัจจุบันสำหรับลูกค้า วงเงินสินเชื่อจะต้องมีอย่างน้อย {0},
 New task,งานใหม่,
 New {0} pricing rules are created,สร้างกฎการกำหนดราคา {0} ใหม่แล้ว,
-Newsletters,จดหมายข่าว,
 Newspaper Publishers,หนังสือพิมพ์ สำนักพิมพ์,
 Next,ต่อไป,
 Next Contact By cannot be same as the Lead Email Address,ถัดไปติดต่อโดยไม่สามารถเช่นเดียวกับที่อยู่อีเมลตะกั่ว,
@@ -1686,7 +1664,6 @@
 Other,อื่น ๆ,
 Other Reports,รายงานอื่น ๆ,
 "Other outward supplies(Nil rated,Exempted)","วัสดุภายนอกอื่น ๆ (ไม่มีการจัดอันดับ, ยกเว้น)",
-Others,คนอื่น ๆ,
 Out Qty,ออก จำนวน,
 Out Value,ราคาออกมา,
 Out of Order,ชำรุด,
@@ -1726,7 +1703,6 @@
 Party Type and Party is mandatory for {0} account,ประเภทปาร์ตี้และปาร์ตี้เป็นสิ่งจำเป็นสำหรับ {0} บัญชี,
 Party Type is mandatory,ประเภทของบุคคลที่มีผลบังคับใช้,
 Party is mandatory,พรรคมีผลบังคับใช้,
-Password,รหัสผ่าน,
 Past Due Date,วันครบกำหนดที่ผ่านมา,
 Patient,ผู้ป่วย,
 Patient Appointment,นัดหมายผู้ป่วย,
@@ -1784,7 +1760,6 @@
 Pharmaceutical,เภสัชกรรม,
 Pharmaceuticals,ยา,
 Physician,แพทย์,
-Pincode,Pincode,
 Place Of Supply (State/UT),สถานที่ของอุปทาน (รัฐ / UT),
 Place Order,สถานที่การสั่งซื้อ,
 Plan Name,ชื่อแผน,
@@ -1896,7 +1871,6 @@
 Please select date,กรุณาเลือกวันที่,
 Please select item code,กรุณา เลือกรหัส สินค้า,
 Please select month and year,กรุณาเลือกเดือนและปี,
-Please select prefix first,กรุณาเลือก คำนำหน้า เป็นครั้งแรก,
 Please select the Company,โปรดเลือก บริษัท,
 Please select the Multiple Tier Program type for more than one collection rules.,โปรดเลือกประเภทโปรแกรมหลายชั้นสำหรับกฎการรวบรวมข้อมูลมากกว่าหนึ่งชุด,
 Please select the assessment group other than 'All Assessment Groups',โปรดเลือกกลุ่มการประเมินอื่นนอกเหนือจาก &#39;กลุ่มการประเมินทั้งหมด&#39;,
@@ -1913,7 +1887,6 @@
 Please set Company filter blank if Group By is 'Company',โปรดตั้งค่าตัวกรอง บริษัท หาก Group By เป็น &#39;Company&#39;,
 Please set Default Payroll Payable Account in Company {0},กรุณาตั้งค่าเริ่มต้นเงินเดือนบัญชีเจ้าหนี้ บริษัท {0},
 Please set Depreciation related Accounts in Asset Category {0} or Company {1},กรุณาตั้งค่าบัญชีที่เกี่ยวข้องกับค่าเสื่อมราคาสินทรัพย์ในหมวดหมู่ {0} หรือ บริษัท {1},
-Please set Email Address,กรุณาตั้งค่าอีเมล์,
 Please set GST Accounts in GST Settings,โปรดตั้งค่าบัญชี GST ในการตั้งค่า GST,
 Please set Hotel Room Rate on {},โปรดตั้งค่าห้องพักโรงแรมเมื่อ {@},
 Please set Number of Depreciations Booked,กรุณาตั้งค่าจำนวนค่าเสื่อมราคาจอง,
@@ -1936,7 +1909,6 @@
 Please set the Email ID for the Student to send the Payment Request,โปรดตั้งรหัสอีเมลสำหรับนักเรียนเพื่อส่งคำขอการชำระเงิน,
 Please set the Item Code first,โปรดตั้งค่ารหัสรายการก่อน,
 Please set the Payment Schedule,กรุณากำหนดตารางการชำระเงิน,
-Please set the series to be used.,โปรดตั้งชุดที่จะใช้,
 Please set {0} for address {1},โปรดตั้ง {0} สำหรับที่อยู่ {1},
 Please setup Students under Student Groups,โปรดตั้งค่านักเรียนภายใต้กลุ่มนักเรียน,
 Please specify Company,โปรดระบุ บริษัท,
@@ -1953,7 +1925,6 @@
 Point-of-Sale,จุดขาย,
 Point-of-Sale Profile,จุดขายข้อมูลส่วนตัว,
 Portal,พอร์ทัล,
-Portal Settings,การตั้งค่าพอร์ทัล,
 Possible Supplier,ผู้ผลิตที่เป็นไปได้,
 Postal Expenses,ค่าใช้จ่าย ไปรษณีย์,
 Posting Date,โพสต์วันที่,
@@ -2152,12 +2123,10 @@
 Reference No is mandatory if you entered Reference Date,ไม่มี การอ้างอิง มีผลบังคับใช้ ถ้า คุณป้อน วันที่ อ้างอิง,
 Reference No.,เลขอ้างอิง.,
 Reference Number,เลขที่อ้างอิง,
-Reference Owner,เจ้าของอ้างอิง,
 Reference Type,ชนิดการอ้างอิง,
 "Reference: {0}, Item Code: {1} and Customer: {2}",ข้อมูลอ้างอิง: {0} รหัสรายการ: {1} และลูกค้า: {2},
 References,อ้างอิง,
 Refresh Token,รีเฟรช Token,
-Region,ภูมิภาค,
 Register,สมัครสมาชิก,
 Rejected,ปฏิเสธ,
 Related,ที่เกี่ยวข้อง,
@@ -2179,7 +2148,6 @@
 Replace BOM and update latest price in all BOMs,แทนที่ BOM และอัปเดตราคาล่าสุดใน BOM ทั้งหมด,
 Replied,Replied,
 Report,รายงาน,
-Report Builder,สร้างรายงาน,
 Report Type,ประเภทรายงาน,
 Report Type is mandatory,ประเภทรายงาน มีผลบังคับใช้,
 Reports,รายงาน,
@@ -2355,13 +2323,11 @@
 Same Company is entered more than once,บริษัท เดียวกันจะเข้ามามากกว่าหนึ่งครั้ง,
 Same item cannot be entered multiple times.,รายการเดียวกันไม่สามารถเข้ามาหลายครั้ง,
 Same supplier has been entered multiple times,ผลิตเดียวกันได้รับการป้อนหลายครั้ง,
-Sample,กลุ่มข้อมูลตัวอย่าง,
 Sample Collection,การเก็บตัวอย่าง,
 Sample quantity {0} cannot be more than received quantity {1},ปริมาณตัวอย่าง {0} ไม่สามารถมากกว่าปริมาณที่ได้รับ {1},
 Sanctioned,ตามทำนองคลองธรรม,
 Sand,ทราย,
 Saturday,วันเสาร์,
-Saved,ที่บันทึกไว้,
 Saving {0},การบันทึก {0},
 Scan Barcode,สแกนบาร์โค้ด,
 Schedule,กำหนดการ,
@@ -2463,7 +2429,6 @@
 Series Updated,ชุด ล่าสุด,
 Series Updated Successfully,ชุด ล่าสุด ที่ประสบความสำเร็จ,
 Series is mandatory,ชุด มีผลบังคับใช้,
-Series {0} already used in {1},ชุด {0} ใช้แล้ว ใน {1},
 Service,ให้บริการ,
 Service Level Agreement,ข้อตกลงระดับการให้บริการ,
 Service Level Agreement.,ข้อตกลงระดับการให้บริการ.,
@@ -2479,7 +2444,6 @@
 Set Tax Rule for shopping cart,ตั้งกฎภาษีสำหรับรถเข็น,
 Set as Closed,ตั้งเป็นปิด,
 Set as Completed,ตั้งเป็นเสร็จสมบูรณ์,
-Set as Default,Set as Default,
 Set as Lost,ตั้งเป็น ที่หายไป,
 Set as Open,ตั้งเป็นเปิด,
 Set default inventory account for perpetual inventory,ตั้งค่าบัญชีพื้นที่โฆษณาเริ่มต้นสำหรับพื้นที่โฆษณาถาวร,
@@ -2511,7 +2475,6 @@
 Shareholder,ผู้ถือหุ้น,
 Ship To State,ส่งไปยัง State,
 Shipments,การจัดส่ง,
-Shipping,การส่งสินค้า,
 Shipping Address,ที่อยู่จัดส่ง,
 "Shipping Address does not have country, which is required for this Shipping Rule",ที่อยู่จัดส่งไม่มีประเทศซึ่งจำเป็นสำหรับกฎการจัดส่งนี้,
 Shipping rule only applicable for Buying,กฎการจัดส่งใช้ได้เฉพาะสำหรับการซื้อเท่านั้น,
@@ -2564,7 +2527,6 @@
 Split Batch,แบ่งแบทช์,
 Split Issue,ฉบับแยก,
 Sports,กีฬา,
-Standard,มาตรฐาน,
 Standard Buying,การซื้อมาตรฐาน,
 Standard Selling,ขาย มาตรฐาน,
 Standard contract terms for Sales or Purchase.,ข้อสัญญา มาตรฐานสำหรับ การขายหรือการ ซื้อ,
@@ -2731,7 +2693,6 @@
 Terms and Conditions,ข้อตกลงและเงื่อนไข,
 Terms and Conditions Template,ข้อตกลงและเงื่อนไขของแม่แบบ,
 Territory,อาณาเขต,
-Test,ทดสอบ,
 Thank you for your business!,ขอบคุณสำหรับธุรกิจของคุณ!,
 The 'From Package No.' field must neither be empty nor it's value less than 1.,&#39;จากหมายเลขแพ็คเกจ&#39; ฟิลด์ต้องไม่ว่างเปล่าและไม่มีค่าน้อยกว่า 1,
 The Brand,ยี่ห้อ,
@@ -2848,7 +2809,6 @@
 Total (Without Tax),รวม (ไม่มีภาษี),
 Total Achieved,รวมประสบความสำเร็จ,
 Total Actual,ทั้งหมดที่เกิดขึ้นจริง,
-Total Allocated Leaves,ยอดรวมใบ,
 Total Amount,รวมเป็นเงิน,
 Total Amount Credited,ยอดรวมเครดิต,
 Total Applicable Charges in Purchase Receipt Items table must be same as Total Taxes and Charges,ค่าใช้จ่ายรวมในการซื้อโต๊ะใบเสร็จรับเงินรายการที่จะต้องเป็นเช่นเดียวกับภาษีและค่าใช้จ่ายรวม,
@@ -2892,7 +2852,6 @@
 Total(Amt),รวม (Amt),
 Total(Qty),รวม (จำนวน),
 Traceability,ตรวจสอบย้อนกลับ,
-Traceback,ตรวจสอบย้อนกลับ,
 Track Leads by Lead Source.,ติดตามโดย Lead Source,
 Transaction,การซื้อขาย,
 Transaction Date,วันที่ทำรายการ,
@@ -2930,7 +2889,6 @@
 UOM Conversion factor is required in row {0},ปัจจัย UOM แปลง จะต้อง อยู่ในแถว {0},
 UOM coversion factor required for UOM: {0} in Item: {1},ปัจจัย Coversion UOM จำเป็นสำหรับ UOM: {0} ในรายการ: {1},
 URL,URL,
-Unable to find DocType {0},ไม่พบ DocType {0},
 Unable to find exchange rate for {0} to {1} for key date {2}. Please create a Currency Exchange record manually,ไม่สามารถหาอัตราแลกเปลี่ยนสำหรับ {0} ถึง {1} สำหรับวันสำคัญ {2} โปรดสร้างบันทึกการแลกเปลี่ยนสกุลเงินด้วยตนเอง,
 Unable to find score starting at {0}. You need to have standing scores covering 0 to 100,ไม่สามารถหาคะแนนเริ่มต้นที่ {0} คุณต้องมีคะแนนยืนตั้งแต่ 0 ถึง 100,
 Unable to find variable: ,ไม่สามารถหาตัวแปร:,
@@ -2960,7 +2918,6 @@
 Upload your letter head and logo. (you can edit them later).,อัปโหลดหัวจดหมายของคุณและโลโก้ (คุณสามารถแก้ไขได้ในภายหลัง),
 Upper Income,รายได้บน,
 Use Sandbox,ใช้ Sandbox,
-Used Leaves,ใบที่ใช้แล้ว,
 User,ผู้ใช้งาน,
 User ID,รหัสผู้ใช้,
 User ID not set for Employee {0},รหัสผู้ใช้ ไม่ได้ ตั้งไว้สำหรับ พนักงาน {0},
@@ -3051,7 +3008,6 @@
 Website Settings,การตั้งค่าเว็บไซต์,
 Wednesday,วันพุธ,
 Week,สัปดาห์,
-Weekdays,วันธรรมดา,
 Weekly,รายสัปดาห์,
 "Weight is mentioned,\nPlease mention ""Weight UOM"" too","น้ำหนักที่ถูกกล่าวถึง, \n กรุณาระบุ ""น้ำหนัก UOM"" เกินไป",
 Welcome email sent,ส่ง อีเมล์ต้อนรับ,
@@ -3072,7 +3028,6 @@
 Work Order {0} must be submitted,สั่งซื้องาน {0} ต้องส่งมา,
 Work Orders Created: {0},สร้างคำสั่งงาน: {0},
 Work-in-Progress Warehouse is required before Submit,ทำงาน ความคืบหน้าใน คลังสินค้า จะต้อง ก่อนที่จะ ส่ง,
-Workflow,กระบวนการทำงาน,
 Working,ทำงาน,
 Working Hours,เวลาทำการ,
 Workstation,เวิร์คสเตชั่,
@@ -3102,7 +3057,6 @@
 You need to be a user other than Administrator with System Manager and Item Manager roles to register on Marketplace.,คุณต้องเป็นผู้ใช้อื่นที่ไม่ใช่ผู้ดูแลระบบด้วยบทบาท System Manager และ Item Manager เพื่อลงทะเบียนใน Marketplace,
 You need to be a user with System Manager and Item Manager roles to add users to Marketplace.,คุณต้องเป็นผู้ใช้ที่มีบทบาท System Manager และ Item Manager เพื่อเพิ่มผู้ใช้ลงใน Marketplace,
 You need to be a user with System Manager and Item Manager roles to register on Marketplace.,คุณต้องเป็นผู้ใช้ที่มีบทบาท System Manager และ Item Manager เพื่อลงทะเบียนใน Marketplace,
-You need to be logged in to access this page,คุณต้องเข้าสู่ระบบเพื่อเข้าถึงหน้านี้,
 You need to enable Shopping Cart,คุณจำเป็นต้องเปิดการใช้งานรถเข็น,
 You will lose records of previously generated invoices. Are you sure you want to restart this subscription?,คุณจะสูญเสียบันทึกของใบแจ้งหนี้ที่สร้างขึ้นก่อนหน้านี้ แน่ใจหรือไม่ว่าคุณต้องการรีสตาร์ทการสมัครรับข้อมูลนี้,
 Your Organization,องค์กรของคุณ,
@@ -3218,7 +3172,6 @@
 Assigned To,มอบหมายให้,
 Chat,พูดคุย,
 Completed By,เสร็จสมบูรณ์โดย,
-County,เขต/อำเภอ,
 Day of Week,วันของสัปดาห์,
 "Dear System Manager,",จัดการระบบเรียน,
 Default Value,ค่าเริ่มต้น,
@@ -3229,31 +3182,21 @@
 Fieldtype,fieldtype,
 Help Articles,บทความช่วยเหลือ,
 ID,ไอดี,
-Images,ภาพ,
 Import,นำเข้า,
 Language,ภาษา,
 Likes,ทำเช่นเดียวกับ,
 Merge with existing,รวมกับที่มีอยู่,
-Office,สำนักงาน,
 Orientation,ปฐมนิเทศ,
 Parent,ผู้ปกครอง,
-Passive,ไม่โต้ตอบ,
 Payment Failed,การชำระเงินล้มเหลว,
-Permanent,ถาวร,
 Personal,ส่วนตัว,
-Plant,พืช,
 Post,เสา,
-Postal,ไปรษณีย์,
 Postal Code,รหัสไปรษณีย์,
-Previous,ก่อน,
 Provider,ผู้ให้บริการ,
 Read Only,อ่านอย่างเดียว,
 Recipient,ผู้รับ,
 Reviews,ความคิดเห็น,
 Sender,ผู้ส่ง,
-Shop,ร้านค้า,
-Subsidiary,บริษัท สาขา,
-There is some problem with the file url: {0},มีปัญหากับ url ของไฟล์เป็น: {0},
 There were errors while sending email. Please try again.,มีข้อผิดพลาด ในขณะที่ มี การส่งอีเมล์ โปรดลองอีกครั้ง,
 Values Changed,ค่าเปลี่ยน,
 or,หรือ,
@@ -3280,19 +3223,16 @@
 Quality Feedback Template,เทมเพลตข้อเสนอแนะคุณภาพ,
 Rules for applying different promotional schemes.,กฎสำหรับการใช้รูปแบบการส่งเสริมการขายต่าง ๆ,
 Show {0},แสดง {0},
-"Special Characters except '-', '#', '.', '/', '{{' and '}}' not allowed in naming series {0}","ห้ามใช้อักขระพิเศษยกเว้น &quot;-&quot;, &quot;#&quot;, &quot;.&quot;, &quot;/&quot;, &quot;{{&quot; และ &quot;}}&quot; ในซีรี่ส์ {0}",
 Target Details,รายละเอียดเป้าหมาย,
 {0} already has a Parent Procedure {1}.,{0} มี parent Parent {1} อยู่แล้ว,
 API,API,
 Annual,ประจำปี,
 Change,เปลี่ยนแปลง,
 Contact Email,ติดต่ออีเมล์,
-Export Type,ประเภทการส่งออก,
 From Date,จากวันที่,
 Group By,จัดกลุ่มตาม,
 Invalid URL,URL ไม่ถูกต้อง,
 Landscape,ภูมิประเทศ,
-Last Sync On,ซิงค์ล่าสุดเปิด,
 Naming Series,การตั้งชื่อซีรีส์,
 No data to export,ไม่มีข้อมูลที่จะส่งออก,
 Portrait,ภาพเหมือน,
@@ -3302,7 +3242,6 @@
 Show Document,แสดงเอกสาร,
 Show Traceback,แสดง Traceback,
 Video,วีดีโอ,
-Webhook Secret,Webhook Secret,
 % Of Grand Total,% ของยอดรวมทั้งหมด,
 <b>Company</b> is a mandatory filter.,<b>บริษัท</b> เป็นตัวกรองที่จำเป็น,
 <b>From Date</b> is a mandatory filter.,<b>จากวันที่</b> เป็นตัวกรองที่จำเป็น,
@@ -3358,7 +3297,6 @@
 BOM Comparison Tool,เครื่องมือเปรียบเทียบ BOM,
 BOM recursion: {0} cannot be child of {1},การเรียกใช้ BOM ซ้ำ: {0} ไม่สามารถเป็นลูกของ {1},
 BOM recursion: {0} cannot be parent or child of {1},การเรียกใช้ BOM ซ้ำ: {0} ไม่สามารถเป็นพาเรนต์หรือลูกของ {1},
-Back to Home,กลับไปที่บ้าน,
 Back to Messages,กลับไปที่ข้อความ,
 Bank Data mapper doesn't exist,ไม่มีผู้ทำแผนที่ข้อมูลธนาคาร,
 Bank Details,รายละเอียดธนาคาร,
@@ -3420,7 +3358,6 @@
 Currency,เงินตรา,
 Current Status,สถานะปัจจุบัน,
 Customer PO,PO ของลูกค้า,
-Customize,ปรับแต่ง,
 Daily,ประจำวัน,
 Date,วันที่,
 Date of Birth cannot be greater than Joining Date.,วันเดือนปีเกิดต้องไม่เกินวันที่เข้าร่วม,
@@ -3454,7 +3391,6 @@
 ERPNext could not find any matching payment entry,ERPNext ไม่พบรายการชำระเงินที่ตรงกัน,
 Earliest Age,อายุแรกสุด,
 Edit Details,แก้ไขรายละเอียด,
-Edit Profile,แก้ไขโปรไฟล์,
 Either GST Transporter ID or Vehicle No is required if Mode of Transport is Road,ต้องการรหัสประจำตัว GST หรือยานพาหนะไม่ว่าจะเป็นโหมดการขนส่งหรือไม่,
 Email,อีเมล,
 Email Campaigns,แคมเปญอีเมล,
@@ -3482,7 +3418,6 @@
 Fetch Items from Warehouse,ดึงรายการจากคลังสินค้า,
 Fetching...,การดึงข้อมูล ...,
 Field,สนาม,
-File Manager,ตัวจัดการไฟล์,
 Filters,ตัวกรอง,
 Finding linked payments,การค้นหาการชำระเงินที่เชื่อมโยง,
 Fleet Management,การจัดการ Fleet,
@@ -3521,7 +3456,6 @@
 Incorrect Warehouse,คลังสินค้าไม่ถูกต้อง,
 Invalid Barcode. There is no Item attached to this barcode.,บาร์โค้ดไม่ถูกต้อง ไม่มีรายการติดอยู่กับบาร์โค้ดนี้,
 Invalid credentials,ข้อมูลประจำตัวที่ไม่ถูกต้อง,
-Invite as User,เชิญผู้ใช้,
 Issue Priority.,ลำดับความสำคัญของปัญหา,
 Issue Type.,ประเภทของปัญหา,
 "It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.",ดูเหมือนว่ามีปัญหากับการกำหนดค่าแถบของเซิร์ฟเวอร์ ในกรณีที่เกิดความล้มเหลวจำนวนเงินจะได้รับคืนไปยังบัญชีของคุณ,
@@ -3564,7 +3498,6 @@
 New Invoice,ใบแจ้งหนี้ใหม่,
 New Payment,ใหม่การชำระเงิน,
 New release date should be in the future,วันที่วางจำหน่ายใหม่ควรจะเป็นในอนาคต,
-Newsletter,จดหมายข่าว,
 No Account matched these filters: {},ไม่มีบัญชีที่ตรงกับตัวกรองเหล่านี้: {},
 No communication found.,ไม่พบการสื่อสาร,
 No correct answer is set for {0},ไม่ได้ตั้งคำตอบที่ถูกต้องสำหรับ {0},
@@ -3640,7 +3573,6 @@
 Please setup a default bank account for company {0},โปรดตั้งค่าบัญชีธนาคารเริ่มต้นสำหรับ บริษัท {0},
 Please specify,โปรดระบุ,
 Please specify a {0},โปรดระบุ {0},lead
-Printing,การพิมพ์,
 Priority,บุริมสิทธิ์,
 Priority has been changed to {0}.,ลำดับความสำคัญถูกเปลี่ยนเป็น {0},
 Priority {0} has been repeated.,ลำดับความสำคัญ {0} ซ้ำแล้วซ้ำอีก,
@@ -3649,7 +3581,6 @@
 Project,โครงการ,
 Provide the academic year and set the starting and ending date.,ระบุปีการศึกษาและกำหนดวันเริ่มต้นและสิ้นสุด,
 Public token is missing for this bank,โทเค็นสาธารณะหายไปสำหรับธนาคารนี้,
-Publish,ประกาศ,
 Publish 1 Item,เผยแพร่ 1 รายการ,
 Publish Items,เผยแพร่รายการ,
 Publish More Items,เผยแพร่รายการเพิ่มเติม,
@@ -3677,7 +3608,6 @@
 Reconciled,คืนดี,
 Recruitment,รับสมัครงาน,
 Red,สีแดง,
-Refreshing,รวย,
 Release date must be in the future,วันที่วางจำหน่ายจะต้องเป็นวันที่ในอนาคต,
 Relieving Date must be greater than or equal to Date of Joining,วันที่บรรเทาจะต้องมากกว่าหรือเท่ากับวันที่เข้าร่วม,
 Rename,ตั้งชื่อใหม่,
@@ -3721,7 +3651,6 @@
 Search for a payment,ค้นหาการชำระเงิน,
 Search for anything ...,ค้นหาอะไรก็ได้ ...,
 Search results for,ผลการค้นหาสำหรับ,
-Select All,เลือกทั้งหมด,
 Select Difference Account,เลือกบัญชีที่แตกต่าง,
 Select a Default Priority.,เลือกลำดับความสำคัญเริ่มต้น,
 Select a company,เลือก บริษัท,
@@ -3740,11 +3669,9 @@
 Service Level Agreement has been changed to {0}.,ข้อตกลงระดับการบริการถูกเปลี่ยนเป็น {0},
 Service Level Agreement was reset.,ข้อตกลงระดับการบริการถูกรีเซ็ต,
 Service Level Agreement with Entity Type {0} and Entity {1} already exists.,ข้อตกลงระดับการให้บริการที่มีประเภทเอนทิตี {0} และเอนทิตี {1} มีอยู่แล้ว,
-Set,ชุด,
 Set Meta Tags,ตั้ง Meta Tags,
 Set {0} in company {1},ตั้งค่า {0} ใน บริษัท {1},
 Setup,การติดตั้ง,
-Setup Wizard,ตัวช่วยสร้าง การติดตั้ง,
 Shift Management,การจัดการ Shift,
 Show Future Payments,แสดงการชำระเงินในอนาคต,
 Show Linked Delivery Notes,แสดงบันทึกการจัดส่งที่เชื่อมโยง,
@@ -3815,7 +3742,6 @@
 Unreconciled,ที่ไม่ได้ปรับ,
 Unsupported GST Category for E-Way Bill JSON generation,หมวดหมู่ GST ที่ไม่รองรับสำหรับการสร้างบิล JSON E-Way,
 Update,อัพเดท,
-Update Details,ปรับปรุงรายละเอียด,
 Update Taxes for Items,อัปเดตภาษีสำหรับรายการ,
 "Upload a bank statement, link or reconcile a bank account",อัปโหลดใบแจ้งยอดธนาคารเชื่อมโยงหรือกระทบยอดบัญชีธนาคาร,
 Upload a statement,อัปโหลดคำสั่ง,
@@ -3839,7 +3765,6 @@
 XML Files Processed,ประมวลผลไฟล์ XML แล้ว,
 Year,ปี,
 Yearly,ประจำปี,
-You,คุณ,
 You are not allowed to enroll for this course,คุณไม่ได้รับอนุญาตให้ลงทะเบียนสำหรับหลักสูตรนี้,
 You are not enrolled in program {0},คุณไม่ได้ลงทะเบียนในโปรแกรม {0},
 You can Feature upto 8 items.,คุณสามารถนำเสนอได้ไม่เกิน 8 รายการ,
@@ -3856,7 +3781,6 @@
 e-Way Bill already exists for this document,มี e-Way Bill สำหรับเอกสารนี้แล้ว,
 woocommerce - {0},woocommerce - {0},
 {0} Coupon used are {1}. Allowed quantity is exhausted,{0} คูปองที่ใช้คือ {1} ปริมาณที่อนุญาตหมดแล้ว,
-{0} Name,{0} ชื่อ,
 {0} Operations: {1},{0} การดำเนินงาน: {1},
 {0} bank transaction(s) created,สร้างธุรกรรมธนาคาร {0} รายการแล้ว,
 {0} bank transaction(s) created and {1} errors,สร้างธุรกรรมธนาคาร {0} รายการแล้วและเกิดข้อผิดพลาด {1} รายการ,
@@ -3875,17 +3799,13 @@
 Total Income,รายได้ทั้งหมด,
 Total Income This Year,รายได้รวมในปีนี้,
 Barcode,บาร์โค้ด,
-Bold,กล้า,
-Center,ศูนย์,
 Clear,ชัดเจน,
-Comment,คิดเห็น,
 Comments,ความเห็น,
 DocType,DocType,
 Download,ดาวน์โหลด,
 Left,ซ้าย,
 Link,ลิงค์,
 New,ใหม่,
-Not Found,ไม่พบ,
 Print,พิมพ์,
 Reference Name,ชื่ออ้างอิง,
 Refresh,รีเฟรช,
@@ -3908,7 +3828,6 @@
 Email Id,ID อีเมล์,
 No,ไม่,
 Reference Doctype,Doctype อ้างอิง,
-User Id,ID ผู้ใช้,
 Yes,ใช่,
 Actual ,ตามความเป็นจริง,
 Add to cart,ใส่ในรถเข็น,
@@ -4304,7 +4223,6 @@
 e.g Adjustments for:,เช่นการปรับค่าใช้จ่ายสำหรับ:,
 Section Subtotal,ส่วนยอดรวม,
 Section Footer,ส่วนท้ายส่วน,
-Position,ตำแหน่ง,
 Cash Flow Mapping,การทำแผนที่กระแสเงินสด,
 Select Maximum Of 1,เลือกสูงสุด 1,
 Is Finance Cost,ค่าใช้จ่ายทางการเงิน,
@@ -4936,7 +4854,6 @@
 Previous Business Day,วันทำการก่อนหน้า,
 Next Business Day,วันทำการถัดไป,
 Urgent,ด่วน,
-Crop,พืชผล,
 Crop Name,ชื่อ Crop,
 Scientific Name,ชื่อวิทยาศาสตร์,
 "You can define all the tasks which need to carried out for this crop here. The day field is used to mention the day on which the task needs to be carried out, 1 being the 1st day, etc.. ",คุณสามารถกำหนดงานทั้งหมดที่ต้องดำเนินการสำหรับพืชนี้ได้ที่นี่ เขตข้อมูลวันใช้เพื่อพูดถึงวันที่ต้องดำเนินการงาน 1 คือวันที่ 1 ฯลฯ,
@@ -5441,7 +5358,6 @@
 To TIme,ถึงเวลา,
 Course End Date,แน่นอนวันที่สิ้นสุด,
 Course Topic,หัวข้อหลักสูตร,
-Topic,กระทู้,
 Topic Name,ชื่อกระทู้,
 Education Settings,Education Settings,
 Current Academic Year,ปีการศึกษาปัจจุบัน,
@@ -5516,7 +5432,6 @@
 Check this if the Student is residing at the Institute's Hostel.,ตรวจสอบว่านักเรียนอาศัยอยู่ที่ Hostel ของสถาบันหรือไม่,
 Walking,เดิน,
 Institute's Bus,รถของสถาบัน,
-Public Transport,การคมนาคมสาธารณะ,
 Self-Driving Vehicle,รถยนต์ขับเอง,
 Pick/Drop by Guardian,เลือก / วางโดย Guardian,
 Enrolled courses,หลักสูตรที่ลงทะเบียนเรียน,
@@ -5697,7 +5612,6 @@
 Default Cost Center,เริ่มต้นที่ศูนย์ต้นทุน,
 Undeposited Funds Account,บัญชีกองทุนสำรองเลี้ยงชีพ,
 Shopify Log,Shopify Log,
-Request Data,ขอข้อมูล,
 Shopify Settings,การตั้งค่า Shopify,
 status html,สถานะ html,
 Enable Shopify,เปิดใช้ Shopify,
@@ -5817,7 +5731,6 @@
 Exercise Instructions,คำแนะนำการออกกำลังกาย,
 Exercise Video,วิดีโอออกกำลังกาย,
 Exercise Steps,ขั้นตอนการออกกำลังกาย,
-Steps,ขั้นตอน,
 Steps Table,ตารางขั้นตอน,
 Exercise Type Step,ขั้นตอนประเภทการออกกำลังกาย,
 Max number of visit,จำนวนการเข้าชมสูงสุด,
@@ -6001,7 +5914,6 @@
 Patient Encounter Symptom,อาการของผู้ป่วย,
 HLC-PMR-.YYYY.-,HLC-PMR-.YYYY.-,
 Attach Medical Record,แนบเวชระเบียน,
-Reference DocType,DocType อ้างอิง,
 Spouse,คู่สมรส,
 Family,ครอบครัว,
 Schedule Details,รายละเอียดกำหนดการ,
@@ -6983,16 +6895,8 @@
 HTML / Banner that will show on the top of product list.,HTML / แบนเนอร์ที่จะแสดงอยู่ด้านบนของรายการสินค้า,
 Set prefix for numbering series on your transactions,กำหนดคำนำหน้าสำหรับหมายเลขชุดทำธุรกรรมของคุณ,
 Setup Series,ชุดติดตั้ง,
-Select Transaction,เลือกรายการ,
-Help HTML,วิธีใช้ HTML,
-Series List for this Transaction,รายชื่อชุดสำหรับการทำธุรกรรมนี้,
-User must always select,ผู้ใช้จะต้องเลือก,
-Check this if you want to force the user to select a series before saving. There will be no default if you check this.,ตรวจสอบเรื่องนี้ถ้าคุณต้องการบังคับให้ผู้ใช้เลือกชุดก่อนที่จะบันทึก จะมีค่าเริ่มต้นไม่ถ้าคุณตรวจสอบนี้,
 Update Series,Series ปรับปรุง,
 Change the starting / current sequence number of an existing series.,เปลี่ยนหมายเลขลำดับเริ่มต้น / ปัจจุบันของชุดที่มีอยู่,
-Prefix,อุปสรรค,
-This is the number of the last created transaction with this prefix,นี่คือหมายเลขของรายการที่สร้างขึ้นล่าสุดกับคำนำหน้านี้,
-Update Series Number,จำนวน Series ปรับปรุง,
 Quotation Lost Reason,ใบเสนอราคา Lost เหตุผล,
 A third party distributor / dealer / commission agent / affiliate / reseller who sells the companies products for a commission.,จำหน่ายบุคคลที่สาม / ตัวแทนจำหน่าย / ตัวแทนคณะกรรมการ / พันธมิตร / ผู้ค้าปลีกที่ขายสินค้า บริษัท สำหรับคณะกรรมการ,
 Sales Partner Name,ชื่อพันธมิตรขาย,
@@ -7687,7 +7591,6 @@
 Warehouse wise Item Balance Age and Value,คลังสินค้าฉลาดสมดุลสินค้าอายุและมูลค่า,
 Work Order Stock Report,สร้างรายงานการสั่งซื้องาน,
 Work Orders in Progress,กำลังดำเนินการใบสั่งงาน,
-Validation Error,ข้อผิดพลาดในการตรวจสอบ,
 Automatically Process Deferred Accounting Entry,ประมวลผลรายการบัญชีรอตัดบัญชีโดยอัตโนมัติ,
 Bank Clearance,การหักบัญชีธนาคาร,
 Bank Clearance Detail,รายละเอียดการหักบัญชีธนาคาร,
@@ -7724,45 +7627,7 @@
 Therapy Plan: ,แผนการบำบัด:,
 Total Counts Targeted: ,จำนวนเป้าหมายทั้งหมด:,
 Total Counts Completed: ,จำนวนทั้งหมดเสร็จสมบูรณ์:,
-Andaman and Nicobar Islands,หมู่เกาะอันดามันและนิโคบาร์,
-Andhra Pradesh,รัฐอานธรประเทศ,
-Arunachal Pradesh,อรุณาจัลประเทศ,
-Assam,อัสสัม,
-Bihar,มคธ,
-Chandigarh,จั ณ ฑีครห์,
-Chhattisgarh,Chhattisgarh,
-Dadra and Nagar Haveli,Dadra และ Nagar Haveli,
-Daman and Diu,Daman และ Diu,
-Delhi,เดลี,
-Goa,กัว,
-Gujarat,คุชราต,
-Haryana,หรยาณา,
-Himachal Pradesh,หิมาจัลประเทศ,
-Jammu and Kashmir,ชัมมูและแคชเมียร์,
-Jharkhand,Jharkhand,
-Karnataka,กรณาฏกะ,
-Kerala,Kerala,
-Lakshadweep Islands,หมู่เกาะลักษทวีป,
-Madhya Pradesh,มัธยประเทศ,
-Maharashtra,รัฐมหาราษฏระ,
-Manipur,มณีปุระ,
-Meghalaya,เมฆาลัย,
-Mizoram,มิโซรัม,
-Nagaland,นากาแลนด์,
-Odisha,Odisha,
-Other Territory,ดินแดนอื่น ๆ,
-Pondicherry,พอนดิเชอร์รี,
-Punjab,ปัญจาบ,
-Rajasthan,ราชสถาน,
-Sikkim,สิกขิม,
-Tamil Nadu,ทมิฬนาฑู,
-Telangana,พรรคเตลัง,
-Tripura,ตริปุระ,
-Uttar Pradesh,อุตตรประเทศ,
-Uttarakhand,อุตตราขั ณ ฑ์,
-West Bengal,เบงกอลตะวันตก,
 Is Mandatory,เป็นข้อบังคับ,
-Published on,เผยแพร่เมื่อ,
 Service Received But Not Billed,บริการที่ได้รับ แต่ไม่ถูกเรียกเก็บเงิน,
 Deferred Accounting Settings,การตั้งค่าบัญชีรอตัดบัญชี,
 Book Deferred Entries Based On,จองรายการรอการตัดบัญชีตาม,
@@ -8035,8 +7900,6 @@
 Worksheet Instructions,คำแนะนำในใบงาน,
 Result Legend Print,พิมพ์คำอธิบายผล,
 Print Position,ตำแหน่งการพิมพ์,
-Bottom,ด้านล่าง,
-Top,ด้านบน,
 Both,ทั้งสอง,
 Result Legend,ตำนานผลลัพธ์,
 Lab Tests,การทดสอบในห้องปฏิบัติการ,
@@ -8081,12 +7944,10 @@
 Approvers,ผู้อนุมัติ,
 The first Approver in the list will be set as the default Approver.,ผู้อนุมัติคนแรกในรายการจะถูกตั้งเป็นผู้อนุมัติเริ่มต้น,
 Shift Request Approver,ผู้อนุมัติคำขอกะ,
-PAN Number,หมายเลข PAN,
 Provident Fund Account,บัญชีกองทุนสำรองเลี้ยงชีพ,
 MICR Code,รหัส MICR,
 Repay unclaimed amount from salary,ชำระคืนจำนวนเงินที่ไม่มีการเรียกร้องจากเงินเดือน,
 Deduction from salary,หักจากเงินเดือน,
-Expired Leaves,ใบหมดอายุ,
 If this is not checked the loan by default will be considered as a Demand Loan,หากไม่ได้ตรวจสอบเงินกู้โดยค่าเริ่มต้นจะถือว่าเป็น Demand Loan,
 This account is used for booking loan repayments from the borrower and also disbursing loans to the borrower,บัญชีนี้ใช้สำหรับจองการชำระคืนเงินกู้จากผู้กู้และการเบิกจ่ายเงินกู้ให้กับผู้กู้,
 This account is capital account which is used to allocate capital for loan disbursal account ,บัญชีนี้เป็นบัญชีทุนที่ใช้ในการจัดสรรเงินทุนสำหรับบัญชีการเบิกจ่ายเงินกู้,
@@ -8844,3 +8705,41 @@
 Creating Purchase Order ...,กำลังสร้างใบสั่งซื้อ ...,
 "Select a Supplier from the Default Suppliers of the items below. On selection, a Purchase Order will be made against items belonging to the selected Supplier only.",เลือกซัพพลายเออร์จากซัพพลายเออร์เริ่มต้นของรายการด้านล่าง ในการเลือกใบสั่งซื้อจะทำกับสินค้าที่เป็นของซัพพลายเออร์ที่เลือกเท่านั้น,
 Row #{}: You must select {} serial numbers for item {}.,แถว # {}: คุณต้องเลือก {} หมายเลขซีเรียลสำหรับรายการ {},
+Add Comment,เพิ่มความเห็น,
+More...,มากกว่า...,
+Notes,บันทึก,
+Payment Gateway,ช่องทางการชำระเงิน,
+Payment Gateway Name,ชื่อเกตเวย์การชำระเงิน,
+Payments,วิธีการชำระเงิน,
+Plan Name,ชื่อแผน,
+Portal,พอร์ทัล,
+Scan Barcode,สแกนบาร์โค้ด,
+Some information is missing,ข้อมูลบางอย่างจะหายไป,
+Successful,ที่ประสบความสำเร็จ,
+Tools,เครื่องมือ,
+Use Sandbox,ใช้ Sandbox,
+Busy,ไม่ว่าง,
+Completed By,เสร็จสมบูรณ์โดย,
+Payment Failed,การชำระเงินล้มเหลว,
+Column {0},คอลัมน์ {0},
+Field Mapping,การแมปฟิลด์,
+Not Specified,ไม่ระบุ,
+Update Type,ประเภทการอัพเดท,
+Dr,ดร,
+End Time,เวลาสิ้นสุด,
+Fetching...,การดึงข้อมูล ...,
+"It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.",ดูเหมือนว่ามีปัญหากับการกำหนดค่าแถบของเซิร์ฟเวอร์ ในกรณีที่เกิดความล้มเหลวจำนวนเงินจะได้รับคืนไปยังบัญชีของคุณ,
+Looks like someone sent you to an incomplete URL. Please ask them to look into it.,ดูเหมือนว่ามีคนส่งคุณไปยัง URL แบบไม่สมบูรณ์ กรุณาขอให้พวกเขาดูเป็นมัน,
+Master,เจ้านาย,
+Pay,จ่ายเงิน,
+You can also copy-paste this link in your browser,นอกจากนี้คุณยังสามารถคัดลอกวางการเชื่อมโยงในเบราว์เซอร์ของคุณ,
+Verified By,ตรวจสอบโดย,
+Invalid naming series (. missing) for {0},ชุดการตั้งชื่อไม่ถูกต้อง (. ไม่มี) สำหรับ {0},
+Phone Number,หมายเลขโทรศัพท์,
+Account SID,บัญชี SID,
+Global Defaults,เริ่มต้นทั่วโลก,
+Is Mandatory,เป็นข้อบังคับ,
+WhatsApp,WhatsApp,
+Make a call,ทำการโทร,
+Approve,อนุมัติ,
+Reject,ปฏิเสธ,
diff --git a/erpnext/translations/tr.csv b/erpnext/translations/tr.csv
index e0034c0..3708246 100644
--- a/erpnext/translations/tr.csv
+++ b/erpnext/translations/tr.csv
@@ -113,7 +113,6 @@
 Add Items,Ürünler Ekle,
 Add Leads,Teklif Ekle,
 Add Multiple Tasks,Birden Fazla Görev Ekle,
-Add Row,Satır Ekle,
 Add Sales Partners,Satış Ortakları Ekleyin,
 Add Serial No,Seri No Ekle,
 Add Students,Öğrenci Ekle,
@@ -211,9 +210,7 @@
 An error occurred during the update process,Güncelleme işlemi sırasında bir hata oluştu,
 "An item exists with same name ({0}), please change the item group name or rename the item","Bir Ürün aynı isimle bulunuyorsa ({0}), lütfen madde grubunu veya çıldırtıcı etiketini",
 Analyst,Analist,
-Analytics,Analitikler,
 Annual Billing: {0},Yıllık Fatura: {0},
-Anonymous,Anonim,
 Another Budget record '{0}' already exists against {1} '{2}' and account '{3}' for fiscal year {4},{1} &#39;{2}&#39; karşı bir başka bütçe kitabı &#39;{0}&#39; zaten var ve {4} mali yılı için &#39;{3}&#39; hesap var,
 Another Period Closing Entry {0} has been made after {1},{1} den sonra başka bir dönem kapatma girdisi {0} yapılmıştır,
 Another Sales Person {0} exists with the same Employee id,Başka Satış Kişi {0} aynı çalışan pozisyonu ile var,
@@ -283,14 +280,12 @@
 Attendance not submitted for {0} as {1} on leave.,"Katılım, {0} için ayrılmadan önce {1} olarak gönderilmedi.",
 Attribute table is mandatory,Özellik tablosu zorunludur,
 Attribute {0} selected multiple times in Attributes Table,Özellik {0} Nitelikler Tablo birden çok kez seçilmiş,
-Author,Yazar,
 Authorized Signatory,Yetkili imza,
 Auto Material Requests Generated,Otomatik Malzeme İstekler Oluşturulmuş,
 Auto Repeat,Otomatik Tekrarla,
 Auto repeat document updated,Otomatik tekrar dokümanı güncellendi,
 Automotive,Otomotiv,
 Available,Mevcut,
-Available Leaves,Mevcut İzinler,
 Available Qty,Mevcut Miktar,
 Available Selling,Mevcut Satış,
 Available for use date is required,Kullanılabilir olacağı tarih gereklidir,
@@ -340,7 +335,6 @@
 Base URL,Temel URL,
 Based On,Buna göre,
 Based On Payment Terms,Ödeme Vadesine göre,
-Basic,Temel,
 Batch,Parti (Batch),
 Batch Entries,Parti Girişleri,
 Batch ID is mandatory,Parti Numarası zorunludur,
@@ -361,7 +355,6 @@
 Billable Hours,Faturalandırılabilir Saatler,
 Billed,Faturalanan,
 Billed Amount,Faturalanan Tutar,
-Billing,Faturalama,
 Billing Address,Fatura Adresi,
 Billing Address is same as Shipping Address,"Fatura Adresi, Teslimat Adresiyle aynı",
 Billing Amount,Fatura Tutarı,
@@ -560,7 +553,6 @@
 Consumed Qty,Tüketilen Miktar,
 Consumer Products,Tüketici Ürünleri,
 Contact,İlgili Kişiler,
-Contact Details,İletişim Bilgileri,
 Contact Us,Bize ulaşın,
 Content,İçerik,
 Content Masters,İçerik Masters,
@@ -715,7 +707,6 @@
 Date of Joining,Katılma Tarihi,
 Date of Joining must be greater than Date of Birth,Katılım Tarihi Doğum Tarihinden büyük olmalıdır,
 Date of Transaction,işlem tarihi,
-Datetime,Tarihzaman,
 Day,Gün,
 Debit,Borç,
 Debit ({0}),Borç ({0}),
@@ -874,7 +865,6 @@
 Employee cannot report to himself.,Çalışan kendi kendine rapor olamaz.,
 Employee {0} has already applied for {1} between {2} and {3} : ,"Çalışan {0}, {1} için {2} ve {3} arasında zaten başvuruda bulundu:",
 Employee {0} of grade {1} have no default leave policy,{1} notunun {0} çalışanında varsayılan izin yok politikası yoktur,
-Enable,Etkinleştir,
 Enable / disable currencies.,/ Para birimlerini etkinleştirir/devre dışı bırakır.,
 Enabled,Etkin,
 "Enabling 'Use for Shopping Cart', as Shopping Cart is enabled and there should be at least one Tax Rule for Shopping Cart","Etkinleştirme Alışveriş Sepeti etkin olarak, &#39;Alışveriş Sepeti için kullan&#39; ve Alışveriş Sepeti için en az bir vergi Kural olmalıdır",
@@ -905,7 +895,6 @@
 Error: Not a valid id?,Hata: geçerli bir mahkeme?,
 Estimated Cost,Tahmini Maliyet,
 "Even if there are multiple Pricing Rules with highest priority, then following internal priorities are applied:","Eğer yüksek öncelikli birden çok Fiyatlandırma Kuralı varsa, şu iç önermeler geçerli olacaktır.",
-Event,Etkinlik,
 Exchange Gain/Loss,Kambiyo Kâr / Zarar,
 Exchange Rate Revaluation master.,Döviz Kuru Yeniden Değerleme ana.,
 Exchange Rate must be same as {0} {1} ({2}),Döviz Kuru aynı olmalıdır {0} {1} ({2}),
@@ -1032,7 +1021,6 @@
 From value must be less than to value in row {0},"Değerden, {0} bilgisindeki değerden az olmalıdır",
 From {0} | {1} {2},Gönderen {0} | {1} {2},
 Fulfillment,yerine getirme,
-Full,Tam,
 Full Name,Tam Adı,
 Fully Depreciated,Değer kaybı,
 Furnitures and Fixtures,Döşeme ve demirbaşlar,
@@ -1133,7 +1121,6 @@
 Hub Sync ID,Hub Senkronizasyon Kimliği,
 Human Resource,İnsan Kaynağı,
 Human Resources,İnsan Kaynakları,
-IFSC Code,IFSC Kodu,
 IGST Amount,IGST Tutarı,
 IP Address,IP adresi,
 ITC Available (whether in full op part),ITC Müsait (tam hüküm olsun),
@@ -1185,7 +1172,6 @@
 Ineligible ITC,Uygun olmayan ITC,
 Initiated,Başlatılan,
 Inpatient Record,Yatan Hasta Kaydı,
-Insert,Ekle,
 Installation Note,Kurulum Notları,
 Installation Note {0} has already been submitted,Kurulum Notu {0} zaten gönderildi,
 Installation date cannot be before delivery date for Item {0},Kurulum tarih Ürün için teslim tarihinden önce olamaz {0},
@@ -1197,7 +1183,6 @@
 Insurance Start date should be less than Insurance End date,Sigorta Başlangıç tarihi Bitiş tarihi Sigortası daha az olmalıdır,
 Integrated Tax,Entegre Vergi,
 Inter-State Supplies,Ülkeler arası Tedarik,
-Interests,İlgi Alanları,
 Internet Publishing,İnternet Yayıncılığı,
 Intra-State Supplies,Devlet İçi Malzemeler,
 Introduction,Giriş,
@@ -1316,7 +1301,6 @@
 Lab testing datetime cannot be before collection datetime,"Laboratuvar test tarih saati, toplama işlemi önce olamaz",
 Label,Etiket,
 Laboratory,Laboratuvar,
-Language Name,Dil Adı,
 Large,Büyük,
 Last Communication,Son İletişim,
 Last Communication Date,Son İletişim Tarihi,
@@ -1347,8 +1331,6 @@
 Letter Heads for print templates.,Baskı şablonları için antetli kağıtlar,
 Level,Seviye,
 Liability,Borç,
-License,Lisans,
-Limit,Limit,
 Limit Crossed,Limit Çapraz,
 Link to Material Request,Malzeme Talebi Bağlantısı,
 List of all share transactions,Tüm hisse senedi işlemlerinin listesi,
@@ -1359,7 +1341,6 @@
 Loans (Liabilities),Krediler (Yükümlülükler),
 Loans and Advances (Assets),Krediler ve Avanslar (Varlıklar),
 Local,Yerel,
-Log,Log,
 Logs for maintaining sms delivery status,Sms teslim durumunu korumak için günlükleri,
 Lost,Kaybedildi,
 Lost Reasons,Kayıp Nedenleri,
@@ -1445,7 +1426,6 @@
 Medical Department,Tıp Bölümü,
 Medical Record,Tıbbi kayıt,
 Medium,Orta,
-Meeting,toplantı,
 Member Activity,Üye Etkinliği,
 Member ID,Kullanıcı Kimliği,
 Member Name,Üye Adı,
@@ -1495,7 +1475,6 @@
 Multiple Variants,Çoklu Varyantlar,
 Multiple fiscal years exist for the date {0}. Please set company in Fiscal Year,{0} tarihi için birden fazla mali yıl bulunuyor. Lütfen firma için mali yıl tanımlayınız.,
 Music,Müzik,
-My Account,Hesabım,
 Name error: {0},İsim hatası: {0},
 Name of new Account. Note: Please don't create accounts for Customers and Suppliers,Yeni Hesabın Adı. Not: Müşteriler ve Tedarikçiler için hesap oluşturmayın,
 Name or Email is mandatory,Adı veya E-posta koruyucuları,
@@ -1538,7 +1517,6 @@
 New credit limit is less than current outstanding amount for the customer. Credit limit has to be atleast {0},Yeni kredi limiti müşteri için geçerli kalan miktar daha azdır. Kredi limiti en az olmak zorundadır {0},
 New task,yeni görev,
 New {0} pricing rules are created,Yeni {0} fiyatlandırma kuralları,
-Newsletters,Haber Bültenleri,
 Newspaper Publishers,Gazete Yayıncıları,
 Next,Sonraki,
 Next Contact By cannot be same as the Lead Email Address,Sonraki İletişim Sorumlusu Müşteri Aday Kaydının E-posta Adresi ile aynı olamaz,
@@ -1686,7 +1664,6 @@
 Other,Diğer,
 Other Reports,Diğer Raporlar,
 "Other outward supplies(Nil rated,Exempted)","Diğer dış sarf malzemeleri (Nil puan, Muaf)",
-Others,Diğer,
 Out Qty,Çıkış Miktarı,
 Out Value,Çıkış Değeri,
 Out of Order,bozuk,
@@ -1726,7 +1703,6 @@
 Party Type and Party is mandatory for {0} account,{0} hesabı için Cari Türü ve Cari zorunludur,
 Party Type is mandatory,Cari Tipi zorunludur,
 Party is mandatory,Cari zorunludur,
-Password,Parola,
 Past Due Date,Son Tarih,
 Patient,Hasta,
 Patient Appointment,Hasta Randevusu,
@@ -1784,7 +1760,6 @@
 Pharmaceutical,İlaç,
 Pharmaceuticals,İlaçlar,
 Physician,Doktor,
-Pincode,Pinkodu,
 Place Of Supply (State/UT),Tedarik Yeri (Devlet / UT),
 Place Order,Sipariş,
 Plan Name,Plan Adı,
@@ -1896,7 +1871,6 @@
 Please select date,tarih seçiniz,
 Please select item code,Ürün kodunu seçiniz,
 Please select month and year,Ay ve yıl seçiniz,
-Please select prefix first,Önce Ön ek seçiniz,
 Please select the Company,Lütfen Şirketi Seçiniz,
 Please select the Multiple Tier Program type for more than one collection rules.,Birden fazla kural koleksiyonu için lütfen Birden Çok Katmanlı Program türünü seçin.,
 Please select the assessment group other than 'All Assessment Groups',Lütfen &#39;Tüm Değerlendirme Grupları&#39; sonraki değerlendirme gruplarını seçin.,
@@ -1913,7 +1887,6 @@
 Please set Company filter blank if Group By is 'Company',Gruplandırılmış &#39;Şirket&#39; ise lütfen şirket filtresini boş olarak ayarlayın.,
 Please set Default Payroll Payable Account in Company {0},Şirket Standart Bordro Ödenecek Hesap ayarı {0},
 Please set Depreciation related Accounts in Asset Category {0} or Company {1},"Lütfen Değer Kaybı ile ilgili Hesapları, Varlık Kategorisi {0} veya Firma {1} içinde belirleyin",
-Please set Email Address,E-posta Adresini ayarla,
 Please set GST Accounts in GST Settings,Lütfen GST Ayarlarını GST Ayarlarında Ayarlayın,
 Please set Hotel Room Rate on {},Otel Oda Fiyatı'nı {} olarak ayarlayın.,
 Please set Number of Depreciations Booked,Amortisman Sayısı göstergesi,
@@ -1936,7 +1909,6 @@
 Please set the Email ID for the Student to send the Payment Request,Lütfen Ödeme İsteğini belirlemek için Öğrencinin E-posta Kimliği'ni ayarlayın.,
 Please set the Item Code first,Lütfen önce Öğe Kodu ayarı,
 Please set the Payment Schedule,Lütfen Ödeme Planını ayarlayın,
-Please set the series to be used.,Lütfen kullanım serilerini ayarlayın.,
 Please set {0} for address {1},Lütfen {1} adresi için {0} ayarını yapınız,
 Please setup Students under Student Groups,Lütfen Öğrencileri Öğrenci Grupları Altına Kurun,
 Please specify Company,Şirket belirtiniz,
@@ -1953,7 +1925,6 @@
 Point-of-Sale,POS Satış Noktası,
 Point-of-Sale Profile,Satış Noktası Profili,
 Portal,Portal,
-Portal Settings,Portal Ayarları,
 Possible Supplier,Olası Tedarikçi,
 Postal Expenses,Posta Giderleri,
 Posting Date,Gönderim Tarihi,
@@ -2152,12 +2123,10 @@
 Reference No is mandatory if you entered Reference Date,Referans Tarihi girerseniz Referans No saldırganlar,
 Reference No.,Referans No.,
 Reference Number,Referans Numarası,
-Reference Owner,Referans Sahibi,
 Reference Type,Referans Tipi,
 "Reference: {0}, Item Code: {1} and Customer: {2}","Referans: {0}, Ürün Kodu: {1} ve Müşteri: {2}",
 References,Referanslar,
 Refresh Token,Token Yenile,
-Region,Bölge,
 Register,Kayıt ol,
 Rejected,Reddedildi,
 Related,Bağlantılı,
@@ -2179,7 +2148,6 @@
 Replace BOM and update latest price in all BOMs,Tüm BOM'larda BOM'u değiştirin ve en son fiyatı güncelleyin.,
 Replied,Yanıtlandı,
 Report,Rapor,
-Report Builder,Rapor Oluşturucu,
 Report Type,Rapor Türü,
 Report Type is mandatory,Rapor Tipi zorunludur,
 Reports,Raporlar,
@@ -2355,13 +2323,11 @@
 Same Company is entered more than once,Aynı şirket birden fazla kızılır,
 Same item cannot be entered multiple times.,Aynı madde birden çok kez girilemez.,
 Same supplier has been entered multiple times,Aynı tedarikçi birden fazla kez girilmiş,
-Sample,Numune,
 Sample Collection,Örnek Koleksiyon,
 Sample quantity {0} cannot be more than received quantity {1},"Örnek miktarı {0}, alınan miktarn {1} fazla olamaz.",
 Sanctioned,seçildi,
 Sand,Kum,
 Saturday,Cumartesi,
-Saved,Kaydedilmiş,
 Saving {0},{0} kaydediliyor,
 Scan Barcode,Barkod Tara,
 Schedule,Planla,
@@ -2463,7 +2429,6 @@
 Series Updated,Serisi Güncellendi,
 Series Updated Successfully,Seri başarı güncellendi,
 Series is mandatory,Seri askerler,
-Series {0} already used in {1},Seriler {0} {1} de zaten kullanılmış,
 Service,Hizmet,
 Service Level Agreement,Hizmet Seviyesi Anlaşması,
 Service Level Agreement.,Hizmet Seviyesi Anlaşması.,
@@ -2479,7 +2444,6 @@
 Set Tax Rule for shopping cart,Alışveriş sepeti için ayarlanan Vergi Kural,
 Set as Closed,Kapalı olarak ayarla,
 Set as Completed,Tamamlandı olarak ayarla,
-Set as Default,Varsayılan olarak ayarla,
 Set as Lost,Kayıp olarak ayarla,
 Set as Open,Açık olarak ayarlayın,
 Set default inventory account for perpetual inventory,Sürekli envanter için harici envanter hesabı ayarlandı,
@@ -2511,7 +2475,6 @@
 Shareholder,Hissedar,
 Ship To State,Eyalete Gönderim,
 Shipments,Gönderiler,
-Shipping,Nakliye,
 Shipping Address,Nakliye Adresi,
 "Shipping Address does not have country, which is required for this Shipping Rule","Nakliye Adresi, bu Nakliye Kuralı için gerekli olan ülke içermiyor",
 Shipping rule only applicable for Buying,Nakliye kuralları yalnızca Alış için geçerlidir,
@@ -2564,7 +2527,6 @@
 Split Batch,Batch/Parti Böl,
 Split Issue,Sorunu Böl,
 Sports,Spor,
-Standard,Standart,
 Standard Buying,Standart Alış,
 Standard Selling,Standart Satış,
 Standard contract terms for Sales or Purchase.,Satış veya Satınalma için standart sözleşme hükümleri.,
@@ -2731,7 +2693,6 @@
 Terms and Conditions,Şartlar ve Koşullar,
 Terms and Conditions Template,Şartlar ve Koşullar Şablonu,
 Territory,Bölge,
-Test,Test,
 Thank you for your business!,İşiniz için teşekkür ederim!,
 The 'From Package No.' field must neither be empty nor it's value less than 1.,'Paketten Numara' alanı ne boş ne de 1'den küçük bir değer olmalıdır.,
 The Brand,Marka,
@@ -2848,7 +2809,6 @@
 Total (Without Tax),Toplam (Vergi hariç),
 Total Achieved,Toplam Eldeki,
 Total Actual,Gerçek Toplam,
-Total Allocated Leaves,Toplam Tahsis Edilen İzin,
 Total Amount,Toplam Tutar,
 Total Amount Credited,Kredili Toplam Tutar,
 Total Applicable Charges in Purchase Receipt Items table must be same as Total Taxes and Charges,Satınalma Makbuzu Vergi Öğeleri tablosundaki toplam uygulanabilir Masraflar Toplam ve Masraflar aynı olmalıdır,
@@ -2892,7 +2852,6 @@
 Total(Amt),Toplam (AMT),
 Total(Qty),Toplam (Adet),
 Traceability,İzlenebilirlik,
-Traceback,Geri takip,
 Track Leads by Lead Source.,Lead Source tarafından Leads izleyin.,
 Transaction,İşlem,
 Transaction Date,İşlem Tarihi,
@@ -2930,7 +2889,6 @@
 UOM Conversion factor is required in row {0},Ölçü Birimi Dönüşüm tüketimi satırı {0} da gereklidir,
 UOM coversion factor required for UOM: {0} in Item: {1},Ürün {1} de Ölçü Birimi: {0} için Ölçü Birimi dönüştürme parametresi dahildir.,
 URL,URL,
-Unable to find DocType {0},DocType {0} bulunamadı,
 Unable to find exchange rate for {0} to {1} for key date {2}. Please create a Currency Exchange record manually,Anahtar tarih {2} için {0} ila {1} arası döviz kuru bulunamadı. Lütfen bir Döviz taşıma kaydırma el ile oluşturun,
 Unable to find score starting at {0}. You need to have standing scores covering 0 to 100,{0} &#39;da başlarken skor bulunamadı. 0'dan 100'e kadar olan ayakta puanlara sahip olmanız gerekir,
 Unable to find variable: ,işletim bulunamadı:,
@@ -2960,7 +2918,6 @@
 Upload your letter head and logo. (you can edit them later).,Mektup baş ve logo yükleyin. (Daha sonra bunları düzenleyebilirsiniz).,
 Upper Income,üst gelir,
 Use Sandbox,Kullanım Sandbox,
-Used Leaves,Kullanılan İzin,
 User,Kullanıcı,
 User ID,Kullanıcı kimliği,
 User ID not set for Employee {0},Çalışan {0} için kullanıcı sıfatı ayarlanmamış,
@@ -3051,7 +3008,6 @@
 Website Settings,Web Sitesi Ayarları,
 Wednesday,Çarşamba,
 Week,Haftalık,
-Weekdays,Hafta içi,
 Weekly,Haftalık,
 "Weight is mentioned,\nPlease mention ""Weight UOM"" too","Ağırlık çok ""Ağırlık Ölçü Birimi"" Belirtiniz \n, söz verilmektedir",
 Welcome email sent,Hoşgeldiniz e-posta gönderimi yapılır,
@@ -3072,7 +3028,6 @@
 Work Order {0} must be submitted,İş emri {0} sunulmalıdır,
 Work Orders Created: {0},Oluşturulan İş Emirleri: {0},
 Work-in-Progress Warehouse is required before Submit,Göndermeden önce Work-in-Progress Deposu gereklidir,
-Workflow,Workflow,
 Working,Çalışıyor,
 Working Hours,Çalışma Saatleri,
 Workstation,İş İstasyonu,
@@ -3102,7 +3057,6 @@
 You need to be a user other than Administrator with System Manager and Item Manager roles to register on Marketplace.,Marketplace'e kayıt olmak için Sistem Yöneticisi ve Ürün Yöneticisi rolleriyle Yönetici dışında bir kullanıcı olmanız gerekir.,
 You need to be a user with System Manager and Item Manager roles to add users to Marketplace.,Kullanıcıları Marketplace'te bulunmak için Sistem Yöneticisi ve Ürün Yöneticisi rolleri olan bir kullanıcı olmanız gerekir.,
 You need to be a user with System Manager and Item Manager roles to register on Marketplace.,Marketplace'e kayıt olmak için Sistem Yöneticisi ve Ürün Yöneticisi rolleri olan bir kullanıcı olmanız gerekir.,
-You need to be logged in to access this page,Bu sayfaya erişmek için giriş yapmış olmanız gerekmektedir.,
 You need to enable Shopping Cart,Alışveriş sepetini etkinleştirmeniz gereklidir,
 You will lose records of previously generated invoices. Are you sure you want to restart this subscription?,geçmişteki faturaların kayıtlarını kaybedersiniz. Bu aboneliği tekrar başlatmak istediğinizden emin misiniz?,
 Your Organization,Kuruluşunuz,
@@ -3218,7 +3172,6 @@
 Assigned To,Atanan,
 Chat,Sohbet,
 Completed By,Tamamlayan,
-County,Kontluk,
 Day of Week,Haftanın günü,
 Default Value,Varsayılan Değer,
 Email Group,E-posta Grubu,
@@ -3228,31 +3181,21 @@
 Fieldtype,AlanTipi,
 Help Articles,Yardım Makaleleri,
 ID,ID,
-Images,Görüntüler,
 Import,İçe Aktar,
 Language,Dil,
 Likes,Beğeniler,
 Merge with existing,Varolan ile Birleştir,
-Office,Ofis,
 Orientation,Oryantasyon,
 Parent,Ana Kalem,
-Passive,Pasif,
 Payment Failed,Ödeme başarısız,
-Permanent,kalıcı,
 Personal,Kişisel,
-Plant,tesis,
 Post,Gönder,
-Postal,posta,
 Postal Code,Posta Kodu,
-Previous,Önceki,
 Provider,Sağlayıcı,
 Read Only,Tuz Okunur,
 Recipient,alıcı,
 Reviews,yorumlar,
 Sender,Sevkiyatçı,
-Shop,mağaza,
-Subsidiary,Yardımcı,
-There is some problem with the file url: {0},Dosya url ile bazı sorun var: {0},
 There were errors while sending email. Please try again.,E-posta gönderirken hatalar vardı. Lütfen tekrar deneyin.,
 Values Changed,Değerler Değişti,
 or,veya,
@@ -3279,19 +3222,16 @@
 Quality Feedback Template,Kalite Geribildirim Şablonu,
 Rules for applying different promotional schemes.,Farklı promosyon programlarını uygulama kuralları.,
 Show {0},Göster {0} ,
-"Special Characters except '-', '#', '.', '/', '{{' and '}}' not allowed in naming series {0}","&quot;-&quot;, &quot;#&quot;, &quot;.&quot;, &quot;/&quot;, &quot;{{&quot; ve &quot;}}&quot; Dış Özel Karakterler, dizi dizisine izin verilmez {0}",
 Target Details,Hedef Detayları,
 {0} already has a Parent Procedure {1}.,{0} zaten bir {1} veli yapıya sahip.,
 API,API,
 Annual,Yıllık,
 Change,Değiştir,
 Contact Email,İletişim E-Posta,
-Export Type,Export Türü,
 From Date,Baş. Tarihi,
 Group By,Gruplama Ölçütü,
 Invalid URL,Geçersiz URL,
 Landscape,Landscape,
-Last Sync On,Son Senkronizasyon Açık,
 Naming Series,Adlandırma Serisi,
 No data to export,Verilecek veri yok,
 Portrait,Portrait,
@@ -3301,7 +3241,6 @@
 Show Document,Belgeyi Göster,
 Show Traceback,Geri İzlemeyi Göster,
 Video,Video,
-Webhook Secret,Webhook Secret,
 % Of Grand Total,Genel Toplamın % &#39;si,
 <b>Company</b> is a mandatory filter.,<b>Şirket</b> zorunlu bir filtredir.,
 <b>From Date</b> is a mandatory filter.,<b>Başlangıç Tarihi</b> zorunlu bir filtredir.,
@@ -3357,7 +3296,6 @@
 BOM Comparison Tool,Malzeme Listesi Karşılaştırma Aracı,
 BOM recursion: {0} cannot be child of {1},"BOM özyineleme: {0}, {1} öğenin alt öğesi olamaz",
 BOM recursion: {0} cannot be parent or child of {1},"BOM özyinelemesi: {0}, {1} ürünün ebeveyni veya çocuğu olamaz",
-Back to Home,Eve Geri dön,
 Back to Messages,Mesajlara Geri Dön,
 Bank Data mapper doesn't exist,Banka Verileri eşleştiricisi mevcut değil,
 Bank Details,Banka Detayları,
@@ -3419,7 +3357,6 @@
 Currency,Para Birimi,
 Current Status,Şu anki durum,
 Customer PO,Müşteri PO,
-Customize,Özelleştir,
 Daily,Günlük,
 Date,Tarih,
 Date of Birth cannot be greater than Joining Date.,"Doğum Tarihi, Giriş Tarihinden daha büyük olamaz.",
@@ -3453,7 +3390,6 @@
 ERPNext could not find any matching payment entry,ERPNext'e bir ödeme girişi bulunamadı,
 Earliest Age,En Erken Yaş,
 Edit Details,Detayları düzenlemek,
-Edit Profile,profil düzenleme,
 Either GST Transporter ID or Vehicle No is required if Mode of Transport is Road,Ulaştırma Modu Yol ise GST Nakliyeci Kimliği ya da Araç No mevcuttur.,
 Email,E-posta,
 Email Campaigns,E-posta Kampanyaları,
@@ -3481,7 +3417,6 @@
 Fetch Items from Warehouse,Depodan Eşya Al,
 Fetching...,Getiriliyor...,
 Field,Alan,
-File Manager,Dosya Yöneticisi,
 Filters,Filtreler,
 Finding linked payments,Bağlantılı ödemeleri bulma,
 Fleet Management,Filo Yönetimi,
@@ -3520,7 +3455,6 @@
 Incorrect Warehouse,Yanlış Depo,
 Invalid Barcode. There is no Item attached to this barcode.,Geçersiz Barkod Bu barkoda ekli bir ürün yok.,
 Invalid credentials,Geçersiz kimlik bilgileri,
-Invite as User,kullanıcı olarak Davet et,
 Issue Priority.,Sorun Önceliği.,
 Issue Type.,Sorun Tipi.,
 "It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","Sunucunun şerit çevresinde bir sorun var gibi görünüyor. Arıza durumunda, tutarları iade edilir.",
@@ -3563,7 +3497,6 @@
 New Invoice,yeni fatura,
 New Payment,Yeni Ödeme,
 New release date should be in the future,Yeni çıkış tarihi olmalı,
-Newsletter,Bülten,
 No Account matched these filters: {},Bu filtrelerle doldurma Hesap yok: {},
 No communication found.,İletişim bulunamadı.,
 No correct answer is set for {0},{0} için doğru cevap ayarlanmadı,
@@ -3639,7 +3572,6 @@
 Please setup a default bank account for company {0},Lütfen {0} şirketi için genel bir banka hesabı kurun,
 Please specify,Lütfen belirtiniz,
 Please specify a {0},Lütfen bir {0} kullanmak,
-Printing,Baskı,
 Priority,Öncelik,
 Priority has been changed to {0}.,Öncelik {0} olarak değiştirildi.,
 Priority {0} has been repeated.,{0} önceliği tekrarlandı.,
@@ -3648,7 +3580,6 @@
 Project,Proje,
 Provide the academic year and set the starting and ending date.,Akademik yıl dönümü ve başlangıç ve bitiş tarihini ayarlayın.,
 Public token is missing for this bank,Bu banka için genel belirteç eksik,
-Publish,Yayınla,
 Publish 1 Item,1 Öğe Yayınla,
 Publish Items,Öğeleri Yayınla,
 Publish More Items,Daha Fazla Öge Yayınla,
@@ -3676,7 +3607,6 @@
 Reconciled,Mutabık,
 Recruitment,İşe Alım,
 Red,Kırmızı,
-Refreshing,Yenileniyor,
 Release date must be in the future,Çıkış tarihi olmalı,
 Relieving Date must be greater than or equal to Date of Joining,"Rahatlama Tarihi, Katılım Tarihinden büyük veya ona eşit olmalıdır",
 Rename,Yeniden adlandır,
@@ -3720,7 +3650,6 @@
 Search for a payment,Ödeme Ara,
 Search for anything ...,Bir şey arayın...,
 Search results for,Arama sonuçları için,
-Select All,Tümünü Seç,
 Select Difference Account,Fark Hesabı Seç,
 Select a Default Priority.,Varsayılan bir öğe seçin.,
 Select a company,Bir şirket seçin,
@@ -3739,11 +3668,9 @@
 Service Level Agreement has been changed to {0}.,Hizmet Seviyesi Sözleşmesi {0} olarak kaldırıldı.,
 Service Level Agreement was reset.,Hizmet Seviyesi Anlaşması sıfırlandı.,
 Service Level Agreement with Entity Type {0} and Entity {1} already exists.,{0} Varlığı ve {1} Varlığı ile Hizmet Seviyesi Anlaşması zaten var.,
-Set,Ayarla,
 Set Meta Tags,Meta Etiketleri Ayarla,
 Set {0} in company {1},{1} şirketinde {0} Ayarla,
 Setup,Kurulum,
-Setup Wizard,Kurulum Sihirbazı,
 Shift Management,Vardiya Yönetimi,
 Show Future Payments,Gelecekteki Ödemeleri Göster,
 Show Linked Delivery Notes,Bağlı İrsaliyeleri Göster,
@@ -3814,7 +3741,6 @@
 Unreconciled,Uzlaşmamış,
 Unsupported GST Category for E-Way Bill JSON generation,E-Way Bill JSON nesli için desteklenmeyen GST Kategorisi,
 Update,Güncelle,
-Update Details,Ayrıntıları Güncelle,
 Update Taxes for Items,Öğeler için Vergileri Güncelle,
 "Upload a bank statement, link or reconcile a bank account","Bir banka ekstresi yükleyin, bir banka hesabını çalıştırın veya mutabakat yapın",
 Upload a statement,Bir ifade yükle,
@@ -3838,7 +3764,6 @@
 XML Files Processed,İşlenen XML Dosyaları,
 Year,Yıl,
 Yearly,Yıllık,
-You,Şahsım,
 You are not allowed to enroll for this course,Bu kursa kayıt olma izniniz yok,
 You are not enrolled in program {0},{0} zorla kaydolmadınız,
 You can Feature upto 8 items.,8 öğeye kadar Özelleştirebilirsiniz.,
@@ -3855,7 +3780,6 @@
 e-Way Bill already exists for this document,e-İrsaliye bu belge için zaten var,
 woocommerce - {0},WooCommerce - {0},
 {0} Coupon used are {1}. Allowed quantity is exhausted,{0} Kullanılan kupon {1}. İzin verilen miktar tükendi,
-{0} Name,{0} Adı,
 {0} Operations: {1},{0} İşlemler: {1},
 {0} bank transaction(s) created,{0} banka işlemi oluşturuldu,
 {0} bank transaction(s) created and {1} errors,{0} banka işlemi oluşturuldu ve {1} hatalar,
@@ -3874,17 +3798,13 @@
 Total Income,toplam gelir,
 Total Income This Year,Bu Yıl Toplam Gelir,
 Barcode,Barkod,
-Bold,cesur,
-Center,Merkez,
 Clear,Açık,
-Comment,Yorum Yap,
 Comments,Yorumlar,
 DocType,Belge Türü,
 Download,İndir,
 Left,Sol,
 Link,bağlantı,
 New,Yeni,
-Not Found,Bulunamadı,
 Print,Yazdır,
 Reference Name,Referans Adı,
 Refresh,Yenile,
@@ -3907,7 +3827,6 @@
 Email Id,E-posta kimliği,
 No,Hayır,
 Reference Doctype,Referans Belge Türü,
-User Id,Kullanıcı kimliği,
 Yes,Evet,
 Actual ,Gerçek ,
 Add to cart,Sepete Ekle,
@@ -4303,7 +4222,6 @@
 e.g Adjustments for:,örn. Şunun için Ayarlamalar:,
 Section Subtotal,Bölüm Toplamı,
 Section Footer,Bölüm Altbilgisi,
-Position,Pozisyon,
 Cash Flow Mapping,Nakit Akışı Eşleme,
 Select Maximum Of 1,Maksimum 1'i seçin,
 Is Finance Cost,Mali Maliyet mi,
@@ -4935,7 +4853,6 @@
 Previous Business Day,Önceki İş Günü,
 Next Business Day,Bir sonraki iş gününde,
 Urgent,Acil,
-Crop,Mahsul,
 Crop Name,Mahsul adı,
 Scientific Name,Bilimsel Adı,
 "You can define all the tasks which need to carried out for this crop here. The day field is used to mention the day on which the task needs to be carried out, 1 being the 1st day, etc.. ","Burada bu bitki için yapılması gereken tüm görevleri tanımlayabilirsiniz. Gün alanı, görevin yerine getirilmesi gereken gün, 1'i 1. gün olmak üzere dikkat için kullanılır.",
@@ -5440,7 +5357,6 @@
 To TIme,Zamana,
 Course End Date,Kurs Bitiş Tarihi,
 Course Topic,Ders Konusu,
-Topic,konu,
 Topic Name,Konu Adı,
 Education Settings,Eğitim Ayarları,
 Current Academic Year,Mevcut Akademik Yıl,
@@ -5515,7 +5431,6 @@
 Check this if the Student is residing at the Institute's Hostel.,Öğrenci Enstitü Pansiyonunda ikamet ediyorsa bunu kontrol edin.,
 Walking,Yürüme,
 Institute's Bus,Enstitü Otobüsü,
-Public Transport,toplu taşıma,
 Self-Driving Vehicle,kendinden tahrikli araç,
 Pick/Drop by Guardian,Koruyucu tarafından Pick / Bırak,
 Enrolled courses,Kayıtlı kurslar,
@@ -5696,7 +5611,6 @@
 Default Cost Center,Standart Maliyet Merkezi,
 Undeposited Funds Account,Belirtilmemiş Fon Hesabı,
 Shopify Log,Shopify Günlüğü,
-Request Data,Veri İste,
 Shopify Settings,Shopify Ayarları,
 status html,durum html,
 Enable Shopify,Shopify Etkinleştir,
@@ -5816,7 +5730,6 @@
 Exercise Instructions,Egzersiz Talimatları,
 Exercise Video,Egzersiz Videoları,
 Exercise Steps,Egzersiz Adımları,
-Steps,Adımlar,
 Steps Table,Adım Tablosu,
 Exercise Type Step,Egzersiz Türü Adım,
 Max number of visit,Maks Ziyaret Sayısı,
@@ -6000,7 +5913,6 @@
 Patient Encounter Symptom,Hasta Karşılaşma Semptomu,
 HLC-PMR-.YYYY.-,HLC-FTR-.YYYY.-,
 Attach Medical Record,Tıbbi Kayıt Ekleyin,
-Reference DocType,Referans Belge Türü,
 Spouse,Eş,
 Family,aile,
 Schedule Details,Program Ayrıntıları,
@@ -6982,16 +6894,8 @@
 HTML / Banner that will show on the top of product list.,Ürün listesinin muhafazaları HTML / Banner.,
 Set prefix for numbering series on your transactions,İşlemlerinizde seri numaralandırma için ön ek ayarı,
 Setup Series,Seri Kurulumu,
-Select Transaction,İşlem Seçin,
-Help HTML,Yardım HTML'si,
-Series List for this Transaction,Bu İşlem için Seri Listesi,
-User must always select,Kullanıcı her zaman seçmelidir,
-Check this if you want to force the user to select a series before saving. There will be no default if you check this.,Kullanıcıya kaydetmekten önce seri seçmek istiyorum. Eğer işaretlerseniz atanmış seri olmayacak.,
 Update Series,Seriyi Güncelle,
 Change the starting / current sequence number of an existing series.,Varolan bir serinin başlangıcı / geçerli sıra numarası kuralları.,
-Prefix,Önek,
-This is the number of the last created transaction with this prefix,Bu ön ekle son genişleme miktarıdır,
-Update Series Number,Seri Numaralarını Güncelle,
 Quotation Lost Reason,Teklif Kayıp Nedeni,
 A third party distributor / dealer / commission agent / affiliate / reseller who sells the companies products for a commission.,Bir komisyon için kuruluşlar birimleri şeytan bir üçüncü taraf sağlayıcı / bayi / komisyon ajan / ortaklık / bayi.,
 Sales Partner Name,Satış Ortağı Adı,
@@ -7686,7 +7590,6 @@
 Warehouse wise Item Balance Age and Value,Depo bazında Öğe Bakiye Yaşı ve Değeri,
 Work Order Stock Report,İş Emri Stok Raporu,
 Work Orders in Progress,Devam eden İş Emirleri,
-Validation Error,Doğrulama Hatası,
 Automatically Process Deferred Accounting Entry,Ertelenmiş Muhasebe Girişini Otomatik Olarak İşle,
 Bank Clearance,Banka Gümrükleme,
 Bank Clearance Detail,Banka Gümrükleme Detayı,
@@ -7723,45 +7626,7 @@
 Therapy Plan: ,Terapi Planı: ,
 Total Counts Targeted: ,Hedeflenen Toplam Sayımlar: ,
 Total Counts Completed: ,Tamamlanan Toplam Sayımlar: ,
-Andaman and Nicobar Islands,Andaman ve Nikobar Adaları,
-Andhra Pradesh,Andra Pradeş,
-Arunachal Pradesh,Arunaçal Pradeş,
-Assam,Assam,
-Bihar,Bihar,
-Chandigarh,Chandigarh,
-Chhattisgarh,Chattisgarh,
-Dadra and Nagar Haveli,Dadra ve Nagar Haveli,
-Daman and Diu,Daman ve Diu,
-Delhi,Delhi,
-Goa,Goa,
-Gujarat,Gucerat,
-Haryana,Haryana,
-Himachal Pradesh,Himaşal Pradeş,
-Jammu and Kashmir,Jammu ve Keşmir,
-Jharkhand,Carkhand,
-Karnataka,Karnataka,
-Kerala,Kerala,
-Lakshadweep Islands,Lakshadweep Adaları,
-Madhya Pradesh,Madya Pradeş,
-Maharashtra,Maharaştra,
-Manipur,Manipur,
-Meghalaya,Meghalaya,
-Mizoram,Mizoram,
-Nagaland,Nagaland,
-Odisha,Odişa,
-Other Territory,Diğer Bölge,
-Pondicherry,Kiraz,
-Punjab,Kalem Kapağı,
-Rajasthan,Rajasthan,
-Sikkim,Sikkim,
-Tamil Nadu,Tamil Nadu,
-Telangana,Telangana,
-Tripura,Tripu,
-Uttar Pradesh,Uttar Pradeş,
-Uttarakhand,Uttarkand,
-West Bengal,Batı Bengal,
 Is Mandatory,Zorunludur,
-Published on,Yayınlanma tarihi,
 Service Received But Not Billed,Hizmet Alındı ama Faturalandırılmadı,
 Deferred Accounting Settings,Ertelenmiş Hesap Ayarları,
 Book Deferred Entries Based On,Defter Ertelenmiş Kayıtları şuna göre,
@@ -8034,8 +7899,6 @@
 Worksheet Instructions,Çalışma Sayfası Talimatları,
 Result Legend Print,Sonuç Gösterge Baskısı,
 Print Position,Baskı Pozisyonu,
-Bottom,Alternatif,
-Top,Üst,
 Both,Her ikisi de,
 Result Legend,Açıklama Sonuçları,
 Lab Tests,laboratuvar testi,
@@ -8080,12 +7943,10 @@
 Approvers,Onaylayanlar,
 The first Approver in the list will be set as the default Approver.,"Listedeki ilk Onaylayan, varsayılan Onaylayan olarak ayarlanacaktır.",
 Shift Request Approver,Vardiya İsteği Onaylayıcısı,
-PAN Number,PAN Numarası,
 Provident Fund Account,İhtiyat Fonu Hesabı,
 MICR Code,MICR Kodu,
 Repay unclaimed amount from salary,Talep edilmeyen maaştan geri ödeyin,
 Deduction from salary,Maaştan kesinti,
-Expired Leaves,Süresi biten İzinler,
 If this is not checked the loan by default will be considered as a Demand Loan,"Bu kontrol reddedilirse, varsayılan olarak kredi bir Talep Kredisi olarak kabul edilecektir.",
 This account is used for booking loan repayments from the borrower and also disbursing loans to the borrower,"Bu hesap, borçludan kredi geri ödemelerini yapmak ve ayrıca borçluya kredi vermek için kullanılır.",
 This account is capital account which is used to allocate capital for loan disbursal account ,"Bu hesap, kredi ödeme hesabına sermaye tahsis etmek için kullanılan sermaye hesabıdır.",
@@ -8844,7 +8705,6 @@
 "Select a Supplier from the Default Suppliers of the items below. On selection, a Purchase Order will be made against items belonging to the selected Supplier only.","Aşağıdaki seçenekler varsayılan tedarikçilerinden bir tedarikçi seçin. Seçim üzerine, yalnızca seçilen tedarikçiye ait ürünler için bir Satınalma Siparişi verecek.",
 Row #{}: You must select {} serial numbers for item {}.,Satır # {}: {} öğe için {} seri numaralarını seçmelisiniz.,
 qty,Miktar,
-Bulk Edit,Toplu Düzenle,
 Qualified,Nitelikli,
 Unqualified,Niteliksiz,
 Qualified By,Yeterlilik Veren,
@@ -8856,7 +8716,6 @@
 Update Existing Price List Rate,Mevcut Fiyat Listesi Oranını Güncelle,
 Stock Transactions Settings,Stok İşlem Ayarları,
 Role Allowed to Over Deliver/Receive,Aşırı Teslim Etmeye/Almaya İzin Verilen Rol,
-Reports & Masters,Raporlar ve Masterlar,
 Let's Set Up the Assets Module.,Assets Modülünü Kuralım!,
 "Assets, Depreciations, Repairs, and more.","Varlıklar, Amortismanlar, Onarımlar ve daha fazlası.",
 Review Fixed Asset Accounts,Sabit Kıymet Hesaplarını İnceleyin,
@@ -8873,10 +8732,6 @@
 Create first Purchase Order,İlk Satınalma Siparişini oluşturun,
 Opening & Closing,Açılış & Kapanış,
 Connections,Bağlantılar,
-Basic Info,Temel Bilgiler,
-Desk Settings,Desk Ayarları,
-Desk Theme,Desk Teması,
-Roles & Permissions,Roller ve İzinler,
 Items & Pricing,Ürünler & Fiyatlandırma,
 Let's Set Up the Stock Module,Haydi Stok Modülünü Kuralım!,
 Set up your Warehouse,Deponuzu Ayarlayın,
@@ -8981,22 +8836,11 @@
 Primary Address and Contact,Birincil Adres ve İletişim,
 Auto Creation of Contact,Kişinin Otomatik Oluşturulması,
 Control Historical Stock Transactions,Geçmiş Stok İşlemlerini Kontrol Et,
-You have not entered a value. The field will be set to empty.,Bir değer girmediniz. Alan boş olarak ayarlanacaktır.,
 No stock transactions can be created or modified before this date.,Bu tarihten önce hisse senedi hareketleri oluşturulamaz veya değiştirilemez.,
 Role Allowed to Create/Edit Back-dated Transactions,Geriye Dönük İşlemleri Oluşturma / Düzenleme İzni Rolü,
 "If mentioned, the system will allow only the users with this Role to create or modify any stock transaction earlier than the latest stock transaction for a specific item and warehouse. If set as blank, it allows all users to create/edit back-dated transactions.","Belirtilirse, sistem yalnızca bu Role sahip kullanıcıların belirli bir kalem ve depo için en son stok işleminden önceki herhangi bir stok işlemini oluşturmasına veya değiştirmesine izin verecektir. Boş olarak ayarlanırsa, tüm kullanıcıların geçmiş tarihli oluşturmasına/düzenlemesine izin verir. işlemler.",
 Stock transactions that are older than the mentioned days cannot be modified.,Belirtilen günlerden daha eski olan hisse senedi işlemleri değiştirilemez.,
 "The percentage you are allowed to transfer more against the quantity ordered. For example, if you have ordered 100 units, and your Allowance is 10%, then you are allowed transfer 110 units.","Sipariş edilen miktara göre daha fazla transfer etmenize izin verilen yüzde. Örneğin, 100 birim sipariş ettiyseniz ve Ödeneğiniz %10 ise, 110 birim transfer etmenize izin verilir.",
-"Link that is the website home page. Standard Links (home, login, products, blog, about, contact)","Web sitesi ana sayfası olan bağlantı. Standart Bağlantılar (ana sayfa, giriş, ürünler, blog, hakkında, iletişim)",
-Show Language Picker,Dil Seçiciyi Göster,
-Login Page,Login / Giriş Sayfası,
-App Logo,Uygulama Logosu,
-Splash Image,Açılış Görüntüsü,
-Account Deletion Settings,Hesap Silme Ayarları,
-Auto Account Deletion within (Hours),(Saat) İçerisinde Otomatik Hesap Silme,
-Show Account Deletion Link in My Account Page,Hesabım Sayfasında Hesap Silme Bağlantısını Göster,
-Footer Details,Altbilgi Ayrıntıları,
-Custom Footer,Özel Alt bilgi,
 Qty As Per BOM,BOMa göre Mik,
 Distribute Manually,Manuel olarak Dağıt,
 Raw Materials Warehouse,Hammadde Deposu,
@@ -9045,7 +8889,6 @@
 Bank Reconciliation Tool,Banka Uzlaştırma Aracı,
 Sales Order Reference,Satış Siparişi Referansı,
 Contact & Address,İletişim ve Adres,
-Ref DocType,Ref Belge Türü,
 FG Warehouse,Mamul Deposu,
 Tax Detail,Vergi Detayı,
 Other Info,Diğer Bilgiler,
@@ -9070,8 +8913,6 @@
 Probability,Olasılık,
 BOM Info,Ürün Ağacı / BOM Bilgisi,
 Closing,Kapanış,
-"Header, Robots","Başlık, Robotlar"
-Redirects,Yönlendirmeler,
 Elements,Elementler,
 Operation Section,Operasyon Bölümü,
 Scrap Item Code,Hurda Ürün Kodu,
@@ -9101,12 +8942,7 @@
 Permission Manager,İzin Yöneticisi,
 Warehouse Wise Stock Balance,Stok Bakiyesi Depo bazında,
 Review Stock Settings,Stok Ayarlarını İnceleyin,
-Configure Columns,Kolonları Ayarla,
-Column Width,Kolon Genişliği,
 Delayed Tasks Summary,Geciken Görevler Özeti,
-Add / Remove Columns,Kolon Ekle / Kaldır,
-Reset to default,Varsayılana Sıfırla,
-Copy error to clipboard,Hatayı panoya kopyala,
 Rate of Stock UOM,Stok Birimi Oranı,
 Provisional Expense Account,Geçici Gider Hesabı,
 Qty in Stock UOM,Stok Biriminde Miktar,
@@ -9118,14 +8954,49 @@
 Received Qty in Stock UOM,Stok Biriminde Alınan Miktar,
 Accepted Qty in Stock UOM,Stok Biriminde Kabul edilen Miktar,
 FG based Operating Cost,Mamül bazlı Operasyon Maliyeti,
-Update {0} records,{0} Kaydı Güncelle,
-Document Linking,Belge Bağlantısı,
 Applying Discount,İndirim Uygula,
 Recurring Sales Order,Yinelenen Satış Siparişi,
-Outgoing (SMTP) Settings,Giden (SMTP) Ayarları,
-Incoming (POP/IMAP) Settings,Gelen (POP/IMAP) Ayarları,
-Use different Email ID,Farklı E-posta kullan,
 System Logs,Sistem Logları,
 KSA VAT Setting,KSA KDV Ayarları,
 KSA VAT Report,KSA KDV Raporu,
 UAE VAT 201,Birleşik Arap Emirlikleri KDV 201,
+Add Comment,Yorum Ekle,
+Maintenance,Bakım,
+More...,Daha...,
+Notes,Notlar,
+Payment Gateway,Ödeme Ağ Geçidi,
+Payment Gateway Name,Ödeme Ağ Geçidi Adı,
+Payments,Ödemeler,
+Plan Name,Plan Adı,
+Portal,Portal,
+Profile,Profil,
+Scan Barcode,Barkod Tara,
+Some information is missing,Bazı bilgiler eksik,
+Successful,Başarılı,
+Tools,Araçlar,
+Use Sandbox,Kullanım Sandbox,
+Busy,Meşgul,
+Completed By,Tarafından tamamlanmıştır,
+Payment Failed,Ödeme başarısız,
+Column {0},{0} sütunu,
+Field Mapping,Alan Eşleme,
+Not Specified,Belirtilmemiş,
+Update Type,Güncelleme Türü,
+Dr,Borç,
+End Time,Bitiş Zamanı,
+Fetching...,Getiriliyor ...,
+"It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","Sunucunun şerit yapılandırmasında bir sorun var gibi görünüyor. Arıza durumunda, tutar hesabınıza iade edilir.",
+Looks like someone sent you to an incomplete URL. Please ask them to look into it.,Birisi eksik URL'ye gönderdi benziyor. içine bakmak için isteyin.,
+Master,Ana Kaynak,
+Pay,Ödeme,
+You can also copy-paste this link in your browser,Ayrıca bu linki kopyalayıp tarayıcınıza yapıştırabilirsiniz,
+Verified By,Onaylayan Kişi,
+Invalid naming series (. missing) for {0},{0} için geçersiz adlandırma serisi (. Eksik),
+Phone Number,Telefon Numarası,
+Account SID,Hesap SID,
+Global Defaults,Genel Varsayılanlar,
+Is Mandatory,Zorunludur,
+WhatsApp,WhatsApp,
+Make a call,Arama yap,
+Approve,Onayla,
+Reject,Reddet,
diff --git a/erpnext/translations/uk.csv b/erpnext/translations/uk.csv
index f4faedc..1752330 100644
--- a/erpnext/translations/uk.csv
+++ b/erpnext/translations/uk.csv
@@ -113,7 +113,6 @@
 Add Items,Додати товари,
 Add Leads,Додати підписки,
 Add Multiple Tasks,Додати кілька завдань,
-Add Row,Додати рядок,
 Add Sales Partners,Додайте Партнерів продажу,
 Add Serial No,Додати серійний номер,
 Add Students,Додати студентів,
@@ -211,9 +210,7 @@
 An error occurred during the update process,Під час процесу оновлення сталася помилка,
 "An item exists with same name ({0}), please change the item group name or rename the item","Пункт існує з таким же ім&#39;ям ({0}), будь ласка, змініть назву групи товарів або перейменувати пункт",
 Analyst,Аналітик,
-Analytics,Аналітика,
 Annual Billing: {0},Річні оплати: {0},
-Anonymous,Анонімний,
 Another Budget record '{0}' already exists against {1} '{2}' and account '{3}' for fiscal year {4},Ще один запис бюджету &quot;{0}&quot; вже існує для {1} &quot;{2}&quot; та рахунку &quot;{3}&quot; за фінансовий рік {4},
 Another Period Closing Entry {0} has been made after {1},Ще одна операція закриття періоду {0} була зроблена після {1},
 Another Sales Person {0} exists with the same Employee id,Інший Відповідальний з продажу {0} існує з тим же ідентифікатором працівника,
@@ -283,14 +280,12 @@
 Attendance not submitted for {0} as {1} on leave.,"Учасники, які не подали за {0} як {1} на відпустку.",
 Attribute table is mandatory,Атрибут стіл є обов&#39;язковим,
 Attribute {0} selected multiple times in Attributes Table,Атрибут {0} вибрано кілька разів в таблиці атрибутів,
-Author,автор,
 Authorized Signatory,"Особа, яка має право підпису",
 Auto Material Requests Generated,Автоматичне Замовлення матеріалів згенероване,
 Auto Repeat,Авто Повторіть,
 Auto repeat document updated,Автоматичний повторення документа оновлено,
 Automotive,Автомобільний,
 Available,наявний,
-Available Leaves,Доступні листи,
 Available Qty,Доступна к-сть,
 Available Selling,Доступні продажі,
 Available for use date is required,Необхідна дата для використання,
@@ -340,7 +335,6 @@
 Base URL,Базова URL-адреса,
 Based On,Грунтуючись на,
 Based On Payment Terms,На основі умов оплати,
-Basic,Основний,
 Batch,Партія,
 Batch Entries,Пакетні записи,
 Batch ID is mandatory,Batch ID є обов&#39;язковим,
@@ -361,7 +355,6 @@
 Billable Hours,Години оплати,
 Billed,Виставлено рахунки,
 Billed Amount,Сума виставлених рахунків,
-Billing,Біллінг,
 Billing Address,Адреса для рахунків,
 Billing Address is same as Shipping Address,"Платіжна адреса така ж, як адреса доставки",
 Billing Amount,До оплати,
@@ -560,7 +553,6 @@
 Consumed Qty,Споживана к-сть,
 Consumer Products,Споживацькі товари,
 Contact,Контакт,
-Contact Details,Контактні дані,
 Contact Us,Зв&#39;яжіться з нами,
 Content,Зміст,
 Content Masters,Зміст майстрів,
@@ -715,7 +707,6 @@
 Date of Joining,Дата влаштування,
 Date of Joining must be greater than Date of Birth,"Дата влаштування повинні бути більше, ніж дата народження",
 Date of Transaction,Дата здійснення операції,
-Datetime,"Дата, час",
 Day,день,
 Debit,Дебет,
 Debit ({0}),Дебет ({0}),
@@ -874,7 +865,6 @@
 Employee cannot report to himself.,Співробітник не може повідомити собі.,
 Employee {0} has already applied for {1} between {2} and {3} : ,Працівник {0} вже подав заявку на {1} між {2} і {3}:,
 Employee {0} of grade {1} have no default leave policy,Працівник {0} класу {1} не має політики відпустки,
-Enable,включити,
 Enable / disable currencies.,Включити / відключити валюти.,
 Enabled,Включено,
 "Enabling 'Use for Shopping Cart', as Shopping Cart is enabled and there should be at least one Tax Rule for Shopping Cart","Включення &quot;Використовувати для Кошику», як Кошик включена і має бути принаймні один податок Правило Кошик",
@@ -905,7 +895,6 @@
 Error: Not a valid id?,Помилка: Чи не діє ID?,
 Estimated Cost,Орієнтовна вартість,
 "Even if there are multiple Pricing Rules with highest priority, then following internal priorities are applied:","Навіть якщо є кілька правил ціноутворення з найвищим пріоритетом, то наступні внутрішні пріоритети застосовуються:",
-Event,Подія,
 Exchange Gain/Loss,Обмін Прибуток / збиток,
 Exchange Rate Revaluation master.,Мастер переоцінки обмінного курсу,
 Exchange Rate must be same as {0} {1} ({2}),"Обмінний курс повинен бути такий же, як {0} {1} ({2})",
@@ -1032,7 +1021,6 @@
 From value must be less than to value in row {0},"З значення має бути менше, ніж значення в рядку в {0}",
 From {0} | {1} {2},З {0} | {1} {2},
 Fulfillment,звершення,
-Full,Повний,
 Full Name,Повне ім&#39;я,
 Fully Depreciated,повністю амортизується,
 Furnitures and Fixtures,Меблі і Світильники,
@@ -1133,7 +1121,6 @@
 Hub Sync ID,Ідентифікатор концентратора синхронізації,
 Human Resource,Людський ресурс,
 Human Resources,Кадри,
-IFSC Code,IFSC Code,
 IGST Amount,Сума IGST,
 IP Address,IP-адреса,
 ITC Available (whether in full op part),Доступний ITC (будь то в повній частині,
@@ -1185,7 +1172,6 @@
 Ineligible ITC,Недопустимий ІТЦ,
 Initiated,З ініціативи,
 Inpatient Record,Стаціонарна запис,
-Insert,Вставити,
 Installation Note,Відмітка про встановлення,
 Installation Note {0} has already been submitted,Відмітка про встановлення {0} вже проведена,
 Installation date cannot be before delivery date for Item {0},Дата встановлення не може бути до дати доставки по позиції {0},
@@ -1197,7 +1183,6 @@
 Insurance Start date should be less than Insurance End date,"Дата страхування початку повинна бути менше, ніж дата страхування End",
 Integrated Tax,Інтегрований податок,
 Inter-State Supplies,Міждержавні поставки,
-Interests,інтереси,
 Internet Publishing,Інтернет видання,
 Intra-State Supplies,Внутрішньодержавні поставки,
 Introduction,Введення,
@@ -1316,7 +1301,6 @@
 Lab testing datetime cannot be before collection datetime,Лабораторне тестування datetime не може перебувати до дати datetime collection,
 Label,Етикетка,
 Laboratory,Лабораторія,
-Language Name,Назва мови,
 Large,Великий,
 Last Communication,Останній зв&#39;язок,
 Last Communication Date,Остання дата зв&#39;язку,
@@ -1347,8 +1331,6 @@
 Letter Heads for print templates.,Фірмові заголовки для шаблонів друку.,
 Level,Рівень,
 Liability,Відповідальність,
-License,Ліцензія,
-Limit,межа,
 Limit Crossed,межа Схрещені,
 Link to Material Request,Посилання на запит на матеріали,
 List of all share transactions,Список всіх транзакцій угоди,
@@ -1359,7 +1341,6 @@
 Loans (Liabilities),Кредити (зобов&#39;язання),
 Loans and Advances (Assets),Кредити та аванси (активи),
 Local,Місцевий,
-Log,Ввійти,
 Logs for maintaining sms delivery status,Журнали для підтримки статус доставки смс,
 Lost,Втрачений,
 Lost Reasons,Втрачені причини,
@@ -1445,7 +1426,6 @@
 Medical Department,Медичний департамент,
 Medical Record,Медичний запис,
 Medium,Середній,
-Meeting,Зустріч,
 Member Activity,Діяльність учасника,
 Member ID,Ідентифікатор учасника,
 Member Name,Ім&#39;я учасника,
@@ -1495,7 +1475,6 @@
 Multiple Variants,Кілька варіантів,
 Multiple fiscal years exist for the date {0}. Please set company in Fiscal Year,"Кілька фінансових років існують на дату {0}. Будь ласка, встановіть компанію в фінансовому році",
 Music,музика,
-My Account,Моя обліковка,
 Name error: {0},Помилка Ім&#39;я: {0},
 Name of new Account. Note: Please don't create accounts for Customers and Suppliers,"Ім&#39;я нового Користувача. Примітка: Будь ласка, не створювати облікові записи для клієнтів і постачальників",
 Name or Email is mandatory,Або адреса електронної пошти є обов&#39;язковим,
@@ -1538,7 +1517,6 @@
 New credit limit is less than current outstanding amount for the customer. Credit limit has to be atleast {0},Новий кредитний ліміт менше поточної суми заборгованості для клієнта. Кредитний ліміт повинен бути зареєстровано не менше {0},
 New task,Нове завдання,
 New {0} pricing rules are created,Створюються нові {0} правила ціноутворення,
-Newsletters,Розсилка,
 Newspaper Publishers,Газетних видавців,
 Next,Далі,
 Next Contact By cannot be same as the Lead Email Address,"Наступний Контакт До не може бути таким же, як Lead Адреса електронної пошти",
@@ -1686,7 +1664,6 @@
 Other,Інший,
 Other Reports,Інші звіти,
 "Other outward supplies(Nil rated,Exempted)","Інші зовнішні поставки (з нульовою оцінкою, звільнено)",
-Others,Інші,
 Out Qty,Розхід у к-сті,
 Out Value,Розхід у Сумі,
 Out of Order,Вийшов з ладу,
@@ -1726,7 +1703,6 @@
 Party Type and Party is mandatory for {0} account,Тип та партія партії є обов&#39;язковими для облікового запису {0},
 Party Type is mandatory,Тип контрагента є обов'язковим,
 Party is mandatory,Контрагент є обов'язковим,
-Password,Пароль,
 Past Due Date,Минула дата сплати,
 Patient,Пацієнт,
 Patient Appointment,Призначення пацієнта,
@@ -1784,7 +1760,6 @@
 Pharmaceutical,Фармацевтична,
 Pharmaceuticals,Фармацевтика,
 Physician,Лікар,
-Pincode,PIN-код,
 Place Of Supply (State/UT),Місце поставки (штат / штат),
 Place Order,Зробити замовлення,
 Plan Name,Назва плану,
@@ -1896,7 +1871,6 @@
 Please select date,"Будь ласка, виберіть дати",
 Please select item code,"Будь ласка, виберіть пункт код",
 Please select month and year,"Будь-ласка, виберіть місяць та рік",
-Please select prefix first,"Будь ласка, виберіть префікс в першу чергу",
 Please select the Company,"Будь ласка, виберіть компанію",
 Please select the Multiple Tier Program type for more than one collection rules.,"Будь-ласка, виберіть тип програми для кількох рівнів для декількох правил зібрання.",
 Please select the assessment group other than 'All Assessment Groups',"Будь ласка, виберіть групу оцінки, крім «всіх груп за оцінкою»",
@@ -1913,7 +1887,6 @@
 Please set Company filter blank if Group By is 'Company',"Будь ласка, встановіть фільтр компанії порожнім, якщо група До є «Компанія»",
 Please set Default Payroll Payable Account in Company {0},"Будь ласка, встановіть за замовчуванням Payroll розрахунковий рахунок в компанії {0}",
 Please set Depreciation related Accounts in Asset Category {0} or Company {1},"Будь ласка, встановіть рахунки, що відносяться до амортизації у категорії активу {0} або компанії {1}",
-Please set Email Address,"Будь ласка, встановіть адресу електронної пошти",
 Please set GST Accounts in GST Settings,"Будь ласка, встановіть GST-рахунки в налаштуваннях GST",
 Please set Hotel Room Rate on {},"Будь ласка, встановіть вартість номера готелю на {}",
 Please set Number of Depreciations Booked,"Будь ласка, встановіть кількість зарезервованих амортизацій",
@@ -1936,7 +1909,6 @@
 Please set the Email ID for the Student to send the Payment Request,"Вкажіть ідентифікатор електронної пошти для Студентки, щоб відправити запит на оплату",
 Please set the Item Code first,"Будь ласка, спочатку встановіть Код товару",
 Please set the Payment Schedule,"Будь ласка, встановіть Розклад платежів",
-Please set the series to be used.,"Будь ласка, встановіть серію, яка буде використана.",
 Please set {0} for address {1},Введіть {0} для адреси {1},
 Please setup Students under Student Groups,"Будь-ласка, налаштуйте студентів за групами студентів",
 Please specify Company,"Будь ласка, сформулюйте компанії",
@@ -1953,7 +1925,6 @@
 Point-of-Sale,POS,
 Point-of-Sale Profile,POS- Профіль,
 Portal,Портал,
-Portal Settings,Налаштування порталу,
 Possible Supplier,Можливий постачальник,
 Postal Expenses,Поштові витрати,
 Posting Date,Дата створення/розміщення,
@@ -2152,12 +2123,10 @@
 Reference No is mandatory if you entered Reference Date,"Посилання № є обов&#39;язковим, якщо ви увійшли Reference Дата",
 Reference No.,Довідковий номер,
 Reference Number,Підстава: Номер,
-Reference Owner,посилання Власник,
 Reference Type,Тип посилання,
 "Reference: {0}, Item Code: {1} and Customer: {2}","Посилання: {0}, Код товару: {1} і клієнта: {2}",
 References,Посилання,
 Refresh Token,Поновити токен,
-Region,Область,
 Register,Реєструйся,
 Rejected,Відхилено,
 Related,Зв'язані,
@@ -2179,7 +2148,6 @@
 Replace BOM and update latest price in all BOMs,Замініть BOM та оновіть останню ціну у всіх BOMs,
 Replied,Відповів,
 Report,Звіт,
-Report Builder,Конструктор звітів,
 Report Type,Тип звіту,
 Report Type is mandatory,Тип звіту є обов&#39;язковим,
 Reports,Звіти,
@@ -2355,13 +2323,11 @@
 Same Company is entered more than once,Те ж компанія увійшла більш ніж один раз,
 Same item cannot be entered multiple times.,Той же елемент не може бути введений кілька разів.,
 Same supplier has been entered multiple times,Те ж постачальник був введений кілька разів,
-Sample,Зразок,
 Sample Collection,Збірка зразків,
 Sample quantity {0} cannot be more than received quantity {1},Обсяг вибірки {0} не може перевищувати отриману кількість {1},
 Sanctioned,Санкціоновані,
 Sand,Пісок,
 Saturday,Субота,
-Saved,Збережені,
 Saving {0},Збереження {0},
 Scan Barcode,Сканувати штрих-код,
 Schedule,Графік,
@@ -2463,7 +2429,6 @@
 Series Updated,Серії оновлено,
 Series Updated Successfully,Серії оновлені успішно,
 Series is mandatory,Серії є обов'язковими,
-Series {0} already used in {1},Серії {0} вже використовується в {1},
 Service,Сервіс,
 Service Level Agreement,Угода про рівень обслуговування,
 Service Level Agreement.,Угода про рівень обслуговування.,
@@ -2479,7 +2444,6 @@
 Set Tax Rule for shopping cart,Встановіть податкове правило для кошику,
 Set as Closed,Встановити як закрито,
 Set as Completed,Встановити як завершено,
-Set as Default,Встановити за замовчуванням,
 Set as Lost,Встановити як Втрачений,
 Set as Open,Встановити як Open,
 Set default inventory account for perpetual inventory,Встановити рахунок товарно-матеріальних запасів за замовчуванням для безперервної інвентаризації,
@@ -2511,7 +2475,6 @@
 Shareholder,Акціонер,
 Ship To State,Корабель до держави,
 Shipments,Поставки,
-Shipping,Доставка,
 Shipping Address,Адреса доставки,
 "Shipping Address does not have country, which is required for this Shipping Rule","Адреса доставки не має країни, яка необхідна для цього правила доставки",
 Shipping rule only applicable for Buying,Правило доставки застосовується тільки для покупки,
@@ -2564,7 +2527,6 @@
 Split Batch,Split Batch,
 Split Issue,Спліт випуск,
 Sports,Спортивний,
-Standard,Стандарт,
 Standard Buying,Стандартний Купівля,
 Standard Selling,Стандартний продаж,
 Standard contract terms for Sales or Purchase.,Стандартні умови договору для продажу або покупки.,
@@ -2731,7 +2693,6 @@
 Terms and Conditions,Положення та умови,
 Terms and Conditions Template,Шаблон положень та умов,
 Territory,Територія,
-Test,Тест,
 Thank you for your business!,Дякуємо Вам за співпрацю!,
 The 'From Package No.' field must neither be empty nor it's value less than 1.,Номер &quot;з пакунка&quot; поле не може бути порожнім або значенням менше 1.,
 The Brand,Бренд,
@@ -2848,7 +2809,6 @@
 Total (Without Tax),Усього (без податку),
 Total Achieved,Всього Виконано,
 Total Actual,Загальний фактичний,
-Total Allocated Leaves,Усього виділених листів,
 Total Amount,Загалом,
 Total Amount Credited,Загальна сума кредитується,
 Total Applicable Charges in Purchase Receipt Items table must be same as Total Taxes and Charges,"Всього Застосовуються збори в таблиці Purchase квитанцій Елементів повинні бути такими ж, як всі податки і збори",
@@ -2892,7 +2852,6 @@
 Total(Amt),Разом (Сум),
 Total(Qty),Всього (Кількість),
 Traceability,Простежуваність,
-Traceback,Простежити,
 Track Leads by Lead Source.,Відслідковування потенційних клієнтів.,
 Transaction,Операція,
 Transaction Date,Дата операції,
@@ -2930,7 +2889,6 @@
 UOM Conversion factor is required in row {0},Коефіцієнт перетворення Одиниця виміру потрібно в рядку {0},
 UOM coversion factor required for UOM: {0} in Item: {1},Одиниця виміру фактором Coversion потрібно для UOM: {0} в пункті: {1},
 URL,URL,
-Unable to find DocType {0},Не вдається знайти DocType {0},
 Unable to find exchange rate for {0} to {1} for key date {2}. Please create a Currency Exchange record manually,"Неможливо знайти обмінний курс {0} до {1} для ключа дати {2}. Будь ласка, створіть запис Обмін валюти вручну",
 Unable to find score starting at {0}. You need to have standing scores covering 0 to 100,"Не вдається знайти оцінку, починаючи з {0}. Вам потрібно мати бали, що складають від 0 до 100",
 Unable to find variable: ,Не вдається знайти змінну:,
@@ -2960,7 +2918,6 @@
 Upload your letter head and logo. (you can edit them later).,Відвантажити ваш фірмовий заголовок та логотип. (Ви зможете відредагувати їх пізніше).,
 Upper Income,Верхня прибуток,
 Use Sandbox,Використання Пісочниця,
-Used Leaves,Використовувані листи,
 User,Користувач,
 User ID,ідентифікатор користувача,
 User ID not set for Employee {0},Ідентифікатор користувача не встановлений Employee {0},
@@ -3051,7 +3008,6 @@
 Website Settings,Налаштування веб-сайту,
 Wednesday,Середа,
 Week,тиждень,
-Weekdays,Будні дні,
 Weekly,Щотижня,
 "Weight is mentioned,\nPlease mention ""Weight UOM"" too","Вагу вказано, \ nБудь ласка, вкажіть ""Одиницю виміру ваги"" теж",
 Welcome email sent,Привітальний лист відправлено,
@@ -3072,7 +3028,6 @@
 Work Order {0} must be submitted,Замовлення на роботі {0} необхідно подати,
 Work Orders Created: {0},Створено робочі замовлення: {0},
 Work-in-Progress Warehouse is required before Submit,"Склад ""в роботі"" необхідний щоб провести",
-Workflow,Робочий процес,
 Working,Робоча,
 Working Hours,Робочі години,
 Workstation,Робоча станція,
@@ -3102,7 +3057,6 @@
 You need to be a user other than Administrator with System Manager and Item Manager roles to register on Marketplace.,"Щоб зареєструватися в Marketplace, вам потрібно бути іншим користувачем, окрім адміністратора, з Менеджером систем та Ролика.",
 You need to be a user with System Manager and Item Manager roles to add users to Marketplace.,"Для того, щоб додати користувачів до Marketplace, вам потрібно бути користувачем з Роль менеджера системи та менеджера елементів.",
 You need to be a user with System Manager and Item Manager roles to register on Marketplace.,"Щоб зареєструватися в Marketplace, вам потрібно бути користувачем з Роль менеджера системи та менеджера елементів.",
-You need to be logged in to access this page,"Ви повинні бути зареєстровані, щоб відкрити цю сторінку",
 You need to enable Shopping Cart,Вам необхідно включити Кошик,
 You will lose records of previously generated invoices. Are you sure you want to restart this subscription?,"Ви втратите записи про раніше сформовані рахунки-фактури. Ви впевнені, що хочете перезапустити цю підписку?",
 Your Organization,Ваша організація,
@@ -3218,7 +3172,6 @@
 Assigned To,Призначено,
 Chat,Чат,
 Completed By,Завершено,
-County,Область,
 Day of Week,День тижня,
 "Dear System Manager,","Шановний System Manager,",
 Default Value,Значення за замовчуванням,
@@ -3229,31 +3182,21 @@
 Fieldtype,FieldType,
 Help Articles,Довідка зі статей,
 ID,ID,
-Images,зображень,
 Import,Імпорт,
 Language,Мова,
 Likes,Вподобання,
 Merge with existing,Злиття з існуючими,
-Office,Офіс,
 Orientation,орієнтація,
 Parent,Батько,
-Passive,Пасивний,
 Payment Failed,Помилка оплати,
-Permanent,перманентний,
 Personal,Особистий,
-Plant,Завод,
 Post,Post,
-Postal,Поштовий,
 Postal Code,Поштовий індекс,
-Previous,Назад,
 Provider,Постачальник,
 Read Only,Лише для читання,
 Recipient,Одержувач,
 Reviews,Відгуки,
 Sender,Відправник,
-Shop,Магазин,
-Subsidiary,Дочірня компанія,
-There is some problem with the file url: {0},Існує деяка проблема з файлової URL: {0},
 There were errors while sending email. Please try again.,Були помилки при відправленні електронної пошти. Будь ласка спробуйте ще раз.,
 Values Changed,значення Змінено,
 or,або,
@@ -3280,19 +3223,16 @@
 Quality Feedback Template,Шаблон зворотнього зв&#39;язку якості,
 Rules for applying different promotional schemes.,Правила застосування різних рекламних схем.,
 Show {0},Показати {0},
-"Special Characters except '-', '#', '.', '/', '{{' and '}}' not allowed in naming series {0}","Спеціальні символи, окрім &quot;-&quot;, &quot;#&quot;, &quot;.&quot;, &quot;/&quot;, &quot;{{&quot; Та &quot;}}&quot;, не дозволяються в іменуванні серій {0}",
 Target Details,Деталі цілі,
 {0} already has a Parent Procedure {1}.,{0} вже має батьківську процедуру {1}.,
 API,API,
 Annual,Річний,
 Change,Зміна,
 Contact Email,Контактний Email,
-Export Type,Тип експорту,
 From Date,З дати,
 Group By,Групувати за,
 Invalid URL,Недійсна URL-адреса,
 Landscape,Пейзаж,
-Last Sync On,Остання синхронізація включена,
 Naming Series,Іменування серії,
 No data to export,Немає даних для експорту,
 Portrait,Портрет,
@@ -3302,7 +3242,6 @@
 Show Document,Показати документ,
 Show Traceback,Показати відстеження,
 Video,Відео,
-Webhook Secret,Webhook Secret,
 % Of Grand Total,% Від загальної суми,
 <b>Company</b> is a mandatory filter.,<b>Компанія</b> - обов&#39;язковий фільтр.,
 <b>From Date</b> is a mandatory filter.,<b>From Date</b> - обов&#39;язковий фільтр.,
@@ -3358,7 +3297,6 @@
 BOM Comparison Tool,Інструмент порівняння BOM,
 BOM recursion: {0} cannot be child of {1},Рекурсія BOM: {0} не може бути дитиною {1},
 BOM recursion: {0} cannot be parent or child of {1},Рекурсія BOM: {0} не може бути батьком чи дитиною {1},
-Back to Home,Повернутися на батьківщину,
 Back to Messages,Повернутися до Повідомлень,
 Bank Data mapper doesn't exist,Картографічних даних банків не існує,
 Bank Details,Банківські реквізити,
@@ -3420,7 +3358,6 @@
 Currency,Валюта,
 Current Status,Поточний стан,
 Customer PO,Клієнт PO,
-Customize,Налаштувати,
 Daily,Щодня,
 Date,Дата,
 Date of Birth cannot be greater than Joining Date.,Дата народження не може перевищувати дату приєднання.,
@@ -3454,7 +3391,6 @@
 ERPNext could not find any matching payment entry,ERPNext не зміг знайти жодного відповідного платежу,
 Earliest Age,Найдавніший вік,
 Edit Details,Редагувати подробиці,
-Edit Profile,Редагувати профіль,
 Either GST Transporter ID or Vehicle No is required if Mode of Transport is Road,"Ідентифікатор GST Transporter або номер транспортного засобу не потрібен, якщо вид транспорту - дорожній",
 Email,EMail,
 Email Campaigns,Кампанії електронної пошти,
@@ -3482,7 +3418,6 @@
 Fetch Items from Warehouse,Отримати елементи зі складу,
 Fetching...,Отримання ...,
 Field,поле,
-File Manager,Файловий менеджер,
 Filters,Фільтри,
 Finding linked payments,Пошук пов&#39;язаних платежів,
 Fleet Management,Управління флотом,
@@ -3521,7 +3456,6 @@
 Incorrect Warehouse,Неправильний склад,
 Invalid Barcode. There is no Item attached to this barcode.,Недійсний штрих-код. До цього штрих-коду не додано жодного предмета.,
 Invalid credentials,Недійсні облікові дані,
-Invite as User,Запросити стати користувачем,
 Issue Priority.,Пріоритет питання.,
 Issue Type.,Тип випуску,
 "It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","Здається, існує проблема з конфігурацією смуги сервера. У випадку невдачі сума повернеться на ваш рахунок.",
@@ -3564,7 +3498,6 @@
 New Invoice,Нова рахунок-фактура,
 New Payment,Новий платіж,
 New release date should be in the future,Нова дата випуску повинна бути в майбутньому,
-Newsletter,Інформаційний бюлетень,
 No Account matched these filters: {},Жоден обліковий запис не відповідав цим фільтрам: {},
 No communication found.,Не знайдено зв’язку.,
 No correct answer is set for {0},Не встановлено правильної відповіді для {0},
@@ -3640,7 +3573,6 @@
 Please setup a default bank account for company {0},Установіть банківський рахунок за замовчуванням для компанії {0},
 Please specify,Будь ласка уточніть,
 Please specify a {0},Укажіть {0},lead
-Printing,Друк,
 Priority,Пріоритет,
 Priority has been changed to {0}.,Пріоритет змінено на {0}.,
 Priority {0} has been repeated.,Пріоритет {0} повторюється.,
@@ -3649,7 +3581,6 @@
 Project,Проект,
 Provide the academic year and set the starting and ending date.,Укажіть навчальний рік та встановіть дату початку та закінчення.,
 Public token is missing for this bank,Для цього банку немає публічного маркера,
-Publish,Опублікувати,
 Publish 1 Item,Опублікуйте 1 пункт,
 Publish Items,Публікуйте елементи,
 Publish More Items,Опублікувати більше предметів,
@@ -3677,7 +3608,6 @@
 Reconciled,Примирився,
 Recruitment,вербування,
 Red,Червоний,
-Refreshing,Освіжаючий,
 Release date must be in the future,Дата виходу повинна бути в майбутньому,
 Relieving Date must be greater than or equal to Date of Joining,Дата звільнення повинна бути більшою або рівною даті приєднання,
 Rename,Перейменувати,
@@ -3721,7 +3651,6 @@
 Search for a payment,Пошук оплати,
 Search for anything ...,Шукайте що-небудь ...,
 Search results for,Результати пошуку для,
-Select All,Вибрати все,
 Select Difference Account,Виберіть Рахунок різниці,
 Select a Default Priority.,Виберіть пріоритет за замовчуванням.,
 Select a company,Виберіть компанію,
@@ -3740,11 +3669,9 @@
 Service Level Agreement has been changed to {0}.,Договір про рівень обслуговування змінено на {0}.,
 Service Level Agreement was reset.,Договір про рівень обслуговування було скинуто.,
 Service Level Agreement with Entity Type {0} and Entity {1} already exists.,Договір про рівень обслуговування з типом {0} та об&#39;єктом {1} вже існує.,
-Set,Встановіть,
 Set Meta Tags,Встановити мета-теги,
 Set {0} in company {1},Встановіть {0} у компанії {1},
 Setup,Встановлення,
-Setup Wizard,Майстер установки,
 Shift Management,Управління змінами,
 Show Future Payments,Показати майбутні платежі,
 Show Linked Delivery Notes,Показати пов’язані накладні,
@@ -3815,7 +3742,6 @@
 Unreconciled,Непримиренний,
 Unsupported GST Category for E-Way Bill JSON generation,Непідтримувана категорія GST для генерації електронного біла JSON,
 Update,Оновлення,
-Update Details,Оновіть деталі,
 Update Taxes for Items,Оновити податки на товари,
 "Upload a bank statement, link or reconcile a bank account","Завантажте банківську виписку, зв’яжіть або узгодить банківський рахунок",
 Upload a statement,Завантажте заяву,
@@ -3839,7 +3765,6 @@
 XML Files Processed,Файли XML обробляються,
 Year,Рік,
 Yearly,Річний,
-You,Ви,
 You are not allowed to enroll for this course,Вам не дозволяється записатися на цей курс,
 You are not enrolled in program {0},Ви не зараховані до програми {0},
 You can Feature upto 8 items.,Ви можете представити до 8 елементів.,
@@ -3856,7 +3781,6 @@
 e-Way Bill already exists for this document,Для цього документа вже існує законопроект про електронний шлях,
 woocommerce - {0},woocommerce - {0},
 {0} Coupon used are {1}. Allowed quantity is exhausted,{0} Купон використовується {1}. Дозволена кількість вичерпується,
-{0} Name,{0} Ім&#39;я,
 {0} Operations: {1},{0} Операції: {1},
 {0} bank transaction(s) created,{0} створено банківські трансакції,
 {0} bank transaction(s) created and {1} errors,{0} створено банківські трансакції та {1} помилки,
@@ -3875,17 +3799,13 @@
 Total Income,Загальний дохід,
 Total Income This Year,Загальний дохід цього року,
 Barcode,Штрих-код,
-Bold,Сміливий,
-Center,Центр,
 Clear,Ясно,
-Comment,Прокоментуйте,
 Comments,Коментарі,
 DocType,DocType,
 Download,Завантажити,
 Left,Зліва,
 Link,Посилання,
 New,Нові,
-Not Found,Не знайдено,
 Print,Друк,
 Reference Name,Довідкове ім’я,
 Refresh,Оновити,
@@ -3908,7 +3828,6 @@
 Email Id,ІД епошти,
 No,Ні,
 Reference Doctype,Посилання DocType,
-User Id,Ідентифікатор користувача,
 Yes,Так,
 Actual ,Фактичний,
 Add to cart,Додати в кошик,
@@ -4304,7 +4223,6 @@
 e.g Adjustments for:,"наприклад, коригування для:",
 Section Subtotal,Розділ Інтерв&#39;ю,
 Section Footer,Підручник секції,
-Position,Позиція,
 Cash Flow Mapping,Планування грошових потоків,
 Select Maximum Of 1,Виберіть Максимум 1,
 Is Finance Cost,Є фінансова вартість,
@@ -4936,7 +4854,6 @@
 Previous Business Day,Попередній робочий день,
 Next Business Day,Наступний робочий день,
 Urgent,Терміновий,
-Crop,Урожай,
 Crop Name,Назва обрізання,
 Scientific Name,Наукове ім&#39;я,
 "You can define all the tasks which need to carried out for this crop here. The day field is used to mention the day on which the task needs to be carried out, 1 being the 1st day, etc.. ","Тут ви можете визначити всі завдання, які необхідно виконати для цієї культури. Денне поле використовується, щоб згадати день, коли завдання потрібно виконати, 1 - це 1-й день тощо.",
@@ -5441,7 +5358,6 @@
 To TIme,Часу,
 Course End Date,Курс Дата закінчення,
 Course Topic,Тема курсу,
-Topic,тема,
 Topic Name,Назва теми,
 Education Settings,Налаштування освіти,
 Current Academic Year,Поточний навчальний рік,
@@ -5516,7 +5432,6 @@
 Check this if the Student is residing at the Institute's Hostel.,"Перевірте це, якщо студент проживає в гуртожитку інституту.",
 Walking,ходьба,
 Institute's Bus,Автобус інституту,
-Public Transport,Громадський транспорт,
 Self-Driving Vehicle,Самостійне водіння автомобіля,
 Pick/Drop by Guardian,Pick / Drop по Гардіан,
 Enrolled courses,включені курси,
@@ -5697,7 +5612,6 @@
 Default Cost Center,Центр доходів/витрат за замовчуванням,
 Undeposited Funds Account,Непогашений рахунок Фонду,
 Shopify Log,Shopify Log,
-Request Data,Запит даних,
 Shopify Settings,Shopify Налаштування,
 status html,статус html,
 Enable Shopify,Увімкнути Shopify,
@@ -5817,7 +5731,6 @@
 Exercise Instructions,Інструкція щодо вправ,
 Exercise Video,Відео вправ,
 Exercise Steps,Крок вправи,
-Steps,Кроки,
 Steps Table,Таблиця кроків,
 Exercise Type Step,Крок типу вправи,
 Max number of visit,Максимальна кількість відвідувань,
@@ -6001,7 +5914,6 @@
 Patient Encounter Symptom,Симптом зустрічі пацієнта,
 HLC-PMR-.YYYY.-,HLC-PMR-.YYYY.-,
 Attach Medical Record,Додайте медичну карту,
-Reference DocType,Довідковий тип DocType,
 Spouse,Подружжя,
 Family,Сім&#39;я,
 Schedule Details,Подробиці розкладу,
@@ -6983,16 +6895,8 @@
 HTML / Banner that will show on the top of product list.,"HTML / банер, який буде відображатися у верхній частині списку продукції.",
 Set prefix for numbering series on your transactions,Встановіть префікс нумерації серії ваших операцій,
 Setup Series,Налаштування серій,
-Select Transaction,Виберіть операцію,
-Help HTML,Довідка з HTML,
-Series List for this Transaction,Список серій для даної транзакції,
-User must always select,Користувач завжди повинен вибрати,
-Check this if you want to force the user to select a series before saving. There will be no default if you check this.,"Перевірте це, якщо ви хочете, щоб змусити користувача вибрати ряд перед збереженням. Там не буде за замовчуванням, якщо ви перевірити це.",
 Update Series,Серія Оновлення,
 Change the starting / current sequence number of an existing series.,Змінити стартову / поточний порядковий номер існуючого ряду.,
-Prefix,Префікс,
-This is the number of the last created transaction with this prefix,Це номер останнього створеного операції з цим префіксом,
-Update Series Number,Оновлення Кількість Серія,
 Quotation Lost Reason,Причина втрати пропозиції,
 A third party distributor / dealer / commission agent / affiliate / reseller who sells the companies products for a commission.,"Сторонній дистриб'ютор / дилер / комісіонер / Партнер / реселер, що продає продукти компанії за комісію.",
 Sales Partner Name,Назва торгового партнеру,
@@ -7687,7 +7591,6 @@
 Warehouse wise Item Balance Age and Value,Складові мудрий предмет баланс років і вартості,
 Work Order Stock Report,Звіт про стан роботи на замовлення,
 Work Orders in Progress,Робочі замовлення в процесі роботи,
-Validation Error,Помилка перевірки,
 Automatically Process Deferred Accounting Entry,Автоматично обробляти відкладений обліковий запис,
 Bank Clearance,Банківське оформлення,
 Bank Clearance Detail,Детальна декларація банку,
@@ -7724,45 +7627,7 @@
 Therapy Plan: ,План терапії:,
 Total Counts Targeted: ,Загальна кількість підрахованих підрахунків:,
 Total Counts Completed: ,Загальна кількість підрахованих:,
-Andaman and Nicobar Islands,Андаманські та Нікобарські острови,
-Andhra Pradesh,Андхра-Прадеш,
-Arunachal Pradesh,Аруначал-Прадеш,
-Assam,Ассам,
-Bihar,Біхар,
-Chandigarh,Чандігарх,
-Chhattisgarh,Чхаттісгарх,
-Dadra and Nagar Haveli,Дадра і Нагар Гавелі,
-Daman and Diu,Даман і Діу,
-Delhi,Делі,
-Goa,Гоа,
-Gujarat,Гуджарат,
-Haryana,Хар&#39;яна,
-Himachal Pradesh,Хімачал-Прадеш,
-Jammu and Kashmir,Джамму та Кашмір,
-Jharkhand,Джаркханд,
-Karnataka,Карнатака,
-Kerala,Керала,
-Lakshadweep Islands,Острови Лакшадвіп,
-Madhya Pradesh,Мадх&#39;я-Прадеш,
-Maharashtra,Махараштра,
-Manipur,Маніпур,
-Meghalaya,Мегалая,
-Mizoram,Мізорам,
-Nagaland,Нагаленд,
-Odisha,Одіша,
-Other Territory,Інша територія,
-Pondicherry,Пондічеррі,
-Punjab,Пенджаб,
-Rajasthan,Раджастан,
-Sikkim,Сіккім,
-Tamil Nadu,Тамілнад,
-Telangana,Телангана,
-Tripura,Трипура,
-Uttar Pradesh,Уттар-Прадеш,
-Uttarakhand,Уттаракханд,
-West Bengal,Західна Бенгалія,
 Is Mandatory,Обов’язковий,
-Published on,Опубліковано,
 Service Received But Not Billed,"Послуга отримана, але не виставлена",
 Deferred Accounting Settings,Налаштування відкладеного обліку,
 Book Deferred Entries Based On,Забронювати відкладені роботи на основі,
@@ -8035,8 +7900,6 @@
 Worksheet Instructions,Інструкції робочого аркуша,
 Result Legend Print,Результат Легенда Друк,
 Print Position,Позиція друку,
-Bottom,Знизу,
-Top,Топ,
 Both,"І те, і інше",
 Result Legend,Легенда результату,
 Lab Tests,Лабораторні тести,
@@ -8081,12 +7944,10 @@
 Approvers,Схвалювачі,
 The first Approver in the list will be set as the default Approver.,Перший затверджувач у списку буде встановлений як затверджувач за замовчуванням.,
 Shift Request Approver,Затверджувач запиту на зміну,
-PAN Number,Номер PAN,
 Provident Fund Account,Рахунок забезпеченого фонду,
 MICR Code,Кодекс MICR,
 Repay unclaimed amount from salary,Повернути незатребувану суму із заробітної плати,
 Deduction from salary,Відрахування із зарплати,
-Expired Leaves,Листя закінчилися,
 If this is not checked the loan by default will be considered as a Demand Loan,"Якщо це не позначено, позика за замовчуванням буде розглядатися як позика на вимогу",
 This account is used for booking loan repayments from the borrower and also disbursing loans to the borrower,"Цей рахунок використовується для бронювання виплат позики у позичальника, а також для видачі позик позичальнику",
 This account is capital account which is used to allocate capital for loan disbursal account ,"Цей рахунок є рахунком капіталу, який використовується для розподілу капіталу на рахунок виплати позики",
@@ -8844,3 +8705,41 @@
 Creating Purchase Order ...,Створення замовлення на придбання ...,
 "Select a Supplier from the Default Suppliers of the items below. On selection, a Purchase Order will be made against items belonging to the selected Supplier only.","Виберіть постачальника з постачальників за замовчуванням із наведених нижче пунктів. При виборі замовлення на замовлення буде зроблено лише щодо товарів, що належать обраному Постачальнику.",
 Row #{}: You must select {} serial numbers for item {}.,Рядок № {}: Ви повинні вибрати {} серійні номери для товару {}.,
+Add Comment,Додати коментар,
+More...,Детальніше ...,
+Notes,Примітки,
+Payment Gateway,Платіжний шлюз,
+Payment Gateway Name,Назва шлюзу платежу,
+Payments,Платежі,
+Plan Name,Назва плану,
+Portal,Портал,
+Scan Barcode,Сканувати штрих-код,
+Some information is missing,Деяка інформація відсутня,
+Successful,Успішний,
+Tools,Інструменти,
+Use Sandbox,Використання Пісочниця,
+Busy,Зайнятий,
+Completed By,Завершено,
+Payment Failed,Помилка оплати,
+Column {0},Стовпець {0},
+Field Mapping,Польова карта,
+Not Specified,Не вказано,
+Update Type,Тип оновлення,
+Dr,доктор,
+End Time,Час закінчення,
+Fetching...,Отримання ...,
+"It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","Здається, існує проблема з конфігурацією смуги сервера. У випадку невдачі сума повернеться на ваш рахунок.",
+Looks like someone sent you to an incomplete URL. Please ask them to look into it.,"Схоже, хтось послав вас до неповного URL. Будь ласка, попросіть їх подивитися в неї.",
+Master,майстер,
+Pay,Платити,
+You can also copy-paste this link in your browser,Ви також можете скопіювати і вставити це посилання у ваш переглядач,
+Verified By,Перевірено,
+Invalid naming series (. missing) for {0},Недійсний ряд імен (. Відсутній) для {0},
+Phone Number,Номер телефону,
+Account SID,SID рахунку,
+Global Defaults,Глобальні значення за замовчуванням,
+Is Mandatory,Обов’язковий,
+WhatsApp,WhatsApp,
+Make a call,Зроби дзвінок,
+Approve,Затвердити,
+Reject,відхиляти,
diff --git a/erpnext/translations/ur.csv b/erpnext/translations/ur.csv
index e958e57..504cc8d 100644
--- a/erpnext/translations/ur.csv
+++ b/erpnext/translations/ur.csv
@@ -113,7 +113,6 @@
 Add Items,مادے کا اضافہ,
 Add Leads,لیڈز شامل کریں,
 Add Multiple Tasks,ایک سے زیادہ ٹاسکس شامل کریں,
-Add Row,قطار شامل کریں,
 Add Sales Partners,سیلز شراکت دار شامل کریں,
 Add Serial No,سیریل نمبر شامل,
 Add Students,طلباء شامل کریں,
@@ -211,9 +210,7 @@
 An error occurred during the update process,اپ ڈیٹ کی کارروائی کے دوران ایک خرابی واقع ہوئی,
 "An item exists with same name ({0}), please change the item group name or rename the item",ایک شے کے اسی نام کے ساتھ موجود ({0})، شے گروپ کا نام تبدیل یا شے کا نام تبدیل کریں,
 Analyst,تجزیہ,
-Analytics,تجزیات,
 Annual Billing: {0},سالانہ بلنگ: {0},
-Anonymous,گمنام,
 Another Budget record '{0}' already exists against {1} '{2}' and account '{3}' for fiscal year {4},{1} &#39;{2}&#39; اور اکاؤنٹس &#39;{3}&#39; کے ساتھ ایک اور بجٹ ریکارڈ &#39;{0}&#39; پہلے سے ہی مالی سال کے لئے موجود ہے {4},
 Another Period Closing Entry {0} has been made after {1},ایک اور مدت بند انٹری {0} کے بعد بنایا گیا ہے {1},
 Another Sales Person {0} exists with the same Employee id,ایک فروخت شخص {0} اسی ملازم ID کے ساتھ موجود,
@@ -283,14 +280,12 @@
 Attendance not submitted for {0} as {1} on leave.,حاضری {0 for کیلئے بطور {1} چھٹی پر جمع نہیں کرائی گئی۔,
 Attribute table is mandatory,وصف میز لازمی ہے,
 Attribute {0} selected multiple times in Attributes Table,خاصیت {0} صفات ٹیبل میں ایک سے زیادہ مرتبہ منتخب,
-Author,مصنف,
 Authorized Signatory,مجاز دستخط,
 Auto Material Requests Generated,آٹو مواد درخواستوں پیدا,
 Auto Repeat,آٹو دوبارہ دہرائیں,
 Auto repeat document updated,خود بخود دستاویز کو اپ ڈیٹ کیا,
 Automotive,آٹوموٹو,
 Available,دستیاب,
-Available Leaves,دستیاب پتیوں,
 Available Qty,دستیاب مقدار,
 Available Selling,دستیاب فروخت,
 Available for use date is required,استعمال کی تاریخ کے لئے دستیاب ہے,
@@ -340,7 +335,6 @@
 Base URL,بیس یو آر ایل,
 Based On,پر مبنی,
 Based On Payment Terms,ادائیگی کی شرائط پر مبنی,
-Basic,بنیادی,
 Batch,بیچ,
 Batch Entries,بیچ کے اندراجات۔,
 Batch ID is mandatory,بیچ ID لازمی ہے,
@@ -361,7 +355,6 @@
 Billable Hours,قابل قابل اوقات,
 Billed,بل,
 Billed Amount,بل کی گئی رقم,
-Billing,بلنگ,
 Billing Address,بل کا پتہ,
 Billing Address is same as Shipping Address,بلنگ ایڈریس شپنگ ایڈریس کی طرح ہے۔,
 Billing Amount,بلنگ رقم,
@@ -560,7 +553,6 @@
 Consumed Qty,بسم مقدار,
 Consumer Products,صارفین کی مصنوعات,
 Contact,رابطہ کریں,
-Contact Details,رابطہ کی تفصیلات,
 Contact Us,ہم سے رابطہ کریں,
 Content,مواد,
 Content Masters,مواد کے ماسٹرز۔,
@@ -715,7 +707,6 @@
 Date of Joining,شمولیت کی تاریخ,
 Date of Joining must be greater than Date of Birth,شمولیت کی تاریخ پیدائش کی تاریخ سے زیادہ ہونا چاہیے,
 Date of Transaction,ٹرانزیکشن کی تاریخ,
-Datetime,تاریخ وقت,
 Day,ڈے,
 Debit,ڈیبٹ,
 Debit ({0}),ڈیبٹ ({0}),
@@ -874,7 +865,6 @@
 Employee cannot report to himself.,ملازم خود کو رپورٹ نہیں دے سکتے.,
 Employee {0} has already applied for {1} between {2} and {3} : ,ملازم {0} پہلے ہی {1} کے درمیان {2} اور {3} کے لئے درخواست کر چکے ہیں:,
 Employee {0} of grade {1} have no default leave policy,ملازم {0} کی گریڈ {1} میں کوئی ڈیفالٹ چھوڑ پالیسی نہیں ہے,
-Enable,فعال,
 Enable / disable currencies.,کو فعال / غیر فعال کریں کرنسیاں.,
 Enabled,فعال,
 "Enabling 'Use for Shopping Cart', as Shopping Cart is enabled and there should be at least one Tax Rule for Shopping Cart",کو چالو کرنے کے طور پر خریداری کی ٹوکری چالو حالت میں ہے، &#39;خریداری کی ٹوکری کے لئے استعمال کریں&#39; اور خریداری کی ٹوکری کے لئے کم از کم ایک ٹیکس حکمرانی نہیں ہونا چاہئے,
@@ -905,7 +895,6 @@
 Error: Not a valid id?,خرابی: ایک درست شناختی نمبر؟,
 Estimated Cost,تخمینی لاگت,
 "Even if there are multiple Pricing Rules with highest priority, then following internal priorities are applied:",سب سے زیادہ ترجیح کے ساتھ ایک سے زیادہ قیمتوں کا تعین قوانین موجود ہیں یہاں تک کہ اگر، تو مندرجہ ذیل اندرونی ترجیحات لاگو ہوتے ہیں:,
-Event,تقریب,
 Exchange Gain/Loss,ایکسچینج گین / نقصان,
 Exchange Rate Revaluation master.,تبادلہ کی شرح کی بحالی کا ماسٹر۔,
 Exchange Rate must be same as {0} {1} ({2}),زر مبادلہ کی شرح کے طور پر ایک ہی ہونا چاہیے {0} {1} ({2}),
@@ -1032,7 +1021,6 @@
 From value must be less than to value in row {0},قیمت صف میں قدر سے کم ہونا ضروری ہے سے {0},
 From {0} | {1} {2},سے {0} | {1} {2},
 Fulfillment,تکمیل,
-Full,مکمل,
 Full Name,پورا نام,
 Fully Depreciated,مکمل طور پر فرسودگی,
 Furnitures and Fixtures,فرنیچر اور فکسچر,
@@ -1133,7 +1121,6 @@
 Hub Sync ID,حب ہم آہنگی کی شناخت,
 Human Resource,انسانی وسائل,
 Human Resources,انسانی وسائل,
-IFSC Code,IFSC کوڈ,
 IGST Amount,IGST رقم,
 IP Address,IP پتہ,
 ITC Available (whether in full op part),آئی ٹی سی دستیاب ہے (چاہے وہ پوری طرح سے ہو),
@@ -1185,7 +1172,6 @@
 Ineligible ITC,نااہل آئی ٹی سی۔,
 Initiated,شروع,
 Inpatient Record,بیماری کا ریکارڈ,
-Insert,داخل کریں,
 Installation Note,تنصیب نوٹ,
 Installation Note {0} has already been submitted,تنصیب نوٹ {0} پہلے ہی پیش کیا گیا ہے,
 Installation date cannot be before delivery date for Item {0},تنصیب کی تاریخ شے کے لئے کی ترسیل کی تاریخ سے پہلے نہیں ہو سکتا {0},
@@ -1197,7 +1183,6 @@
 Insurance Start date should be less than Insurance End date,انشورنس تاریخ آغاز انشورنس تاریخ اختتام سے کم ہونا چاہئے,
 Integrated Tax,انٹیگریٹڈ ٹیکس,
 Inter-State Supplies,بین الملکی فراہمی,
-Interests,دلچسپیاں,
 Internet Publishing,انٹرنیٹ پبلشنگ,
 Intra-State Supplies,انٹرا اسٹیٹ سپلائیز,
 Introduction,تعارف,
@@ -1316,7 +1301,6 @@
 Lab testing datetime cannot be before collection datetime,لیبار ٹیسٹنگ ڈیٹیٹ ٹائم کی تاریخ سے پہلے جمع نہیں ہوسکتی ہے,
 Label,لیبل,
 Laboratory,لیبارٹری,
-Language Name,زبان کا نام,
 Large,بڑے,
 Last Communication,آخری مواصلات,
 Last Communication Date,آخری مواصلات تاریخ,
@@ -1347,8 +1331,6 @@
 Letter Heads for print templates.,پرنٹ کے سانچوں کے لئے خط سر.,
 Level,سطح,
 Liability,ذمہ داری,
-License,لائسنس,
-Limit,حد,
 Limit Crossed,حد,
 Link to Material Request,مواد کی درخواست سے رابطہ کریں,
 List of all share transactions,سب ٹرانزیکشن کی فہرست,
@@ -1359,7 +1341,6 @@
 Loans (Liabilities),قرضے (واجبات),
 Loans and Advances (Assets),قرضوں اور ایڈوانسز (اثاثے),
 Local,مقامی,
-Log,لاگ,
 Logs for maintaining sms delivery status,ایس ایم ایس کی ترسیل کی حیثیت برقرار رکھنے کے لئے نوشتہ جات,
 Lost,کھو,
 Lost Reasons,گمشدہ اسباب,
@@ -1445,7 +1426,6 @@
 Medical Department,میڈیکل ڈپارٹمنٹ,
 Medical Record,میڈیکل ریکارڈ,
 Medium,میڈیم,
-Meeting,اجلاس,
 Member Activity,رکن سرگرمی,
 Member ID,رکن کی شناخت,
 Member Name,رکن کا نام,
@@ -1495,7 +1475,6 @@
 Multiple Variants,ایک سے زیادہ متغیرات,
 Multiple fiscal years exist for the date {0}. Please set company in Fiscal Year,متعدد مالی سال تاریخ for 0 for کے لئے موجود ہیں۔ برائے مہربانی مالی سال میں کمپنی قائم کریں,
 Music,موسیقی,
-My Account,میرا کھاتہ,
 Name error: {0},نام کی غلطی: {0},
 Name of new Account. Note: Please don't create accounts for Customers and Suppliers,نئے اکاؤنٹ کا نام. نوٹ: صارفین اور سپلائرز کے اکاؤنٹس کی تخلیق نہیں کرتے ہیں براہ مہربانی,
 Name or Email is mandatory,نام یا ای میل لازمی ہے,
@@ -1538,7 +1517,6 @@
 New credit limit is less than current outstanding amount for the customer. Credit limit has to be atleast {0},کسٹمر کے لئے موجودہ کریڈٹ کی حد سے کم نئی کریڈٹ کی حد کم ہے. کریڈٹ کی حد کم از کم ہے {0},
 New task,نیا کام,
 New {0} pricing rules are created,نئے {0} قیمتوں کے تعین کے قواعد تشکیل دیئے گئے ہیں۔,
-Newsletters,خبرنامے,
 Newspaper Publishers,اخبار پبلیشرز,
 Next,پیچھے اگلا، دوسرا,
 Next Contact By cannot be same as the Lead Email Address,اگلا رابطے کی طرف سے لیڈ ای میل ایڈریس کے طور پر ایک ہی نہیں ہو سکتا,
@@ -1686,7 +1664,6 @@
 Other,دیگر,
 Other Reports,دیگر رپورٹوں,
 "Other outward supplies(Nil rated,Exempted)",دیگر ظاہری رسد (نیل ریٹیڈ ، مستثنیٰ),
-Others,دیگر,
 Out Qty,مقدار باہر,
 Out Value,آؤٹ ویلیو,
 Out of Order,حکم سے باہر,
@@ -1726,7 +1703,6 @@
 Party Type and Party is mandatory for {0} account,اکاؤنٹ کی قسم اور پارٹی {0} اکاؤنٹ کیلئے لازمی ہے,
 Party Type is mandatory,پارٹی قسم لازمی ہے,
 Party is mandatory,پارٹی لازمی ہے,
-Password,پاس ورڈ,
 Past Due Date,ماضی کی تاریخ,
 Patient,صبر,
 Patient Appointment,مریض کی تقرری,
@@ -1784,7 +1760,6 @@
 Pharmaceutical,دواسازی,
 Pharmaceuticals,دواسازی,
 Physician,ڈاکٹر,
-Pincode,خفیہ نمبر,
 Place Of Supply (State/UT),فراہمی کی جگہ (ریاست / ریاست ہائے متحدہ امریکہ),
 Place Order,حکم صادر کریں,
 Plan Name,منصوبہ کا نام,
@@ -1896,7 +1871,6 @@
 Please select date,تاریخ منتخب کیجیے,
 Please select item code,شے کے کوڈ کا انتخاب کریں,
 Please select month and year,مہینے اور سال براہ مہربانی منتخب کریں,
-Please select prefix first,پہلے سابقہ براہ مہربانی منتخب کریں,
 Please select the Company,براہ مہربانی کمپنی کا انتخاب کریں,
 Please select the Multiple Tier Program type for more than one collection rules.,ایک سے زائد مجموعہ کے قواعد کے لۓ ایک سے زیادہ ٹائر پروگرام کی قسم منتخب کریں.,
 Please select the assessment group other than 'All Assessment Groups',&#39;تمام تعین گروپ&#39; کے علاوہ کسی اور کا تعین گروپ براہ مہربانی منتخب کریں,
@@ -1913,7 +1887,6 @@
 Please set Company filter blank if Group By is 'Company',اگر گروپ سے &#39;کمپنی&#39; ہے کمپنی فلٹر کو خالی مقرر مہربانی,
 Please set Default Payroll Payable Account in Company {0},کمپنی میں پہلے سے طے شدہ پے رول قابل ادائیگی اکاؤنٹ سیٹ مہربانی {0},
 Please set Depreciation related Accounts in Asset Category {0} or Company {1},میں اثاثہ زمرہ {0} یا کمپنی ہراس متعلقہ اکاؤنٹس مقرر مہربانی {1},
-Please set Email Address,ای میل ایڈریس مقرر مہربانی,
 Please set GST Accounts in GST Settings,براہ کرم GST ترتیبات میں GST اکاؤنٹس مقرر کریں,
 Please set Hotel Room Rate on {},براہ کرم ہوٹل روم کی شرح مقرر کریں {},
 Please set Number of Depreciations Booked,Depreciations کی تعداد بک مقرر کریں,
@@ -1936,7 +1909,6 @@
 Please set the Email ID for the Student to send the Payment Request,براہ کرم طالب علم کے لئے ادائیگی کی درخواست بھیجنے کے لئے ای میل کی شناخت کریں,
 Please set the Item Code first,براہ مہربانی سب سے پہلے آئٹم کا کوڈ مقرر کریں,
 Please set the Payment Schedule,براہ کرم ادائیگی کا نظام الاوقات مرتب کریں۔,
-Please set the series to be used.,براہ کرم استعمال کرنے کیلئے سلسلہ مقرر کریں.,
 Please set {0} for address {1},براہ کرم پتے {1} کے لئے {0} مقرر کریں,
 Please setup Students under Student Groups,برائے مہربانی طالب علموں کے طلبا کے تحت طلب کریں,
 Please specify Company,کمپنی کی وضاحت کریں,
@@ -1953,7 +1925,6 @@
 Point-of-Sale,پوائنٹ کے فروخت,
 Point-of-Sale Profile,پوائنٹ کے فروخت پروفائل,
 Portal,پورٹل,
-Portal Settings,پورٹل ترتیبات,
 Possible Supplier,ممکنہ سپلائر,
 Postal Expenses,پوسٹل اخراجات,
 Posting Date,پوسٹنگ کی تاریخ,
@@ -2152,12 +2123,10 @@
 Reference No is mandatory if you entered Reference Date,آپ کے ریفرنس کے تاریخ میں داخل ہوئے تو حوالہ کوئی لازمی ہے,
 Reference No.,حوالہ نمبر,
 Reference Number,حوالہ نمبر,
-Reference Owner,حوالہ مالک,
 Reference Type,حوالہ قسم,
 "Reference: {0}, Item Code: {1} and Customer: {2}",حوالہ: {0}، آئٹم کوڈ: {1} اور کسٹمر: {2},
 References,حوالہ جات,
 Refresh Token,تازہ کریں ٹوکن,
-Region,ریجن,
 Register,رجسٹر کریں,
 Rejected,مسترد,
 Related,متعلقہ,
@@ -2179,7 +2148,6 @@
 Replace BOM and update latest price in all BOMs,بوم تبدیل کریں اور تمام بی ایمز میں تازہ ترین قیمت کو اپ ڈیٹ کریں,
 Replied,صوت,
 Report,رپورٹ,
-Report Builder,رپورٹ بلڈر,
 Report Type,رپورٹ کی قسم,
 Report Type is mandatory,رپورٹ کی قسم لازمی ہے,
 Reports,رپورٹس,
@@ -2355,13 +2323,11 @@
 Same Company is entered more than once,ایک ہی کمپنی ایک سے زیادہ بار داخل کیا جاتا ہے,
 Same item cannot be entered multiple times.,ایک ہی شے کے کئی بار داخل نہیں کیا جا سکتا.,
 Same supplier has been entered multiple times,ایک ہی سپلائر کئی بار داخل کیا گیا ہے,
-Sample,نمونہ,
 Sample Collection,نمونہ مجموعہ,
 Sample quantity {0} cannot be more than received quantity {1},نمونہ مقدار {0} وصول شدہ مقدار سے زیادہ نہیں ہوسکتا ہے {1},
 Sanctioned,منظور,
 Sand,ریت,
 Saturday,ہفتہ,
-Saved,محفوظ,
 Saving {0},{0} محفوظ کرنا,
 Scan Barcode,بارکوڈ اسکین کریں۔,
 Schedule,شیڈول,
@@ -2463,7 +2429,6 @@
 Series Updated,سیریز کو اپ ڈیٹ,
 Series Updated Successfully,سیریز کو کامیابی سے حالیہ,
 Series is mandatory,سیریز لازمی ہے,
-Series {0} already used in {1},پہلے ہی میں استعمال کیا جاتا سیریز {0} {1},
 Service,سروس,
 Service Level Agreement,سروس کی سطح کے معاہدے,
 Service Level Agreement.,سروس کی سطح کے معاہدے.,
@@ -2479,7 +2444,6 @@
 Set Tax Rule for shopping cart,خریداری کی ٹوکری کے لئے مقرر ٹیکس اصول,
 Set as Closed,بند کے طور پر مقرر,
 Set as Completed,بطور مکمل۔,
-Set as Default,ڈیفالٹ کے طور پر مقرر,
 Set as Lost,رکن کی نمائندہ تصویر کے طور پر مقرر,
 Set as Open,کھولنے کے طور پر مقرر کریں,
 Set default inventory account for perpetual inventory,ہمیشہ کی انوینٹری کے لئے پہلے سے طے شدہ انوینٹری اکاؤنٹ,
@@ -2511,7 +2475,6 @@
 Shareholder,شیئر ہولڈر,
 Ship To State,ریاست پر جہاز,
 Shipments,ترسیل,
-Shipping,شپنگ,
 Shipping Address,شپنگ ایڈریس,
 "Shipping Address does not have country, which is required for this Shipping Rule",شپنگ ایڈریس میں ملک نہیں ہے، جو اس شپنگ اصول کے لئے ضروری ہے,
 Shipping rule only applicable for Buying,خریدنے کے لئے شپنگ کے اصول صرف قابل اطلاق ہے,
@@ -2564,7 +2527,6 @@
 Split Batch,سپلٹ بیچ,
 Split Issue,سپلٹ مسئلہ,
 Sports,کھیل,
-Standard,سٹینڈرڈ,
 Standard Buying,سٹینڈرڈ خرید,
 Standard Selling,سٹینڈرڈ فروخت,
 Standard contract terms for Sales or Purchase.,سیلز یا خریداری کے لئے معیاری معاہدہ شرائط.,
@@ -2731,7 +2693,6 @@
 Terms and Conditions,شرائط و ضوابط,
 Terms and Conditions Template,شرائط و ضوابط سانچہ,
 Territory,علاقہ,
-Test,ٹیسٹ,
 Thank you for your business!,آپ کے کاروبار کے لئے آپ کا شکریہ!,
 The 'From Package No.' field must neither be empty nor it's value less than 1.,&#39;پیکیج نمبر سے&#39; فیلڈ نہ ہی خالی ہونا چاہئے اور نہ ہی اس سے کم قیمت ہے.,
 The Brand,برانڈ,
@@ -2848,7 +2809,6 @@
 Total (Without Tax),کل (ٹیکس کے بغیر),
 Total Achieved,کل حاصل کیا,
 Total Actual,اصل کل,
-Total Allocated Leaves,کل مختص شدہ پتیوں,
 Total Amount,کل رقم,
 Total Amount Credited,کریڈٹ کل رقم,
 Total Applicable Charges in Purchase Receipt Items table must be same as Total Taxes and Charges,خریداری کی رسید اشیا ٹیبل میں تمام قابل اطلاق چارجز کل ٹیکس اور الزامات طور پر ایک ہی ہونا چاہیے,
@@ -2892,7 +2852,6 @@
 Total(Amt),کل (AMT),
 Total(Qty),کل (مقدار),
 Traceability,traceability کے,
-Traceback,واپس تلاش کرنا، پھر جانچنا,
 Track Leads by Lead Source.,لیڈ ماخذ کی طرف سے لیڈز کو ٹریک کریں.,
 Transaction,ٹرانزیکشن,
 Transaction Date,ٹرانزیکشن کی تاریخ,
@@ -2930,7 +2889,6 @@
 UOM Conversion factor is required in row {0},UOM تبادلوں عنصر قطار میں کی ضرورت ہے {0},
 UOM coversion factor required for UOM: {0} in Item: {1},UOM لئے ضروری UOM coversion عنصر: {0} آئٹم میں: {1},
 URL,URL,
-Unable to find DocType {0},ڈس ٹائپ تلاش کرنے میں ناکام {0},
 Unable to find exchange rate for {0} to {1} for key date {2}. Please create a Currency Exchange record manually,کلیدی تاریخ {2} کیلئے {0} سے {1} کے تبادلے کی شرح کو تلاش کرنے میں قاصر. دستی طور پر ایک کرنسی ایکسچینج ریکارڈ تشکیل دیں,
 Unable to find score starting at {0}. You need to have standing scores covering 0 to 100,{0} سے شروع ہونے والے سکور کو تلاش کرنے میں ناکام. آپ کو 0 سے 100 ڈھکنے والے اسکورز کی ضرورت ہے,
 Unable to find variable: ,متغیر تلاش کرنے میں ناکام,
@@ -2960,7 +2918,6 @@
 Upload your letter head and logo. (you can edit them later).,اپنے خط سر اور علامت (لوگو). (آپ کو بعد ان میں ترمیم کر سکتے ہیں).,
 Upper Income,بالائی آمدنی,
 Use Sandbox,سینڈباکس استعمال,
-Used Leaves,استعمال شدہ پتیوں,
 User,صارف,
 User ID,صارف کی شناخت,
 User ID not set for Employee {0},صارف ID ملازم کے لئے مقرر نہیں {0},
@@ -3051,7 +3008,6 @@
 Website Settings,ویب سائٹ کی ترتیبات,
 Wednesday,بدھ,
 Week,ہفتہ,
-Weekdays,ہفتے کے دن,
 Weekly,ہفتہ وار,
 "Weight is mentioned,\nPlease mention ""Weight UOM"" too",وزن \ n براہ مہربانی بھی &quot;وزن UOM&quot; کا ذکر، ذکر کیا جاتا ہے,
 Welcome email sent,میں خوش آمدید ای میل بھیجا,
@@ -3072,7 +3028,6 @@
 Work Order {0} must be submitted,کام آرڈر {0} جمع ہونا ضروری ہے,
 Work Orders Created: {0},کام کے حکموں کو تشکیل دیا گیا: {0},
 Work-in-Progress Warehouse is required before Submit,کام میں پیش رفت گودام جمع کرانے سے پہلے کی ضرورت ہے,
-Workflow,کام کے فلو کو,
 Working,کام کر رہے ہیں,
 Working Hours,کام کے اوقات,
 Workstation,کارگاہ,
@@ -3102,7 +3057,6 @@
 You need to be a user other than Administrator with System Manager and Item Manager roles to register on Marketplace.,آپ کو ایڈمنسٹریٹر کے مقابلے میں کسی دوسرے صارف کو سسٹم مینیجر اور آئٹم مینیجر کے رول کے ساتھ مارکیٹ میں رجسٹر کرنے کی ضرورت ہے.,
 You need to be a user with System Manager and Item Manager roles to add users to Marketplace.,صارفین کو مارکیٹ کے مینیجر میں صارفین کو شامل کرنے کے لئے سسٹم مینیجر اور آئٹم مینیجر رول کے ساتھ ایک صارف ہونا ضروری ہے.,
 You need to be a user with System Manager and Item Manager roles to register on Marketplace.,مارکیٹ میں رجسٹر کرنے کے لئے آپ کو سسٹم مینیجر اور آئٹم مینیجر کے کردار کے ساتھ ایک صارف بنانا ہوگا.,
-You need to be logged in to access this page,آپ کو اس صفحہ تک رسائی کے لئے لاگ ان کرنے کی ضرورت ہے,
 You need to enable Shopping Cart,آپ کی خریداری کی ٹوکری کو چالو کرنے کی ضرورت ہے,
 You will lose records of previously generated invoices. Are you sure you want to restart this subscription?,آپ پہلے سے تیار کردہ انوائس کے ریکارڈ کھو جائیں گے. کیا آپ واقعی اس رکنیت کو دوبارہ شروع کرنا چاہتے ہیں؟,
 Your Organization,اپنی تنظیم,
@@ -3218,7 +3172,6 @@
 Assigned To,مقرر کیا، مقرر کرنا,
 Chat,چیٹ,
 Completed By,نے مکمل کیا,
-County,کاؤنٹی,
 Day of Week,ہفتہ کے دن,
 "Dear System Manager,",عزیز سسٹم مینیجر،,
 Default Value,ڈیفالٹ قدر,
@@ -3229,31 +3182,21 @@
 Fieldtype,Fieldtype,
 Help Articles,مدد مضامین,
 ID,ID,
-Images,امیجز,
 Import,درآمد,
 Language,زبان,
 Likes,پسند,
 Merge with existing,موجودہ کے ساتھ ضم,
-Office,آفس,
 Orientation,واقفیت,
 Parent,والدین,
-Passive,غیر فعال,
 Payment Failed,ادائیگی ناکام ہو گیا,
-Permanent,مستقل,
 Personal,ذاتی,
-Plant,پلانٹ,
 Post,پوسٹ,
-Postal,ڈاک,
 Postal Code,ڈاک کا کوڈ,
-Previous,پچھلا,
 Provider,فراہم کنندہ,
 Read Only,صرف پڑھو,
 Recipient,وصول کنندہ,
 Reviews,جائزہ,
 Sender,مرسل,
-Shop,دکان,
-Subsidiary,ماتحت,
-There is some problem with the file url: {0},فائل URL کے ساتھ کچھ مسئلہ ہے: {0},
 There were errors while sending email. Please try again.,ای میل بھیجنے جبکہ غلطیاں تھیں. برائے مہربانی دوبارہ کوشش کریں.,
 Values Changed,اقدار کو تبدیل کر دیا,
 or,یا,
@@ -3280,19 +3223,16 @@
 Quality Feedback Template,کوالٹی فیڈ بیک ٹیمپلیٹ۔,
 Rules for applying different promotional schemes.,مختلف پروموشنل اسکیموں کو لاگو کرنے کے قواعد۔,
 Show {0},دکھائیں {0},
-"Special Characters except '-', '#', '.', '/', '{{' and '}}' not allowed in naming series {0}",{0} &quot;-&quot; ، &quot;#&quot; ، &quot;.&quot; ، &quot;/&quot; ، &quot;{{&quot; اور &quot;}}&quot; سوائے خصوصی حروف کی نام بندی سیریز میں اجازت نہیں ہے,
 Target Details,ہدف کی تفصیلات۔,
 {0} already has a Parent Procedure {1}.,{0} پہلے سے ہی والدین کا طریقہ کار {1} ہے.,
 API,API,
 Annual,سالانہ,
 Change,پیج,
 Contact Email,رابطہ ای میل,
-Export Type,برآمد کی قسم,
 From Date,تاریخ سے,
 Group By,گروپ بہ,
 Invalid URL,غلط URL,
 Landscape,زمین کی تزئین,
-Last Sync On,آخری مطابقت پذیری,
 Naming Series,نام سیریز,
 No data to export,برآمد کرنے کے لئے کوئی ڈیٹا نہیں ہے۔,
 Portrait,پورٹریٹ,
@@ -3302,7 +3242,6 @@
 Show Document,دستاویز دکھائیں۔,
 Show Traceback,ٹریس بیک دکھائیں۔,
 Video,ویڈیو,
-Webhook Secret,ویب ہک سیکرٹ,
 % Of Grand Total,گرینڈ کل کا٪,
 <b>Company</b> is a mandatory filter.,<b>کمپنی</b> لازمی فلٹر ہے۔,
 <b>From Date</b> is a mandatory filter.,<b>تاریخ</b> سے لازمی فلٹر ہے۔,
@@ -3358,7 +3297,6 @@
 BOM Comparison Tool,BOM موازنہ کا آلہ۔,
 BOM recursion: {0} cannot be child of {1},BOM تکرار: {0 {1} کا بچہ نہیں ہوسکتا,
 BOM recursion: {0} cannot be parent or child of {1},BOM تکرار: {0 والدین یا {1 parent کا بچہ نہیں ہوسکتا,
-Back to Home,واپس گھر,
 Back to Messages,پیغامات پر واپس جائیں۔,
 Bank Data mapper doesn't exist,بینک ڈیٹا میپر موجود نہیں ہے۔,
 Bank Details,بینک کی تفصیلات,
@@ -3420,7 +3358,6 @@
 Currency,کرنسی,
 Current Status,موجودہ حیثیت,
 Customer PO,کسٹمر پی او,
-Customize,مرضی کے مطابق بنائیں,
 Daily,ڈیلی,
 Date,تاریخ,
 Date of Birth cannot be greater than Joining Date.,تاریخ پیدائش شمولیت سے زیادہ نہیں ہوسکتی ہے۔,
@@ -3454,7 +3391,6 @@
 ERPNext could not find any matching payment entry,ERPNext کوئی مماثل ادائیگی اندراج نہیں پایا۔,
 Earliest Age,ابتدائی عمر۔,
 Edit Details,تفصیلات میں ترمیم کریں,
-Edit Profile,پروفائل میں ترمیم کریں,
 Either GST Transporter ID or Vehicle No is required if Mode of Transport is Road,اگر موڈ ٹرانسپورٹ روڈ ہے تو یا تو جی ایس ٹی ٹرانسپورٹر ID یا گاڑی نمبر ضروری نہیں ہے۔,
 Email,ای میل,
 Email Campaigns,ای میل مہمات۔,
@@ -3482,7 +3418,6 @@
 Fetch Items from Warehouse,گودام سے سامان لائیں,
 Fetching...,بازیافت کر رہا ہے…,
 Field,فیلڈ,
-File Manager,فائل مینیجر,
 Filters,فلٹرز,
 Finding linked payments,منسلک ادائیگیوں کا پتہ لگانا۔,
 Fleet Management,بیڑے کے انتظام,
@@ -3521,7 +3456,6 @@
 Incorrect Warehouse,غلط گودام,
 Invalid Barcode. There is no Item attached to this barcode.,غلط بار کوڈ۔ اس بار کوڈ کے ساتھ کوئی آئٹم منسلک نہیں ہے۔,
 Invalid credentials,جعلی اسناد,
-Invite as User,صارف کے طور پر مدعو کریں,
 Issue Priority.,ترجیح جاری کریں۔,
 Issue Type.,مسئلہ کی قسم,
 "It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.",ایسا لگتا ہے کہ سرور کی پٹی ترتیب کے ساتھ ایک مسئلہ ہے. ناکامی کی صورت میں، رقم آپ کے اکاؤنٹ میں واپس کی جائے گی.,
@@ -3564,7 +3498,6 @@
 New Invoice,نیا انوائس۔,
 New Payment,نئی ادائیگی,
 New release date should be in the future,نئی رہائی کی تاریخ مستقبل میں ہونی چاہئے۔,
-Newsletter,نیوز لیٹر,
 No Account matched these filters: {},ان فلٹرز سے کوئی اکاؤنٹ مماثل نہیں ہے: {},
 No communication found.,کوئی مواصلت نہیں ملی۔,
 No correct answer is set for {0},correct 0 for کے لئے کوئی صحیح جواب طے نہیں کیا گیا ہے,
@@ -3640,7 +3573,6 @@
 Please setup a default bank account for company {0},براہ کرم کمپنی for 0 for کے لئے پہلے سے طے شدہ بینک اکاؤنٹ مرتب کریں,
 Please specify,وضاحت براہ مہربانی,
 Please specify a {0},براہ کرم ایک {0 specify کی وضاحت کریں,lead
-Printing,پرنٹنگ,
 Priority,ترجیح,
 Priority has been changed to {0}.,ترجیح کو {0} میں تبدیل کردیا گیا ہے۔,
 Priority {0} has been repeated.,ترجیح {0 repeated دہرائی گئی ہے۔,
@@ -3649,7 +3581,6 @@
 Project,پروجیکٹ,
 Provide the academic year and set the starting and ending date.,تعلیمی سال فراہم کریں اور آغاز اور اختتامی تاریخ طے کریں۔,
 Public token is missing for this bank,اس بینک کیلئے عوامی ٹوکن غائب ہے۔,
-Publish,شائع کریں,
 Publish 1 Item,1 آئٹم شائع کریں۔,
 Publish Items,اشاعت شائع کریں۔,
 Publish More Items,مزید اشیا شائع کریں۔,
@@ -3677,7 +3608,6 @@
 Reconciled,مفاہمت کی۔,
 Recruitment,نوکری کے لئے,
 Red,ریڈ,
-Refreshing,تازہ کاری,
 Release date must be in the future,رہائی کی تاریخ مستقبل میں ہونی چاہئے۔,
 Relieving Date must be greater than or equal to Date of Joining,تاریخ چھٹکارا شامل ہونے کی تاریخ سے زیادہ یا اس کے برابر ہونا چاہئے,
 Rename,نام تبدیل کریں,
@@ -3721,7 +3651,6 @@
 Search for a payment,ادائیگی کے لئے تلاش کریں۔,
 Search for anything ...,کسی بھی چیز کی تلاش ...,
 Search results for,کے لئے تلاش کے نتائج,
-Select All,تمام منتخب کریں,
 Select Difference Account,فرق اکاؤنٹ منتخب کریں۔,
 Select a Default Priority.,پہلے سے طے شدہ ترجیح منتخب کریں۔,
 Select a company,کمپنی منتخب کریں۔,
@@ -3740,11 +3669,9 @@
 Service Level Agreement has been changed to {0}.,سروس لیول ایگریمنٹ کو {0 to کر دیا گیا ہے۔,
 Service Level Agreement was reset.,سروس لیول کا معاہدہ دوبارہ تشکیل دے دیا گیا۔,
 Service Level Agreement with Entity Type {0} and Entity {1} already exists.,ہستی کی قسم Service 0} اور ہستی {1 with کے ساتھ سروس لیول کا معاہدہ پہلے سے موجود ہے۔,
-Set,مقرر,
 Set Meta Tags,میٹا ٹیگز مرتب کریں۔,
 Set {0} in company {1},کمپنی میں {0 Set سیٹ کریں} 1},
 Setup,سیٹ اپ,
-Setup Wizard,سیٹ اپ مددگار,
 Shift Management,شفٹ مینجمنٹ,
 Show Future Payments,مستقبل کی ادائیگی دکھائیں۔,
 Show Linked Delivery Notes,لنکڈ ڈلیوری نوٹ دکھائیں,
@@ -3815,7 +3742,6 @@
 Unreconciled,غیر منسلک,
 Unsupported GST Category for E-Way Bill JSON generation,ای وے بل JSON جنریشن کیلئے غیر تعاون شدہ جی ایس ٹی زمرہ۔,
 Update,اپ ڈیٹ کریں,
-Update Details,تازہ کاری کی تفصیلات,
 Update Taxes for Items,اشیا کے ل Update ٹیکس اپ ڈیٹ کریں,
 "Upload a bank statement, link or reconcile a bank account",بینک اسٹیٹمنٹ اپ لوڈ کریں ، بینک اکاؤنٹ کو لنک کریں یا میل میل کریں۔,
 Upload a statement,ایک بیان اپ لوڈ کریں۔,
@@ -3839,7 +3765,6 @@
 XML Files Processed,XML فائلوں پر کارروائی ہوئی,
 Year,سال,
 Yearly,سالانہ,
-You,آپ,
 You are not allowed to enroll for this course,آپ کو اس کورس کے لئے داخلہ لینے کی اجازت نہیں ہے۔,
 You are not enrolled in program {0},آپ کے پروگرام {0 in میں داخلہ نہیں لیا گیا ہے,
 You can Feature upto 8 items.,آپ 8 آئٹمز تک کی نمائش کرسکتے ہیں۔,
@@ -3856,7 +3781,6 @@
 e-Way Bill already exists for this document,اس دستاویز کے لئے ای وے بل پہلے ہی موجود ہے۔,
 woocommerce - {0},ووکومرس - {0,
 {0} Coupon used are {1}. Allowed quantity is exhausted,used 0 used استعمال شدہ کوپن {1} ہیں۔ اجازت شدہ مقدار ختم ہوگئ,
-{0} Name,{0} نام,
 {0} Operations: {1},{0} آپریشنز: {1},
 {0} bank transaction(s) created,transaction 0} بینک ٹرانزیکشن (زبانیں) تشکیل دی گئیں,
 {0} bank transaction(s) created and {1} errors,} 0} بینک ٹرانزیکشن (زبانیں) تخلیق اور. 1} غلطیاں,
@@ -3875,17 +3799,13 @@
 Total Income,کل آمدنی,
 Total Income This Year,اس سال کل آمدنی,
 Barcode,بارکوڈ,
-Bold,بولڈ,
-Center,سینٹر,
 Clear,صاف,
-Comment,تبصرہ,
 Comments,تبصرے,
 DocType,ڈاک ٹائپ,
 Download,ڈاؤن لوڈ کریں,
 Left,بائیں,
 Link,لنک,
 New,نئی,
-Not Found,نہیں ملا,
 Print,پرنٹ کریں,
 Reference Name,نام کا حوالہ,
 Refresh,تازہ کاری,
@@ -3908,7 +3828,6 @@
 Email Id,ای میل ID,
 No,نہیں,
 Reference Doctype,حوالہ DOCTYPE,
-User Id,صارف کی شناخت,
 Yes,جی ہاں,
 Actual ,اصل,
 Add to cart,ٹوکری میں شامل کریں,
@@ -4304,7 +4223,6 @@
 e.g Adjustments for:,مثال کے طور پر:,
 Section Subtotal,سیکشن ذیلیٹول,
 Section Footer,سیکشن فوٹر,
-Position,مقام,
 Cash Flow Mapping,کیش فلو تعریفیں,
 Select Maximum Of 1,زیادہ سے زیادہ 1 منتخب کریں,
 Is Finance Cost,مالیاتی لاگت ہے,
@@ -4936,7 +4854,6 @@
 Previous Business Day,پچھلے کاروباری دن,
 Next Business Day,اگلے کاروباری دن,
 Urgent,ارجنٹ,
-Crop,فصل,
 Crop Name,فصل کا نام,
 Scientific Name,سائنسی نام,
 "You can define all the tasks which need to carried out for this crop here. The day field is used to mention the day on which the task needs to be carried out, 1 being the 1st day, etc.. ",آپ تمام کاموں کی وضاحت کرسکتے ہیں جو یہاں اس فصل کے لئے باہر جانے کی ضرورت ہے. دن کا میدان اس دن کا ذکر کرنے کے لئے استعمال کیا جاتا ہے جس پر کام کرنے کی ضرورت ہے، 1 دن پہلے، وغیرہ.,
@@ -5441,7 +5358,6 @@
 To TIme,وقت,
 Course End Date,کورس کی آخری تاریخ,
 Course Topic,کورس کا عنوان۔,
-Topic,موضوع,
 Topic Name,موضوع کا نام,
 Education Settings,تعلیم کی ترتیبات,
 Current Academic Year,موجودہ تعلیمی سال,
@@ -5516,7 +5432,6 @@
 Check this if the Student is residing at the Institute's Hostel.,طالب علم انسٹی ٹیوٹ کے ہاسٹل میں رہائش پذیر ہے تو اس کو چیک کریں.,
 Walking,چلنے کے سہارے,
 Institute's Bus,انسٹی ٹیوٹ بس,
-Public Transport,پبلک ٹرانسپورٹ,
 Self-Driving Vehicle,خود ڈرائیونگ وہیکل,
 Pick/Drop by Guardian,/ سرپرست کی طرف سے ڈراپ چنیں,
 Enrolled courses,مندرج کورسز,
@@ -5697,7 +5612,6 @@
 Default Cost Center,پہلے سے طے شدہ لاگت مرکز,
 Undeposited Funds Account,Undeposited فنڈز اکاؤنٹ,
 Shopify Log,Shopify لاگ ان,
-Request Data,درخواست ڈیٹا,
 Shopify Settings,Shopify کی ترتیبات,
 status html,حیثیت HTML,
 Enable Shopify,Shopify کو فعال کریں,
@@ -5817,7 +5731,6 @@
 Exercise Instructions,ورزش کی ہدایات,
 Exercise Video,ویڈیو ورزش کریں,
 Exercise Steps,ورزش کے اقدامات,
-Steps,اقدامات,
 Steps Table,اقدامات کی میز,
 Exercise Type Step,ورزش کی قسم کا مرحلہ,
 Max number of visit,دورے کی زیادہ سے زیادہ تعداد,
@@ -6001,7 +5914,6 @@
 Patient Encounter Symptom,مریض کا مقابلہ علامت,
 HLC-PMR-.YYYY.-,HLC- PMR-YYYY.-,
 Attach Medical Record,میڈیکل ریکارڈ منسلک کریں,
-Reference DocType,حوالہ ڈاکٹائپ,
 Spouse,بیوی,
 Family,خاندان,
 Schedule Details,شیڈول کی تفصیلات,
@@ -6983,16 +6895,8 @@
 HTML / Banner that will show on the top of product list.,مصنوعات کی فہرست کے سب سے اوپر پر دکھایا جائے گا کہ ایچ ٹی ایم ایل / بینر.,
 Set prefix for numbering series on your transactions,آپ کے لین دین پر سیریز تعداد کے لئے مقرر اپسرگ,
 Setup Series,سیٹ اپ سیریز,
-Select Transaction,منتخب ٹرانزیکشن,
-Help HTML,مدد ایچ ٹی ایم ایل,
-Series List for this Transaction,اس ٹرانزیکشن کے لئے سیریز,
-User must always select,صارف نے ہمیشہ منتخب کرنا ضروری ہے,
-Check this if you want to force the user to select a series before saving. There will be no default if you check this.,آپ کی بچت سے پہلے ایک سلسلہ منتخب کرنے کے لئے صارف کو مجبور کرنا چاہتے ہیں تو اس کی جانچ پڑتال. آپ کو اس کی جانچ پڑتال اگر کوئی پہلے سے طے شدہ ہو گا.,
 Update Series,اپ ڈیٹ سیریز,
 Change the starting / current sequence number of an existing series.,ایک موجودہ سیریز کے شروع / موجودہ ترتیب تعداد کو تبدیل کریں.,
-Prefix,اپسرگ,
-This is the number of the last created transaction with this prefix,یہ اپسرگ کے ساتھ گزشتہ پیدا لین دین کی تعداد ہے,
-Update Series Number,اپ ڈیٹ سلسلہ نمبر,
 Quotation Lost Reason,کوٹیشن کھو وجہ,
 A third party distributor / dealer / commission agent / affiliate / reseller who sells the companies products for a commission.,ایک کمیشن کے کمپنیوں کی مصنوعات فروخت کرتا ہے جو ایک تیسری پارٹی ڈسٹریبیوٹر / ڈیلر / کمیشن ایجنٹ / الحاق / ری سیلر.,
 Sales Partner Name,سیلز پارٹنر نام,
@@ -7687,7 +7591,6 @@
 Warehouse wise Item Balance Age and Value,گودام وار آئٹم بیلنس عمر اور ویلیو,
 Work Order Stock Report,کام آرڈر سٹاک کی رپورٹ,
 Work Orders in Progress,پیشرفت میں کام کے حکم,
-Validation Error,توثیق کی خرابی,
 Automatically Process Deferred Accounting Entry,مؤخر اکاؤنٹنگ اندراج پر خودکار طور پر کارروائی کریں,
 Bank Clearance,بینک کلیئرنس,
 Bank Clearance Detail,بینک کلیئرنس تفصیل,
@@ -7724,45 +7627,7 @@
 Therapy Plan: ,تھراپی پلان:,
 Total Counts Targeted: ,ھدف کردہ کل گنتی:,
 Total Counts Completed: ,مکمل گنتی:,
-Andaman and Nicobar Islands,انڈمن اور نِکوبار جزیرے,
-Andhra Pradesh,آندھرا پردیش,
-Arunachal Pradesh,اروناچل پردیش,
-Assam,آسام,
-Bihar,بہار,
-Chandigarh,چندی گڑھ,
-Chhattisgarh,چھتیس گڑھ,
-Dadra and Nagar Haveli,دادرا اور نگر حویلی,
-Daman and Diu,دامان اور دیئو,
-Delhi,دہلی,
-Goa,گوا,
-Gujarat,گجرات,
-Haryana,ہریانہ,
-Himachal Pradesh,ہماچل پردیش,
-Jammu and Kashmir,جموں وکشمیر,
-Jharkhand,جھارکھنڈ,
-Karnataka,کرناٹک,
-Kerala,کیرل,
-Lakshadweep Islands,لکشدیپ جزیرے,
-Madhya Pradesh,مدھیہ پردیش,
-Maharashtra,مہاراشٹر,
-Manipur,منی پور,
-Meghalaya,میگھالیہ,
-Mizoram,میزورم,
-Nagaland,ناگالینڈ,
-Odisha,اوڈیشہ,
-Other Territory,دیگر علاقہ,
-Pondicherry,پانڈیچیری,
-Punjab,پنجاب,
-Rajasthan,راجستھان,
-Sikkim,سکم,
-Tamil Nadu,تمل ناڈو,
-Telangana,تلنگانہ,
-Tripura,تریپورہ,
-Uttar Pradesh,اتر پردیش,
-Uttarakhand,اتراکھنڈ,
-West Bengal,مغربی بنگال,
 Is Mandatory,لازمی ہے,
-Published on,پر شائع ہوا,
 Service Received But Not Billed,سروس موصول ہوئی لیکن بل نہیں لیا گیا,
 Deferred Accounting Settings,مؤخر اکاؤنٹنگ کی ترتیبات,
 Book Deferred Entries Based On,کتاب التواء شدہ اندراجات کی بنیاد پر,
@@ -8035,8 +7900,6 @@
 Worksheet Instructions,ورک شیٹ کی ہدایات,
 Result Legend Print,علامات پرنٹ کے نتائج,
 Print Position,پرنٹ پوزیشن,
-Bottom,نیچے,
-Top,اوپر,
 Both,دونوں,
 Result Legend,علامات کی علامت,
 Lab Tests,لیب ٹیسٹ,
@@ -8081,12 +7944,10 @@
 Approvers,تنازعہ,
 The first Approver in the list will be set as the default Approver.,فہرست میں پہلا منظور نامہ پہلے سے طے شدہ منظوری کے طور پر مقرر کیا جائے گا۔,
 Shift Request Approver,شفٹ کی درخواست منظور کریں,
-PAN Number,پین نمبر,
 Provident Fund Account,پروویڈنٹ فنڈ اکاؤنٹ,
 MICR Code,ایم آئی سی آر کوڈ,
 Repay unclaimed amount from salary,تنخواہ سے غیر دعویدار رقم واپس کریں,
 Deduction from salary,تنخواہ سے کٹوتی,
-Expired Leaves,ختم شدہ پتے,
 If this is not checked the loan by default will be considered as a Demand Loan,اگر اس کی جانچ نہیں کی گئی تو قرض کو بطور ڈیفانٹ لون سمجھا جائے گا,
 This account is used for booking loan repayments from the borrower and also disbursing loans to the borrower,یہ اکاؤنٹ قرض لینے والے سے قرض کی واپسیوں کی بکنگ اور قرض لینے والے کو قرضوں کی تقسیم کے لئے استعمال ہوتا ہے,
 This account is capital account which is used to allocate capital for loan disbursal account ,یہ کھاتہ دارالحکومت کا کھاتہ ہے جو قرض تقسیم کے اکاؤنٹ کے لئے سرمایہ مختص کرنے کے لئے استعمال ہوتا ہے,
@@ -8844,3 +8705,41 @@
 Creating Purchase Order ...,خریداری کا آرڈر تشکیل دے رہا ہے…,
 "Select a Supplier from the Default Suppliers of the items below. On selection, a Purchase Order will be made against items belonging to the selected Supplier only.",ذیل میں آئٹمز کے ڈیفالٹ سپلائرز میں سے ایک سپلائر منتخب کریں۔ انتخاب پر ، خریداری کا آرڈر صرف منتخب کردہ سپلائر سے متعلقہ اشیاء کے خلاف کیا جائے گا۔,
 Row #{}: You must select {} serial numbers for item {}.,قطار # {}: آپ کو آئٹم for for کے لئے}} سیریل نمبرز منتخب کرنا ہوں گے۔,
+Add Comment,تبصرہ شامل کریں,
+More...,مزید ...,
+Notes,نوٹس,
+Payment Gateway,ادائیگی کے گیٹ وے,
+Payment Gateway Name,ادائیگی گیٹ وے کا نام,
+Payments,ادائیگی,
+Plan Name,منصوبہ کا نام,
+Portal,پورٹل,
+Scan Barcode,بارکوڈ اسکین کریں۔,
+Some information is missing,کچھ معلومات لاپتہ ہے,
+Successful,کامیاب,
+Tools,، فورم کے اوزار,
+Use Sandbox,سینڈباکس استعمال,
+Busy,مصروف,
+Completed By,نے مکمل کیا,
+Payment Failed,ادائیگی ناکام ہو گیا,
+Column {0},کالم {0},
+Field Mapping,فیلڈ میپنگ,
+Not Specified,مخصوص نہیں,
+Update Type,اپ ڈیٹ کی قسم,
+Dr,ڈاکٹر,
+End Time,آخر وقت,
+Fetching...,بازیافت کر رہا ہے…,
+"It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.",ایسا لگتا ہے کہ سرور کی پٹی ترتیب کے ساتھ ایک مسئلہ ہے. ناکامی کی صورت میں، رقم آپ کے اکاؤنٹ میں واپس کی جائے گی.,
+Looks like someone sent you to an incomplete URL. Please ask them to look into it.,ایسا لگتا ہے کہ کسی کے لئے ایک نامکمل URL کے لئے بھیجا طرح. اس پر غور کرنے کا مطالبہ کریں.,
+Master,ماسٹر,
+Pay,ادائیگی,
+You can also copy-paste this link in your browser,تم نے بھی آپ کے براؤزر میں اس لنک کو کاپی پیسٹ کر سکتے ہیں,
+Verified By,کی طرف سے تصدیق,
+Invalid naming series (. missing) for {0},{0 for کے لئے نامزد کرنے کی غلط سیریز (. غائب),
+Phone Number,فون نمبر,
+Account SID,اکاؤنٹ SID۔,
+Global Defaults,گلوبل ڈیفالٹس,
+Is Mandatory,لازمی ہے,
+WhatsApp,واٹس ایپ,
+Make a call,بنائیں ایک کال,
+Approve,منظور کریں,
+Reject,مسترد,
diff --git a/erpnext/translations/uz.csv b/erpnext/translations/uz.csv
index 6cdb23c..6b25e7b 100644
--- a/erpnext/translations/uz.csv
+++ b/erpnext/translations/uz.csv
@@ -113,7 +113,6 @@
 Add Items,Ma&#39;lumotlar qo&#39;shish,
 Add Leads,Rahbarlar qo&#39;shing,
 Add Multiple Tasks,Ko&#39;p vazifalarni qo&#39;shing,
-Add Row,Roy qo&#39;shish,
 Add Sales Partners,Savdo hamkorlarini qo&#39;shish,
 Add Serial No,Seriya raqami qo&#39;shing,
 Add Students,Talabalarni qo&#39;shish,
@@ -211,9 +210,7 @@
 An error occurred during the update process,Yangilash jarayonida xatolik yuz berdi,
 "An item exists with same name ({0}), please change the item group name or rename the item","Biror narsa ({0}) bir xil nom bilan mavjud bo&#39;lsa, iltimos, element guruh nomini o&#39;zgartiring yoki ob&#39;ektni qayta nomlang",
 Analyst,Tahlilchi,
-Analytics,Tahlillar,
 Annual Billing: {0},Yillik to&#39;lov: {0},
-Anonymous,Anonim,
 Another Budget record '{0}' already exists against {1} '{2}' and account '{3}' for fiscal year {4},&quot;{0}&quot; boshqa byudjet yozuvi allaqachon {1} &#39;{2}&#39; ga qarshi va {4} moliya yili uchun &#39;{3}&#39; hisobi mavjud.,
 Another Period Closing Entry {0} has been made after {1},Boshqa bir davrni yopish {0} {1},
 Another Sales Person {0} exists with the same Employee id,Boshqa bir Sotuvdagi Shaxs {0} bir xil xodim identifikatori mavjud,
@@ -283,14 +280,12 @@
 Attendance not submitted for {0} as {1} on leave.,Davom etish {0} uchun {1} sifatida qoldirilmadi.,
 Attribute table is mandatory,Xususiyat jadvali majburiydir,
 Attribute {0} selected multiple times in Attributes Table,Xususiyat {0} xususiyati bir nechta marta Attributes jadvalida tanlangan,
-Author,Muallif,
 Authorized Signatory,Vakolatli vakil,
 Auto Material Requests Generated,Avtomatik material talablari yaratildi,
 Auto Repeat,Avto-takrorlash,
 Auto repeat document updated,Avtomatik qayta-qayta hujjat yangilandi,
 Automotive,Avto,
 Available,Mavjud,
-Available Leaves,Mavjud barglar,
 Available Qty,Mavjud Miqdor,
 Available Selling,Sotuvga tayyor,
 Available for use date is required,Foydalanish uchun mavjud bo&#39;lgan sana talab qilinadi,
@@ -340,7 +335,6 @@
 Base URL,Asosiy URL,
 Based On,Shunga asosan,
 Based On Payment Terms,To&#39;lov shartlari asosida,
-Basic,Asosiy,
 Batch,Partiya,
 Batch Entries,Paket yozuvlari,
 Batch ID is mandatory,Partiya identifikatori majburiydir,
@@ -361,7 +355,6 @@
 Billable Hours,To‘lov vaqti,
 Billed,To&#39;lov,
 Billed Amount,To&#39;lov miqdori,
-Billing,Billing,
 Billing Address,Murojaat manzili,
 Billing Address is same as Shipping Address,To‘lov manzili yetkazib berish manzili bilan bir xil,
 Billing Amount,To&#39;lov miqdori,
@@ -560,7 +553,6 @@
 Consumed Qty,Iste&#39;mol qilingan Miqdor,
 Consumer Products,Iste&#39;molchi mahsulotlari,
 Contact,Aloqa,
-Contact Details,Aloqa tafsilotlari,
 Contact Us,Biz bilan bog&#39;lanish,
 Content,Kontent,
 Content Masters,Tarkib ustalari,
@@ -715,7 +707,6 @@
 Date of Joining,Ishtirok etish sanasi,
 Date of Joining must be greater than Date of Birth,Kiritilgan sana Tug&#39;ilgan kundan katta bo&#39;lishi kerak,
 Date of Transaction,Jurnal tarixi,
-Datetime,Datetime,
 Day,Kun,
 Debit,Debet,
 Debit ({0}),Debet ({0}),
@@ -874,7 +865,6 @@
 Employee cannot report to himself.,Xodim o&#39;z oldiga hisobot bera olmaydi.,
 Employee {0} has already applied for {1} between {2} and {3} : ,{0} xizmatdoshi {1} uchun {2} va {3}) orasida allaqachon murojaat qilgan:,
 Employee {0} of grade {1} have no default leave policy,{1} sinfidagi xodimlar {0} standart ta&#39;til siyosatiga ega emas,
-Enable,Yoqish,
 Enable / disable currencies.,Pullarni yoqish / o&#39;chirish.,
 Enabled,Faol,
 "Enabling 'Use for Shopping Cart', as Shopping Cart is enabled and there should be at least one Tax Rule for Shopping Cart",Xarid qilish vositasi yoqilganligi uchun &quot;Savatga savatni ishlatish&quot; funksiyasini yoqish va savat uchun kamida bitta Soliq qoidasi bo&#39;lishi kerak,
@@ -905,7 +895,6 @@
 Error: Not a valid id?,Xato: haqiqiy emas kim?,
 Estimated Cost,Bashoratli narxlar,
 "Even if there are multiple Pricing Rules with highest priority, then following internal priorities are applied:","Yuqori ustuvorlikka ega bo&#39;lgan bir nechta narx qoidalari mavjud bo&#39;lsa ham, ichki ustuvorliklar quyidagilarga amal qiladi:",
-Event,Voqealar,
 Exchange Gain/Loss,Almashinish / Zarar,
 Exchange Rate Revaluation master.,Valyuta kursini qayta baholash ustasi.,
 Exchange Rate must be same as {0} {1} ({2}),Ayirboshlash kursi {0} {1} ({2}),
@@ -1032,7 +1021,6 @@
 From value must be less than to value in row {0},Qiymatdan {0} qatorda qiymatdan kam bo&#39;lishi kerak,
 From {0} | {1} {2},{0} dan {1} {2},
 Fulfillment,Tugatish,
-Full,To&#39;liq,
 Full Name,To&#39;liq ismi sharif,
 Fully Depreciated,To&#39;liq Amortizatsiyalangan,
 Furnitures and Fixtures,Mebel va anjomlar,
@@ -1133,7 +1121,6 @@
 Hub Sync ID,Uyadagi sinxronlash identifikatori,
 Human Resource,Inson resursi,
 Human Resources,Kadrlar bo&#39;limi,
-IFSC Code,IFSC kodi,
 IGST Amount,IGST miqdori,
 IP Address,IP manzili,
 ITC Available (whether in full op part),ITC mavjud (to&#39;liq holatda bo&#39;lsin),
@@ -1185,7 +1172,6 @@
 Ineligible ITC,Nomaqbul ITC,
 Initiated,Boshlandi,
 Inpatient Record,Statsionar qaydnomasi,
-Insert,Qo&#39;shish,
 Installation Note,O&#39;rnatish eslatmasi,
 Installation Note {0} has already been submitted,O&#39;rnatish uchun eslatma {0} allaqachon yuborilgan,
 Installation date cannot be before delivery date for Item {0},O&#39;rnatish sanasi {0} mahsuloti uchun etkazib berish tarixidan oldin bo&#39;lishi mumkin emas,
@@ -1197,7 +1183,6 @@
 Insurance Start date should be less than Insurance End date,Sug&#39;urtaning boshlanish sanasi sug&#39;urta tugagan sanadan kam bo&#39;lishi kerak,
 Integrated Tax,Birlashtirilgan soliq,
 Inter-State Supplies,Davlatlararo etkazib berish,
-Interests,Qiziqishlar,
 Internet Publishing,Internet-nashriyot,
 Intra-State Supplies,Davlat ichidagi etkazib berish,
 Introduction,Kirish,
@@ -1316,7 +1301,6 @@
 Lab testing datetime cannot be before collection datetime,Laboratoriya tekshiruvi datetime yig&#39;ishdan oldin datetime vaqtini topa olmaydi,
 Label,Yorliq,
 Laboratory,Laboratoriya,
-Language Name,Til nomi,
 Large,Katta,
 Last Communication,Oxirgi muloqot,
 Last Communication Date,Oxirgi aloqa davri,
@@ -1347,8 +1331,6 @@
 Letter Heads for print templates.,Chop etish uchun andozalar.,
 Level,Darajali,
 Liability,Javobgarlik,
-License,Litsenziya,
-Limit,Limit,
 Limit Crossed,Cheklangan chiziqli,
 Link to Material Request,Materiallar talabiga havola,
 List of all share transactions,Barcha ulushlarning bitimlar ro&#39;yxati,
@@ -1359,7 +1341,6 @@
 Loans (Liabilities),Kreditlar (majburiyatlar),
 Loans and Advances (Assets),Kreditlar va avanslar (aktivlar),
 Local,Mahalliy,
-Log,Kundalik,
 Logs for maintaining sms delivery status,Sms yetkazib berish holatini saqlab qolish uchun qaydlar,
 Lost,Yo&#39;qotilgan,
 Lost Reasons,Yo&#39;qotilgan sabablar,
@@ -1445,7 +1426,6 @@
 Medical Department,Tibbiy bo&#39;lim,
 Medical Record,Tibbiy ma&#39;lumot,
 Medium,O&#39;rtacha,
-Meeting,Uchrashuv,
 Member Activity,Ro&#39;yxatdan faoliyati,
 Member ID,Foydalanuvchi identifikatori,
 Member Name,Ro&#39;yxatdan nomi,
@@ -1495,7 +1475,6 @@
 Multiple Variants,Bir nechta varianti,
 Multiple fiscal years exist for the date {0}. Please set company in Fiscal Year,"{0} sana uchun bir necha moliyaviy yillar mavjud. Iltimos, kompaniyani Moliyaviy yilga qo&#39;ying",
 Music,Musiqa,
-My Account,Mening hisobim,
 Name error: {0},Ism xato: {0},
 Name of new Account. Note: Please don't create accounts for Customers and Suppliers,"Yangi hisob nomi. Eslatma: Iltimos, mijozlar va etkazib beruvchilar uchun hisoblar yarating",
 Name or Email is mandatory,Ism yoki elektron pochta manzili majburiydir,
@@ -1538,7 +1517,6 @@
 New credit limit is less than current outstanding amount for the customer. Credit limit has to be atleast {0},Yangi kredit limiti mijoz uchun mavjud summasidan kamroq. Kredit cheklovi atigi {0} bo&#39;lishi kerak,
 New task,Yangi topshiriq,
 New {0} pricing rules are created,Yangi {0} narxlash qoidalari yaratildi,
-Newsletters,Axborotnomalar,
 Newspaper Publishers,Gazeta nashriyoti,
 Next,Keyingi,
 Next Contact By cannot be same as the Lead Email Address,Keyingi kontaktni Kontakt Email manzili bilan bir xil bo&#39;lmaydi,
@@ -1686,7 +1664,6 @@
 Other,Boshqa,
 Other Reports,Boshqa hisobotlar,
 "Other outward supplies(Nil rated,Exempted)","Boshqa tashqi etkazib berish (Nil baholanmagan, ozod qilingan)",
-Others,Boshqalar,
 Out Qty,Miqdori,
 Out Value,Chiqish qiymati,
 Out of Order,Tartibsiz,
@@ -1726,7 +1703,6 @@
 Party Type and Party is mandatory for {0} account,Partiya turi va partiyasi {0} uchun majburiydir,
 Party Type is mandatory,Partiya turi majburiydir,
 Party is mandatory,Partiya majburiydir,
-Password,Parol,
 Past Due Date,O&#39;tgan muddat,
 Patient,Kasal,
 Patient Appointment,Bemorni tayinlash,
@@ -1784,7 +1760,6 @@
 Pharmaceutical,Dori-darmon,
 Pharmaceuticals,Dori vositalari,
 Physician,Shifokor,
-Pincode,Pincode,
 Place Of Supply (State/UT),Ta&#39;minot joyi (Shtat / UT),
 Place Order,Buyurtmani joylashtiring,
 Plan Name,Muzika nomi,
@@ -1896,7 +1871,6 @@
 Please select date,"Iltimos, tarixni tanlang",
 Please select item code,"Iltimos, mahsulot kodini tanlang",
 Please select month and year,"Iltimos, oy va yilni tanlang",
-Please select prefix first,"Iltimos, avval prefiksni tanlang",
 Please select the Company,"Iltimos, kompaniyani tanlang",
 Please select the Multiple Tier Program type for more than one collection rules.,"Iltimos, bir nechta yig&#39;ish qoidalari uchun bir nechta darajali dastur turini tanlang.",
 Please select the assessment group other than 'All Assessment Groups',"Iltimos, barcha baholash guruhlaridan boshqa baholash guruhini tanlang.",
@@ -1913,7 +1887,6 @@
 Please set Company filter blank if Group By is 'Company',"Guruh tomonidan &quot;Kompaniya&quot; bo&#39;lsa, Kompaniya filtrini bo&#39;sh qoldiring.",
 Please set Default Payroll Payable Account in Company {0},{0} kompaniyasida ish haqi bo&#39;yicha to&#39;lanadigan hisob qaydnomasini o&#39;rnating.,
 Please set Depreciation related Accounts in Asset Category {0} or Company {1},Amalga oshirilgan hisob-kitoblarni {0} obyekti yoki Kompaniya {1},
-Please set Email Address,E-pochta manzilingizni belgilang,
 Please set GST Accounts in GST Settings,GST sozlamalarida GST sozlamalarini belgilang,
 Please set Hotel Room Rate on {},"Iltimos, Hotel Room Rate ni {} belgilang.",
 Please set Number of Depreciations Booked,"Iltimos, ko&#39;rsatilgan Amortizatsiya miqdorini belgilang",
@@ -1936,7 +1909,6 @@
 Please set the Email ID for the Student to send the Payment Request,"Iltimos, to&#39;lov talabnomasini yuborish uchun Talabaga Email ID-ni belgilang",
 Please set the Item Code first,Avval Mahsulot kodini o&#39;rnating,
 Please set the Payment Schedule,"Iltimos, to&#39;lov jadvalini o&#39;rnating",
-Please set the series to be used.,"Iltimos, foydalanish uchun ketma-ketlikni o&#39;rnating.",
 Please set {0} for address {1},"Iltimos, {1} manzili uchun {0} ni o&#39;rnating.",
 Please setup Students under Student Groups,Talabalar uchun Talabalar Guruhi ostida tanlansin,
 Please specify Company,"Iltimos, kompaniyani ko&#39;rsating",
@@ -1953,7 +1925,6 @@
 Point-of-Sale,Sotuv nuqtasi,
 Point-of-Sale Profile,Sotuv nuqtasi profili,
 Portal,Portal,
-Portal Settings,Portal sozlamalari,
 Possible Supplier,Mumkin bo&#39;lgan yetkazib beruvchi,
 Postal Expenses,Pochta xarajatlari,
 Posting Date,O&#39;tilganlik sanasi,
@@ -2152,12 +2123,10 @@
 Reference No is mandatory if you entered Reference Date,"Malumot sanasi kiritilgan bo&#39;lsa, Yo&#39;naltiruvchi raqami majburiy emas",
 Reference No.,Yo&#39;naltiruvchi raqami,
 Reference Number,Malumot raqami,
-Reference Owner,Malumot egasi,
 Reference Type,Malumot turi,
 "Reference: {0}, Item Code: {1} and Customer: {2}","Malumot: {0}, mahsulot kodi: {1} va mijoz: {2}",
 References,Manbalar,
 Refresh Token,Qayta tiklash,
-Region,Mintaqa,
 Register,Ro&#39;yxatdan o&#39;tish,
 Rejected,Rad etildi,
 Related,Bilan bog&#39;liq,
@@ -2179,7 +2148,6 @@
 Replace BOM and update latest price in all BOMs,BOMni almashtiring va barcha BOM&#39;lardagi eng so&#39;nggi narxni yangilang,
 Replied,Javob berdi,
 Report,Hisobot,
-Report Builder,Report Builder,
 Report Type,Hisobot turi,
 Report Type is mandatory,Hisobot turi majburiydir,
 Reports,Hisobotlar,
@@ -2355,13 +2323,11 @@
 Same Company is entered more than once,Xuddi shu kompaniya bir necha marta kiritilgan,
 Same item cannot be entered multiple times.,Xuddi shu element bir necha marta kiritilmaydi.,
 Same supplier has been entered multiple times,Xuddi shunday yetkazib beruvchi bir necha marta kiritilgan,
-Sample,Namuna,
 Sample Collection,Namunani yig&#39;ish,
 Sample quantity {0} cannot be more than received quantity {1},{0} o&#39;rnak miqdori qabul qilingan miqdordan ortiq bo&#39;lishi mumkin emas {1},
 Sanctioned,Sanktsiya,
 Sand,Qum,
 Saturday,Shanba,
-Saved,Saqlangan,
 Saving {0},{0} saqlash,
 Scan Barcode,Shtrix-kodni skanerlash,
 Schedule,Jadval,
@@ -2463,7 +2429,6 @@
 Series Updated,Series yangilandi,
 Series Updated Successfully,Series muvaffaqiyatli yangilandi,
 Series is mandatory,Seriya majburiy,
-Series {0} already used in {1},{0} qatori {1} da allaqachon ishlatilgan,
 Service,Xizmat,
 Service Level Agreement,Xizmat ko&#39;rsatish darajasi to&#39;g&#39;risidagi kelishuv,
 Service Level Agreement.,Xizmat ko&#39;rsatish darajasi to&#39;g&#39;risidagi kelishuv.,
@@ -2479,7 +2444,6 @@
 Set Tax Rule for shopping cart,Xarid qilish vositasi uchun Soliq qoidasini o&#39;rnating,
 Set as Closed,Yopiq qilib belgilang,
 Set as Completed,Tugallangan sifatida sozlang,
-Set as Default,Standart sifatida belgilash,
 Set as Lost,Lost sifatida sozlash,
 Set as Open,Ochiq qilib belgilang,
 Set default inventory account for perpetual inventory,Doimiy ro&#39;yxatga olish uchun odatiy inventarizatsiyadan foydalaning,
@@ -2511,7 +2475,6 @@
 Shareholder,Aktsioner,
 Ship To State,Shtatga yuboriladi,
 Shipments,Yuklar,
-Shipping,yuk tashish; yetkazib berish,
 Shipping Address,Yetkazish manzili,
 "Shipping Address does not have country, which is required for this Shipping Rule",Yetkazib berish manzili ushbu Shartnoma uchun zarur bo&#39;lgan mamlakatga ega emas,
 Shipping rule only applicable for Buying,Yuk tashish qoidani faqat xarid uchun qo&#39;llash mumkin,
@@ -2564,7 +2527,6 @@
 Split Batch,Split partiyasi,
 Split Issue,Split muammo,
 Sports,Sport,
-Standard,Standart,
 Standard Buying,Standart xarid,
 Standard Selling,Standart sotish,
 Standard contract terms for Sales or Purchase.,Sotuv yoki sotib olish uchun standart shartnoma shartlari.,
@@ -2731,7 +2693,6 @@
 Terms and Conditions,Foydalanish shartlari,
 Terms and Conditions Template,Shartlar va shartlar shabloni,
 Territory,Hudud,
-Test,Viktorina,
 Thank you for your business!,Ishingiz uchun tashakkur!,
 The 'From Package No.' field must neither be empty nor it's value less than 1.,&quot;Paketdan boshlab&quot; maydon bo&#39;sh bo&#39;lmasligi yoki 1 dan kam qiymat bo&#39;lishi kerak.,
 The Brand,Tovar,
@@ -2848,7 +2809,6 @@
 Total (Without Tax),Hammasi bo&#39;lib (soliqsiz),
 Total Achieved,Jami erishildi,
 Total Actual,Jami haqiqiy,
-Total Allocated Leaves,Jami ajratilgan barglar,
 Total Amount,Umumiy hisob,
 Total Amount Credited,Jami kredit miqdori,
 Total Applicable Charges in Purchase Receipt Items table must be same as Total Taxes and Charges,Buyurtma olish bo&#39;yicha ma&#39;lumotlar jamlanmasi jami soliqlar va yig&#39;imlar bilan bir xil bo&#39;lishi kerak,
@@ -2892,7 +2852,6 @@
 Total(Amt),Jami (Amt),
 Total(Qty),Hammasi bo&#39;lib (Miqdor),
 Traceability,Izlanadiganlik,
-Traceback,Orqaga,
 Track Leads by Lead Source.,Qo&#39;rg&#39;oshin manbai yordamida kuzatib boring.,
 Transaction,Jurnal,
 Transaction Date,Jurnal tarixi,
@@ -2930,7 +2889,6 @@
 UOM Conversion factor is required in row {0},{0} qatorida UOM o&#39;tkazish faktori talab qilinadi,
 UOM coversion factor required for UOM: {0} in Item: {1},UOM uchun UOM koversion faktorlari talab qilinadi: {0}: {1},
 URL,URL,
-Unable to find DocType {0},DocType {0} topilmadi,
 Unable to find exchange rate for {0} to {1} for key date {2}. Please create a Currency Exchange record manually,"{2} kalit sana uchun {0} dan {1} gacha bo&#39;lgan valyuta kursini topib bo&#39;lmadi. Iltimos, valyuta ayirboshlash yozuvini qo&#39;lda yarating",
 Unable to find score starting at {0}. You need to have standing scores covering 0 to 100,{0} da boshlangan balni topib bo&#39;lmadi. Siz 0 dan 100 gacha bo&#39;lgan sog&#39;lom balllarga ega bo&#39;lishingiz kerak,
 Unable to find variable: ,Argumentlar topilmadi:,
@@ -2960,7 +2918,6 @@
 Upload your letter head and logo. (you can edit them later).,Sizning xat boshingizni va logotipingizni yuklang. (keyinchalik ularni tahrirlashingiz mumkin).,
 Upper Income,Yuqori daromad,
 Use Sandbox,Sandboxdan foydalaning,
-Used Leaves,Ishlatilgan barglar,
 User,Foydalanuvchi,
 User ID,foydalanuvchi IDsi,
 User ID not set for Employee {0},Foydalanuvchining identifikatori {0} xizmatdoshiga o&#39;rnatilmagan,
@@ -3051,7 +3008,6 @@
 Website Settings,Veb-sayt sozlamalari,
 Wednesday,Chorshanba,
 Week,Hafta,
-Weekdays,Hafta kunlari,
 Weekly,Haftalik,
 "Weight is mentioned,\nPlease mention ""Weight UOM"" too","Og&#39;irligi ko&#39;rsatilgan, \ n &quot;Og&#39;irligi UOM&quot; ni ham eslang",
 Welcome email sent,Xush kelibsiz elektron pochta,
@@ -3072,7 +3028,6 @@
 Work Order {0} must be submitted,Buyurtma {0} topshirilishi kerak,
 Work Orders Created: {0},Yaratilgan ishlar: {0},
 Work-in-Progress Warehouse is required before Submit,Yuborishdan oldin ishlaydigan ishlab chiqarish ombori talab qilinadi,
-Workflow,Ish oqimi,
 Working,Ishlash,
 Working Hours,Ish vaqti,
 Workstation,Ish stantsiyani,
@@ -3102,7 +3057,6 @@
 You need to be a user other than Administrator with System Manager and Item Manager roles to register on Marketplace.,Market Manager&#39;da ro&#39;yxatdan o&#39;tish uchun tizim menejeri va element menejeri vazifalarini bajaruvchi Administratordan boshqa foydalanuvchi bo&#39;lishingiz kerak.,
 You need to be a user with System Manager and Item Manager roles to add users to Marketplace.,Foydalanuvchilarni Marketplace&#39;ga qo&#39;shish uchun tizim menejeri va element menejeri vazifalarini bajaradigan foydalanuvchi bo&#39;lishingiz kerak.,
 You need to be a user with System Manager and Item Manager roles to register on Marketplace.,Bozorda ro&#39;yxatdan o&#39;tish uchun tizim menejeri va element menejeri vazifalarini bajaradigan foydalanuvchi bo&#39;lishingiz kerak.,
-You need to be logged in to access this page,Ushbu sahifaga kirish uchun siz tizimga kirgan bo&#39;lishingiz kerak,
 You need to enable Shopping Cart,Savatga savatni faollashtirishingiz kerak,
 You will lose records of previously generated invoices. Are you sure you want to restart this subscription?,Siz ilgari ishlab chiqarilgan hisob-fakturalarni yo&#39;qotasiz. Ushbu obunani qayta ishga tushirishga ishonchingiz komilmi?,
 Your Organization,Tashkilotingiz,
@@ -3218,7 +3172,6 @@
 Assigned To,Tayinlangan,
 Chat,Chat,
 Completed By,Tugallangan,
-County,Tuman,
 Day of Week,Haftaning kuni,
 "Dear System Manager,","Aziz tizim boshqaruvchisi,",
 Default Value,Standart qiymat,
@@ -3229,31 +3182,21 @@
 Fieldtype,Maydon turi,
 Help Articles,Yordam Maqolalar,
 ID,ID,
-Images,Rasmlar,
 Import,Import,
 Language,Til,
 Likes,Yoqdi,
 Merge with existing,Mavjud bilan birlashtirilsin,
-Office,Ofis,
 Orientation,Yo&#39;nalish,
 Parent,Ota-onalar,
-Passive,Passiv,
 Payment Failed,To&#39;lov amalga oshmadi,
-Permanent,Doimiy,
 Personal,Shaxsiy,
-Plant,O&#39;simlik,
 Post,Post,
-Postal,Pochta,
 Postal Code,Pochta Indeksi,
-Previous,Avvalgi,
 Provider,Provajder,
 Read Only,Faqat o&#39;qish,
 Recipient,Qabul qiluvchi,
 Reviews,Sharhlar,
 Sender,Yuboruvchi,
-Shop,Do&#39;kon,
-Subsidiary,Sho&#39;ba korxonasi,
-There is some problem with the file url: {0},Fayl urlida muammo mavjud: {0},
 There were errors while sending email. Please try again.,"E-pochtani yuborishda xatolik yuz berdi. Iltimos, yana bir bor urinib ko&#39;ring.",
 Values Changed,Qadriyatlar o&#39;zgartirildi,
 or,yoki,
@@ -3280,19 +3223,16 @@
 Quality Feedback Template,Sifat bo&#39;yicha fikrlar shablonlari,
 Rules for applying different promotional schemes.,Turli reklama sxemalarini qo&#39;llash qoidalari.,
 Show {0},{0} ni ko&#39;rsatish,
-"Special Characters except '-', '#', '.', '/', '{{' and '}}' not allowed in naming series {0}","&quot;-&quot;, &quot;#&quot;, &quot;.&quot;, &quot;/&quot;, &quot;{{&quot; Va &quot;}}&quot; belgilaridan tashqari maxsus belgilarga ruxsat berilmaydi {0}.",
 Target Details,Maqsad tafsilotlari,
 {0} already has a Parent Procedure {1}.,{0} allaqachon Ota-ona tartibiga ega {1}.,
 API,API,
 Annual,Yillik,
 Change,O&#39;zgartirish,
 Contact Email,E-pochtaga murojaat qiling,
-Export Type,Eksport turi,
 From Date,Sana bo&#39;yicha,
 Group By,Guruh bo&#39;yicha,
 Invalid URL,Noto‘g‘ri URL,
 Landscape,Landshaft,
-Last Sync On,So&#39;nggi sinxronlash yoqilgan,
 Naming Series,Namunaviy qator,
 No data to export,Eksport qilish uchun ma’lumot yo‘q,
 Portrait,Portret,
@@ -3302,7 +3242,6 @@
 Show Document,Hujjatni ko&#39;rsatish,
 Show Traceback,Kuzatish rejimini ko&#39;rsatish,
 Video,Video,
-Webhook Secret,Webhook siri,
 % Of Grand Total,Umumiy Jami foizdan,
 <b>Company</b> is a mandatory filter.,<b>Kompaniya</b> majburiy filtrdir.,
 <b>From Date</b> is a mandatory filter.,<b>Sana</b> - bu majburiy filtr.,
@@ -3358,7 +3297,6 @@
 BOM Comparison Tool,BOM taqqoslash vositasi,
 BOM recursion: {0} cannot be child of {1},BOM takrorlanishi: {0} {1} bolasi bo&#39;la olmaydi.,
 BOM recursion: {0} cannot be parent or child of {1},BOM rekursiyasi: {0} ota-ona yoki {1} bolasi bo&#39;la olmaydi.,
-Back to Home,Uyga qaytish,
 Back to Messages,Xabarlarga qaytish,
 Bank Data mapper doesn't exist,Bank ma’lumotlari xaritasi mavjud emas,
 Bank Details,Bank rekvizitlari,
@@ -3420,7 +3358,6 @@
 Currency,Valyuta,
 Current Status,Hozirgi holat,
 Customer PO,Mijoz PO,
-Customize,Moslashtiring,
 Daily,Kundalik,
 Date,Sana,
 Date of Birth cannot be greater than Joining Date.,Tug&#39;ilgan sana qo&#39;shilish sanasidan oshib ketmasligi kerak.,
@@ -3454,7 +3391,6 @@
 ERPNext could not find any matching payment entry,ERPNext hech qanday mos keladigan to&#39;lov yozuvini topa olmadi,
 Earliest Age,Erta yosh,
 Edit Details,Tafsilotlarni tahrirlash,
-Edit Profile,Profilni tahrirlash,
 Either GST Transporter ID or Vehicle No is required if Mode of Transport is Road,"Transport tartibi Yo&#39;l bo&#39;lsa, GST Transporter identifikatori yoki transport vositasi raqami talab qilinmaydi",
 Email,E-pochta,
 Email Campaigns,Elektron pochta kampaniyalari,
@@ -3482,7 +3418,6 @@
 Fetch Items from Warehouse,Ombordan olinadigan narsalar,
 Fetching...,Yuklanmoqda ...,
 Field,Yo&#39;l,
-File Manager,Fayl menejeri,
 Filters,Filtrlar,
 Finding linked payments,Bog&#39;langan to&#39;lovlarni topish,
 Fleet Management,Filo boshqarish,
@@ -3521,7 +3456,6 @@
 Incorrect Warehouse,Noto&#39;g&#39;ri ombor,
 Invalid Barcode. There is no Item attached to this barcode.,Shtrix-kod noto‘g‘ri. Ushbu shtrix-kodga hech qanday element qo&#39;shilmagan.,
 Invalid credentials,Noto‘g‘ri hisob ma’lumotlari,
-Invite as User,Foydalanuvchi sifatida taklif qiling,
 Issue Priority.,Muammoning ustuvorligi.,
 Issue Type.,Muammo turi.,
 "It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.",Serverning chiziqli konfiguratsiyasi bilan bog&#39;liq muammo mavjud. Muvaffaqiyatsiz bo&#39;lgan taqdirda sizning hisobingizga mablag &#39;qaytariladi.,
@@ -3564,7 +3498,6 @@
 New Invoice,Yangi hisob-faktura,
 New Payment,Yangi to&#39;lov,
 New release date should be in the future,Yangi chiqarilgan sana kelajakda bo&#39;lishi kerak,
-Newsletter,Xabarnoma,
 No Account matched these filters: {},Hech qanday hisob bu filtrlarga mos kelmadi: {},
 No communication found.,Hech qanday aloqa topilmadi.,
 No correct answer is set for {0},{0} uchun to&#39;g&#39;ri javob belgilanmagan,
@@ -3640,7 +3573,6 @@
 Please setup a default bank account for company {0},Iltimos {0} kompaniyasi uchun odatiy bank hisobini o&#39;rnating.,
 Please specify,"Iltimos, ko&#39;rsating",
 Please specify a {0},"Iltimos, {0} kiriting",lead
-Printing,Bosib chiqarish,
 Priority,Birinchi o&#39;ringa,
 Priority has been changed to {0}.,Ustuvorlik {0} ga o&#39;zgartirildi.,
 Priority {0} has been repeated.,{0} ustuvorligi takrorlandi.,
@@ -3649,7 +3581,6 @@
 Project,Loyiha,
 Provide the academic year and set the starting and ending date.,O&#39;quv yilini taqdim eting va boshlanish va tugash sanasini belgilang.,
 Public token is missing for this bank,Ushbu bank uchun ommaviy token yo&#39;q,
-Publish,Nashr qiling,
 Publish 1 Item,1 ta mahsulotni nashr qiling,
 Publish Items,Mahsulotlarni chop etish,
 Publish More Items,Boshqa mahsulotlarni nashr qiling,
@@ -3677,7 +3608,6 @@
 Reconciled,Yarashdi,
 Recruitment,Ishga olish,
 Red,Qizil rangli,
-Refreshing,Yangilash,
 Release date must be in the future,Chiqarish sanasi kelajakda bo&#39;lishi kerak,
 Relieving Date must be greater than or equal to Date of Joining,Yengish sanasi qo&#39;shilish sanasidan katta yoki unga teng bo&#39;lishi kerak,
 Rename,Nomni o&#39;zgartiring,
@@ -3721,7 +3651,6 @@
 Search for a payment,To&#39;lovni qidiring,
 Search for anything ...,Hamma narsani qidirish ...,
 Search results for,Uchun qidiruv natijalari,
-Select All,Hammasini belgilash,
 Select Difference Account,Farq hisob qaydnomasini tanlang,
 Select a Default Priority.,Birlamchi ustuvorlikni tanlang.,
 Select a company,Kompaniyani tanlang,
@@ -3740,11 +3669,9 @@
 Service Level Agreement has been changed to {0}.,Xizmat darajasi to&#39;g&#39;risidagi shartnoma {0} ga o&#39;zgartirildi.,
 Service Level Agreement was reset.,Xizmat darajasi to&#39;g&#39;risidagi shartnoma qayta tiklandi.,
 Service Level Agreement with Entity Type {0} and Entity {1} already exists.,{0} turi va {1} subyekt bilan xizmat ko&#39;rsatish darajasi to&#39;g&#39;risidagi kelishuv allaqachon mavjud.,
-Set,To&#39;siq qiling,
 Set Meta Tags,Meta teglarini o&#39;rnating,
 Set {0} in company {1},{1} kompaniyasida {0} o&#39;rnating.,
 Setup,Sozlash,
-Setup Wizard,O&#39;rnatish ustasi,
 Shift Management,Shiftni boshqarish,
 Show Future Payments,Kelgusi to&#39;lovlarni ko&#39;rsatish,
 Show Linked Delivery Notes,Bog&#39;langan etkazib berish eslatmalarini ko&#39;rsatish,
@@ -3815,7 +3742,6 @@
 Unreconciled,Yarashmagan,
 Unsupported GST Category for E-Way Bill JSON generation,Bill JSON avlodini yaratish uchun qo&#39;llab-quvvatlanmaydigan GST toifasi,
 Update,Yangilash,
-Update Details,Tafsilotlarni yangilang,
 Update Taxes for Items,Soliqlar uchun soliqlarni yangilang,
 "Upload a bank statement, link or reconcile a bank account","Bank bayonnomasini yuklang, bank hisobini bog&#39;lang yoki yarating",
 Upload a statement,Fikrni yuklang,
@@ -3839,7 +3765,6 @@
 XML Files Processed,XML fayllari qayta ishlandi,
 Year,Yil,
 Yearly,Har yili,
-You,Siz,
 You are not allowed to enroll for this course,Ushbu kursga yozilish mumkin emas,
 You are not enrolled in program {0},Siz {0} dasturiga yozilmagansiz,
 You can Feature upto 8 items.,Siz 8 tagacha elementlarni namoyish qilishingiz mumkin.,
@@ -3856,7 +3781,6 @@
 e-Way Bill already exists for this document,e-Way Bill ushbu hujjat uchun allaqachon mavjud,
 woocommerce - {0},veb-tijorat - {0},
 {0} Coupon used are {1}. Allowed quantity is exhausted,{0} ishlatilgan kupon {1}. Ruxsat berilgan miqdor tugadi,
-{0} Name,{0} Ism,
 {0} Operations: {1},{0} Amallar: {1},
 {0} bank transaction(s) created,{0} bank tranzaktsiyalari yaratildi,
 {0} bank transaction(s) created and {1} errors,{0} bank tranzaktsiyalari yaratildi va {1} xato,
@@ -3875,17 +3799,13 @@
 Total Income,Umumiy daromad,
 Total Income This Year,Bu yil jami daromad,
 Barcode,Shtrix-kod,
-Bold,Qalin,
-Center,Markaziy,
 Clear,Aniq,
-Comment,Izoh,
 Comments,Sharhlar,
 DocType,DocType,
 Download,Yuklab oling,
 Left,Chapdan,
 Link,Aloqa,
 New,Yangi,
-Not Found,Topilmadi,
 Print,Chop eting,
 Reference Name,Malumot nomi,
 Refresh,Yangilash,
@@ -3908,7 +3828,6 @@
 Email Id,Email identifikatori,
 No,Yo&#39;q,
 Reference Doctype,Yo&#39;naltirilgan DocType,
-User Id,Foydalanuvchi IDsi,
 Yes,Ha,
 Actual ,Haqiqiy,
 Add to cart,Savatchaga qo&#39;shish,
@@ -4304,7 +4223,6 @@
 e.g Adjustments for:,"Masalan, sozlash uchun:",
 Section Subtotal,Bo&#39;limning umumiy summasi,
 Section Footer,Bo&#39;lim pastki qismi,
-Position,Obyekt,
 Cash Flow Mapping,Pul oqimi xaritalash,
 Select Maximum Of 1,Maksimal 1 ni tanlang,
 Is Finance Cost,Moliya narximi?,
@@ -4936,7 +4854,6 @@
 Previous Business Day,Avvalgi ish kuni,
 Next Business Day,Keyingi ish kuni,
 Urgent,Shoshilinch,
-Crop,O&#39;simliklar,
 Crop Name,O&#39;simlik nomi,
 Scientific Name,Ilmiy ism,
 "You can define all the tasks which need to carried out for this crop here. The day field is used to mention the day on which the task needs to be carried out, 1 being the 1st day, etc.. ","Siz bu ekin uchun zarur bo&#39;lgan barcha vazifalarni belgilashingiz mumkin. Kun maydonida topshiriqni bajarish kerak bo&#39;lgan kuni, 1 kun va boshqalar.",
@@ -5441,7 +5358,6 @@
 To TIme,Vaqtgacha,
 Course End Date,Kurs tugash sanasi,
 Course Topic,Kurs mavzusi,
-Topic,Mavzu,
 Topic Name,Mavzu nomi,
 Education Settings,Ta&#39;lim sozlamalari,
 Current Academic Year,Joriy o&#39;quv yili,
@@ -5516,7 +5432,6 @@
 Check this if the Student is residing at the Institute's Hostel.,Talabaning Institut Pansionida istiqomat qilishini tekshiring.,
 Walking,Yurish,
 Institute's Bus,Institut avtobusi,
-Public Transport,Jamoat transporti,
 Self-Driving Vehicle,O&#39;z-o&#39;zidan avtomashina vositasi,
 Pick/Drop by Guardian,Guardian tomonidan olib tashlang / qoldiring,
 Enrolled courses,O&#39;qilgan kurslar,
@@ -5697,7 +5612,6 @@
 Default Cost Center,Standart xarajatlar markazi,
 Undeposited Funds Account,Qaytarilmagan mablag&#39;lar hisoblari,
 Shopify Log,Jurnalni xarid qilish,
-Request Data,Ma&#39;lumotlarni so&#39;rash,
 Shopify Settings,Sozlamalarni xarid qilish,
 status html,status html,
 Enable Shopify,Shopify-ni yoqish,
@@ -5817,7 +5731,6 @@
 Exercise Instructions,Mashq qilish bo&#39;yicha ko&#39;rsatmalar,
 Exercise Video,Mashq qilish videosi,
 Exercise Steps,Mashq qilish qadamlari,
-Steps,Qadamlar,
 Steps Table,Qadamlar jadvali,
 Exercise Type Step,Mashq qilish turi,
 Max number of visit,Tashrifning maksimal soni,
@@ -6001,7 +5914,6 @@
 Patient Encounter Symptom,Bemor bilan uchrashish alomatlari,
 HLC-PMR-.YYYY.-,HLC-PMR-YYYYY.-,
 Attach Medical Record,Tibbiy yozuvlarni ilova qiling,
-Reference DocType,DocType ma&#39;lumotnomasi,
 Spouse,Turmush o&#39;rtog&#39;im,
 Family,Oila,
 Schedule Details,Jadval tafsilotlari,
@@ -6983,16 +6895,8 @@
 HTML / Banner that will show on the top of product list.,Mahsulot ro&#39;yxatining yuqori qismida ko&#39;rsatiladigan HTML / Banner.,
 Set prefix for numbering series on your transactions,Sizning operatsiyalaringizda raqamlash seriyasi uchun prefiksni o&#39;rnating,
 Setup Series,O&#39;rnatish seriyasi,
-Select Transaction,Jurnalni tanlang,
-Help HTML,HTMLga yordam bering,
-Series List for this Transaction,Ushbu tranzaksiya uchun Series ro&#39;yxati,
-User must always select,Foydalanuvchiga har doim tanlangan bo&#39;lishi kerak,
-Check this if you want to force the user to select a series before saving. There will be no default if you check this.,"Foydalanuvchini saqlashdan oldin bir qatorni tanlashga majburlashni xohlasangiz, buni tekshiring. Buni tekshirsangiz, hech qanday ko&#39;rsatuv bo&#39;lmaydi.",
 Update Series,Yangilash turkumi,
 Change the starting / current sequence number of an existing series.,Mavjud ketma-ketlikning boshlang&#39;ich / to`g`ri qatorini o`zgartirish.,
-Prefix,Prefiks,
-This is the number of the last created transaction with this prefix,"Bu, bu old qo&#39;shimchadagi oxirgi yaratilgan bitimning sonidir",
-Update Series Number,Series raqamini yangilash,
 Quotation Lost Reason,Iqtibos yo&#39;qolgan sabab,
 A third party distributor / dealer / commission agent / affiliate / reseller who sells the companies products for a commission.,Kompaniyalar mahsulotlarini komissiyaga sotadigan uchinchi tomon distributor / diler / komissiya agenti / affillangan / sotuvchisi.,
 Sales Partner Name,Savdo hamkorining nomi,
@@ -7687,7 +7591,6 @@
 Warehouse wise Item Balance Age and Value,Qimmatbaho buyumlarning balanslari yoshi va qiymati,
 Work Order Stock Report,Ish staji bo&#39;yicha hisobot,
 Work Orders in Progress,Ishlar buyurtmasi,
-Validation Error,Tasdiqlashda xato,
 Automatically Process Deferred Accounting Entry,Kechiktirilgan buxgalteriya yozuvini avtomatik ravishda qayta ishlash,
 Bank Clearance,Bank rasmiylashtiruvi,
 Bank Clearance Detail,Bank rasmiylashtiruvi tafsiloti,
@@ -7724,45 +7627,7 @@
 Therapy Plan: ,Terapiya rejasi:,
 Total Counts Targeted: ,Belgilangan umumiy sonlar:,
 Total Counts Completed: ,Tugallangan umumiy hisoblar:,
-Andaman and Nicobar Islands,Andaman va Nikobar orollari,
-Andhra Pradesh,Andxra-Pradesh,
-Arunachal Pradesh,Arunachal-Pradesh,
-Assam,Assam,
-Bihar,Bihar,
-Chandigarh,Chandigarh,
-Chhattisgarh,Chattisgarx,
-Dadra and Nagar Haveli,Dadra va Nagar Xaveli,
-Daman and Diu,Daman va Diu,
-Delhi,Dehli,
-Goa,Goa,
-Gujarat,Gujarat,
-Haryana,Xaryana,
-Himachal Pradesh,Himachal-Pradesh,
-Jammu and Kashmir,Jammu va Kashmir,
-Jharkhand,Jarxand,
-Karnataka,Karnataka,
-Kerala,Kerala,
-Lakshadweep Islands,Lakshadvip orollari,
-Madhya Pradesh,Madxya-Pradesh,
-Maharashtra,Maharashtra,
-Manipur,Manipur,
-Meghalaya,Meghalaya,
-Mizoram,Mizoram,
-Nagaland,Nagaland,
-Odisha,Odisha,
-Other Territory,Boshqa hudud,
-Pondicherry,Pondicherry,
-Punjab,Panjob,
-Rajasthan,Rajastan,
-Sikkim,Sikkim,
-Tamil Nadu,Tamil Nadu,
-Telangana,Telangana,
-Tripura,Tripura,
-Uttar Pradesh,Uttar-Pradesh,
-Uttarakhand,Uttaraxand,
-West Bengal,G&#39;arbiy Bengal,
 Is Mandatory,Majburiy,
-Published on,Nashr qilingan,
 Service Received But Not Billed,"Xizmat olingan, ammo hisob-kitob qilinmagan",
 Deferred Accounting Settings,Kechiktirilgan buxgalteriya sozlamalari,
 Book Deferred Entries Based On,Kechiktirilgan yozuvlar asosida kitob,
@@ -8035,8 +7900,6 @@
 Worksheet Instructions,Ishchi varaqqa ko&#39;rsatmalar,
 Result Legend Print,Natija Legend Print,
 Print Position,Chop etish joyi,
-Bottom,Pastki,
-Top,Yuqori,
 Both,Ikkalasi ham,
 Result Legend,Natija afsonasi,
 Lab Tests,Laboratoriya sinovlari,
@@ -8081,12 +7944,10 @@
 Approvers,Qarama-qarshilik,
 The first Approver in the list will be set as the default Approver.,Ro&#39;yxatdagi birinchi Approver standart Approver sifatida o&#39;rnatiladi.,
 Shift Request Approver,Shift so&#39;rovini tasdiqlovchi,
-PAN Number,PAN raqami,
 Provident Fund Account,Provayder fondining hisobvarag&#39;i,
 MICR Code,MICR kodi,
 Repay unclaimed amount from salary,Talab qilinmagan miqdorni ish haqidan qaytaring,
 Deduction from salary,Ish haqidan ushlab qolish,
-Expired Leaves,Muddati o&#39;tgan barglar,
 If this is not checked the loan by default will be considered as a Demand Loan,"Agar bu tekshirilmasa, sukut bo&#39;yicha qarz talabga javob beradigan kredit sifatida qabul qilinadi",
 This account is used for booking loan repayments from the borrower and also disbursing loans to the borrower,Ushbu hisob qarz oluvchidan kreditni to&#39;lashni bron qilish va qarz oluvchiga qarz berish uchun ishlatiladi,
 This account is capital account which is used to allocate capital for loan disbursal account ,"Ushbu hisob kapital hisobvarag&#39;i bo&#39;lib, u ssudani to&#39;lash hisobiga kapital ajratish uchun ishlatiladi",
@@ -8844,3 +8705,41 @@
 Creating Purchase Order ...,Xarid buyurtmasi yaratilmoqda ...,
 "Select a Supplier from the Default Suppliers of the items below. On selection, a Purchase Order will be made against items belonging to the selected Supplier only.","Quyidagi mahsulotlarning standart etkazib beruvchilardan etkazib beruvchini tanlang. Tanlovda, faqat tanlangan etkazib beruvchiga tegishli buyumlarga qarshi Sotib olish to&#39;g&#39;risida buyurtma beriladi.",
 Row #{}: You must select {} serial numbers for item {}.,Qator # {}: Siz {} element uchun seriya raqamlarini {} tanlashingiz kerak.,
+Add Comment,Izoh qo&#39;shish,
+More...,Ko&#39;proq...,
+Notes,Eslatmalar,
+Payment Gateway,To&#39;lov shlyuzi,
+Payment Gateway Name,To&#39;lov daftarining nomi,
+Payments,To&#39;lovlar,
+Plan Name,Muzika nomi,
+Portal,Portal,
+Scan Barcode,Shtrix-kodni skanerlash,
+Some information is missing,Ba&#39;zi ma&#39;lumotlar yo&#39;q,
+Successful,Muvaffaqiyatli,
+Tools,Asboblar,
+Use Sandbox,Sandboxdan foydalaning,
+Busy,Band,
+Completed By,Tugallangan,
+Payment Failed,To&#39;lov amalga oshmadi,
+Column {0},{0} ustun,
+Field Mapping,Maydon xaritasi,
+Not Specified,Ko&#39;rsatilmagan,
+Update Type,Yangilash turi,
+Dr,Doktor,
+End Time,Tugash vaqti,
+Fetching...,Yuklanmoqda ...,
+"It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.",Serverning chiziqli konfiguratsiyasi bilan bog&#39;liq muammo mavjud. Muvaffaqiyatsiz bo&#39;lgan taqdirda sizning hisobingizga mablag &#39;qaytariladi.,
+Looks like someone sent you to an incomplete URL. Please ask them to look into it.,"Kimdir sizni tugallanmagan URL manziliga yuborganga o&#39;xshaydi. Iltimos, ularga murojaat qiling.",
+Master,Ustoz,
+Pay,To&#39;lash,
+You can also copy-paste this link in your browser,Bundan tashqari siz bu havolani brauzeringizdan nusxa ko&#39;chirishingiz mumkin,
+Verified By,Tasdiqlangan,
+Invalid naming series (. missing) for {0},{0} uchun nomlash seriyalari yaroqsiz (. Yo&#39;qolgan),
+Phone Number,Telefon raqami,
+Account SID,SID hisobi,
+Global Defaults,Global standartlar,
+Is Mandatory,Majburiy,
+WhatsApp,WhatsApp,
+Make a call,Qo&#39;ng&#39;iroq qiling,
+Approve,Tasdiqlang,
+Reject,Rad etish,
diff --git a/erpnext/translations/vi.csv b/erpnext/translations/vi.csv
index 650ac28..e576ef7 100644
--- a/erpnext/translations/vi.csv
+++ b/erpnext/translations/vi.csv
@@ -113,7 +113,6 @@
 Add Items,Thêm mục,
 Add Leads,Thêm khách hàng tiềm năng,
 Add Multiple Tasks,Thêm Nhiều Tác vụ,
-Add Row,Thêm dòng,
 Add Sales Partners,Thêm đối tác bán hàng,
 Add Serial No,Thêm Serial No,
 Add Students,Thêm sinh viên,
@@ -211,9 +210,7 @@
 An error occurred during the update process,Đã xảy ra lỗi trong quá trình cập nhật,
 "An item exists with same name ({0}), please change the item group name or rename the item","Một mục tồn tại với cùng một tên ({0}), hãy thay đổi tên nhóm mục hoặc đổi tên mục",
 Analyst,Chuyên viên phân tích,
-Analytics,phân tích,
 Annual Billing: {0},Thanh toán hàng năm: {0},
-Anonymous,Vô danh,
 Another Budget record '{0}' already exists against {1} '{2}' and account '{3}' for fiscal year {4},Hồ sơ ngân sách khác &#39;{0}&#39; đã tồn tại trong {1} &#39;{2}&#39; và tài khoản &#39;{3}&#39; cho năm tài chính {4},
 Another Period Closing Entry {0} has been made after {1},Thời gian đóng cửa khác nhập {0} đã được thực hiện sau khi {1},
 Another Sales Person {0} exists with the same Employee id,Nhân viên kd {0} đã tồn tại,
@@ -283,14 +280,12 @@
 Attendance not submitted for {0} as {1} on leave.,Khiếu nại không được gửi cho {0} là {1} khi rời đi.,
 Attribute table is mandatory,Bảng thuộc tính là bắt buộc,
 Attribute {0} selected multiple times in Attributes Table,Thuộc tính {0} được chọn nhiều lần trong Thuộc tính Bảng,
-Author,tác giả,
 Authorized Signatory,Ký Ủy quyền,
 Auto Material Requests Generated,Các yêu cầu tự động Chất liệu Generated,
 Auto Repeat,Tự động lặp lại,
 Auto repeat document updated,Tự động cập nhật tài liệu được cập nhật,
 Automotive,Ô tô,
 Available,Khả dụng,
-Available Leaves,Lá có sẵn,
 Available Qty,Số lượng có sẵn,
 Available Selling,Bán có sẵn,
 Available for use date is required,Có sẵn cho ngày sử dụng là bắt buộc,
@@ -340,7 +335,6 @@
 Base URL,URL cơ sở,
 Based On,Dựa trên,
 Based On Payment Terms,Dựa trên điều khoản thanh toán,
-Basic,Cơ bản,
 Batch,Lô hàng,
 Batch Entries,Mục nhập hàng loạt,
 Batch ID is mandatory,ID hàng loạt là bắt buộc,
@@ -361,7 +355,6 @@
 Billable Hours,Giờ có thể tính hóa đơn,
 Billed,đã lập hóa đơn,
 Billed Amount,Số lượng đã được lập hóa đơn,
-Billing,thanh toán,
 Billing Address,Địa chỉ thanh toán,
 Billing Address is same as Shipping Address,Địa chỉ thanh toán giống với địa chỉ giao hàng,
 Billing Amount,Lượng thanh toán,
@@ -560,7 +553,6 @@
 Consumed Qty,Số lượng tiêu thụ,
 Consumer Products,Sản phẩm tiêu dùng,
 Contact,Liên hệ,
-Contact Details,Chi tiết Liên hệ,
 Contact Us,Liên hệ chúng tôi,
 Content,Lọc nội dung,
 Content Masters,Thạc sĩ nội dung,
@@ -715,7 +707,6 @@
 Date of Joining,ngày gia nhập,
 Date of Joining must be greater than Date of Birth,Ngày gia nhập phải lớn hơn ngày sinh,
 Date of Transaction,ngày giao dịch,
-Datetime,Ngày giờ,
 Day,ngày,
 Debit,Nợ,
 Debit ({0}),Nợ ({0}),
@@ -874,7 +865,6 @@
 Employee cannot report to himself.,Nhân viên không thể báo cáo với chính mình.,
 Employee {0} has already applied for {1} between {2} and {3} : ,Nhân viên {0} đã áp dụng cho {1} giữa {2} và {3}:,
 Employee {0} of grade {1} have no default leave policy,Nhân viên {0} cấp lớp {1} không có chính sách nghỉ mặc định,
-Enable,K.hoạt,
 Enable / disable currencies.,Cho phép / vô hiệu hóa tiền tệ.,
 Enabled,Đã bật,
 "Enabling 'Use for Shopping Cart', as Shopping Cart is enabled and there should be at least one Tax Rule for Shopping Cart","Bật &#39;Sử dụng cho Giỏ hàng &quot;, như Giỏ hàng được kích hoạt và phải có ít nhất một Rule thuế cho Giỏ hàng",
@@ -905,7 +895,6 @@
 Error: Not a valid id?,Lỗi: Không phải là một id hợp lệ?,
 Estimated Cost,Chi phí ước tính,
 "Even if there are multiple Pricing Rules with highest priority, then following internal priorities are applied:","Ngay cả khi có nhiều quy giá với ưu tiên cao nhất, ưu tiên nội bộ sau đó sau được áp dụng:",
-Event,Sự Kiện,
 Exchange Gain/Loss,Trao đổi lãi / lỗ,
 Exchange Rate Revaluation master.,Đánh giá tỷ giá hối đoái tổng thể.,
 Exchange Rate must be same as {0} {1} ({2}),Tỷ giá ngoại tệ phải được giống như {0} {1} ({2}),
@@ -1032,7 +1021,6 @@
 From value must be less than to value in row {0},Từ giá trị phải nhỏ hơn giá trị trong hàng {0},
 From {0} | {1} {2},Từ {0} | {1} {2},
 Fulfillment,Hoàn thành,
-Full,Đầy,
 Full Name,Tên đầy đủ,
 Fully Depreciated,khấu hao hết,
 Furnitures and Fixtures,Nội thất và Đèn,
@@ -1133,7 +1121,6 @@
 Hub Sync ID,ID đồng bộ hóa của Hub,
 Human Resource,Nguồn nhân lực,
 Human Resources,Nhân sự,
-IFSC Code,Mã IFSC,
 IGST Amount,Lượng IGST,
 IP Address,Địa chỉ IP,
 ITC Available (whether in full op part),ITC Có sẵn (cho dù trong phần op đầy đủ),
@@ -1185,7 +1172,6 @@
 Ineligible ITC,ITC không đủ điều kiện,
 Initiated,Được khởi xướng,
 Inpatient Record,Hồ sơ nội trú,
-Insert,Chèn,
 Installation Note,Lưu ý cài đặt,
 Installation Note {0} has already been submitted,Lưu ý cài đặt {0} đã được gửi,
 Installation date cannot be before delivery date for Item {0},Ngày cài đặt không thể trước ngày giao hàng cho hàng {0},
@@ -1197,7 +1183,6 @@
 Insurance Start date should be less than Insurance End date,ngày Bảo hiểm bắt đầu phải ít hơn ngày kết thúc Bảo hiểm,
 Integrated Tax,Thuế tích hợp,
 Inter-State Supplies,Vật tư liên bang,
-Interests,Sở thích,
 Internet Publishing,Xuất bản Internet,
 Intra-State Supplies,Vật tư nội bộ,
 Introduction,Giới thiệu chung,
@@ -1316,7 +1301,6 @@
 Lab testing datetime cannot be before collection datetime,Lab thử nghiệm datetime có thể không được trước datetime bộ sưu tập,
 Label,Nhãn,
 Laboratory,Phòng thí nghiệm,
-Language Name,Tên ngôn ngữ,
 Large,Lớn,
 Last Communication,Lần giao tiếp cuối,
 Last Communication Date,Ngày Trao Đổi Cuối,
@@ -1347,8 +1331,6 @@
 Letter Heads for print templates.,Tiêu đề trang cho các mẫu tài liệu in,
 Level,Mức độ,
 Liability,Trách nhiệm,
-License,bằng,
-Limit,Giới hạn,
 Limit Crossed,Giới hạn chéo,
 Link to Material Request,Liên kết đến yêu cầu tài liệu,
 List of all share transactions,Danh sách tất cả giao dịch cổ phiếu,
@@ -1359,7 +1341,6 @@
 Loans (Liabilities),Các khoản vay (Nợ phải trả),
 Loans and Advances (Assets),Các khoản cho vay và Tiền đặt trước (tài sản),
 Local,Địa phương,
-Log,Đăng nhập,
 Logs for maintaining sms delivery status,Các đăng nhập cho việc duy trì tin nhắn  tình trạng giao hàng,
 Lost,Mất,
 Lost Reasons,Lý do bị mất,
@@ -1445,7 +1426,6 @@
 Medical Department,Bộ phận y tế,
 Medical Record,Hồ sơ y tế,
 Medium,Trung bình,
-Meeting,Gặp gỡ,
 Member Activity,Thành viên Hoạt động,
 Member ID,Mã thành viên,
 Member Name,Tên thành viên,
@@ -1495,7 +1475,6 @@
 Multiple Variants,Nhiều biến thể,
 Multiple fiscal years exist for the date {0}. Please set company in Fiscal Year,Nhiều năm tài chính tồn tại cho ngày {0}. Hãy thiết lập công ty trong năm tài chính,
 Music,âm nhạc,
-My Account,Tài Khoản Của Tôi,
 Name error: {0},Tên lỗi: {0},
 Name of new Account. Note: Please don't create accounts for Customers and Suppliers,Tên tài khoản mới. Lưu ý: Vui lòng không tạo tài khoản cho Khách hàng và Nhà cung cấp,
 Name or Email is mandatory,Tên hoặc Email là bắt buộc,
@@ -1538,7 +1517,6 @@
 New credit limit is less than current outstanding amount for the customer. Credit limit has to be atleast {0},hạn mức tín dụng mới thấp hơn số tồn đọng chưa trả cho khách hàng. Hạn mức tín dụng phải ít nhất {0},
 New task,Nhiệm vụ mới,
 New {0} pricing rules are created,Quy tắc định giá {0} mới được tạo,
-Newsletters,Bản tin,
 Newspaper Publishers,Các nhà xuất bản báo,
 Next,Tiếp theo,
 Next Contact By cannot be same as the Lead Email Address,"""Liên hệ Tiếp theo bởi "" không thể giống như Địa chỉ Email của tiềm năng",
@@ -1686,7 +1664,6 @@
 Other,Khác,
 Other Reports,Báo cáo khác,
 "Other outward supplies(Nil rated,Exempted)","Các nguồn cung bên ngoài khác (Không được xếp hạng, Được miễn)",
-Others,Các thông tin khác,
 Out Qty,Số lượng ra,
 Out Value,Giá trị hiện,
 Out of Order,Out of Order,
@@ -1726,7 +1703,6 @@
 Party Type and Party is mandatory for {0} account,Loại Bên và Bên là bắt buộc đối với {0} tài khoản,
 Party Type is mandatory,Kiểu đối tác  bắt buộc,
 Party is mandatory,Đối tác là bắt buộc,
-Password,Mật khẩu,
 Past Due Date,Ngày đến hạn,
 Patient,Bệnh nhân,
 Patient Appointment,Bổ nhiệm bệnh nhân,
@@ -1784,7 +1760,6 @@
 Pharmaceutical,Dược phẩm,
 Pharmaceuticals,Dược phẩm,
 Physician,Bác sĩ,
-Pincode,Pincode,
 Place Of Supply (State/UT),Nơi cung cấp (Bang / UT),
 Place Order,Đặt hàng,
 Plan Name,Tên kế hoạch,
@@ -1896,7 +1871,6 @@
 Please select date,Vui lòng chọn ngày,
 Please select item code,Vui lòng chọn mã hàng,
 Please select month and year,Vui lòng chọn tháng và năm,
-Please select prefix first,Vui lòng chọn tiền tố đầu tiên,
 Please select the Company,Vui lòng chọn Công ty,
 Please select the Multiple Tier Program type for more than one collection rules.,Vui lòng chọn loại Chương trình Nhiều Cấp cho nhiều quy tắc thu thập.,
 Please select the assessment group other than 'All Assessment Groups',Vui lòng chọn nhóm đánh giá khác với &#39;Tất cả các Nhóm Đánh giá&#39;,
@@ -1913,7 +1887,6 @@
 Please set Company filter blank if Group By is 'Company',Vui lòng đặt Bộ lọc của Công ty trống nếu Nhóm theo là &#39;Công ty&#39;,
 Please set Default Payroll Payable Account in Company {0},Hãy thiết lập mặc định Account Payable lương tại Công ty {0},
 Please set Depreciation related Accounts in Asset Category {0} or Company {1},Hãy thiết lập tài khoản liên quan Khấu hao trong phân loại của cải {0} hoặc Công ty {1},
-Please set Email Address,Hãy thiết lập Địa chỉ Email,
 Please set GST Accounts in GST Settings,Vui lòng thiết lập Tài khoản GST trong Cài đặt GST,
 Please set Hotel Room Rate on {},Vui lòng đặt Giá phòng khách sạn vào {},
 Please set Number of Depreciations Booked,Hãy thiết lập Số khấu hao Thẻ vàng,
@@ -1936,7 +1909,6 @@
 Please set the Email ID for the Student to send the Payment Request,Vui lòng đặt ID Email cho Sinh viên để gửi yêu cầu Thanh toán,
 Please set the Item Code first,Vui lòng đặt mã mục đầu tiên,
 Please set the Payment Schedule,Vui lòng đặt Lịch thanh toán,
-Please set the series to be used.,Vui lòng đặt hàng loạt sẽ được sử dụng.,
 Please set {0} for address {1},Vui lòng đặt {0} cho địa chỉ {1},
 Please setup Students under Student Groups,Xin vui lòng thiết lập Sinh viên theo Nhóm sinh viên,
 Please specify Company,Vui lòng ghi rõ Công ty,
@@ -1953,7 +1925,6 @@
 Point-of-Sale,Điểm bán hàng,
 Point-of-Sale Profile,Point-of-Sale hồ sơ,
 Portal,Cổng chính,
-Portal Settings,Thiết lập cổng,
 Possible Supplier,Nhà cung cấp có thể,
 Postal Expenses,Chi phí bưu điện,
 Posting Date,Ngày đăng,
@@ -2152,12 +2123,10 @@
 Reference No is mandatory if you entered Reference Date,Số tham khảo là bắt buộc nếu bạn đã nhập vào kỳ hạn tham khảo,
 Reference No.,Tài liệu tham khảo số.,
 Reference Number,Số liệu tham khảo,
-Reference Owner,Chủ đầu tư tham khảo,
 Reference Type,Loại tài liệu tham khảo,
 "Reference: {0}, Item Code: {1} and Customer: {2}","Tham khảo: {0}, Mã hàng: {1} và Khách hàng: {2}",
 References,Tài liệu tham khảo,
 Refresh Token,Thông báo làm mới,
-Region,Vùng,
 Register,Ghi danh,
 Rejected,Bị từ chối,
 Related,có liên quan,
@@ -2179,7 +2148,6 @@
 Replace BOM and update latest price in all BOMs,Thay thế Hội đồng quản trị và cập nhật giá mới nhất trong tất cả các BOMs,
 Replied,Trả lời,
 Report,Báo cáo,
-Report Builder,Báo cáo Builder,
 Report Type,Loại báo cáo,
 Report Type is mandatory,Loại báo cáo là bắt buộc,
 Reports,Báo cáo,
@@ -2355,13 +2323,11 @@
 Same Company is entered more than once,Cùng Công ty được nhập nhiều hơn một lần,
 Same item cannot be entered multiple times.,Cùng mục không thể được nhập nhiều lần.,
 Same supplier has been entered multiple times,Cùng nhà cung cấp đã được nhập nhiều lần,
-Sample,Mẫu,
 Sample Collection,Bộ sưu tập mẫu,
 Sample quantity {0} cannot be more than received quantity {1},Số lượng mẫu {0} không được nhiều hơn số lượng nhận được {1},
 Sanctioned,Xử phạt,
 Sand,Cát,
 Saturday,Thứ bảy,
-Saved,Lưu,
 Saving {0},Đang lưu {0},
 Scan Barcode,Quét mã vạch,
 Schedule,Lập lịch quét,
@@ -2463,7 +2429,6 @@
 Series Updated,Cập nhật hàng loạt,
 Series Updated Successfully,Loạt Cập nhật thành công,
 Series is mandatory,Series là bắt buộc,
-Series {0} already used in {1},Loạt {0} đã được sử dụng trong {1},
 Service,Dịch vụ,
 Service Level Agreement,Thỏa thuận cấp độ dịch vụ,
 Service Level Agreement.,Thỏa thuận cấp độ dịch vụ.,
@@ -2479,7 +2444,6 @@
 Set Tax Rule for shopping cart,Đặt Rule thuế cho giỏ hàng,
 Set as Closed,Đặt làm đóng,
 Set as Completed,Đặt là Đã hoàn thành,
-Set as Default,Set as Default,
 Set as Lost,Thiết lập như Lost,
 Set as Open,Đặt làm mở,
 Set default inventory account for perpetual inventory,Thiết lập tài khoản kho mặc định cho kho vĩnh viễn,
@@ -2511,7 +2475,6 @@
 Shareholder,Cổ đông,
 Ship To State,Gửi đến trạng thái,
 Shipments,Lô hàng,
-Shipping,Vận chuyển,
 Shipping Address,Địa chỉ giao hàng,
 "Shipping Address does not have country, which is required for this Shipping Rule","Địa chỉ gửi hàng không có quốc gia, được yêu cầu cho Quy tắc vận chuyển này",
 Shipping rule only applicable for Buying,Quy tắc vận chuyển chỉ áp dụng cho mua hàng,
@@ -2564,7 +2527,6 @@
 Split Batch,Phân chia lô hàng,
 Split Issue,Tách vấn đề,
 Sports,Các môn thể thao,
-Standard,Tiêu chuẩn,
 Standard Buying,Mua hàng mặc định,
 Standard Selling,Bán hàng tiêu chuẩn,
 Standard contract terms for Sales or Purchase.,Điều khoản hợp đồng tiêu chuẩn cho Bán hàng hoặc Mua hàng.,
@@ -2731,7 +2693,6 @@
 Terms and Conditions,Các Điều khoản/Điều kiện,
 Terms and Conditions Template,Điều khoản và Điều kiện mẫu,
 Territory,Địa bàn,
-Test,K.tra,
 Thank you for your business!,Cảm ơn vì công việc kinh doanh của bạn !,
 The 'From Package No.' field must neither be empty nor it's value less than 1.,&#39;Từ Gói số&#39; trường không được để trống hoặc giá trị còn nhỏ hơn 1.,
 The Brand,Thương hiệu,
@@ -2848,7 +2809,6 @@
 Total (Without Tax),Tổng (Không Thuế),
 Total Achieved,Tổng số đã đạt được,
 Total Actual,Tổng số thực tế,
-Total Allocated Leaves,Tổng số lá được phân bổ,
 Total Amount,Tổng số,
 Total Amount Credited,Tổng số tiền được ghi có,
 Total Applicable Charges in Purchase Receipt Items table must be same as Total Taxes and Charges,Tổng phí tại biên lai mua các mẫu hàng phải giống như tổng các loại thuế và phí,
@@ -2892,7 +2852,6 @@
 Total(Amt),Tổng số (Amt),
 Total(Qty),Tổng số (SL),
 Traceability,Truy xuất nguồn gốc,
-Traceback,Tìm lại,
 Track Leads by Lead Source.,Theo dõi theo Leads Nguồn.,
 Transaction,cô lập Giao dịch,
 Transaction Date,Giao dịch ngày,
@@ -2930,7 +2889,6 @@
 UOM Conversion factor is required in row {0},Yếu tố UOM chuyển đổi là cần thiết trong hàng {0},
 UOM coversion factor required for UOM: {0} in Item: {1},Yếu tố cần thiết cho coversion UOM UOM: {0} trong Item: {1},
 URL,URL,
-Unable to find DocType {0},Không thể tìm thấy DocType {0},
 Unable to find exchange rate for {0} to {1} for key date {2}. Please create a Currency Exchange record manually,Không thể tìm thấy tỷ giá cho {0} đến {1} cho ngày chính {2}. Vui lòng tạo một bản ghi tiền tệ bằng tay,
 Unable to find score starting at {0}. You need to have standing scores covering 0 to 100,Không thể tìm thấy điểm số bắt đầu từ {0}. Bạn cần phải có điểm đứng bao gồm 0 đến 100,
 Unable to find variable: ,Không thể tìm thấy biến:,
@@ -2960,7 +2918,6 @@
 Upload your letter head and logo. (you can edit them later).,Tải lên tiêu đề trang và logo. (Bạn có thể chỉnh sửa chúng sau này).,
 Upper Income,Thu nhập trên,
 Use Sandbox,sử dụng Sandbox,
-Used Leaves,Lá đã qua sử dụng,
 User,Người dùng,
 User ID,ID người dùng,
 User ID not set for Employee {0},ID người dùng không thiết lập cho nhân viên {0},
@@ -3051,7 +3008,6 @@
 Website Settings,Thiết lập website,
 Wednesday,Thứ tư,
 Week,Tuần,
-Weekdays,Ngày thường,
 Weekly,Hàng tuần,
 "Weight is mentioned,\nPlease mention ""Weight UOM"" too","Trọng lượng được đề cập, \n Xin đề cập đến cả  ""Weight UOM""",
 Welcome email sent,Email chào mừng gửi,
@@ -3072,7 +3028,6 @@
 Work Order {0} must be submitted,Đơn hàng công việc {0} phải được nộp,
 Work Orders Created: {0},Đơn hàng Công việc Đã Được Tạo: {0},
 Work-in-Progress Warehouse is required before Submit,Kho xưởng đang trong tiến độ hoàn thành được là cần thiết trước khi duyệt,
-Workflow,Quy trình làm việc,
 Working,Làm việc,
 Working Hours,Giờ làm việc,
 Workstation,Trạm làm việc,
@@ -3102,7 +3057,6 @@
 You need to be a user other than Administrator with System Manager and Item Manager roles to register on Marketplace.,Bạn cần phải là người dùng không phải là Quản trị viên có vai trò Quản lý hệ thống và Trình quản lý mặt hàng để đăng ký trên Marketplace.,
 You need to be a user with System Manager and Item Manager roles to add users to Marketplace.,Bạn cần phải là người dùng có vai trò Quản lý hệ thống và Trình quản lý mục để thêm người dùng vào Marketplace.,
 You need to be a user with System Manager and Item Manager roles to register on Marketplace.,Bạn cần phải là người dùng có vai trò Quản lý hệ thống và Trình quản lý mặt hàng để đăng ký trên Marketplace.,
-You need to be logged in to access this page,Bạn cần phải đăng nhập để truy cập trang này,
 You need to enable Shopping Cart,Bạn cần phải kích hoạt  mô đun Giỏ hàng,
 You will lose records of previously generated invoices. Are you sure you want to restart this subscription?,Bạn sẽ mất các bản ghi hóa đơn đã tạo trước đó. Bạn có chắc chắn muốn khởi động lại đăng ký này không?,
 Your Organization,Tổ chức của bạn,
@@ -3218,7 +3172,6 @@
 Assigned To,Để giao,
 Chat,Trò chuyện,
 Completed By,Hoàn thành bởi,
-County,quận,
 Day of Week,Ngày trong tuần,
 "Dear System Manager,","Thưa System Manager,",
 Default Value,Giá trị mặc định,
@@ -3229,31 +3182,21 @@
 Fieldtype,Fieldtype,
 Help Articles,Các điều khoản trợ giúp,
 ID,ID,
-Images,Hình ảnh,
 Import,Nhập khẩu,
 Language,Ngôn ngữ,
 Likes,các lượt thích,
 Merge with existing,Kết hợp với hiện tại,
-Office,Văn phòng,
 Orientation,Sự định hướng,
 Parent,Nguồn gốc,
-Passive,Thụ động,
 Payment Failed,Thanh toán không thành công,
-Permanent,Dài hạn,
 Personal,Cá nhân,
-Plant,Cây,
 Post,Bài,
-Postal,Bưu chính,
 Postal Code,Mã bưu chính,
-Previous,Trước,
 Provider,Các nhà cung cấp,
 Read Only,Chỉ đọc,
 Recipient,Người nhận,
 Reviews,Nhận xét,
 Sender,Người gửi,
-Shop,Cửa hàng,
-Subsidiary,Công ty con,
-There is some problem with the file url: {0},Có một số vấn đề với các url của tệp: {0},
 There were errors while sending email. Please try again.,Có lỗi khi gửi email. Vui lòng thử lại sau.,
 Values Changed,giá trị thay đổi,
 or,hoặc,
@@ -3280,19 +3223,16 @@
 Quality Feedback Template,Mẫu phản hồi chất lượng,
 Rules for applying different promotional schemes.,Quy tắc áp dụng các chương trình khuyến mãi khác nhau.,
 Show {0},Hiển thị {0},
-"Special Characters except '-', '#', '.', '/', '{{' and '}}' not allowed in naming series {0}","Các ký tự đặc biệt ngoại trừ &quot;-&quot;, &quot;#&quot;, &quot;.&quot;, &quot;/&quot;, &quot;{{&quot; Và &quot;}}&quot; không được phép trong chuỗi đặt tên {0}",
 Target Details,Chi tiết mục tiêu,
 {0} already has a Parent Procedure {1}.,{0} đã có Quy trình dành cho phụ huynh {1}.,
 API,API,
 Annual,Hàng năm,
 Change,Thay đổi,
 Contact Email,Email Liên hệ,
-Export Type,Loại xuất khẩu,
 From Date,Từ ngày,
 Group By,Nhóm theo,
 Invalid URL,URL không hợp lệ,
 Landscape,Phong cảnh,
-Last Sync On,Đồng bộ lần cuối cùng,
 Naming Series,Đặt tên series,
 No data to export,Không có dữ liệu để xuất,
 Portrait,Chân dung,
@@ -3302,7 +3242,6 @@
 Show Document,Hiển thị tài liệu,
 Show Traceback,Hiển thị Trac trở lại,
 Video,Video,
-Webhook Secret,Bí mật webhook,
 % Of Grand Total,Tổng số%,
 <b>Company</b> is a mandatory filter.,<b>Công ty</b> là một bộ lọc bắt buộc.,
 <b>From Date</b> is a mandatory filter.,<b>Từ ngày</b> là một bộ lọc bắt buộc.,
@@ -3358,7 +3297,6 @@
 BOM Comparison Tool,Công cụ so sánh BOM,
 BOM recursion: {0} cannot be child of {1},Đệ quy BOM: {0} không thể là con của {1},
 BOM recursion: {0} cannot be parent or child of {1},Đệ quy BOM: {0} không thể là cha hoặc con của {1},
-Back to Home,Trở về nhà,
 Back to Messages,Quay lại tin nhắn,
 Bank Data mapper doesn't exist,Ánh xạ dữ liệu ngân hàng không tồn tại,
 Bank Details,Thông tin chi tiết ngân hàng,
@@ -3420,7 +3358,6 @@
 Currency,Tiền tệ,
 Current Status,Tình trạng hiện tại,
 Customer PO,PO khách hàng,
-Customize,Tùy chỉnh,
 Daily,Hàng ngày,
 Date,Ngày,
 Date of Birth cannot be greater than Joining Date.,Ngày sinh không thể lớn hơn Ngày tham gia.,
@@ -3454,7 +3391,6 @@
 ERPNext could not find any matching payment entry,ERPNext không thể tìm thấy bất kỳ mục thanh toán phù hợp,
 Earliest Age,Tuổi sớm nhất,
 Edit Details,Chỉnh sửa chi tiết,
-Edit Profile,Sửa hồ sơ,
 Either GST Transporter ID or Vehicle No is required if Mode of Transport is Road,ID GST Transporter hoặc Xe số là bắt buộc nếu Chế độ vận chuyển là đường,
 Email,E-mail,
 Email Campaigns,Chiến dịch email,
@@ -3482,7 +3418,6 @@
 Fetch Items from Warehouse,Lấy các mục từ kho,
 Fetching...,Đang tải ...,
 Field,Cánh đồng,
-File Manager,Quản lý tập tin,
 Filters,Bộ lọc,
 Finding linked payments,Tìm các khoản thanh toán được liên kết,
 Fleet Management,Quản lý đội tàu,
@@ -3521,7 +3456,6 @@
 Incorrect Warehouse,Kho không chính xác,
 Invalid Barcode. There is no Item attached to this barcode.,Mã vạch không hợp lệ. Không có mục nào được đính kèm với mã vạch này.,
 Invalid credentials,Thông tin không hợp lệ,
-Invite as User,Mời như tài,
 Issue Priority.,Vấn đề ưu tiên.,
 Issue Type.,Các loại vấn đề.,
 "It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","Dường như có sự cố với cấu hình sọc của máy chủ. Trong trường hợp thất bại, số tiền sẽ được hoàn trả vào tài khoản của bạn.",
@@ -3564,7 +3498,6 @@
 New Invoice,Hóa đơn mới,
 New Payment,Thanh toán mới,
 New release date should be in the future,Ngày phát hành mới sẽ có trong tương lai,
-Newsletter,Đăng ký nhận bản tin,
 No Account matched these filters: {},Không có tài khoản nào khớp với các bộ lọc này: {},
 No communication found.,Không tìm thấy thông tin liên lạc.,
 No correct answer is set for {0},Không có câu trả lời đúng được đặt cho {0},
@@ -3640,7 +3573,6 @@
 Please setup a default bank account for company {0},Vui lòng thiết lập tài khoản ngân hàng mặc định cho công ty {0},
 Please specify,Vui lòng chỉ,
 Please specify a {0},Vui lòng chỉ định {0},lead
-Printing,In ấn,
 Priority,Ưu tiên,
 Priority has been changed to {0}.,Ưu tiên đã được thay đổi thành {0}.,
 Priority {0} has been repeated.,Ưu tiên {0} đã được lặp lại.,
@@ -3649,7 +3581,6 @@
 Project,Dự Án,
 Provide the academic year and set the starting and ending date.,Cung cấp năm học và thiết lập ngày bắt đầu và ngày kết thúc.,
 Public token is missing for this bank,Mã thông báo công khai bị thiếu cho ngân hàng này,
-Publish,Công bố,
 Publish 1 Item,Xuất bản 1 mục,
 Publish Items,Xuất bản các mặt hàng,
 Publish More Items,Xuất bản nhiều mặt hàng,
@@ -3677,7 +3608,6 @@
 Reconciled,Hòa giải,
 Recruitment,Tuyển dụng,
 Red,Đỏ,
-Refreshing,Làm mới,
 Release date must be in the future,Ngày phát hành phải trong tương lai,
 Relieving Date must be greater than or equal to Date of Joining,Ngày giải phóng phải lớn hơn hoặc bằng Ngày tham gia,
 Rename,Đổi tên,
@@ -3721,7 +3651,6 @@
 Search for a payment,Tìm kiếm một khoản thanh toán,
 Search for anything ...,Tìm kiếm bất cứ điều gì ...,
 Search results for,tìm kiếm kết quả cho,
-Select All,Chọn tất cả,
 Select Difference Account,Chọn tài khoản khác biệt,
 Select a Default Priority.,Chọn một ưu tiên mặc định.,
 Select a company,Chọn một công ty,
@@ -3740,11 +3669,9 @@
 Service Level Agreement has been changed to {0}.,Thỏa thuận cấp độ dịch vụ đã được thay đổi thành {0}.,
 Service Level Agreement was reset.,Thỏa thuận cấp độ dịch vụ đã được đặt lại.,
 Service Level Agreement with Entity Type {0} and Entity {1} already exists.,Thỏa thuận cấp độ dịch vụ với Loại thực thể {0} và Thực thể {1} đã tồn tại.,
-Set,Cài đặt,
 Set Meta Tags,Đặt thẻ Meta,
 Set {0} in company {1},Đặt {0} trong công ty {1},
 Setup,Cài đặt,
-Setup Wizard,Trình cài đặt,
 Shift Management,Quản lý thay đổi,
 Show Future Payments,Hiển thị các khoản thanh toán trong tương lai,
 Show Linked Delivery Notes,Hiển thị ghi chú giao hàng được liên kết,
@@ -3815,7 +3742,6 @@
 Unreconciled,Không được hòa giải,
 Unsupported GST Category for E-Way Bill JSON generation,Danh mục GST không được hỗ trợ để tạo Bill JSON theo cách điện tử,
 Update,Cập nhật,
-Update Details,Cập nhật chi tiết,
 Update Taxes for Items,Cập nhật thuế cho các mặt hàng,
 "Upload a bank statement, link or reconcile a bank account","Tải lên bảng sao kê ngân hàng, liên kết hoặc đối chiếu tài khoản ngân hàng",
 Upload a statement,Tải lên một tuyên bố,
@@ -3839,7 +3765,6 @@
 XML Files Processed,Các tệp XML đã được xử lý,
 Year,Năm,
 Yearly,Hàng năm,
-You,Bạn,
 You are not allowed to enroll for this course,Bạn không được phép đăng ký khóa học này,
 You are not enrolled in program {0},Bạn chưa đăng ký chương trình {0},
 You can Feature upto 8 items.,Bạn có thể tính năng tối đa 8 mục.,
@@ -3856,7 +3781,6 @@
 e-Way Bill already exists for this document,Hóa đơn điện tử đã tồn tại cho tài liệu này,
 woocommerce - {0},thương mại điện tử - {0},
 {0} Coupon used are {1}. Allowed quantity is exhausted,{0} Phiếu giảm giá được sử dụng là {1}. Số lượng cho phép đã cạn kiệt,
-{0} Name,{0} Tên,
 {0} Operations: {1},{0} Hoạt động: {1},
 {0} bank transaction(s) created,{0} giao dịch ngân hàng đã được tạo,
 {0} bank transaction(s) created and {1} errors,{0} giao dịch ngân hàng được tạo và {1} lỗi,
@@ -3875,17 +3799,13 @@
 Total Income,Tổng thu nhập,
 Total Income This Year,Tổng thu nhập năm nay,
 Barcode,Mã vạch,
-Bold,Dũng cảm,
-Center,Trung tâm,
 Clear,Thông thoáng,
-Comment,Bình luận,
 Comments,Thẻ chú thích,
 DocType,Tài liệu,
 Download,Tải xuống,
 Left,Trái,
 Link,Liên kết,
 New,Mới,
-Not Found,Không tìm thấy,
 Print,In,
 Reference Name,Tên tham chiếu,
 Refresh,Làm mới,
@@ -3908,7 +3828,6 @@
 Email Id,ID email,
 No,Không,
 Reference Doctype,Tài liệu tham khảo DocType,
-User Id,Tên người dùng,
 Yes,Đồng ý,
 Actual ,Dựa trên tiền thực tế,
 Add to cart,Thêm vào giỏ hàng,
@@ -4304,7 +4223,6 @@
 e.g Adjustments for:,v.d Điều chỉnh cho:,
 Section Subtotal,Phần Tổng phụ,
 Section Footer,Phần chân trang,
-Position,Chức vụ,
 Cash Flow Mapping,Lập bản đồ tiền mặt,
 Select Maximum Of 1,Chọn tối đa 1,
 Is Finance Cost,Chi phí Tài chính,
@@ -4936,7 +4854,6 @@
 Previous Business Day,Ngày làm việc trước,
 Next Business Day,Ngày làm việc tiếp theo,
 Urgent,Khẩn cấp,
-Crop,Mùa vụ,
 Crop Name,Tên Crop,
 Scientific Name,Tên khoa học,
 "You can define all the tasks which need to carried out for this crop here. The day field is used to mention the day on which the task needs to be carried out, 1 being the 1st day, etc.. ","Bạn có thể xác định tất cả các nhiệm vụ cần thực hiện cho vụ này ở đây. Trường ngày được sử dụng để đề cập đến ngày mà nhiệm vụ cần được thực hiện, 1 là ngày thứ nhất, v.v ...",
@@ -5441,7 +5358,6 @@
 To TIme,Giờ,
 Course End Date,Khóa học Ngày kết thúc,
 Course Topic,Chủ đề khóa học,
-Topic,Chủ đề,
 Topic Name,Tên chủ đề,
 Education Settings,Thiết lập miền Giáo dục,
 Current Academic Year,Năm học hiện tại,
@@ -5516,7 +5432,6 @@
 Check this if the Student is residing at the Institute's Hostel.,Kiểm tra điều này nếu Sinh viên đang cư trú tại Nhà nghỉ của Viện.,
 Walking,Đi dạo,
 Institute's Bus,Xe của Viện,
-Public Transport,Phương tiện giao thông công cộng,
 Self-Driving Vehicle,Phương tiện tự lái,
 Pick/Drop by Guardian,Chọn/Thả bởi giám hộ,
 Enrolled courses,Các khóa học đã ghi danh,
@@ -5697,7 +5612,6 @@
 Default Cost Center,Bộ phận chi phí mặc định,
 Undeposited Funds Account,Tài khoản tiền chưa ký gửi,
 Shopify Log,Nhật ký Shopify,
-Request Data,Yêu cầu dữ liệu,
 Shopify Settings,Shopify Settings,
 status html,trạng thái html,
 Enable Shopify,Bật Shopify,
@@ -5817,7 +5731,6 @@
 Exercise Instructions,Hướng dẫn bài tập,
 Exercise Video,Video bài tập,
 Exercise Steps,Các bước tập thể dục,
-Steps,Các bước,
 Steps Table,Bảng các bước,
 Exercise Type Step,Loại bài tập Bước,
 Max number of visit,Số lần truy cập tối đa,
@@ -6001,7 +5914,6 @@
 Patient Encounter Symptom,Bệnh nhân gặp phải triệu chứng,
 HLC-PMR-.YYYY.-,HLC-PMR-.YYYY.-,
 Attach Medical Record,Đính kèm hồ sơ bệnh án,
-Reference DocType,Tham khảo DocType,
 Spouse,Vợ / chồng,
 Family,Gia đình,
 Schedule Details,Chi tiết lịch trình,
@@ -6983,16 +6895,8 @@
 HTML / Banner that will show on the top of product list.,HTML / Tiêu đề đó sẽ hiển thị trên đầu danh sách sản phẩm.,
 Set prefix for numbering series on your transactions,Thiết lập tiền tố cho đánh số hàng loạt các giao dịch của bạn,
 Setup Series,Thiết lập Dòng,
-Select Transaction,Chọn giao dịch,
-Help HTML,Giúp đỡ HTML,
-Series List for this Transaction,Danh sách loạt cho các giao dịch này,
-User must always select,Người sử dụng phải luôn luôn chọn,
-Check this if you want to force the user to select a series before saving. There will be no default if you check this.,Kiểm tra này nếu bạn muốn ép buộc người dùng lựa chọn một loạt trước khi lưu. Sẽ không có mặc định nếu bạn kiểm tra này.,
 Update Series,Cập nhật sê ri,
 Change the starting / current sequence number of an existing series.,Thay đổi bắt đầu / hiện số thứ tự của một loạt hiện có.,
-Prefix,Tiền tố,
-This is the number of the last created transaction with this prefix,Đây là số lượng các giao dịch tạo ra cuối cùng với tiền tố này,
-Update Series Number,Cập nhật số sê ri,
 Quotation Lost Reason,lý do bảng báo giá mất,
 A third party distributor / dealer / commission agent / affiliate / reseller who sells the companies products for a commission.,Một nhà phân phối của bên thứ ba / đại lý / hoa hồng đại lý / chi nhánh / đại lý bán lẻ chuyên bán các sản phẩm công ty cho hưởng hoa hồng.,
 Sales Partner Name,Tên đại lý,
@@ -7687,7 +7591,6 @@
 Warehouse wise Item Balance Age and Value,Kho hàng khôn ngoan Item Số dư Tuổi và Giá trị,
 Work Order Stock Report,Làm việc Báo cáo chứng khoán,
 Work Orders in Progress,Đơn đặt hàng đang tiến hành,
-Validation Error,Lỗi xác nhận,
 Automatically Process Deferred Accounting Entry,Tự động xử lý mục nhập kế toán hoãn lại,
 Bank Clearance,Thanh toán Ngân hàng,
 Bank Clearance Detail,Chi tiết Thanh toán Ngân hàng,
@@ -7724,45 +7627,7 @@
 Therapy Plan: ,Kế hoạch trị liệu:,
 Total Counts Targeted: ,Tổng số Đếm được Nhắm mục tiêu:,
 Total Counts Completed: ,Tổng số đã hoàn thành:,
-Andaman and Nicobar Islands,Quần đảo Andaman và Nicobar,
-Andhra Pradesh,Andhra Pradesh,
-Arunachal Pradesh,Arunachal Pradesh,
-Assam,Assam,
-Bihar,Bihar,
-Chandigarh,Chandigarh,
-Chhattisgarh,Chhattisgarh,
-Dadra and Nagar Haveli,Dadra và Nagar Haveli,
-Daman and Diu,Daman và Diu,
-Delhi,Delhi,
-Goa,Goa,
-Gujarat,Gujarat,
-Haryana,Haryana,
-Himachal Pradesh,Himachal Pradesh,
-Jammu and Kashmir,Jammu và Kashmir,
-Jharkhand,Jharkhand,
-Karnataka,Karnataka,
-Kerala,Kerala,
-Lakshadweep Islands,Quần đảo Lakshadweep,
-Madhya Pradesh,Madhya Pradesh,
-Maharashtra,Maharashtra,
-Manipur,Manipur,
-Meghalaya,Meghalaya,
-Mizoram,Mizoram,
-Nagaland,Nagaland,
-Odisha,Odisha,
-Other Territory,Lãnh thổ khác,
-Pondicherry,Pondicherry,
-Punjab,Punjab,
-Rajasthan,Rajasthan,
-Sikkim,Sikkim,
-Tamil Nadu,Tamil Nadu,
-Telangana,Telangana,
-Tripura,Tripura,
-Uttar Pradesh,Uttar Pradesh,
-Uttarakhand,Uttarakhand,
-West Bengal,Tây Bengal,
 Is Mandatory,Bắt buộc,
-Published on,Được xuất bản trên,
 Service Received But Not Billed,Dịch vụ đã nhận nhưng không được lập hóa đơn,
 Deferred Accounting Settings,Cài đặt kế toán hoãn lại,
 Book Deferred Entries Based On,Đặt sách các mục nhập hoãn lại dựa trên,
@@ -8035,8 +7900,6 @@
 Worksheet Instructions,Hướng dẫn trang tính,
 Result Legend Print,Bản in chú giải kết quả,
 Print Position,Vị trí in,
-Bottom,Dưới cùng,
-Top,Hàng đầu,
 Both,Cả hai,
 Result Legend,Chú giải kết quả,
 Lab Tests,Xét nghiệm,
@@ -8081,12 +7944,10 @@
 Approvers,Người phê duyệt,
 The first Approver in the list will be set as the default Approver.,Người phê duyệt đầu tiên trong danh sách sẽ được đặt làm Người phê duyệt mặc định.,
 Shift Request Approver,Người phê duyệt yêu cầu thay đổi,
-PAN Number,Số PAN,
 Provident Fund Account,Tài khoản Quỹ cấp,
 MICR Code,Mã MICR,
 Repay unclaimed amount from salary,Hoàn trả số tiền chưa nhận được từ tiền lương,
 Deduction from salary,Khấu trừ lương,
-Expired Leaves,Lá hết hạn,
 If this is not checked the loan by default will be considered as a Demand Loan,"Nếu điều này không được kiểm tra, khoản vay mặc định sẽ được coi là Khoản vay không kỳ hạn",
 This account is used for booking loan repayments from the borrower and also disbursing loans to the borrower,Tài khoản này được sử dụng để hoàn trả khoản vay từ người đi vay và cũng để giải ngân các khoản vay cho người vay,
 This account is capital account which is used to allocate capital for loan disbursal account ,Tài khoản này là tài khoản vốn dùng để cấp vốn cho tài khoản giải ngân cho vay,
@@ -8844,3 +8705,41 @@
 Creating Purchase Order ...,Tạo Đơn đặt hàng ...,
 "Select a Supplier from the Default Suppliers of the items below. On selection, a Purchase Order will be made against items belonging to the selected Supplier only.","Chọn Nhà cung cấp từ các Nhà cung cấp mặc định của các mục dưới đây. Khi lựa chọn, Đơn đặt hàng sẽ được thực hiện đối với các mặt hàng chỉ thuộc về Nhà cung cấp đã chọn.",
 Row #{}: You must select {} serial numbers for item {}.,Hàng # {}: Bạn phải chọn {} số sê-ri cho mặt hàng {}.,
+Add Comment,Thêm bình luận,
+More...,Hơn...,
+Notes,Ghi chú:,
+Payment Gateway,Cổng thanh toán,
+Payment Gateway Name,Tên cổng thanh toán,
+Payments,Thanh toán,
+Plan Name,Tên kế hoạch,
+Portal,Cổng chính,
+Scan Barcode,Quét mã vạch,
+Some information is missing,Một số thông tin là mất tích,
+Successful,Thành công,
+Tools,Công cụ,
+Use Sandbox,sử dụng Sandbox,
+Busy,Bận,
+Completed By,Hoàn thành bởi,
+Payment Failed,Thanh toán không thành công,
+Column {0},Cột {0},
+Field Mapping,Bản đồ hiện trường,
+Not Specified,Không xác định,
+Update Type,Loại cập nhật,
+Dr,Dr,
+End Time,End Time,
+Fetching...,Đang tải ...,
+"It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","Dường như có sự cố với cấu hình sọc của máy chủ. Trong trường hợp thất bại, số tiền sẽ được hoàn trả vào tài khoản của bạn.",
+Looks like someone sent you to an incomplete URL. Please ask them to look into it.,Hình như có ai đó gửi cho bạn một URL không đầy đủ. Hãy yêu cầu họ phải kiểm tra nó.,
+Master,Tổng,
+Pay,Trả,
+You can also copy-paste this link in your browser,Bạn cũng có thể sao chép-dán liên kết này trong trình duyệt của bạn,
+Verified By,Xác nhận bởi,
+Invalid naming series (. missing) for {0},Chuỗi đặt tên không hợp lệ (. Thiếu) cho {0},
+Phone Number,Số điện thoại,
+Account SID,Tài khoản SID,
+Global Defaults,Mặc định toàn cầu,
+Is Mandatory,Bắt buộc,
+WhatsApp,WhatsApp,
+Make a call,Thực hiện cuộc gọi,
+Approve,Tán thành,
+Reject,Từ chối,
diff --git a/erpnext/translations/zh-TW.csv b/erpnext/translations/zh-TW.csv
index 0209f44..699d802 100644
--- a/erpnext/translations/zh-TW.csv
+++ b/erpnext/translations/zh-TW.csv
@@ -150,7 +150,6 @@
 Cancel the journal entry {0} first,首先取消日記條目{0}
 BOM is not specified for subcontracting item {0} at row {1},沒有為行{1}的轉包商品{0}指定BOM,
 {0} Result submittted,{0}結果提交
-Timespan,時間跨度
 Help Results for,幫助結果
 Select Warehouse...,選擇倉庫...
 Advertising,廣告
@@ -316,7 +315,6 @@
 Sales Orders,銷售訂單
 Multiple Loyalty Program found for the Customer. Please select manually.,為客戶找到多個忠誠度計劃。請手動選擇。
 Valuation,計價
-Set as Default,設為預設
 Purchase Order Trends,採購訂單趨勢
 Go to Customers,轉到客戶
 Late Checkin,延遲入住
@@ -336,7 +334,6 @@
 Select the customer or supplier.,選擇客戶或供應商。
 Advance amount cannot be greater than {0} {1},提前量不能大於{0} {1}
 "Time slot skiped, the slot {0} to {1} overlap exisiting slot {2} to {3}",時隙滑動，時隙{0}到{1}與現有時隙{2}重疊到{3}
-Series List for this Transaction,本交易系列表
 Enable Perpetual Inventory,啟用永久庫存
 Charges Incurred,收費發生
 Default Payroll Payable Account,默認情況下，應付職工薪酬帳戶
@@ -715,7 +712,6 @@
 Account {0} does not belong to company: {1},科目{0}不屬於公司：{1}
 Abbreviation already used for another company,另一家公司已使用此縮寫
 Default Customer Group,預設客戶群組
-IFSC Code,IFSC代碼
 "If disable, 'Rounded Total' field will not be visible in any transaction",如果禁用，“圓角總計”字段將不可見的任何交易
 Operating Cost,營業成本
 Produced Items,生產物品
@@ -1193,7 +1189,6 @@
 Hold,持有
 Alternate Item,替代項目
 Progress Details,進度細節
-Request Data,請求數據
 Date of Joining,加入日期
 Is Subcontracted,轉包
 Item Attribute Values,項目屬性值
@@ -1580,7 +1575,6 @@
 Trial Balance,試算表
 Setting up Employees,建立職工
 Hotel Reservation User,酒店預訂用戶
-Please select prefix first,請先選擇前綴稱號
 Subscription Settings,訂閱設置
 Update Auto Repeat Reference,更新自動重複參考
 Work Done,工作完成
@@ -1730,7 +1724,6 @@
 Target Distribution,目標分佈
 06-Finalization of Provisional assessment,06-定期評估
 Bank Account No.,銀行賬號
-This is the number of the last created transaction with this prefix,這就是以這個前綴的最後一個創建的事務數
 "Scorecard variables can be used, as well as:
 {total_score} (the total score from that period),
 {period_number} (the number of periods to present day)
@@ -1882,7 +1875,6 @@
 Setup SMS gateway settings,設置短信閘道設置
 Common Name,通用名稱
 Import Failed!,導入失敗！
-No address added yet.,尚未新增地址。
 Workstation Working Hour,工作站工作時間
 Blood Pressure,血壓
 Analyst,分析人士
@@ -1964,7 +1956,6 @@
 Day to Send,發送日
 Manage Sample Collection,管理樣品收集
 Ignore Existing Ordered Quantity,忽略現有的訂購數量
-Please set the series to be used.,請設置要使用的系列。
 Tobacco Past Use,煙草過去使用
 Brand Name,商標名稱
 Transporter Details,貨運公司細節
@@ -2178,7 +2169,6 @@
 {0} {1}: Cost Center is required for 'Profit and Loss' account {2}. Please set up a default Cost Center for the Company.,{0} {1}：需要的損益“科目成本中心{2}。請設置為公司默認的成本中心。
 A Customer Group exists with same name please change the Customer name or rename the Customer Group,客戶群組存在相同名稱，請更改客戶名稱或重新命名客戶群組
 Area,區
-New Contact,新建聯絡人
 Company Description,公司介紹
 Parent Territory,家長領地
 Place of Supply,供貨地點
@@ -2694,7 +2684,6 @@
 Debit ({0}),借記卡（{0}）
 Allow Same Item Multiple Times,多次允許相同的項目
 Raise Material Request when stock reaches re-order level,當庫存到達需重新訂購水平時提高物料需求
-Contact Details,聯絡方式
 Received Date,接收日期
 "If you have created a standard template in Sales Taxes and Charges Template, select one and click on the button below.",如果您已經創建了銷售稅和費模板標準模板，選擇一個，然後點擊下面的按鈕。
 Basic Amount (Company Currency),基本金額（公司幣種）
@@ -2740,7 +2729,6 @@
 Lost Reason,失落的原因
 Enable Amazon,啟用亞馬遜
 Row #{0}: Account {1} does not belong to company {2},行＃{0}：科目{1}不屬於公司{2}
-Unable to find DocType {0},無法找到DocType {0}
 Sample Size,樣本大小
 Please enter Receipt Document,請輸入收據憑證
 All items have already been invoiced,所有項目已開具發票
@@ -2825,10 +2813,8 @@
 Please set recurring after saving,請設置保存後復發
 Select change amount account,選擇變化量科目
 Price List Currency,價格表之貨幣
-User must always select,用戶必須始終選擇
 Allow Negative Stock,允許負庫存
 Installation Note,安裝注意事項
-Topic,話題
 Cash Flow from Financing,從融資現金流
 Budget Account,預算科目
 Verified By,認證機構
@@ -3889,7 +3875,6 @@
 Both Warehouse must belong to same Company,這兩個倉庫必須屬於同一個公司
 Default Leave Policy,默認離開政策
 Shop URL,商店網址
-No contacts added yet.,尚未新增聯絡人。
 Landed Cost Voucher Amount,到岸成本憑證金額
 Item Balance (Simple),物品餘額（簡單）
 Bills raised by Suppliers.,由供應商提出的帳單。
@@ -4158,7 +4143,6 @@
 Finance Book Id,金融書籍ID,
 Safety Stock,安全庫存
 Healthcare Settings,醫療設置
-Total Allocated Leaves,總分配的葉子
 Progress % for a task cannot be more than 100.,為任務進度百分比不能超過100個。
 Before reconciliation,調整前
 Taxes and Charges Added (Company Currency),稅收和收費上架（公司貨幣）
@@ -4202,7 +4186,6 @@
 Address Name,地址名稱
 From BOM,從BOM,
 Assessment Code,評估準則
-Basic,基本的
 Stock transactions before {0} are frozen,{0}前的庫存交易被凍結
 Please click on 'Generate Schedule',請點擊“生成表”
 Reference No is mandatory if you entered Reference Date,如果你輸入的參考日期，參考編號是強制性的
@@ -4326,7 +4309,6 @@
 "Allergies, Medical and Surgical History",過敏，醫療和外科史
 Add to Cart,添加到購物車
 Group By,集團通過
-Interests,興趣
 Enable / disable currencies.,啟用／禁用的貨幣。
 Could not submit some Salary Slips,無法提交一些薪資單
 Get Entries,獲取條目
@@ -4355,7 +4337,6 @@
 "An amount of {0} already claimed for the component {1},\
 						 set the amount equal or greater than {2}",已為組件{1}申請的金額{0}，設置等於或大於{2}的金額
 Shipping Rule Conditions,送貨規則條件
-Export Type,導出類型
 The new BOM after replacement,更換後的新物料清單
 Point of Sale,銷售點
 Received Amount,收金額
@@ -4421,7 +4402,6 @@
 Healthcare Service Unit,醫療服務單位
 Cash Flow Statement,現金流量表
 No material request created,沒有創建重要請求
-License,執照
 Please remove this Invoice {0} from C-Form {1},請刪除此發票{0}從C-表格{1}
 Against Voucher Type,對憑證類型
 Phone (R),電話（R）
@@ -4541,7 +4521,6 @@
 Settings for website homepage,對網站的主頁設置
 {0} is on hold till {1},{0}一直保持到{1}
 RFQs are not allowed for {0} due to a scorecard standing of {1},由於{1}的記分卡，{0}不允許使用RFQ,
-Used Leaves,使用的葉子
 Link Options,鏈接選項
 Total Amount {0},總金額{0}
 Invalid attribute {0} {1},無效的屬性{0} {1}
@@ -4550,7 +4529,6 @@
 Row {0}: Cost center is required for an item {1},行{0}：項目{1}需要費用中心
 Optional,可選的
 {0} variants created.,創建了{0}個變體。
-Region,區域
 Optional. This setting will be used to filter in various transactions.,可選。此設置將被應用於過濾各種交易進行。
 Negative Valuation Rate is not allowed,負面評價率是不允許的
 Weekly Off,每週關閉
@@ -4637,7 +4615,6 @@
 % Amount Billed,（％）金額已開立帳單
 Telephone Expenses,電話費
 Logo,標誌
-Check this if you want to force the user to select a series before saving. There will be no default if you check this.,如果要強制用戶在儲存之前選擇了一系列，則勾選此項。如果您勾選此項，則將沒有預設值。
 No Item with Serial No {0},沒有序號{0}的品項
 Open Notifications,打開通知
 Difference Amount (Company Currency),差異金額（公司幣種）
@@ -4674,7 +4651,6 @@
 Contact Desc,聯絡倒序
 Send regular summary reports via Email.,使用電子郵件發送定期匯總報告。
 Please set default account in Expense Claim Type {0},請報銷類型設置默認科目{0}
-Available Leaves,可用的葉子
 Student Name,學生姓名
 Item Manager,項目經理
 Payroll Payable,應付職工薪酬
@@ -4896,7 +4872,6 @@
 Actual Time in Hours (via Timesheet),實際時間（小時）
 History In Company,公司歷史
 Customer Primary Address,客戶主要地址
-Newsletters,簡訊
 Reference No.,參考編號。
 Description/Strength,說明/力量
 Create New Payment/Journal Entry,創建新的付款/日記賬分錄
@@ -5105,7 +5080,6 @@
 Opening Accumulated Depreciation must be less than equal to {0},打開累計折舊必須小於等於{0}
 Warehouse Name,倉庫名稱
 Actual start date must be less than actual end date,實際開始日期必須小於實際結束日期
-Select Transaction,選擇交易
 Please enter Approving Role or Approving User,請輸入核准角色或審批用戶
 Write Off Entry,核銷進入
 Rate Of Materials Based On,材料成本基於
@@ -5362,7 +5336,6 @@
 Serial No Service Contract Expiry,序號服務合同到期
 You cannot credit and debit same account at the same time,你無法將貸方與借方在同一時間記在同一科目
 Adults' pulse rate is anywhere between 50 and 80 beats per minute.,成年人的脈率在每分鐘50到80次之間。
-Help HTML,HTML幫助
 Student Group Creation Tool,學生組創建工具
 Variant Based On,基於變異對
 Total weightage assigned should be 100%. It is {0},分配的總權重應為100 ％ 。這是{0}
@@ -5537,7 +5510,6 @@
 Stock Qty,庫存數量
 Default Shipping Account,默認運輸科目
 Error: Not a valid id?,錯誤：沒有有效的身份證？
-Update Series Number,更新序列號
 Equity,公平
 {0} {1}: 'Profit and Loss' type account {2} not allowed in Opening Entry,{0} {1}：“損益”科目類型{2}不允許進入開
 Printing Details,印刷詳情
@@ -5772,7 +5744,6 @@
 Max Retry Limit,最大重試限制
 Price List not found or disabled,價格表未找到或被禁用
 Price,價格
-Last Sync On,上次同步開啟
 Guardian,監護人
 All communications including and above this shall be moved into the new Issue,包括及以上的所有通信均應移至新發行中
 Item Alternative,項目選擇
@@ -5969,3 +5940,35 @@
 Account {0} does not exist,科目{0}不存在
 Cash,現金
 Short biography for website and other publications.,網站和其他出版物的短的傳記。
+"It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.",看起來服務器的條帶配置存在問題。如果失敗，這筆款項將退還給您的賬戶。
+Completed By,完成
+What do you need help with?,你有什麼需要幫助的？
+Interest,利益
+Make ,使
+Other Settings,其他設置
+Dr,博士
+Payment Failed,支付失敗
+Portal,門戶
+Lft,LFT,
+Master,主
+Tasks,任務
+You can also copy-paste this link in your browser,您也可以複製粘貼此鏈接到瀏覽器
+Profile,輪廓
+For,對於
+Add Comment,添加評論
+Mobile Number,手機號碼
+End Time,結束時間
+Task Name,任務名稱
+Restart,重新開始
+Pay,付
+From Date must be before To Date,起始日期必須早於終點日期
+Notes,筆記
+Docs Search,Google文檔搜索
+Template Name,模板名稱
+Payment Gateway Name,支付網關名稱
+Running,運行
+Looks like someone sent you to an incomplete URL. Please ask them to look into it.,貌似有人送你一個不完整的URL。請讓他們尋找到它。
+Payment Gateway,支付網關
+Address and Contacts,地址和聯絡方式
+Plan Name,計劃名稱
+Reject,拒絕
diff --git a/erpnext/translations/zh.csv b/erpnext/translations/zh.csv
index d51bf6b..70ec81a 100644
--- a/erpnext/translations/zh.csv
+++ b/erpnext/translations/zh.csv
@@ -113,7 +113,6 @@
 Add Items,添加项目,
 Add Leads,添加潜在客户,
 Add Multiple Tasks,添加多个任务,
-Add Row,添加行,
 Add Sales Partners,添加销售合作伙伴,
 Add Serial No,添加序列号,
 Add Students,新增学生,
@@ -211,9 +210,7 @@
 An error occurred during the update process,更新过程中发生错误,
 "An item exists with same name ({0}), please change the item group name or rename the item",具有名称 {0} 的物料已存在，请更名,
 Analyst,分析员,
-Analytics,Analytics（分析）,
 Annual Billing: {0},本年总发票金额：{0},
-Anonymous,匿名,
 Another Budget record '{0}' already exists against {1} '{2}' and account '{3}' for fiscal year {4},对于财务年度{4}，{1}&#39;{2}&#39;和帐户“{3}”已存在另一个预算记录“{0}”,
 Another Period Closing Entry {0} has been made after {1},在{1}之后另一个期间结束分录{0}已经被录入,
 Another Sales Person {0} exists with the same Employee id,另外销售人员{0}存在具有相同员工ID,
@@ -283,14 +280,12 @@
 Attendance not submitted for {0} as {1} on leave.,因{1}尚在休假中，{0}的考勤未能提交。,
 Attribute table is mandatory,属性表中的信息必填,
 Attribute {0} selected multiple times in Attributes Table,属性{0}多次选择在属性表,
-Author,作者,
 Authorized Signatory,授权签字人,
 Auto Material Requests Generated,已自动生成材料需求,
 Auto Repeat,自动重复,
 Auto repeat document updated,自动重复文件更新,
 Automotive,汽车,
 Available,可用的,
-Available Leaves,可用休假天数,
 Available Qty,可用数量,
 Available Selling,可用销售,
 Available for use date is required,需要使用可用日期,
@@ -340,7 +335,6 @@
 Base URL,基本网址,
 Based On,基于,
 Based On Payment Terms,根据付款条款,
-Basic,基本,
 Batch,批次,
 Batch Entries,批量条目,
 Batch ID is mandatory,批号是必需的,
@@ -361,7 +355,6 @@
 Billable Hours,可开票时间,
 Billed,已开票,
 Billed Amount,已开票金额,
-Billing,账单,
 Billing Address,帐单地址,
 Billing Address is same as Shipping Address,帐单地址与送货地址相同,
 Billing Amount,开票金额,
@@ -560,7 +553,6 @@
 Consumed Qty,已消耗数量,
 Consumer Products,消费类产品,
 Contact,联系人,
-Contact Details,联系人信息,
 Contact Us,联系我们,
 Content,内容,
 Content Masters,内容大师,
@@ -715,7 +707,6 @@
 Date of Joining,入职日期,
 Date of Joining must be greater than Date of Birth,入职日期必须大于出生日期,
 Date of Transaction,交易日期,
-Datetime,时间日期,
 Day,天,
 Debit,借方,
 Debit ({0}),借记卡（{0}）,
@@ -874,7 +865,6 @@
 Employee cannot report to himself.,员工不能向自己报表。,
 Employee {0} has already applied for {1} between {2} and {3} : ,员工{0}已在{2}和{3}之间申请{1}：,
 Employee {0} of grade {1} have no default leave policy,{1}职级员工{0}没有默认休假政策,
-Enable,启用,
 Enable / disable currencies.,启用/禁用货币。,
 Enabled,已启用,
 "Enabling 'Use for Shopping Cart', as Shopping Cart is enabled and there should be at least one Tax Rule for Shopping Cart",作为启用的购物车已启用“使用购物车”，而应该有购物车至少有一个税务规则,
@@ -905,7 +895,6 @@
 Error: Not a valid id?,错误：没有有效的身份证？,
 Estimated Cost,估计成本,
 "Even if there are multiple Pricing Rules with highest priority, then following internal priorities are applied:",即使有多个最高优先级定价规则，使用以下的内部优先级：,
-Event,事件,
 Exchange Gain/Loss,汇兑损益,
 Exchange Rate Revaluation master.,汇率重估主数据。,
 Exchange Rate must be same as {0} {1} ({2}),汇率必须一致{0} {1}（{2}）,
@@ -1032,7 +1021,6 @@
 From value must be less than to value in row {0},行{0}的起始值必须小于去值,
 From {0} | {1} {2},来自{0} | {1} {2},
 Fulfillment,订单履行,
-Full,充分,
 Full Name,全名,
 Fully Depreciated,已提足折旧,
 Furnitures and Fixtures,家具及固定装置,
@@ -1133,7 +1121,6 @@
 Hub Sync ID,集线器同步ID,
 Human Resource,人力资源,
 Human Resources,人力资源,
-IFSC Code,IFSC代码,
 IGST Amount,IGST金额,
 IP Address,IP地址,
 ITC Available (whether in full op part),ITC可用（无论是全部操作部分）,
@@ -1185,7 +1172,6 @@
 Ineligible ITC,不合格的ITC,
 Initiated,已初始化,
 Inpatient Record,住院病历,
-Insert,插入,
 Installation Note,安装通知单,
 Installation Note {0} has already been submitted,安装单{0}已经提交了,
 Installation date cannot be before delivery date for Item {0},物料{0}的安装日期不能早于交付日期,
@@ -1197,7 +1183,6 @@
 Insurance Start date should be less than Insurance End date,保险开始日期应小于保险终止日期,
 Integrated Tax,综合税,
 Inter-State Supplies,国家间供应,
-Interests,兴趣,
 Internet Publishing,互联网出版,
 Intra-State Supplies,国内供应,
 Introduction,介绍,
@@ -1316,7 +1301,6 @@
 Lab testing datetime cannot be before collection datetime,实验室测试日期时间不能在收集日期时间之前,
 Label,标签,
 Laboratory,实验室,
-Language Name,语言名称,
 Large,大,
 Last Communication,最后沟通,
 Last Communication Date,最后通讯日期,
@@ -1347,8 +1331,6 @@
 Letter Heads for print templates.,打印模板的信头。,
 Level,级别,
 Liability,负债,
-License,执照,
-Limit,限制,
 Limit Crossed,限制交叉,
 Link to Material Request,链接到材料请求,
 List of all share transactions,所有股份交易清单,
@@ -1359,7 +1341,6 @@
 Loans (Liabilities),借款（负债）,
 Loans and Advances (Assets),贷款及垫款（资产）,
 Local,当地,
-Log,日志,
 Logs for maintaining sms delivery status,日志维护短信发送状态,
 Lost,遗失,
 Lost Reasons,失去的原因,
@@ -1445,7 +1426,6 @@
 Medical Department,医学系,
 Medical Record,医疗记录,
 Medium,中,
-Meeting,会议,
 Member Activity,会员活动,
 Member ID,会员ID,
 Member Name,成员名字,
@@ -1495,7 +1475,6 @@
 Multiple Variants,多种变体,
 Multiple fiscal years exist for the date {0}. Please set company in Fiscal Year,多个会计年度的日期{0}存在。请设置公司财年,
 Music,音乐,
-My Account,我的账户,
 Name error: {0},名称错误：{0},
 Name of new Account. Note: Please don't create accounts for Customers and Suppliers,新科目的名称。注：请不要创建科目的客户和供应商,
 Name or Email is mandatory,姓名或电子邮件信息必填,
@@ -1538,7 +1517,6 @@
 New credit limit is less than current outstanding amount for the customer. Credit limit has to be atleast {0},新的信用额度小于该客户未付总额。信用额度至少应该是 {0},
 New task,新任务,
 New {0} pricing rules are created,创建新的{0}定价规则,
-Newsletters,内部通讯,
 Newspaper Publishers,报纸出版商,
 Next,下一个,
 Next Contact By cannot be same as the Lead Email Address,下一个联络人不能与线索的邮箱地址相同,
@@ -1686,7 +1664,6 @@
 Other,其他,
 Other Reports,其他报表,
 "Other outward supplies(Nil rated,Exempted)",其他外向供应（未评级，豁免）,
-Others,他人,
 Out Qty,发出数量,
 Out Value,输出值,
 Out of Order,乱序,
@@ -1726,7 +1703,6 @@
 Party Type and Party is mandatory for {0} account,科目{0}业务伙伴类型及业务伙伴信息必填,
 Party Type is mandatory,请输入往来单位类型,
 Party is mandatory,请输入往来单位,
-Password,密码,
 Past Due Date,过去的截止日期,
 Patient,患者,
 Patient Appointment,患者预约,
@@ -1784,7 +1760,6 @@
 Pharmaceutical,医药,
 Pharmaceuticals,制药,
 Physician,医师,
-Pincode,PIN代码,
 Place Of Supply (State/UT),供应地点（州/ UT）,
 Place Order,下订单,
 Plan Name,计划名称,
@@ -1896,7 +1871,6 @@
 Please select date,请选择日期,
 Please select item code,请选择商品代码,
 Please select month and year,请选择年份和月份,
-Please select prefix first,请先选择前缀,
 Please select the Company,请选择公司,
 Please select the Multiple Tier Program type for more than one collection rules.,请为多个收集规则选择多层程序类型。,
 Please select the assessment group other than 'All Assessment Groups',请选择“所有评估组”以外的评估组,
@@ -1913,7 +1887,6 @@
 Please set Company filter blank if Group By is 'Company',如果按什么分组是“Company”，请设置公司过滤器空白,
 Please set Default Payroll Payable Account in Company {0},请公司设定默认应付职工薪资科目{0},
 Please set Depreciation related Accounts in Asset Category {0} or Company {1},请在资产类别{0}或公司{1}设置折旧相关科目,
-Please set Email Address,请设置电子邮件地址,
 Please set GST Accounts in GST Settings,请在GST设置中设置GST科目,
 Please set Hotel Room Rate on {},请在{}上设置酒店房价,
 Please set Number of Depreciations Booked,请设置折旧数预订,
@@ -1936,7 +1909,6 @@
 Please set the Email ID for the Student to send the Payment Request,请设置学生的电子邮件ID以发送付款申请,
 Please set the Item Code first,请先设定商品代码,
 Please set the Payment Schedule,请设置付款时间表,
-Please set the series to be used.,请设置要使用的系列。,
 Please set {0} for address {1},请为地址{1}设置{0},
 Please setup Students under Student Groups,请设置学生组的学生,
 Please specify Company,请注明公司,
@@ -1953,7 +1925,6 @@
 Point-of-Sale,销售点,
 Point-of-Sale Profile,POS配置,
 Portal,门户,
-Portal Settings,门户网站设置,
 Possible Supplier,可能的供应商,
 Postal Expenses,邮政费用,
 Posting Date,记帐日期,
@@ -2152,12 +2123,10 @@
 Reference No is mandatory if you entered Reference Date,如果输入参考日期，参考编号是强制输入的,
 Reference No.,参考编号。,
 Reference Number,参考号码,
-Reference Owner,参考者,
 Reference Type,参考类型,
 "Reference: {0}, Item Code: {1} and Customer: {2}",参考：{0}，物料代号：{1}和顾客：{2},
 References,参考,
 Refresh Token,刷新令牌,
-Region,区域,
 Register,寄存器,
 Rejected,拒绝,
 Related,有关,
@@ -2179,7 +2148,6 @@
 Replace BOM and update latest price in all BOMs,更换BOM并更新所有BOM中的最新价格,
 Replied,回答,
 Report,报告,
-Report Builder,报表生成器,
 Report Type,报告类型,
 Report Type is mandatory,报表类型必填,
 Reports,报告,
@@ -2355,13 +2323,11 @@
 Same Company is entered more than once,公司代码在另一行已输入过，重复了,
 Same item cannot be entered multiple times.,同一物料不能输入多次。,
 Same supplier has been entered multiple times,同一个供应商已多次输入,
-Sample,样本,
 Sample Collection,样品收集,
 Sample quantity {0} cannot be more than received quantity {1},采样数量{0}不能超过接收数量{1},
 Sanctioned,核准,
 Sand,砂,
 Saturday,星期六,
-Saved,已保存,
 Saving {0},保存{0},
 Scan Barcode,扫条码,
 Schedule,计划任务,
@@ -2463,7 +2429,6 @@
 Series Updated,系列已更新,
 Series Updated Successfully,系列已成功更新,
 Series is mandatory,系列是必须项,
-Series {0} already used in {1},系列{0}已经被{1}使用,
 Service,服务,
 Service Level Agreement,服务水平协议,
 Service Level Agreement.,服务水平协议。,
@@ -2479,7 +2444,6 @@
 Set Tax Rule for shopping cart,为购物车设置税收规则,
 Set as Closed,设置为关闭,
 Set as Completed,设为已完成,
-Set as Default,设置为默认,
 Set as Lost,设置为输,
 Set as Open,设置为打开,
 Set default inventory account for perpetual inventory,设置永续库存模式下的默认库存科目,
@@ -2511,7 +2475,6 @@
 Shareholder,股东,
 Ship To State,送到州,
 Shipments,运输,
-Shipping,运输中,
 Shipping Address,销售出货地址,
 "Shipping Address does not have country, which is required for this Shipping Rule",销售出货地址没有国家，这是运输规则所必需的,
 Shipping rule only applicable for Buying,运费规则只适用于采购,
@@ -2564,7 +2527,6 @@
 Split Batch,拆分批,
 Split Issue,拆分问题,
 Sports,体育,
-Standard,标准,
 Standard Buying,标准采购,
 Standard Selling,标准销售,
 Standard contract terms for Sales or Purchase.,销售或采购的标准合同条款。,
@@ -2731,7 +2693,6 @@
 Terms and Conditions,条款和条件,
 Terms and Conditions Template,条款和条件模板,
 Territory,区域,
-Test,测试,
 Thank you for your business!,感谢您的业务！,
 The 'From Package No.' field must neither be empty nor it's value less than 1.,“From Package No.”字段不能为空，也不能小于1。,
 The Brand,你的品牌,
@@ -2848,7 +2809,6 @@
 Total (Without Tax),总计（不含税）,
 Total Achieved,总体上实现的,
 Total Actual,实际总和,
-Total Allocated Leaves,合计已分配休假天数,
 Total Amount,总金额,
 Total Amount Credited,记入贷方的总金额,
 Total Applicable Charges in Purchase Receipt Items table must be same as Total Taxes and Charges,基于采购收货单信息计算的总税费必须与采购单（单头）的总税费一致,
@@ -2892,7 +2852,6 @@
 Total(Amt),共（AMT）,
 Total(Qty),总计（数量）,
 Traceability,可追溯性,
-Traceback,回溯,
 Track Leads by Lead Source.,通过线索来源进行追踪。,
 Transaction,交易,
 Transaction Date,交易日期,
@@ -2930,7 +2889,6 @@
 UOM Conversion factor is required in row {0},行{0}计量单位换算系数是必须项,
 UOM coversion factor required for UOM: {0} in Item: {1},物料{1}的计量单位{0}需要单位换算系数,
 URL,网址,
-Unable to find DocType {0},无法找到DocType {0},
 Unable to find exchange rate for {0} to {1} for key date {2}. Please create a Currency Exchange record manually,无法为关键日期{2}查找{0}到{1}的汇率。请手动创建汇率记录,
 Unable to find score starting at {0}. You need to have standing scores covering 0 to 100,无法从{0}开始获得分数。你需要有0到100的常规分数,
 Unable to find variable: ,无法找到变量：,
@@ -2960,7 +2918,6 @@
 Upload your letter head and logo. (you can edit them later).,上传你的信头和logo。(您可以在以后对其进行编辑）。,
 Upper Income,高收入,
 Use Sandbox,使用沙盒,
-Used Leaves,已休假(天数),
 User,用户,
 User ID,用户ID,
 User ID not set for Employee {0},员工设置{0}为设置用户ID,
@@ -3051,7 +3008,6 @@
 Website Settings,网站设置,
 Wednesday,星期三,
 Week,周,
-Weekdays,工作日,
 Weekly,每周,
 "Weight is mentioned,\nPlease mention ""Weight UOM"" too",重量被提及，\n请注明“重量计量单位”,
 Welcome email sent,欢迎电子邮件已发送,
@@ -3072,7 +3028,6 @@
 Work Order {0} must be submitted,必须提交工单{0},
 Work Orders Created: {0},创建的工单：{0},
 Work-in-Progress Warehouse is required before Submit,提交前需要指定在制品仓库,
-Workflow,工作流程,
 Working,工作,
 Working Hours,工作时间,
 Workstation,工作站,
@@ -3102,7 +3057,6 @@
 You need to be a user other than Administrator with System Manager and Item Manager roles to register on Marketplace.,您需要是Administrator以外的System Manager和Item Manager角色的用户才能在Marketplace上注册。,
 You need to be a user with System Manager and Item Manager roles to add users to Marketplace.,您需要是具有System Manager和Item Manager角色的用户才能将用户添加到Marketplace。,
 You need to be a user with System Manager and Item Manager roles to register on Marketplace.,您需要是具有System Manager和Item Manager角色的用户才能在Marketplace上注册。,
-You need to be logged in to access this page,您需要登录才能访问该页面,
 You need to enable Shopping Cart,您需要启用购物车,
 You will lose records of previously generated invoices. Are you sure you want to restart this subscription?,您将失去先前生成的费用清单记录。您确定要重新启用此订阅吗？,
 Your Organization,你的组织,
@@ -3218,7 +3172,6 @@
 Assigned To,已分配给,
 Chat,聊天,
 Completed By,由...完成,
-County,县,
 Day of Week,星期几,
 "Dear System Manager,",亲爱的系统管理经理，,
 Default Value,默认值,
@@ -3229,31 +3182,21 @@
 Fieldtype,字段类型,
 Help Articles,帮助文章,
 ID,ID,
-Images,图片,
 Import,导入,
 Language,语言,
 Likes,喜欢,
 Merge with existing,与现有合并,
-Office,办公室,
 Orientation,方向,
 Parent,上级,
-Passive,被动,
 Payment Failed,支付失败,
-Permanent,常驻,
 Personal,个人,
-Plant,厂,
 Post,发送,
-Postal,邮政,
 Postal Code,邮政编码,
-Previous,以前,
 Provider,提供商,
 Read Only,只读,
 Recipient,收件人,
 Reviews,评测,
 Sender,发件人,
-Shop,商店,
-Subsidiary,子机构,
-There is some problem with the file url: {0},有一些问题与文件的URL：{0},
 There were errors while sending email. Please try again.,邮件发送曾发生错误，请重试。,
 Values Changed,值已更改,
 or,或,
@@ -3286,12 +3229,10 @@
 Annual,全年,
 Change,变化,
 Contact Email,联络人电邮,
-Export Type,导出类型,
 From Date,起始日期,
 Group By,通过...分组,
 Invalid URL,无效的网址,
 Landscape,景观,
-Last Sync On,上次同步开启,
 Naming Series,名录,
 No data to export,没有要导出的数据,
 Portrait,肖像,
@@ -3301,7 +3242,6 @@
 Show Document,显示文件,
 Show Traceback,显示回溯,
 Video,视频,
-Webhook Secret,Webhook的秘密,
 % Of Grand Total,占总数的百分比,
 <b>Company</b> is a mandatory filter.,<b>公司</b>是强制性过滤器。,
 <b>From Date</b> is a mandatory filter.,<b>“起始日期”</b>是强制性过滤器。,
@@ -3357,7 +3297,6 @@
 BOM Comparison Tool,BOM比较工具,
 BOM recursion: {0} cannot be child of {1},BOM递归：{0}不能是{1}的子代,
 BOM recursion: {0} cannot be parent or child of {1},BOM递归：{0}不能是{1}的父级或子级,
-Back to Home,回到主页,
 Back to Messages,回到消息,
 Bank Data mapper doesn't exist,银行数据映射器不存在,
 Bank Details,银行明细,
@@ -3419,7 +3358,6 @@
 Currency,货币,
 Current Status,现状,
 Customer PO,客户PO,
-Customize,定制,
 Daily,每日,
 Date,日期,
 Date of Birth cannot be greater than Joining Date.,出生日期不能大于加入日期。,
@@ -3453,7 +3391,6 @@
 ERPNext could not find any matching payment entry,ERPNext找不到任何匹配的付款条目,
 Earliest Age,最早年龄,
 Edit Details,编辑细节,
-Edit Profile,编辑个人资料,
 Either GST Transporter ID or Vehicle No is required if Mode of Transport is Road,如果运输方式为道路，则需要GST运输车ID或车辆号,
 Email,电子邮件,
 Email Campaigns,电邮广告系列,
@@ -3481,7 +3418,6 @@
 Fetch Items from Warehouse,从仓库中获取物品,
 Fetching...,正在获取...,
 Field,字段,
-File Manager,文件管理器,
 Filters,过滤器,
 Finding linked payments,查找关联付款,
 Fleet Management,车队的管理,
@@ -3520,7 +3456,6 @@
 Incorrect Warehouse,仓库不正确,
 Invalid Barcode. There is no Item attached to this barcode.,无效的条形码。该条形码没有附件。,
 Invalid credentials,无效证件,
-Invite as User,邀请成为用户,
 Issue Priority.,问题优先。,
 Issue Type.,问题类型。,
 "It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.",看起来服务器的条带配置存在问题。如果失败，这笔款项将退还给您的账户。,
@@ -3563,7 +3498,6 @@
 New Invoice,新发票,
 New Payment,新付款,
 New release date should be in the future,新的发布日期应该是将来的,
-Newsletter,通讯,
 No Account matched these filters: {},没有帐户符合这些过滤条件：{},
 No communication found.,没有找到通讯。,
 No correct answer is set for {0},没有为{0}设置正确答案,
@@ -3639,7 +3573,6 @@
 Please setup a default bank account for company {0},请为公司{0}设置默认银行帐户,
 Please specify,请注明,
 Please specify a {0},请指定一个{0},lead
-Printing,打印,
 Priority,优先,
 Priority has been changed to {0}.,优先级已更改为{0}。,
 Priority {0} has been repeated.,优先级{0}已重复。,
@@ -3648,7 +3581,6 @@
 Project,项目,
 Provide the academic year and set the starting and ending date.,提供学年并设置开始和结束日期。,
 Public token is missing for this bank,此银行缺少公共令牌,
-Publish,发布,
 Publish 1 Item,发布1项,
 Publish Items,发布项目,
 Publish More Items,发布更多项目,
@@ -3676,7 +3608,6 @@
 Reconciled,不甘心,
 Recruitment,招聘,
 Red,红,
-Refreshing,正在刷新...,
 Release date must be in the future,发布日期必须在将来,
 Relieving Date must be greater than or equal to Date of Joining,取消日期必须大于或等于加入日期,
 Rename,重命名,
@@ -3720,7 +3651,6 @@
 Search for a payment,搜索付款,
 Search for anything ...,搜索任何东西......,
 Search results for,为。。。。寻找结果,
-Select All,全选,
 Select Difference Account,选择差异账户,
 Select a Default Priority.,选择默认优先级。,
 Select a company,选择一家公司,
@@ -3739,11 +3669,9 @@
 Service Level Agreement has been changed to {0}.,服务水平协议已更改为{0}。,
 Service Level Agreement was reset.,服务水平协议已重置。,
 Service Level Agreement with Entity Type {0} and Entity {1} already exists.,与实体类型{0}和实体{1}的服务水平协议已存在。,
-Set,设置,
 Set Meta Tags,设置元标记,
 Set {0} in company {1},在公司{1}中设置{0},
 Setup,设置,
-Setup Wizard,设置向导,
 Shift Management,班别管理,
 Show Future Payments,显示未来付款,
 Show Linked Delivery Notes,显示链接的交货单,
@@ -3814,7 +3742,6 @@
 Unreconciled,未调节,
 Unsupported GST Category for E-Way Bill JSON generation,用于e-Way Bill JSON生成的不支持的GST类别,
 Update,更新,
-Update Details,更新详情,
 Update Taxes for Items,更新项目税金,
 "Upload a bank statement, link or reconcile a bank account",上传银行对帐单，关联或核对银行帐户,
 Upload a statement,上传声明,
@@ -3838,7 +3765,6 @@
 XML Files Processed,处理的XML文件,
 Year,年,
 Yearly,每年,
-You,你,
 You are not allowed to enroll for this course,您无权注册此课程,
 You are not enrolled in program {0},您尚未加入计划{0},
 You can Feature upto 8 items.,最多可以包含8个项目。,
@@ -3855,7 +3781,6 @@
 e-Way Bill already exists for this document,e-Way Bill已存在于本文件中,
 woocommerce - {0},woocommerce-{0},
 {0} Coupon used are {1}. Allowed quantity is exhausted,{0}使用的优惠券是{1}。允许数量已耗尽,
-{0} Name,{0}名称,
 {0} Operations: {1},{0}操作：{1},
 {0} bank transaction(s) created,创建了{0}银行交易,
 {0} bank transaction(s) created and {1} errors,创建了{0}个银行交易和{1}个错误,
@@ -3874,17 +3799,13 @@
 Total Income,总收入,
 Total Income This Year,今年总收入,
 Barcode,条码,
-Bold,胆大,
-Center,中心,
 Clear,明确,
-Comment,评论,
 Comments,评论,
 DocType,DocType,
 Download,下载,
 Left,左边,
 Link,链接,
 New,新,
-Not Found,未找到,
 Print,打印,
 Reference Name,参考名称,
 Refresh,刷新,
@@ -3907,7 +3828,6 @@
 Email Id,电子邮件ID,
 No,No,
 Reference Doctype,参考文档类型,
-User Id,用户身份,
 Yes,是,
 Actual ,实际数据,
 Add to cart,加入购物车,
@@ -4303,7 +4223,6 @@
 e.g Adjustments for:,例如调整：,
 Section Subtotal,部分小计,
 Section Footer,章节页脚,
-Position,位置,
 Cash Flow Mapping,现金流量映射,
 Select Maximum Of 1,选择最多1个,
 Is Finance Cost,财务成本,
@@ -4935,7 +4854,6 @@
 Previous Business Day,前一个营业日,
 Next Business Day,下一个营业日,
 Urgent,加急,
-Crop,作物,
 Crop Name,作物名称,
 Scientific Name,科学名称,
 "You can define all the tasks which need to carried out for this crop here. The day field is used to mention the day on which the task needs to be carried out, 1 being the 1st day, etc.. ",你可以在这里定义所有需要进行的作业。日场是用来提及任务需要执行的日子，1日是第一天等。,
@@ -5440,7 +5358,6 @@
 To TIme,要时间,
 Course End Date,课程结束日期,
 Course Topic,课程主题,
-Topic,话题,
 Topic Name,主题名称,
 Education Settings,教育设置,
 Current Academic Year,当前学年,
@@ -5515,7 +5432,6 @@
 Check this if the Student is residing at the Institute's Hostel.,如果学生住在学院的旅馆，勾选此项。,
 Walking,步行,
 Institute's Bus,学院的巴士,
-Public Transport,公共交通,
 Self-Driving Vehicle,自驾车,
 Pick/Drop by Guardian,由守护者选择,
 Enrolled courses,入学课程,
@@ -5696,7 +5612,6 @@
 Default Cost Center,默认成本中心,
 Undeposited Funds Account,未存入资金账户,
 Shopify Log,Shopify日志,
-Request Data,请求数据,
 Shopify Settings,Shopify设置,
 status html,状态HTML,
 Enable Shopify,启用Shopify,
@@ -5816,7 +5731,6 @@
 Exercise Instructions,练习说明,
 Exercise Video,运动视频,
 Exercise Steps,锻炼步骤,
-Steps,脚步,
 Steps Table,步骤表,
 Exercise Type Step,运动类型步骤,
 Max number of visit,最大访问次数,
@@ -6000,7 +5914,6 @@
 Patient Encounter Symptom,病人遭遇症状,
 HLC-PMR-.YYYY.-,HLC-PMR-.YYYY.-,
 Attach Medical Record,附加病历,
-Reference DocType,参考文档类型,
 Spouse,配偶,
 Family,家庭,
 Schedule Details,时间表详情,
@@ -6982,16 +6895,8 @@
 HTML / Banner that will show on the top of product list.,HTML或横幅，将显示在产品列表的顶部。,
 Set prefix for numbering series on your transactions,为交易设置编号系列的前缀,
 Setup Series,设置系列,
-Select Transaction,选择交易,
-Help HTML,HTML帮助,
-Series List for this Transaction,此交易的系列列表,
-User must always select,用户必须始终选择,
-Check this if you want to force the user to select a series before saving. There will be no default if you check this.,要用户手动选择序列的话请勾选。勾选此项后将不会选择默认序列。,
 Update Series,更新系列,
 Change the starting / current sequence number of an existing series.,更改现有系列的起始/当前序列号。,
-Prefix,字首,
-This is the number of the last created transaction with this prefix,这就是以这个前缀的最后一个创建的事务数,
-Update Series Number,更新序列号,
 Quotation Lost Reason,报价遗失原因,
 A third party distributor / dealer / commission agent / affiliate / reseller who sells the companies products for a commission.,被授权销售公司产品以赚取佣金的第三方分销商/经销商/授权代理商/分支机构/转销商,
 Sales Partner Name,销售合作伙伴名称,
@@ -7686,7 +7591,6 @@
 Warehouse wise Item Balance Age and Value,仓库级物料库龄和金额报表,
 Work Order Stock Report,工单库存报表,
 Work Orders in Progress,工单正在进行中,
-Validation Error,验证错误,
 Automatically Process Deferred Accounting Entry,自动处理递延会计分录,
 Bank Clearance,银行清算,
 Bank Clearance Detail,银行清算详细信息,
@@ -7723,45 +7627,7 @@
 Therapy Plan: ,治疗计划：,
 Total Counts Targeted: ,目标总数：,
 Total Counts Completed: ,已完成的总数：,
-Andaman and Nicobar Islands,安达曼和尼科巴群岛,
-Andhra Pradesh,安德拉邦,
-Arunachal Pradesh,阿鲁纳恰尔邦,
-Assam,阿萨姆邦,
-Bihar,比哈尔,
-Chandigarh,昌迪加尔,
-Chhattisgarh,恰蒂斯加尔邦,
-Dadra and Nagar Haveli,达德拉和纳加尔·哈维里,
-Daman and Diu,达曼和丢,
-Delhi,新德里,
-Goa,果阿,
-Gujarat,古吉拉特邦,
-Haryana,哈里亚纳邦,
-Himachal Pradesh,喜马al尔邦,
-Jammu and Kashmir,查mu和克什米尔,
-Jharkhand,贾坎德邦,
-Karnataka,卡纳塔克邦,
-Kerala,喀拉拉邦,
-Lakshadweep Islands,拉克肖普群岛,
-Madhya Pradesh,中央邦,
-Maharashtra,马哈拉施特拉邦,
-Manipur,马尼布尔,
-Meghalaya,梅加拉亚邦,
-Mizoram,咪唑仑,
-Nagaland,那加兰邦,
-Odisha,奥迪沙,
-Other Territory,其他地区,
-Pondicherry,朋迪榭里,
-Punjab,旁遮普语,
-Rajasthan,拉贾斯坦邦,
-Sikkim,锡金,
-Tamil Nadu,泰米尔纳德邦,
-Telangana,Telangana,
-Tripura,特里普拉,
-Uttar Pradesh,北方邦,
-Uttarakhand,北阿坎德邦,
-West Bengal,西孟加拉邦,
 Is Mandatory,是强制性的,
-Published on,发表于,
 Service Received But Not Billed,服务已收到但未计费,
 Deferred Accounting Settings,递延会计设置,
 Book Deferred Entries Based On,基于的图书递延分录,
@@ -8034,8 +7900,6 @@
 Worksheet Instructions,工作表说明,
 Result Legend Print,结果图例打印,
 Print Position,打印位置,
-Bottom,底部,
-Top,最佳,
 Both,都,
 Result Legend,结果图例,
 Lab Tests,实验室测试,
@@ -8080,12 +7944,10 @@
 Approvers,批准人,
 The first Approver in the list will be set as the default Approver.,列表中的第一个批准人将被设置为默认批准人。,
 Shift Request Approver,轮班请求批准人,
-PAN Number,PAN号码,
 Provident Fund Account,公积金帐户,
 MICR Code,MICR代码,
 Repay unclaimed amount from salary,从工资中偿还无人认领的金额,
 Deduction from salary,从工资中扣除,
-Expired Leaves,过期的叶子,
 If this is not checked the loan by default will be considered as a Demand Loan,如果未选中此选项，则默认情况下该贷款将被视为需求贷款,
 This account is used for booking loan repayments from the borrower and also disbursing loans to the borrower,此帐户用于预订借款人的还款，也用于向借款人发放贷款,
 This account is capital account which is used to allocate capital for loan disbursal account ,该帐户是资本帐户，用于为贷款支付帐户分配资本,
@@ -8843,3 +8705,41 @@
 Creating Purchase Order ...,创建采购订单...,
 "Select a Supplier from the Default Suppliers of the items below. On selection, a Purchase Order will be made against items belonging to the selected Supplier only.",从以下各项的默认供应商中选择供应商。选择后，将针对仅属于所选供应商的项目下达采购订单。,
 Row #{}: You must select {} serial numbers for item {}.,行号{}：您必须为项目{}选择{}序列号。,
+Add Comment,添加评论,
+More...,更多...,
+Notes,便签,
+Payment Gateway,支付网关,
+Payment Gateway Name,支付网关名称,
+Payments,付款,
+Plan Name,计划名称,
+Portal,门户,
+Scan Barcode,扫条码,
+Some information is missing,一些信息缺失,
+Successful,成功,
+Tools,工具,
+Use Sandbox,使用沙盒,
+Busy,忙,
+Completed By,由...完成,
+Payment Failed,支付失败,
+Column {0},列{0},
+Field Mapping,场图,
+Not Specified,未标明,
+Update Type,更新类型,
+Dr,借方,
+End Time,结束时间,
+Fetching...,正在获取...,
+"It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.",看起来服务器的条带配置存在问题。如果失败，这笔款项将退还给您的账户。,
+Looks like someone sent you to an incomplete URL. Please ask them to look into it.,貌似有人送你一个不完整的URL。请让他们寻找到它。,
+Master,大师,
+Pay,支付,
+You can also copy-paste this link in your browser,您也可以复制粘贴此链接到您的浏览器地址栏中,
+Verified By,认证,
+Invalid naming series (. missing) for {0},{0}的无效命名系列（。丢失）,
+Phone Number,电话号码,
+Account SID,帐户SID,
+Global Defaults,全局默认值,
+Is Mandatory,是强制性的,
+WhatsApp,WhatsApp的,
+Make a call,打个电话,
+Approve,同意,
+Reject,拒绝,
diff --git a/erpnext/utilities/product.py b/erpnext/utilities/product.py
index afe9654..e967f70 100644
--- a/erpnext/utilities/product.py
+++ b/erpnext/utilities/product.py
@@ -6,6 +6,7 @@
 
 from erpnext.accounts.doctype.pricing_rule.pricing_rule import get_pricing_rule_for_item
 from erpnext.stock.doctype.batch.batch import get_batch_qty
+from erpnext.stock.doctype.warehouse.warehouse import get_child_warehouses
 
 
 def get_web_item_qty_in_stock(item_code, item_warehouse_field, warehouse=None):
@@ -22,23 +23,31 @@
 			"Website Item", {"item_code": template_item_code}, item_warehouse_field
 		)
 
-	if warehouse:
-		stock_qty = frappe.db.sql(
-			"""
-			select GREATEST(S.actual_qty - S.reserved_qty - S.reserved_qty_for_production - S.reserved_qty_for_sub_contract, 0) / IFNULL(C.conversion_factor, 1)
-			from tabBin S
-			inner join `tabItem` I on S.item_code = I.Item_code
-			left join `tabUOM Conversion Detail` C on I.sales_uom = C.uom and C.parent = I.Item_code
-			where S.item_code=%s and S.warehouse=%s""",
-			(item_code, warehouse),
-		)
+	if warehouse and frappe.get_cached_value("Warehouse", warehouse, "is_group") == 1:
+		warehouses = get_child_warehouses(warehouse)
+	else:
+		warehouses = [warehouse] if warehouse else []
 
-		if stock_qty:
-			stock_qty = adjust_qty_for_expired_items(item_code, stock_qty, warehouse)
-			in_stock = stock_qty[0][0] > 0 and 1 or 0
+	total_stock = 0.0
+	if warehouses:
+		for warehouse in warehouses:
+			stock_qty = frappe.db.sql(
+				"""
+				select GREATEST(S.actual_qty - S.reserved_qty - S.reserved_qty_for_production - S.reserved_qty_for_sub_contract, 0) / IFNULL(C.conversion_factor, 1)
+				from tabBin S
+				inner join `tabItem` I on S.item_code = I.Item_code
+				left join `tabUOM Conversion Detail` C on I.sales_uom = C.uom and C.parent = I.Item_code
+				where S.item_code=%s and S.warehouse=%s""",
+				(item_code, warehouse),
+			)
+
+			if stock_qty:
+				total_stock += adjust_qty_for_expired_items(item_code, stock_qty, warehouse)
+
+		in_stock = total_stock > 0 and 1 or 0
 
 	return frappe._dict(
-		{"in_stock": in_stock, "stock_qty": stock_qty, "is_stock_item": is_stock_item}
+		{"in_stock": in_stock, "stock_qty": total_stock, "is_stock_item": is_stock_item}
 	)
 
 
@@ -56,7 +65,7 @@
 		if not stock_qty[0][0]:
 			break
 
-	return stock_qty
+	return stock_qty[0][0] if stock_qty else 0
 
 
 def get_expired_batches(batches):
diff --git a/pyproject.toml b/pyproject.toml
index 7841c92..604aa44 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -16,11 +16,9 @@
     "holidays~=0.28",
 
     # integration dependencies
-    "gocardless-pro~=1.22.0",
     "googlemaps",
     "plaid-python~=7.2.1",
     "python-youtube~=0.8.0",
-    "tweepy~=4.14.0",
 
     # Not used directly - required by PyQRCode for PNG generation
     "pypng~=0.20220715.0",
