diff --git a/.github/helper/install.sh b/.github/helper/install.sh
index f0f83b0..2bb950f 100644
--- a/.github/helper/install.sh
+++ b/.github/helper/install.sh
@@ -2,13 +2,6 @@
 
 set -e
 
-# Check for merge conflicts before proceeding
-python -m compileall -f "${GITHUB_WORKSPACE}"
-if grep -lr --exclude-dir=node_modules "^<<<<<<< " "${GITHUB_WORKSPACE}"
-    then echo "Found merge conflicts"
-    exit 1
-fi
-
 cd ~ || exit
 
 sudo apt update && sudo apt install redis-server libcups2-dev
@@ -63,6 +56,7 @@
 sed -i 's/socketio:/# socketio:/g' Procfile
 sed -i 's/redis_socketio:/# redis_socketio:/g' Procfile
 
+bench get-app payments
 bench get-app erpnext "${GITHUB_WORKSPACE}"
 
 if [ "$TYPE" == "server" ]; then bench setup requirements --dev; fi
diff --git a/.github/workflows/patch.yml b/.github/workflows/patch.yml
index a71db72..4d2dc58 100644
--- a/.github/workflows/patch.yml
+++ b/.github/workflows/patch.yml
@@ -34,6 +34,14 @@
       - name: Clone
         uses: actions/checkout@v2
 
+      - name: Check for valid Python & Merge Conflicts
+        run: |
+          python -m compileall -f "${GITHUB_WORKSPACE}"
+          if grep -lr --exclude-dir=node_modules "^<<<<<<< " "${GITHUB_WORKSPACE}"
+              then echo "Found merge conflicts"
+              exit 1
+          fi
+
       - name: Setup Python
         uses: "gabrielfalcao/pyenv-action@v9"
         with:
@@ -105,7 +113,6 @@
               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
 
@@ -114,6 +121,7 @@
 
               rm -rf ~/frappe-bench/env
               bench setup env
+              bench pip install -e ./apps/payments
               bench pip install -e ./apps/erpnext
 
               bench --site test_site migrate
@@ -127,6 +135,8 @@
           pyenv global $(pyenv versions | grep '3.10')
           rm -rf ~/frappe-bench/env
           bench -v setup env
+          bench pip install -e ./apps/payments
           bench pip install -e ./apps/erpnext
 
           bench --site test_site migrate
+          bench --site test_site install-app payments
diff --git a/.github/workflows/server-tests-mariadb.yml b/.github/workflows/server-tests-mariadb.yml
index f65cb46..64134bc 100644
--- a/.github/workflows/server-tests-mariadb.yml
+++ b/.github/workflows/server-tests-mariadb.yml
@@ -61,6 +61,14 @@
         with:
           python-version: '3.10'
 
+      - name: Check for valid Python & Merge Conflicts
+        run: |
+          python -m compileall -f "${GITHUB_WORKSPACE}"
+          if grep -lr --exclude-dir=node_modules "^<<<<<<< " "${GITHUB_WORKSPACE}"
+              then echo "Found merge conflicts"
+              exit 1
+          fi
+
       - name: Setup Node
         uses: actions/setup-node@v2
         with:
diff --git a/.github/workflows/server-tests-postgres.yml b/.github/workflows/server-tests-postgres.yml
index 53a94db..651c935 100644
--- a/.github/workflows/server-tests-postgres.yml
+++ b/.github/workflows/server-tests-postgres.yml
@@ -48,6 +48,14 @@
         with:
           python-version: '3.10'
 
+      - name: Check for valid Python & Merge Conflicts
+        run: |
+          python -m compileall -f "${GITHUB_WORKSPACE}"
+          if grep -lr --exclude-dir=node_modules "^<<<<<<< " "${GITHUB_WORKSPACE}"
+              then echo "Found merge conflicts"
+              exit 1
+          fi
+
       - name: Setup Node
         uses: actions/setup-node@v2
         with:
@@ -90,7 +98,6 @@
           restore-keys: |
             ${{ runner.os }}-yarn-
 
-
       - name: Install
         run: bash ${GITHUB_WORKSPACE}/.github/helper/install.sh
         env:
diff --git a/erpnext/accounts/doctype/payment_request/payment_request.py b/erpnext/accounts/doctype/payment_request/payment_request.py
index 5264987..29c4978 100644
--- a/erpnext/accounts/doctype/payment_request/payment_request.py
+++ b/erpnext/accounts/doctype/payment_request/payment_request.py
@@ -6,10 +6,10 @@
 
 import frappe
 from frappe import _
-from frappe.integrations.utils import get_payment_gateway_controller
 from frappe.model.document import Document
 from frappe.utils import flt, get_url, nowdate
 from frappe.utils.background_jobs import enqueue
+from payments.utils import get_payment_gateway_controller
 
 from erpnext.accounts.doctype.payment_entry.payment_entry import (
 	get_company_defaults,
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 3dca588..e9ed2e4 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
@@ -114,7 +114,7 @@
 			(pcv.name),
 		)
 
-		self.assertEqual(pcv_gle, expected_gle)
+		self.assertSequenceEqual(pcv_gle, expected_gle)
 
 		pcv.reload()
 		pcv.cancel()
@@ -175,7 +175,7 @@
 			(pcv.name),
 		)
 
-		self.assertEqual(pcv_gle, expected_gle)
+		self.assertSequenceEqual(pcv_gle, expected_gle)
 
 	def make_period_closing_voucher(self, submit=True):
 		surplus_account = create_account()
diff --git a/erpnext/accounts/doctype/purchase_invoice/purchase_invoice.py b/erpnext/accounts/doctype/purchase_invoice/purchase_invoice.py
index 775d255..de3927e 100644
--- a/erpnext/accounts/doctype/purchase_invoice/purchase_invoice.py
+++ b/erpnext/accounts/doctype/purchase_invoice/purchase_invoice.py
@@ -162,6 +162,7 @@
 		if tds_category and not for_validate:
 			self.apply_tds = 1
 			self.tax_withholding_category = tds_category
+			self.set_onload("supplier_tds", tds_category)
 
 		super(PurchaseInvoice, self).set_missing_values(for_validate)
 
diff --git a/erpnext/accounts/doctype/sales_invoice/sales_invoice.json b/erpnext/accounts/doctype/sales_invoice/sales_invoice.json
index 17dd804..1c9d3fb 100644
--- a/erpnext/accounts/doctype/sales_invoice/sales_invoice.json
+++ b/erpnext/accounts/doctype/sales_invoice/sales_invoice.json
@@ -412,7 +412,7 @@
   },
   {
    "default": "0",
-   "depends_on": "eval: doc.is_return && doc.return_against",
+   "depends_on": "eval: doc.is_return",
    "fieldname": "update_billed_amount_in_sales_order",
    "fieldtype": "Check",
    "hide_days": 1,
@@ -2022,7 +2022,7 @@
    "link_fieldname": "consolidated_invoice"
   }
  ],
- "modified": "2022-06-16 16:22:44.870575",
+ "modified": "2022-07-11 17:43:56.435382",
  "modified_by": "Administrator",
  "module": "Accounts",
  "name": "Sales Invoice",
diff --git a/erpnext/accounts/report/accounts_payable/accounts_payable.js b/erpnext/accounts/report/accounts_payable/accounts_payable.js
index f6961eb..7cf14e6 100644
--- a/erpnext/accounts/report/accounts_payable/accounts_payable.js
+++ b/erpnext/accounts/report/accounts_payable/accounts_payable.js
@@ -136,6 +136,11 @@
 			"label": __("Tax Id"),
 			"fieldtype": "Data",
 			"hidden": 1
+		},
+		{
+			"fieldname": "show_future_payments",
+			"label": __("Show Future Payments"),
+			"fieldtype": "Check",
 		}
 	],
 
diff --git a/erpnext/accounts/report/accounts_receivable/accounts_receivable.py b/erpnext/accounts/report/accounts_receivable/accounts_receivable.py
index 411b313..c7c746b 100755
--- a/erpnext/accounts/report/accounts_receivable/accounts_receivable.py
+++ b/erpnext/accounts/report/accounts_receivable/accounts_receivable.py
@@ -164,6 +164,8 @@
 			"range3",
 			"range4",
 			"range5",
+			"future_amount",
+			"remaining_balance"
 		]
 
 	def get_voucher_balance(self, ple):
@@ -545,7 +547,7 @@
 				jea.party,
 				jea.party_type,
 				je.posting_date as future_date,
-				sum({0}) as future_amount,
+				sum('{0}') as future_amount,
 				je.cheque_no as future_ref
 			from
 				`tabJournal Entry` as je inner join `tabJournal Entry Account` as jea
diff --git a/erpnext/assets/doctype/asset/test_asset.py b/erpnext/assets/doctype/asset/test_asset.py
index 34d374c..986b700 100644
--- a/erpnext/assets/doctype/asset/test_asset.py
+++ b/erpnext/assets/doctype/asset/test_asset.py
@@ -133,7 +133,7 @@
 			order by account""",
 			pi.name,
 		)
-		self.assertEqual(gle, expected_gle)
+		self.assertSequenceEqual(gle, expected_gle)
 
 		pi.cancel()
 		asset.cancel()
@@ -208,7 +208,7 @@
 			order by account""",
 			asset.journal_entry_for_scrap,
 		)
-		self.assertEqual(gle, expected_gle)
+		self.assertSequenceEqual(gle, expected_gle)
 
 		restore_asset(asset.name)
 
@@ -253,7 +253,7 @@
 			si.name,
 		)
 
-		self.assertEqual(gle, expected_gle)
+		self.assertSequenceEqual(gle, expected_gle)
 
 		si.cancel()
 		self.assertEqual(frappe.db.get_value("Asset", asset.name, "status"), "Partially Depreciated")
@@ -361,7 +361,7 @@
 			pr.name,
 		)
 
-		self.assertEqual(pr_gle, expected_gle)
+		self.assertSequenceEqual(pr_gle, expected_gle)
 
 		pi = make_invoice(pr.name)
 		pi.submit()
@@ -381,7 +381,7 @@
 			pi.name,
 		)
 
-		self.assertEqual(pi_gle, expected_gle)
+		self.assertSequenceEqual(pi_gle, expected_gle)
 
 		asset = frappe.db.get_value("Asset", {"purchase_receipt": pr.name, "docstatus": 0}, "name")
 
@@ -414,7 +414,7 @@
 			asset_doc.name,
 		)
 
-		self.assertEqual(gle, expected_gle)
+		self.assertSequenceEqual(gle, expected_gle)
 
 	def test_asset_cwip_toggling_cases(self):
 		cwip = frappe.db.get_value("Asset Category", "Computers", "enable_cwip_accounting")
@@ -1287,7 +1287,7 @@
 			asset.name,
 		)
 
-		self.assertEqual(gle, expected_gle)
+		self.assertSequenceEqual(gle, expected_gle)
 		self.assertEqual(asset.get("value_after_depreciation"), 0)
 
 	def test_expected_value_change(self):
diff --git a/erpnext/assets/doctype/asset_value_adjustment/test_asset_value_adjustment.py b/erpnext/assets/doctype/asset_value_adjustment/test_asset_value_adjustment.py
index ebeb174..62c6366 100644
--- a/erpnext/assets/doctype/asset_value_adjustment/test_asset_value_adjustment.py
+++ b/erpnext/assets/doctype/asset_value_adjustment/test_asset_value_adjustment.py
@@ -91,7 +91,7 @@
 			adj_doc.journal_entry,
 		)
 
-		self.assertEqual(gle, expected_gle)
+		self.assertSequenceEqual(gle, expected_gle)
 
 
 def make_asset_value_adjustment(**args):
diff --git a/erpnext/crm/doctype/lead/lead.js b/erpnext/crm/doctype/lead/lead.js
index 37fb350..b98a27e 100644
--- a/erpnext/crm/doctype/lead/lead.js
+++ b/erpnext/crm/doctype/lead/lead.js
@@ -54,7 +54,6 @@
 			frappe.contacts.clear_address_and_contact(this.frm);
 		}
 
-		this.frm.dashboard.links_area.hide();
 		this.show_notes();
 		this.show_activities();
 	}
diff --git a/erpnext/crm/doctype/lead/lead.json b/erpnext/crm/doctype/lead/lead.json
index d47373f..c946ae4 100644
--- a/erpnext/crm/doctype/lead/lead.json
+++ b/erpnext/crm/doctype/lead/lead.json
@@ -74,7 +74,8 @@
   "all_activities_html",
   "notes_tab",
   "notes_html",
-  "notes"
+  "notes",
+  "dashboard_tab"
  ],
  "fields": [
   {
@@ -337,9 +338,10 @@
   },
   {
    "fieldname": "no_of_employees",
-   "fieldtype": "Int",
-   "label": "No. of Employees"
-  },
+   "fieldtype": "Select",
+   "label": "No of Employees",
+   "options": "1-10\n11-20\n21-30\n31-100\n11-50\n51-200\n201-500\n101-500\n500-1000\n501-1000\n>1000\n1000+"
+  }, 
   {
    "fieldname": "column_break_22",
    "fieldtype": "Column Break"
@@ -500,13 +502,19 @@
    "fieldtype": "Link",
    "label": "Country",
    "options": "Country"
+  },
+  {
+   "fieldname": "dashboard_tab",
+   "fieldtype": "Tab Break",
+   "label": "Dashboard",
+   "show_dashboard": 1
   }
  ],
  "icon": "fa fa-user",
  "idx": 5,
  "image_field": "image",
  "links": [],
- "modified": "2022-06-27 21:56:17.392756",
+ "modified": "2022-07-22 15:55:03.176094",
  "modified_by": "Administrator",
  "module": "CRM",
  "name": "Lead",
diff --git a/erpnext/crm/doctype/opportunity/opportunity.js b/erpnext/crm/doctype/opportunity/opportunity.js
index c53ea9d..1f76a1a 100644
--- a/erpnext/crm/doctype/opportunity/opportunity.js
+++ b/erpnext/crm/doctype/opportunity/opportunity.js
@@ -84,7 +84,7 @@
 		erpnext.toggle_naming_series();
 
 		if(!frm.is_new() && doc.status!=="Lost") {
-			if(doc.with_items){
+			if(doc.items){
 				frm.add_custom_button(__('Supplier Quotation'),
 					function() {
 						frm.trigger("make_supplier_quotation")
diff --git a/erpnext/crm/doctype/opportunity/opportunity.json b/erpnext/crm/doctype/opportunity/opportunity.json
index 1a6f23b..68a2156 100644
--- a/erpnext/crm/doctype/opportunity/opportunity.json
+++ b/erpnext/crm/doctype/opportunity/opportunity.json
@@ -225,16 +225,12 @@
    "fieldname": "items_section",
    "fieldtype": "Tab Break",
    "label": "Items",
-   "oldfieldtype": "Section Break",
    "options": "fa fa-shopping-cart"
   },
   {
    "fieldname": "items",
    "fieldtype": "Table",
    "label": "Items",
-   "mandatory_depends_on": "eval: doc.with_items == 1",
-   "oldfieldname": "enquiry_details",
-   "oldfieldtype": "Table",
    "options": "Opportunity Item"
   },
   {
@@ -409,7 +405,6 @@
    "read_only": 1
   },
   {
-   "depends_on": "with_items",
    "fieldname": "section_break_32",
    "fieldtype": "Section Break",
    "hide_border": 1
@@ -466,8 +461,9 @@
   },
   {
    "fieldname": "no_of_employees",
-   "fieldtype": "Int",
-   "label": "No of Employees"
+   "fieldtype": "Select",
+   "label": "No of Employees",
+   "options": "1-10\n11-20\n21-30\n31-100\n11-50\n51-200\n201-500\n101-500\n500-1000\n501-1000\n>1000\n1000+"
   },
   {
    "fieldname": "annual_revenue",
@@ -626,7 +622,7 @@
  "icon": "fa fa-info-sign",
  "idx": 195,
  "links": [],
- "modified": "2022-06-27 18:44:32.858696",
+ "modified": "2022-07-22 18:46:32.858696",
  "modified_by": "Administrator",
  "module": "CRM",
  "name": "Opportunity",
diff --git a/erpnext/crm/doctype/prospect/prospect.json b/erpnext/crm/doctype/prospect/prospect.json
index afc6c1d..7f33c08 100644
--- a/erpnext/crm/doctype/prospect/prospect.json
+++ b/erpnext/crm/doctype/prospect/prospect.json
@@ -218,7 +218,7 @@
  ],
  "index_web_pages_for_search": 1,
  "links": [],
- "modified": "2022-06-21 15:10:26.887502",
+ "modified": "2022-06-22 15:10:26.887502",
  "modified_by": "Administrator",
  "module": "CRM",
  "name": "Prospect",
diff --git a/erpnext/crm/report/opportunity_summary_by_sales_stage/opportunity_summary_by_sales_stage.py b/erpnext/crm/report/opportunity_summary_by_sales_stage/opportunity_summary_by_sales_stage.py
index 3a46fb0..8093117 100644
--- a/erpnext/crm/report/opportunity_summary_by_sales_stage/opportunity_summary_by_sales_stage.py
+++ b/erpnext/crm/report/opportunity_summary_by_sales_stage/opportunity_summary_by_sales_stage.py
@@ -201,26 +201,21 @@
 	def get_chart_data(self):
 		labels = []
 		datasets = []
-		values = [0] * 8
-
-		for sales_stage in self.sales_stage_list:
-			labels.append(sales_stage)
+		values = [0] * len(self.sales_stage_list)
 
 		options = {"Number": "count", "Amount": "amount"}[self.filters.get("data_based_on")]
 
 		for data in self.query_result:
-			for count in range(len(values)):
-				if data["sales_stage"] == labels[count]:
+			for count in range(len(self.sales_stage_list)):
+				if data["sales_stage"] == self.sales_stage_list[count]:
 					values[count] = values[count] + data[options]
 
 		datasets.append({"name": options, "values": values})
+		self.chart = {"data": {"labels": self.sales_stage_list, "datasets": datasets}, "type": "line"}
 
-		self.chart = {"data": {"labels": labels, "datasets": datasets}, "type": "line"}
-
-	def currency_conversion(self, from_currency, to_currency):
+	def get_exchange_rate(self, from_currency, to_currency):
 		cacheobj = frappe.cache()
-
-		if cacheobj.get(from_currency):
+		if cacheobj and cacheobj.get(from_currency):
 			return flt(str(cacheobj.get(from_currency), "UTF-8"))
 
 		else:
@@ -235,7 +230,7 @@
 	def convert_to_base_currency(self):
 		default_currency = self.get_default_currency()
 		for data in self.query_result:
-			if data.get("currency") != default_currency:
+			if data.get("currency") and data.get("currency") != default_currency:
 				opportunity_currency = data.get("currency")
-				value = self.currency_conversion(opportunity_currency, default_currency)
-				data["amount"] = data["amount"] * value
+				exchange_rate = self.get_exchange_rate(opportunity_currency, default_currency)
+				data["amount"] = data["amount"] * exchange_rate
diff --git a/erpnext/crm/utils.py b/erpnext/crm/utils.py
index a2528c3..433d974 100644
--- a/erpnext/crm/utils.py
+++ b/erpnext/crm/utils.py
@@ -1,4 +1,5 @@
 import frappe
+from frappe.desk.notifications import notify_mentions
 from frappe.model.document import Document
 from frappe.utils import cstr, now, today
 from pypika import functions
@@ -204,6 +205,7 @@
 	def add_note(self, note):
 		self.append("notes", {"note": note, "added_by": frappe.session.user, "added_on": now()})
 		self.save()
+		notify_mentions(self.doctype, self.name, note)
 
 	@frappe.whitelist()
 	def edit_note(self, note, row_id):
diff --git a/erpnext/crm/workspace/crm/crm.json b/erpnext/crm/workspace/crm/crm.json
index 83341f5..318754b 100644
--- a/erpnext/crm/workspace/crm/crm.json
+++ b/erpnext/crm/workspace/crm/crm.json
@@ -5,7 +5,7 @@
    "label": "Territory Wise Sales"
   }
  ],
- "content": "[{\"type\":\"onboarding\",\"data\":{\"onboarding_name\":\"CRM\",\"col\":12}},{\"type\":\"chart\",\"data\":{\"chart_name\":\"Territory Wise Sales\",\"col\":12}},{\"type\":\"spacer\",\"data\":{\"col\":12}},{\"type\":\"header\",\"data\":{\"text\":\"<span class=\\\"h4\\\"><b>Your Shortcuts</b></span>\",\"col\":12}},{\"type\":\"shortcut\",\"data\":{\"shortcut_name\":\"Lead\",\"col\":3}},{\"type\":\"shortcut\",\"data\":{\"shortcut_name\":\"Opportunity\",\"col\":3}},{\"type\":\"shortcut\",\"data\":{\"shortcut_name\":\"Customer\",\"col\":3}},{\"type\":\"shortcut\",\"data\":{\"shortcut_name\":\"Sales Analytics\",\"col\":3}},{\"type\":\"shortcut\",\"data\":{\"shortcut_name\":\"Dashboard\",\"col\":3}},{\"type\":\"spacer\",\"data\":{\"col\":12}},{\"type\":\"header\",\"data\":{\"text\":\"<span class=\\\"h4\\\"><b>Reports & Masters</b></span>\",\"col\":12}},{\"type\":\"card\",\"data\":{\"card_name\":\"Sales Pipeline\",\"col\":4}},{\"type\":\"card\",\"data\":{\"card_name\":\"Reports\",\"col\":4}},{\"type\":\"card\",\"data\":{\"card_name\":\"Maintenance\",\"col\":4}},{\"type\":\"card\",\"data\":{\"card_name\":\"Campaign\",\"col\":4}},{\"type\":\"card\",\"data\":{\"card_name\":\"Settings\",\"col\":4}}]",
+ "content": "[{\"type\":\"chart\",\"data\":{\"chart_name\":\"Territory Wise Sales\",\"col\":12}},{\"type\":\"spacer\",\"data\":{\"col\":12}},{\"type\":\"header\",\"data\":{\"text\":\"<span class=\\\"h4\\\"><b>Your Shortcuts</b></span>\",\"col\":12}},{\"type\":\"shortcut\",\"data\":{\"shortcut_name\":\"Lead\",\"col\":3}},{\"type\":\"shortcut\",\"data\":{\"shortcut_name\":\"Opportunity\",\"col\":3}},{\"type\":\"shortcut\",\"data\":{\"shortcut_name\":\"Customer\",\"col\":3}},{\"type\":\"shortcut\",\"data\":{\"shortcut_name\":\"Sales Analytics\",\"col\":3}},{\"type\":\"shortcut\",\"data\":{\"shortcut_name\":\"Dashboard\",\"col\":3}},{\"type\":\"spacer\",\"data\":{\"col\":12}},{\"type\":\"header\",\"data\":{\"text\":\"<span class=\\\"h4\\\"><b>Reports &amp; Masters</b></span>\",\"col\":12}},{\"type\":\"card\",\"data\":{\"card_name\":\"Sales Pipeline\",\"col\":4}},{\"type\":\"card\",\"data\":{\"card_name\":\"Reports\",\"col\":4}},{\"type\":\"card\",\"data\":{\"card_name\":\"Campaign\",\"col\":4}},{\"type\":\"card\",\"data\":{\"card_name\":\"Settings\",\"col\":4}},{\"type\":\"card\",\"data\":{\"card_name\":\"Maintenance\",\"col\":4}}]",
  "creation": "2020-01-23 14:48:30.183272",
  "docstatus": 0,
  "doctype": "Workspace",
@@ -49,6 +49,17 @@
    "dependencies": "",
    "hidden": 0,
    "is_query_report": 0,
+   "label": "Prospect",
+   "link_count": 0,
+   "link_to": "Prospect",
+   "link_type": "DocType",
+   "onboard": 1,
+   "type": "Link"
+  },
+  {
+   "dependencies": "",
+   "hidden": 0,
+   "is_query_report": 0,
    "label": "Customer",
    "link_count": 0,
    "link_to": "Customer",
@@ -82,17 +93,6 @@
    "dependencies": "",
    "hidden": 0,
    "is_query_report": 0,
-   "label": "Lead Source",
-   "link_count": 0,
-   "link_to": "Lead Source",
-   "link_type": "DocType",
-   "onboard": 0,
-   "type": "Link"
-  },
-  {
-   "dependencies": "",
-   "hidden": 0,
-   "is_query_report": 0,
    "label": "Contract",
    "link_count": 0,
    "link_to": "Contract",
@@ -123,6 +123,60 @@
    "type": "Link"
   },
   {
+   "dependencies": "",
+   "hidden": 0,
+   "is_query_report": 0,
+   "label": "Lead Source",
+   "link_count": 0,
+   "link_to": "Lead Source",
+   "link_type": "DocType",
+   "onboard": 0,
+   "type": "Link"
+  },
+  {
+   "dependencies": "",
+   "hidden": 0,
+   "is_query_report": 0,
+   "label": "Territory",
+   "link_count": 0,
+   "link_to": "Territory",
+   "link_type": "DocType",
+   "onboard": 1,
+   "type": "Link"
+  },
+  {
+   "dependencies": "",
+   "hidden": 0,
+   "is_query_report": 0,
+   "label": "Customer Group",
+   "link_count": 0,
+   "link_to": "Customer Group",
+   "link_type": "DocType",
+   "onboard": 1,
+   "type": "Link"
+  },
+  {
+   "dependencies": "",
+   "hidden": 0,
+   "is_query_report": 0,
+   "label": "Sales Person",
+   "link_count": 0,
+   "link_to": "Sales Person",
+   "link_type": "DocType",
+   "onboard": 1,
+   "type": "Link"
+  },
+  {
+   "hidden": 0,
+   "is_query_report": 0,
+   "label": "Sales Stage",
+   "link_count": 0,
+   "link_to": "Sales Stage",
+   "link_type": "DocType",
+   "onboard": 0,
+   "type": "Link"
+  },
+  {
    "hidden": 0,
    "is_query_report": 0,
    "label": "Reports",
@@ -230,47 +284,6 @@
   {
    "hidden": 0,
    "is_query_report": 0,
-   "label": "Maintenance",
-   "link_count": 0,
-   "onboard": 0,
-   "type": "Card Break"
-  },
-  {
-   "dependencies": "",
-   "hidden": 0,
-   "is_query_report": 0,
-   "label": "Maintenance Schedule",
-   "link_count": 0,
-   "link_to": "Maintenance Schedule",
-   "link_type": "DocType",
-   "onboard": 1,
-   "type": "Link"
-  },
-  {
-   "dependencies": "",
-   "hidden": 0,
-   "is_query_report": 0,
-   "label": "Maintenance Visit",
-   "link_count": 0,
-   "link_to": "Maintenance Visit",
-   "link_type": "DocType",
-   "onboard": 0,
-   "type": "Link"
-  },
-  {
-   "dependencies": "",
-   "hidden": 0,
-   "is_query_report": 0,
-   "label": "Warranty Claim",
-   "link_count": 0,
-   "link_to": "Warranty Claim",
-   "link_type": "DocType",
-   "onboard": 0,
-   "type": "Link"
-  },
-  {
-   "hidden": 0,
-   "is_query_report": 0,
    "label": "Campaign",
    "link_count": 0,
    "onboard": 0,
@@ -310,47 +323,6 @@
    "type": "Link"
   },
   {
-   "hidden": 0,
-   "is_query_report": 0,
-   "label": "Settings",
-   "link_count": 0,
-   "onboard": 0,
-   "type": "Card Break"
-  },
-  {
-   "dependencies": "",
-   "hidden": 0,
-   "is_query_report": 0,
-   "label": "Customer Group",
-   "link_count": 0,
-   "link_to": "Customer Group",
-   "link_type": "DocType",
-   "onboard": 1,
-   "type": "Link"
-  },
-  {
-   "dependencies": "",
-   "hidden": 0,
-   "is_query_report": 0,
-   "label": "Territory",
-   "link_count": 0,
-   "link_to": "Territory",
-   "link_type": "DocType",
-   "onboard": 1,
-   "type": "Link"
-  },
-  {
-   "dependencies": "",
-   "hidden": 0,
-   "is_query_report": 0,
-   "label": "Sales Person",
-   "link_count": 0,
-   "link_to": "Sales Person",
-   "link_type": "DocType",
-   "onboard": 1,
-   "type": "Link"
-  },
-  {
    "dependencies": "",
    "hidden": 0,
    "is_query_report": 0,
@@ -376,9 +348,27 @@
    "dependencies": "",
    "hidden": 0,
    "is_query_report": 0,
-   "label": "SMS Settings",
+   "label": "Email Group",
    "link_count": 0,
-   "link_to": "SMS Settings",
+   "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"
@@ -387,9 +377,9 @@
    "dependencies": "",
    "hidden": 0,
    "is_query_report": 0,
-   "label": "Email Group",
+   "label": "SMS Settings",
    "link_count": 0,
-   "link_to": "Email Group",
+   "link_to": "SMS Settings",
    "link_type": "DocType",
    "onboard": 0,
    "type": "Link"
@@ -415,15 +405,57 @@
    "link_type": "DocType",
    "onboard": 0,
    "type": "Link"
+  },
+  {
+   "hidden": 0,
+   "is_query_report": 0,
+   "label": "Maintenance",
+   "link_count": 0,
+   "onboard": 0,
+   "type": "Card Break"
+  },
+  {
+   "dependencies": "",
+   "hidden": 0,
+   "is_query_report": 0,
+   "label": "Maintenance Schedule",
+   "link_count": 0,
+   "link_to": "Maintenance Schedule",
+   "link_type": "DocType",
+   "onboard": 1,
+   "type": "Link"
+  },
+  {
+   "dependencies": "",
+   "hidden": 0,
+   "is_query_report": 0,
+   "label": "Maintenance Visit",
+   "link_count": 0,
+   "link_to": "Maintenance Visit",
+   "link_type": "DocType",
+   "onboard": 0,
+   "type": "Link"
+  },
+  {
+   "dependencies": "",
+   "hidden": 0,
+   "is_query_report": 0,
+   "label": "Warranty Claim",
+   "link_count": 0,
+   "link_to": "Warranty Claim",
+   "link_type": "DocType",
+   "onboard": 0,
+   "type": "Link"
   }
  ],
- "modified": "2022-01-13 17:53:17.509844",
+ "modified": "2022-07-22 15:03:30.755417",
  "modified_by": "Administrator",
  "module": "CRM",
  "name": "CRM",
  "owner": "Administrator",
  "parent_page": "",
  "public": 1,
+ "quick_lists": [],
  "restrict_to_domain": "",
  "roles": [],
  "sequence_id": 7.0,
diff --git a/erpnext/e_commerce/doctype/recommended_items/recommended_items.json b/erpnext/e_commerce/doctype/recommended_items/recommended_items.json
index 06ac3dc..1821532 100644
--- a/erpnext/e_commerce/doctype/recommended_items/recommended_items.json
+++ b/erpnext/e_commerce/doctype/recommended_items/recommended_items.json
@@ -48,7 +48,7 @@
    "read_only": 1
   },
   {
-   "fetch_from": "website_item.image",
+   "fetch_from": "website_item.website_image",
    "fieldname": "website_item_image",
    "fieldtype": "Attach",
    "label": "Website Item Image",
@@ -75,7 +75,7 @@
  "index_web_pages_for_search": 1,
  "istable": 1,
  "links": [],
- "modified": "2021-07-13 21:02:19.031652",
+ "modified": "2022-06-28 16:44:24.718728",
  "modified_by": "Administrator",
  "module": "E-commerce",
  "name": "Recommended Items",
@@ -83,5 +83,6 @@
  "permissions": [],
  "sort_field": "modified",
  "sort_order": "DESC",
+ "states": [],
  "track_changes": 1
 }
\ No newline at end of file
diff --git a/erpnext/e_commerce/doctype/website_item/website_item.js b/erpnext/e_commerce/doctype/website_item/website_item.js
index 7295e4b..7b7193e 100644
--- a/erpnext/e_commerce/doctype/website_item/website_item.js
+++ b/erpnext/e_commerce/doctype/website_item/website_item.js
@@ -30,10 +30,6 @@
 		}, __("View"));
 	},
 
-	image: () => {
-		refresh_field("image_view");
-	},
-
 	copy_from_item_group: (frm) => {
 		return frm.call({
 			doc: frm.doc,
diff --git a/erpnext/e_commerce/doctype/website_item/website_item.json b/erpnext/e_commerce/doctype/website_item/website_item.json
index 245042a..a416aac 100644
--- a/erpnext/e_commerce/doctype/website_item/website_item.json
+++ b/erpnext/e_commerce/doctype/website_item/website_item.json
@@ -22,7 +22,6 @@
   "column_break_11",
   "description",
   "brand",
-  "image",
   "display_section",
   "website_image",
   "website_image_alt",
@@ -113,8 +112,11 @@
   {
    "description": "Item Image (if not slideshow)",
    "fieldname": "website_image",
-   "fieldtype": "Attach",
-   "label": "Website Image"
+   "fieldtype": "Attach Image",
+   "hidden": 1,
+   "in_preview": 1,
+   "label": "Website Image",
+   "print_hide": 1
   },
   {
    "description": "Image Alternative Text",
@@ -189,14 +191,6 @@
    "read_only": 1
   },
   {
-   "fieldname": "image",
-   "fieldtype": "Attach Image",
-   "hidden": 1,
-   "in_preview": 1,
-   "label": "Image",
-   "print_hide": 1
-  },
-  {
    "default": "1",
    "fieldname": "published",
    "fieldtype": "Check",
@@ -348,13 +342,14 @@
   }
  ],
  "has_web_view": 1,
- "image_field": "image",
+ "image_field": "website_image",
  "index_web_pages_for_search": 1,
  "links": [],
- "modified": "2021-09-02 13:08:41.942726",
+ "modified": "2022-06-28 17:10:30.613251",
  "modified_by": "Administrator",
  "module": "E-commerce",
  "name": "Website Item",
+ "naming_rule": "Expression (old style)",
  "owner": "Administrator",
  "permissions": [
   {
@@ -410,6 +405,7 @@
  "show_name_in_global_search": 1,
  "sort_field": "modified",
  "sort_order": "DESC",
+ "states": [],
  "title_field": "web_item_name",
  "track_changes": 1
 }
\ No newline at end of file
diff --git a/erpnext/e_commerce/doctype/website_item/website_item.py b/erpnext/e_commerce/doctype/website_item/website_item.py
index f6fea72..c0f8c79 100644
--- a/erpnext/e_commerce/doctype/website_item/website_item.py
+++ b/erpnext/e_commerce/doctype/website_item/website_item.py
@@ -1,8 +1,12 @@
 # -*- coding: utf-8 -*-
-# Copyright (c) 2021, Frappe Technologies Pvt. Ltd. and contributors
+# Copyright (c) 2022, Frappe Technologies Pvt. Ltd. and contributors
 # For license information, please see license.txt
 
 import json
+from typing import TYPE_CHECKING, List, Union
+
+if TYPE_CHECKING:
+	from erpnext.stock.doctype.item.item import Item
 
 import frappe
 from frappe import _
@@ -114,11 +118,6 @@
 			return
 
 		"""Validate if the website image is a public file"""
-		auto_set_website_image = False
-		if not self.website_image and self.image:
-			auto_set_website_image = True
-			self.website_image = self.image
-
 		if not self.website_image:
 			return
 
@@ -135,18 +134,16 @@
 			file_doc = file_doc[0]
 
 		if not file_doc:
-			if not auto_set_website_image:
-				frappe.msgprint(
-					_("Website Image {0} attached to Item {1} cannot be found").format(
-						self.website_image, self.name
-					)
+			frappe.msgprint(
+				_("Website Image {0} attached to Item {1} cannot be found").format(
+					self.website_image, self.name
 				)
+			)
 
 			self.website_image = None
 
 		elif file_doc.is_private:
-			if not auto_set_website_image:
-				frappe.msgprint(_("Website Image should be a public file or website URL"))
+			frappe.msgprint(_("Website Image should be a public file or website URL"))
 
 			self.website_image = None
 
@@ -157,9 +154,8 @@
 
 		import requests.exceptions
 
-		if not self.is_new() and self.website_image != frappe.db.get_value(
-			self.doctype, self.name, "website_image"
-		):
+		db_website_image = frappe.db.get_value(self.doctype, self.name, "website_image")
+		if not self.is_new() and self.website_image != db_website_image:
 			self.thumbnail = None
 
 		if self.website_image and not self.thumbnail:
@@ -431,7 +427,9 @@
 
 
 @frappe.whitelist()
-def make_website_item(doc, save=True):
+def make_website_item(doc: "Item", save: bool = True) -> Union["WebsiteItem", List[str]]:
+	"Make Website Item from Item. Used via Form UI or patch."
+
 	if not doc:
 		return
 
@@ -451,7 +449,6 @@
 		"item_group",
 		"stock_uom",
 		"brand",
-		"image",
 		"has_variants",
 		"variant_of",
 		"description",
@@ -459,6 +456,10 @@
 	for field in fields_to_map:
 		website_item.update({field: doc.get(field)})
 
+	# Needed for publishing/mapping via Form UI only
+	if not frappe.flags.in_migrate and (doc.get("image") and not website_item.website_image):
+		website_item.website_image = doc.get("image")
+
 	if not save:
 		return website_item
 
diff --git a/erpnext/e_commerce/doctype/website_item/website_item_list.js b/erpnext/e_commerce/doctype/website_item/website_item_list.js
index 21be942..b9dd921 100644
--- a/erpnext/e_commerce/doctype/website_item/website_item_list.js
+++ b/erpnext/e_commerce/doctype/website_item/website_item_list.js
@@ -1,5 +1,5 @@
 frappe.listview_settings['Website Item'] = {
-	add_fields: ["item_name", "web_item_name", "published", "image", "has_variants", "variant_of"],
+	add_fields: ["item_name", "web_item_name", "published", "website_image", "has_variants", "variant_of"],
 	filters: [["published", "=", "1"]],
 
 	get_indicator: function(doc) {
diff --git a/erpnext/e_commerce/doctype/wishlist/wishlist.py b/erpnext/e_commerce/doctype/wishlist/wishlist.py
index 5d6ab41..eb74027 100644
--- a/erpnext/e_commerce/doctype/wishlist/wishlist.py
+++ b/erpnext/e_commerce/doctype/wishlist/wishlist.py
@@ -20,7 +20,15 @@
 	web_item_data = frappe.db.get_value(
 		"Website Item",
 		{"item_code": item_code},
-		["image", "website_warehouse", "name", "web_item_name", "item_name", "item_group", "route"],
+		[
+			"website_image",
+			"website_warehouse",
+			"name",
+			"web_item_name",
+			"item_name",
+			"item_group",
+			"route",
+		],
 		as_dict=1,
 	)
 
@@ -30,7 +38,7 @@
 		"item_group": web_item_data.get("item_group"),
 		"website_item": web_item_data.get("name"),
 		"web_item_name": web_item_data.get("web_item_name"),
-		"image": web_item_data.get("image"),
+		"image": web_item_data.get("website_image"),
 		"warehouse": web_item_data.get("website_warehouse"),
 		"route": web_item_data.get("route"),
 	}
diff --git a/erpnext/e_commerce/product_data_engine/query.py b/erpnext/e_commerce/product_data_engine/query.py
index 5a75382..e6a595a 100644
--- a/erpnext/e_commerce/product_data_engine/query.py
+++ b/erpnext/e_commerce/product_data_engine/query.py
@@ -35,7 +35,6 @@
 			"variant_of",
 			"has_variants",
 			"item_group",
-			"image",
 			"web_long_description",
 			"short_description",
 			"route",
diff --git a/erpnext/e_commerce/product_ui/grid.js b/erpnext/e_commerce/product_ui/grid.js
index 9eb1d45..20a6c30 100644
--- a/erpnext/e_commerce/product_ui/grid.js
+++ b/erpnext/e_commerce/product_ui/grid.js
@@ -35,7 +35,7 @@
 	}
 
 	get_image_html(item, title) {
-		let image = item.website_image || item.image;
+		let image = item.website_image;
 
 		if (image) {
 			return `
diff --git a/erpnext/e_commerce/product_ui/list.js b/erpnext/e_commerce/product_ui/list.js
index 691cd4d..894a7cb 100644
--- a/erpnext/e_commerce/product_ui/list.js
+++ b/erpnext/e_commerce/product_ui/list.js
@@ -35,7 +35,7 @@
 	}
 
 	get_image_html(item, title, settings) {
-		let image = item.website_image || item.image;
+		let image = item.website_image;
 		let wishlist_enabled = !item.has_variants && settings.enable_wishlist;
 		let image_html = ``;
 
diff --git a/erpnext/erpnext_integrations/doctype/gocardless_settings/gocardless_settings.py b/erpnext/erpnext_integrations/doctype/gocardless_settings/gocardless_settings.py
index 55517e4..f9a293f 100644
--- a/erpnext/erpnext_integrations/doctype/gocardless_settings/gocardless_settings.py
+++ b/erpnext/erpnext_integrations/doctype/gocardless_settings/gocardless_settings.py
@@ -7,9 +7,10 @@
 import frappe
 import gocardless_pro
 from frappe import _
-from frappe.integrations.utils import create_payment_gateway, create_request_log
+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 payments.utils import create_payment_gateway
 
 
 class GoCardlessSettings(Document):
diff --git a/erpnext/erpnext_integrations/doctype/mpesa_settings/mpesa_settings.py b/erpnext/erpnext_integrations/doctype/mpesa_settings/mpesa_settings.py
index e389980..b534783 100644
--- a/erpnext/erpnext_integrations/doctype/mpesa_settings/mpesa_settings.py
+++ b/erpnext/erpnext_integrations/doctype/mpesa_settings/mpesa_settings.py
@@ -6,9 +6,10 @@
 
 import frappe
 from frappe import _
-from frappe.integrations.utils import create_payment_gateway, create_request_log
+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 payments.utils import create_payment_gateway
 
 from erpnext.erpnext_integrations.doctype.mpesa_settings.mpesa_connector import MpesaConnector
 from erpnext.erpnext_integrations.doctype.mpesa_settings.mpesa_custom_fields import (
diff --git a/erpnext/hooks.py b/erpnext/hooks.py
index d7cd8b9..aa10e31 100644
--- a/erpnext/hooks.py
+++ b/erpnext/hooks.py
@@ -10,6 +10,7 @@
 app_license = "GNU General Public License (v3)"
 source_link = "https://github.com/frappe/erpnext"
 app_logo_url = "/assets/erpnext/images/erpnext-logo.svg"
+required_apps = ["payments"]
 
 
 develop_version = "14.x.x-develop"
diff --git a/erpnext/patches/v13_0/create_website_items.py b/erpnext/patches/v13_0/create_website_items.py
index cb7bfc3..b010f0e 100644
--- a/erpnext/patches/v13_0/create_website_items.py
+++ b/erpnext/patches/v13_0/create_website_items.py
@@ -17,7 +17,6 @@
 		"item_group",
 		"stock_uom",
 		"brand",
-		"image",
 		"has_variants",
 		"variant_of",
 		"description",
@@ -30,6 +29,7 @@
 		"website_warehouse",
 		"web_long_description",
 		"website_content",
+		"website_image",
 		"thumbnail",
 	]
 
diff --git a/erpnext/patches/v14_0/remove_hr_and_payroll_modules.py b/erpnext/patches/v14_0/remove_hr_and_payroll_modules.py
index 259b111..4d01fcb 100644
--- a/erpnext/patches/v14_0/remove_hr_and_payroll_modules.py
+++ b/erpnext/patches/v14_0/remove_hr_and_payroll_modules.py
@@ -31,22 +31,22 @@
 		"Professional Tax Deductions",
 		"Provident Fund Deductions",
 	]:
-		frappe.delete_doc("Report", report, ignore_missing=True)
+		frappe.delete_doc("Report", report, ignore_missing=True, force=True)
 
 	doctypes = frappe.get_all(
 		"DocType", {"module": ("in", ["HR", "Payroll"]), "custom": 0}, pluck="name"
 	)
 	for doctype in doctypes:
-		frappe.delete_doc("DocType", doctype, ignore_missing=True)
+		frappe.delete_doc("DocType", doctype, ignore_missing=True, force=True)
 
-	frappe.delete_doc("DocType", "Salary Slip Loan", ignore_missing=True)
-	frappe.delete_doc("DocType", "Salary Component Account", ignore_missing=True)
+	frappe.delete_doc("DocType", "Salary Slip Loan", ignore_missing=True, force=True)
+	frappe.delete_doc("DocType", "Salary Component Account", ignore_missing=True, force=True)
 
 	notifications = frappe.get_all(
 		"Notification", {"module": ("in", ["HR", "Payroll"]), "is_standard": 1}, pluck="name"
 	)
 	for notifcation in notifications:
-		frappe.delete_doc("Notification", notifcation, ignore_missing=True)
+		frappe.delete_doc("Notification", notifcation, ignore_missing=True, force=True)
 
 	frappe.delete_doc("User Type", "Employee Self Service", ignore_missing=True, force=True)
 
diff --git a/erpnext/portal/doctype/homepage/homepage.py b/erpnext/portal/doctype/homepage/homepage.py
index 5bb05f0..0d2e360 100644
--- a/erpnext/portal/doctype/homepage/homepage.py
+++ b/erpnext/portal/doctype/homepage/homepage.py
@@ -16,7 +16,7 @@
 	def setup_items(self):
 		for d in frappe.get_all(
 			"Website Item",
-			fields=["name", "item_name", "description", "image", "route"],
+			fields=["name", "item_name", "description", "website_image", "route"],
 			filters={"published": 1},
 			limit=3,
 		):
@@ -31,7 +31,7 @@
 					item_code=d.name,
 					item_name=d.item_name,
 					description=d.description,
-					image=d.image,
+					image=d.website_image,
 					route=d.route,
 				),
 			)
diff --git a/erpnext/public/js/utils/crm_activities.js b/erpnext/public/js/utils/crm_activities.js
index bbd9ded..ec79a10 100644
--- a/erpnext/public/js/utils/crm_activities.js
+++ b/erpnext/public/js/utils/crm_activities.js
@@ -143,7 +143,8 @@
 						"label": "Note",
 						"fieldname": "note",
 						"fieldtype": "Text Editor",
-						"reqd": 1
+						"reqd": 1,
+						"enable_mentions": true,
 					}
 				],
 				primary_action: function() {
diff --git a/erpnext/selling/doctype/customer/customer.py b/erpnext/selling/doctype/customer/customer.py
index 35e0b0d..6605685 100644
--- a/erpnext/selling/doctype/customer/customer.py
+++ b/erpnext/selling/doctype/customer/customer.py
@@ -527,11 +527,14 @@
 					_("Please contact your administrator to extend the credit limits for {0}.").format(customer)
 				)
 
-			message = """Please contact any of the following users to extend the credit limits for {0}:
-				<br><br><ul><li>{1}</li></ul>""".format(
-				customer, "<li>".join(credit_controller_users_formatted)
+			user_list = "<br><br><ul><li>{0}</li></ul>".format(
+				"<li>".join(credit_controller_users_formatted)
 			)
 
+			message = _(
+				"Please contact any of the following users to extend the credit limits for {0}: {1}"
+			).format(customer, user_list)
+
 			# if the current user does not have permissions to override credit limit,
 			# prompt them to send out an email to the controller users
 			frappe.msgprint(
diff --git a/erpnext/selling/doctype/sales_order/test_sales_order.py b/erpnext/selling/doctype/sales_order/test_sales_order.py
index e5e317c..adfb39c 100644
--- a/erpnext/selling/doctype/sales_order/test_sales_order.py
+++ b/erpnext/selling/doctype/sales_order/test_sales_order.py
@@ -1620,6 +1620,65 @@
 		so.load_from_db()
 		self.assertEqual(so.billing_status, "Fully Billed")
 
+	def test_so_billing_status_with_crnote_against_sales_return(self):
+		"""
+		| Step | Document creation                    |                               |
+		|------+--------------------------------------+-------------------------------|
+		|    1 | SO -> DN -> SI                       | SO Fully Billed and Completed |
+		|    2 | DN -> Sales Return(Partial)          | SO 50% Delivered, 100% billed |
+		|    3 | Sales Return(Partial) -> Credit Note | SO 50% Delivered, 50% billed  |
+
+		"""
+		from erpnext.accounts.doctype.sales_invoice.test_sales_invoice import create_sales_invoice
+
+		so = make_sales_order(uom="Nos", do_not_save=1)
+		so.save()
+		so.submit()
+
+		self.assertEqual(so.billing_status, "Not Billed")
+
+		dn1 = make_delivery_note(so.name)
+		dn1.taxes_and_charges = ""
+		dn1.taxes.clear()
+		dn1.save().submit()
+
+		si = create_sales_invoice(qty=10, do_not_save=1)
+		si.items[0].sales_order = so.name
+		si.items[0].so_detail = so.items[0].name
+		si.items[0].delivery_note = dn1.name
+		si.items[0].dn_detail = dn1.items[0].name
+		si.save()
+		si.submit()
+
+		so.reload()
+		self.assertEqual(so.billing_status, "Fully Billed")
+		self.assertEqual(so.status, "Completed")
+
+		from erpnext.stock.doctype.delivery_note.test_delivery_note import create_delivery_note
+
+		dn1.reload()
+		dn_ret = create_delivery_note(is_return=1, return_against=dn1.name, qty=-5, do_not_submit=True)
+		dn_ret.items[0].against_sales_order = so.name
+		dn_ret.items[0].so_detail = so.items[0].name
+		dn_ret.submit()
+
+		so.reload()
+		self.assertEqual(so.per_billed, 100)
+		self.assertEqual(so.per_delivered, 50)
+
+		cr_note = create_sales_invoice(is_return=1, qty=-1, do_not_submit=True)
+		cr_note.items[0].qty = -5
+		cr_note.items[0].sales_order = so.name
+		cr_note.items[0].so_detail = so.items[0].name
+		cr_note.items[0].delivery_note = dn_ret.name
+		cr_note.items[0].dn_detail = dn_ret.items[0].name
+		cr_note.update_billed_amount_in_sales_order = True
+		cr_note.submit()
+
+		so.reload()
+		self.assertEqual(so.per_billed, 50)
+		self.assertEqual(so.per_delivered, 50)
+
 	def test_so_back_updated_from_wo_via_mr(self):
 		"SO -> MR (Manufacture) -> WO. Test if WO Qty is updated in SO."
 		from erpnext.manufacturing.doctype.work_order.work_order import (
diff --git a/erpnext/selling/page/point_of_sale/pos_controller.js b/erpnext/selling/page/point_of_sale/pos_controller.js
index cb4bd51..da7576e 100644
--- a/erpnext/selling/page/point_of_sale/pos_controller.js
+++ b/erpnext/selling/page/point_of_sale/pos_controller.js
@@ -497,7 +497,10 @@
 
 	set_pos_profile_data() {
 		if (this.company && !this.frm.doc.company) this.frm.doc.company = this.company;
-		if (this.pos_profile && !this.frm.doc.pos_profile) this.frm.doc.pos_profile = this.pos_profile;
+		if ((this.pos_profile && !this.frm.doc.pos_profile) | (this.frm.doc.is_return && this.pos_profile != this.frm.doc.pos_profile)) {
+			this.frm.doc.pos_profile = this.pos_profile;
+		}
+
 		if (!this.frm.doc.company) return;
 
 		return this.frm.trigger("set_pos_data");
diff --git a/erpnext/setup/doctype/global_defaults/global_defaults.py b/erpnext/setup/doctype/global_defaults/global_defaults.py
index 984bab4..16e9434 100644
--- a/erpnext/setup/doctype/global_defaults/global_defaults.py
+++ b/erpnext/setup/doctype/global_defaults/global_defaults.py
@@ -30,18 +30,20 @@
 			frappe.db.set_default(key, self.get(keydict[key], ""))
 
 		# update year start date and year end date from fiscal_year
-		year_start_end_date = frappe.db.sql(
-			"""select year_start_date, year_end_date
-			from `tabFiscal Year` where name=%s""",
-			self.current_fiscal_year,
-		)
-		if year_start_end_date:
-			ysd = year_start_end_date[0][0] or ""
-			yed = year_start_end_date[0][1] or ""
+		if self.current_fiscal_year:
+			if fiscal_year := frappe.get_all(
+				"Fiscal Year",
+				filters={"name": self.current_fiscal_year},
+				fields=["year_start_date", "year_end_date"],
+				limit=1,
+				order_by=None,
+			):
+				ysd = fiscal_year[0].year_start_date or ""
+				yed = fiscal_year[0].year_end_date or ""
 
-			if ysd and yed:
-				frappe.db.set_default("year_start_date", ysd.strftime("%Y-%m-%d"))
-				frappe.db.set_default("year_end_date", yed.strftime("%Y-%m-%d"))
+				if ysd and yed:
+					frappe.db.set_default("year_start_date", ysd.strftime("%Y-%m-%d"))
+					frappe.db.set_default("year_end_date", yed.strftime("%Y-%m-%d"))
 
 		# enable default currency
 		if self.default_currency:
@@ -50,7 +52,6 @@
 		self.toggle_rounded_total()
 		self.toggle_in_words()
 
-		# clear cache
 		frappe.clear_cache()
 
 	@frappe.whitelist()
diff --git a/erpnext/stock/dashboard_chart_source/warehouse_wise_stock_value/warehouse_wise_stock_value.py b/erpnext/stock/dashboard_chart_source/warehouse_wise_stock_value/warehouse_wise_stock_value.py
index dbf6cf0..d488150 100644
--- a/erpnext/stock/dashboard_chart_source/warehouse_wise_stock_value/warehouse_wise_stock_value.py
+++ b/erpnext/stock/dashboard_chart_source/warehouse_wise_stock_value/warehouse_wise_stock_value.py
@@ -6,8 +6,6 @@
 from frappe import _
 from frappe.utils.dashboard import cache_source
 
-from erpnext.stock.utils import get_stock_value_from_bin
-
 
 @frappe.whitelist()
 @cache_source
@@ -30,26 +28,24 @@
 		warehouse_filters.append(["company", "=", filters.get("company")])
 
 	warehouses = frappe.get_list(
-		"Warehouse", fields=["name"], filters=warehouse_filters, order_by="name"
+		"Warehouse", pluck="name", filters=warehouse_filters, order_by="name"
 	)
 
-	for wh in warehouses:
-		balance = get_stock_value_from_bin(warehouse=wh.name)
-		wh["balance"] = balance[0][0]
-
-	warehouses = [x for x in warehouses if not (x.get("balance") == None)]
+	warehouses = frappe.get_list(
+		"Bin",
+		fields=["warehouse", "sum(stock_value) stock_value"],
+		filters={"warehouse": ["IN", warehouses], "stock_value": [">", 0]},
+		group_by="warehouse",
+		order_by="stock_value DESC",
+		limit_page_length=10,
+	)
 
 	if not warehouses:
 		return []
 
-	sorted_warehouse_map = sorted(warehouses, key=lambda i: i["balance"], reverse=True)
-
-	if len(sorted_warehouse_map) > 10:
-		sorted_warehouse_map = sorted_warehouse_map[:10]
-
-	for warehouse in sorted_warehouse_map:
-		labels.append(_(warehouse.get("name")))
-		datapoints.append(warehouse.get("balance"))
+	for warehouse in warehouses:
+		labels.append(_(warehouse.get("warehouse")))
+		datapoints.append(warehouse.get("stock_value"))
 
 	return {
 		"labels": labels,
diff --git a/erpnext/stock/report/stock_ageing/stock_ageing.py b/erpnext/stock/report/stock_ageing/stock_ageing.py
index 1956238..7c430e4 100644
--- a/erpnext/stock/report/stock_ageing/stock_ageing.py
+++ b/erpnext/stock/report/stock_ageing/stock_ageing.py
@@ -34,6 +34,9 @@
 	precision = cint(frappe.db.get_single_value("System Settings", "float_precision", cache=True))
 
 	for item, item_dict in item_details.items():
+		if not flt(item_dict.get("total_qty"), precision):
+			continue
+
 		earliest_age, latest_age = 0, 0
 		details = item_dict["details"]
 
diff --git a/erpnext/templates/generators/item/item_image.html b/erpnext/templates/generators/item/item_image.html
index 930bb7a..e1bb3b9 100644
--- a/erpnext/templates/generators/item/item_image.html
+++ b/erpnext/templates/generators/item/item_image.html
@@ -24,7 +24,7 @@
 			})
 		</script>
 	{% else %}
-		{{ product_image(doc.website_image or doc.image, alt=doc.website_image_alt or doc.item_name) }}
+		{{ product_image(doc.website_image, alt=doc.website_image_alt or doc.item_name) }}
 	{% endif %}
 
 	<!-- Simple image preview -->
diff --git a/erpnext/templates/includes/macros.html b/erpnext/templates/includes/macros.html
index fb4cecf..3e20e50 100644
--- a/erpnext/templates/includes/macros.html
+++ b/erpnext/templates/includes/macros.html
@@ -74,7 +74,7 @@
 {%- set col_size = 3 if is_full_width else 4 -%}
 {%- set title = item.web_item_name or item.item_name or item.item_code -%}
 {%- set title = title[:50] + "..." if title|len > 50 else title -%}
-{%- set image = item.website_image or item.image -%}
+{%- set image = item.website_image -%}
 {%- set description = item.website_description or item.description-%}
 
 {% if is_featured %}
diff --git a/erpnext/templates/pages/home.css b/erpnext/templates/pages/home.css
index 785d805..f266149 100644
--- a/erpnext/templates/pages/home.css
+++ b/erpnext/templates/pages/home.css
@@ -1,7 +1,6 @@
 /* csslint ignore:start */
 {% if homepage.hero_image %}
 .hero-image {
-	background-image: url("{{ homepage.hero_image }}");
 	background-size: cover;
 	padding: 10rem 0;
 }
diff --git a/erpnext/templates/pages/home.html b/erpnext/templates/pages/home.html
index 9a61eab..4c69b83 100644
--- a/erpnext/templates/pages/home.html
+++ b/erpnext/templates/pages/home.html
@@ -5,7 +5,11 @@
 {% block content %}
 <main>
 	{% if homepage.hero_section_based_on == 'Default' %}
-	<section class="hero-section border-bottom {%if homepage.hero_image%}hero-image{%endif%}">
+	<section class="hero-section border-bottom {%if homepage.hero_image%}hero-image{%endif%}"
+		{% if homepage.hero_image %}
+		style="background-image: url('{{ homepage.hero_image }}');"
+		{%- endif %}
+	>
 		<div class="container py-5">
 			<h1 class="d-none d-sm-block display-4">{{ homepage.tag_line }}</h1>
 			<h1 class="d-block d-sm-none">{{ homepage.tag_line }}</h1>
diff --git a/erpnext/translations/fr.csv b/erpnext/translations/fr.csv
index a290ec7..dbc3194 100644
--- a/erpnext/translations/fr.csv
+++ b/erpnext/translations/fr.csv
@@ -223,7 +223,7 @@
 Annual Billing: {0},Facturation Annuelle : {0},
 Annual Salary,Salaire annuel,
 Anonymous,Anonyme,
-Another Budget record '{0}' already exists against {1} '{2}' and account '{3}' for fiscal year {4},Un autre enregistrement Budget &#39;{0}&#39; existe déjà pour {1} &#39;{2}&#39; et pour le compte &#39;{3}&#39; pour l&#39;exercice {4}.,
+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é,
 Antibiotic,Antibiotique,
@@ -406,7 +406,7 @@
 Block Invoice,Bloquer la facture,
 Boms,Nomenclatures,
 Bonus Payment Date cannot be a past date,La date de paiement du bonus ne peut pas être une date passée,
-Both Trial Period Start Date and Trial Period End Date must be set,La date de début de la période d&#39;essai et la date de fin de la période d&#39;essai doivent être définies,
+Both Trial Period Start Date and Trial Period End Date must be set,La date de début de la période d'essai et la date de fin de la période d'essai doivent être définies,
 Both Warehouse must belong to same Company,Les deux Entrepôt doivent appartenir à la même Société,
 Branch,Branche,
 Broadcasting,Radio/Télévision,
@@ -441,7 +441,7 @@
 Can be approved by {0},Peut être approuvé par {0},
 "Can not filter based on Account, if grouped by Account","Impossible de filtrer sur le Compte , si les lignes sont regroupées par Compte",
 "Can not filter based on Voucher No, if grouped by Voucher","Impossible de filtrer sur la base du N° de Coupon, si les lignes sont regroupées par Coupon",
-"Can not mark Inpatient Record Discharged, there are Unbilled Invoices {0}","Impossible de marquer le dossier d&#39;hospitalisation déchargé, il existe des factures non facturées {0}",
+"Can not mark Inpatient Record Discharged, there are Unbilled Invoices {0}","Impossible de marquer le dossier d'hospitalisation déchargé, il existe des factures non facturées {0}",
 Can only make payment against unbilled {0},Le paiement n'est possible qu'avec les {0} non facturés,
 Can refer row only if the charge type is 'On Previous Row Amount' or 'Previous Row Total',Peut se référer à ligne seulement si le type de charge est 'Montant de la ligne précedente' ou 'Total des lignes précedente',
 "Can't change valuation method, as there are transactions against some items which does not have it's own valuation method","Impossible de modifier la méthode de valorisation, car il existe des transactions sur certains articles ne possèdant pas leur propre méthode de valorisation",
@@ -474,11 +474,11 @@
 "Cannot delete Serial No {0}, as it is used in stock transactions","Impossible de supprimer les N° de série {0}, s'ils sont dans les mouvements de stock",
 Cannot enroll more than {0} students for this student group.,Inscription de plus de {0} étudiants impossible pour ce groupe d'étudiants.,
 Cannot find active Leave Period,Impossible de trouver une période de congés active,
-Cannot produce more Item {0} than Sales Order quantity {1},Impossible de produire plus d'Article {0} que la quantité {1} du Bon de Commande,
+Cannot produce more Item {0} than Sales Order quantity {1},Impossible de produire plus d'Article {0} que la quantité {1} du de la Commande client,
 Cannot promote Employee with status Left,"Impossible de promouvoir  un employé avec le statut ""Parti""",
 Cannot refer row number greater than or equal to current row number for this Charge type,Impossible de se référer au numéro de la ligne supérieure ou égale au numéro de la ligne courante pour ce type de Charge,
 Cannot select charge type as 'On Previous Row Amount' or 'On Previous Row Total' for first row,Impossible de sélectionner le type de charge comme étant «Le Montant de la Ligne Précédente» ou «Montant Total de la Ligne Précédente» pour la première ligne,
-Cannot set as Lost as Sales Order is made.,Impossible de définir comme perdu alors qu'un Bon de Commande a été créé.,
+Cannot set as Lost as Sales Order is made.,Impossible de définir comme perdu alors qu'une Commande client a été créé.,
 Cannot set authorization on basis of Discount for {0},Impossible de définir l'autorisation sur la base des Prix Réduits pour {0},
 Cannot set multiple Item Defaults for a company.,Impossible de définir plusieurs valeurs par défaut pour une entreprise.,
 Cannot set quantity less than delivered quantity,Impossible de définir une quantité inférieure à la quantité livrée,
@@ -571,7 +571,7 @@
 Company Name,Nom de la Société,
 Company Name cannot be Company,Nom de la Société ne peut pas être Company,
 Company currencies of both the companies should match for Inter Company Transactions.,Les devises des deux sociétés doivent correspondre pour les transactions inter-sociétés.,
-Company is manadatory for company account,La société est le maître d&#39;œuvre du compte d&#39;entreprise,
+Company is manadatory for company account,La société est le maître d'œuvre du compte d'entreprise,
 Company name not same,Le nom de la société n'est pas identique,
 Company {0} does not exist,Société {0} n'existe pas,
 Compensatory Off,Congé Compensatoire,
@@ -667,7 +667,7 @@
 Create Payment Entries,Créer des entrées de paiement,
 Create Payment Entry,Créer une entrée de paiement,
 Create Print Format,Créer Format d'Impression,
-Create Purchase Order,Créer un bon de commande,
+Create Purchase Order,Créer une Commande d'Achat,
 Create Purchase Orders,Créer des Commandes d'Achat,
 Create Quotation,créer offre,
 Create Salary Slip,Créer une Fiche de Paie,
@@ -694,7 +694,7 @@
 Creating Fees,Création d'Honoraires,
 Creating Payment Entries......,Créer des écritures de paiement...,
 Creating Salary Slips...,Création des fiches de paie en cours...,
-Creating student groups,Créer des groupes d&#39;étudiants,
+Creating student groups,Créer des groupes d'étudiants,
 Creating {0} Invoice,Création de {0} facture,
 Credit,Crédit,
 Credit ({0}),Crédit ({0}),
@@ -823,7 +823,7 @@
 Depreciation Entry,Ecriture d’Amortissement,
 Depreciation Method,Méthode d'Amortissement,
 Depreciation Row {0}: Depreciation Start Date is entered as past date,Ligne de d'amortissement {0}: La date de début de l'amortissement est dans le passé,
-Depreciation Row {0}: Expected value after useful life must be greater than or equal to {1},Ligne d&#39;amortissement {0}: la valeur attendue après la durée de vie utile doit être supérieure ou égale à {1},
+Depreciation Row {0}: Expected value after useful life must be greater than or equal to {1},Ligne d'amortissement {0}: la valeur attendue après la durée de vie utile doit être supérieure ou égale à {1},
 Depreciation Row {0}: Next Depreciation Date cannot be before Available-for-use Date,Ligne d'amortissement {0}: La date d'amortissement suivante ne peut pas être antérieure à la date de mise en service,
 Depreciation Row {0}: Next Depreciation Date cannot be before Purchase Date,Ligne d'amortissement {0}: la date d'amortissement suivante ne peut pas être antérieure à la date d'achat,
 Designer,Designer,
@@ -914,7 +914,7 @@
 Email Digest: ,Compte Rendu par Email :,
 Email Reminders will be sent to all parties with email contacts,Les rappels par emails seront envoyés à toutes les parties avec des contacts ayant une adresse email,
 Email Sent,Email Envoyé,
-Email Template,Modèle d&#39;email,
+Email Template,Modèle d'email,
 Email not found in default contact,Email non trouvé dans le contact par défaut,
 Email sent to {0},Email envoyé à {0},
 Employee,Employé,
@@ -931,7 +931,7 @@
 Employee cannot report to himself.,L'employé ne peut pas rendre de compte à lui-même.,
 Employee relieved on {0} must be set as 'Left',Employé dégagé de {0} doit être défini comme 'Gauche',
 Employee {0} already submited an apllication {1} for the payroll period {2},L'employé {0} a déjà envoyé une demande {1} pour la période de calcul de paie {2},
-Employee {0} has already applied for {1} between {2} and {3} : ,L&#39;employé {0} a déjà postulé pour {1} entre {2} et {3}:,
+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} has no maximum benefit amount,L'employé {0} n'a pas de montant maximal d'avantages sociaux,
 Employee {0} is not active or does not exist,"L'employé {0} n'est pas actif, ou n'existe pas",
 Employee {0} is on Leave on {1},L'employé {0} est en congés le {1},
@@ -981,7 +981,7 @@
 Executive Search,Recrutement de Cadres,
 Expand All,Développer Tout,
 Expected Delivery Date,Date de livraison prévue,
-Expected Delivery Date should be after Sales Order Date,La Date de Livraison Prévue doit être après la Date indiquée sur le Bon de Commande de Vente,
+Expected Delivery Date should be after Sales Order Date,La Date de Livraison Prévue doit être après la Date indiquée sur la Commande Client,
 Expected End Date,Date de fin prévue,
 Expected Hrs,Heures prévues,
 Expected Start Date,Date de début prévue,
@@ -1007,7 +1007,7 @@
 Fail,Échec,
 Failed,Échoué,
 Failed to create website,Échec de la création du site Web,
-Failed to install presets,Échec de l&#39;installation des préréglages,
+Failed to install presets,Échec de l'installation des préréglages,
 Failed to login,Échec de la connexion,
 Failed to setup company,Échec de la configuration de la société,
 Failed to setup defaults,Échec de la configuration par défaut,
@@ -1200,11 +1200,11 @@
 Healthcare,Santé,
 Healthcare (beta),Santé (beta),
 Healthcare Practitioner,Praticien de la santé,
-Healthcare Practitioner not available on {0},Le praticien de la santé n&#39;est pas disponible le {0},
-Healthcare Practitioner {0} not available on {1},Le praticien de la santé {0} n&#39;est pas disponible le {1},
+Healthcare Practitioner not available on {0},Le praticien de la santé n'est pas disponible le {0},
+Healthcare Practitioner {0} not available on {1},Le praticien de la santé {0} n'est pas disponible le {1},
 Healthcare Service Unit,Service de soins de santé,
 Healthcare Service Unit Tree,Arbre des services de soins de santé,
-Healthcare Service Unit Type,Type d&#39;unité de service de soins de santé,
+Healthcare Service Unit Type,Type d'unité de service de soins de santé,
 Healthcare Services,Services de santé,
 Healthcare Settings,Paramètres de santé,
 Hello,Bonjour,
@@ -1390,7 +1390,7 @@
 Item {0}: Ordered qty {1} cannot be less than minimum order qty {2} (defined in Item).,L'article {0} : Qté commandée {1} ne peut pas être inférieure à la qté de commande minimum {2} (défini dans l'Article).,
 Item: {0} does not exist in the system,Article : {0} n'existe pas dans le système,
 Items,Articles,
-Items Filter,Filtre d&#39;articles,
+Items Filter,Filtre d'articles,
 Items and Pricing,Articles et prix,
 Items for Raw Material Request,Articles pour demande de matière première,
 Job Card,Carte de travail,
@@ -1550,7 +1550,7 @@
 Material Request No,Demande matériel No,
 "Material Request not created, as quantity for Raw Materials already available.","Demande de matériel non créée, car la quantité de matières premières est déjà disponible.",
 Material Request of maximum {0} can be made for Item {1} against Sales Order {2},Demande de Matériel d'un maximum de {0} peut être faite pour l'article {1} pour la Commande Client {2},
-Material Request to Purchase Order,Demande de Matériel au Bon de Commande,
+Material Request to Purchase Order,Demande de Matériel à la Commande d'Achat,
 Material Request {0} is cancelled or stopped,Demande de Matériel {0} est annulé ou arrêté,
 Material Request {0} submitted.,Demande de matériel {0} soumise.,
 Material Transfer,Transfert de matériel,
@@ -1579,7 +1579,7 @@
 Member Name,Nom de membre,
 Member information.,Informations sur le membre,
 Membership,Adhésion,
-Membership Details,Détails de l&#39;adhésion,
+Membership Details,Détails de l'adhésion,
 Membership ID,ID d'adhésion,
 Membership Type,Type d'adhésion,
 Memebership Details,Détails de l'adhésion,
@@ -1600,7 +1600,7 @@
 Miscellaneous Expenses,Charges Diverses,
 Missing Currency Exchange Rates for {0},Taux de Change Manquant pour {0},
 Missing email template for dispatch. Please set one in Delivery Settings.,Modèle de courrier électronique manquant pour l'envoi. Veuillez en définir un dans les paramètres de livraison.,
-"Missing value for Password, API Key or Shopify URL","Valeur manquante pour le mot de passe, la clé API ou l&#39;URL Shopify",
+"Missing value for Password, API Key or Shopify URL","Valeur manquante pour le mot de passe, la clé API ou l'URL Shopify",
 Mode of Payment,Moyen de paiement,
 Mode of Payments,Mode de paiement,
 Mode of Transport,Mode de transport,
@@ -1694,7 +1694,7 @@
 No Permission,Aucune autorisation,
 No Remarks,Aucune Remarque,
 No Result to submit,Aucun résultat à valider,
-No Salary Structure assigned for Employee {0} on given date {1},Aucune structure de salaire attribuée à l&#39;employé {0} à la date donnée {1},
+No Salary Structure assigned for Employee {0} on given date {1},Aucune structure de salaire attribuée à l'employé {0} à la date donnée {1},
 No Staffing Plans found for this Designation,Aucun plan de dotation trouvé pour cette désignation,
 No Student Groups created.,Aucun Groupe d'Étudiants créé.,
 No Students in,Aucun étudiant dans,
@@ -1713,7 +1713,7 @@
 No more updates,Pas de mise à jour supplémentaire,
 No of Interactions,Nombre d'interactions,
 No of Shares,Nombre d'actions,
-No pending Material Requests found to link for the given items.,Aucune demande de matériel en attente n&#39;a été trouvée pour créer un lien vers les articles donnés.,
+No pending Material Requests found to link for the given items.,Aucune demande de matériel en attente n'a été trouvée pour créer un lien vers les articles donnés.,
 No products found,Aucun produit trouvé,
 No products found.,Aucun produit trouvé.,
 No record found,Aucun Enregistrement Trouvé,
@@ -1745,7 +1745,7 @@
 Not authroized since {0} exceeds limits,Non autorisé car {0} dépasse les limites,
 Not permitted for {0},Non autorisé pour {0},
 "Not permitted, configure Lab Test Template as required","Non autorisé, veuillez configurer le modèle de test de laboratoire",
-Not permitted. Please disable the Service Unit Type,Pas permis. Veuillez désactiver le type d&#39;unité de service,
+Not permitted. Please disable the Service Unit Type,Pas permis. Veuillez désactiver le type d'unité de service,
 Note: Due / Reference Date exceeds allowed customer credit days by {0} day(s),Remarque : Date de Référence / d’Échéance dépasse le nombre de jours de crédit client autorisé de {0} jour(s),
 Note: Item {0} entered multiple times,Remarque : Article {0} saisi plusieurs fois,
 Note: Payment Entry will not be created since 'Cash or Bank Account' was not specified,Remarque : Écriture de Paiement ne sera pas créée car le compte 'Compte Bancaire ou de Caisse' n'a pas été spécifié,
@@ -1957,7 +1957,7 @@
 Please click on 'Generate Schedule' to fetch Serial No added for Item {0},Veuillez cliquer sur ‘Générer Calendrier’ pour récupérer le N° Série ajouté à l'article {0},
 Please click on 'Generate Schedule' to get schedule,Veuillez cliquer sur ‘Générer Calendrier’ pour obtenir le calendrier,
 Please confirm once you have completed your training,Veuillez confirmer une fois que vous avez terminé votre formation,
-Please create purchase receipt or purchase invoice for the item {0},Veuillez créer un reçu d&#39;achat ou une facture d&#39;achat pour l&#39;article {0},
+Please create purchase receipt or purchase invoice for the item {0},Veuillez créer un reçu d'achat ou une facture d'achat pour l'article {0},
 Please define grade for Threshold 0%,Veuillez définir une note pour le Seuil 0%,
 Please enable Applicable on Booking Actual Expenses,Veuillez activer l'option : Applicable sur la base de l'enregistrement des dépenses réelles,
 Please enable Applicable on Purchase Order and Applicable on Booking Actual Expenses,Veuillez activer les options : Applicable sur la base des bons de commande d'achat et Applicable sur la base des bons de commande d'achat,
@@ -2024,10 +2024,10 @@
 Please select Company and Designation,Veuillez sélectionner la société et la désignation,
 Please select Company and Posting Date to getting entries,Veuillez sélectionner la société et la date de comptabilisation pour obtenir les écritures,
 Please select Company first,Veuillez d’abord sélectionner une Société,
-Please select Completion Date for Completed Asset Maintenance Log,Veuillez sélectionner la date d&#39;achèvement pour le journal de maintenance des actifs terminé,
+Please select Completion Date for Completed Asset Maintenance Log,Veuillez sélectionner la date d'achèvement pour le journal de maintenance des actifs terminé,
 Please select Completion Date for Completed Repair,Veuillez sélectionner la date d'achèvement pour la réparation terminée,
 Please select Course,Veuillez sélectionner un cours,
-Please select Drug,S&#39;il vous plaît sélectionnez Drug,
+Please select Drug,S'il vous plaît sélectionnez Drug,
 Please select Employee,Veuillez sélectionner un employé,
 Please select Existing Company for creating Chart of Accounts,Veuillez sélectionner une Société Existante pour créer un Plan de Compte,
 Please select Healthcare Service,Veuillez sélectionner le service de soins de santé,
@@ -2083,7 +2083,7 @@
 Please set Unrealized Exchange Gain/Loss Account in Company {0},Veuillez définir un compte de gain / perte de change non réalisé pour la société {0},
 Please set User ID field in an Employee record to set Employee Role,Veuillez définir le champ ID de l'Utilisateur dans un dossier Employé pour définir le Rôle de l’Employés,
 Please set a default Holiday List for Employee {0} or Company {1},Veuillez définir une Liste de Vacances par défaut pour l'Employé {0} ou la Société {1},
-Please set account in Warehouse {0},Veuillez définir un compte dans l&#39;entrepôt {0},
+Please set account in Warehouse {0},Veuillez définir un compte dans l'entrepôt {0},
 Please set an active menu for Restaurant {0},Veuillez définir un menu actif pour le restaurant {0},
 Please set associated account in Tax Withholding Category {0} against Company {1},Veuillez définir le compte associé dans la catégorie de retenue d'impôt {0} contre la société {1}.,
 Please set at least one row in the Taxes and Charges Table,Veuillez définir au moins une ligne dans le tableau des taxes et des frais.,
@@ -2158,13 +2158,13 @@
 "Pricing Rule is made to overwrite Price List / define discount percentage, based on some criteria.","La Règle de Tarification est faite pour remplacer la Liste de Prix / définir le pourcentage de remise, sur la base de certains critères.",
 Pricing Rule {0} is updated,La règle de tarification {0} est mise à jour,
 Pricing Rules are further filtered based on quantity.,Les Règles de Tarification sont d'avantage filtrés en fonction de la quantité.,
-Primary Address Details,Détails de l&#39;adresse principale,
+Primary Address Details,Détails de l'adresse principale,
 Primary Contact Details,Détails du contact principal,
 Principal Amount,Montant Principal,
 Print Format,Format d'Impression,
 Print IRS 1099 Forms,Imprimer les formulaires IRS 1099,
 Print Report Card,Imprimer le rapport,
-Print Settings,Paramètres d&#39;impression,
+Print Settings,Paramètres d'impression,
 Print and Stationery,Impression et Papeterie,
 Print settings updated in respective print format,Paramètres d'impression mis à jour avec le format d'impression indiqué,
 Print taxes with zero amount,Impression de taxes avec un montant nul,
@@ -2228,16 +2228,16 @@
 Purchase Invoice {0} is already submitted,La Facture d’Achat {0} est déjà soumise,
 Purchase Manager,Responsable des Achats,
 Purchase Master Manager,Responsable des Données d’Achats,
-Purchase Order,Bon de commande,
-Purchase Order Amount,Bon de commande,
-Purchase Order Amount(Company Currency),Montant du bon de commande (devise de la société),
-Purchase Order Date,Date du bon de commande,
-Purchase Order Items not received on time,Articles de commande d&#39;achat non reçus à temps,
-Purchase Order number required for Item {0},Numéro de Bon de Commande requis pour l'Article {0},
-Purchase Order to Payment,Du Bon de Commande au Paiement,
-Purchase Order {0} is not submitted,Le Bon de Commande {0} n’est pas soumis,
-Purchase Orders are not allowed for {0} due to a scorecard standing of {1}.,Les Bons de Commande ne sont pas autorisés pour {0} en raison d'une note sur la fiche d'évaluation de {1}.,
-Purchase Orders given to Suppliers.,Bons de Commande donnés aux Fournisseurs,
+Purchase Order,Commande d'Achat,
+Purchase Order Amount,Montant de la Commande d'Achat,
+Purchase Order Amount(Company Currency),Montant de la Commande d'Achat (devise de la société),
+Purchase Order Date,Date du de la Commande d'Achat,
+Purchase Order Items not received on time,Articles de la Commande d'Achat non reçus à temps,
+Purchase Order number required for Item {0},Numéro de la Commande d'Achat requis pour l'Article {0},
+Purchase Order to Payment,De la Commande d'Achat au Paiement,
+Purchase Order {0} is not submitted,La Commande d'Achat {0} n’est pas soumise,
+Purchase Orders are not allowed for {0} due to a scorecard standing of {1}.,Les Commandes d'Achats ne sont pas autorisés pour {0} en raison d'une note sur la fiche d'évaluation de {1}.,
+Purchase Orders given to Suppliers.,Commande d'Achat transmises aux Fournisseurs,
 Purchase Price List,Liste des Prix d'Achat,
 Purchase Receipt,Reçu d’Achat,
 Purchase Receipt {0} is not submitted,Le Reçu d’Achat {0} n'est pas soumis,
@@ -2440,13 +2440,13 @@
 Row #{0}: Expected Delivery Date cannot be before Purchase Order Date,Ligne {0}: la date de livraison prévue ne peut pas être avant la date de commande,
 Row #{0}: Item added,Ligne n ° {0}: élément ajouté,
 Row #{0}: Journal Entry {1} does not have account {2} or already matched against another voucher,Ligne #{0} : L’Écriture de Journal {1} n'a pas le compte {2} ou est déjà réconciliée avec une autre référence,
-Row #{0}: Not allowed to change Supplier as Purchase Order already exists,Ligne #{0} : Changement de Fournisseur non autorisé car un Bon de Commande existe déjà,
+Row #{0}: Not allowed to change Supplier as Purchase Order already exists,Ligne #{0} : Changement de Fournisseur non autorisé car une Commande d'Achat existe déjà,
 Row #{0}: Please set reorder quantity,Ligne #{0} : Veuillez définir la quantité de réapprovisionnement,
 Row #{0}: Please specify Serial No for Item {1},Ligne # {0} : Veuillez Indiquer le N° de série pour l'article {1},
 Row #{0}: Qty increased by 1,Ligne n ° {0}: quantité augmentée de 1,
 Row #{0}: Rate must be same as {1}: {2} ({3} / {4}) ,Ligne #{0} : Le Prix doit être le même que {1}: {2} ({3} / {4}),
 Row #{0}: Reference Document Type must be one of Expense Claim or Journal Entry,Ligne {0}: Le Type de Document de Référence doit être soit une Note de Frais soit une Écriture de Journal,
-"Row #{0}: Reference Document Type must be one of Purchase Order, Purchase Invoice or Journal Entry","Ligne #{0} : Type de Document de Référence doit être un Bon de Commande, une Facture d'Achat ou une Écriture de Journal",
+"Row #{0}: Reference Document Type must be one of Purchase Order, Purchase Invoice or Journal Entry","Ligne #{0} : Type de Document de Référence doit être une Commande d'Achat, une Facture d'Achat ou une Écriture de Journal",
 Row #{0}: Rejected Qty can not be entered in Purchase Return,Ligne #{0} : Qté Rejetée ne peut pas être entrée dans le Retour d’Achat,
 Row #{0}: Rejected Warehouse is mandatory against rejected Item {1},Ligne #{0} : Entrepôt de Rejet est obligatoire pour l’Article rejeté {1},
 Row #{0}: Reqd by Date cannot be before Transaction Date,La ligne # {0}: Reqd par date ne peut pas être antérieure à la date de la transaction,
@@ -2456,9 +2456,9 @@
 Row #{0}: Timings conflicts with row {1},Ligne #{0}: Minutage en conflit avec la ligne {1},
 Row #{0}: {1} can not be negative for item {2},Ligne #{0} : {1} ne peut pas être négatif pour l’article {2},
 Row No {0}: Amount cannot be greater than Pending Amount against Expense Claim {1}. Pending Amount is {2},Ligne N° {0}: Le montant ne peut être supérieur au Montant en Attente pour la Note de Frais {1}. Le Montant en Attente est de {2},
-Row {0} : Operation is required against the raw material item {1},Ligne {0}: l&#39;opération est requise pour l&#39;article de matière première {1},
+Row {0} : Operation is required against the raw material item {1},Ligne {0}: l'opération est requise pour l'article de matière première {1},
 Row {0}# Allocated amount {1} cannot be greater than unclaimed amount {2},La ligne {0} # Montant alloué {1} ne peut pas être supérieure au montant non réclamé {2},
-Row {0}# Item {1} cannot be transferred more than {2} against Purchase Order {3},La ligne {0} # article {1} ne peut pas être transférée plus de {2} par commande d&#39;achat {3},
+Row {0}# Item {1} cannot be transferred more than {2} against Purchase Order {3},La ligne {0} # article {1} ne peut pas être transférée plus de {2} par commande d'achat {3},
 Row {0}# Paid Amount cannot be greater than requested advance amount,La ligne {0} # Montant payé ne peut pas être supérieure au montant de l'avance demandée,
 Row {0}: Activity Type is mandatory.,Ligne {0} : Le Type d'Activité est obligatoire.,
 Row {0}: Advance against Customer must be credit,Ligne {0} : L’Avance du Client doit être un crédit,
@@ -2637,7 +2637,7 @@
 Sent,Envoyé,
 Serial No and Batch,N° de Série et lot,
 Serial No is mandatory for Item {0},N° de Série est obligatoire pour l'Article {0},
-Serial No {0} does not belong to Batch {1},Le numéro de série {0} n&#39;appartient pas au lot {1},
+Serial No {0} does not belong to Batch {1},Le numéro de série {0} n'appartient pas au lot {1},
 Serial No {0} does not belong to Delivery Note {1},N° de Série {0} ne fait pas partie du Bon de Livraison {1},
 Serial No {0} does not belong to Item {1},N° de Série {0} n'appartient pas à l'Article {1},
 Serial No {0} does not belong to Warehouse {1},N° de Série {0} ne fait pas partie de l’Entrepôt {1},
@@ -2669,7 +2669,7 @@
 Service Stop Date cannot be before Service Start Date,La date d'arrêt du service ne peut pas être antérieure à la date de début du service,
 Services,Services,
 "Set Default Values like Company, Currency, Current Fiscal Year, etc.","Définir les Valeurs par Défaut comme : Societé, Devise, Exercice Actuel, etc...",
-Set Details,Détails de l&#39;ensemble,
+Set Details,Détails de l'ensemble,
 Set New Release Date,Définir la nouvelle date de fin de mise en attente,
 Set Project and all Tasks to status {0}?,Définir le projet et toutes les tâches sur le statut {0}?,
 Set Status,Définir le statut,
@@ -2948,7 +2948,7 @@
 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,
 The Item {0} cannot have Batch,L'Article {0} ne peut être en Lot,
-The Loyalty Program isn't valid for the selected company,Le programme de fidélité n&#39;est pas valable pour la société sélectionnée,
+The Loyalty Program isn't valid for the selected company,Le programme de fidélité n'est pas valable pour la société sélectionnée,
 The Payment Term at row {0} is possibly a duplicate.,Le délai de paiement à la ligne {0} est probablement un doublon.,
 The Term End Date cannot be earlier than the Term Start Date. Please correct the dates and try again.,La Date de Fin de Terme ne peut pas être antérieure à la Date de Début de Terme. Veuillez corriger les dates et essayer à nouveau.,
 The Term End Date cannot be later than the Year End Date of the Academic Year to which the term is linked (Academic Year {}). Please correct the dates and try again.,La Date de Fin de Terme ne peut pas être postérieure à la Date de Fin de l'Année Académique à laquelle le terme est lié (Année Académique {}). Veuillez corriger les dates et essayer à nouveau.,
@@ -2978,7 +2978,7 @@
 There can be multiple tiered collection factor based on the total spent. But the conversion factor for redemption will always be same for all the tier.,Il peut y avoir plusieurs facteurs de collecte hiérarchisés en fonction du total dépensé. Mais le facteur de conversion pour l'échange sera toujours le même pour tous les niveaux.,
 There can only be 1 Account per Company in {0} {1},Il ne peut y avoir qu’un Compte par Société dans {0} {1},
 "There can only be one Shipping Rule Condition with 0 or blank value for ""To Value""","Il ne peut y avoir qu’une Condition de Règle de Livraison avec 0 ou une valeur vide pour « A la Valeur""",
-There is no leave period in between {0} and {1},Il n&#39;y a pas de période de congé entre {0} et {1},
+There is no leave period in between {0} and {1},Il n'y a pas de période de congé entre {0} et {1},
 There is not enough leave balance for Leave Type {0},Il n'y a pas assez de solde de congés pour les Congés de Type {0},
 There is nothing to edit.,Il n'y a rien à modifier.,
 There isn't any item variant for the selected item,Il n'y a pas de variante d'article pour l'article sélectionné,
@@ -3011,7 +3011,7 @@
 This is based on transactions against this Patient. See timeline below for details,Ceci est basé sur les transactions de ce patient. Voir la chronologie ci-dessous pour plus de détails,
 This is based on transactions against this Sales Person. See timeline below for details,Ceci est basé sur les transactions contre ce vendeur. Voir la chronologie ci-dessous pour plus de détails,
 This is based on transactions against this Supplier. See timeline below for details,Basé sur les transactions avec ce fournisseur. Voir la chronologie ci-dessous pour plus de détails,
-This will submit Salary Slips and create accrual Journal Entry. Do you want to proceed?,Cela permettra de valider des bulletins de salaire et de créer une écriture de journal d&#39;accumulation. Voulez-vous poursuivre?,
+This will submit Salary Slips and create accrual Journal Entry. Do you want to proceed?,Cela permettra de valider des bulletins de salaire et de créer une écriture de journal d'accumulation. Voulez-vous poursuivre?,
 This {0} conflicts with {1} for {2} {3},Ce {0} est en conflit avec {1} pour {2} {3},
 Time Sheet for manufacturing.,Feuille de Temps pour la production.,
 Time Tracking,Suivi du temps,
@@ -3105,9 +3105,9 @@
 Total Variance,Variance totale,
 Total Weightage of all Assessment Criteria must be 100%,Le total des pondérations de tous les Critères d'Évaluation doit être égal à 100%,
 Total advance ({0}) against Order {1} cannot be greater than the Grand Total ({2}),Avance totale ({0}) pour la Commande {1} ne peut pas être supérieure au Total Général ({2}),
-Total advance amount cannot be greater than total claimed amount,Le montant total de l&#39;avance ne peut être supérieur au montant total réclamé,
+Total advance amount cannot be greater than total claimed amount,Le montant total de l'avance ne peut être supérieur au montant total réclamé,
 Total advance amount cannot be greater than total sanctioned amount,Le montant total de l'avance ne peut être supérieur au montant total approuvé,
-Total allocated leaves are more days than maximum allocation of {0} leave type for employee {1} in the period,Le nombre total de congés alloués est supérieur de plusieurs jours à l&#39;allocation maximale du type de congé {0} pour l&#39;employé {1} au cours de la période,
+Total allocated leaves are more days than maximum allocation of {0} leave type for employee {1} in the period,Le nombre total de congés alloués est supérieur de plusieurs jours à l'allocation maximale du type de congé {0} pour l'employé {1} au cours de la période,
 Total allocated leaves are more than days in the period,Le Total des feuilles attribuées est supérieur au nombre de jours dans la période,
 Total allocated percentage for sales team should be 100,Pourcentage total attribué à l'équipe commerciale devrait être de 100,
 Total cannot be zero,Total ne peut pas être zéro,
@@ -3207,7 +3207,7 @@
 User {0} does not exist,Utilisateur {0} n'existe pas,
 User {0} doesn't have any default POS Profile. Check Default at Row {1} for this User.,L'utilisateur {0} n'a aucun profil POS par défaut. Vérifiez par défaut à la ligne {1} pour cet utilisateur.,
 User {0} is already assigned to Employee {1},Utilisateur {0} est déjà attribué à l'Employé {1},
-User {0} is already assigned to Healthcare Practitioner {1},L&#39;utilisateur {0} est déjà attribué à un professionnel de la santé {1},
+User {0} is already assigned to Healthcare Practitioner {1},L'utilisateur {0} est déjà attribué à un professionnel de la santé {1},
 Users,Utilisateurs,
 Utility Expenses,Frais de Services d'Utilité Publique,
 Valid From Date must be lesser than Valid Upto Date.,La date de début de validité doit être inférieure à la date de mise en service valide.,
@@ -3252,7 +3252,7 @@
 Visit the forums,Visitez les forums,
 Vital Signs,Signes vitaux,
 Volunteer,Bénévole,
-Volunteer Type information.,Volontaire Type d&#39;information.,
+Volunteer Type information.,Volontaire Type d'information.,
 Volunteer information.,Informations sur le bénévolat,
 Voucher #,Référence #,
 Voucher No,N° de Référence,
@@ -3279,7 +3279,7 @@
 Warning: Invalid attachment {0},Attention : Pièce jointe non valide {0},
 Warning: Leave application contains following block dates,Attention : la demande de congé contient les dates bloquées suivantes,
 Warning: Material Requested Qty is less than Minimum Order Qty,Attention : La Quantité de Matériel Commandé est inférieure à la Qté Minimum de Commande,
-Warning: Sales Order {0} already exists against Customer's Purchase Order {1},Attention : La Commande Client {0} existe déjà pour le Bon de Commande du Client {1},
+Warning: Sales Order {0} already exists against Customer's Purchase Order {1},Attention : La Commande Client {0} existe déjà pour la Commande d'Achat du Client {1},
 Warning: System will not check overbilling since amount for Item {0} in {1} is zero,Attention : Le système ne vérifie pas la surfacturation car le montant pour l'Article {0} dans {1} est nul,
 Warranty,garantie,
 Warranty Claim,Réclamation de Garantie,
@@ -3344,7 +3344,7 @@
 You have already selected items from {0} {1},Vous avez déjà choisi des articles de {0} {1},
 You have been invited to collaborate on the project: {0},Vous avez été invité à collaborer sur le projet : {0},
 You have entered duplicate items. Please rectify and try again.,Vous avez entré un doublon. Veuillez rectifier et essayer à nouveau.,
-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&#39;administrateur avec les rôles System Manager et Item Manager pour vous inscrire sur Marketplace.,
+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,
@@ -3383,7 +3383,7 @@
 {0} Student Groups created.,{0} Groupes d'Étudiants créés.,
 {0} Students have been enrolled,{0} étudiants ont été inscrits,
 {0} against Bill {1} dated {2},{0} pour la Facture {1} du {2},
-{0} against Purchase Order {1},{0} pour le Bon de Commande d'Achat {1},
+{0} against Purchase Order {1},{0} pour la Commande d'Achat {1},
 {0} against Sales Invoice {1},{0} pour la Facture de Vente {1},
 {0} against Sales Order {1},{0} pour la Commande Client {1},
 {0} already allocated for Employee {1} for period {2} to {3},{0} déjà alloué pour l’Employé {1} pour la période {2} à {3},
@@ -3408,7 +3408,7 @@
 {0} is not a stock Item,{0} n'est pas un Article de stock,
 {0} is not a valid Batch Number for Item {1},{0} n'est pas un Numéro de Lot valide pour l’Article {1},
 {0} is not added in the table,{0} n'est pas ajouté dans la table,
-{0} is not in Optional Holiday List,{0} n&#39;est pas dans la liste des jours fériés facultatifs,
+{0} is not in Optional Holiday List,{0} n'est pas dans la liste des jours fériés facultatifs,
 {0} is not in a valid Payroll Period,{0} n'est pas dans une période de paie valide,
 {0} is now the default Fiscal Year. Please refresh your browser for the change to take effect.,{0} est désormais l’Exercice par défaut. Veuillez actualiser la page pour que les modifications soient prises en compte.,
 {0} is on hold till {1},{0} est en attente jusqu'à {1},
@@ -3478,7 +3478,7 @@
 Email Group,Groupe Email,
 Email Settings,Paramètres d'Email,
 Email not sent to {0} (unsubscribed / disabled),Email pas envoyé à {0} (désabonné / désactivé),
-Error Message,Message d&#39;erreur,
+Error Message,Message d'erreur,
 Fieldtype,Type de Champ,
 Help Articles,Articles d'Aide,
 ID,ID,
@@ -3506,7 +3506,7 @@
 Reviews,Avis,
 Sender,Expéditeur,
 Shop,Magasin,
-Sign Up,S&#39;inscrire,
+Sign Up,S'inscrire,
 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.,
@@ -3558,7 +3558,7 @@
 Portrait,Portrait,
 Print Heading,Imprimer Titre,
 Scheduler Inactive,Planificateur inactif,
-Scheduler is inactive. Cannot import data.,Le planificateur est inactif. Impossible d&#39;importer des données.,
+Scheduler is inactive. Cannot import data.,Le planificateur est inactif. Impossible d'importer des données.,
 Show Document,Afficher le document,
 Show Traceback,Afficher le traçage,
 Video,Vidéo,
@@ -3578,7 +3578,7 @@
 Account: <b>{0}</b> is capital Work in progress and can not be updated by Journal Entry,Compte: <b>{0}</b> est un travail capital et ne peut pas être mis à jour par une écriture au journal.,
 Account: {0} is not permitted under Payment Entry,Compte: {0} n'est pas autorisé sous Saisie du paiement.,
 Accounting Dimension <b>{0}</b> is required for 'Balance Sheet' account {1}.,La dimension de comptabilité <b>{0}</b> est requise pour le compte &quot;Bilan&quot; {1}.,
-Accounting Dimension <b>{0}</b> is required for 'Profit and Loss' account {1}.,La dimension de comptabilité <b>{0}</b> est requise pour le compte &#39;Bénéfices et pertes&#39; {1}.,
+Accounting Dimension <b>{0}</b> is required for 'Profit and Loss' account {1}.,La dimension de comptabilité <b>{0}</b> est requise pour le compte 'Bénéfices et pertes' {1}.,
 Accounting Masters,Maîtres Comptables,
 Accounting Period overlaps with {0},La période comptable chevauche avec {0},
 Activity,Activité,
@@ -3619,7 +3619,7 @@
 Attendance has been marked as per employee check-ins,La présence a été marquée selon les enregistrements des employés,
 Authentication Failed,Authentification échouée,
 Automatic Reconciliation,Rapprochement automatique,
-Available For Use Date,Date d&#39;utilisation disponible,
+Available For Use Date,Date d'utilisation disponible,
 Available Stock,Stock disponible,
 "Available quantity is {0}, you need {1}",La quantité disponible est {0}. Vous avez besoin de {1}.,
 BOM 1,BOM 1,
@@ -3629,12 +3629,12 @@
 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&#39;existe pas,
+Bank Data mapper doesn't exist,Bank Data Mapper n'existe pas,
 Bank Details,Coordonnées bancaires,
 Bank account '{0}' has been synchronized,Le compte bancaire '{0}' a été synchronisé,
-Bank account {0} already exists and could not be created again,Le compte bancaire {0} existe déjà et n&#39;a pas pu être créé à nouveau.,
+Bank account {0} already exists and could not be created again,Le compte bancaire {0} existe déjà et n'a pas pu être créé à nouveau.,
 Bank accounts added,Comptes bancaires ajoutés,
-Batch no is required for batched item {0},Le numéro de lot est requis pour l&#39;article en lot {0}.,
+Batch no is required for batched item {0},Le numéro de lot est requis pour l'article en lot {0}.,
 Billing Date,Date de facturation,
 Billing Interval Count cannot be less than 1,Le nombre d'intervalles de facturation ne peut pas être inférieur à 1,
 Blue,Bleu,
@@ -3689,7 +3689,7 @@
 Ctrl+Enter to submit,Ctrl + Entrée pour valider,
 Currency,Devise,
 Current Status,Statut Actuel,
-Customer PO,Bon de commande client,
+Customer PO,Commande d'Achat client,
 Customize,Personnaliser,
 Daily,Quotidien,
 Date,Date,
@@ -3726,7 +3726,7 @@
 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&#39;identification de transporteur ou un numéro de véhicule est requis si le mode de transport est la route.,
+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,
 Employee ID is linked with another instructor,L'ID de l'employé est lié à un autre instructeur,
@@ -3745,14 +3745,14 @@
 Error in Exotel incoming call,Erreur dans un appel entrant Exotel,
 Error: {0} is mandatory field,Erreur: {0} est un champ obligatoire,
 Event Link,Lien d'événement,
-Exception occurred while reconciling {0},Une exception s&#39;est produite lors de la réconciliation {0},
+Exception occurred while reconciling {0},Une exception s'est produite lors de la réconciliation {0},
 Expected and Discharge dates cannot be less than Admission Schedule date,Les dates prévues et de sortie ne peuvent pas être inférieures à la date du calendrier d'admission,
 Expire Allocation,Expiration de l'allocation,
 Expired,Expiré,
 Export,Exporter,
 Export not allowed. You need {0} role to export.,Pas autorisé à exporter. Vous devez avoir le rôle {0} pour exporter.,
 Failed to add Domain,Impossible d'ajouter le domaine,
-Fetch Items from Warehouse,Récupérer des articles de l&#39;entrepôt,
+Fetch Items from Warehouse,Récupérer des articles de l'entrepôt,
 Fetching...,Aller chercher...,
 Field,Champ,
 File Manager,Gestionnaire de Fichiers,
@@ -3788,13 +3788,13 @@
 "Helps you keep tracks of Contracts based on Supplier, Customer and Employee","Vous aide à garder une trace des contrats en fonction du fournisseur, client et employé",
 Helps you manage appointments with your leads,Vous aide à gérer les rendez-vous avec vos prospects,
 Home,Accueil,
-IBAN is not valid,IBAN n&#39;est pas valide,
+IBAN is not valid,IBAN n'est pas valide,
 Import Data from CSV / Excel files.,Importer des données à partir de fichiers CSV / Excel,
 In Progress,En cours,
 Incoming call from {0},Appel entrant du {0},
 Incorrect Warehouse,Entrepôt incorrect,
 Intermediate,Intermédiaire,
-Invalid Barcode. There is no Item attached to this barcode.,Code à barres invalide. Il n&#39;y a pas d&#39;article attaché à ce code à barres.,
+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.,
@@ -3857,7 +3857,7 @@
 No Employee found for the given employee field value. '{}': {},Aucun employé trouvé pour la valeur de champ d'employé donnée. '{}': {},
 No Leaves Allocated to Employee: {0} for Leave Type: {1},Aucun congé attribué à l'employé: {0} pour le type de congé: {1},
 No communication found.,Aucune communication trouvée.,
-No correct answer is set for {0},Aucune réponse correcte n&#39;est définie pour {0}.,
+No correct answer is set for {0},Aucune réponse correcte n'est définie pour {0}.,
 No description,Pas de description,
 No issue has been raised by the caller.,Aucun problème n'a été soulevé par l'appelant.,
 No items to publish,Aucun élément à publier,
@@ -3908,15 +3908,15 @@
 Plaid transactions sync error,Erreur de synchronisation des transactions plaid,
 Please check the error log for details about the import errors,Veuillez consulter le journal des erreurs pour plus de détails sur les erreurs d'importation.,
 Please create <b>DATEV Settings</b> for Company <b>{}</b>.,Veuillez créer les <b>paramètres DATEV</b> pour l'entreprise <b>{}</b> .,
-Please create adjustment Journal Entry for amount {0} ,Veuillez créer une écriture de journal d&#39;ajustement pour le montant {0},
+Please create adjustment Journal Entry for amount {0} ,Veuillez créer une écriture de journal d'ajustement pour le montant {0},
 Please do not create more than 500 items at a time,Ne créez pas plus de 500 objets à la fois.,
 Please enter <b>Difference Account</b> or set default <b>Stock Adjustment Account</b> for company {0},Veuillez saisir un <b>compte d'écart</b> ou définir un <b>compte d'ajustement de stock</b> par défaut pour la société {0},
-Please enter GSTIN and state for the Company Address {0},Veuillez saisir GSTIN et indiquer l&#39;adresse de la société {0}.,
+Please enter GSTIN and state for the Company Address {0},Veuillez saisir GSTIN et indiquer l'adresse de la société {0}.,
 Please enter Item Code to get item taxes,Veuillez entrer le code de l'article pour obtenir les taxes sur les articles,
 Please enter Warehouse and Date,Veuillez entrer entrepôt et date,
 Please enter the designation,S'il vous plaît entrer la désignation,
 Please login as a Marketplace User to edit this item.,Veuillez vous connecter en tant qu'utilisateur Marketplace pour modifier cet article.,
-Please login as a Marketplace User to report this item.,Veuillez vous connecter en tant qu&#39;utilisateur de la Marketplace pour signaler cet élément.,
+Please login as a Marketplace User to report this item.,Veuillez vous connecter en tant qu'utilisateur de la Marketplace pour signaler cet élément.,
 Please select <b>Template Type</b> to download template,Veuillez sélectionner le <b>type</b> de modèle pour télécharger le modèle,
 Please select Applicant Type first,Veuillez d'abord sélectionner le type de demandeur,
 Please select Customer first,S'il vous plaît sélectionnez d'abord le client,
@@ -3926,11 +3926,11 @@
 Please select a Sales Person for item: {0},Veuillez sélectionner un commercial pour l'article: {0},
 Please select another payment method. Stripe does not support transactions in currency '{0}',Veuillez sélectionner une autre méthode de paiement. Stripe ne prend pas en charge les transactions en devise '{0}',
 Please select the customer.,S'il vous plaît sélectionner le client.,
-Please set a Supplier against the Items to be considered in the Purchase Order.,Veuillez définir un fournisseur par rapport aux articles à prendre en compte dans le bon de commande.,
+Please set a Supplier against the Items to be considered in the Purchase Order.,Veuillez définir un fournisseur par rapport aux articles à prendre en compte dans la Commande d'Achat.,
 Please set account heads in GST Settings for Compnay {0},Définissez les en-têtes de compte dans les paramètres de la TPS pour le service {0}.,
 Please set an email id for the Lead {0},Veuillez définir un identifiant de messagerie pour le prospect {0}.,
 Please set default UOM in Stock Settings,Veuillez définir l'UdM par défaut dans les paramètres de stock,
-Please set filter based on Item or Warehouse due to a large amount of entries.,Veuillez définir le filtre en fonction de l&#39;article ou de l&#39;entrepôt en raison d&#39;une grande quantité d&#39;entrées.,
+Please set filter based on Item or Warehouse due to a large amount of entries.,Veuillez définir le filtre en fonction de l'article ou de l'entrepôt en raison d'une grande quantité d'entrées.,
 Please set up the Campaign Schedule in the Campaign {0},Configurez le calendrier de la campagne dans la campagne {0}.,
 Please set valid GSTIN No. in Company Address for company {0},Veuillez définir un numéro GSTIN valide dans l'adresse de l'entreprise pour l'entreprise {0},
 Please set {0},Veuillez définir {0},customer
@@ -4030,7 +4030,7 @@
 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,
-Select finance book for the item {0} at row {1},Sélectionnez le livre de financement pour l&#39;élément {0} à la ligne {1}.,
+Select finance book for the item {0} at row {1},Sélectionnez le livre de financement pour l'élément {0} à la ligne {1}.,
 Select only one Priority as Default.,Sélectionnez une seule priorité par défaut.,
 Seller Information,Information du vendeur,
 Send,Envoyer,
@@ -4039,12 +4039,12 @@
 Sends Mails to lead or contact based on a Campaign schedule,Envoie des courriers à diriger ou à contacter en fonction d'un calendrier de campagne,
 Serial Number Created,Numéro de série créé,
 Serial Numbers Created,Numéros de série créés,
-Serial no(s) required for serialized item {0},N ° de série requis pour l&#39;article sérialisé {0},
+Serial no(s) required for serialized item {0},N ° de série requis pour l'article sérialisé {0},
 Series,Séries,
 Server Error,Erreur du Serveur,
-Service Level Agreement has been changed to {0}.,L&#39;accord de niveau de service a été remplacé par {0}.,
+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&#39;accord de niveau de service avec le type d&#39;entité {0} et l&#39;entité {1} existe déjà.,
+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},
@@ -4083,14 +4083,14 @@
 Tax Account not specified for Shopify Tax {0},Compte de taxe non spécifié pour Shopify Tax {0},
 Tax Total,Total de la taxe,
 Template,Modèle,
-The Campaign '{0}' already exists for the {1} '{2}',La campagne &#39;{0}&#39; existe déjà pour le {1} &#39;{2}&#39;.,
+The Campaign '{0}' already exists for the {1} '{2}',La campagne '{0}' existe déjà pour le {1} '{2}'.,
 The difference between from time and To Time must be a multiple of Appointment,La différence entre from time et To Time doit être un multiple de Appointment,
 The field Asset Account cannot be blank,Le champ Compte d'actif ne peut pas être vide,
 The field Equity/Liability Account cannot be blank,Le champ Compte d’équité / de responsabilité ne peut pas être vide,
 The following serial numbers were created: <br><br> {0},Les numéros de série suivants ont été créés: <br><br> {0},
 The parent account {0} does not exists in the uploaded template,Le compte parent {0} n'existe pas dans le modèle téléchargé,
 The question cannot be duplicate,La question ne peut pas être dupliquée,
-The selected payment entry should be linked with a creditor bank transaction,L&#39;entrée de paiement sélectionnée doit être liée à une transaction bancaire créditrice,
+The selected payment entry should be linked with a creditor bank transaction,L'entrée de paiement sélectionnée doit être liée à une transaction bancaire créditrice,
 The selected payment entry should be linked with a debtor bank transaction,L'entrée de paiement sélectionnée doit être liée à une transaction bancaire débitrice,
 The total allocated amount ({0}) is greated than the paid amount ({1}).,Le montant total alloué ({0}) est supérieur au montant payé ({1}).,
 There are no vacancies under staffing plan {0},Il n'y a pas de postes vacants dans le plan de dotation en personnel {0},
@@ -4109,7 +4109,7 @@
 To date needs to be before from date,À ce jour doit être avant la date du,
 Total,Total,
 Total Early Exits,Total des sorties anticipées,
-Total Late Entries,Nombre total d&#39;entrées en retard,
+Total Late Entries,Nombre total d'entrées en retard,
 Total Payment Request amount cannot be greater than {0} amount,Le montant total de la demande de paiement ne peut être supérieur à {0}.,
 Total payments amount can't be greater than {},Le montant total des paiements ne peut être supérieur à {},
 Totals,Totaux,
@@ -4131,7 +4131,7 @@
 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&#39;un compte bancaire",
+"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,
 Use a name that is different from previous project name,Utilisez un nom différent du nom du projet précédent,
 User {0} is disabled,Utilisateur {0} est désactivé,
@@ -4160,7 +4160,7 @@
 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.,
 You can also copy-paste this link in your browser,Vous pouvez également copier-coller ce lien dans votre navigateur,
-You can publish upto 200 items.,Vous pouvez publier jusqu&#39;à 200 articles.,
+You can publish upto 200 items.,Vous pouvez publier jusqu'à 200 articles.,
 You have to enable auto re-order in Stock Settings to maintain re-order levels.,Vous devez activer la re-commande automatique dans les paramètres de stock pour maintenir les niveaux de ré-commande.,
 You must be a registered supplier to generate e-Way Bill,Vous devez être un fournisseur enregistré pour générer une facture électronique,
 You need to login as a Marketplace User before you can add any reviews.,Vous devez vous connecter en tant qu'utilisateur de la Marketplace avant de pouvoir ajouter des critiques.,
@@ -4217,7 +4217,7 @@
 Mode Of Payment,Mode de Paiement,
 No students Found,Aucun étudiant trouvé,
 Not in Stock,En Rupture de Stock,
-Please select a Customer,S&#39;il vous plaît sélectionner un client,
+Please select a Customer,S'il vous plaît sélectionner un client,
 Printed On,Imprimé sur,
 Received From,Reçu de,
 Sales Person,Vendeur,
@@ -4227,7 +4227,7 @@
 Email Id,Identifiant Email,
 No,Non,
 Reference Doctype,DocType de la Référence,
-User Id,Identifiant d&#39;utilisateur,
+User Id,Identifiant d'utilisateur,
 Yes,Oui,
 Actual ,Réel,
 Add to cart,Ajouter au Panier,
@@ -4263,7 +4263,7 @@
 Sales person,Vendeur,
 Serial No {0} Created,N° de Série {0} créé,
 Source Location is required for the Asset {0},La localisation source est requis pour l'actif {0},
-Tax Id,Numéro d&#39;identification fiscale,
+Tax Id,Numéro d'identification fiscale,
 To Time,Horaire de Fin,
 To date cannot be before from date,À ce jour ne peut pas être antérieure à la date du,
 Total Taxable value,Valeur taxable totale,
@@ -4296,25 +4296,25 @@
 Fetch Serial Numbers based on FIFO,Récupérer les numéros de série basés sur FIFO,
 "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}.",
-Current Odometer Value should be greater than Last Odometer Value {0},La valeur actuelle de l&#39;odomètre doit être supérieure à la dernière valeur de l&#39;odomètre {0},
-No additional expenses has been added,Aucune dépense supplémentaire n&#39;a été ajoutée,
+Current Odometer Value should be greater than Last Odometer Value {0},La valeur actuelle de l'odomètre doit être supérieure à la dernière valeur de l'odomètre {0},
+No additional expenses has been added,Aucune dépense supplémentaire n'a été ajoutée,
 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&#39;éléments est obligatoire pour la création automatique de l&#39;élément {},
+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 {},
 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&#39;entreprise {3}. Veuillez sélectionner un compte à recevoir ou à payer avec la devise {2}.,
+{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,
-Purchase Order Required,Bon de Commande Requis,
+Purchase Order Required,Commande d'Achat requise,
 Purchase Receipt Required,Reçu d’Achat Requis,
 Account Missing,Compte manquant,
 Requested,Demandé,
 Partially Paid,Partiellement payé,
 Invalid Account Currency,Devise de compte non valide,
-"Row {0}: The item {1}, quantity must be positive number","Ligne {0}: l&#39;article {1}, la quantité doit être un nombre positif",
-"Please set {0} for Batched Item {1}, which is used to set {2} on Submit.","Veuillez définir {0} pour l&#39;article par lots {1}, qui est utilisé pour définir {2} sur Valider.",
-Expiry Date Mandatory,Date d&#39;expiration obligatoire,
+"Row {0}: The item {1}, quantity must be positive number","Ligne {0}: l'article {1}, la quantité doit être un nombre positif",
+"Please set {0} for Batched Item {1}, which is used to set {2} on Submit.","Veuillez définir {0} pour l'article par lots {1}, qui est utilisé pour définir {2} sur Valider.",
+Expiry Date Mandatory,Date d'expiration obligatoire,
 Variant Item,Élément de variante,
 BOM 1 {0} and BOM 2 {1} should not be same,La nomenclature 1 {0} et la nomenclature 2 {1} ne doivent pas être identiques,
-Note: Item {0} added multiple times,Remarque: l&#39;élément {0} a été ajouté plusieurs fois,
+Note: Item {0} added multiple times,Remarque: l'élément {0} a été ajouté plusieurs fois,
 YouTube,Youtube,
 Vimeo,Vimeo,
 Publish Date,Date de publication,
@@ -4326,7 +4326,7 @@
 Invalid naming series (. missing) for {0},Série de noms 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&#39;est pas valide,
+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,
 Invalid Part Number,Numéro de pièce non valide,
 Select atleast one Social Media from Share on.,Sélectionnez au moins un média social à partir de Partager.,
 Invalid Scheduled Time,Heure programmée non valide,
@@ -4335,53 +4335,53 @@
 "Session not valid, Do you want to login?","Session non valide, voulez-vous vous connecter?",
 Session Active,Session active,
 Session Not Active. Save doc to login.,Session non active. Enregistrez le document pour vous connecter.,
-Error! Failed to get request token.,Erreur! Échec de l&#39;obtention du jeton de demande.,
+Error! Failed to get request token.,Erreur! Échec de l'obtention du jeton de demande.,
 Invalid {0} or {1},{0} ou {1} non valide,
-Error! Failed to get access token.,Erreur! Échec de l&#39;obtention du jeton d&#39;accès.,
+Error! Failed to get access token.,Erreur! Échec de l'obtention du jeton d'accès.,
 Invalid Consumer Key or Consumer Secret Key,Clé de consommateur ou clé secrète de consommateur non valide,
 Your Session will be expire in ,Votre session expirera dans,
  days.,journées.,
 Session is expired. Save doc to login.,La session a expiré. Enregistrez le document pour vous connecter.,
-Error While Uploading Image,Erreur lors du téléchargement de l&#39;image,
-You Didn't have permission to access this API,Vous n&#39;aviez pas l&#39;autorisation d&#39;accéder à cette API,
+Error While Uploading Image,Erreur lors du téléchargement de l'image,
+You Didn't have permission to access this API,Vous n'aviez pas l'autorisation d'accéder à cette API,
 Valid Upto date cannot be before Valid From date,La date de validité valide ne peut pas être antérieure à la date de début de validité,
-Valid From date not in Fiscal Year {0},Date de début de validité non comprise dans l&#39;exercice {0},
-Valid Upto date not in Fiscal Year {0},Valable jusqu&#39;à la date hors exercice {0},
+Valid From date not in Fiscal Year {0},Date de début de validité non comprise dans l'exercice {0},
+Valid Upto date not in Fiscal Year {0},Valable jusqu'à la date hors exercice {0},
 Group Roll No,Groupe Roll Non,
 Maintain Same Rate Throughout Sales Cycle,Maintenir le Même Taux Durant le Cycle de Vente,
 "Row {1}: Quantity ({0}) cannot be a fraction. To allow this, disable '{2}' in UOM {3}.","Ligne {1}: la quantité ({0}) ne peut pas être une fraction. Pour autoriser cela, désactivez «{2}» dans UdM {3}.",
 Must be Whole Number,Doit être un Nombre Entier,
-Please setup Razorpay Plan ID,Veuillez configurer l&#39;ID du plan Razorpay,
+Please setup Razorpay Plan ID,Veuillez configurer l'ID du plan Razorpay,
 Contact Creation Failed,La création du contact a échoué,
-{0} already exists for employee {1} and period {2},{0} existe déjà pour l&#39;employé {1} et la période {2},
+{0} already exists for employee {1} and period {2},{0} existe déjà pour l'employé {1} et la période {2},
 Leaves Allocated,Feuilles allouées,
 Leaves Expired,Feuilles expirées,
 Leave Without Pay does not match with approved {} records,Le congé sans solde ne correspond pas aux enregistrements {} approuvés,
-Income Tax Slab not set in Salary Structure Assignment: {0},Dalle d&#39;impôt sur le revenu non définie dans l&#39;affectation de la structure salariale: {0},
-Income Tax Slab: {0} is disabled,Dalle d&#39;impôt sur le revenu: {0} est désactivée,
-Income Tax Slab must be effective on or before Payroll Period Start Date: {0},La dalle d&#39;impôt sur le revenu doit entrer en vigueur à la date de début de la période de paie ou avant: {0},
-No leave record found for employee {0} on {1},Aucun enregistrement de congé trouvé pour l&#39;employé {0} le {1},
+Income Tax Slab not set in Salary Structure Assignment: {0},Dalle d'impôt sur le revenu non définie dans l'affectation de la structure salariale: {0},
+Income Tax Slab: {0} is disabled,Dalle d'impôt sur le revenu: {0} est désactivée,
+Income Tax Slab must be effective on or before Payroll Period Start Date: {0},La dalle d'impôt sur le revenu doit entrer en vigueur à la date de début de la période de paie ou avant: {0},
+No leave record found for employee {0} on {1},Aucun enregistrement de congé trouvé pour l'employé {0} le {1},
 Row {0}: {1} is required in the expenses table to book an expense claim.,Ligne {0}: {1} est obligatoire dans le tableau des dépenses pour enregistrer une note de frais.,
 Set the default account for the {0} {1},Définissez le compte par défaut pour {0} {1},
 (Half Day),(Demi-journée),
-Income Tax Slab,Dalle d&#39;impôt sur le revenu,
+Income Tax Slab,Dalle d'impôt sur le revenu,
 Row #{0}: Cannot set amount or formula for Salary Component {1} with Variable Based On Taxable Salary,Ligne n ° {0}: impossible de définir le montant ou la formule pour le composant de salaire {1} avec une variable basée sur le salaire imposable,
 Row #{}: {} of {} should be {}. Please modify the account or select a different account.,Ligne n ° {}: {} de {} doit être {}. Veuillez modifier le compte ou sélectionner un autre compte.,
 Row #{}: Please asign task to a member.,Ligne n ° {}: veuillez attribuer la tâche à un membre.,
 Process Failed,Échec du processus,
 Tally Migration Error,Erreur de migration de Tally,
-Please set Warehouse in Woocommerce Settings,Veuillez définir l&#39;entrepôt dans les paramètres de Woocommerce,
-Row {0}: Delivery Warehouse ({1}) and Customer Warehouse ({2}) can not be same,Ligne {0}: l&#39;entrepôt de livraison ({1}) et l&#39;entrepôt client ({2}) ne peuvent pas être identiques,
-Row {0}: Due Date in the Payment Terms table cannot be before Posting Date,Ligne {0}: la date d&#39;échéance dans le tableau des conditions de paiement ne peut pas être antérieure à la date comptable,
-Cannot find {} for item {}. Please set the same in Item Master or Stock Settings.,Impossible de trouver {} pour l&#39;élément {}. Veuillez définir la même chose dans le fichier principal ou les paramètres de stock.,
+Please set Warehouse in Woocommerce Settings,Veuillez définir l'entrepôt dans les paramètres de Woocommerce,
+Row {0}: Delivery Warehouse ({1}) and Customer Warehouse ({2}) can not be same,Ligne {0}: l'entrepôt de livraison ({1}) et l'entrepôt client ({2}) ne peuvent pas être identiques,
+Row {0}: Due Date in the Payment Terms table cannot be before Posting Date,Ligne {0}: la date d'échéance dans le tableau des conditions de paiement ne peut pas être antérieure à la date comptable,
+Cannot find {} for item {}. Please set the same in Item Master or Stock Settings.,Impossible de trouver {} pour l'élément {}. Veuillez définir la même chose dans le fichier principal ou les paramètres de stock.,
 Row #{0}: The batch {1} has already expired.,Ligne n ° {0}: le lot {1} a déjà expiré.,
-Start Year and End Year are mandatory,L&#39;année de début et l&#39;année de fin sont obligatoires,
+Start Year and End Year are mandatory,L'année de début et l'année de fin sont obligatoires,
 GL Entry,Écriture GL,
-Cannot allocate more than {0} against payment term {1},Impossible d&#39;allouer plus de {0} par rapport aux conditions de paiement {1},
+Cannot allocate more than {0} against payment term {1},Impossible d'allouer plus de {0} par rapport aux conditions de paiement {1},
 The root account {0} must be a group,Le compte racine {0} doit être un groupe,
-Shipping rule not applicable for country {0} in Shipping Address,Règle de livraison non applicable pour le pays {0} dans l&#39;adresse de livraison,
+Shipping rule not applicable for country {0} in Shipping Address,Règle de livraison non applicable pour le pays {0} dans l'adresse de livraison,
 Get Payments from,Obtenez des paiements de,
-Set Shipping Address or Billing Address,Définir l&#39;adresse de livraison ou l&#39;adresse de facturation,
+Set Shipping Address or Billing Address,Définir l'adresse de livraison ou l'adresse de facturation,
 Consultation Setup,Configuration de la consultation,
 Fee Validity,Validité des Honoraires,
 Laboratory Setup,Configuration du laboratoire,
@@ -4389,12 +4389,12 @@
 Records and History,Dossiers et histoire,
 Patient Medical Record,Registre médical du patient,
 Rehabilitation,Réhabilitation,
-Exercise Type,Type d&#39;exercice,
-Exercise Difficulty Level,Niveau de difficulté de l&#39;exercice,
+Exercise Type,Type d'exercice,
+Exercise Difficulty Level,Niveau de difficulté de l'exercice,
 Therapy Type,Type de thérapie,
 Therapy Plan,Plan de thérapie,
 Therapy Session,Session thérapeutique,
-Motor Assessment Scale,Échelle d&#39;évaluation motrice,
+Motor Assessment Scale,Échelle d'évaluation motrice,
 [Important] [ERPNext] Auto Reorder Errors,[Important] [ERPNext] Erreurs de réorganisation automatique,
 "Regards,","Cordialement,",
 The following {0} were created: {1},Les {0} suivants ont été créés: {1},
@@ -4403,7 +4403,7 @@
 Work Order cannot be created for following reason: <br> {0},L'ordre de fabrication ne peut pas être créé pour la raison suivante:<br> {0},
 Add items in the Item Locations table,Ajouter des articles dans le tableau Emplacements des articles,
 Update Current Stock,Mettre à jour le stock actuel,
-"{0} Retain Sample is based on batch, please check Has Batch No to retain sample of item","{0} Conserver l&#39;échantillon est basé sur le lot, veuillez cocher A un numéro de lot pour conserver l&#39;échantillon d&#39;article",
+"{0} Retain Sample is based on batch, please check Has Batch No to retain sample of item","{0} Conserver l'échantillon est basé sur le lot, veuillez cocher A un numéro de lot pour conserver l'échantillon d'article",
 Empty,Vide,
 Currently no stock available in any warehouse,Actuellement aucun stock disponible dans aucun entrepôt,
 BOM Qty,Quantité de nomenclature,
@@ -4418,7 +4418,7 @@
 From Date can not be greater than To Date,La date de début ne peut pas être supérieure à la date,
 Please set a Customer linked to the Patient,Veuillez définir un client lié au patient,
 Customer Not Found,Client introuvable,
-Please Configure Clinical Procedure Consumable Item in ,Veuillez configurer l&#39;article consommable de procédure clinique dans,
+Please Configure Clinical Procedure Consumable Item in ,Veuillez configurer l'article consommable de procédure clinique dans,
 Missing Configuration,Configuration manquante,
 Out Patient Consulting Charge Item,Article de frais de consultation du patient,
 Inpatient Visit Charge Item,Article de charge de la visite aux patients hospitalisés,
@@ -4433,11 +4433,11 @@
 {0} session completed,{0} session terminée,
  out of {0},sur {0},
 Therapy Sessions,Séances de thérapie,
-Add Exercise Step,Ajouter une étape d&#39;exercice,
-Edit Exercise Step,Modifier l&#39;étape de l&#39;exercice,
+Add Exercise Step,Ajouter une étape d'exercice,
+Edit Exercise Step,Modifier l'étape de l'exercice,
 Patient Appointments,Rendez-vous des patients,
-Item with Item Code {0} already exists,L&#39;article avec le code d&#39;article {0} existe déjà,
-Registration Fee cannot be negative or zero,Les frais d&#39;inscription ne peuvent pas être négatifs ou nuls,
+Item with Item Code {0} already exists,L'article avec le code d'article {0} existe déjà,
+Registration Fee cannot be negative or zero,Les frais d'inscription ne peuvent pas être négatifs ou nuls,
 Configure a service Item for {0},Configurer un élément de service pour {0},
 Temperature: ,Température:,
 Pulse: ,Impulsion:,
@@ -4446,36 +4446,36 @@
 BMI: ,IMC:,
 Note: ,Remarque:,
 Check Availability,Voir les Disponibilités,
-Please select Patient first,Veuillez d&#39;abord sélectionner le patient,
-Please select a Mode of Payment first,Veuillez d&#39;abord sélectionner un mode de paiement,
-Please set the Paid Amount first,Veuillez d&#39;abord définir le montant payé,
+Please select Patient first,Veuillez d'abord sélectionner le patient,
+Please select a Mode of Payment first,Veuillez d'abord sélectionner un mode de paiement,
+Please set the Paid Amount first,Veuillez d'abord définir le montant payé,
 Not Therapies Prescribed,Pas de thérapies prescrites,
-There are no Therapies prescribed for Patient {0},Aucun traitement n&#39;est prescrit au patient {0},
+There are no Therapies prescribed for Patient {0},Aucun traitement n'est prescrit au patient {0},
 Appointment date and Healthcare Practitioner are Mandatory,La date de rendez-vous et le praticien de la santé sont obligatoires,
 No Prescribed Procedures found for the selected Patient,Aucune procédure prescrite trouvée pour le patient sélectionné,
-Please select a Patient first,Veuillez d&#39;abord sélectionner un patient,
-There are no procedure prescribed for ,Il n&#39;y a pas de procédure prescrite pour,
+Please select a Patient first,Veuillez d'abord sélectionner un patient,
+There are no procedure prescribed for ,Il n'y a pas de procédure prescrite pour,
 Prescribed Therapies,Thérapies prescrites,
 Appointment overlaps with ,Le rendez-vous chevauche,
-{0} has appointment scheduled with {1} at {2} having {3} minute(s) duration.,{0} a un rendez-vous prévu avec {1} à {2} d&#39;une durée de {3} minute (s).,
+{0} has appointment scheduled with {1} at {2} having {3} minute(s) duration.,{0} a un rendez-vous prévu avec {1} à {2} d'une durée de {3} minute (s).,
 Appointments Overlapping,Rendez-vous qui se chevauchent,
 Consulting Charges: {0},Frais de consultation: {0},
 Appointment Cancelled. Please review and cancel the invoice {0},Rendez-vous annulé. Veuillez examiner et annuler la facture {0},
 Appointment Cancelled.,Rendez-vous annulé.,
 Fee Validity {0} updated.,Validité des frais {0} mise à jour.,
 Practitioner Schedule Not Found,Horaire du praticien introuvable,
-{0} is on a Half day Leave on {1},{0} est en congé d&#39;une demi-journée le {1},
+{0} is on a Half day Leave on {1},{0} est en congé d'une demi-journée le {1},
 {0} is on Leave on {1},{0} est en congé le {1},
-{0} does not have a Healthcare Practitioner Schedule. Add it in Healthcare Practitioner,{0} n&#39;a pas d&#39;horaire pour les professionnels de la santé. Ajoutez-le dans Praticien de la santé,
+{0} does not have a Healthcare Practitioner Schedule. Add it in Healthcare Practitioner,{0} n'a pas d'horaire pour les professionnels de la santé. Ajoutez-le dans Praticien de la santé,
 Healthcare Service Units,Unités de services de santé,
 Complete and Consume,Compléter et consommer,
 Complete {0} and Consume Stock?,Terminer {0} et consommer du stock?,
 Complete {0}?,Terminer {0}?,
-Stock quantity to start the Procedure is not available in the Warehouse {0}. Do you want to record a Stock Entry?,La quantité en stock pour démarrer la procédure n&#39;est pas disponible dans l&#39;entrepôt {0}. Voulez-vous enregistrer une entrée de stock?,
+Stock quantity to start the Procedure is not available in the Warehouse {0}. Do you want to record a Stock Entry?,La quantité en stock pour démarrer la procédure n'est pas disponible dans l'entrepôt {0}. Voulez-vous enregistrer une entrée de stock?,
 {0} as on {1},{0} comme le {1},
 Clinical Procedure ({0}):,Procédure clinique ({0}):,
 Please set Customer in Patient {0},Veuillez définir le client dans le patient {0},
-Item {0} is not active,L&#39;élément {0} n&#39;est pas actif,
+Item {0} is not active,L'élément {0} n'est pas actif,
 Therapy Plan {0} created successfully.,Le plan de thérapie {0} a bien été créé.,
 Symptoms: ,Symptômes:,
 No Symptoms,Aucun symptôme,
@@ -4526,7 +4526,7 @@
 Automatically Add Taxes and Charges from Item Tax Template,Ajouter automatiquement des taxes et des frais à partir du modèle de taxe à la pièce,
 Automatically Fetch Payment Terms,Récupérer automatiquement les conditions de paiement,
 Show Payment Schedule in Print,Afficher le calendrier de paiement dans Imprimer,
-Currency Exchange Settings,Paramètres d&#39;échange de devises,
+Currency Exchange Settings,Paramètres d'échange de devises,
 Allow Stale Exchange Rates,Autoriser les Taux de Change Existants,
 Stale Days,Journées Passées,
 Report Settings,Paramètres de rapport,
@@ -4540,7 +4540,7 @@
 Data Import Configuration,Configuration de l'importation de données,
 Bank Transaction Mapping,Cartographie des transactions bancaires,
 Plaid Access Token,Jeton d'accès plaid,
-Company Account,Compte d&#39;entreprise,
+Company Account,Compte d'entreprise,
 Account Subtype,Sous-type de compte,
 Is Default Account,Est un compte par défaut,
 Is Company Account,Est le compte de l'entreprise,
@@ -4548,8 +4548,8 @@
 Account Details,Détails du compte,
 IBAN,IBAN,
 Bank Account No,No de compte bancaire,
-Integration Details,Détails d&#39;intégration,
-Integration ID,ID d&#39;intégration,
+Integration Details,Détails d'intégration,
+Integration ID,ID d'intégration,
 Last Integration Date,Dernière date d'intégration,
 Change this date manually to setup the next synchronization start date,Modifiez cette date manuellement pour définir la prochaine date de début de la synchronisation.,
 Mask,Masque,
@@ -4597,7 +4597,7 @@
 Bank Statement Transaction Invoice Item,Poste de facture d'une transaction bancaire,
 Payment Description,Description du paiement,
 Invoice Date,Date de la Facture,
-invoice,facture d&#39;achat,
+invoice,facture d'achat,
 Bank Statement Transaction Payment Item,Poste de paiement d'une transaction bancaire,
 outstanding_amount,Encours,
 Payment Reference,Référence de paiement,
@@ -4662,7 +4662,7 @@
 Net Amount,Montant Net,
 Cashier Closing Payments,Paiements de clôture du caissier,
 Chart of Accounts Importer,Importateur de plans de comptes,
-Import Chart of Accounts from a csv file,Importer un tableau de comptes à partir d&#39;un fichier csv,
+Import Chart of Accounts from a csv file,Importer un tableau de comptes à partir d'un fichier csv,
 Attach custom Chart of Accounts file,Joindre un fichier de plan comptable personnalisé,
 Chart Preview,Aperçu du graphique,
 Chart Tree,Arbre à cartes,
@@ -4694,14 +4694,14 @@
 rgt,rgt,
 Coupon Code,Code de coupon,
 Coupon Name,Nom du coupon,
-"e.g. ""Summer Holiday 2019 Offer 20""",ex. &quot;Offre vacances d&#39;été 2019 20&quot;,
+"e.g. ""Summer Holiday 2019 Offer 20""",ex. &quot;Offre vacances d'été 2019 20&quot;,
 Coupon Type,Type de coupon,
 Promotional,Promotionnel,
 Gift Card,Carte cadeau,
 unique e.g. SAVE20  To be used to get discount,"unique, par exemple SAVE20 À utiliser pour obtenir une remise",
 Validity and Usage,Validité et utilisation,
 Valid From,Valide à partir de,
-Valid Upto,Valable jusqu&#39;au,
+Valid Upto,Valable jusqu'au,
 Maximum Use,Utilisation maximale,
 Used,Utilisé,
 Coupon Description,Description du coupon,
@@ -4807,7 +4807,7 @@
 Conversion Factor,Facteur de Conversion,
 1 Loyalty Points = How much base currency?,1 point de fidélité = Quel montant en devise de base ?,
 Expiry Duration (in days),Durée d'expiration (en jours),
-Help Section,Section d&#39;aide,
+Help Section,Section d'aide,
 Loyalty Program Help,Aide au programme de fidélité,
 Loyalty Program Collection,Collecte du programme de fidélité,
 Tier Name,Nom de l'échelon,
@@ -4825,7 +4825,7 @@
 Percentage Allocation,Allocation en Pourcentage,
 Create Missing Party,Créer les tiers manquants,
 Create missing customer or supplier.,Créer les clients ou les fournisseurs manquant,
-Opening Invoice Creation Tool Item,Ouverture d&#39;un outil de création de facture,
+Opening Invoice Creation Tool Item,Ouverture d'un outil de création de facture,
 Temporary Opening Account,Compte temporaire d'ouverture,
 Party Account,Compte de Tiers,
 Type of Payment,Type de Paiement,
@@ -4861,7 +4861,7 @@
 Default Payment Request Message,Message de Demande de Paiement par Défaut,
 PMO-,PMO-,
 Payment Order Type,Type d'ordre de paiement,
-Payment Order Reference,Référence de l&#39;ordre de paiement,
+Payment Order Reference,Référence de l'ordre de paiement,
 Bank Account Details,Détails de compte en banque,
 Payment Reconciliation,Réconciliation des Paiements,
 Receivable / Payable Account,Compte Débiteur / Créditeur,
@@ -4898,7 +4898,7 @@
 Invoice Portion,Pourcentage de facturation,
 Payment Amount,Montant du paiement,
 Payment Term Name,Nom du terme de paiement,
-Due Date Based On,Date d&#39;échéance basée sur,
+Due Date Based On,Date d'échéance basée sur,
 Day(s) after invoice date,Jour (s) après la date de la facture,
 Day(s) after the end of the invoice month,Jour (s) après la fin du mois de facture,
 Month(s) after the end of the invoice month,Mois (s) après la fin du mois de la facture,
@@ -4919,7 +4919,7 @@
 Applicable for Users,Applicable aux Utilisateurs,
 Sales Invoice Payment,Paiement de la Facture de Vente,
 Item Groups,Groupes d'articles,
-Only show Items from these Item Groups,Afficher uniquement les éléments de ces groupes d&#39;éléments,
+Only show Items from these Item Groups,Afficher uniquement les éléments de ces groupes d'éléments,
 Customer Groups,Groupes de Clients,
 Only show Customer of these Customer Groups,Afficher uniquement les clients de ces groupes de clients,
 Write Off Account,Compte de Reprise,
@@ -4930,7 +4930,7 @@
 POS Profile User,Utilisateur du profil PDV,
 Apply On,Appliquer Sur,
 Price or Product Discount,Prix ou remise de produit,
-Apply Rule On Item Code,Appliquer la règle sur le code d&#39;article,
+Apply Rule On Item Code,Appliquer la règle sur le code d'article,
 Apply Rule On Item Group,Appliquer une règle sur un groupe d'articles,
 Apply Rule On Brand,Appliquer la règle sur la marque,
 Mixed Conditions,Conditions mixtes,
@@ -4958,7 +4958,7 @@
 Same Item,Même article,
 Free Item,Article gratuit,
 Threshold for Suggestion,Seuil de suggestion,
-System will notify to increase or decrease quantity or amount ,Le système notifiera d&#39;augmenter ou de diminuer la quantité ou le montant,
+System will notify to increase or decrease quantity or amount ,Le système notifiera d'augmenter ou de diminuer la quantité ou le montant,
 "Higher the number, higher the priority","Plus le nombre est grand, plus la priorité est haute",
 Apply Multiple Pricing Rules,Appliquer plusieurs règles de tarification,
 Apply Discount on Rate,Appliquer une réduction sur le taux,
@@ -5082,9 +5082,9 @@
 Allow Zero Valuation Rate,Autoriser un Taux de Valorisation Égal à Zéro,
 Item Tax Rate,Taux de la Taxe sur l'Article,
 Tax detail table fetched from item master as a string and stored in this field.\nUsed for Taxes and Charges,La table de détails de taxe est récupérée depuis les données de base de l'article comme une chaîne de caractères et stockée dans ce champ. Elle est utilisée pour les Taxes et Frais.,
-Purchase Order Item,Article du Bon de Commande,
-Purchase Receipt Detail,Détail du reçu d&#39;achat,
-Item Weight Details,Détails du poids de l&#39;article,
+Purchase Order Item,Article de la Commande d'Achat,
+Purchase Receipt Detail,Détail du reçu d'achat,
+Item Weight Details,Détails du poids de l'article,
 Weight Per Unit,Poids par unité,
 Total Weight,Poids total,
 Weight UOM,UDM de Poids,
@@ -5096,13 +5096,13 @@
 Deduct,Déduire,
 On Previous Row Amount,Le Montant de la Rangée Précédente,
 On Previous Row Total,Le Total de la Rangée Précédente,
-On Item Quantity,Sur quantité d&#39;article,
+On Item Quantity,Sur quantité d'article,
 Reference Row #,Ligne de Référence #,
 Is this Tax included in Basic Rate?,Cette Taxe est-elle incluse dans le Taux de Base ?,
 "If checked, the tax amount will be considered as already included in the Print Rate / Print Amount","Si cochée, le montant de la taxe sera considéré comme déjà inclus dans le Taux d'Impression / Prix d'Impression",
 Account Head,Compte Principal,
 Tax Amount After Discount Amount,Montant de la Taxe après Remise,
-Item Wise Tax Detail ,Détail de la taxe de l&#39;article Wise,
+Item Wise Tax Detail ,Détail de la taxe de l'article Wise,
 "Standard tax template that can be applied to all Purchase Transactions. This template can contain list of tax heads and also other expense heads like ""Shipping"", ""Insurance"", ""Handling"" etc.\n\n#### Note\n\nThe tax rate you define here will be the standard tax rate for all **Items**. If there are **Items** that have different rates, they must be added in the **Item Tax** table in the **Item** master.\n\n#### Description of Columns\n\n1. Calculation Type: \n    - This can be on **Net Total** (that is the sum of basic amount).\n    - **On Previous Row Total / Amount** (for cumulative taxes or charges). If you select this option, the tax will be applied as a percentage of the previous row (in the tax table) amount or total.\n    - **Actual** (as mentioned).\n2. Account Head: The Account ledger under which this tax will be booked\n3. Cost Center: If the tax / charge is an income (like shipping) or expense it needs to be booked against a Cost Center.\n4. Description: Description of the tax (that will be printed in invoices / quotes).\n5. Rate: Tax rate.\n6. Amount: Tax amount.\n7. Total: Cumulative total to this point.\n8. Enter Row: If based on ""Previous Row Total"" you can select the row number which will be taken as a base for this calculation (default is the previous row).\n9. Consider Tax or Charge for: In this section you can specify if the tax / charge is only for valuation (not a part of total) or only for total (does not add value to the item) or for both.\n10. Add or Deduct: Whether you want to add or deduct the tax.","Modèle de la taxe standard qui peut être appliqué à toutes les Opérations d'Achat. Ce modèle peut contenir la liste des titres d'impôts ainsi que d'autres titre de charges comme ""Livraison"", ""Assurance"", ""Gestion"", etc. \n\n#### Remarque \n\nLe taux d'imposition que vous définissez ici sera le taux d'imposition standard pour tous les **Articles**. S'il y a des **Articles** qui ont des taux différents, ils doivent être ajoutés dans la table **Taxe de l'Article** dans les données de base **Article**.\n\n#### Description des Colonnes\n\n1. Type de Calcul : \n    - Cela peut être le **Total Net** (qui est la somme des montants de base).\n    - **Total / Montant Sur la Ligne Précédente** (pour les taxes ou frais accumulés). Si vous sélectionnez cette option, la taxe sera appliquée en pourcentage du montant ou du total de la ligne précédente (dans la table d'impôts).\n    - **Réel** (comme mentionné).\n2. Titre du Compte : Le journal comptable dans lequel cette taxe sera comptabilisée\n3. Centre de Coût : Si la taxe / redevance est un revenu (comme la livraison) ou une charge, elle doit être comptabilisée dans un Centre de Coûts.\n4. Description : Description de la taxe (qui sera imprimée sur les factures / devis).\n5. Taux : Le taux d'imposition.\n6. Montant : Le montant de la taxe.\n7. Total : Total accumulé à ce point.\n8. Entrez la Ligne : Si elle est basée sur ""Total de la Ligne Précédente"" vous pouvez sélectionner le numéro de la ligne qui sera pris comme base pour ce calcul (par défaut la ligne précédente).\n9. Considérez Taxe ou Charge pour : Dans cette section, vous pouvez spécifier si la taxe / redevance est seulement pour la valorisation (pas une partie du total) ou seulement pour le total (n'ajoute pas de la valeur à l'article) ou pour les deux.\n10. Ajouter ou Déduire : Ce que vous voulez ajouter ou déduire de la taxe.",
 Salary Component Account,Compte Composante Salariale,
 Default Bank / Cash account will be automatically updated in Salary Journal Entry when this mode is selected.,Le compte par défaut de Banque / Caisse sera automatiquement mis à jour dans l’écriture de Journal de Salaire lorsque ce mode est sélectionné.,
@@ -5112,9 +5112,9 @@
 Is Return (Credit Note),Est un avoir (note de crédit),
 Return Against Sales Invoice,Retour contre Facture de Vente,
 Update Billed Amount in Sales Order,Mettre à jour le montant facturé dans la commande client,
-Customer PO Details,Détails du bon de commande client,
-Customer's Purchase Order,N° de Bon de Commande du Client,
-Customer's Purchase Order Date,Date du Bon de Commande du Client,
+Customer PO Details,Détails de la Commande d'Achat client,
+Customer's Purchase Order,N° de la Commande d'Achat du Client,
+Customer's Purchase Order Date,Date de la Commande d'Achat du Client,
 Customer Address,Adresse du Client,
 Shipping Address Name,Nom de l'Adresse de Livraison,
 Company Address Name,Nom de l'Adresse de la Société,
@@ -5189,7 +5189,7 @@
 To Shareholder,A l'actionnaire,
 To Folio No,Au N. de Folio,
 Equity/Liability Account,Compte de capitaux propres / passif,
-Asset Account,Compte d&#39;actif,
+Asset Account,Compte d'actif,
 (including),(compris),
 ACC-SH-.YYYY.-,ACC-SH-.YYYY.-,
 Folio no.,No. de Folio,
@@ -5214,10 +5214,10 @@
 To Value,Valeur Finale,
 Shipping Rule Country,Pays de la Règle de Livraison,
 Subscription Period,Période d'abonnement,
-Subscription Start Date,Date de début de l&#39;abonnement,
+Subscription Start Date,Date de début de l'abonnement,
 Cancelation Date,Date d'annulation,
-Trial Period Start Date,Date de début de la période d&#39;essai,
-Trial Period End Date,Date de fin de la période d&#39;évaluation,
+Trial Period Start Date,Date de début de la période d'essai,
+Trial Period End Date,Date de fin de la période d'évaluation,
 Current Invoice Start Date,Date de début de la facture en cours,
 Current Invoice End Date,Date de fin de la facture en cours,
 Days Until Due,Jours avant échéance,
@@ -5229,13 +5229,13 @@
 Additional DIscount Percentage,Pourcentage de réduction supplémentaire,
 Additional DIscount Amount,Montant de la Remise Supplémentaire,
 Subscription Invoice,Facture d'abonnement,
-Subscription Plan,Plan d&#39;abonnement,
+Subscription Plan,Plan d'abonnement,
 Cost,Coût,
 Billing Interval,Intervalle de facturation,
-Billing Interval Count,Nombre d&#39;intervalles de facturation,
-"Number of intervals for the interval field e.g if Interval is 'Days' and Billing Interval Count is 3, invoices will be generated every 3 days","Nombre d&#39;intervalles pour le champ d&#39;intervalle, par exemple si Intervalle est &quot;Jours&quot; et si le décompte d&#39;intervalle de facturation est 3, les factures seront générées tous les 3 jours",
+Billing Interval Count,Nombre d'intervalles de facturation,
+"Number of intervals for the interval field e.g if Interval is 'Days' and Billing Interval Count is 3, invoices will be generated every 3 days","Nombre d'intervalles pour le champ d'intervalle, par exemple si Intervalle est &quot;Jours&quot; et si le décompte d'intervalle de facturation est 3, les factures seront générées tous les 3 jours",
 Payment Plan,Plan de paiement,
-Subscription Plan Detail,Détail du plan d&#39;abonnement,
+Subscription Plan Detail,Détail du plan d'abonnement,
 Plan,Plan,
 Subscription Settings,Paramètres des Abonnements,
 Grace Period,Période de grâce,
@@ -5252,15 +5252,15 @@
 Shipping City,Ville de Livraison,
 Shipping County,Comté de Livraison,
 Shipping State,État de livraison,
-Shipping Zipcode,Code postal d&#39;expédition,
+Shipping Zipcode,Code postal d'expédition,
 Shipping Country,Pays de Livraison,
 Tax Withholding Account,Compte de taxation à la source,
-Tax Withholding Rates,Taux de retenue d&#39;impôt,
+Tax Withholding Rates,Taux de retenue d'impôt,
 Rates,Prix,
-Tax Withholding Rate,Taux de retenue d&#39;impôt,
+Tax Withholding Rate,Taux de retenue d'impôt,
 Single Transaction Threshold,Seuil de transaction unique,
 Cumulative Transaction Threshold,Seuil de transaction cumulatif,
-Agriculture Analysis Criteria,Critères d&#39;analyse de l&#39;agriculture,
+Agriculture Analysis Criteria,Critères d'analyse de l'agriculture,
 Linked Doctype,Doctype lié,
 Water Analysis,Analyse de l'eau,
 Soil Analysis,Analyse du sol,
@@ -5268,9 +5268,9 @@
 Fertilizer,Engrais,
 Soil Texture,Texture du sol,
 Weather,Météo,
-Agriculture Manager,Directeur de l&#39;agriculture,
+Agriculture Manager,Directeur de l'agriculture,
 Agriculture User,Agriculteur,
-Agriculture Task,Tâche d&#39;agriculture,
+Agriculture Task,Tâche d'agriculture,
 Task Name,Nom de la Tâche,
 Start Day,Date de début,
 End Day,Jour de fin,
@@ -5313,9 +5313,9 @@
 Common Name,Nom commun,
 Treatment Task,Tâche de traitement,
 Treatment Period,Période de traitement,
-Fertilizer Name,Nom de l&#39;engrais,
+Fertilizer Name,Nom de l'engrais,
 Density (if liquid),Densité (si liquide),
-Fertilizer Contents,Contenu de l&#39;engrais,
+Fertilizer Contents,Contenu de l'engrais,
 Fertilizer Content,Contenu d'engrais,
 Linked Plant Analysis,Analyse des plantes liées,
 Linked Soil Analysis,Analyse de sol liée,
@@ -5323,7 +5323,7 @@
 Collection Datetime,Date et heure du prélèvement,
 Laboratory Testing Datetime,Date et heure du test de laboratoire,
 Result Datetime,Date et heure du résultat,
-Plant Analysis Criterias,Critères d&#39;analyse des plantes,
+Plant Analysis Criterias,Critères d'analyse des plantes,
 Plant Analysis Criteria,Critères d'analyse des plantes,
 Minimum Permissible Value,Valeur minimale autorisée,
 Maximum Permissible Value,Valeur maximale autorisée,
@@ -5332,8 +5332,8 @@
 Mg/K,Mg / K,
 (Ca+Mg)/K,(Ca + Mg) / K,
 Ca/(K+Ca+Mg),Ca / (K + Ca + Mg),
-Soil Analysis Criterias,Critères d&#39;analyse des sols,
-Soil Analysis Criteria,Critères d&#39;analyse des sols,
+Soil Analysis Criterias,Critères d'analyse des sols,
+Soil Analysis Criteria,Critères d'analyse des sols,
 Soil Type,Le type de sol,
 Loamy Sand,Sable limoneux,
 Sandy Loam,Limon sableux,
@@ -5344,19 +5344,19 @@
 Silty Clay Loam,Limon argileux fin,
 Sandy Clay,Argile sableuse,
 Silty Clay,Argile limoneuse,
-Clay Composition (%),Composition d&#39;argile (%),
+Clay Composition (%),Composition d'argile (%),
 Sand Composition (%),Composition de sable (%),
 Silt Composition (%),Composition de limon (%),
 Ternary Plot,Tracé ternaire,
 Soil Texture Criteria,Critères de texture du sol,
-Type of Sample,Type d&#39;échantillon,
+Type of Sample,Type d'échantillon,
 Container,Récipient,
 Origin,Origine,
 Collection Temperature ,Température de collecte,
 Storage Temperature,Température de stockage,
 Appearance,Apparence,
 Person Responsible,Personne responsable,
-Water Analysis Criteria,Critères d&#39;analyse de l&#39;eau,
+Water Analysis Criteria,Critères d'analyse de l'eau,
 Weather Parameter,Paramètre météo,
 ACC-ASS-.YYYY.-,ACC-ASS-YYYY.-,
 Asset Owner,Propriétaire de l'Actif,
@@ -5366,7 +5366,7 @@
 Journal Entry for Scrap,Écriture de Journal pour la Mise au Rebut,
 Available-for-use Date,Date de mise en service,
 Calculate Depreciation,Calculer la dépréciation,
-Allow Monthly Depreciation,Autoriser l&#39;amortissement mensuel,
+Allow Monthly Depreciation,Autoriser l'amortissement mensuel,
 Number of Depreciations Booked,Nombre d’Amortissements Comptabilisés,
 Finance Books,Livres comptables,
 Straight Line,Linéaire,
@@ -5378,12 +5378,12 @@
 Next Depreciation Date,Date de l’Amortissement Suivant,
 Depreciation Schedule,Calendrier d'Amortissement,
 Depreciation Schedules,Calendriers d'Amortissement,
-Insurance details,Détails de l&#39;assurance,
+Insurance details,Détails de l'assurance,
 Policy number,Numéro de politique,
 Insurer,Assureur,
 Insured value,Valeur assurée,
 Insurance Start Date,Date de début de l'assurance,
-Insurance End Date,Date de fin de l&#39;assurance,
+Insurance End Date,Date de fin de l'assurance,
 Comprehensive Insurance,Assurance complète,
 Maintenance Required,Maintenance requise,
 Check if Asset requires Preventive Maintenance or Calibration,Vérifier si l'actif nécessite une maintenance préventive ou un étalonnage,
@@ -5392,7 +5392,7 @@
 Default Finance Book,Livre comptable par défaut,
 Quality Manager,Responsable Qualité,
 Asset Category Name,Nom de Catégorie d'Actif,
-Depreciation Options,Options d&#39;amortissement,
+Depreciation Options,Options d'amortissement,
 Enable Capital Work in Progress Accounting,Activer la comptabilité des immobilisations en cours,
 Finance Book Detail,Détails du livre comptable,
 Asset Category Account,Compte de Catégorie d'Actif,
@@ -5424,25 +5424,25 @@
 2 Yearly,2 ans,
 Certificate Required,Certificat requis,
 Assign to Name,Attribuer au nom,
-Next Due Date,prochaine date d&#39;échéance,
+Next Due Date,prochaine date d'échéance,
 Last Completion Date,Dernière date d'achèvement,
 Asset Maintenance Team,Équipe de Maintenance des Actifs,
 Maintenance Team Name,Nom de l'équipe de maintenance,
 Maintenance Team Members,Membres de l'équipe de maintenance,
 Purpose,Objet,
 Stock Manager,Responsable des Stocks,
-Asset Movement Item,Élément de mouvement d&#39;actif,
+Asset Movement Item,Élément de mouvement d'actif,
 Source Location,Localisation source,
 From Employee,De l'Employé,
 Target Location,Localisation cible,
-To Employee,À l&#39;employé,
+To Employee,À l'employé,
 Asset Repair,Réparation d'Actif,
 ACC-ASR-.YYYY.-,ACC-ASR-.AAAA.-,
-Failure Date,Date d&#39;échec,
+Failure Date,Date d'échec,
 Assign To Name,Attribuer au nom,
 Repair Status,État de réparation,
 Error Description,Erreur de description,
-Downtime,Temps d&#39;arrêt,
+Downtime,Temps d'arrêt,
 Repair Cost,Coût de réparation,
 Manufacturing Manager,Responsable de Production,
 Current Asset Value,Valeur actuelle de l'actif,
@@ -5453,7 +5453,7 @@
 Parent Location,Localisation parente,
 Is Container,Est le contenant,
 Check if it is a hydroponic unit,Vérifiez s'il s'agit d'une unité hydroponique,
-Location Details,Détails de l&#39;emplacement,
+Location Details,Détails de l'emplacement,
 Latitude,Latitude,
 Longitude,Longitude,
 Area,Région,
@@ -5483,8 +5483,8 @@
 Sets 'Warehouse' in each row of the Items table.,Définit «Entrepôt» dans chaque ligne de la table Articles.,
 Supply Raw Materials,Fournir les Matières Premières,
 Purchase Order Pricing Rule,Règle de tarification des bons de commande,
-Set Reserve Warehouse,Définir l&#39;entrepôt de réserve,
-In Words will be visible once you save the Purchase Order.,En Toutes Lettres. Sera visible une fois que vous enregistrerez le Bon de Commande.,
+Set Reserve Warehouse,Définir l'entrepôt de réserve,
+In Words will be visible once you save the Purchase Order.,En Toutes Lettres. Sera visible une fois que vous enregistrerez la Commande d'Achat.,
 Advance Paid,Avance Payée,
 Tracking,suivi,
 % Billed,% Facturé,
@@ -5501,7 +5501,7 @@
 Blanket Order,Commande avec limites,
 Blanket Order Rate,Prix unitaire de commande avec limites,
 Returned Qty,Qté Retournée,
-Purchase Order Item Supplied,Article Fourni du Bon de Commande,
+Purchase Order Item Supplied,Article Fourni depuis la Commande d'Achat,
 BOM Detail No,N° de Détail de la nomenclature,
 Stock Uom,UDM du Stock,
 Raw Material Item Code,Code d’Article de Matière Première,
@@ -5525,10 +5525,10 @@
 Is Transporter,Est transporteur,
 Represents Company,Représente la société,
 Supplier Type,Type de Fournisseur,
-Allow Purchase Invoice Creation Without Purchase Order,Autoriser la création de factures d&#39;achat sans bon de commande,
-Allow Purchase Invoice Creation Without Purchase Receipt,Autoriser la création de factures d&#39;achat sans reçu d&#39;achat,
+Allow Purchase Invoice Creation Without Purchase Order,Autoriser la création de factures d'achat sans Commande d'Achat,
+Allow Purchase Invoice Creation Without Purchase Receipt,Autoriser la création de factures d'achat sans Reçu d'Achat,
 Warn RFQs,Avertir lors des Appels d'Offres,
-Warn POs,Avertir lors de Bons de Commande,
+Warn POs,Avertir lors des Commande d'Achat,
 Prevent RFQs,Interdire les Appels d'Offres,
 Prevent POs,Interdire les Bons de Commande d'Achat,
 Billing Currency,Devise de Facturation,
@@ -5596,23 +5596,23 @@
 Supplier Scorecard Standing,Classement de la Fiche d'Évaluation Fournisseur,
 Notify Other,Notifier Autre,
 Supplier Scorecard Variable,Variable de la Fiche d'Évaluation Fournisseur,
-Call Log,Journal d&#39;appel,
+Call Log,Journal d'appel,
 Received By,Reçu par,
-Caller Information,Informations sur l&#39;appelant,
+Caller Information,Informations sur l'appelant,
 Contact Name,Nom du Contact,
 Lead Name,Nom du Prospect,
 Ringing,Sonnerie,
 Missed,Manqué,
-Call Duration in seconds,Durée d&#39;appel en secondes,
-Recording URL,URL d&#39;enregistrement,
+Call Duration in seconds,Durée d'appel en secondes,
+Recording URL,URL d'enregistrement,
 Communication Medium,Moyen de Communication,
 Communication Medium Type,Type de support de communication,
 Voice,Voix,
 Catch All,Attraper tout,
-"If there is no assigned timeslot, then communication will be handled by this group","S&#39;il n&#39;y a pas d&#39;intervalle de temps attribué, la communication sera gérée par ce groupe.",
+"If there is no assigned timeslot, then communication will be handled by this group","S'il n'y a pas d'intervalle de temps attribué, la communication sera gérée par ce groupe.",
 Timeslots,Tranches de temps,
 Communication Medium Timeslot,Période de communication moyenne,
-Employee Group,Groupe d&#39;employés,
+Employee Group,Groupe d'employés,
 Appointment,Rendez-Vous,
 Scheduled Time,Heure prévue,
 Unverified,Non vérifié,
@@ -5624,7 +5624,7 @@
 Calendar Event,Événement de calendrier,
 Appointment Booking Settings,Paramètres de réservation de rendez-vous,
 Enable Appointment Scheduling,Activer la planification des rendez-vous,
-Agent Details,Détails de l&#39;agent,
+Agent Details,Détails de l'agent,
 Availability Of Slots,Disponibilité des emplacements,
 Number of Concurrent Appointments,Nombre de rendez-vous simultanés,
 Agents,Agents,
@@ -5635,7 +5635,7 @@
 Number of days appointments can be booked in advance,Nombre de jours de rendez-vous peuvent être réservés à l'avance,
 Success Settings,Paramètres de réussite,
 Success Redirect URL,URL de redirection réussie,
-"Leave blank for home.\nThis is relative to site URL, for example ""about"" will redirect to ""https://yoursitename.com/about""","Laissez vide pour la maison. Ceci est relatif à l&#39;URL du site, par exemple &quot;about&quot; redirigera vers &quot;https://yoursitename.com/about&quot;",
+"Leave blank for home.\nThis is relative to site URL, for example ""about"" will redirect to ""https://yoursitename.com/about""","Laissez vide pour la maison. Ceci est relatif à l'URL du site, par exemple &quot;about&quot; redirigera vers &quot;https://yoursitename.com/about&quot;",
 Appointment Booking Slots,Horaires de prise de rendez-vous,
 Day Of Week,Jour de la Semaine,
 From Time ,Horaire de Début,
@@ -5659,15 +5659,15 @@
 Contract Terms,Termes du contrat,
 Fulfilment Details,Détails de l'exécution,
 Requires Fulfilment,Nécessite des conditions,
-Fulfilment Deadline,Délai d&#39;exécution,
-Fulfilment Terms,Conditions d&#39;exécution,
+Fulfilment Deadline,Délai d'exécution,
+Fulfilment Terms,Conditions d'exécution,
 Contract Fulfilment Checklist,Liste de vérification de l'exécution des contrats,
 Requirement,Obligations,
 Contract Terms and Conditions,Termes et conditions du contrat,
-Fulfilment Terms and Conditions,Termes et conditions d&#39;exécution,
+Fulfilment Terms and Conditions,Termes et conditions d'exécution,
 Contract Template Fulfilment Terms,Conditions d'exécution du modèle de contrat,
 Email Campaign,Campagne Email,
-Email Campaign For ,Campagne d&#39;email pour,
+Email Campaign For ,Campagne d'email pour,
 Lead is an Organization,Le prospect est une organisation,
 CRM-LEAD-.YYYY.-,CRM-LEAD-.YYYY.-,
 Person Name,Nom de la Personne,
@@ -5694,11 +5694,11 @@
 Suggestions,Suggestions,
 Blog Subscriber,Abonné au Blog,
 LinkedIn Settings,Paramètres LinkedIn,
-Company ID,ID de l&#39;entreprise,
+Company ID,ID de l'entreprise,
 OAuth Credentials,Identifiants OAuth,
 Consumer Key,La clé du consommateur,
 Consumer Secret,Secret du consommateur,
-User Details,Détails de l&#39;utilisateur,
+User Details,Détails de l'utilisateur,
 Person URN,Personne URN,
 Session Status,Statut de la session,
 Lost Reason Detail,Motif perdu,
@@ -5751,7 +5751,7 @@
 Supervisor,Superviseur,
 Supervisor Name,Nom du Superviseur,
 Evaluate,Évaluer,
-Maximum Assessment Score,Score d&#39;évaluation maximale,
+Maximum Assessment Score,Score d'évaluation maximale,
 Assessment Plan Criteria,Critères du Plan d'Évaluation,
 Maximum Score,Score Maximum,
 Result,Résultat,
@@ -5768,10 +5768,10 @@
 Topics,Les sujets,
 Hero Image,Image de héros,
 Default Grading Scale,Échelle de Notation par Défault,
-Education Manager,Gestionnaire de l&#39;éducation,
+Education Manager,Gestionnaire de l'éducation,
 Course Activity,Activité de cours,
 Course Enrollment,Inscription au cours,
-Activity Date,Date d&#39;activité,
+Activity Date,Date d'activité,
 Course Assessment Criteria,Critères d'Évaluation du Cours,
 Weightage,Poids,
 Course Content,Le contenu des cours,
@@ -5787,7 +5787,7 @@
 Course Topic,Sujet du cours,
 Topic,Sujet,
 Topic Name,Nom du Sujet,
-Education Settings,Paramètres d&#39;éducation,
+Education Settings,Paramètres d'éducation,
 Current Academic Year,Année Académique Actuelle,
 Current Academic Term,Terme Académique Actuel,
 Attendance Freeze Date,Date du Gel des Présences,
@@ -5797,8 +5797,8 @@
 "For Course based Student Group, the Course will be validated for every Student from the enrolled Courses in Program Enrollment.","Pour un groupe étudiant basé sur un cours, le cours sera validé pour chaque élève inscrit aux cours du programme.",
 Make Academic Term Mandatory,Faire un terme académique obligatoire,
 "If enabled, field Academic Term will be Mandatory in Program Enrollment Tool.","Si cette option est activée, le champ Période académique sera obligatoire dans l'outil d'inscription au programme.",
-Skip User creation for new Student,Ignorer la création d&#39;utilisateur pour le nouvel étudiant,
-"By default, a new User is created for every new Student. If enabled, no new User will be created when a new Student is created.","Par défaut, un nouvel utilisateur est créé pour chaque nouvel étudiant. Si cette option est activée, aucun nouvel utilisateur ne sera créé lors de la création d&#39;un nouvel étudiant.",
+Skip User creation for new Student,Ignorer la création d'utilisateur pour le nouvel étudiant,
+"By default, a new User is created for every new Student. If enabled, no new User will be created when a new Student is created.","Par défaut, un nouvel utilisateur est créé pour chaque nouvel étudiant. Si cette option est activée, aucun nouvel utilisateur ne sera créé lors de la création d'un nouvel étudiant.",
 Instructor Records to be created by,Les Enregistrements de l'Instructeur seront créés par,
 Employee Number,Numéro d'Employé,
 Fee Category,Catégorie d'Honoraires,
@@ -5843,7 +5843,7 @@
 Interest,Intérêt,
 Guardian Student,Tuteur de l'Étudiant,
 EDU-INS-.YYYY.-,EDU-INS-YYYY.-,
-Instructor Log,Journal de l&#39;instructeur,
+Instructor Log,Journal de l'instructeur,
 Other details,Autres Détails,
 Option,Option,
 Is Correct,Est correct,
@@ -5851,15 +5851,15 @@
 Program Abbreviation,Abréviation du Programme,
 Courses,Cours,
 Is Published,Est publié,
-Allow Self Enroll,Autoriser l&#39;auto-inscription,
+Allow Self Enroll,Autoriser l'auto-inscription,
 Is Featured,Est en vedette,
-Intro Video,Vidéo d&#39;introduction,
+Intro Video,Vidéo d'introduction,
 Program Course,Cours du Programme,
 School House,Maison de l'École,
 Boarding Student,Enregistrement Étudiant,
 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&#39;Institut,
+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,
@@ -5966,7 +5966,7 @@
 Student Log,Journal des Étudiants,
 Academic,Académique,
 Achievement,Réalisation,
-Student Report Generation Tool,Outil de génération de rapports d&#39;étudiants,
+Student Report Generation Tool,Outil de génération de rapports d'étudiants,
 Include All Assessment Group,Inclure tout le groupe d'évaluation,
 Show Marks,Afficher les notes,
 Add letterhead,Ajouter un en-tête,
@@ -6011,7 +6011,7 @@
 Sync Products,Produits de synchronisation,
 Always sync your products from Amazon MWS before synching the Orders details,Synchronisez toujours vos produits depuis Amazon MWS avant de synchroniser les détails des commandes,
 Sync Orders,Ordres de synchronisation,
-Click this button to pull your Sales Order data from Amazon MWS.,Cliquez sur ce bouton pour extraire vos données de commande client d&#39;Amazon MWS.,
+Click this button to pull your Sales Order data from Amazon MWS.,Cliquez sur ce bouton pour extraire vos données de commande client d'Amazon MWS.,
 Enable Scheduled Sync,Activer la synchronisation programmée,
 Check this to enable a scheduled Daily synchronization routine via scheduler,Cochez cette case pour activer une routine de synchronisation quotidienne programmée via le planificateur,
 Max Retry Limit,Max Retry Limit,
@@ -6035,7 +6035,7 @@
 Application Settings,Paramètres de l'application,
 Token Endpoint,Point de terminaison de jeton,
 Scope,Portée,
-Authorization Settings,Paramètres d&#39;autorisation,
+Authorization Settings,Paramètres d'autorisation,
 Authorization Endpoint,Autorisation Endpoint,
 Authorization URL,URL d'autorisation,
 Quickbooks Company ID,ID Quickbooks de la société,
@@ -6049,7 +6049,7 @@
 Shopify Settings,Paramètres de Shopify,
 status html,Statut,
 Enable Shopify,Activer Shopify,
-App Type,Type d&#39;application,
+App Type,Type d'application,
 Last Sync Datetime,Dernière date de synchronisation,
 Shop URL,URL de la boutique,
 eg: frappe.myshopify.com,par exemple: frappe.myshopify.com,
@@ -6083,7 +6083,7 @@
 Tally Debtors Account,Compte de débiteurs,
 Debtors Account set in Tally,Compte débiteur défini dans Tally,
 Tally Company,Compagnie de comptage,
-Company Name as per Imported Tally Data,Nom de l&#39;entreprise selon les données de pointage importées,
+Company Name as per Imported Tally Data,Nom de l'entreprise selon les données de pointage importées,
 Default UOM,UdM par défaut,
 UOM in case unspecified in imported data,UdM en cas non spécifié dans les données importées,
 ERPNext Company,Société ERPNext,
@@ -6112,7 +6112,7 @@
 This company will be used to create Sales Orders.,Cette société sera utilisée pour créer des commandes client.,
 Delivery After (Days),Livraison après (jours),
 This is the default offset (days) for the Delivery Date in Sales Orders. The fallback offset is 7 days from the order placement date.,Il s'agit du décalage par défaut (jours) pour la date de livraison dans les commandes client. La compensation de repli est de 7 jours à compter de la date de passation de la commande.,
-"This is the default UOM used for items and Sales orders. The fallback UOM is ""Nos"".",Il s&#39;agit de l&#39;UOM par défaut utilisée pour les articles et les commandes clients. La MOU de repli est &quot;Nos&quot;.,
+"This is the default UOM used for items and Sales orders. The fallback UOM is ""Nos"".",Il s'agit de l'UOM par défaut utilisée pour les articles et les commandes clients. La MOU de repli est &quot;Nos&quot;.,
 Endpoints,Points de terminaison,
 Endpoint,Point de terminaison,
 Antibiotic Name,Nom de l'Antibiotique,
@@ -6139,9 +6139,9 @@
 Actual Qty (at source/target),Qté Réelle (à la source/cible),
 Is Billable,Est facturable,
 Allow Stock Consumption,Autoriser la consommation de stock,
-Sample UOM,Exemple d&#39;UdM,
+Sample UOM,Exemple d'UdM,
 Collection Details,Détails de la Collection,
-Change In Item,Changement d&#39;article,
+Change In Item,Changement d'article,
 Codification Table,Tableau de Codifications,
 Complaints,Plaintes,
 Dosage Strength,Force du Dosage,
@@ -6158,27 +6158,27 @@
 Difficulty Level,Niveau de difficulté,
 Counts Target,Compte cible,
 Counts Completed,Comptages terminés,
-Assistance Level,Niveau d&#39;assistance,
+Assistance Level,Niveau d'assistance,
 Active Assist,Assistance active,
-Exercise Name,Nom de l&#39;exercice,
+Exercise Name,Nom de l'exercice,
 Body Parts,Parties du corps,
-Exercise Instructions,Instructions d&#39;exercice,
-Exercise Video,Vidéo d&#39;exercice,
-Exercise Steps,Étapes de l&#39;exercice,
+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&#39;exercice,
+Exercise Type Step,Étape de type d'exercice,
 Max number of visit,Nombre maximum de visites,
 Visited yet,Déjà Visité,
 Reference Appointments,Rendez-vous de référence,
-Valid till,Valable jusqu&#39;au,
+Valid till,Valable jusqu'au,
 Fee Validity Reference,Référence de validité des frais,
 Basic Details,Détails de base,
 HLC-PRAC-.YYYY.-,HLC-PRAC-.YYYY.-,
 Mobile,Mobile,
 Phone (R),Téléphone (R),
 Phone (Office),Téléphone (Bureau),
-Employee and User Details,Détails de l&#39;employé et de l&#39;utilisateur,
+Employee and User Details,Détails de l'employé et de l'utilisateur,
 Hospital,Hôpital,
 Appointments,Rendez-Vous,
 Practitioner Schedules,Horaires des praticiens,
@@ -6187,11 +6187,11 @@
 Default Currency,Devise par Défaut,
 Healthcare Schedule Time Slot,Horaire horaire,
 Parent Service Unit,Service parent,
-Service Unit Type,Type d&#39;unité de service,
+Service Unit Type,Type d'unité de service,
 Allow Appointments,Autoriser les rendez-vous,
 Allow Overlap,Autoriser le chevauchement,
 Inpatient Occupancy,Occupation des patients hospitalisés,
-Occupancy Status,Statut d&#39;occupation,
+Occupancy Status,Statut d'occupation,
 Vacant,Vacant,
 Occupied,Occupé,
 Item Details,Détails d'article,
@@ -6205,7 +6205,7 @@
 "If checked, a customer will be created, mapped to Patient.\nPatient Invoices will be created against this Customer. You can also select existing Customer while creating Patient.","Si cochée, un client sera créé et lié au patient. Les factures de patients seront créées sur ce client. Vous pouvez également sélectionner un Client existant tout en créant un Patient.",
 Default Medical Code Standard,Code Médical Standard par Défaut,
 Collect Fee for Patient Registration,Collecter les honoraires pour l'inscription des patients,
-Checking this will create new Patients with a Disabled status by default and will only be enabled after invoicing the Registration Fee.,Cochez cette case pour créer de nouveaux patients avec un statut Désactivé par défaut et ne seront activés qu&#39;après facturation des frais d&#39;inscription.,
+Checking this will create new Patients with a Disabled status by default and will only be enabled after invoicing the Registration Fee.,Cochez cette case pour créer de nouveaux patients avec un statut Désactivé par défaut et ne seront activés qu'après facturation des frais d'inscription.,
 Registration Fee,Frais d'Inscription,
 Automate Appointment Invoicing,Automatiser la facturation des rendez-vous,
 Manage Appointment Invoice submit and cancel automatically for Patient Encounter,Gérer les factures de rendez-vous valider et annuler automatiquement pour la consultation des patients,
@@ -6232,13 +6232,13 @@
 Laboratory Settings,Paramètres de laboratoire,
 Create Lab Test(s) on Sales Invoice Submission,Créer des tests de laboratoire sur la soumission des factures de vente,
 Checking this will create Lab Test(s) specified in the Sales Invoice on submission.,Cochez cette case pour créer des tests de laboratoire spécifiés dans la facture de vente lors de la soumission.,
-Create Sample Collection document for Lab Test,Créer un document de prélèvement d&#39;échantillons pour le test en laboratoire,
-Checking this will create a Sample Collection document  every time you create a Lab Test,Cochez cette case pour créer un document de prélèvement d&#39;échantillons à chaque fois que vous créez un test de laboratoire,
+Create Sample Collection document for Lab Test,Créer un document de prélèvement d'échantillons pour le test en laboratoire,
+Checking this will create a Sample Collection document  every time you create a Lab Test,Cochez cette case pour créer un document de prélèvement d'échantillons à chaque fois que vous créez un test de laboratoire,
 Employee name and designation in print,Nom et désignation de l'employé sur l'imprimé,
-Check this if you want the Name and Designation of the Employee associated with the User who submits the document to be printed in the Lab Test Report.,Cochez cette option si vous souhaitez que le nom et la désignation de l&#39;employé associés à l&#39;utilisateur qui soumet le document soient imprimés dans le rapport de test de laboratoire.,
+Check this if you want the Name and Designation of the Employee associated with the User who submits the document to be printed in the Lab Test Report.,Cochez cette option si vous souhaitez que le nom et la désignation de l'employé associés à l'utilisateur qui soumet le document soient imprimés dans le rapport de test de laboratoire.,
 Do not print or email Lab Tests without Approval,Ne pas imprimer ou envoyer par e-mail des tests de laboratoire sans approbation,
-Checking this will restrict printing and emailing of Lab Test documents unless they have the status as Approved.,"Si vous cochez cette case, l&#39;impression et l&#39;envoi par courrier électronique des documents de test de laboratoire seront limités à moins qu&#39;ils n&#39;aient le statut Approuvé.",
-Custom Signature in Print,Signature personnalisée dans l&#39;impression,
+Checking this will restrict printing and emailing of Lab Test documents unless they have the status as Approved.,"Si vous cochez cette case, l'impression et l'envoi par courrier électronique des documents de test de laboratoire seront limités à moins qu'ils n'aient le statut Approuvé.",
+Custom Signature in Print,Signature personnalisée dans l'impression,
 Laboratory SMS Alerts,Alertes SMS de laboratoire,
 Result Printed Message,Résultat Message imprimé,
 Result Emailed Message,Résultat Message envoyé par e-mail,
@@ -6291,7 +6291,7 @@
 HLC-PAT-.YYYY.-,HLC-PAT-. AAAA.-,
 Middle Name (optional),Prénom (facultatif),
 Inpatient Status,Statut d'hospitalisation,
-"If ""Link Customer to Patient"" is checked in Healthcare Settings and an existing Customer is not selected then, a Customer will be created for this Patient for recording transactions in Accounts module.","Si «Lier le client au patient» est coché dans les paramètres de soins de santé et qu&#39;un client existant n&#39;est pas sélectionné, un client sera créé pour ce patient pour enregistrer les transactions dans le module Comptes.",
+"If ""Link Customer to Patient"" is checked in Healthcare Settings and an existing Customer is not selected then, a Customer will be created for this Patient for recording transactions in Accounts module.","Si «Lier le client au patient» est coché dans les paramètres de soins de santé et qu'un client existant n'est pas sélectionné, un client sera créé pour ce patient pour enregistrer les transactions dans le module Comptes.",
 Personal and Social History,Antécédents Personnels et Sociaux,
 Marital Status,État Civil,
 Married,Marié,
@@ -6316,25 +6316,25 @@
 Appointment Datetime,Date de rendez-vous,
 Duration (In Minutes),Durée (en minutes),
 Reference Sales Invoice,Facture de vente de référence,
-More Info,Plus d&#39;infos,
+More Info,Plus d'infos,
 Referring Practitioner,Praticien référant,
 Reminded,Rappelé,
 HLC-PA-.YYYY.-,HLC-PA-.YYYY.-,
-Assessment Template,Modèle d&#39;évaluation,
+Assessment Template,Modèle d'évaluation,
 Assessment Datetime,Date d’évaluation,
-Assessment Description,Description de l&#39;évaluation,
-Assessment Sheet,Fiche d&#39;évaluation,
+Assessment Description,Description de l'évaluation,
+Assessment Sheet,Fiche d'évaluation,
 Total Score Obtained,Score total obtenu,
 Scale Min,Échelle min,
 Scale Max,Échelle max,
-Patient Assessment Detail,Détail de l&#39;évaluation du patient,
-Assessment Parameter,Paramètre d&#39;évaluation,
-Patient Assessment Parameter,Paramètre d&#39;évaluation du patient,
-Patient Assessment Sheet,Fiche d&#39;évaluation du patient,
-Patient Assessment Template,Modèle d&#39;évaluation du patient,
-Assessment Parameters,Paramètres d&#39;évaluation,
+Patient Assessment Detail,Détail de l'évaluation du patient,
+Assessment Parameter,Paramètre d'évaluation,
+Patient Assessment Parameter,Paramètre d'évaluation du patient,
+Patient Assessment Sheet,Fiche d'évaluation du patient,
+Patient Assessment Template,Modèle d'évaluation du patient,
+Assessment Parameters,Paramètres d'évaluation,
 Parameters,Paramètres,
-Assessment Scale,Échelle d&#39;évaluation,
+Assessment Scale,Échelle d'évaluation,
 Scale Minimum,Échelle minimale,
 Scale Maximum,Échelle maximale,
 HLC-ENC-.YYYY.-,HLC-ENC-.YYYY.-,
@@ -6404,20 +6404,20 @@
 Height (In Meter),Hauteur (en Mètres),
 Weight (In Kilogram),Poids (En Kilogramme),
 BMI,IMC,
-Hotel Room,Chambre d&#39;hôtel,
-Hotel Room Type,Type de chambre d&#39;hôtel,
+Hotel Room,Chambre d'hôtel,
+Hotel Room Type,Type de chambre d'hôtel,
 Capacity,Capacité,
 Extra Bed Capacity,Capacité de lits supplémentaire,
-Hotel Manager,Directeur de l&#39;hôtel,
+Hotel Manager,Directeur de l'hôtel,
 Hotel Room Amenity,Équipement de la chambre d'hôtel,
 Billable,Facturable,
 Hotel Room Package,Forfait de la chambre d'hôtel,
 Amenities,Équipements,
-Hotel Room Pricing,Prix de la chambre d&#39;hôtel,
+Hotel Room Pricing,Prix de la chambre d'hôtel,
 Hotel Room Pricing Item,Article de prix de la chambre d'hôtel,
 Hotel Room Pricing Package,Forfait de prix de la chambre d'hôtel,
 Hotel Room Reservation,Réservation de la chambre d'hôtel,
-Guest Name,Nom de l&#39;invité,
+Guest Name,Nom de l'invité,
 Late Checkin,Arrivée tardive,
 Booked,Réservé,
 Hotel Reservation User,Utilisateur chargé des réservations d'hôtel,
@@ -6501,7 +6501,7 @@
 Cellphone Number,Numéro de téléphone portable,
 License Details,Détails de la licence,
 License Number,Numéro de licence,
-Issuing Date,Date d&#39;émission,
+Issuing Date,Date d'émission,
 Driving License Categories,Catégories de permis de conduire,
 Driving License Category,Catégorie de permis de conduire,
 Fleet Manager,Gestionnaire de Flotte,
@@ -6525,7 +6525,7 @@
 Reports to,Rapports À,
 Attendance and Leave Details,Détails de présence et de congés,
 Leave Policy,Politique de congé,
-Attendance Device ID (Biometric/RF tag ID),Périphérique d&#39;assistance (identifiant d&#39;étiquette biométrique / RF),
+Attendance Device ID (Biometric/RF tag ID),Périphérique d'assistance (identifiant d'étiquette biométrique / RF),
 Applicable Holiday List,Liste de Vacances Valable,
 Default Shift,Décalage par défaut,
 Salary Details,Détails du salaire,
@@ -6570,7 +6570,7 @@
 HR-EAD-.YYYY.-,HR-EAD-.YYYY.-,
 Returned Amount,Montant retourné,
 Claimed,Réclamé,
-Advance Account,Compte d&#39;avances,
+Advance Account,Compte d'avances,
 Employee Attendance Tool,Outil de Gestion des Présences des Employés,
 Unmarked Attendance,Participation Non Marquée,
 Employees HTML,Employés HTML,
@@ -6601,7 +6601,7 @@
 Log Type,Type de journal,
 OUT,EN DEHORS,
 Location / Device ID,Emplacement / ID de périphérique,
-Skip Auto Attendance,Ignorer l&#39;assistance automatique,
+Skip Auto Attendance,Ignorer l'assistance automatique,
 Shift Start,Début de quart,
 Shift End,Fin de quart,
 Shift Actual Start,Décalage début effectif,
@@ -6641,19 +6641,19 @@
 Exit Interview Summary,Récapitulatif de l'entretien de sortie,
 Employee Skill,Compétence de l'employé,
 Proficiency,Compétence,
-Evaluation Date,Date d&#39;évaluation,
+Evaluation Date,Date d'évaluation,
 Employee Skill Map,Carte de compétences des employés,
 Employee Skills,Compétences des employés,
 Trainings,Des formations,
 Employee Tax Exemption Category,Catégorie d'exemption de taxe des employés,
-Max Exemption Amount,Montant maximum d&#39;exemption,
+Max Exemption Amount,Montant maximum d'exemption,
 Employee Tax Exemption Declaration,Déclaration d'exemption de taxe,
 Declarations,Déclarations,
 Total Declared Amount,Montant total déclaré,
 Total Exemption Amount,Montant total de l'exonération,
 Employee Tax Exemption Declaration Category,Catégorie de déclaration d'exemption de taxe,
-Exemption Sub Category,Sous-catégorie d&#39;exemption,
-Exemption Category,Catégorie d&#39;exemption,
+Exemption Sub Category,Sous-catégorie d'exemption,
+Exemption Category,Catégorie d'exemption,
 Maximum Exempted Amount,Montant maximum exonéré,
 Declared Amount,Montant Déclaré,
 Employee Tax Exemption Proof Submission,Soumission d'une preuve d'exemption de taxe,
@@ -6728,13 +6728,13 @@
 Check Vacancies On Job Offer Creation,Vérifier les offres d'emploi lors de la création d'une offre d'emploi,
 Identification Document Type,Type de document d'identification,
 Effective from,À compter de,
-Allow Tax Exemption,Autoriser l&#39;exonération fiscale,
-"If enabled, Tax Exemption Declaration will be considered for income tax calculation.","Si elle est activée, la déclaration d&#39;exonération fiscale sera prise en compte pour le calcul de l&#39;impôt sur le revenu.",
+Allow Tax Exemption,Autoriser l'exonération fiscale,
+"If enabled, Tax Exemption Declaration will be considered for income tax calculation.","Si elle est activée, la déclaration d'exonération fiscale sera prise en compte pour le calcul de l'impôt sur le revenu.",
 Standard Tax Exemption Amount,Montant de l'exemption fiscale standard,
 Taxable Salary Slabs,Paliers de salaire imposables,
-Taxes and Charges on Income Tax,Impôts et charges sur l&#39;impôt sur le revenu,
+Taxes and Charges on Income Tax,Impôts et charges sur l'impôt sur le revenu,
 Other Taxes and Charges,Autres taxes et frais,
-Income Tax Slab Other Charges,Dalle d&#39;impôt sur le revenu Autres charges,
+Income Tax Slab Other Charges,Dalle d'impôt sur le revenu Autres charges,
 Min Taxable Income,Revenu imposable minimum,
 Max Taxable Income,Revenu imposable maximum,
 Applicant for a Job,Candidat à un Emploi,
@@ -6823,8 +6823,8 @@
 Expire Carry Forwarded Leaves (Days),Expirer les congés reportés (jours),
 Calculated in days,Calculé en jours,
 Encashment,Encaissement,
-Allow Encashment,Autoriser l&#39;encaissement,
-Encashment Threshold Days,Jours de seuil d&#39;encaissement,
+Allow Encashment,Autoriser l'encaissement,
+Encashment Threshold Days,Jours de seuil d'encaissement,
 Earned Leave,Congés acquis,
 Is Earned Leave,Est un congé acquis,
 Earned Leave Frequency,Fréquence d'acquisition des congés,
@@ -6834,7 +6834,7 @@
 Fortnightly,Bimensuel,
 Bimonthly,Bimensuel,
 Employees,Employés,
-Number Of Employees,Nombre d&#39;employés,
+Number Of Employees,Nombre d'employés,
 Employee Details,Détails des employés,
 Validate Attendance,Valider la présence,
 Salary Slip Based on Timesheet,Fiche de Paie basée sur la Feuille de Temps,
@@ -6854,10 +6854,10 @@
 Depends on Payment Days,Dépend des jours de paiement,
 Is Tax Applicable,Est taxable,
 Variable Based On Taxable Salary,Variable basée sur le salaire imposable,
-Exempted from Income Tax,Exonéré d&#39;impôt sur le revenu,
-Round to the Nearest Integer,Arrondir à l&#39;entier le plus proche,
+Exempted from Income Tax,Exonéré d'impôt sur le revenu,
+Round to the Nearest Integer,Arrondir à l'entier le plus proche,
 Statistical Component,Composante Statistique,
-"If selected, the value specified or calculated in this component will not contribute to the earnings or deductions. However, it's value can be referenced by other components that can be added or deducted. ","Si cette option est sélectionnée, la valeur spécifiée ou calculée dans ce composant ne contribuera pas aux gains ou aux déductions. Cependant, sa valeur peut être référencée par d&#39;autres composants qui peuvent être ajoutés ou déduits.",
+"If selected, the value specified or calculated in this component will not contribute to the earnings or deductions. However, it's value can be referenced by other components that can be added or deducted. ","Si cette option est sélectionnée, la valeur spécifiée ou calculée dans ce composant ne contribuera pas aux gains ou aux déductions. Cependant, sa valeur peut être référencée par d'autres composants qui peuvent être ajoutés ou déduits.",
 Do Not Include in Total,Ne pas inclure dans le total,
 Flexible Benefits,Avantages sociaux variables,
 Is Flexible Benefit,Est un avantage flexible,
@@ -6910,8 +6910,8 @@
 Working Hours Calculation Based On,Calcul des heures de travail basé sur,
 First Check-in and Last Check-out,Premier enregistrement et dernier départ,
 Every Valid Check-in and Check-out,Chaque enregistrement valide et check-out,
-Begin check-in before shift start time (in minutes),Commencez l&#39;enregistrement avant l&#39;heure de début du poste (en minutes),
-The time before the shift start time during which Employee Check-in is considered for attendance.,Heure avant l&#39;heure de début du quart pendant laquelle l&#39;enregistrement des employés est pris en compte pour la présence.,
+Begin check-in before shift start time (in minutes),Commencez l'enregistrement avant l'heure de début du poste (en minutes),
+The time before the shift start time during which Employee Check-in is considered for attendance.,Heure avant l'heure de début du quart pendant laquelle l'enregistrement des employés est pris en compte pour la présence.,
 Allow check-out after shift end time (in minutes),Autoriser le départ après l'heure de fin du quart (en minutes),
 Time after the end of shift during which check-out is considered for attendance.,Heure après la fin du quart de travail au cours de laquelle la prise en charge est prise en compte.,
 Working Hours Threshold for Half Day,Seuil des heures de travail pour une demi-journée,
@@ -6921,9 +6921,9 @@
 Process Attendance After,Processus de présence après,
 Attendance will be marked automatically only after this date.,La participation sera automatiquement marquée après cette date.,
 Last Sync of Checkin,Dernière synchronisation de Checkin,
-Last Known Successful Sync of Employee Checkin. Reset this only if you are sure that all Logs are synced from all the locations. Please don't modify this if you are unsure.,Dernière synchronisation réussie de l&#39;enregistrement des employés. Réinitialisez cette opération uniquement si vous êtes certain que tous les journaux sont synchronisés à partir de tous les emplacements. S&#39;il vous plaît ne modifiez pas cela si vous n&#39;êtes pas sûr.,
+Last Known Successful Sync of Employee Checkin. Reset this only if you are sure that all Logs are synced from all the locations. Please don't modify this if you are unsure.,Dernière synchronisation réussie de l'enregistrement des employés. Réinitialisez cette opération uniquement si vous êtes certain que tous les journaux sont synchronisés à partir de tous les emplacements. S'il vous plaît ne modifiez pas cela si vous n'êtes pas sûr.,
 Grace Period Settings For Auto Attendance,Paramètres de période de grâce pour l'assistance automatique,
-Enable Entry Grace Period,Activer la période de grâce d&#39;entrée,
+Enable Entry Grace Period,Activer la période de grâce d'entrée,
 Late Entry Grace Period,Délai de grâce pour entrée tardive,
 The time after the shift start time when check-in is considered as late (in minutes).,L'heure après l'heure de début du quart de travail où l'enregistrement est considéré comme tardif (en minutes).,
 Enable Exit Grace Period,Activer la période de grâce de sortie,
@@ -6980,8 +6980,8 @@
 Departure Datetime,Date/Heure de départ,
 Arrival Datetime,Date/Heure d'arrivée,
 Lodging Required,Hébergement requis,
-Preferred Area for Lodging,Zone préférée pour l&#39;hébergement,
-Check-in Date,Date d&#39;arrivée,
+Preferred Area for Lodging,Zone préférée pour l'hébergement,
+Check-in Date,Date d'arrivée,
 Check-out Date,Date de départ,
 Travel Request,Demande de déplacement,
 Travel Type,Type de déplacement,
@@ -6998,8 +6998,8 @@
 Costing Details,Détails des coûts,
 Costing,Coût,
 Event Details,Détails de l'évènement,
-Name of Organizer,Nom de l&#39;organisateur,
-Address of Organizer,Adresse de l&#39;organisateur,
+Name of Organizer,Nom de l'organisateur,
+Address of Organizer,Adresse de l'organisateur,
 Travel Request Costing,Coût de la demande de déplacement,
 Expense Type,Type de dépense,
 Sponsored Amount,Montant sponsorisé,
@@ -7055,7 +7055,7 @@
 Hub Users,Utilisateurs du Hub,
 Marketplace Settings,Paramètres du marché,
 Disable Marketplace,Désactiver le marché,
-Marketplace URL (to hide and update label),URL du marché (pour masquer et mettre à jour l&#39;étiquette),
+Marketplace URL (to hide and update label),URL du marché (pour masquer et mettre à jour l'étiquette),
 Registered,Inscrit,
 Sync in Progress,Synchronisation en cours,
 Hub Seller Name,Nom du vendeur,
@@ -7136,9 +7136,9 @@
 Loan Name,Nom du Prêt,
 Rate of Interest (%) Yearly,Taux d'Intérêt (%) Annuel,
 Penalty Interest Rate (%) Per Day,Taux d'intérêt de pénalité (%) par jour,
-Penalty Interest Rate is levied on the pending interest amount on a daily basis in case of delayed repayment ,Le taux d&#39;intérêt de pénalité est prélevé quotidiennement sur le montant des intérêts en attente en cas de retard de remboursement,
+Penalty Interest Rate is levied on the pending interest amount on a daily basis in case of delayed repayment ,Le taux d'intérêt de pénalité est prélevé quotidiennement sur le montant des intérêts en attente en cas de retard de remboursement,
 Grace Period in Days,Délai de grâce en jours,
-No. of days from due date until which penalty won't be charged in case of delay in loan repayment,Nombre de jours à compter de la date d&#39;échéance jusqu&#39;à laquelle la pénalité ne sera pas facturée en cas de retard dans le remboursement du prêt,
+No. of days from due date until which penalty won't be charged in case of delay in loan repayment,Nombre de jours à compter de la date d'échéance jusqu'à laquelle la pénalité ne sera pas facturée en cas de retard dans le remboursement du prêt,
 Pledge,Gage,
 Post Haircut Amount,Montant de la coupe de cheveux,
 Process Type,Type de processus,
@@ -7215,7 +7215,7 @@
 Website Description,Description du Site Web,
 BOM Explosion Item,Article Eclaté en nomenclature,
 Qty Consumed Per Unit,Qté Consommée Par Unité,
-Include Item In Manufacturing,Inclure l&#39;article dans la fabrication,
+Include Item In Manufacturing,Inclure l'article dans la fabrication,
 BOM Item,Article de la nomenclature,
 Item operation,Opération de l'article,
 Rate & Amount,Taux et Montant,
@@ -7223,7 +7223,7 @@
 Scrap %,% de Rebut,
 Original Item,Article original,
 BOM Operation,Opération de la nomenclature (gamme),
-Operation Time ,Durée de l&#39;opération,
+Operation Time ,Durée de l'opération,
 In minutes,En minutes,
 Batch Size,Taille du lot,
 Base Hour Rate(Company Currency),Taux Horaire de Base (Devise de la Société),
@@ -7245,7 +7245,7 @@
 Timing Detail,Détail du timing,
 Time Logs,Time Logs,
 Total Time in Mins,Temps total en minutes,
-Operation ID,ID d&#39;opération,
+Operation ID,ID d'opération,
 Transferred Qty,Quantité Transférée,
 Job Started,Travail commencé,
 Started Time,Heure de début,
@@ -7306,7 +7306,7 @@
 Production Plan Material Request,Demande de Matériel du Plan de Production,
 Production Plan Sales Order,Commande Client du Plan de Production,
 Sales Order Date,Date de la Commande Client,
-Routing Name,Nom d&#39;acheminement,
+Routing Name,Nom d'acheminement,
 MFG-WO-.YYYY.-,MFG-WO-.YYYY.-,
 Item To Manufacture,Article à produire,
 Material Transferred for Manufacturing,Matériel Transféré pour la Production,
@@ -7315,15 +7315,15 @@
 Plan material for sub-assemblies,Plan de matériaux pour les sous-ensembles,
 Skip Material Transfer to WIP Warehouse,Ignorer le transfert de matériel vers l'entrepôt WIP,
 Check if material transfer entry is not required,Vérifiez si une un transfert de matériel n'est pas requis,
-Backflush Raw Materials From Work-in-Progress Warehouse,Rembourrage des matières premières dans l&#39;entrepôt de travaux en cours,
+Backflush Raw Materials From Work-in-Progress Warehouse,Rembourrage des matières premières dans l'entrepôt de travaux en cours,
 Update Consumed Material Cost In Project,Mettre à jour le coût des matières consommées dans le projet,
 Warehouses,Entrepôts,
 This is a location where raw materials are available.,C'est un endroit où les matières premières sont disponibles.,
 Work-in-Progress Warehouse,Entrepôt des Travaux en Cours,
-This is a location where operations are executed.,Il s&#39;agit d&#39;un emplacement où les opérations sont exécutées.,
+This is a location where operations are executed.,Il s'agit d'un emplacement où les opérations sont exécutées.,
 This is a location where final product stored.,Il s'agit d'un emplacement où le produit final est stocké.,
 Scrap Warehouse,Entrepôt de Rebut,
-This is a location where scraped materials are stored.,Il s&#39;agit d&#39;un emplacement où les matériaux raclés sont stockés.,
+This is a location where scraped materials are stored.,Il s'agit d'un emplacement où les matériaux raclés sont stockés.,
 Required Items,Articles Requis,
 Actual Start Date,Date de Début Réelle,
 Planned End Date,Date de Fin Prévue,
@@ -7399,21 +7399,21 @@
 NPO-MEM-.YYYY.-,NPO-MEM-YYYY.-,
 Membership Expiry Date,Date d'expiration de l'adhésion,
 Razorpay Details,Détails de Razorpay,
-Subscription ID,ID d&#39;abonnement,
+Subscription ID,ID d'abonnement,
 Customer ID,N ° de client,
 Subscription Activated,Abonnement activé,
-Subscription Start ,Début de l&#39;abonnement,
-Subscription End,Fin de l&#39;abonnement,
+Subscription Start ,Début de l'abonnement,
+Subscription End,Fin de l'abonnement,
 Non Profit Member,Membre de l'association,
 Membership Status,Statut d'adhésion,
 Member Since,Membre depuis,
 Payment ID,ID de paiement,
-Membership Settings,Paramètres d&#39;adhésion,
+Membership Settings,Paramètres d'adhésion,
 Enable RazorPay For Memberships,Activer RazorPay pour les adhésions,
 RazorPay Settings,Paramètres de RazorPay,
 Billing Cycle,Cycle de facturation,
 Billing Frequency,Fréquence de facturation,
-"The number of billing cycles for which the customer should be charged. For example, if a customer is buying a 1-year membership that should be billed on a monthly basis, this value should be 12.","Le nombre de cycles de facturation pour lesquels le client doit être facturé. Par exemple, si un client achète un abonnement d&#39;un an qui doit être facturé sur une base mensuelle, cette valeur doit être de 12.",
+"The number of billing cycles for which the customer should be charged. For example, if a customer is buying a 1-year membership that should be billed on a monthly basis, this value should be 12.","Le nombre de cycles de facturation pour lesquels le client doit être facturé. Par exemple, si un client achète un abonnement d'un an qui doit être facturé sur une base mensuelle, cette valeur doit être de 12.",
 Razorpay Plan ID,ID du plan Razorpay,
 Volunteer Name,Nom du bénévole,
 Volunteer Type,Type de bénévole,
@@ -7429,7 +7429,7 @@
 Volunteer Skill,Compétence bénévole,
 Homepage,Page d'Accueil,
 Hero Section Based On,Section de héros basée sur,
-Homepage Section,Section de la page d&#39;accueil,
+Homepage Section,Section de la page d'accueil,
 Hero Section,Section de héros,
 Tag Line,Ligne de Tag,
 Company Tagline for website homepage,Slogan de la Société pour la page d'accueil du site web,
@@ -7452,12 +7452,12 @@
 Products Settings,Paramètres des Produits,
 Home Page is Products,La Page d'Accueil est Produits,
 "If checked, the Home page will be the default Item Group for the website","Si cochée, la page d'Accueil pour le site sera le Groupe d'Article par défaut",
-Show Availability Status,Afficher l&#39;état de la disponibilité,
+Show Availability Status,Afficher l'état de la disponibilité,
 Product Page,Page produit,
 Products per Page,Produits par page,
 Enable Field Filters,Activer les filtres de champ,
 Item Fields,Champs de l'article,
-Enable Attribute Filters,Activer les filtres d&#39;attributs,
+Enable Attribute Filters,Activer les filtres d'attributs,
 Attributes,Attributs,
 Hide Variants,Masquer les variantes,
 Website Attribute,Attribut de site Web,
@@ -7594,7 +7594,7 @@
 November,novembre,
 December,décembre,
 JSON Output,Sortie JSON,
-Invoices with no Place Of Supply,Factures sans lieu d&#39;approvisionnement,
+Invoices with no Place Of Supply,Factures sans lieu d'approvisionnement,
 Import Supplier Invoice,Importer la facture fournisseur,
 Invoice Series,Série de factures,
 Upload XML Invoices,Télécharger des factures XML,
@@ -7644,7 +7644,7 @@
 Campaign Schedules,Horaires de campagne,
 Buyer of Goods and Services.,Acheteur des Biens et Services.,
 CUST-.YYYY.-,CUST-.YYYY.-,
-Default Company Bank Account,Compte bancaire d&#39;entreprise par défaut,
+Default Company Bank Account,Compte bancaire d'entreprise par défaut,
 From Lead,Du Prospect,
 Account Manager,Gestionnaire de compte,
 Allow Sales Invoice Creation Without Sales Order,Autoriser la création de factures de vente sans commande client,
@@ -7786,8 +7786,8 @@
 Default Cash Account,Compte de Caisse par Défaut,
 Default Receivable Account,Compte Client par Défaut,
 Round Off Cost Center,Centre de Coûts d’Arrondi,
-Discount Allowed Account,Compte d&#39;escompte autorisé,
-Discount Received Account,Compte d&#39;escompte reçu,
+Discount Allowed Account,Compte d'escompte autorisé,
+Discount Received Account,Compte d'escompte reçu,
 Exchange Gain / Loss Account,Compte de Profits / Pertes sur Change,
 Unrealized Exchange Gain/Loss Account,Compte de gains / pertes de change non réalisés,
 Allow Account Creation Against Child Company,Autoriser la création de compte contre une entreprise enfant,
@@ -7846,17 +7846,17 @@
 Receivables,Créances,
 Payables,Dettes,
 Sales Orders to Bill,Commandes de vente à facture,
-Purchase Orders to Bill,Commandes d&#39;achat à facturer,
+Purchase Orders to Bill,Commandes d'achat à facturer,
 New Sales Orders,Nouvelles Commandes Client,
 New Purchase Orders,Nouveaux Bons de Commande,
 Sales Orders to Deliver,Commandes de vente à livrer,
-Purchase Orders to Receive,Commandes d&#39;achat à recevoir,
-New Purchase Invoice,Nouvelle facture d&#39;achat,
+Purchase Orders to Receive,Commandes d'achat à recevoir,
+New Purchase Invoice,Nouvelle facture d'achat,
 New Quotations,Nouveaux Devis,
 Open Quotations,Citations ouvertes,
 Open Issues,Questions ouvertes,
 Open Projects,Projets ouverts,
-Purchase Orders Items Overdue,Articles de commandes d&#39;achat en retard,
+Purchase Orders Items Overdue,Articles de commandes d'achat en retard,
 Upcoming Calendar Events,Prochains événements du calendrier,
 Open To Do,Ouvert à faire,
 Add Quote,Ajouter une Citation,
@@ -7972,7 +7972,7 @@
 Is Return,Est un Retour,
 Issue Credit Note,Note de crédit d'émission,
 Return Against Delivery Note,Retour contre Bon de Livraison,
-Customer's Purchase Order No,Numéro bon de commande du client,
+Customer's Purchase Order No,Numéro de Commande d'Achat du client,
 Billing Address Name,Nom de l'Adresse de Facturation,
 Required only for sample item.,Requis uniquement pour les échantillons.,
 "If you have created a standard template in Sales Taxes and Charges Template, select one and click on the button below.","Si vous avez créé un modèle standard dans Modèle de Taxes et Frais de Vente, sélectionnez-en un et cliquez sur le bouton ci-dessous.",
@@ -7997,8 +7997,8 @@
 Available Qty at From Warehouse,Qté Disponible Depuis l'Entrepôt,
 Delivery Settings,Paramètres de livraison,
 Dispatch Settings,Paramètres de répartition,
-Dispatch Notification Template,Modèle de notification d&#39;expédition,
-Dispatch Notification Attachment,Pièce jointe de notification d&#39;expédition,
+Dispatch Notification Template,Modèle de notification d'expédition,
+Dispatch Notification Attachment,Pièce jointe de notification d'expédition,
 Leave blank to use the standard Delivery Note format,Laissez vide pour utiliser le format de bon de livraison standard,
 Send with Attachment,Envoyer avec pièce jointe,
 Delay between Delivery Stops,Délai entre les arrêts de livraison,
@@ -8008,7 +8008,7 @@
 Order Information,Informations sur la commande,
 Contact Information,Informations de contact,
 Email sent to,Email Envoyé À,
-Dispatch Information,Informations d&#39;expédition,
+Dispatch Information,Informations d'expédition,
 Estimated Arrival,Arrivée estimée,
 MAT-DT-.YYYY.-,MAT-DT-.YYYY.-,
 Initial Email Notification Sent,Notification initiale par e-mail envoyée,
@@ -8021,8 +8021,8 @@
 Delivery Stops,Étapes de Livraison,
 Calculate Estimated Arrival Times,Calculer les heures d'arrivée estimées,
 Use Google Maps Direction API to calculate estimated arrival times,Utiliser l'API Google Maps Direction pour calculer les heures d'arrivée estimées,
-Optimize Route,Optimiser l&#39;itinéraire,
-Use Google Maps Direction API to optimize route,Utiliser l&#39;API Google Maps Direction pour optimiser l&#39;itinéraire,
+Optimize Route,Optimiser l'itinéraire,
+Use Google Maps Direction API to optimize route,Utiliser l'API Google Maps Direction pour optimiser l'itinéraire,
 In Transit,En transit,
 Fulfillment User,Livreur,
 "A Product or a Service that is bought, sold or kept in stock.","Un Produit ou un Service qui est acheté, vendu ou conservé en stock.",
@@ -8033,7 +8033,7 @@
 Default Unit of Measure,Unité de Mesure par Défaut,
 Maintain Stock,Maintenir Stock,
 Standard Selling Rate,Prix de Vente Standard,
-Auto Create Assets on Purchase,Création automatique d&#39;actifs à l&#39;achat,
+Auto Create Assets on Purchase,Création automatique d'actifs à l'achat,
 Asset Naming Series,Nom de série de l'actif,
 Over Delivery/Receipt Allowance (%),Surlivrance / indemnité de réception (%),
 Barcodes,Codes-barres,
@@ -8055,8 +8055,8 @@
 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.",
 Has Expiry Date,A une date d'expiration,
-Retain Sample,Conserver l&#39;échantillon,
-Max Sample Quantity,Quantité maximum d&#39;échantillon,
+Retain Sample,Conserver l'échantillon,
+Max Sample Quantity,Quantité maximum d'échantillon,
 Maximum sample quantity that can be retained,Quantité maximale d'échantillon pouvant être conservée,
 Has Serial No,A un N° de Série,
 Serial Number Series,Séries de Numéros de Série,
@@ -8074,7 +8074,7 @@
 Minimum Order Qty,Qté de Commande Minimum,
 Minimum quantity should be as per Stock UOM,La quantité minimale doit être conforme à l'UdM du stock,
 Average time taken by the supplier to deliver,Délai moyen de livraison par le fournisseur,
-Is Customer Provided Item,L&#39;article est-il fourni par le client?,
+Is Customer Provided Item,L'article est-il fourni par le client?,
 Delivered by Supplier (Drop Ship),Livré par le Fournisseur (Expédition Directe),
 Supplier Items,Articles Fournisseur,
 Foreign Trade Details,Détails du Commerce Extérieur,
@@ -8092,7 +8092,7 @@
 Supply Raw Materials for Purchase,Fournir les Matières Premières pour l'Achat,
 If subcontracted to a vendor,Si sous-traité à un fournisseur,
 Customer Code,Code Client,
-Default Item Manufacturer,Fabricant de l&#39;article par défaut,
+Default Item Manufacturer,Fabricant de l'article par défaut,
 Default Manufacturer Part No,Référence fabricant par défaut,
 Show in Website (Variant),Afficher dans le Website (Variant),
 Items with higher weightage will be shown higher,Articles avec poids supérieur seront affichés en haut,
@@ -8104,7 +8104,7 @@
 List this Item in multiple groups on the website.,Liste cet article dans plusieurs groupes sur le site.,
 Copy From Item Group,Copier Depuis un Groupe d'Articles,
 Website Content,Contenu du site Web,
-You can use any valid Bootstrap 4 markup in this field. It will be shown on your Item Page.,Vous pouvez utiliser n&#39;importe quelle balise Bootstrap 4 valide dans ce champ. Il sera affiché sur votre page d&#39;article.,
+You can use any valid Bootstrap 4 markup in this field. It will be shown on your Item Page.,Vous pouvez utiliser n'importe quelle balise Bootstrap 4 valide dans ce champ. Il sera affiché sur votre page d'article.,
 Total Projected Qty,Qté Totale Prévue,
 Hub Publishing Details,Détails Publiés sur le Hub,
 Publish in Hub,Publier dans le Hub,
@@ -8116,7 +8116,7 @@
 Item Alternative,Alternative à l'Article,
 Alternative Item Code,Code de l'article alternatif,
 Two-way,A double-sens,
-Alternative Item Name,Nom de l&#39;article alternatif,
+Alternative Item Name,Nom de l'article alternatif,
 Attribute Name,Nom de l'Attribut,
 Numeric Values,Valeurs Numériques,
 From Range,Plage Initiale,
@@ -8143,7 +8143,7 @@
 Default Selling Cost Center,Centre de Coût Vendeur par Défaut,
 Item Manufacturer,Fabricant d'Article,
 Item Price,Prix de l'Article,
-Packing Unit,Unité d&#39;emballage,
+Packing Unit,Unité d'emballage,
 Quantity  that must be bought or sold per UOM,Quantité à acheter ou à vendre par unité de mesure,
 Item Quality Inspection Parameter,Paramètre d'Inspection de Qualité de l'Article,
 Acceptance Criteria,Critères d'Acceptation,
@@ -8217,7 +8217,7 @@
 Picked Qty,Quantité choisie,
 Price List Master,Données de Base des Listes de Prix,
 Price List Name,Nom de la Liste de Prix,
-Price Not UOM Dependent,Prix non dépendant de l&#39;UOM,
+Price Not UOM Dependent,Prix non dépendant de l'UOM,
 Applicable for Countries,Applicable pour les Pays,
 Price List Country,Pays de la Liste des Prix,
 MAT-PRE-.YYYY.-,MAT-PRE-YYYY.-,
@@ -8226,7 +8226,7 @@
 Return Against Purchase Receipt,Retour contre Reçu d'Achat,
 Rate at which supplier's currency is converted to company's base currency,Taux auquel la devise du fournisseur est convertie en devise société de base,
 Sets 'Accepted Warehouse' in each row of the items table.,Définit «Entrepôt accepté» dans chaque ligne de la table des articles.,
-Sets 'Rejected Warehouse' in each row of the items table.,Définit &#39;Entrepôt rejeté&#39; dans chaque ligne de la table des articles.,
+Sets 'Rejected Warehouse' in each row of the items table.,Définit 'Entrepôt rejeté' dans chaque ligne de la table des articles.,
 Raw Materials Consumed,Matières premières consommées,
 Get Current Stock,Obtenir le Stock Actuel,
 Consumed Items,Articles consommés,
@@ -8270,7 +8270,7 @@
 Creation Date,Date de Création,
 Creation Time,Date de Création,
 Asset Details,Détails de l'actif,
-Asset Status,Statut de l&#39;actif,
+Asset Status,Statut de l'actif,
 Delivery Document Type,Type de Document de Livraison,
 Delivery Document No,Numéro de Document de Livraison,
 Delivery Time,Heure de la Livraison,
@@ -8299,7 +8299,7 @@
 As per Stock UOM,Selon UDM du Stock,
 Including items for sub assemblies,Incluant les articles pour des sous-ensembles,
 Default Source Warehouse,Entrepôt Source par Défaut,
-Source Warehouse Address,Adresse de l&#39;entrepôt source,
+Source Warehouse Address,Adresse de l'entrepôt source,
 Default Target Warehouse,Entrepôt Cible par Défaut,
 Target Warehouse Address,Adresse de l'entrepôt cible,
 Update Rate and Availability,Mettre à Jour le Prix et la Disponibilité,
@@ -8321,7 +8321,7 @@
 Against Stock Entry,Contre entrée de stock,
 Stock Entry Child,Entrée de stock enfant,
 PO Supplied Item,PO article fourni,
-Reference Purchase Receipt,Reçu d&#39;achat de référence,
+Reference Purchase Receipt,Reçu d'achat de référence,
 Stock Ledger Entry,Écriture du Livre d'Inventaire,
 Outgoing Rate,Taux Sortant,
 Actual Qty After Transaction,Qté Réelle Après Transaction,
@@ -8345,7 +8345,7 @@
 Sample Retention Warehouse,Entrepôt de stockage des échantillons,
 Default Valuation Method,Méthode de Valorisation par Défaut,
 Show Barcode Field,Afficher Champ Code Barre,
-Convert Item Description to Clean HTML,Convertir la description de l&#39;élément pour nettoyer le code HTML,
+Convert Item Description to Clean HTML,Convertir la description de l'élément pour nettoyer le code HTML,
 Allow Negative Stock,Autoriser un Stock Négatif,
 Automatically Set Serial Nos based on FIFO,Régler Automatiquement les Nos de Série basés sur FIFO,
 Auto Material Request,Demande de Matériel Automatique,
@@ -8373,7 +8373,7 @@
 Ongoing,En cours,
 Resolution By,Résolution de,
 Resolution By Variance,Résolution par variance,
-Service Level Agreement Creation,Création d&#39;un contrat de niveau de service,
+Service Level Agreement Creation,Création d'un contrat de niveau de service,
 First Responded On,Première Réponse Le,
 Resolution Details,Détails de la Résolution,
 Opening Date,Date d'Ouverture,
@@ -8381,7 +8381,7 @@
 Resolution Date,Date de Résolution,
 Via Customer Portal,Via le portail client,
 Support Team,Équipe de Support,
-Issue Priority,Priorité d&#39;émission,
+Issue Priority,Priorité d'émission,
 Service Day,Jour de service,
 Workday,Journée de travail,
 Default Priority,Priorité par défaut,
@@ -8390,7 +8390,7 @@
 Support and Resolution,Support et résolution,
 Default Service Level Agreement,Contrat de niveau de service par défaut,
 Entity,Entité,
-Agreement Details,Détails de l&#39;accord,
+Agreement Details,Détails de l'accord,
 Response and Resolution Time,Temps de réponse et de résolution,
 Service Level Priority,Priorité de niveau de service,
 Resolution Time,Temps de résolution,
@@ -8407,11 +8407,11 @@
 Link Options,Options du lien,
 Source DocType,DocType source,
 Result Title Field,Champ du titre du résultat,
-Result Preview Field,Champ d&#39;aperçu du résultat,
+Result Preview Field,Champ d'aperçu du résultat,
 Result Route Field,Champ du lien du résultat,
 Service Level Agreements,Accords de Niveau de Service,
 Track Service Level Agreement,Suivi du contrat de niveau de service,
-Allow Resetting Service Level Agreement,Autoriser la réinitialisation de l&#39;accord de niveau de service,
+Allow Resetting Service Level Agreement,Autoriser la réinitialisation de l'accord de niveau de service,
 Close Issue After Days,Nbre de jours avant de fermer le ticket,
 Auto close Issue after 7 days,Fermer automatiquement le ticket après 7 jours,
 Support Portal,Portail du support,
@@ -8473,7 +8473,7 @@
 Daily Timesheet Summary,Récapitulatif Quotidien des Feuilles de Présence,
 Daily Work Summary Replies,Réponses au récapitulatif de travail quotidien,
 DATEV,DATEV,
-Delayed Item Report,Rapport d&#39;élément retardé,
+Delayed Item Report,Rapport d'élément retardé,
 Delayed Order Report,Rapport de commande retardé,
 Delivered Items To Be Billed,Articles Livrés à Facturer,
 Delivery Note Trends,Tendance des Bordereaux de Livraisons,
@@ -8508,7 +8508,7 @@
 Item Price Stock,Stock et prix de l'article,
 Item Prices,Prix des Articles,
 Item Shortage Report,Rapport de Rupture de Stock d'Article,
-Item Variant Details,Détails de la variante de l&#39;article,
+Item Variant Details,Détails de la variante de l'article,
 Item-wise Price List Rate,Taux de la Liste des Prix par Article,
 Item-wise Purchase History,Historique d'Achats par Article,
 Item-wise Purchase Register,Registre des Achats par Article,
@@ -8584,25 +8584,25 @@
 Support Hour Distribution,Répartition des Heures de Support,
 TDS Computation Summary,Résumé des calculs TDS,
 TDS Payable Monthly,TDS Payable Monthly,
-Territory Target Variance Based On Item Group,Écart de cible de territoire basé sur un groupe d&#39;articles,
+Territory Target Variance Based On Item Group,Écart de cible de territoire basé sur un groupe d'articles,
 Territory-wise Sales,Ventes par territoire,
 Total Stock Summary,Récapitulatif de l'Inventaire Total,
 Trial Balance,Balance Générale,
-Trial Balance (Simple),Balance d&#39;essai (simple),
+Trial Balance (Simple),Balance d'essai (simple),
 Trial Balance for Party,Balance Auxiliaire,
 Unpaid Expense Claim,Note de Frais Impayée,
 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&#39;écriture comptable différée,
+Automatically Process Deferred Accounting Entry,Traiter automatiquement l'écriture comptable différée,
 Bank Clearance,Liquidation bancaire,
-Bank Clearance Detail,Détail de l&#39;apurement bancaire,
+Bank Clearance Detail,Détail de l'apurement bancaire,
 Update Cost Center Name / Number,Mettre à jour le nom / numéro du centre de coûts,
-Journal Entry Template,Modèle d&#39;entrée de journal,
+Journal Entry Template,Modèle d'entrée de journal,
 Template Title,Titre du modèle,
-Journal Entry Type,Type d&#39;écriture au journal,
-Journal Entry Template Account,Compte de modèle d&#39;écriture au journal,
+Journal Entry Type,Type d'écriture au journal,
+Journal Entry Template Account,Compte de modèle d'écriture au journal,
 Process Deferred Accounting,Traitement de la comptabilité différée,
 Manual entry cannot be created! Disable automatic entry for deferred accounting in accounts settings and try again,La saisie manuelle ne peut pas être créée! Désactivez la saisie automatique pour la comptabilité différée dans les paramètres des comptes et réessayez,
 End date cannot be before start date,La date de fin ne peut pas être antérieure à la date de début,
@@ -8610,17 +8610,17 @@
 Total Counts Completed,Nombre total de comptes terminés,
 Counts Targeted: {0},Nombre ciblé: {0},
 Payment Account is mandatory,Le compte de paiement est obligatoire,
-"If checked, the full amount will be deducted from taxable income before calculating income tax without any declaration or proof submission.","Si coché, le montant total sera déduit du revenu imposable avant le calcul de l&#39;impôt sur le revenu sans aucune déclaration ou soumission de preuve.",
+"If checked, the full amount will be deducted from taxable income before calculating income tax without any declaration or proof submission.","Si coché, le montant total sera déduit du revenu imposable avant le calcul de l'impôt sur le revenu sans aucune déclaration ou soumission de preuve.",
 Disbursement Details,Détails des décaissements,
 Material Request Warehouse,Entrepôt de demande de matériel,
-Select warehouse for material requests,Sélectionnez l&#39;entrepôt pour les demandes de matériel,
-Transfer Materials For Warehouse {0},Transférer des matériaux pour l&#39;entrepôt {0},
+Select warehouse for material requests,Sélectionnez l'entrepôt pour les demandes de matériel,
+Transfer Materials For Warehouse {0},Transférer des matériaux pour l'entrepôt {0},
 Production Plan Material Request Warehouse,Entrepôt de demande de matériel du plan de production,
 Sets 'Source Warehouse' in each row of the items table.,Définit «Entrepôt source» dans chaque ligne de la table des éléments.,
 Sets 'Target Warehouse' in each row of the items table.,Définit «Entrepôt cible» dans chaque ligne de la table des articles.,
 Show Cancelled Entries,Afficher les entrées annulées,
 Backdated Stock Entry,Entrée de stock antidatée,
-Row #{}: Currency of {} - {} doesn't matches company currency.,Ligne n ° {}: la devise de {} - {} ne correspond pas à la devise de l&#39;entreprise.,
+Row #{}: Currency of {} - {} doesn't matches company currency.,Ligne n ° {}: la devise de {} - {} ne correspond pas à la devise de l'entreprise.,
 {} Assets created for {},{} Éléments créés pour {},
 {0} Number {1} is already used in {2} {3},Le {0} numéro {1} est déjà utilisé dans {2} {3},
 Update Bank Clearance Dates,Mettre à jour les dates de liquidation bancaire,
@@ -8678,9 +8678,9 @@
 Book Deferred Entries Based On,Enregistrer les entrées différées en fonction de,
 Days,Journées,
 Months,Mois,
-Book Deferred Entries Via Journal Entry,Enregistrer les écritures différées via l&#39;écriture au journal,
+Book Deferred Entries Via Journal Entry,Enregistrer les écritures différées via l'écriture au journal,
 Submit Journal Entries,Valider les entrées de journal,
-If this is unchecked Journal Entries will be saved in a Draft state and will have to be submitted manually,"Si cette case n&#39;est pas cochée, les entrées de journal seront enregistrées dans un état Brouillon et devront être soumises manuellement",
+If this is unchecked Journal Entries will be saved in a Draft state and will have to be submitted manually,"Si cette case n'est pas cochée, les entrées de journal seront enregistrées dans un état Brouillon et devront être soumises manuellement",
 Enable Distributed Cost Center,Activer le centre de coûts distribués,
 Distributed Cost Center,Centre de coûts distribués,
 Dunning,Relance,
@@ -8691,29 +8691,29 @@
 Dunning Amount,Montant de relance,
 Resolved,Résolu,
 Unresolved,Non résolu,
-Printing Setting,Paramètres d&#39;impression,
+Printing Setting,Paramètres d'impression,
 Body Text,Le corps du texte,
 Closing Text,Texte de clôture,
 Resolve,Résoudre,
 Dunning Letter Text,Texte de la lettre de relance,
 Is Default Language,Est la langue par défaut,
-Letter or Email Body Text,Texte du corps de la lettre ou de l&#39;e-mail,
-Letter or Email Closing Text,Texte de clôture de la lettre ou de l&#39;e-mail,
+Letter or Email Body Text,Texte du corps de la lettre ou de l'e-mail,
+Letter or Email Closing Text,Texte de clôture de la lettre ou de l'e-mail,
 Body and Closing Text Help,Aide sur le corps et le texte de clôture,
 Overdue Interval,Intervalle en retard,
 Dunning Letter,Lettre de relance,
-"This section allows the user to set the Body and Closing text of the Dunning Letter for the Dunning Type based on language, which can be used in Print.","Cette section permet à l&#39;utilisateur de définir le corps et le texte de clôture de la lettre de relance pour le type de relance en fonction de la langue, qui peut être utilisée dans l&#39;impression.",
+"This section allows the user to set the Body and Closing text of the Dunning Letter for the Dunning Type based on language, which can be used in Print.","Cette section permet à l'utilisateur de définir le corps et le texte de clôture de la lettre de relance pour le type de relance en fonction de la langue, qui peut être utilisée dans l'impression.",
 Reference Detail No,Détail de référence Non,
 Custom Remarks,Remarques personnalisées,
-Please select a Company first.,Veuillez d&#39;abord sélectionner une entreprise.,
-"Row #{0}: Reference Document Type must be one of Sales Order, Sales Invoice, Journal Entry or Dunning","Ligne n ° {0}: le type de document de référence doit être l&#39;un des suivants: Commande client, facture client, écriture de journal ou relance",
+Please select a Company first.,Veuillez d'abord sélectionner une entreprise.,
+"Row #{0}: Reference Document Type must be one of Sales Order, Sales Invoice, Journal Entry or Dunning","Ligne n ° {0}: le type de document de référence doit être l'un des suivants: Commande client, facture client, écriture de journal ou relance",
 POS Closing Entry,Inscription de clôture PDV,
-POS Opening Entry,Entrée d&#39;ouverture de PDV,
+POS Opening Entry,Entrée d'ouverture de PDV,
 POS Transactions,Transactions POS,
-POS Closing Entry Detail,Détail de l&#39;entrée de clôture du PDV,
-Opening Amount,Montant d&#39;ouverture,
+POS Closing Entry Detail,Détail de l'entrée de clôture du PDV,
+Opening Amount,Montant d'ouverture,
 Closing Amount,Montant de clôture,
-POS Closing Entry Taxes,Taxes d&#39;entrée à la clôture du PDV,
+POS Closing Entry Taxes,Taxes d'entrée à la clôture du PDV,
 POS Invoice,Facture PDV,
 ACC-PSINV-.YYYY.-,ACC-PSINV-.YYYY.-,
 Consolidated Sales Invoice,Facture de vente consolidée,
@@ -8725,23 +8725,23 @@
 Consolidated Credit Note,Note de crédit consolidée,
 POS Invoice Reference,Référence de facture PDV,
 Set Posting Date,Définir la date de publication,
-Opening Balance Details,Détails du solde d&#39;ouverture,
-POS Opening Entry Detail,Détail de l&#39;entrée d&#39;ouverture du PDV,
+Opening Balance Details,Détails du solde d'ouverture,
+POS Opening Entry Detail,Détail de l'entrée d'ouverture du PDV,
 POS Payment Method,Mode de paiement POS,
 Payment Methods,méthodes de payement,
-Process Statement Of Accounts,Traiter l&#39;état des comptes,
+Process Statement Of Accounts,Traiter l'état des comptes,
 General Ledger Filters,Filtres du grand livre,
 Customers,Les clients,
 Select Customers By,Sélectionner les clients par,
 Fetch Customers,Récupérer des clients,
 Send To Primary Contact,Envoyer au contact principal,
-Print Preferences,Préférences d&#39;impression,
+Print Preferences,Préférences d'impression,
 Include Ageing Summary,Inclure le résumé du vieillissement,
 Enable Auto Email,Activer la messagerie automatique,
 Filter Duration (Months),Durée du filtre (mois),
 CC To,CC à,
-Help Text,Texte d&#39;aide,
-Emails Queued,E-mails en file d&#39;attente,
+Help Text,Texte d'aide,
+Emails Queued,E-mails en file d'attente,
 Process Statement Of Accounts Customer,Traiter le relevé des comptes client,
 Billing Email,E-mail de facturation,
 Primary Contact Email,Adresse e-mail du contact principal,
@@ -8750,7 +8750,7 @@
 ACC-PINV-RET-.YYYY.-,ACC-PINV-RET-.YYYY.-,
 Supplier GSTIN,Fournisseur GSTIN,
 Place of Supply,Lieu de fourniture,
-Select Billing Address,Selectionner l&#39;adresse de facturation,
+Select Billing Address,Selectionner l'adresse de facturation,
 GST Details,Détails de la TPS,
 GST Category,Catégorie de la TPS,
 Registered Regular,Régulier inscrit,
@@ -8758,7 +8758,7 @@
 Unregistered,Non enregistré,
 SEZ,SEZ,
 Overseas,Étranger,
-UIN Holders,Détenteurs d&#39;UIN,
+UIN Holders,Détenteurs d'UIN,
 With Payment of Tax,Avec paiement de la taxe,
 Without Payment of Tax,Sans paiement de taxe,
 Invoice Copy,Copie facture,
@@ -8770,18 +8770,18 @@
 Y,Oui,
 N,N,
 E-commerce GSTIN,Commerce électronique GSTIN,
-Reason For Issuing document,Raison de l&#39;émission du document,
+Reason For Issuing document,Raison de l'émission du document,
 01-Sales Return,01-Retour des ventes,
 02-Post Sale Discount,02-Remise après vente,
 03-Deficiency in services,03-Insuffisance des services,
 04-Correction in Invoice,04-Correction dans la facture,
 05-Change in POS,05-Changement de POS,
-06-Finalization of Provisional assessment,06-Finalisation de l&#39;évaluation provisoire,
+06-Finalization of Provisional assessment,06-Finalisation de l'évaluation provisoire,
 07-Others,07-Autres,
-Eligibility For ITC,Admissibilité à l&#39;ITC,
-Input Service Distributor,Distributeur de services d&#39;entrée,
+Eligibility For ITC,Admissibilité à l'ITC,
+Input Service Distributor,Distributeur de services d'entrée,
 Import Of Service,Importation de service,
-Import Of Capital Goods,Importation de biens d&#39;équipement,
+Import Of Capital Goods,Importation de biens d'équipement,
 Ineligible,Inéligible,
 All Other ITC,Tous les autres ITC,
 Availed ITC Integrated Tax,Taxe intégrée ITC disponible,
@@ -8806,39 +8806,39 @@
 Consumer,Consommateur,
 Deemed Export,Exportation réputée,
 Port Code,Code de port,
- Shipping Bill Number,Numéro de facture d&#39;expédition,
-Shipping Bill Date,Date de la facture d&#39;expédition,
-Subscription End Date,Date de fin d&#39;abonnement,
+ Shipping Bill Number,Numéro de facture d'expédition,
+Shipping Bill Date,Date de la facture d'expédition,
+Subscription End Date,Date de fin d'abonnement,
 Follow Calendar Months,Suivez les mois civils,
 If this is checked subsequent new invoices will be created on calendar  month and quarter start dates irrespective of current invoice start date,"Si cette case est cochée, les nouvelles factures suivantes seront créées aux dates de début du mois civil et du trimestre, quelle que soit la date de début de facture actuelle",
 Generate New Invoices Past Due Date,Générer de nouvelles factures en retard,
 New invoices will be generated as per schedule even if current invoices are unpaid or past due date,"De nouvelles factures seront générées selon le calendrier, même si les factures actuelles sont impayées ou en retard",
 Document Type ,Type de document,
-Subscription Price Based On,Prix d&#39;abonnement basé sur,
+Subscription Price Based On,Prix d'abonnement basé sur,
 Fixed Rate,Taux fixe,
 Based On Price List,Basé sur la liste de prix,
 Monthly Rate,Tarif mensuel,
-Cancel Subscription After Grace Period,Annuler l&#39;abonnement après la période de grâce,
+Cancel Subscription After Grace Period,Annuler l'abonnement après la période de grâce,
 Source State,État source,
 Is Inter State,Est Inter State,
-Purchase Details,Détails d&#39;achat,
-Depreciation Posting Date,Date comptable de l&#39;amortissement,
+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&#39;option &#39;Naming Series&#39;.,
-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&#39;une nouvelle transaction d&#39;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&#39;achat ou un reçu sans créer d&#39;abord un bon de commande. Cette configuration peut être remplacée pour un fournisseur particulier en cochant la case «Autoriser la création de facture d&#39;achat sans bon de commande» 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&#39;achat sans créer d&#39;abord un reçu d&#39;achat. Cette configuration peut être remplacée pour un fournisseur particulier en cochant la case &quot;Autoriser la création de facture d&#39;achat sans reçu d&#39;achat&quot; dans la fiche fournisseur.",
+ choose the 'Naming Series' option.,choisissez l'option 'Naming Series'.,
+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.",
 Quantity & Stock,Quantité et stock,
-Call Details,Détails de l&#39;appel,
+Call Details,Détails de l'appel,
 Authorised By,Autorisé par,
 Signee (Company),Signee (société),
 Signed By (Company),Signé par (entreprise),
 First Response Time,Temps de première réponse,
 Request For Quotation,Demande de devis,
-Opportunity Lost Reason Detail,Détail de la raison perdue de l&#39;opportunité,
+Opportunity Lost Reason Detail,Détail de la raison perdue de l'opportunité,
 Access Token Secret,Access Token Secret,
 Add to Topics,Ajouter aux sujets,
-...Adding Article to Topics,... Ajout d&#39;un article aux sujets,
+...Adding Article to Topics,... Ajout d'un article aux sujets,
 Add Article to Topics,Ajouter un article aux sujets,
 This article is already added to the existing topics,Cet article est déjà ajouté aux sujets existants,
 Add to Programs,Ajouter aux programmes,
@@ -8846,26 +8846,26 @@
 ...Adding Course to Programs,... Ajout de cours aux programmes,
 Add Course to Programs,Ajouter un cours aux programmes,
 This course is already added to the existing programs,Ce cours est déjà ajouté aux programmes existants,
-Learning Management System Settings,Paramètres du système de gestion de l&#39;apprentissage,
-Enable Learning Management System,Activer le système de gestion de l&#39;apprentissage,
-Learning Management System Title,Titre du système de gestion de l&#39;apprentissage,
+Learning Management System Settings,Paramètres du système de gestion de l'apprentissage,
+Enable Learning Management System,Activer le système de gestion de l'apprentissage,
+Learning Management System Title,Titre du système de gestion de l'apprentissage,
 ...Adding Quiz to Topics,... Ajout de quiz aux sujets,
 Add Quiz to Topics,Ajouter un questionnaire aux sujets,
 This quiz is already added to the existing topics,Ce quiz est déjà ajouté aux sujets existants,
-Enable Admission Application,Activer l&#39;application d&#39;admission,
+Enable Admission Application,Activer l'application d'admission,
 EDU-ATT-.YYYY.-,EDU-ATT-.YYYY.-,
 Marking attendance,Marquage de la présence,
 Add Guardians to Email Group,Ajouter des tuteurs légaux au groupe de messagerie,
 Attendance Based On,Présence basée sur,
-Check this to mark the student as present in case the student is not attending the institute to participate or represent the institute in any event.\n\n,Cochez cette case pour marquer l&#39;étudiant comme présent au cas où l&#39;étudiant ne fréquenterait pas l&#39;institut pour participer ou représenter l&#39;institut dans tous les cas.,
+Check this to mark the student as present in case the student is not attending the institute to participate or represent the institute in any event.\n\n,Cochez cette case pour marquer l'étudiant comme présent au cas où l'étudiant ne fréquenterait pas l'institut pour participer ou représenter l'institut dans tous les cas.,
 Add to Courses,Ajouter aux cours,
-...Adding Topic to Courses,... Ajout d&#39;un sujet aux cours,
+...Adding Topic to Courses,... Ajout d'un sujet aux cours,
 Add Topic to Courses,Ajouter un sujet aux cours,
 This topic is already added to the existing courses,Ce sujet est déjà ajouté aux cours existants,
-"If Shopify does not have a customer in the order, then while syncing the orders, the system will consider the default customer for the order","Si Shopify n&#39;a pas de client dans la commande, lors de la synchronisation des commandes, le système considérera le client par défaut pour la commande",
+"If Shopify does not have a customer in the order, then while syncing the orders, the system will consider the default customer for the order","Si Shopify n'a pas de client dans la commande, lors de la synchronisation des commandes, le système considérera le client par défaut pour la commande",
 The accounts are set by the system automatically but do confirm these defaults,Les comptes sont définis automatiquement par le système mais confirment ces valeurs par défaut,
-Default Round Off Account,Compte d&#39;arrondi par défaut,
-Failed Import Log,Échec du journal d&#39;importation,
+Default Round Off Account,Compte d'arrondi par défaut,
+Failed Import Log,Échec du journal d'importation,
 Fixed Error Log,Journal des erreurs corrigées,
 Company {0} already exists. Continuing will overwrite the Company and Chart of Accounts,La société {0} existe déjà. Continuer écrasera la société et le plan comptable,
 Meta Data,Méta-données,
@@ -8881,42 +8881,42 @@
 Sandbox API Key,Clé API Sandbox,
 Configuration,Configuration,
 Tax Account Head,Responsable du compte fiscal,
-Shipping Account Head,Responsable du compte d&#39;expédition,
+Shipping Account Head,Responsable du compte d'expédition,
 Practitioner Name,Nom du praticien,
 Enter a name for the Clinical Procedure Template,Entrez un nom pour le modèle de procédure clinique,
 Set the Item Code which will be used for billing the Clinical Procedure.,Définissez le code article qui sera utilisé pour facturer la procédure clinique.,
-Select an Item Group for the Clinical Procedure Item.,Sélectionnez un groupe d&#39;articles pour l&#39;article de procédure clinique.,
+Select an Item Group for the Clinical Procedure Item.,Sélectionnez un groupe d'articles pour l'article de procédure clinique.,
 Clinical Procedure Rate,Taux de procédure clinique,
 Check this if the Clinical Procedure is billable and also set the rate.,Cochez cette case si la procédure clinique est facturable et définissez également le tarif.,
 Check this if the Clinical Procedure utilises consumables. Click ,Vérifiez ceci si la procédure clinique utilise des consommables. Cliquez sur,
  to know more,en savoir plus,
-"You can also set the Medical Department for the template. After saving the document, an Item will automatically be created for billing this Clinical Procedure. You can then use this template while creating Clinical Procedures for Patients. Templates save you from filling up redundant data every single time. You can also create templates for other operations like Lab Tests, Therapy Sessions, etc.","Vous pouvez également définir le service médical du modèle. Après avoir enregistré le document, un élément sera automatiquement créé pour facturer cette procédure clinique. Vous pouvez ensuite utiliser ce modèle lors de la création de procédures cliniques pour les patients. Les modèles vous évitent de remplir des données redondantes à chaque fois. Vous pouvez également créer des modèles pour d&#39;autres opérations telles que des tests de laboratoire, des séances de thérapie, etc.",
+"You can also set the Medical Department for the template. After saving the document, an Item will automatically be created for billing this Clinical Procedure. You can then use this template while creating Clinical Procedures for Patients. Templates save you from filling up redundant data every single time. You can also create templates for other operations like Lab Tests, Therapy Sessions, etc.","Vous pouvez également définir le service médical du modèle. Après avoir enregistré le document, un élément sera automatiquement créé pour facturer cette procédure clinique. Vous pouvez ensuite utiliser ce modèle lors de la création de procédures cliniques pour les patients. Les modèles vous évitent de remplir des données redondantes à chaque fois. Vous pouvez également créer des modèles pour d'autres opérations telles que des tests de laboratoire, des séances de thérapie, etc.",
 Descriptive Test Result,Résultat du test descriptif,
 Allow Blank,Autoriser le blanc,
 Descriptive Test Template,Modèle de test descriptif,
-"If you want to track Payroll and other HRMS operations for a Practitoner, create an Employee and link it here.","Si vous souhaitez suivre la paie et d&#39;autres opérations du SGRH pour un praticien, créez un employé et liez-le ici.",
-Set the Practitioner Schedule you just created. This will be used while booking appointments.,Définissez l&#39;horaire du praticien que vous venez de créer. Cela sera utilisé lors de la prise de rendez-vous.,
+"If you want to track Payroll and other HRMS operations for a Practitoner, create an Employee and link it here.","Si vous souhaitez suivre la paie et d'autres opérations du SGRH pour un praticien, créez un employé et liez-le ici.",
+Set the Practitioner Schedule you just created. This will be used while booking appointments.,Définissez l'horaire du praticien que vous venez de créer. Cela sera utilisé lors de la prise de rendez-vous.,
 Create a service item for Out Patient Consulting.,Créez un élément de service pour Out Patient Consulting.,
-"If this Healthcare Practitioner works for the In-Patient Department, create a service item for Inpatient Visits.","Si ce professionnel de la santé travaille pour le service d&#39;hospitalisation, créez un élément de service pour les visites d&#39;hospitalisation.",
+"If this Healthcare Practitioner works for the In-Patient Department, create a service item for Inpatient Visits.","Si ce professionnel de la santé travaille pour le service d'hospitalisation, créez un élément de service pour les visites d'hospitalisation.",
 Set the Out Patient Consulting Charge for this Practitioner.,Définissez les frais de consultation des patients externes pour ce praticien.,
-"If this Healthcare Practitioner also works for the In-Patient Department, set the inpatient visit charge for this Practitioner.","Si ce praticien de la santé travaille également pour le service d&#39;hospitalisation, définissez les frais de visite d&#39;hospitalisation pour ce praticien.",
-"If checked, a customer will be created for every Patient. Patient Invoices will be created against this Customer. You can also select existing Customer while creating a Patient. This field is checked by default.","Si coché, un client sera créé pour chaque patient. Les factures des patients seront créées pour ce client. Vous pouvez également sélectionner un client existant lors de la création d&#39;un patient. Ce champ est coché par défaut.",
-Collect Registration Fee,Percevoir les frais d&#39;inscription,
-"If your Healthcare facility bills registrations of Patients, you can check this and set the Registration Fee in the field below. Checking this will create new Patients with a Disabled status by default and will only be enabled after invoicing the Registration Fee.","Si votre établissement de santé facture les inscriptions de patients, vous pouvez le vérifier et définir les frais d&#39;inscription dans le champ ci-dessous. Cochez cette case pour créer de nouveaux patients avec un statut Désactivé par défaut et ne seront activés qu&#39;après facturation des frais d&#39;inscription.",
-Checking this will automatically create a Sales Invoice whenever an appointment is booked for a Patient.,Cochez cette case pour créer automatiquement une facture de vente chaque fois qu&#39;un rendez-vous est réservé pour un patient.,
+"If this Healthcare Practitioner also works for the In-Patient Department, set the inpatient visit charge for this Practitioner.","Si ce praticien de la santé travaille également pour le service d'hospitalisation, définissez les frais de visite d'hospitalisation pour ce praticien.",
+"If checked, a customer will be created for every Patient. Patient Invoices will be created against this Customer. You can also select existing Customer while creating a Patient. This field is checked by default.","Si coché, un client sera créé pour chaque patient. Les factures des patients seront créées pour ce client. Vous pouvez également sélectionner un client existant lors de la création d'un patient. Ce champ est coché par défaut.",
+Collect Registration Fee,Percevoir les frais d'inscription,
+"If your Healthcare facility bills registrations of Patients, you can check this and set the Registration Fee in the field below. Checking this will create new Patients with a Disabled status by default and will only be enabled after invoicing the Registration Fee.","Si votre établissement de santé facture les inscriptions de patients, vous pouvez le vérifier et définir les frais d'inscription dans le champ ci-dessous. Cochez cette case pour créer de nouveaux patients avec un statut Désactivé par défaut et ne seront activés qu'après facturation des frais d'inscription.",
+Checking this will automatically create a Sales Invoice whenever an appointment is booked for a Patient.,Cochez cette case pour créer automatiquement une facture de vente chaque fois qu'un rendez-vous est réservé pour un patient.,
 Healthcare Service Items,Articles de services de santé,
-"You can create a service item for Inpatient Visit Charge and set it here. Similarly, you can set up other Healthcare Service Items for billing in this section. Click ","Vous pouvez créer un élément de service pour les frais de visite pour patients hospitalisés et le définir ici. De même, vous pouvez configurer d&#39;autres éléments de service de santé pour la facturation dans cette section. Cliquez sur",
-Set up default Accounts for the Healthcare Facility,Configurer les comptes par défaut pour l&#39;établissement de santé,
+"You can create a service item for Inpatient Visit Charge and set it here. Similarly, you can set up other Healthcare Service Items for billing in this section. Click ","Vous pouvez créer un élément de service pour les frais de visite pour patients hospitalisés et le définir ici. De même, vous pouvez configurer d'autres éléments de service de santé pour la facturation dans cette section. Cliquez sur",
+Set up default Accounts for the Healthcare Facility,Configurer les comptes par défaut pour l'établissement de santé,
 "If you wish to override default accounts settings and configure the Income and Receivable accounts for Healthcare, you can do so here.","Si vous souhaitez remplacer les paramètres des comptes par défaut et configurer les comptes de revenus et de créances pour les soins de santé, vous pouvez le faire ici.",
 Out Patient SMS alerts,Alertes SMS du patient,
-"If you want to send SMS alert on Patient Registration, you can enable this option. Similary, you can set up Out Patient SMS alerts for other functionalities in this section. Click ","Si vous souhaitez envoyer une alerte SMS lors de l&#39;inscription du patient, vous pouvez activer cette option. De même, vous pouvez configurer des alertes SMS Out Patient pour d&#39;autres fonctionnalités dans cette section. Cliquez sur",
-Admission Order Details,Détails de la commande d&#39;admission,
+"If you want to send SMS alert on Patient Registration, you can enable this option. Similary, you can set up Out Patient SMS alerts for other functionalities in this section. Click ","Si vous souhaitez envoyer une alerte SMS lors de l'inscription du patient, vous pouvez activer cette option. De même, vous pouvez configurer des alertes SMS Out Patient pour d'autres fonctionnalités dans cette section. Cliquez sur",
+Admission Order Details,Détails de la commande d'admission,
 Admission Ordered For,Admission commandée pour,
 Expected Length of Stay,Durée prévue du séjour,
-Admission Service Unit Type,Type d&#39;unité de service d&#39;admission,
+Admission Service Unit Type,Type d'unité de service d'admission,
 Healthcare Practitioner (Primary),Praticien de la santé (primaire),
 Healthcare Practitioner (Secondary),Praticien de la santé (secondaire),
-Admission Instruction,Instruction d&#39;admission,
+Admission Instruction,Instruction d'admission,
 Chief Complaint,Plainte principale,
 Medications,Médicaments,
 Investigations,Enquêtes,
@@ -8926,8 +8926,8 @@
 Follow Up Date,Date de suivi,
 Discharge Notes,Notes de sortie,
 Processing Inpatient Discharge,Traitement des congés des patients hospitalisés,
-Processing Patient Admission,Traitement de l&#39;admission d&#39;un patient,
-Check-in time cannot be greater than the current time,L&#39;heure d&#39;enregistrement ne peut pas être supérieure à l&#39;heure actuelle,
+Processing Patient Admission,Traitement de l'admission d'un patient,
+Check-in time cannot be greater than the current time,L'heure d'enregistrement ne peut pas être supérieure à l'heure actuelle,
 Process Transfer,Transfert de processus,
 HLC-LAB-.YYYY.-,HLC-LAB-.YYYY.-,
 Expected Result Date,Date de résultat attendue,
@@ -8939,55 +8939,55 @@
 Lab Technician Name,Nom du technicien de laboratoire,
 Lab Technician Designation,Désignation de technicien de laboratoire,
 Compound Test Result,Résultat du test composé,
-Organism Test Result,Résultat du test d&#39;organisme,
+Organism Test Result,Résultat du test d'organisme,
 Sensitivity Test Result,Résultat du test de sensibilité,
 Worksheet Print,Impression de feuille de travail,
 Worksheet Instructions,Instructions sur la feuille de travail,
 Result Legend Print,Impression de la légende des résultats,
-Print Position,Position d&#39;impression,
+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,
 No Lab Tests found for the Patient {0},Aucun test de laboratoire trouvé pour le patient {0},
-"Did not send SMS, missing patient mobile number or message content.","N&#39;a pas envoyé de SMS, numéro de portable du patient ou contenu de message manquant.",
+"Did not send SMS, missing patient mobile number or message content.","N'a pas envoyé de SMS, numéro de portable du patient ou contenu de message manquant.",
 No Lab Tests created,Aucun test de laboratoire créé,
 Creating Lab Tests...,Création de tests de laboratoire ...,
 Lab Test Group Template,Modèle de groupe de test de laboratoire,
 Add New Line,Ajouter une nouvelle ligne,
 Secondary UOM,UdM secondaire,
-"<b>Single</b>: Results which require only a single input.\n<br>\n<b>Compound</b>: Results which require multiple event inputs.\n<br>\n<b>Descriptive</b>: Tests which have multiple result components with manual result entry.\n<br>\n<b>Grouped</b>: Test templates which are a group of other test templates.\n<br>\n<b>No Result</b>: Tests with no results, can be ordered and billed but no Lab Test will be created. e.g.. Sub Tests for Grouped results",<b>Unique</b> : résultats qui ne nécessitent qu&#39;une seule entrée.<br> <b>Composé</b> : résultats qui nécessitent plusieurs entrées d&#39;événement.<br> <b>Descriptif</b> : tests qui ont plusieurs composants de résultat avec saisie manuelle des résultats.<br> <b>Groupé</b> : modèles de test qui sont un groupe d&#39;autres modèles de test.<br> <b>Aucun résultat</b> : les tests sans résultats peuvent être commandés et facturés mais aucun test de laboratoire ne sera créé. par exemple. Sous-tests pour les résultats groupés,
-"If unchecked, the item will not be available in Sales Invoices for billing but can be used in group test creation. ","Si elle n&#39;est pas cochée, l&#39;article ne sera pas disponible dans les factures de vente pour la facturation mais peut être utilisé dans la création de test de groupe.",
+"<b>Single</b>: Results which require only a single input.\n<br>\n<b>Compound</b>: Results which require multiple event inputs.\n<br>\n<b>Descriptive</b>: Tests which have multiple result components with manual result entry.\n<br>\n<b>Grouped</b>: Test templates which are a group of other test templates.\n<br>\n<b>No Result</b>: Tests with no results, can be ordered and billed but no Lab Test will be created. e.g.. Sub Tests for Grouped results",<b>Unique</b> : résultats qui ne nécessitent qu'une seule entrée.<br> <b>Composé</b> : résultats qui nécessitent plusieurs entrées d'événement.<br> <b>Descriptif</b> : tests qui ont plusieurs composants de résultat avec saisie manuelle des résultats.<br> <b>Groupé</b> : modèles de test qui sont un groupe d'autres modèles de test.<br> <b>Aucun résultat</b> : les tests sans résultats peuvent être commandés et facturés mais aucun test de laboratoire ne sera créé. par exemple. Sous-tests pour les résultats groupés,
+"If unchecked, the item will not be available in Sales Invoices for billing but can be used in group test creation. ","Si elle n'est pas cochée, l'article ne sera pas disponible dans les factures de vente pour la facturation mais peut être utilisé dans la création de test de groupe.",
 Description ,La description,
 Descriptive Test,Test descriptif,
 Group Tests,Tests de groupe,
 Instructions to be printed on the worksheet,Instructions à imprimer sur la feuille de travail,
-"Information to help easily interpret the test report, will be printed as part of the Lab Test result.",Les informations permettant d&#39;interpréter facilement le rapport de test seront imprimées dans le cadre du résultat du test de laboratoire.,
+"Information to help easily interpret the test report, will be printed as part of the Lab Test result.",Les informations permettant d'interpréter facilement le rapport de test seront imprimées dans le cadre du résultat du test de laboratoire.,
 Normal Test Result,Résultat de test normal,
 Secondary UOM Result,Résultat UdM secondaire,
 Italic,Italique,
 Underline,Souligner,
 Organism,Organisme,
-Organism Test Item,Élément de test d&#39;organisme,
+Organism Test Item,Élément de test d'organisme,
 Colony Population,Population de la colonie,
 Colony UOM,UdM de colonie,
 Tobacco Consumption (Past),Consommation de tabac (passé),
 Tobacco Consumption (Present),Consommation de tabac (actuelle),
-Alcohol Consumption (Past),Consommation d&#39;alcool (passé),
-Alcohol Consumption (Present),Consommation d&#39;alcool (présent),
+Alcohol Consumption (Past),Consommation d'alcool (passé),
+Alcohol Consumption (Present),Consommation d'alcool (présent),
 Billing Item,Élément de facturation,
 Medical Codes,Codes médicaux,
 Clinical Procedures,Procédures cliniques,
 Order Admission,Admission de la commande,
-Scheduling Patient Admission,Planification de l&#39;admission des patients,
+Scheduling Patient Admission,Planification de l'admission des patients,
 Order Discharge,Décharge de la commande,
-Sample Details,Détails de l&#39;échantillon,
+Sample Details,Détails de l'échantillon,
 Collected On,Collecté le,
-No. of prints,Nombre d&#39;impressions,
-Number of prints required for labelling the samples,Nombre d&#39;impressions nécessaires pour l&#39;étiquetage des échantillons,
+No. of prints,Nombre d'impressions,
+Number of prints required for labelling the samples,Nombre d'impressions nécessaires pour l'étiquetage des échantillons,
 HLC-VTS-.YYYY.-,HLC-VTS-.YYYY.-,
-In Time,À l&#39;heure,
+In Time,À l'heure,
 Out Time,Temps de sortie,
 Payroll Cost Center,Centre de coûts de la paie,
 Approvers,Approbateurs,
@@ -9000,42 +9000,42 @@
 Deduction from salary,Déduction du salaire,
 Expired Leaves,Feuilles expirées,
 Reference No,Numéro de référence,
-Haircut percentage is the percentage difference between market value of the Loan Security and the value ascribed to that Loan Security when used as collateral for that loan.,Le pourcentage de coupe de cheveux est la différence en pourcentage entre la valeur marchande de la garantie de prêt et la valeur attribuée à cette garantie de prêt lorsqu&#39;elle est utilisée comme garantie pour ce prêt.,
+Haircut percentage is the percentage difference between market value of the Loan Security and the value ascribed to that Loan Security when used as collateral for that loan.,Le pourcentage de coupe de cheveux est la différence en pourcentage entre la valeur marchande de la garantie de prêt et la valeur attribuée à cette garantie de prêt lorsqu'elle est utilisée comme garantie pour ce prêt.,
 Loan To Value Ratio expresses the ratio of the loan amount to the value of the security pledged. A loan security shortfall will be triggered if this falls below the specified value for any loan ,Le ratio prêt / valeur exprime le rapport entre le montant du prêt et la valeur de la garantie mise en gage. Un déficit de garantie de prêt sera déclenché si celui-ci tombe en dessous de la valeur spécifiée pour un prêt,
-If this is not checked the loan by default will be considered as a Demand Loan,"Si cette case n&#39;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&#39;emprunteur et également pour décaisser les prêts à l&#39;emprunteur,
+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,
 This account will be used for booking loan interest accruals,Ce compte sera utilisé pour la réservation des intérêts courus sur les prêts,
 This account will be used for booking penalties levied due to delayed repayments,Ce compte sera utilisé pour les pénalités de réservation imposées en raison de retards de remboursement,
 Variant BOM,Variante de nomenclature,
 Template Item,Élément de modèle,
-Select template item,Sélectionnez l&#39;élément de modèle,
-Select variant item code for the template item {0},Sélectionnez le code d&#39;article de variante pour l&#39;article de modèle {0},
-Downtime Entry,Entrée de temps d&#39;arrêt,
+Select template item,Sélectionnez l'élément de modèle,
+Select variant item code for the template item {0},Sélectionnez le code d'article de variante pour l'article de modèle {0},
+Downtime Entry,Entrée de temps d'arrêt,
 DT-,DT-,
 Workstation / Machine,Poste de travail / machine,
 Operator,Opérateur,
 In Mins,En quelques minutes,
-Downtime Reason,Raison du temps d&#39;arrêt,
+Downtime Reason,Raison du temps d'arrêt,
 Stop Reason,Arrêter la raison,
 Excessive machine set up time,Temps de configuration de la machine excessif,
 Unplanned machine maintenance,Maintenance non planifiée de la machine,
 On-machine press checks,Contrôles de presse sur machine,
-Machine operator errors,Erreurs de l&#39;opérateur de la machine,
+Machine operator errors,Erreurs de l'opérateur de la machine,
 Machine malfunction,Dysfonctionnement de la machine,
 Electricity down,Électricité en baisse,
-Operation Row Number,Numéro de ligne d&#39;opération,
+Operation Row Number,Numéro de ligne d'opération,
 Operation {0} added multiple times in the work order {1},Opération {0} ajoutée plusieurs fois dans l'ordre de fabrication {1},
 "If ticked, multiple materials can be used for a single Work Order. This is useful if one or more time consuming products are being manufactured.","Si coché, plusieurs articles peuvent être utilisés pour un seul ordre de fabrication. Ceci est utile si un ou plusieurs produits chronophages sont en cours de fabrication.",
 Backflush Raw Materials,Matières premières de backflush,
-"The Stock Entry of type 'Manufacture' is known as backflush. Raw materials being consumed to manufacture finished goods is known as backflushing. <br><br> When creating Manufacture Entry, raw-material items are backflushed based on BOM of production item. If you want raw-material items to be backflushed based on Material Transfer entry made against that Work Order instead, then you can set it under this field.","L&#39;entrée de stock de type «Fabrication» est connue sous le nom de post-consommation. Les matières premières consommées pour fabriquer des produits finis sont connues sous le nom de rétro-consommation.<br><br> Lors de la création d&#39;une entrée de fabrication, les articles de matières premières sont rétro-consommés en fonction de la nomenclature de l&#39;article de production. Si vous souhaitez plutôt que les articles de matières premières soient postconsommés en fonction de l&#39;entrée de transfert de matières effectuée par rapport à cet ordre de fabrication, vous pouvez la définir dans ce champ.",
+"The Stock Entry of type 'Manufacture' is known as backflush. Raw materials being consumed to manufacture finished goods is known as backflushing. <br><br> When creating Manufacture Entry, raw-material items are backflushed based on BOM of production item. If you want raw-material items to be backflushed based on Material Transfer entry made against that Work Order instead, then you can set it under this field.","L'entrée de stock de type «Fabrication» est connue sous le nom de post-consommation. Les matières premières consommées pour fabriquer des produits finis sont connues sous le nom de rétro-consommation.<br><br> Lors de la création d'une entrée de fabrication, les articles de matières premières sont rétro-consommés en fonction de la nomenclature de l'article de production. Si vous souhaitez plutôt que les articles de matières premières soient postconsommés en fonction de l'entrée de transfert de matières effectuée par rapport à cet ordre de fabrication, vous pouvez la définir dans ce champ.",
 Work In Progress Warehouse,Entrepôt de travaux en cours,
 This Warehouse will be auto-updated in the Work In Progress Warehouse field of Work Orders.,Cet entrepôt sera mis à jour automatiquement dans le champ Entrepôt de travaux en cours des bons de travail.,
 Finished Goods Warehouse,Entrepôt de produits finis,
 This Warehouse will be auto-updated in the Target Warehouse field of Work Order.,Cet entrepôt sera mis à jour automatiquement dans le champ Entrepôt cible de l'ordre de fabrication.
-"If ticked, the BOM cost will be automatically updated based on Valuation Rate / Price List Rate / last purchase rate of raw materials.","Si coché, le coût de la nomenclature sera automatiquement mis à jour en fonction du taux de valorisation / tarif tarifaire / dernier taux d&#39;achat des matières premières.",
-Source Warehouses (Optional),Entrepôts d&#39;origine (facultatif),
-"System will pickup the materials from the selected warehouses. If not specified, system will create material request for purchase.","Le système ramassera les matériaux dans les entrepôts sélectionnés. S&#39;il n&#39;est pas spécifié, le système créera une demande de matériel pour l&#39;achat.",
+"If ticked, the BOM cost will be automatically updated based on Valuation Rate / Price List Rate / last purchase rate of raw materials.","Si coché, le coût de la nomenclature sera automatiquement mis à jour en fonction du taux de valorisation / tarif tarifaire / dernier taux d'achat des matières premières.",
+Source Warehouses (Optional),Entrepôts d'origine (facultatif),
+"System will pickup the materials from the selected warehouses. If not specified, system will create material request for purchase.","Le système ramassera les matériaux dans les entrepôts sélectionnés. S'il n'est pas spécifié, le système créera une demande de matériel pour l'achat.",
 Lead Time,Délai de mise en œuvre,
 PAN Details,Détails PAN,
 Create Customer,Créer un client,
@@ -9043,14 +9043,14 @@
 Enable Auto Invoicing,Activer la facturation automatique,
 Send Membership Acknowledgement,Envoyer un accusé de réception,
 Send Invoice with Email,Envoyer une facture avec e-mail,
-Membership Print Format,Format d&#39;impression des membres,
-Invoice Print Format,Format d&#39;impression de la facture,
+Membership Print Format,Format d'impression des membres,
+Invoice Print Format,Format d'impression de la facture,
 Revoke <Key></Key>,Révoquer&lt;Key&gt;&lt;/Key&gt;,
 You can learn more about memberships in the manual. ,Vous pouvez en savoir plus sur les adhésions dans le manuel.,
 ERPNext Docs,Documentation ERPNext,
 Regenerate Webhook Secret,Régénérer le secret Webhook,
 Generate Webhook Secret,Générer un secret Webhook,
-Copy Webhook URL,Copier l&#39;URL du Webhook,
+Copy Webhook URL,Copier l'URL du Webhook,
 Linked Item,Élément lié,
 Is Recurring,Est récurrent,
 HRA Exemption,Exemption HRA,
@@ -9074,50 +9074,50 @@
 Additional Provident Fund,Fonds de prévoyance supplémentaire,
 Provident Fund Loan,Prêt de fonds de prévoyance,
 Professional Tax,Taxe professionnelle,
-Is Income Tax Component,Est un élément de l&#39;impôt sur le revenu,
+Is Income Tax Component,Est un élément de l'impôt sur le revenu,
 Component properties and references ,Propriétés et références des composants,
 Additional Salary ,Salaire supplémentaire,
 Unmarked days,Jours non marqués,
-Absent Days,Jours d&#39;absence,
+Absent Days,Jours d'absence,
 Conditions and Formula variable and example,Conditions et variable de formule et exemple,
 Feedback By,Commentaires de,
 Manufacturing Section,Section de fabrication,
 "By default, the Customer Name is set as per the Full Name entered. If you want Customers to be named by a ","Par défaut, le nom du client est défini selon le nom complet entré. Si vous souhaitez que les clients soient nommés par un",
-Configure the default Price List when creating a new Sales transaction. Item prices will be fetched from this Price List.,Configurez la liste de prix par défaut lors de la création d&#39;une nouvelle transaction de vente. Les prix des articles seront extraits de cette liste de prix.,
-"If this option is configured 'Yes', ERPNext will prevent you from creating a Sales Invoice or Delivery Note without creating a Sales Order first. This configuration can be overridden for a particular Customer by enabling the 'Allow Sales Invoice Creation Without Sales Order' checkbox in the Customer master.","Si cette option est configurée sur «Oui», ERPNext vous empêchera de créer une facture client ou un bon de livraison sans créer d&#39;abord une commande client. Cette configuration peut être remplacée pour un client particulier en activant la case à cocher «Autoriser la création de facture client sans commande client» dans la fiche Client.",
-"If this option is configured 'Yes', ERPNext will prevent you from creating a Sales Invoice without creating a Delivery Note first. This configuration can be overridden for a particular Customer by enabling the 'Allow Sales Invoice Creation Without Delivery Note' checkbox in the Customer master.","Si cette option est configurée «Oui», ERPNext vous empêchera de créer une facture de vente sans créer d&#39;abord un bon de livraison. Cette configuration peut être remplacée pour un client particulier en cochant la case «Autoriser la création de facture de vente sans bon de livraison» dans la fiche Client.",
+Configure the default Price List when creating a new Sales 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 de vente. Les prix des articles seront extraits de cette liste de prix.,
+"If this option is configured 'Yes', ERPNext will prevent you from creating a Sales Invoice or Delivery Note without creating a Sales Order first. This configuration can be overridden for a particular Customer by enabling the 'Allow Sales Invoice Creation Without Sales Order' checkbox in the Customer master.","Si cette option est configurée sur «Oui», ERPNext vous empêchera de créer une facture client ou un bon de livraison sans créer d'abord une commande client. Cette configuration peut être remplacée pour un client particulier en activant la case à cocher «Autoriser la création de facture client sans commande client» dans la fiche Client.",
+"If this option is configured 'Yes', ERPNext will prevent you from creating a Sales Invoice without creating a Delivery Note first. This configuration can be overridden for a particular Customer by enabling the 'Allow Sales Invoice Creation Without Delivery Note' checkbox in the Customer master.","Si cette option est configurée «Oui», ERPNext vous empêchera de créer une facture de vente sans créer d'abord un bon de livraison. Cette configuration peut être remplacée pour un client particulier en cochant la case «Autoriser la création de facture de vente sans bon de livraison» dans la fiche Client.",
 Default Warehouse for Sales Return,Entrepôt par défaut pour le retour des ventes,
-Default In Transit Warehouse,Par défaut dans l&#39;entrepôt de transit,
-Enable Perpetual Inventory For Non Stock Items,Activer l&#39;inventaire perpétuel pour les articles hors stock,
+Default In Transit Warehouse,Par défaut dans l'entrepôt de transit,
+Enable Perpetual Inventory For Non Stock Items,Activer l'inventaire perpétuel pour les articles hors stock,
 HRA Settings,Paramètres HRA,
 Basic Component,Composant de base,
 HRA Component,Composant HRA,
-Arrear Component,Composante d&#39;arriéré,
-Please enter the company name to confirm,Veuillez saisir le nom de l&#39;entreprise pour confirmer,
+Arrear Component,Composante d'arriéré,
+Please enter the company name to confirm,Veuillez saisir le nom de l'entreprise pour confirmer,
 Quotation Lost Reason Detail,Détail du motif perdu du devis,
 Enable Variants,Activer les variantes,
 Save Quotations as Draft,Enregistrer les devis comme brouillon,
 MAT-DN-RET-.YYYY.-,MAT-DN-RET-.YYYY.-,
 Please Select a Customer,Veuillez sélectionner un client,
-Against Delivery Note Item,Contre l&#39;article du bon de livraison,
+Against Delivery Note Item,Contre l'article du bon de livraison,
 Is Non GST ,Est non TPS,
-Image Description,Description de l&#39;image,
+Image Description,Description de l'image,
 Transfer Status,Statut de transfert,
 MAT-PR-RET-.YYYY.-,MAT-PR-RET-.YYYY.-,
-Track this Purchase Receipt against any Project,Suivre ce reçu d&#39;achat par rapport à n&#39;importe quel projet,
+Track this Purchase Receipt against any Project,Suivre ce reçu d'achat par rapport à n'importe quel projet,
 Please Select a Supplier,Veuillez sélectionner un fournisseur,
 Add to Transit,Ajouter à Transit,
 Set Basic Rate Manually,Définir manuellement le taux de base,
-"By default, the Item Name is set as per the Item Code entered. If you want Items to be named by a ","Par défaut, le nom de l&#39;article est défini selon le code d&#39;article entré. Si vous souhaitez que les éléments soient nommés par un",
-Set a Default Warehouse for Inventory Transactions. This will be fetched into the Default Warehouse in the Item master.,Définissez un entrepôt par défaut pour les mouvements de stock. Ce sera récupéré dans l&#39;entrepôt par défaut dans la base d&#39;articles.,
-"This will allow stock items to be displayed in negative values. Using this option depends on your use case. With this option unchecked, the system warns before obstructing a transaction that is causing negative stock.","Cela permettra aux articles en stock d&#39;être affichés avec des valeurs négatives. L&#39;utilisation de cette option dépend de votre cas d&#39;utilisation. Lorsque cette option n&#39;est pas cochée, le système avertit avant d&#39;entraver une transaction entraînant un stock négatif.",
-Choose between FIFO and Moving Average Valuation Methods. Click ,Choisissez entre les méthodes d&#39;évaluation FIFO et moyenne mobile. Cliquez sur,
+"By default, the Item Name is set as per the Item Code entered. If you want Items to be named by a ","Par défaut, le nom de l'article est défini selon le code d'article entré. Si vous souhaitez que les éléments soient nommés par un",
+Set a Default Warehouse for Inventory Transactions. This will be fetched into the Default Warehouse in the Item master.,Définissez un entrepôt par défaut pour les mouvements de stock. Ce sera récupéré dans l'entrepôt par défaut dans la base d'articles.,
+"This will allow stock items to be displayed in negative values. Using this option depends on your use case. With this option unchecked, the system warns before obstructing a transaction that is causing negative stock.","Cela permettra aux articles en stock d'être affichés avec des valeurs négatives. L'utilisation de cette option dépend de votre cas d'utilisation. Lorsque cette option n'est pas cochée, le système avertit avant d'entraver une transaction entraînant un stock négatif.",
+Choose between FIFO and Moving Average Valuation Methods. Click ,Choisissez entre les méthodes d'évaluation FIFO et moyenne mobile. Cliquez sur,
  to know more about them.,pour en savoir plus sur eux.,
 Show 'Scan Barcode' field above every child table to insert Items with ease.,Affichez le champ &quot;Scanner le code-barres&quot; au-dessus de chaque table enfant pour insérer facilement des éléments.,
-"Serial numbers for stock will be set automatically based on the Items entered based on first in first out in transactions like Purchase/Sales Invoices, Delivery Notes, etc.","Les numéros de série pour le stock seront définis automatiquement en fonction des articles saisis en fonction du premier entré, premier sorti dans les transactions telles que les factures d&#39;achat / vente, les bons de livraison, etc.",
-"If blank, parent Warehouse Account or company default will be considered in transactions","Si ce champ est vide, le compte d&#39;entrepôt parent ou la valeur par défaut de la société sera pris en compte dans les transactions",
-Service Level Agreement Details,Détails de l&#39;accord de niveau de service,
-Service Level Agreement Status,Statut de l&#39;accord de niveau de service,
+"Serial numbers for stock will be set automatically based on the Items entered based on first in first out in transactions like Purchase/Sales Invoices, Delivery Notes, etc.","Les numéros de série pour le stock seront définis automatiquement en fonction des articles saisis en fonction du premier entré, premier sorti dans les transactions telles que les factures d'achat / vente, les bons de livraison, etc.",
+"If blank, parent Warehouse Account or company default will be considered in transactions","Si ce champ est vide, le compte d'entrepôt parent ou la valeur par défaut de la société sera pris en compte dans les transactions",
+Service Level Agreement Details,Détails de l'accord de niveau de service,
+Service Level Agreement Status,Statut de l'accord de niveau de service,
 On Hold Since,En attente depuis,
 Total Hold Time,Temps de maintien total,
 Response Details,Détails de la réponse,
@@ -9127,12 +9127,12 @@
 Pause SLA On Status,Mettre en veille le statut SLA activé,
 Pause SLA On,Suspendre le SLA sur,
 Greetings Section,Section salutations,
-Greeting Title,Titre du message d&#39;accueil,
+Greeting Title,Titre du message d'accueil,
 Greeting Subtitle,Sous-titre de bienvenue,
 Youtube ID,Identifiant Youtube,
 Youtube Statistics,Statistiques Youtube,
 Views,Vues,
-Dislikes,N&#39;aime pas,
+Dislikes,N'aime pas,
 Video Settings,Paramètres vidéo,
 Enable YouTube Tracking,Activer le suivi YouTube,
 30 mins,30 min,
@@ -9143,9 +9143,9 @@
 Score Obtained,Score obtenu,
 Sessions,Séances,
 Average Score,Score moyen,
-Select Assessment Template,Sélectionnez un modèle d&#39;évaluation,
+Select Assessment Template,Sélectionnez un modèle d'évaluation,
  out of ,hors de,
-Select Assessment Parameter,Sélectionnez le paramètre d&#39;évaluation,
+Select Assessment Parameter,Sélectionnez le paramètre d'évaluation,
 Gender: ,Le genre:,
 Contact: ,Contact:,
 Total Therapy Sessions: ,Total des séances de thérapie:,
@@ -9156,26 +9156,26 @@
 Search by invoice id or customer name,Recherche par numéro de facture ou nom de client,
 Invoice Status,État de la facture,
 Filter by invoice status,Filtrer par statut de facture,
-Select item group,Sélectionnez un groupe d&#39;articles,
+Select item group,Sélectionnez un groupe d'articles,
 No items found. Scan barcode again.,Aucun élément trouvé. Scannez à nouveau le code-barres.,
 "Search by customer name, phone, email.","Recherche par nom de client, téléphone, e-mail.",
 Enter discount percentage.,Entrez le pourcentage de remise.,
 Discount cannot be greater than 100%,La remise ne peut pas être supérieure à 100%,
-Enter customer's email,Entrez l&#39;e-mail du client,
+Enter customer's email,Entrez l'e-mail du client,
 Enter customer's phone number,Entrez le numéro de téléphone du client,
 Customer contact updated successfully.,Contact client mis à jour avec succès.,
-Item will be removed since no serial / batch no selected.,L&#39;article sera supprimé car aucun numéro de série / lot sélectionné.,
+Item will be removed since no serial / batch no selected.,L'article sera supprimé car aucun numéro de série / lot sélectionné.,
 Discount (%),Remise (%),
 You cannot submit the order without payment.,Vous ne pouvez pas valider la commande sans paiement.,
 You cannot submit empty order.,Vous ne pouvez pas valider de commande vide.,
 To Be Paid,Être payé,
-Create POS Opening Entry,Créer une entrée d&#39;ouverture de PDV,
-Please add Mode of payments and opening balance details.,Veuillez ajouter le mode de paiement et les détails du solde d&#39;ouverture.,
+Create POS Opening Entry,Créer une entrée d'ouverture de PDV,
+Please add Mode of payments and opening balance details.,Veuillez ajouter le mode de paiement et les détails du solde d'ouverture.,
 Toggle Recent Orders,Toggle Commandes récentes,
 Save as Draft,Enregistrer comme brouillon,
-You must add atleast one item to save it as draft.,Vous devez ajouter au moins un élément pour l&#39;enregistrer en tant que brouillon.,
-There was an error saving the document.,Une erreur s&#39;est produite lors de l&#39;enregistrement du document.,
-You must select a customer before adding an item.,Vous devez sélectionner un client avant d&#39;ajouter un article.,
+You must add atleast one item to save it as draft.,Vous devez ajouter au moins un élément pour l'enregistrer en tant que brouillon.,
+There was an error saving the document.,Une erreur s'est produite lors de l'enregistrement du document.,
+You must select a customer before adding an item.,Vous devez sélectionner un client avant d'ajouter un article.,
 Please Select a Company,Veuillez sélectionner une entreprise,
 Active Leads,Leads actifs,
 Please Select a Company.,Veuillez sélectionner une entreprise.,
@@ -9186,22 +9186,22 @@
 Sub-assembly BOM Count,Nombre de nomenclatures de sous-assemblages,
 View Type,Type de vue,
 Total Delivered Amount,Montant total livré,
-Downtime Analysis,Analyse des temps d&#39;arrêt,
+Downtime Analysis,Analyse des temps d'arrêt,
 Machine,Machine,
-Downtime (In Hours),Temps d&#39;arrêt (en heures),
+Downtime (In Hours),Temps d'arrêt (en heures),
 Employee Analytics,Analyse des employés,
 """From date"" can not be greater than or equal to ""To date""",&quot;De la date&quot; ne peut pas être supérieur ou égal à &quot;À ce jour&quot;,
 Exponential Smoothing Forecasting,Prévisions de lissage exponentiel,
 First Response Time for Issues,Temps de première réponse pour les problèmes,
-First Response Time for Opportunity,Temps de première réponse pour l&#39;opportunité,
+First Response Time for Opportunity,Temps de première réponse pour l'opportunité,
 Depreciatied Amount,Montant déprécié,
 Period Based On,Période basée sur,
 Date Based On,Date basée sur,
 {0} and {1} are mandatory,{0} et {1} sont obligatoires,
 Consider Accounting Dimensions,Tenez compte des dimensions comptables,
-Income Tax Deductions,Déductions d&#39;impôt sur le revenu,
-Income Tax Component,Composante de l&#39;impôt sur le revenu,
-Income Tax Amount,Montant de l&#39;impôt sur le revenu,
+Income Tax Deductions,Déductions d'impôt sur le revenu,
+Income Tax Component,Composante de l'impôt sur le revenu,
+Income Tax Amount,Montant de l'impôt sur le revenu,
 Reserved Quantity for Production,Quantité réservée pour la production,
 Projected Quantity,Quantité projetée,
  Total Sales Amount,Montant total des ventes,
@@ -9228,8 +9228,8 @@
 Raw Material Code,Code matière première,
 Raw Material Name,Nom de la matière première,
 Allotted Qty,Qté allouée,
-Expected Arrival Date,Date d&#39;arrivée prévue,
-Arrival Quantity,Quantité d&#39;arrivée,
+Expected Arrival Date,Date d'arrivée prévue,
+Arrival Quantity,Quantité d'arrivée,
 Raw Material Warehouse,Entrepôt de matières premières,
 Order By,Commandé par,
 Include Sub-assembly Raw Materials,Inclure les matières premières de sous-assemblage,
@@ -9246,16 +9246,16 @@
 From and To Dates are required.,Les dates de début et de fin sont obligatoires.,
 To Date cannot be before From Date.,La date de fin ne peut pas être antérieure à la date de début.,
 Qty to Bill,Qté à facturer,
-Group by Purchase Order,Regrouper par bon de commande,
- Purchase Value,Valeur d&#39;achat,
+Group by Purchase Order,Regrouper par Commande d'Achat,
+ Purchase Value,Valeur d'achat,
 Total Received Amount,Montant total reçu,
-Quality Inspection Summary,Résumé de l&#39;inspection de la qualité,
+Quality Inspection Summary,Résumé de l'inspection de la qualité,
  Quoted Amount,Montant cité,
-Lead Time (Days),Délai d&#39;exécution (jours),
+Lead Time (Days),Délai d'exécution (jours),
 Include Expired,Inclure expiré,
 Recruitment Analytics,Analyse de recrutement,
 Applicant name,Nom du demandeur,
-Job Offer status,Statut de l&#39;offre d&#39;emploi,
+Job Offer status,Statut de l'offre d'emploi,
 On Date,À la date,
 Requested Items to Order and Receive,Articles demandés à commander et à recevoir,
 Salary Payments Based On Payment Mode,Paiements de salaire basés sur le mode de paiement,
@@ -9279,15 +9279,15 @@
 Barnch,Barnch,
 Select a Company,Sélectionnez une entreprise,
 Opportunity {0} created,Opportunité {0} créée,
-Kindly select the company first,Veuillez d&#39;abord sélectionner l&#39;entreprise,
+Kindly select the company first,Veuillez d'abord sélectionner l'entreprise,
 Please enter From Date and To Date to generate JSON,Veuillez saisir la date de début et la date de fin pour générer du JSON,
 PF Account,Compte PF,
 PF Amount,Montant PF,
 Additional PF,PF supplémentaire,
 PF Loan,Prêt PF,
 Download DATEV File,Télécharger le fichier DATEV,
-Numero has not set in the XML file,Numero n&#39;a pas été défini dans le fichier XML,
-Inward Supplies(liable to reverse charge),Fournitures entrantes (soumises à l&#39;autoliquidation),
+Numero has not set in the XML file,Numero n'a pas été défini dans le fichier XML,
+Inward Supplies(liable to reverse charge),Fournitures entrantes (soumises à l'autoliquidation),
 This is based on the course schedules of this Instructor,Ceci est basé sur les horaires de cours de cet instructeur,
 Course and Assessment,Cours et évaluation,
 Course {0} has been added to all the selected programs successfully.,Le cours {0} a été ajouté à tous les programmes sélectionnés avec succès.,
@@ -9295,50 +9295,50 @@
 Program and Course,Programme et cours,
 {0} or {1} is mandatory,{0} ou {1} est obligatoire,
 Mandatory Fields,Champs obligatoires,
-Student {0}: {1} does not belong to Student Group {2},Étudiant {0}: {1} n&#39;appartient pas au groupe d&#39;étudiants {2},
-Student Attendance record {0} already exists against the Student {1},L&#39;enregistrement de présence des étudiants {0} existe déjà pour l&#39;étudiant {1},
+Student {0}: {1} does not belong to Student Group {2},Étudiant {0}: {1} n'appartient pas au groupe d'étudiants {2},
+Student Attendance record {0} already exists against the Student {1},L'enregistrement de présence des étudiants {0} existe déjà pour l'étudiant {1},
 Duplicate Entry,Double entrée,
 Course and Fee,Cours et frais,
-Not eligible for the admission in this program as per Date Of Birth,Non éligible à l&#39;admission dans ce programme selon la date de naissance,
+Not eligible for the admission in this program as per Date Of Birth,Non éligible à l'admission dans ce programme selon la date de naissance,
 Topic {0} has been added to all the selected courses successfully.,Le sujet {0} a été ajouté à tous les cours sélectionnés avec succès.,
 Courses updated,Cours mis à jour,
 {0} {1} has been added to all the selected topics successfully.,{0} {1} a bien été ajouté à tous les sujets sélectionnés.,
 Topics updated,Sujets mis à jour,
 Academic Term and Program,Terme académique et programme,
-Please remove this item and try to submit again or update the posting time.,Veuillez supprimer cet élément et réessayer de le valider ou mettre à jour l&#39;heure de publication.,
-Failed to Authenticate the API key.,Échec de l&#39;authentification de la clé API.,
-Invalid Credentials,Les informations d&#39;identification invalides,
-URL can only be a string,L&#39;URL ne peut être qu&#39;une chaîne,
-"Here is your webhook secret, this will be shown to you only once.","Voici votre secret de webhook, il ne vous sera montré qu&#39;une seule fois.",
-The payment for this membership is not paid. To generate invoice fill the payment details,"Le paiement de cette adhésion n&#39;est pas payé. Pour générer une facture, remplissez les détails du paiement",
+Please remove this item and try to submit again or update the posting time.,Veuillez supprimer cet élément et réessayer de le valider ou mettre à jour l'heure de publication.,
+Failed to Authenticate the API key.,Échec de l'authentification de la clé API.,
+Invalid Credentials,Les informations d'identification invalides,
+URL can only be a string,L'URL ne peut être qu'une chaîne,
+"Here is your webhook secret, this will be shown to you only once.","Voici votre secret de webhook, il ne vous sera montré qu'une seule fois.",
+The payment for this membership is not paid. To generate invoice fill the payment details,"Le paiement de cette adhésion n'est pas payé. Pour générer une facture, remplissez les détails du paiement",
 An invoice is already linked to this document,Une facture est déjà liée à ce document,
 No customer linked to member {},Aucun client associé au membre {},
-You need to set <b>Debit Account</b> in Membership Settings,Vous devez définir le <b>compte de débit</b> dans les paramètres d&#39;adhésion,
-You need to set <b>Default Company</b> for invoicing in Membership Settings,Vous devez définir la <b>société par défaut</b> pour la facturation dans les paramètres d&#39;adhésion,
-You need to enable <b>Send Acknowledge Email</b> in Membership Settings,Vous devez activer <b>Envoyer un e-mail</b> de confirmation dans les paramètres d&#39;adhésion,
-Error creating membership entry for {0},Erreur lors de la création de l&#39;entrée d&#39;adhésion pour {0},
+You need to set <b>Debit Account</b> in Membership Settings,Vous devez définir le <b>compte de débit</b> dans les paramètres d'adhésion,
+You need to set <b>Default Company</b> for invoicing in Membership Settings,Vous devez définir la <b>société par défaut</b> pour la facturation dans les paramètres d'adhésion,
+You need to enable <b>Send Acknowledge Email</b> in Membership Settings,Vous devez activer <b>Envoyer un e-mail</b> de confirmation dans les paramètres d'adhésion,
+Error creating membership entry for {0},Erreur lors de la création de l'entrée d'adhésion pour {0},
 A customer is already linked to this Member,Un client est déjà lié à ce membre,
 End Date must not be lesser than Start Date,La date de fin ne doit pas être inférieure à la date de début,
-Employee {0} already has Active Shift {1}: {2},L&#39;employé {0} a déjà Active Shift {1}: {2},
+Employee {0} already has Active Shift {1}: {2},L'employé {0} a déjà Active Shift {1}: {2},
  from {0},de {0},
  to {0},à {0},
-Please select Employee first.,Veuillez d&#39;abord sélectionner l&#39;employé.,
-Please set {0} for the Employee or for Department: {1},Veuillez définir {0} pour l&#39;employé ou pour le service: {1},
+Please select Employee first.,Veuillez d'abord sélectionner l'employé.,
+Please set {0} for the Employee or for Department: {1},Veuillez définir {0} pour l'employé ou pour le service: {1},
 To Date should be greater than From Date,La date de fin doit être supérieure à la date de début,
-Employee Onboarding: {0} is already for Job Applicant: {1},Intégration des employés: {0} est déjà pour le candidat à l&#39;emploi: {1},
-Job Offer: {0} is already for Job Applicant: {1},Offre d&#39;emploi: {0} est déjà pour le candidat à l&#39;emploi: {1},
+Employee Onboarding: {0} is already for Job Applicant: {1},Intégration des employés: {0} est déjà pour le candidat à l'emploi: {1},
+Job Offer: {0} is already for Job Applicant: {1},Offre d'emploi: {0} est déjà pour le candidat à l'emploi: {1},
 Only Shift Request with status 'Approved' and 'Rejected' can be submitted,Seules les demandes de quart avec le statut «Approuvé» et «Rejeté» peuvent être soumises,
-Shift Assignment: {0} created for Employee: {1},Affectation d&#39;équipe: {0} créée pour l&#39;employé: {1},
+Shift Assignment: {0} created for Employee: {1},Affectation d'équipe: {0} créée pour l'employé: {1},
 You can not request for your Default Shift: {0},Vous ne pouvez pas demander votre quart de travail par défaut: {0},
 Only Approvers can Approve this Request.,Seuls les approbateurs peuvent approuver cette demande.,
 Asset Value Analytics,Analyse de la valeur des actifs,
-Category-wise Asset Value,Valeur de l&#39;actif par catégorie,
+Category-wise Asset Value,Valeur de l'actif par catégorie,
 Total Assets,Actif total,
 New Assets (This Year),Nouveaux actifs (cette année),
-Row #{}: Depreciation Posting Date should not be equal to Available for Use Date.,Ligne n ° {}: la date comptable de l&#39;amortissement ne doit pas être égale à la date de disponibilité.,
+Row #{}: Depreciation Posting Date should not be equal to Available for Use Date.,Ligne n ° {}: la date comptable de l'amortissement ne doit pas être égale à la date de disponibilité.,
 Incorrect Date,Date incorrecte,
-Invalid Gross Purchase Amount,Montant d&#39;achat brut non valide,
-There are active maintenance or repairs against the asset. You must complete all of them before cancelling the asset.,Il y a une maintenance active ou des réparations sur l&#39;actif. Vous devez les compléter tous avant d&#39;annuler l&#39;élément.,
+Invalid Gross Purchase Amount,Montant d'achat brut non valide,
+There are active maintenance or repairs against the asset. You must complete all of them before cancelling the asset.,Il y a une maintenance active ou des réparations sur l'actif. Vous devez les compléter tous avant d'annuler l'élément.,
 % Complete,% Achevée,
 Back to Course,Retour aux cours,
 Finish Topic,Terminer le sujet,
@@ -9348,86 +9348,86 @@
 Enrolling...,Inscription ...,
 You have successfully enrolled for the program ,Vous vous êtes inscrit avec succès au programme,
 Enrolled,Inscrit,
-Watch Intro,Regarder l&#39;intro,
+Watch Intro,Regarder l'intro,
 We're here to help!,Nous sommes là pour vous aider!,
 Frequently Read Articles,Articles lus fréquemment,
-Please set a default company address,Veuillez définir une adresse d&#39;entreprise par défaut,
-{0} is not a valid state! Check for typos or enter the ISO code for your state.,{0} n&#39;est pas un état valide! Vérifiez les fautes de frappe ou entrez le code ISO de votre état.,
-Error occured while parsing Chart of Accounts: Please make sure that no two accounts have the same name,Une erreur s&#39;est produite lors de l&#39;analyse du plan comptable: veuillez vous assurer qu&#39;aucun compte ne porte le même nom,
+Please set a default company address,Veuillez définir une adresse d'entreprise par défaut,
+{0} is not a valid state! Check for typos or enter the ISO code for your state.,{0} n'est pas un état valide! Vérifiez les fautes de frappe ou entrez le code ISO de votre état.,
+Error occured while parsing Chart of Accounts: Please make sure that no two accounts have the same name,Une erreur s'est produite lors de l'analyse du plan comptable: veuillez vous assurer qu'aucun compte ne porte le même nom,
 Plaid invalid request error,Erreur de demande non valide pour le plaid,
 Please check your Plaid client ID and secret values,Veuillez vérifier votre identifiant client Plaid et vos valeurs secrètes,
 Bank transaction creation error,Erreur de création de transaction bancaire,
 Unit of Measurement,Unité de mesure,
-Fiscal Year {0} Does Not Exist,L&#39;exercice budgétaire {0} n&#39;existe pas,
-Row # {0}: Returned Item {1} does not exist in {2} {3},Ligne n ° {0}: l&#39;élément renvoyé {1} n&#39;existe pas dans {2} {3},
-Valuation type charges can not be marked as Inclusive,Les frais de type d&#39;évaluation ne peuvent pas être marqués comme inclusifs,
+Fiscal Year {0} Does Not Exist,L'exercice budgétaire {0} n'existe pas,
+Row # {0}: Returned Item {1} does not exist in {2} {3},Ligne n ° {0}: l'élément renvoyé {1} n'existe pas dans {2} {3},
+Valuation type charges can not be marked as Inclusive,Les frais de type d'évaluation ne peuvent pas être marqués comme inclusifs,
 You do not have permissions to {} items in a {}.,Vous ne disposez pas des autorisations nécessaires pour {} éléments dans un {}.,
 Insufficient Permissions,Permissions insuffisantes,
-You are not allowed to update as per the conditions set in {} Workflow.,Vous n&#39;êtes pas autorisé à effectuer la mise à jour selon les conditions définies dans {} Workflow.,
+You are not allowed to update as per the conditions set in {} Workflow.,Vous n'êtes pas autorisé à effectuer la mise à jour selon les conditions définies dans {} Workflow.,
 Expense Account Missing,Compte de dépenses manquant,
-{0} is not a valid Value for Attribute {1} of Item {2}.,{0} n&#39;est pas une valeur valide pour l&#39;attribut {1} de l&#39;article {2}.,
+{0} is not a valid Value for Attribute {1} of Item {2}.,{0} n'est pas une valeur valide pour l'attribut {1} de l'article {2}.,
 Invalid Value,Valeur invalide,
 The value {0} is already assigned to an existing Item {1}.,La valeur {0} est déjà attribuée à un élément existant {1}.,
-"To still proceed with editing this Attribute Value, enable {0} in Item Variant Settings.","Pour continuer à modifier cette valeur d&#39;attribut, activez {0} dans les paramètres de variante d&#39;article.",
+"To still proceed with editing this Attribute Value, enable {0} in Item Variant Settings.","Pour continuer à modifier cette valeur d'attribut, activez {0} dans les paramètres de variante d'article.",
 Edit Not Allowed,Modification non autorisée,
-Row #{0}: Item {1} is already fully received in Purchase Order {2},Ligne n ° {0}: l&#39;article {1} est déjà entièrement reçu dans le bon de commande {2},
+Row #{0}: Item {1} is already fully received in Purchase Order {2},Ligne n ° {0}: l'article {1} est déjà entièrement reçu dans la Commande d'achats {2},
 You cannot create or cancel any accounting entries with in the closed Accounting Period {0},Vous ne pouvez pas créer ou annuler des écritures comptables dans la période comptable clôturée {0},
 POS Invoice should have {} field checked.,Le champ {} doit être coché sur la facture PDV.,
 Invalid Item,Élément non valide,
-Row #{}: You cannot add postive quantities in a return invoice. Please remove item {} to complete the return.,Ligne n ° {}: vous ne pouvez pas ajouter de quantités positives dans une facture de retour. Veuillez supprimer l&#39;article {} pour terminer le retour.,
-The selected change account {} doesn't belongs to Company {}.,Le compte de modification sélectionné {} n&#39;appartient pas à l&#39;entreprise {}.,
+Row #{}: You cannot add postive quantities in a return invoice. Please remove item {} to complete the return.,Ligne n ° {}: vous ne pouvez pas ajouter de quantités positives dans une facture de retour. Veuillez supprimer l'article {} pour terminer le retour.,
+The selected change account {} doesn't belongs to Company {}.,Le compte de modification sélectionné {} n'appartient pas à l'entreprise {}.,
 Atleast one invoice has to be selected.,Au moins une facture doit être sélectionnée.,
 Payment methods are mandatory. Please add at least one payment method.,Les modes de paiement sont obligatoires. Veuillez ajouter au moins un mode de paiement.,
 Please select a default mode of payment,Veuillez sélectionner un mode de paiement par défaut,
-You can only select one mode of payment as default,Vous ne pouvez sélectionner qu&#39;un seul mode de paiement par défaut,
+You can only select one mode of payment as default,Vous ne pouvez sélectionner qu'un seul mode de paiement par défaut,
 Missing Account,Compte manquant,
 Customers not selected.,Clients non sélectionnés.,
 Statement of Accounts,Bilan,
 Ageing Report Based On ,Rapport de vieillissement basé sur,
 Please enter distributed cost center,Veuillez saisir le centre de coûts distribué,
-Total percentage allocation for distributed cost center should be equal to 100,Le pourcentage d&#39;allocation totale pour le centre de coûts distribué doit être égal à 100,
-Cannot enable Distributed Cost Center for a Cost Center already allocated in another Distributed Cost Center,Impossible d&#39;activer le centre de coûts distribué pour un centre de coûts déjà alloué dans un autre centre de coûts distribués,
+Total percentage allocation for distributed cost center should be equal to 100,Le pourcentage d'allocation totale pour le centre de coûts distribué doit être égal à 100,
+Cannot enable Distributed Cost Center for a Cost Center already allocated in another Distributed Cost Center,Impossible d'activer le centre de coûts distribué pour un centre de coûts déjà alloué dans un autre centre de coûts distribués,
 Parent Cost Center cannot be added in Distributed Cost Center,Le centre de coûts parent ne peut pas être ajouté au centre de coûts réparti,
 A Distributed Cost Center cannot be added in the Distributed Cost Center allocation table.,Un centre de coûts répartis ne peut pas être ajouté dans la table de répartition des centres de coûts répartis.,
 Cost Center with enabled distributed cost center can not be converted to group,Le centre de coûts avec le centre de coûts distribué activé ne peut pas être converti en groupe,
 Cost Center Already Allocated in a Distributed Cost Center cannot be converted to group,Le centre de coûts déjà alloué dans un centre de coûts réparti ne peut pas être converti en groupe,
-Trial Period Start date cannot be after Subscription Start Date,La date de début de la période d&#39;essai ne peut pas être postérieure à la date de début de l&#39;abonnement,
-Subscription End Date must be after {0} as per the subscription plan,La date de fin de l&#39;abonnement doit être postérieure au {0} selon le plan d&#39;abonnement,
-Subscription End Date is mandatory to follow calendar months,La date de fin de l&#39;abonnement est obligatoire pour suivre les mois civils,
-Row #{}: POS Invoice {} is not against customer {},Ligne n ° {}: la facture PDV {} n&#39;est pas contre le client {},
-Row #{}: POS Invoice {} is not submitted yet,Ligne n ° {}: La facture PDV {} n&#39;est pas encore envoyée,
+Trial Period Start date cannot be after Subscription Start Date,La date de début de la période d'essai ne peut pas être postérieure à la date de début de l'abonnement,
+Subscription End Date must be after {0} as per the subscription plan,La date de fin de l'abonnement doit être postérieure au {0} selon le plan d'abonnement,
+Subscription End Date is mandatory to follow calendar months,La date de fin de l'abonnement est obligatoire pour suivre les mois civils,
+Row #{}: POS Invoice {} is not against customer {},Ligne n ° {}: la facture PDV {} n'est pas contre le client {},
+Row #{}: POS Invoice {} is not submitted yet,Ligne n ° {}: La facture PDV {} n'est pas encore envoyée,
 Row #{}: POS Invoice {} has been {},Ligne n ° {}: Facture PDV {} a été {},
-No Supplier found for Inter Company Transactions which represents company {0},Aucun fournisseur trouvé pour les transactions intersociétés qui représentent l&#39;entreprise {0},
-No Customer found for Inter Company Transactions which represents company {0},Aucun client trouvé pour les transactions intersociétés qui représentent l&#39;entreprise {0},
+No Supplier found for Inter Company Transactions which represents company {0},Aucun fournisseur trouvé pour les transactions intersociétés qui représentent l'entreprise {0},
+No Customer found for Inter Company Transactions which represents company {0},Aucun client trouvé pour les transactions intersociétés qui représentent l'entreprise {0},
 Invalid Period,Période invalide,
-Selected POS Opening Entry should be open.,L&#39;entrée d&#39;ouverture de PDV sélectionnée doit être ouverte.,
-Invalid Opening Entry,Entrée d&#39;ouverture non valide,
+Selected POS Opening Entry should be open.,L'entrée d'ouverture de PDV sélectionnée doit être ouverte.,
+Invalid Opening Entry,Entrée d'ouverture non valide,
 Please set a Company,Veuillez définir une entreprise,
-"Sorry, this coupon code's validity has not started","Désolé, la validité de ce code promo n&#39;a pas commencé",
+"Sorry, this coupon code's validity has not started","Désolé, la validité de ce code promo n'a pas commencé",
 "Sorry, this coupon code's validity has expired","Désolé, la validité de ce code promo a expiré",
-"Sorry, this coupon code is no longer valid","Désolé, ce code promo n&#39;est plus valide",
-For the 'Apply Rule On Other' condition the field {0} is mandatory,"Pour la condition &quot;Appliquer la règle à l&#39;autre&quot;, le champ {0} est obligatoire",
+"Sorry, this coupon code is no longer valid","Désolé, ce code promo n'est plus valide",
+For the 'Apply Rule On Other' condition the field {0} is mandatory,"Pour la condition &quot;Appliquer la règle à l'autre&quot;, le champ {0} est obligatoire",
 {1} Not in Stock,{1} Pas en stock,
-Only {0} in Stock for item {1},Uniquement {0} en stock pour l&#39;article {1},
+Only {0} in Stock for item {1},Uniquement {0} en stock pour l'article {1},
 Please enter a coupon code,Veuillez saisir un code de coupon,
 Please enter a valid coupon code,Veuillez saisir un code de coupon valide,
 Invalid Child Procedure,Procédure enfant non valide,
 Import Italian Supplier Invoice.,Importer la facture du fournisseur italien.,
-"Valuation Rate for the Item {0}, is required to do accounting entries for {1} {2}.",Le taux de valorisation de l&#39;article {0} est requis pour effectuer des écritures comptables pour {1} {2}.,
+"Valuation Rate for the Item {0}, is required to do accounting entries for {1} {2}.",Le taux de valorisation de l'article {0} est requis pour effectuer des écritures comptables pour {1} {2}.,
  Here are the options to proceed:,Voici les options pour continuer:,
-"If the item is transacting as a Zero Valuation Rate item in this entry, please enable 'Allow Zero Valuation Rate' in the {0} Item table.","Si l&#39;article est traité comme un article à taux de valorisation nul dans cette entrée, veuillez activer &quot;Autoriser le taux de valorisation nul&quot; dans le {0} tableau des articles.",
+"If the item is transacting as a Zero Valuation Rate item in this entry, please enable 'Allow Zero Valuation Rate' in the {0} Item table.","Si l'article est traité comme un article à taux de valorisation nul dans cette entrée, veuillez activer &quot;Autoriser le taux de valorisation nul&quot; dans le {0} tableau des articles.",
 "If not, you can Cancel / Submit this entry ","Sinon, vous pouvez annuler / valider cette entrée",
- performing either one below:,effectuer l&#39;un ou l&#39;autre ci-dessous:,
-Create an incoming stock transaction for the Item.,Créez une transaction de stock entrante pour l&#39;article.,
+ performing either one below:,effectuer l'un ou l'autre ci-dessous:,
+Create an incoming stock transaction for the Item.,Créez une transaction de stock entrante pour l'article.,
 Mention Valuation Rate in the Item master.,Mentionnez le taux de valorisation dans la fiche article.,
 Valuation Rate Missing,Taux de valorisation manquant,
 Serial Nos Required,Numéros de série requis,
 Quantity Mismatch,Non-concordance de quantité,
 "Please Restock Items and Update the Pick List to continue. To discontinue, cancel the Pick List.","Veuillez réapprovisionner les articles et mettre à jour la liste de sélection pour continuer. Pour interrompre, annulez la liste de sélection.",
 Out of Stock,En rupture de stock,
-{0} units of Item {1} is not available.,{0} unités de l&#39;élément {1} ne sont pas disponibles.,
-Item for row {0} does not match Material Request,L&#39;élément de la ligne {0} ne correspond pas à la demande de matériel,
-Warehouse for row {0} does not match Material Request,L&#39;entrepôt pour la ligne {0} ne correspond pas à la demande d&#39;article,
+{0} units of Item {1} is not available.,{0} unités de l'élément {1} ne sont pas disponibles.,
+Item for row {0} does not match Material Request,L'élément de la ligne {0} ne correspond pas à la demande de matériel,
+Warehouse for row {0} does not match Material Request,L'entrepôt pour la ligne {0} ne correspond pas à la demande d'article,
 Accounting Entry for Service,Écriture comptable pour le service,
 All items have already been Invoiced/Returned,Tous les articles ont déjà été facturés / retournés,
 All these items have already been Invoiced/Returned,Tous ces articles ont déjà été facturés / retournés,
@@ -9435,14 +9435,14 @@
 Merge not allowed,Fusion non autorisée,
 The following deleted attributes exist in Variants but not in the Template. You can either delete the Variants or keep the attribute(s) in template.,Les attributs supprimés suivants existent dans les variantes mais pas dans le modèle. Vous pouvez supprimer les variantes ou conserver le ou les attributs dans le modèle.,
 Variant Items,Articles de variante,
-Variant Attribute Error,Erreur d&#39;attribut de variante,
-The serial no {0} does not belong to item {1},Le numéro de série {0} n&#39;appartient pas à l&#39;article {1},
+Variant Attribute Error,Erreur d'attribut de variante,
+The serial no {0} does not belong to item {1},Le numéro de série {0} n'appartient pas à l'article {1},
 There is no batch found against the {0}: {1},Aucun lot trouvé pour {0}: {1},
 Completed Operation,Opération terminée,
 Work Order Analysis,Analyse des bons de travail,
 Quality Inspection Analysis,Analyse d'inspection de la qualité,
 Pending Work Order,Ordre de fabrication en attente,
-Last Month Downtime Analysis,Analyse des temps d&#39;arrêt du mois dernier,
+Last Month Downtime Analysis,Analyse des temps d'arrêt du mois dernier,
 Work Order Qty Analysis,Analyse de la quantité des bons de travail,
 Job Card Analysis,Analyse des cartes de travail,
 Monthly Total Work Orders,Commandes de travail mensuelles totales,
@@ -9464,7 +9464,7 @@
 Items Required,Articles requis,
 Operation {0} does not belong to the work order {1},L'opération {0} ne fait pas partie de l'ordre de fabrication {1},
 Print UOM after Quantity,Imprimer UdM après la quantité,
-Set default {0} account for perpetual inventory for non stock items,Définir le compte {0} par défaut pour l&#39;inventaire permanent pour les articles hors stock,
+Set default {0} account for perpetual inventory for non stock items,Définir le compte {0} par défaut pour l'inventaire permanent pour les articles hors stock,
 Loan Security {0} added multiple times,Garantie de prêt {0} ajoutée plusieurs fois,
 Loan Securities with different LTV ratio cannot be pledged against one loan,Les titres de prêt avec un ratio LTV différent ne peuvent pas être mis en gage contre un prêt,
 Qty or Amount is mandatory for loan security!,La quantité ou le montant est obligatoire pour la garantie de prêt!,
@@ -9472,7 +9472,7 @@
 Interest Amount or Principal Amount is mandatory,Le montant des intérêts ou le capital est obligatoire,
 Disbursed Amount cannot be greater than {0},Le montant décaissé ne peut pas être supérieur à {0},
 Row {0}: Loan Security {1} added multiple times,Ligne {0}: Garantie de prêt {1} ajoutée plusieurs fois,
-Row #{0}: Child Item should not be a Product Bundle. Please remove Item {1} and Save,Ligne n ° {0}: l&#39;élément enfant ne doit pas être un ensemble de produits. Veuillez supprimer l&#39;élément {1} et enregistrer,
+Row #{0}: Child Item should not be a Product Bundle. Please remove Item {1} and Save,Ligne n ° {0}: l'élément enfant ne doit pas être un ensemble de produits. Veuillez supprimer l'élément {1} et enregistrer,
 Credit limit reached for customer {0},Limite de crédit atteinte pour le client {0},
 Could not auto create Customer due to the following missing mandatory field(s):,Impossible de créer automatiquement le client en raison du ou des champs obligatoires manquants suivants:,
 Please create Customer from Lead {0}.,Veuillez créer un client à partir du prospect {0}.,
@@ -9480,56 +9480,56 @@
 Please set Payroll based on in Payroll settings,Veuillez définir la paie en fonction des paramètres de paie,
 Additional Salary: {0} already exist for Salary Component: {1} for period {2} and {3},Salaire supplémentaire: {0} existe déjà pour le composant de salaire: {1} pour la période {2} et {3},
 From Date can not be greater than To Date.,La date de début ne peut pas être supérieure à la date.,
-Payroll date can not be less than employee's joining date.,La date de paie ne peut pas être inférieure à la date d&#39;adhésion de l&#39;employé.,
-From date can not be less than employee's joining date.,La date de début ne peut pas être inférieure à la date d&#39;adhésion de l&#39;employé.,
-To date can not be greater than employee's relieving date.,"À ce jour, ne peut pas être postérieure à la date de congé de l&#39;employé.",
-Payroll date can not be greater than employee's relieving date.,La date de paie ne peut pas être postérieure à la date de relève de l&#39;employé.,
+Payroll date can not be less than employee's joining date.,La date de paie ne peut pas être inférieure à la date d'adhésion de l'employé.,
+From date can not be less than employee's joining date.,La date de début ne peut pas être inférieure à la date d'adhésion de l'employé.,
+To date can not be greater than employee's relieving date.,"À ce jour, ne peut pas être postérieure à la date de congé de l'employé.",
+Payroll date can not be greater than employee's relieving date.,La date de paie ne peut pas être postérieure à la date de relève de l'employé.,
 Row #{0}: Please enter the result value for {1},Ligne n ° {0}: veuillez saisir la valeur du résultat pour {1},
 Mandatory Results,Résultats obligatoires,
 Sales Invoice or Patient Encounter is required to create Lab Tests,Une facture de vente ou une rencontre avec le patient est requise pour créer des tests de laboratoire,
 Insufficient Data,Données insuffisantes,
 Lab Test(s) {0} created successfully,Test (s) de laboratoire {0} créé avec succès,
 Test :,Test:,
-Sample Collection {0} has been created,La collection d&#39;échantillons {0} a été créée,
+Sample Collection {0} has been created,La collection d'échantillons {0} a été créée,
 Normal Range: ,Plage normale:,
 Row #{0}: Check Out datetime cannot be less than Check In datetime,Ligne n ° {0}: la date de sortie ne peut pas être inférieure à la date de sortie,
-"Missing required details, did not create Inpatient Record","Détails requis manquants, n&#39;a pas créé de dossier d&#39;hospitalisation",
+"Missing required details, did not create Inpatient Record","Détails requis manquants, n'a pas créé de dossier d'hospitalisation",
 Unbilled Invoices,Factures non facturées,
 Standard Selling Rate should be greater than zero.,Le taux de vente standard doit être supérieur à zéro.,
 Conversion Factor is mandatory,Le facteur de conversion est obligatoire,
 Row #{0}: Conversion Factor is mandatory,Ligne n ° {0}: le facteur de conversion est obligatoire,
-Sample Quantity cannot be negative or 0,La quantité d&#39;échantillon ne peut pas être négative ou 0,
+Sample Quantity cannot be negative or 0,La quantité d'échantillon ne peut pas être négative ou 0,
 Invalid Quantity,Quantité invalide,
 "Please set defaults for Customer Group, Territory and Selling Price List in Selling Settings","Veuillez définir les valeurs par défaut pour le groupe de clients, le territoire et la liste de prix de vente dans les paramètres de vente",
 {0} on {1},{0} sur {1},
 {0} with {1},{0} avec {1},
 Appointment Confirmation Message Not Sent,Message de confirmation de rendez-vous non envoyé,
 "SMS not sent, please check SMS Settings","SMS non envoyé, veuillez vérifier les paramètres SMS",
-Healthcare Service Unit Type cannot have both {0} and {1},Le type d&#39;unité de service de santé ne peut pas avoir à la fois {0} et {1},
-Healthcare Service Unit Type must allow atleast one among {0} and {1},Le type d&#39;unité de service de santé doit autoriser au moins un entre {0} et {1},
+Healthcare Service Unit Type cannot have both {0} and {1},Le type d'unité de service de santé ne peut pas avoir à la fois {0} et {1},
+Healthcare Service Unit Type must allow atleast one among {0} and {1},Le type d'unité de service de santé doit autoriser au moins un entre {0} et {1},
 Set Response Time and Resolution Time for Priority {0} in row {1}.,Définissez le temps de réponse et le temps de résolution pour la priorité {0} dans la ligne {1}.,
 Response Time for {0} priority in row {1} can't be greater than Resolution Time.,Le temps de réponse pour la {0} priorité dans la ligne {1} ne peut pas être supérieur au temps de résolution.,
-{0} is not enabled in {1},{0} n&#39;est pas activé dans {1},
+{0} is not enabled in {1},{0} n'est pas activé dans {1},
 Group by Material Request,Regrouper par demande de matériel,
 Email Sent to Supplier {0},E-mail envoyé au fournisseur {0},
-"The Access to Request for Quotation From Portal is Disabled. To Allow Access, Enable it in Portal Settings.","L&#39;accès à la demande de devis du portail est désactivé. Pour autoriser l&#39;accès, activez-le dans les paramètres du portail.",
+"The Access to Request for Quotation From Portal is Disabled. To Allow Access, Enable it in Portal Settings.","L'accès à la demande de devis du portail est désactivé. Pour autoriser l'accès, activez-le dans les paramètres du portail.",
 Supplier Quotation {0} Created,Devis fournisseur {0} créé,
 Valid till Date cannot be before Transaction Date,La date de validité ne peut pas être antérieure à la date de transaction,
-Unlink Advance Payment on Cancellation of Order,Dissocier le paiement anticipé lors de l&#39;annulation de la commande,
-"Simple Python Expression, Example: territory != 'All Territories'","Expression Python simple, exemple: territoire! = &#39;Tous les territoires&#39;",
+Unlink Advance Payment on Cancellation of Order,Dissocier le paiement anticipé lors de l'annulation de la commande,
+"Simple Python Expression, Example: territory != 'All Territories'","Expression Python simple, exemple: territoire! = 'Tous les territoires'",
 Sales Contributions and Incentives,Contributions et incitations aux ventes,
 Sourced by Supplier,Fourni par le fournisseur,
-Total weightage assigned should be 100%.<br>It is {0},Le poids total attribué doit être de 100%.<br> C&#39;est {0},
+Total weightage assigned should be 100%.<br>It is {0},Le poids total attribué doit être de 100%.<br> C'est {0},
 Account {0} exists in parent company {1}.,Le compte {0} existe dans la société mère {1}.,
-"To overrule this, enable '{0}' in company {1}","Pour contourner ce problème, activez «{0}» dans l&#39;entreprise {1}",
+"To overrule this, enable '{0}' in company {1}","Pour contourner ce problème, activez «{0}» dans l'entreprise {1}",
 Invalid condition expression,Expression de condition non valide,
-Please Select a Company First,Veuillez d&#39;abord sélectionner une entreprise,
-Please Select Both Company and Party Type First,Veuillez d&#39;abord sélectionner à la fois la société et le type de partie,
+Please Select a Company First,Veuillez d'abord sélectionner une entreprise,
+Please Select Both Company and Party Type First,Veuillez d'abord sélectionner à la fois la société et le type de partie,
 Provide the invoice portion in percent,Fournissez la partie de la facture en pourcentage,
 Give number of days according to prior selection,Donnez le nombre de jours selon la sélection préalable,
-Email Details,Détails de l&#39;e-mail,
-"Select a greeting for the receiver. E.g. Mr., Ms., etc.","Sélectionnez un message d&#39;accueil pour le destinataire. Par exemple, M., Mme, etc.",
-Preview Email,Aperçu de l&#39;e-mail,
+Email Details,Détails de l'e-mail,
+"Select a greeting for the receiver. E.g. Mr., Ms., etc.","Sélectionnez un message d'accueil pour le destinataire. Par exemple, M., Mme, etc.",
+Preview Email,Aperçu de l'e-mail,
 Please select a Supplier,Veuillez sélectionner un fournisseur,
 Supplier Lead Time (days),Délai fournisseur (jours),
 "Home, Work, etc.","Domicile, travail, etc.",
@@ -9538,74 +9538,74 @@
 Sets 'Target Warehouse' in each row of the Items table.,Définit «Entrepôt cible» dans chaque ligne de la table Articles.,
 Sets 'Source Warehouse' in each row of the Items table.,Définit «Entrepôt source» dans chaque ligne de la table Articles.,
 POS Register,Registre POS,
-"Can not filter based on POS Profile, if grouped by POS Profile","Impossible de filtrer en fonction du profil de point de vente, s&#39;il est regroupé par profil de point de vente",
-"Can not filter based on Customer, if grouped by Customer","Impossible de filtrer en fonction du client, s&#39;il est regroupé par client",
-"Can not filter based on Cashier, if grouped by Cashier","Impossible de filtrer en fonction du caissier, s&#39;il est regroupé par caissier",
+"Can not filter based on POS Profile, if grouped by POS Profile","Impossible de filtrer en fonction du profil de point de vente, s'il est regroupé par profil de point de vente",
+"Can not filter based on Customer, if grouped by Customer","Impossible de filtrer en fonction du client, s'il est regroupé par client",
+"Can not filter based on Cashier, if grouped by Cashier","Impossible de filtrer en fonction du caissier, s'il est regroupé par caissier",
 Payment Method,Mode de paiement,
-"Can not filter based on Payment Method, if grouped by Payment Method","Impossible de filtrer en fonction du mode de paiement, s&#39;il est regroupé par mode de paiement",
+"Can not filter based on Payment Method, if grouped by Payment Method","Impossible de filtrer en fonction du mode de paiement, s'il est regroupé par mode de paiement",
 Supplier Quotation Comparison,Comparaison des devis fournisseurs,
 Price per Unit (Stock UOM),Prix unitaire (Stock UdM),
 Group by Supplier,Regrouper par fournisseur,
 Group by Item,Grouper par article,
-Remember to set {field_label}. It is required by {regulation}.,N&#39;oubliez pas de définir {field_label}. Il est requis par {règlement}.,
-Enrollment Date cannot be before the Start Date of the Academic Year {0},La date d&#39;inscription ne peut pas être antérieure à la date de début de l&#39;année universitaire {0},
-Enrollment Date cannot be after the End Date of the Academic Term {0},La date d&#39;inscription ne peut pas être postérieure à la date de fin du trimestre universitaire {0},
-Enrollment Date cannot be before the Start Date of the Academic Term {0},La date d&#39;inscription ne peut pas être antérieure à la date de début de la session universitaire {0},
+Remember to set {field_label}. It is required by {regulation}.,N'oubliez pas de définir {field_label}. Il est requis par {règlement}.,
+Enrollment Date cannot be before the Start Date of the Academic Year {0},La date d'inscription ne peut pas être antérieure à la date de début de l'année universitaire {0},
+Enrollment Date cannot be after the End Date of the Academic Term {0},La date d'inscription ne peut pas être postérieure à la date de fin du trimestre universitaire {0},
+Enrollment Date cannot be before the Start Date of the Academic Term {0},La date d'inscription ne peut pas être antérieure à la date de début de la session universitaire {0},
 Future Posting Not Allowed,Publication future non autorisée,
 "To enable Capital Work in Progress Accounting, ","Pour activer la comptabilité des immobilisations en cours,",
-you must select Capital Work in Progress Account in accounts table,vous devez sélectionner le compte des travaux d&#39;immobilisations en cours dans le tableau des comptes,
+you must select Capital Work in Progress Account in accounts table,vous devez sélectionner le compte des travaux d'immobilisations en cours dans le tableau des comptes,
 You can also set default CWIP account in Company {},Vous pouvez également définir le compte CWIP par défaut dans Entreprise {},
 The Request for Quotation can be accessed by clicking on the following button,La demande de devis est accessible en cliquant sur le bouton suivant,
 Regards,Cordialement,
 Please click on the following button to set your new password,Veuillez cliquer sur le bouton suivant pour définir votre nouveau mot de passe,
 Update Password,Mettre à jour le mot de passe,
-Row #{}: Selling rate for item {} is lower than its {}. Selling {} should be atleast {},Ligne n ° {}: le taux de vente de l&#39;article {} est inférieur à son {}. La vente {} doit être au moins {},
+Row #{}: Selling rate for item {} is lower than its {}. Selling {} should be atleast {},Ligne n ° {}: le taux de vente de l'article {} est inférieur à son {}. La vente {} doit être au moins {},
 You can alternatively disable selling price validation in {} to bypass this validation.,Vous pouvez également désactiver la validation du prix de vente dans {} pour contourner cette validation.,
 Invalid Selling Price,Prix de vente invalide,
-Address needs to be linked to a Company. Please add a row for Company in the Links table.,L&#39;adresse doit être liée à une entreprise. Veuillez ajouter une ligne pour Entreprise dans le tableau Liens.,
+Address needs to be linked to a Company. Please add a row for Company in the Links table.,L'adresse doit être liée à une entreprise. Veuillez ajouter une ligne pour Entreprise dans le tableau Liens.,
 Company Not Linked,Entreprise non liée,
 Import Chart of Accounts from CSV / Excel files,Importer un plan comptable à partir de fichiers CSV / Excel,
-Completed Qty cannot be greater than 'Qty to Manufacture',La quantité terminée ne peut pas être supérieure à la `` quantité à fabriquer &#39;&#39;,
-"Row {0}: For Supplier {1}, Email Address is Required to send an email","Ligne {0}: pour le fournisseur {1}, l&#39;adresse e-mail est obligatoire pour envoyer un e-mail",
-"If enabled, the system will post accounting entries for inventory automatically","Si activé, le système enregistrera automatiquement les écritures comptables pour l&#39;inventaire",
-Accounts Frozen Till Date,Comptes gelés jusqu&#39;à la date,
-Accounting entries are frozen up to this date. Nobody can create or modify entries except users with the role specified below,Les écritures comptables sont gelées jusqu&#39;à cette date. Personne ne peut créer ou modifier des entrées sauf les utilisateurs avec le rôle spécifié ci-dessous,
+Completed Qty cannot be greater than 'Qty to Manufacture',La quantité terminée ne peut pas être supérieure à la `` quantité à fabriquer '',
+"Row {0}: For Supplier {1}, Email Address is Required to send an email","Ligne {0}: pour le fournisseur {1}, l'adresse e-mail est obligatoire pour envoyer un e-mail",
+"If enabled, the system will post accounting entries for inventory automatically","Si activé, le système enregistrera automatiquement les écritures comptables pour l'inventaire",
+Accounts Frozen Till Date,Comptes gelés jusqu'à la date,
+Accounting entries are frozen up to this date. Nobody can create or modify entries except users with the role specified below,Les écritures comptables sont gelées jusqu'à cette date. Personne ne peut créer ou modifier des entrées sauf les utilisateurs avec le rôle spécifié ci-dessous,
 Role Allowed to Set Frozen Accounts and Edit Frozen Entries,Rôle autorisé à définir des comptes gelés et à modifier les entrées gelées,
 Address used to determine Tax Category in transactions,Adresse utilisée pour déterminer la catégorie de taxe dans les transactions,
-"The percentage you are allowed to bill more against the amount ordered. For example, if the order value is $100 for an item and tolerance is set as 10%, then you are allowed to bill up to $110 ","Le pourcentage que vous êtes autorisé à facturer davantage par rapport au montant commandé. Par exemple, si la valeur de la commande est de 100 USD pour un article et que la tolérance est définie sur 10%, vous êtes autorisé à facturer jusqu&#39;à 110 USD.",
+"The percentage you are allowed to bill more against the amount ordered. For example, if the order value is $100 for an item and tolerance is set as 10%, then you are allowed to bill up to $110 ","Le pourcentage que vous êtes autorisé à facturer davantage par rapport au montant commandé. Par exemple, si la valeur de la commande est de 100 USD pour un article et que la tolérance est définie sur 10%, vous êtes autorisé à facturer jusqu'à 110 USD.",
 This role is allowed to submit transactions that exceed credit limits,Ce rôle est autorisé à valider des transactions qui dépassent les limites de crédit,
 "If ""Months"" is selected, a fixed amount will be booked as deferred revenue or expense for each month irrespective of the number of days in a month. It will be prorated if deferred revenue or expense is not booked for an entire month","Si «Mois» est sélectionné, un montant fixe sera comptabilisé en tant que revenus ou dépenses différés pour chaque mois, quel que soit le nombre de jours dans un mois. Il sera calculé au prorata si les revenus ou les dépenses différés ne sont pas comptabilisés pour un mois entier",
-"If this is unchecked, direct GL entries will be created to book deferred revenue or expense","Si cette case n&#39;est pas cochée, des entrées GL directes seront créées pour enregistrer les revenus ou les dépenses différés",
+"If this is unchecked, direct GL entries will be created to book deferred revenue or expense","Si cette case n'est pas cochée, des entrées GL directes seront créées pour enregistrer les revenus ou les dépenses différés",
 Show Inclusive Tax in Print,Afficher la taxe incluse en version imprimée,
 Only select this if you have set up the Cash Flow Mapper documents,Sélectionnez ceci uniquement si vous avez configuré les documents Cash Flow Mapper,
 Payment Channel,Canal de paiement,
-Is Purchase Order Required for Purchase Invoice & Receipt Creation?,Un bon de commande est-il requis pour la création de factures d&#39;achat et de reçus?,
-Is Purchase Receipt Required for Purchase Invoice Creation?,Un reçu d&#39;achat est-il requis pour la création d&#39;une facture d&#39;achat?,
-Maintain Same Rate Throughout the Purchase Cycle,Maintenir le même taux tout au long du cycle d&#39;achat,
-Allow Item To Be Added Multiple Times in a Transaction,Autoriser l&#39;ajout d&#39;un article plusieurs fois dans une transaction,
+Is Purchase Order Required for Purchase Invoice & Receipt Creation?,Une Commande d'Achat est-il requis pour la création de factures d'achat et de reçus?,
+Is Purchase Receipt Required for Purchase Invoice Creation?,Un reçu d'achat est-il requis pour la création d'une facture d'achat?,
+Maintain Same Rate Throughout the Purchase Cycle,Maintenir le même taux tout au long du cycle d'achat,
+Allow Item To Be Added Multiple Times in a Transaction,Autoriser l'ajout d'un article plusieurs fois dans une transaction,
 Suppliers,Fournisseurs,
 Send Emails to Suppliers,Envoyer des e-mails aux fournisseurs,
 Select a Supplier,Sélectionnez un fournisseur,
 Cannot mark attendance for future dates.,Impossible de marquer la participation pour les dates futures.,
 Do you want to update attendance? <br> Present: {0} <br> Absent: {1},Voulez-vous mettre à jour la participation?<br> Présent: {0}<br> Absent: {1},
 Mpesa Settings,Paramètres Mpesa,
-Initiator Name,Nom de l&#39;initiateur,
+Initiator Name,Nom de l'initiateur,
 Till Number,Numéro de caisse,
 Sandbox,bac à sable,
  Online PassKey,PassKey en ligne,
 Security Credential,Identifiant de sécurité,
 Get Account Balance,Obtenir le solde du compte,
-Please set the initiator name and the security credential,Veuillez définir le nom de l&#39;initiateur et les informations d&#39;identification de sécurité,
+Please set the initiator name and the security credential,Veuillez définir le nom de l'initiateur et les informations d'identification de sécurité,
 Inpatient Medication Entry,Entrée de médicaments pour patients hospitalisés,
 HLC-IME-.YYYY.-,HLC-IME-.YYYY.-,
-Item Code (Drug),Code de l&#39;article (médicament),
+Item Code (Drug),Code de l'article (médicament),
 Medication Orders,Ordonnances de médicaments,
 Get Pending Medication Orders,Obtenir des commandes de médicaments en attente,
 Inpatient Medication Orders,Ordonnances de médicaments pour patients hospitalisés,
 Medication Warehouse,Entrepôt de médicaments,
 Warehouse from where medication stock should be consumed,Entrepôt à partir duquel le stock de médicaments doit être consommé,
 Fetching Pending Medication Orders,Récupération des commandes de médicaments en attente,
-Inpatient Medication Entry Detail,Détail de l&#39;entrée des médicaments pour patients hospitalisés,
+Inpatient Medication Entry Detail,Détail de l'entrée des médicaments pour patients hospitalisés,
 Medication Details,Détails du médicament,
 Drug Code,Code de la drogue,
 Drug Name,Nom du médicament,
@@ -9621,56 +9621,56 @@
 {0} medication order completed,{0} commande de médicaments terminée,
 Inpatient Medication Order Entry,Saisie des commandes de médicaments pour patients hospitalisés,
 Is Order Completed,La commande est-elle terminée,
-Employee Records to Be Created By,Dossiers d&#39;employés à créer par,
-Employee records are created using the selected field,Les enregistrements d&#39;employés sont créés à l&#39;aide du champ sélectionné,
-Don't send employee birthday reminders,N&#39;envoyez pas de rappels d&#39;anniversaire aux employés,
+Employee Records to Be Created By,Dossiers d'employés à créer par,
+Employee records are created using the selected field,Les enregistrements d'employés sont créés à l'aide du champ sélectionné,
+Don't send employee birthday reminders,N'envoyez pas de rappels d'anniversaire aux employés,
 Restrict Backdated Leave Applications,Restreindre les demandes de congé antidatées,
 Sequence ID,ID de séquence,
 Sequence Id,Id de séquence,
 Allow multiple material consumptions against a Work Order,Autoriser plusieurs consommations de matériaux par rapport à un ordre de fabrication,
 Plan time logs outside Workstation working hours,Planifier les journaux de temps en dehors des heures de travail du poste de travail,
-Plan operations X days in advance,Planifier les opérations X jours à l&#39;avance,
+Plan operations X days in advance,Planifier les opérations X jours à l'avance,
 Time Between Operations (Mins),Temps entre les opérations (minutes),
 Default: 10 mins,Par défaut: 10 minutes,
 Overproduction for Sales and Work Order,Surproduction pour les ventes et les bons de travail,
-"Update BOM cost automatically via scheduler, based on the latest Valuation Rate/Price List Rate/Last Purchase Rate of raw materials","Mettre à jour automatiquement le coût de la nomenclature via le planificateur, en fonction du dernier taux de valorisation / tarif tarifaire / dernier taux d&#39;achat de matières premières",
-Purchase Order already created for all Sales Order items,Bon de commande déjà créé pour tous les articles de commande client,
+"Update BOM cost automatically via scheduler, based on the latest Valuation Rate/Price List Rate/Last Purchase Rate of raw materials","Mettre à jour automatiquement le coût de la nomenclature via le planificateur, en fonction du dernier taux de valorisation / tarif tarifaire / dernier taux d'achat de matières premières",
+Purchase Order already created for all Sales Order items,Commande d'Achat déjà créé pour tous les articles de commande client,
 Select Items,Sélectionner des éléments,
 Against Default Supplier,Contre le fournisseur par défaut,
 Auto close Opportunity after the no. of days mentioned above,Opportunité de fermeture automatique après le non. de jours mentionnés ci-dessus,
 Is Sales Order Required for Sales Invoice & Delivery Note Creation?,Une commande client est-elle requise pour la création de factures clients et de bons de livraison?,
 Is Delivery Note Required for Sales Invoice Creation?,Un bon de livraison est-il nécessaire pour la création de factures de vente?,
-How often should Project and Company be updated based on Sales Transactions?,À quelle fréquence le projet et l&#39;entreprise doivent-ils être mis à jour en fonction des transactions de vente?,
-Allow User to Edit Price List Rate in Transactions,Autoriser l&#39;utilisateur à modifier le tarif tarifaire dans les transactions,
-Allow Item to Be Added Multiple Times in a Transaction,Autoriser l&#39;ajout d&#39;un article plusieurs fois dans une transaction,
-Allow Multiple Sales Orders Against a Customer's Purchase Order,Autoriser plusieurs commandes client par rapport à la commande d&#39;achat d&#39;un client,
-Validate Selling Price for Item Against Purchase Rate or Valuation Rate,Valider le prix de vente de l&#39;article par rapport au taux d&#39;achat ou au taux de valorisation,
-Hide Customer's Tax ID from Sales Transactions,Masquer le numéro d&#39;identification fiscale du client dans les transactions de vente,
+How often should Project and Company be updated based on Sales Transactions?,À quelle fréquence le projet et l'entreprise doivent-ils être mis à jour en fonction des transactions de vente?,
+Allow User to Edit Price List Rate in Transactions,Autoriser l'utilisateur à modifier le tarif tarifaire dans les transactions,
+Allow Item to Be Added Multiple Times in a Transaction,Autoriser l'ajout d'un article plusieurs fois dans une transaction,
+Allow Multiple Sales Orders Against a Customer's Purchase Order,Autoriser plusieurs commandes client par rapport à la commande d'achat d'un client,
+Validate Selling Price for Item Against Purchase Rate or Valuation Rate,Valider le prix de vente de l'article par rapport au taux d'achat ou au taux de valorisation,
+Hide Customer's Tax ID from Sales Transactions,Masquer le numéro d'identification fiscale du client dans les transactions de vente,
 "The percentage you are allowed to receive or deliver more against the quantity ordered. For example, if you have ordered 100 units, and your Allowance is 10%, then you are allowed to receive 110 units.","Le pourcentage que vous êtes autorisé à recevoir ou à livrer plus par rapport à la quantité commandée. Par exemple, si vous avez commandé 100 unités et que votre allocation est de 10%, vous êtes autorisé à recevoir 110 unités.",
-Action If Quality Inspection Is Not Submitted,Action si l&#39;inspection qualité n&#39;est pas soumise,
-Auto Insert Price List Rate If Missing,Taux de liste de prix d&#39;insertion automatique s&#39;il est manquant,
+Action If Quality Inspection Is Not Submitted,Action si l'inspection qualité n'est pas soumise,
+Auto Insert Price List Rate If Missing,Taux de liste de prix d'insertion automatique s'il est manquant,
 Automatically Set Serial Nos Based on FIFO,Définir automatiquement les numéros de série en fonction de FIFO,
 Set Qty in Transactions Based on Serial No Input,Définir la quantité dans les transactions en fonction du numéro de série,
-Raise Material Request When Stock Reaches Re-order Level,Augmenter la demande d&#39;article lorsque le stock atteint le niveau de commande,
-Notify by Email on Creation of Automatic Material Request,Notifier par e-mail lors de la création d&#39;une demande de matériel automatique,
-Allow Material Transfer from Delivery Note to Sales Invoice,Autoriser le transfert d&#39;articles du bon de livraison à la facture de vente,
-Allow Material Transfer from Purchase Receipt to Purchase Invoice,Autoriser le transfert de matériel du reçu d&#39;achat à la facture d&#39;achat,
+Raise Material Request When Stock Reaches Re-order Level,Augmenter la demande d'article lorsque le stock atteint le niveau de commande,
+Notify by Email on Creation of Automatic Material Request,Notifier par e-mail lors de la création d'une demande de matériel automatique,
+Allow Material Transfer from Delivery Note to Sales Invoice,Autoriser le transfert d'articles du bon de livraison à la facture de vente,
+Allow Material Transfer from Purchase Receipt to Purchase Invoice,Autoriser le transfert de matériel du reçu d'achat à la facture d'achat,
 Freeze Stocks Older Than (Days),Gel des stocks de plus de (jours),
 Role Allowed to Edit Frozen Stock,Rôle autorisé à modifier le stock gelé,
-The unallocated amount of Payment Entry {0} is greater than the Bank Transaction's unallocated amount,Le montant non alloué de l&#39;écriture de paiement {0} est supérieur au montant non alloué de l&#39;opération bancaire,
+The unallocated amount of Payment Entry {0} is greater than the Bank Transaction's unallocated amount,Le montant non alloué de l'écriture de paiement {0} est supérieur au montant non alloué de l'opération bancaire,
 Payment Received,Paiement reçu,
-Attendance cannot be marked outside of Academic Year {0},La participation ne peut pas être marquée en dehors de l&#39;année académique {0},
-Student is already enrolled via Course Enrollment {0},L&#39;élève est déjà inscrit via l&#39;inscription au cours {0},
+Attendance cannot be marked outside of Academic Year {0},La participation ne peut pas être marquée en dehors de l'année académique {0},
+Student is already enrolled via Course Enrollment {0},L'élève est déjà inscrit via l'inscription au cours {0},
 Attendance cannot be marked for future dates.,La participation ne peut pas être marquée pour les dates futures.,
-Please add programs to enable admission application.,Veuillez ajouter des programmes pour permettre la demande d&#39;admission.,
+Please add programs to enable admission application.,Veuillez ajouter des programmes pour permettre la demande d'admission.,
 The following employees are currently still reporting to {0}:,Les employés suivants relèvent toujours de {0}:,
 Please make sure the employees above report to another Active employee.,Veuillez vous assurer que les employés ci-dessus font rapport à un autre employé actif.,
-Cannot Relieve Employee,Ne peut pas soulager l&#39;employé,
+Cannot Relieve Employee,Ne peut pas soulager l'employé,
 Please enter {0},Veuillez saisir {0},
 Please select another payment method. Mpesa does not support transactions in currency '{0}',Veuillez sélectionner un autre mode de paiement. Mpesa ne prend pas en charge les transactions dans la devise &quot;{0}&quot;,
 Transaction Error,Erreur de transaction,
 Mpesa Express Transaction Error,Erreur de transaction Mpesa Express,
-"Issue detected with Mpesa configuration, check the error logs for more details","Problème détecté avec la configuration de Mpesa, consultez les journaux d&#39;erreurs pour plus de détails",
+"Issue detected with Mpesa configuration, check the error logs for more details","Problème détecté avec la configuration de Mpesa, consultez les journaux d'erreurs pour plus de détails",
 Mpesa Express Error,Erreur Mpesa Express,
 Account Balance Processing Error,Erreur de traitement du solde du compte,
 Please check your configuration and try again,Veuillez vérifier votre configuration et réessayer,
@@ -9680,52 +9680,52 @@
 Available Balance,Solde disponible,
 Reserved Balance,Solde réservé,
 Uncleared Balance,Solde non compensé,
-Payment related to {0} is not completed,Le paiement lié à {0} n&#39;est pas terminé,
-Row #{}: Item Code: {} is not available under warehouse {}.,Ligne n ° {}: code article: {} n&#39;est pas disponible dans l&#39;entrepôt {}.,
-Row #{}: Stock quantity not enough for Item Code: {} under warehouse {}. Available quantity {}.,Ligne n ° {}: quantité en stock insuffisante pour le code article: {} sous l&#39;entrepôt {}. Quantité disponible {}.,
-Row #{}: Please select a serial no and batch against item: {} or remove it to complete transaction.,Ligne n ° {}: veuillez sélectionner un numéro de série et un lot pour l&#39;article: {} ou supprimez-le pour terminer la transaction.,
-Row #{}: No serial number selected against item: {}. Please select one or remove it to complete transaction.,Ligne n ° {}: aucun numéro de série sélectionné pour l&#39;article: {}. Veuillez en sélectionner un ou le supprimer pour terminer la transaction.,
-Row #{}: No batch selected against item: {}. Please select a batch or remove it to complete transaction.,Ligne n ° {}: aucun lot sélectionné pour l&#39;élément: {}. Veuillez sélectionner un lot ou le supprimer pour terminer la transaction.,
+Payment related to {0} is not completed,Le paiement lié à {0} n'est pas terminé,
+Row #{}: Item Code: {} is not available under warehouse {}.,Ligne n ° {}: code article: {} n'est pas disponible dans l'entrepôt {}.,
+Row #{}: Stock quantity not enough for Item Code: {} under warehouse {}. Available quantity {}.,Ligne n ° {}: quantité en stock insuffisante pour le code article: {} sous l'entrepôt {}. Quantité disponible {}.,
+Row #{}: Please select a serial no and batch against item: {} or remove it to complete transaction.,Ligne n ° {}: veuillez sélectionner un numéro de série et un lot pour l'article: {} ou supprimez-le pour terminer la transaction.,
+Row #{}: No serial number selected against item: {}. Please select one or remove it to complete transaction.,Ligne n ° {}: aucun numéro de série sélectionné pour l'article: {}. Veuillez en sélectionner un ou le supprimer pour terminer la transaction.,
+Row #{}: No batch selected against item: {}. Please select a batch or remove it to complete transaction.,Ligne n ° {}: aucun lot sélectionné pour l'élément: {}. Veuillez sélectionner un lot ou le supprimer pour terminer la transaction.,
 Payment amount cannot be less than or equal to 0,Le montant du paiement ne peut pas être inférieur ou égal à 0,
-Please enter the phone number first,Veuillez d&#39;abord saisir le numéro de téléphone,
-Row #{}: {} {} does not exist.,Ligne n ° {}: {} {} n&#39;existe pas.,
-Row #{0}: {1} is required to create the Opening {2} Invoices,Ligne n ° {0}: {1} est requise pour créer les {2} factures d&#39;ouverture,
-You had {} errors while creating opening invoices. Check {} for more details,Vous avez rencontré {} erreurs lors de la création des factures d&#39;ouverture. Consultez {} pour plus de détails,
+Please enter the phone number first,Veuillez d'abord saisir le numéro de téléphone,
+Row #{}: {} {} does not exist.,Ligne n ° {}: {} {} n'existe pas.,
+Row #{0}: {1} is required to create the Opening {2} Invoices,Ligne n ° {0}: {1} est requise pour créer les {2} factures d'ouverture,
+You had {} errors while creating opening invoices. Check {} for more details,Vous avez rencontré {} erreurs lors de la création des factures d'ouverture. Consultez {} pour plus de détails,
 Error Occured,Erreur est survenue,
 Opening Invoice Creation In Progress,Ouverture de la création de facture en cours,
 Creating {} out of {} {},Création de {} sur {} {},
 (Serial No: {0}) cannot be consumed as it's reserverd to fullfill Sales Order {1}.,(Numéro de série: {0}) ne peut pas être utilisé car il est réservé pour remplir la commande client {1}.,
 Item {0} {1},Élément {0} {1},
-Last Stock Transaction for item {0} under warehouse {1} was on {2}.,La dernière transaction de stock pour l&#39;article {0} dans l&#39;entrepôt {1} a eu lieu le {2}.,
-Stock Transactions for Item {0} under warehouse {1} cannot be posted before this time.,Les transactions de stock pour l&#39;article {0} dans l&#39;entrepôt {1} ne peuvent pas être validées avant cette heure.,
-Posting future stock transactions are not allowed due to Immutable Ledger,La comptabilisation des futures transactions de stock n&#39;est pas autorisée en raison du grand livre immuable,
-A BOM with name {0} already exists for item {1}.,Une nomenclature portant le nom {0} existe déjà pour l&#39;article {1}.,
-{0}{1} Did you rename the item? Please contact Administrator / Tech support,{0} {1} Avez-vous renommé l&#39;élément? Veuillez contacter l&#39;administrateur / le support technique,
-At row #{0}: the sequence id {1} cannot be less than previous row sequence id {2},À la ligne n ° {0}: l&#39;ID de séquence {1} ne peut pas être inférieur à l&#39;ID de séquence de ligne précédent {2},
+Last Stock Transaction for item {0} under warehouse {1} was on {2}.,La dernière transaction de stock pour l'article {0} dans l'entrepôt {1} a eu lieu le {2}.,
+Stock Transactions for Item {0} under warehouse {1} cannot be posted before this time.,Les transactions de stock pour l'article {0} dans l'entrepôt {1} ne peuvent pas être validées avant cette heure.,
+Posting future stock transactions are not allowed due to Immutable Ledger,La comptabilisation des futures transactions de stock n'est pas autorisée en raison du grand livre immuable,
+A BOM with name {0} already exists for item {1}.,Une nomenclature portant le nom {0} existe déjà pour l'article {1}.,
+{0}{1} Did you rename the item? Please contact Administrator / Tech support,{0} {1} Avez-vous renommé l'élément? Veuillez contacter l'administrateur / le support technique,
+At row #{0}: the sequence id {1} cannot be less than previous row sequence id {2},À la ligne n ° {0}: l'ID de séquence {1} ne peut pas être inférieur à l'ID de séquence de ligne précédent {2},
 The {0} ({1}) must be equal to {2} ({3}),Le {0} ({1}) doit être égal à {2} ({3}),
-"{0}, complete the operation {1} before the operation {2}.","{0}, terminez l&#39;opération {1} avant l&#39;opération {2}.",
-Cannot ensure delivery by Serial No as Item {0} is added with and without Ensure Delivery by Serial No.,Impossible de garantir la livraison par numéro de série car l&#39;article {0} est ajouté avec et sans Assurer la livraison par numéro de série,
-Item {0} has no Serial No. Only serilialized items can have delivery based on Serial No,L&#39;article {0} n&#39;a pas de numéro de série. Seuls les articles sérialisés peuvent être livrés en fonction du numéro de série,
-No active BOM found for item {0}. Delivery by Serial No cannot be ensured,Aucune nomenclature active trouvée pour l&#39;article {0}. La livraison par numéro de série ne peut pas être assurée,
+"{0}, complete the operation {1} before the operation {2}.","{0}, terminez l'opération {1} avant l'opération {2}.",
+Cannot ensure delivery by Serial No as Item {0} is added with and without Ensure Delivery by Serial No.,Impossible de garantir la livraison par numéro de série car l'article {0} est ajouté avec et sans Assurer la livraison par numéro de série,
+Item {0} has no Serial No. Only serilialized items can have delivery based on Serial No,L'article {0} n'a pas de numéro de série. Seuls les articles sérialisés peuvent être livrés en fonction du numéro de série,
+No active BOM found for item {0}. Delivery by Serial No cannot be ensured,Aucune nomenclature active trouvée pour l'article {0}. La livraison par numéro de série ne peut pas être assurée,
 No pending medication orders found for selected criteria,Aucune commande de médicaments en attente trouvée pour les critères sélectionnés,
 From Date cannot be after the current date.,La date de début ne peut pas être postérieure à la date actuelle.,
 To Date cannot be after the current date.,La date ne peut pas être postérieure à la date actuelle.,
-From Time cannot be after the current time.,L&#39;heure de départ ne peut pas être postérieure à l&#39;heure actuelle.,
-To Time cannot be after the current time.,L&#39;heure ne peut pas être postérieure à l&#39;heure actuelle.,
+From Time cannot be after the current time.,L'heure de départ ne peut pas être postérieure à l'heure actuelle.,
+To Time cannot be after the current time.,L'heure ne peut pas être postérieure à l'heure actuelle.,
 Stock Entry {0} created and ,Entrée de stock {0} créée et,
 Inpatient Medication Orders updated successfully,Les commandes de médicaments pour patients hospitalisés ont été mises à jour avec succès,
 Row {0}: Cannot create Inpatient Medication Entry against cancelled Inpatient Medication Order {1},Ligne {0}: Impossible de créer une entrée de médicaments pour patients hospitalisés contre une commande de médicaments pour patients hospitalisés annulée {1},
 Row {0}: This Medication Order is already marked as completed,Ligne {0}: cette ordonnance de médicaments est déjà marquée comme terminée,
-Quantity not available for {0} in warehouse {1},Quantité non disponible pour {0} dans l&#39;entrepôt {1},
+Quantity not available for {0} in warehouse {1},Quantité non disponible pour {0} dans l'entrepôt {1},
 Please enable Allow Negative Stock in Stock Settings or create Stock Entry to proceed.,Veuillez activer Autoriser le stock négatif dans les paramètres de stock ou créer une entrée de stock pour continuer.,
-No Inpatient Record found against patient {0},Aucun dossier d&#39;hospitalisation trouvé pour le patient {0},
+No Inpatient Record found against patient {0},Aucun dossier d'hospitalisation trouvé pour le patient {0},
 An Inpatient Medication Order {0} against Patient Encounter {1} already exists.,Une ordonnance de médicament pour patients hospitalisés {0} contre rencontre avec un patient {1} existe déjà.,
 Allow In Returns,Autoriser les retours,
 Hide Unavailable Items,Masquer les éléments non disponibles,
 Apply Discount on Discounted Rate,Appliquer une remise sur un tarif réduit,
 Therapy Plan Template,Modèle de plan de thérapie,
 Fetching Template Details,Récupération des détails du modèle,
-Linked Item Details,Détails de l&#39;élément lié,
+Linked Item Details,Détails de l'élément lié,
 Therapy Types,Types de thérapie,
 Therapy Plan Template Detail,Détail du modèle de plan de thérapie,
 Non Conformance,Non-conformité,
@@ -9742,59 +9742,59 @@
 Passed,Passé,
 Print Receipt,Imprimer le reçu,
 Edit Receipt,Modifier le reçu,
-Focus on search input,Focus sur l&#39;entrée de recherche,
-Focus on Item Group filter,Focus sur le filtre de groupe d&#39;articles,
+Focus on search input,Focus sur l'entrée de recherche,
+Focus on Item Group filter,Focus sur le filtre de groupe d'articles,
 Checkout Order / Submit Order / New Order,Commander la commande / Valider la commande / Nouvelle commande,
 Add Order Discount,Ajouter une remise de commande,
-Item Code: {0} is not available under warehouse {1}.,Code d&#39;article: {0} n&#39;est pas disponible dans l&#39;entrepôt {1}.,
-Serial numbers unavailable for Item {0} under warehouse {1}. Please try changing warehouse.,Numéros de série non disponibles pour l&#39;article {0} sous l&#39;entrepôt {1}. Veuillez essayer de changer d’entrepôt.,
+Item Code: {0} is not available under warehouse {1}.,Code d'article: {0} n'est pas disponible dans l'entrepôt {1}.,
+Serial numbers unavailable for Item {0} under warehouse {1}. Please try changing warehouse.,Numéros de série non disponibles pour l'article {0} sous l'entrepôt {1}. Veuillez essayer de changer d’entrepôt.,
 Fetched only {0} available serial numbers.,Récupéré uniquement {0} numéros de série disponibles.,
 Switch Between Payment Modes,Basculer entre les modes de paiement,
 Enter {0} amount.,Saisissez le montant de {0}.,
-You don't have enough points to redeem.,Vous n&#39;avez pas assez de points à échanger.,
-You can redeem upto {0}.,Vous pouvez utiliser jusqu&#39;à {0}.,
+You don't have enough points to redeem.,Vous n'avez pas assez de points à échanger.,
+You can redeem upto {0}.,Vous pouvez utiliser jusqu'à {0}.,
 Enter amount to be redeemed.,Entrez le montant à utiliser.,
 You cannot redeem more than {0}.,Vous ne pouvez pas utiliser plus de {0}.,
 Open Form View,Ouvrir la vue formulaire,
 POS invoice {0} created succesfully,Facture PDV {0} créée avec succès,
-Stock quantity not enough for Item Code: {0} under warehouse {1}. Available quantity {2}.,Quantité en stock insuffisante pour le code article: {0} sous l&#39;entrepôt {1}. Quantité disponible {2}.,
+Stock quantity not enough for Item Code: {0} under warehouse {1}. Available quantity {2}.,Quantité en stock insuffisante pour le code article: {0} sous l'entrepôt {1}. Quantité disponible {2}.,
 Serial No: {0} has already been transacted into another POS Invoice.,Numéro de série: {0} a déjà été traité sur une autre facture PDV.,
 Balance Serial No,Numéro de série de la balance,
-Warehouse: {0} does not belong to {1},Entrepôt: {0} n&#39;appartient pas à {1},
-Please select batches for batched item {0},Veuillez sélectionner des lots pour l&#39;article en lots {0},
+Warehouse: {0} does not belong to {1},Entrepôt: {0} n'appartient pas à {1},
+Please select batches for batched item {0},Veuillez sélectionner des lots pour l'article en lots {0},
 Please select quantity on row {0},Veuillez sélectionner la quantité sur la ligne {0},
-Please enter serial numbers for serialized item {0},Veuillez saisir les numéros de série de l&#39;article sérialisé {0},
+Please enter serial numbers for serialized item {0},Veuillez saisir les numéros de série de l'article sérialisé {0},
 Batch {0} already selected.,Lot {0} déjà sélectionné.,
 Please select a warehouse to get available quantities,Veuillez sélectionner un entrepôt pour obtenir les quantités disponibles,
 "For transfer from source, selected quantity cannot be greater than available quantity","Pour le transfert depuis la source, la quantité sélectionnée ne peut pas être supérieure à la quantité disponible",
-Cannot find Item with this Barcode,Impossible de trouver l&#39;article avec ce code-barres,
-{0} is mandatory. Maybe Currency Exchange record is not created for {1} to {2},{0} est obligatoire. L&#39;enregistrement de change de devises n&#39;est peut-être pas créé pour le {1} au {2},
-{} has submitted assets linked to it. You need to cancel the assets to create purchase return.,{} a soumis des éléments qui lui sont associés. Vous devez annuler les actifs pour créer un retour d&#39;achat.,
-Cannot cancel this document as it is linked with submitted asset {0}. Please cancel it to continue.,Impossible d&#39;annuler ce document car il est associé à l&#39;élément soumis {0}. Veuillez l&#39;annuler pour continuer.,
+Cannot find Item with this Barcode,Impossible de trouver l'article avec ce code-barres,
+{0} is mandatory. Maybe Currency Exchange record is not created for {1} to {2},{0} est obligatoire. L'enregistrement de change de devises n'est peut-être pas créé pour le {1} au {2},
+{} has submitted assets linked to it. You need to cancel the assets to create purchase return.,{} a soumis des éléments qui lui sont associés. Vous devez annuler les actifs pour créer un retour d'achat.,
+Cannot cancel this document as it is linked with submitted asset {0}. Please cancel it to continue.,Impossible d'annuler ce document car il est associé à l'élément soumis {0}. Veuillez l'annuler pour continuer.,
 Row #{}: Serial No. {} has already been transacted into another POS Invoice. Please select valid serial no.,Ligne n ° {}: le numéro de série {} a déjà été transposé sur une autre facture PDV. Veuillez sélectionner un numéro de série valide.,
 Row #{}: Serial Nos. {} has already been transacted into another POS Invoice. Please select valid serial no.,Ligne n ° {}: les numéros de série {} ont déjà été traités sur une autre facture PDV. Veuillez sélectionner un numéro de série valide.,
 Item Unavailable,Article non disponible,
-Row #{}: Serial No {} cannot be returned since it was not transacted in original invoice {},Ligne n ° {}: le numéro de série {} ne peut pas être renvoyé car il n&#39;a pas été traité dans la facture d&#39;origine {},
+Row #{}: Serial No {} cannot be returned since it was not transacted in original invoice {},Ligne n ° {}: le numéro de série {} ne peut pas être renvoyé car il n'a pas été traité dans la facture d'origine {},
 Please set default Cash or Bank account in Mode of Payment {},Veuillez définir le compte de trésorerie ou bancaire par défaut dans le mode de paiement {},
 Please set default Cash or Bank account in Mode of Payments {},Veuillez définir le compte par défaut en espèces ou en banque dans Mode de paiement {},
 Please ensure {} account is a Balance Sheet account. You can change the parent account to a Balance Sheet account or select a different account.,Veuillez vous assurer que {} compte est un compte de bilan. Vous pouvez changer le compte parent en compte de bilan ou sélectionner un autre compte.,
 Please ensure {} account is a Payable account. Change the account type to Payable or select a different account.,Veuillez vous assurer que {} compte est un compte Payable. Modifiez le type de compte sur Payable ou sélectionnez un autre compte.,
 Row {}: Expense Head changed to {} ,Ligne {}: le paramètre Expense Head a été remplacé par {},
-because account {} is not linked to warehouse {} ,car le compte {} n&#39;est pas associé à l&#39;entrepôt {},
-or it is not the default inventory account,ou ce n&#39;est pas le compte d&#39;inventaire par défaut,
+because account {} is not linked to warehouse {} ,car le compte {} n'est pas associé à l'entrepôt {},
+or it is not the default inventory account,ou ce n'est pas le compte d'inventaire par défaut,
 Expense Head Changed,Tête de dépense modifiée,
-because expense is booked against this account in Purchase Receipt {},car les dépenses sont imputées à ce compte dans le reçu d&#39;achat {},
-as no Purchase Receipt is created against Item {}. ,car aucun reçu d&#39;achat n&#39;est créé pour l&#39;article {}.,
-This is done to handle accounting for cases when Purchase Receipt is created after Purchase Invoice,Ceci est fait pour gérer la comptabilité des cas où le reçu d&#39;achat est créé après la facture d&#39;achat,
-Purchase Order Required for item {},Bon de commande requis pour l&#39;article {},
-To submit the invoice without purchase order please set {} ,"Pour valider la facture sans bon de commande, veuillez définir {}",
+because expense is booked against this account in Purchase Receipt {},car les dépenses sont imputées à ce compte dans le reçu d'achat {},
+as no Purchase Receipt is created against Item {}. ,car aucun reçu d'achat n'est créé pour l'article {}.,
+This is done to handle accounting for cases when Purchase Receipt is created after Purchase Invoice,Ceci est fait pour gérer la comptabilité des cas où le reçu d'achat est créé après la facture d'achat,
+Purchase Order Required for item {},Commande d'Achat requise pour l'article {},
+To submit the invoice without purchase order please set {} ,"Pour valider la facture sans Commande d'Achat, veuillez définir {}",
 as {} in {},un péché {},
-Mandatory Purchase Order,Bon de commande obligatoire,
-Purchase Receipt Required for item {},Reçu d&#39;achat requis pour l&#39;article {},
-To submit the invoice without purchase receipt please set {} ,"Pour valider la facture sans reçu d&#39;achat, veuillez définir {}",
-Mandatory Purchase Receipt,Reçu d&#39;achat obligatoire,
-POS Profile {} does not belongs to company {},Le profil PDV {} n&#39;appartient pas à l&#39;entreprise {},
-User {} is disabled. Please select valid user/cashier,L&#39;utilisateur {} est désactivé. Veuillez sélectionner un utilisateur / caissier valide,
+Mandatory Purchase Order,Commande d'achat obligatoire,
+Purchase Receipt Required for item {},Reçu d'achat requis pour l'article {},
+To submit the invoice without purchase receipt please set {} ,"Pour valider la facture sans reçu d'achat, veuillez définir {}",
+Mandatory Purchase Receipt,Reçu d'achat obligatoire,
+POS Profile {} does not belongs to company {},Le profil PDV {} n'appartient pas à l'entreprise {},
+User {} is disabled. Please select valid user/cashier,L'utilisateur {} est désactivé. Veuillez sélectionner un utilisateur / caissier valide,
 Row #{}: Original Invoice {} of return invoice {} is {}. ,Ligne n ° {}: la facture originale {} de la facture de retour {} est {}.,
 Original invoice should be consolidated before or along with the return invoice.,La facture originale doit être consolidée avant ou avec la facture de retour.,
 You can add original invoice {} manually to proceed.,Vous pouvez ajouter la facture originale {} manuellement pour continuer.,
@@ -9802,48 +9802,48 @@
 You can change the parent account to a Balance Sheet account or select a different account.,Vous pouvez changer le compte parent en compte de bilan ou sélectionner un autre compte.,
 Please ensure {} account is a Receivable account. ,Veuillez vous assurer que {} compte est un compte recevable.,
 Change the account type to Receivable or select a different account.,Changez le type de compte en recevable ou sélectionnez un autre compte.,
-{} can't be cancelled since the Loyalty Points earned has been redeemed. First cancel the {} No {},{} ne peut pas être annulé car les points de fidélité gagnés ont été utilisés. Annulez d&#39;abord le {} Non {},
+{} can't be cancelled since the Loyalty Points earned has been redeemed. First cancel the {} No {},{} ne peut pas être annulé car les points de fidélité gagnés ont été utilisés. Annulez d'abord le {} Non {},
 already exists,existe déjà,
 POS Closing Entry {} against {} between selected period,Entrée de clôture du PDV {} contre {} entre la période sélectionnée,
 POS Invoice is {},La facture PDV est {},
 POS Profile doesn't matches {},Le profil de point de vente ne correspond pas à {},
-POS Invoice is not {},La facture PDV n&#39;est pas {},
-POS Invoice isn't created by user {},La facture PDV n&#39;est pas créée par l&#39;utilisateur {},
+POS Invoice is not {},La facture PDV n'est pas {},
+POS Invoice isn't created by user {},La facture PDV n'est pas créée par l'utilisateur {},
 Row #{}: {},Rangée #{}: {},
 Invalid POS Invoices,Factures PDV non valides,
 Please add the account to root level Company - {},Veuillez ajouter le compte à la société au niveau racine - {},
-"While creating account for Child Company {0}, parent account {1} not found. Please create the parent account in corresponding COA","Lors de la création du compte pour l&#39;entreprise enfant {0}, le compte parent {1} est introuvable. Veuillez créer le compte parent dans le COA correspondant",
+"While creating account for Child Company {0}, parent account {1} not found. Please create the parent account in corresponding COA","Lors de la création du compte pour l'entreprise enfant {0}, le compte parent {1} est introuvable. Veuillez créer le compte parent dans le COA correspondant",
 Account Not Found,Compte non trouvé,
-"While creating account for Child Company {0}, parent account {1} found as a ledger account.","Lors de la création du compte pour l&#39;entreprise enfant {0}, le compte parent {1} a été trouvé en tant que compte du grand livre.",
-Please convert the parent account in corresponding child company to a group account.,Veuillez convertir le compte parent de l&#39;entreprise enfant correspondante en compte de groupe.,
+"While creating account for Child Company {0}, parent account {1} found as a ledger account.","Lors de la création du compte pour l'entreprise enfant {0}, le compte parent {1} a été trouvé en tant que compte du grand livre.",
+Please convert the parent account in corresponding child company to a group account.,Veuillez convertir le compte parent de l'entreprise enfant correspondante en compte de groupe.,
 Invalid Parent Account,Compte parent non valide,
-"Renaming it is only allowed via parent company {0}, to avoid mismatch.","Le renommer n&#39;est autorisé que via la société mère {0}, pour éviter les incompatibilités.",
-"If you {0} {1} quantities of the item {2}, the scheme {3} will be applied on the item.","Si vous {0} {1} quantités de l&#39;article {2}, le schéma {3} sera appliqué à l&#39;article.",
-"If you {0} {1} worth item {2}, the scheme {3} will be applied on the item.","Si vous {0} {1} valez un article {2}, le schéma {3} sera appliqué à l&#39;article.",
+"Renaming it is only allowed via parent company {0}, to avoid mismatch.","Le renommer n'est autorisé que via la société mère {0}, pour éviter les incompatibilités.",
+"If you {0} {1} quantities of the item {2}, the scheme {3} will be applied on the item.","Si vous {0} {1} quantités de l'article {2}, le schéma {3} sera appliqué à l'article.",
+"If you {0} {1} worth item {2}, the scheme {3} will be applied on the item.","Si vous {0} {1} valez un article {2}, le schéma {3} sera appliqué à l'article.",
 "As the field {0} is enabled, the field {1} is mandatory.","Comme le champ {0} est activé, le champ {1} est obligatoire.",
 "As the field {0} is enabled, the value of the field {1} should be more than 1.","Lorsque le champ {0} est activé, la valeur du champ {1} doit être supérieure à 1.",
-Cannot deliver Serial No {0} of item {1} as it is reserved to fullfill Sales Order {2},Impossible de livrer le numéro de série {0} de l&#39;article {1} car il est réservé pour remplir la commande client {2},
-"Sales Order {0} has reservation for the item {1}, you can only deliver reserved {1} against {0}.","La commande client {0} a une réservation pour l&#39;article {1}, vous ne pouvez livrer que réservée {1} contre {0}.",
+Cannot deliver Serial No {0} of item {1} as it is reserved to fullfill Sales Order {2},Impossible de livrer le numéro de série {0} de l'article {1} car il est réservé pour remplir la commande client {2},
+"Sales Order {0} has reservation for the item {1}, you can only deliver reserved {1} against {0}.","La commande client {0} a une réservation pour l'article {1}, vous ne pouvez livrer que réservée {1} contre {0}.",
 {0} Serial No {1} cannot be delivered,Le {0} numéro de série {1} ne peut pas être livré,
-Row {0}: Subcontracted Item is mandatory for the raw material {1},Ligne {0}: l&#39;article sous-traité est obligatoire pour la matière première {1},
-"As there are sufficient raw materials, Material Request is not required for Warehouse {0}.","Comme il y a suffisamment de matières premières, la demande de matériel n&#39;est pas requise pour l&#39;entrepôt {0}.",
+Row {0}: Subcontracted Item is mandatory for the raw material {1},Ligne {0}: l'article sous-traité est obligatoire pour la matière première {1},
+"As there are sufficient raw materials, Material Request is not required for Warehouse {0}.","Comme il y a suffisamment de matières premières, la demande de matériel n'est pas requise pour l'entrepôt {0}.",
 " If you still want to proceed, please enable {0}.","Si vous souhaitez continuer, veuillez activer {0}.",
-The item referenced by {0} - {1} is already invoiced,L&#39;article référencé par {0} - {1} est déjà facturé,
+The item referenced by {0} - {1} is already invoiced,L'article référencé par {0} - {1} est déjà facturé,
 Therapy Session overlaps with {0},La session de thérapie chevauche {0},
 Therapy Sessions Overlapping,Chevauchement des séances de thérapie,
 Therapy Plans,Plans de thérapie,
-"Item Code, warehouse, quantity are required on row {0}","Le code article, l&#39;entrepôt et la quantité sont obligatoires sur la ligne {0}",
-Get Items from Material Requests against this Supplier,Obtenir des articles à partir de demandes d&#39;articles auprès de ce fournisseur,
-Enable European Access,Activer l&#39;accès européen,
-Creating Purchase Order ...,Création d&#39;une commande d&#39;achat ...,
-"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.","Sélectionnez un fournisseur parmi les fournisseurs par défaut des articles ci-dessous. Lors de la sélection, un bon de commande sera effectué contre des articles appartenant uniquement au fournisseur sélectionné.",
-Row #{}: You must select {} serial numbers for item {}.,Ligne n ° {}: vous devez sélectionner {} numéros de série pour l&#39;article {}.,
+"Item Code, warehouse, quantity are required on row {0}","Le code article, l'entrepôt et la quantité sont obligatoires sur la ligne {0}",
+Get Items from Material Requests against this Supplier,Obtenir des articles à partir de demandes d'articles auprès de ce fournisseur,
+Enable European Access,Activer l'accès européen,
+Creating Purchase Order ...,Création d'une commande d'achat ...,
+"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.","Sélectionnez un fournisseur parmi les fournisseurs par défaut des articles ci-dessous. Lors de la sélection, une commande d'achat sera effectué contre des articles appartenant uniquement au fournisseur sélectionné.",
+Row #{}: You must select {} serial numbers for item {}.,Ligne n ° {}: vous devez sélectionner {} numéros de série pour l'article {}.,
 Update Rate as per Last Purchase,Mettre à jour avec les derniers prix d'achats
-Company Shipping Address,Adresse d&#39;expédition
-Shipping Address Details,Détail d&#39;adresse d&#39;expédition
+Company Shipping Address,Adresse d'expédition
+Shipping Address Details,Détail d'adresse d'expédition
 Company Billing Address,Adresse de la société de facturation
 Supplier Address Details,
-Bank Reconciliation Tool,Outil de réconcialiation d&#39;écritures bancaires
+Bank Reconciliation Tool,Outil de réconcialiation d'écritures bancaires
 Supplier Contact,Contact fournisseur
 Subcontracting,Sous traitance
 Order Status,Statut de la commande
@@ -9855,12 +9855,12 @@
 Role Allowed to Over Deliver/Receive, Rôle autorisé à dépasser cette limite
 Users with this role are allowed to over deliver/receive against orders above the allowance percentage,Rôle Utilisateur qui sont autorisé à livrée/commandé au-delà de la limite
 Over Transfer Allowance,Autorisation de limite de transfert
-Quality Inspection Settings,Paramétre de l&#39;inspection qualité
+Quality Inspection Settings,Paramétre de l'inspection qualité
 Action If Quality Inspection Is Rejected,Action si l'inspection qualité est rejetée
 Disable Serial No And Batch Selector,Désactiver le sélecteur de numéro de lot/série
 Is Rate Adjustment Entry (Debit Note),Est un justement du prix de la note de débit
 Issue a debit note with 0 qty against an existing Sales Invoice,Creer une note de débit avec une quatité à O pour la facture
-Control Historical Stock Transactions,Controle de l&#39;historique des stransaction de stock
+Control Historical Stock Transactions,Controle de l'historique des stransaction de stock
 No stock transactions can be created or modified before this date.,Aucune transaction ne peux être créée ou modifié avant cette date.
 Stock transactions that are older than the mentioned days cannot be modified.,Les transactions de stock plus ancienne que le nombre de jours ci-dessus ne peuvent être modifiées
 Role Allowed to Create/Edit Back-dated Transactions,Rôle autorisé à créer et modifier des transactions anti-datée
@@ -9926,4 +9926,5 @@
 Enable Reviews and Ratings,Activer les avis et notes
 Enable Recommendations,Activer les recommendations
 Item Search Settings,Paramétrage de la recherche d'article
-
+Purchase demande,Demande de materiel
+Calendar,Calendier
