From 5e8bb2b3db6c0b6b0d4080801de36026154a531b Mon Sep 17 00:00:00 2001 From: Deepesh Garg Date: Sun, 17 Dec 2023 13:36:58 +0530 Subject: [PATCH 1/4] fix(demo): Demo setup for canadian COA --- ...table_pour_les_provinces_francophones.json | 824 +++++++++--------- erpnext/setup/demo.py | 210 +++++ 2 files changed, 624 insertions(+), 410 deletions(-) create mode 100644 erpnext/setup/demo.py diff --git a/erpnext/accounts/doctype/account/chart_of_accounts/verified/ca_plan_comptable_pour_les_provinces_francophones.json b/erpnext/accounts/doctype/account/chart_of_accounts/verified/ca_plan_comptable_pour_les_provinces_francophones.json index 2811fc5fb6c..d6398ff54d8 100644 --- a/erpnext/accounts/doctype/account/chart_of_accounts/verified/ca_plan_comptable_pour_les_provinces_francophones.json +++ b/erpnext/accounts/doctype/account/chart_of_accounts/verified/ca_plan_comptable_pour_les_provinces_francophones.json @@ -1,412 +1,416 @@ { - "country_code": "ca", - "name": "Canada - Plan comptable pour les provinces francophones", - "tree": { - "Actif": { - "Actif \u00e0 court terme": { - "Avances": { - "Avances aux actionnaires": {}, - "Avances aux employ\u00e9s": {}, - "Avances sur commissions": {} - }, - "Banque": { - "account_type": "Bank", - "is_group": 1 - }, - "Comptes \u00e0 recevoir": { - "Comptes clients": { - "account_type": "Receivable" - }, - "Provision pour cr\u00e9ances douteuses": {} - }, - "Encaisse": { - "is_group": 1 - }, - "Frais pay\u00e9s d\u2019avance": { - "Assurances pay\u00e9s d'avance": {}, - "Publicit\u00e9 pay\u00e9 d'avance": {}, - "Taxes pay\u00e9s d'avance": {} - }, - "Petite caisse": { - "account_type": "Cash", - "is_group": 1 - }, - "Stocks": { - "Mati\u00e8res premi\u00e8res": {}, - "Stock de produits fini": {}, - "Stock exp\u00e9di\u00e9 non-factur\u00e9": {}, - "Travaux en cours": {}, - "account_type": "Stock" - }, - "Subventions \u00e0 recevoir": {}, - "TR\u00c9SORERIE OU \u00c9QUIVALENTS DE TR\u00c9SORERIE": {}, - "Taxes \u00e0 recevoir": { - "TPS \u00e0 recevoir": {}, - "TVH \u00e0 recevoir": { - "TVH \u00e0 recevoir - 13%": {}, - "TVH \u00e0 recevoir - 14%": {}, - "TVH \u00e0 recevoir - 15%": {} - }, - "TVP/TVQ \u00e0 recevoir": {} - } - }, - "Autres actifs": { - " Frais de premier \u00e9tablissement": {}, - "Achalandage": {}, - "Brevets, droits": {}, - "Frais de recherche et de d\u00e9veloppement - actif": {} - }, - "Immobilisations": { - " Amortissement accumul\u00e9 - b\u00e2timent": {}, - " Amortissement accumul\u00e9 - entrep\u00f4t": {}, - " Amortissement accumul\u00e9 - logiciels": {}, - " Amortissement accumul\u00e9 - machinerie et \u00e9quipement": {}, - " Amortissement accumul\u00e9 - \u00e9quipement informatique": {}, - "Amortissement accumul\u00e9 - am\u00e9liorations locatives": {}, - "Amortissement accumul\u00e9 - biens lou\u00e9s en vertu d\u2019un contrat de location - acquisition": {}, - "Amortissement accumul\u00e9 - mat\u00e9riel roulant": {}, - "Amortissement accumul\u00e9 - mobilier et \u00e9quipement de bureau": {}, - "Am\u00e9liorations locatives": { - "account_type": "Fixed Asset" - }, - "Biens lou\u00e9s en vertu d\u2019un contrat de location - acquisition": { - "account_type": "Fixed Asset" - }, - "B\u00e2timent": { - "account_type": "Fixed Asset" - }, - "Entrep\u00f4t": { - "account_type": "Fixed Asset" - }, - "Logiciels": { - "account_type": "Fixed Asset" - }, - "Machinerie et \u00e9quipement": { - "account_type": "Fixed Asset" - }, - "Mat\u00e9riel roulant": { - "account_type": "Fixed Asset" - }, - "Mobilier et \u00e9quipement de bureau": { - "account_type": "Fixed Asset" - }, - "Terrain": { - "account_type": "Fixed Asset" - }, - "account_type": "Fixed Asset", - "\u00c9quipement informatique": { - "account_type": "Fixed Asset" - } - }, - "Placements": { - "D\u00e9p\u00f4ts": {}, - "Placement": {} - }, - "root_type": "Asset" - }, - "Avoir des actionnaires": { - " B\u00e9n\u00e9fice de la p\u00e9riode": {}, - "Bonis": {}, - "B\u00e9n\u00e9fices non r\u00e9partis": {}, - "Capital - actions ordinaire": {}, - "Capital - actions privil\u00e9gi\u00e9": {}, - "Dividendes": {}, - "Surplus d\u2019apport": {}, - "root_type": "Equity" - }, - "Charges": { - "Charges d'exploitation": { - "Salaires et charges sociales": { - "Assurance - emploi": { - "account_type": "Chargeable" - }, - "Assurance parentale": {}, - "Fonds des services de sant\u00e9": {}, - "Imp\u00f4t f\u00e9d\u00e9ral": {}, - "Imp\u00f4t provincial": {}, - "Normes du travail": {}, - "Rentes": {}, - "Salaires": { - "account_type": "Chargeable" - }, - "sant\u00e9 et s\u00e9curit\u00e9 du travail CSST": { - "account_type": "Chargeable" - } - } - }, - "Frais fixes": { - "Frais de fabrication": { - " R\u00e9parations et entretien - moules et matrices": {}, - "Ammortissements": { - "Amortissements - am\u00e9liorations locatives": { - "account_type": "Depreciation" - }, - "Amortissements - biens lou\u00e9s contrat de location - acquisition": { - "account_type": "Depreciation" - }, - "Amortissements - b\u00e2timent": { - "account_type": "Depreciation" - }, - "Amortissements - entrep\u00f4t": { - "account_type": "Depreciation" - }, - "Amortissements - machinerie et \u00e9quipement": { - "account_type": "Depreciation" - }, - "Amortissements - mat\u00e9riel roulant": { - "account_type": "Depreciation" - }, - "Amortissements - moules et matrices": { - "account_type": "Depreciation" - }, - "account_type": "Depreciation" - }, - "Assurances": { - " Assurances - feu": {}, - " Assurances - responsabilit\u00e9": {}, - " Assurances - vol": {} - }, - "Avantages sociaux - frais de fabrication": {}, - "D\u00e9penses - mat\u00e9riel roulant": {}, - "Entretien du terrain \u00e0 contrat": {}, - "Fournitures d\u2019emballage": {}, - "Fournitures d\u2019usine": {}, - "Location de machinerie": {}, - "Loyer - b\u00e2timent": {}, - "Loyer - entrep\u00f4t": {}, - "Op\u00e9rations indirectes de la main-d\u2019\u0153uvre directe": { - "is_group": 1 - }, - "R\u00e9parations et entretien - b\u00e2timent": {}, - "R\u00e9parations et entretien - machinerie et \u00e9quipement": {}, - "Salaires de soutien": {}, - "Salaires de supervision": {}, - "Taxes fonci\u00e8res": {}, - "\u00c9nergie": {} - }, - "Frais de formation": { - " Salaires - administration - frais fixe formation": {}, - "Avantages sociaux - frais fixe formation": {}, - "Cr\u00e9dits d\u2019imp\u00f4ts \u00e0 la formation": {}, - "Honoraires": {}, - "Main-d\u2019\u0153uvre directe - frais fixe formation": {}, - "Main-d\u2019\u0153uvre indirecte - frais fixe formation": {}, - "Salaires - bureau - frais fixe formation": {}, - "Salaires - vente": {} - }, - "Frais de non-qualit\u00e9": { - " Avantages sociaux - non-qualit\u00e9": {}, - " Main-d\u2019\u0153uvre directe - non-qualit\u00e9": { - "Main-d\u2019\u0153uvre directe - gaspillage": {}, - "Main-d\u2019\u0153uvre directe - r\u00e9parations de garantie": {}, - "Main-d\u2019\u0153uvre directe - travail a reprendre": {} - }, - "Mat\u00e9riel - non-qualit\u00e9": { - "Mat\u00e9riel - gaspillage": {}, - "Mat\u00e9riel - r\u00e9parations de garantie": {}, - "Mat\u00e9riel - travail a reprendre": {} - }, - "Salaire - inspecteur (contr\u00f4le de la qualit\u00e9)": {} - }, - "Frais de recherche et de d\u00e9veloppement - charge": { - " Mati\u00e8res premi\u00e8res - R&D": {}, - "Avantages sociaux - R&D": {}, - "Cr\u00e9dits d\u2019imp\u00f4ts - R&D": {}, - "Honoraires professionnels - R&D": {}, - "Main-d\u2019\u0153uvre directe - R&D": {}, - "Sous-traitance - R&D": {} - }, - "Frais financiers": { - " Escomptes de caisse sur achats": {}, - " Int\u00e9r\u00eats et frais de banque": {}, - " Int\u00e9r\u00eats sur emprunts - actionnaires": {}, - " Int\u00e9r\u00eats sur emprunts - machinerie": {}, - " Int\u00e9r\u00eats sur emprunts - mat\u00e9riel roulant": {}, - "Escomptes de caisse sur ventes": {}, - "Int\u00e9r\u00eats sur hypoth\u00e8que": {} - }, - "Frais fixe de vente": { - " Frais de voyages - camionneurs": {}, - " Frais de voyages - service apr\u00e8s-vente": {}, - "Amortissement - camions": {}, - "Amortissements - frais fixe de vente": { - " Amortissements - autos": {}, - " Amortissements - bureau de vente": {} - }, - "Assurances - camions": {}, - "Assurances d\u2019autos - vendeurs": {}, - "Avantages sociaux - frais fixe de vente": {}, - "Catalogues": {}, - "D\u00e9penses - bureau de vente": {}, - "Emballage \u00e0 la livraison": {}, - "Entretien et r\u00e9parations - camions": {}, - "Frais de repr\u00e9sentation": {}, - "Frais de voyages - vendeurs": {}, - "Frais d\u2019autos - service apr\u00e8s-vente": {}, - "Frais d\u2019autos - vendeurs": {}, - "Loyer - bureau de vente": {}, - "Prototypes et \u00e9chantillons": {}, - "Publicit\u00e9": {}, - "Salaires - camionneurs": {}, - "Salaires - frais fixe de vente": { - "Salaires - exp\u00e9diteurs": {}, - "Salaires - g\u00e9rants": {}, - "Salaires - service apr\u00e8s-vente": {}, - "Salaires - vendeurs": {} - } - }, - "Frais fixe d\u2019administration": { - " Assurances d\u2019autos - administration": {}, - "Amortissements - frais fixe d'administration": { - "Amortissements - autos - frais fixe d'administration": {}, - "Amortissements - logiciels": {}, - "Amortissements - mobilier de bureau": {}, - "Amortissements - \u00e9quipement informatique": {} - }, - "Avantages sociaux - frais fixe d'administration": {}, - "Dons et associations": {}, - "Entretien et r\u00e9parations - bureau": {}, - "Frais de perception": {}, - "Frais de voyages - administration": {}, - "Frais de v\u00e9rification": {}, - "Frais d\u2019autos - administration": {}, - "Frais juridiques": {}, - "Location - \u00e9quipement de bureau": {}, - "Mauvaises cr\u00e9ances": {}, - "Papeterie et d\u00e9penses de bureau": {}, - "Salaires - frais fixe d'administration": { - "Salaires - administration": {}, - "Salaires - bureau": {} - }, - "Taxe sur le capital": {}, - "Taxes, licences, permis": {}, - "Timbres": {}, - "T\u00e9l\u00e9communications": {} - } - }, - "Frais variables": { - "Frais variables de fabrication": { - " Emballage \u00e0 la production": { - "account_type": "Cost of Goods Sold" - }, - " Sous-traitance": { - "account_type": "Cost of Goods Sold" - }, - "Achats de mati\u00e8res premi\u00e8res": { - "account_type": "Cost of Goods Sold" - }, - "Achats de mat\u00e9riel direct": { - "account_type": "Cost of Goods Sold" - }, - "Achats de produits non fabriqu\u00e9s": { - "account_type": "Expenses Included In Valuation" - }, - "Avantages sociaux": { - "account_type": "Cost of Goods Sold" - }, - "Main-d\u2019\u0153uvre directe": { - "account_type": "Cost of Goods Sold" - }, - "Variation des stocks": { - "account_type": "Stock Adjustment" - }, - "account_type": "Cost of Goods Sold" - }, - "Frais variables de vente": { - "Commissions": {}, - "Redevances": {}, - "Transport (\u00e0 contrat)": {} - } - }, - "root_type": "Expense" - }, - "Passif": { - "PASSIFS NON-COURANTS": { - "AUTRES PASSIFS NON-COURANTS": {}, - "DETTES FINANCI\u00c8RES NON-COURANTES": {}, - "IMP\u00d4TS DIFF\u00c9R\u00c9S": {}, - "PROVISIONS POUR RETRAITES ET AUTRES AVANTAGES POST\u00c9RIEURS \u00c0 L'EMPLOI": {} - }, - "Passif \u00e0 court terme": { - " Commissions \u00e0 payer": {}, - "Assurance collective \u00e0 payer": {}, - "Autres comptes cr\u00e9diteurs": {}, - "Comptes \u00e0 payer": { - "Comptes fournisseurs": { - "account_type": "Payable" - } - }, - "D\u00e9p\u00f4ts de clients": {}, - "Emprunt de banque": {}, - "Imp\u00f4ts li\u00e9s aux salaires \u00e0 payer": { - "Agence du revenu du Canada": { - "Assurance - emploi \u00e0 payer": { - "AE - Contribution de l'employeur": {}, - "AE - Contribution des employ\u00e9s": {} - }, - "Imp\u00f4t f\u00e9d\u00e9ral sur salaires \u00e0 payer": {} - }, - "Agence du revenu du Qu\u00e9bec": { - "Fond des Services de Sant\u00e9 \u00e0 payer": {}, - "Imp\u00f4t provincial sur salaires \u00e0 payer": {}, - "Normes du Travail \u00e0 payer": {}, - "Provision pour sant\u00e9 et s\u00e9curit\u00e9 du travail CSST": {}, - "R\u00e9gime des rentes du Qu\u00e9bec \u00e0 payer": { - "Rentes - Contribution de l'employeur": {}, - "Rentes - Contribution des employ\u00e9s": {} - }, - "R\u00e9gime qu\u00e9becois d'assurance parentale": { - "AP - Contribution de l'employeur": {}, - "AP - Contribution des employ\u00e9s": {} - } - }, - "Caisse de retraite \u00e0 payer": {} - }, - "Imp\u00f4ts \u00e0 payer": { - "Imp\u00f4t f\u00e9d\u00e9ral sur le revenu \u00e0 payer": {}, - "Imp\u00f4t provincial sur le revenu \u00e0 payer": {}, - "TPS \u00e0 payer": {}, - "TVH \u00e0 payer": { - "TVH \u00e0 payer - 13%": {}, - "TVH \u00e0 payer - 14%": {}, - "TVH \u00e0 payer - 15%": {} - }, - "TVP/TVQ \u00e0 payer": {} - }, - "Passifs de stock": { - "Stock re\u00e7u non factur\u00e9": { - "account_type": "Stock Received But Not Billed" - } - }, - "Provision pour vacances et cong\u00e9s": {}, - "Revenus per\u00e7us d\u2019avance": {}, - "Salaires \u00e0 payer": {} - }, - "Passif \u00e0 long terme": { - "Avances des actionnaires": {}, - "Cr\u00e9dits d\u2019imp\u00f4ts report\u00e9s": {}, - "Hypoth\u00e8que \u00e0 payer": {}, - "Liens sur machinerie": {}, - "Liens sur mat\u00e9riel roulant": {}, - "Obligation d\u00e9coulant d\u2019un contrat de location - acquisition": {}, - "Passif d\u2019imp\u00f4ts futurs": {} - }, - "root_type": "Liability" - }, - "Produits": { - "Revenus de ventes": { - " Escomptes de volume sur ventes": {}, - "Autres produits d'exploitation": {}, - "Ventes": {}, - "Ventes avec des provinces harmonis\u00e9es": {}, - "Ventes avec des provinces non-harmonis\u00e9es": {}, - "Ventes \u00e0 l'\u00e9tranger": {} - }, - "Revenus non li\u00e9 \u00e0 la vente": { - "Autres revenus non li\u00e9s \u00e0 la vente": {}, - "Revenues d'int\u00e9r\u00eats": {} - }, - "root_type": "Income" - } + "country_code": "ca", + "name": "Canada - Plan comptable pour les provinces francophones", + "tree": { + "Actif": { + "Actif à court terme": { + "Avances": { + "Avances aux actionnaires": {}, + "Avances aux employés": {}, + "Avances sur commissions": {} + }, + "Banque": { + "account_type": "Bank", + "is_group": 1 + }, + "Comptes à recevoir": { + "Comptes clients": { + "account_type": "Receivable" + }, + "Provision pour créances douteuses": {} + }, + "Encaisse": { + "is_group": 1 + }, + "Frais payés d’avance": { + "Assurances payés d'avance": {}, + "Publicité payé d'avance": {}, + "Taxes payés d'avance": {} + }, + "Petite caisse": { + "account_type": "Cash", + "is_group": 1 + }, + "Stocks": { + "Matières premières": {}, + "Stock de produits fini": { + "account_type": "Stock" + }, + "Stock expédié non-facturé": {}, + "Travaux en cours": {}, + "account_type": "Stock" + }, + "Subventions à recevoir": {}, + "TRÉSORERIE OU ÉQUIVALENTS DE TRÉSORERIE": {}, + "Taxes à recevoir": { + "TPS à recevoir": {}, + "TVH à recevoir": { + "TVH à recevoir - 13%": {}, + "TVH à recevoir - 14%": {}, + "TVH à recevoir - 15%": {} + }, + "TVP/TVQ à recevoir": {} } -} \ No newline at end of file + }, + "Autres actifs": { + " Frais de premier établissement": {}, + "Achalandage": {}, + "Brevets, droits": {}, + "Frais de recherche et de développement - actif": {} + }, + "Immobilisations": { + " Amortissement accumulé - bâtiment": {}, + " Amortissement accumulé - entrepôt": {}, + " Amortissement accumulé - logiciels": {}, + " Amortissement accumulé - machinerie et équipement": {}, + " Amortissement accumulé - équipement informatique": {}, + "Amortissement accumulé - améliorations locatives": {}, + "Amortissement accumulé - biens loués en vertu d’un contrat de location - acquisition": {}, + "Amortissement accumulé - matériel roulant": {}, + "Amortissement accumulé - mobilier et équipement de bureau": {}, + "Améliorations locatives": { + "account_type": "Fixed Asset" + }, + "Biens loués en vertu d’un contrat de location - acquisition": { + "account_type": "Fixed Asset" + }, + "Bâtiment": { + "account_type": "Fixed Asset" + }, + "Entrepôt": { + "account_type": "Fixed Asset" + }, + "Logiciels": { + "account_type": "Fixed Asset" + }, + "Machinerie et équipement": { + "account_type": "Fixed Asset" + }, + "Matériel roulant": { + "account_type": "Fixed Asset" + }, + "Mobilier et équipement de bureau": { + "account_type": "Fixed Asset" + }, + "Terrain": { + "account_type": "Fixed Asset" + }, + "account_type": "Fixed Asset", + "Équipement informatique": { + "account_type": "Fixed Asset" + } + }, + "Placements": { + "Dépôts": {}, + "Placement": {} + }, + "root_type": "Asset" + }, + "Avoir des actionnaires": { + " Bénéfice de la période": {}, + "Bonis": {}, + "Bénéfices non répartis": {}, + "Capital - actions ordinaire": {}, + "Capital - actions privilégié": {}, + "Dividendes": {}, + "Surplus d’apport": {}, + "root_type": "Equity" + }, + "Charges": { + "Charges d'exploitation": { + "Salaires et charges sociales": { + "Assurance - emploi": { + "account_type": "Chargeable" + }, + "Assurance parentale": {}, + "Fonds des services de santé": {}, + "Impôt fédéral": {}, + "Impôt provincial": {}, + "Normes du travail": {}, + "Rentes": {}, + "Salaires": { + "account_type": "Chargeable" + }, + "santé et sécurité du travail CSST": { + "account_type": "Chargeable" + } + } + }, + "Frais fixes": { + "Frais de fabrication": { + " Réparations et entretien - moules et matrices": {}, + "Ammortissements": { + "Amortissements - améliorations locatives": { + "account_type": "Depreciation" + }, + "Amortissements - biens loués contrat de location - acquisition": { + "account_type": "Depreciation" + }, + "Amortissements - bâtiment": { + "account_type": "Depreciation" + }, + "Amortissements - entrepôt": { + "account_type": "Depreciation" + }, + "Amortissements - machinerie et équipement": { + "account_type": "Depreciation" + }, + "Amortissements - matériel roulant": { + "account_type": "Depreciation" + }, + "Amortissements - moules et matrices": { + "account_type": "Depreciation" + }, + "account_type": "Depreciation" + }, + "Assurances": { + " Assurances - feu": {}, + " Assurances - responsabilité": {}, + " Assurances - vol": {} + }, + "Avantages sociaux - frais de fabrication": {}, + "Dépenses - matériel roulant": {}, + "Entretien du terrain à contrat": {}, + "Fournitures d’emballage": {}, + "Fournitures d’usine": {}, + "Location de machinerie": {}, + "Loyer - bâtiment": {}, + "Loyer - entrepôt": {}, + "Opérations indirectes de la main-d’œuvre directe": { + "is_group": 1 + }, + "Réparations et entretien - bâtiment": {}, + "Réparations et entretien - machinerie et équipement": {}, + "Salaires de soutien": {}, + "Salaires de supervision": {}, + "Taxes foncières": {}, + "Énergie": {} + }, + "Frais de formation": { + " Salaires - administration - frais fixe formation": {}, + "Avantages sociaux - frais fixe formation": {}, + "Crédits d’impôts à la formation": {}, + "Honoraires": {}, + "Main-d’œuvre directe - frais fixe formation": {}, + "Main-d’œuvre indirecte - frais fixe formation": {}, + "Salaires - bureau - frais fixe formation": {}, + "Salaires - vente": {} + }, + "Frais de non-qualité": { + " Avantages sociaux - non-qualité": {}, + " Main-d’œuvre directe - non-qualité": { + "Main-d’œuvre directe - gaspillage": {}, + "Main-d’œuvre directe - réparations de garantie": {}, + "Main-d’œuvre directe - travail a reprendre": {} + }, + "Matériel - non-qualité": { + "Matériel - gaspillage": {}, + "Matériel - réparations de garantie": {}, + "Matériel - travail a reprendre": {} + }, + "Salaire - inspecteur (contrôle de la qualité)": {} + }, + "Frais de recherche et de développement - charge": { + " Matières premières - R&D": {}, + "Avantages sociaux - R&D": {}, + "Crédits d’impôts - R&D": {}, + "Honoraires professionnels - R&D": {}, + "Main-d’œuvre directe - R&D": {}, + "Sous-traitance - R&D": {} + }, + "Frais financiers": { + " Escomptes de caisse sur achats": {}, + " Intérêts et frais de banque": {}, + " Intérêts sur emprunts - actionnaires": {}, + " Intérêts sur emprunts - machinerie": {}, + " Intérêts sur emprunts - matériel roulant": {}, + "Escomptes de caisse sur ventes": {}, + "Intérêts sur hypothèque": {} + }, + "Frais fixe de vente": { + " Frais de voyages - camionneurs": {}, + " Frais de voyages - service après-vente": {}, + "Amortissement - camions": {}, + "Amortissements - frais fixe de vente": { + " Amortissements - autos": {}, + " Amortissements - bureau de vente": {} + }, + "Assurances - camions": {}, + "Assurances d’autos - vendeurs": {}, + "Avantages sociaux - frais fixe de vente": {}, + "Catalogues": {}, + "Dépenses - bureau de vente": {}, + "Emballage à la livraison": {}, + "Entretien et réparations - camions": {}, + "Frais de représentation": {}, + "Frais de voyages - vendeurs": {}, + "Frais d’autos - service après-vente": {}, + "Frais d’autos - vendeurs": {}, + "Loyer - bureau de vente": {}, + "Prototypes et échantillons": {}, + "Publicité": {}, + "Salaires - camionneurs": {}, + "Salaires - frais fixe de vente": { + "Salaires - expéditeurs": {}, + "Salaires - gérants": {}, + "Salaires - service après-vente": {}, + "Salaires - vendeurs": {} + } + }, + "Frais fixe d’administration": { + " Assurances d’autos - administration": {}, + "Amortissements - frais fixe d'administration": { + "Amortissements - autos - frais fixe d'administration": {}, + "Amortissements - logiciels": {}, + "Amortissements - mobilier de bureau": {}, + "Amortissements - équipement informatique": {} + }, + "Avantages sociaux - frais fixe d'administration": {}, + "Dons et associations": {}, + "Entretien et réparations - bureau": {}, + "Frais de perception": {}, + "Frais de voyages - administration": {}, + "Frais de vérification": {}, + "Frais d’autos - administration": {}, + "Frais juridiques": {}, + "Location - équipement de bureau": {}, + "Mauvaises créances": {}, + "Papeterie et dépenses de bureau": {}, + "Salaires - frais fixe d'administration": { + "Salaires - administration": {}, + "Salaires - bureau": {} + }, + "Taxe sur le capital": {}, + "Taxes, licences, permis": {}, + "Timbres": {}, + "Télécommunications": {} + } + }, + "Frais variables": { + "Frais variables de fabrication": { + " Emballage à la production": { + "account_type": "Cost of Goods Sold" + }, + " Sous-traitance": { + "account_type": "Cost of Goods Sold" + }, + "Achats de matières premières": { + "account_type": "Cost of Goods Sold" + }, + "Achats de matériel direct": { + "account_type": "Cost of Goods Sold" + }, + "Achats de produits non fabriqués": { + "account_type": "Expenses Included In Valuation" + }, + "Avantages sociaux": { + "account_type": "Cost of Goods Sold" + }, + "Main-d’œuvre directe": { + "account_type": "Cost of Goods Sold" + }, + "Variation des stocks": { + "account_type": "Stock Adjustment" + }, + "account_type": "Cost of Goods Sold" + }, + "Frais variables de vente": { + "Commissions": {}, + "Redevances": {}, + "Transport (à contrat)": {} + } + }, + "root_type": "Expense" + }, + "Passif": { + "PASSIFS NON-COURANTS": { + "AUTRES PASSIFS NON-COURANTS": {}, + "DETTES FINANCIÈRES NON-COURANTES": {}, + "IMPÔTS DIFFÉRÉS": {}, + "PROVISIONS POUR RETRAITES ET AUTRES AVANTAGES POSTÉRIEURS À L'EMPLOI": {} + }, + "Passif à court terme": { + " Commissions à payer": {}, + "Assurance collective à payer": {}, + "Autres comptes créditeurs": {}, + "Comptes à payer": { + "Comptes fournisseurs": { + "account_type": "Payable" + } + }, + "Dépôts de clients": {}, + "Emprunt de banque": {}, + "Impôts liés aux salaires à payer": { + "Agence du revenu du Canada": { + "Assurance - emploi à payer": { + "AE - Contribution de l'employeur": {}, + "AE - Contribution des employés": {} + }, + "Impôt fédéral sur salaires à payer": {} + }, + "Agence du revenu du Québec": { + "Fond des Services de Santé à payer": {}, + "Impôt provincial sur salaires à payer": {}, + "Normes du Travail à payer": {}, + "Provision pour santé et sécurité du travail CSST": {}, + "Régime des rentes du Québec à payer": { + "Rentes - Contribution de l'employeur": {}, + "Rentes - Contribution des employés": {} + }, + "Régime québecois d'assurance parentale": { + "AP - Contribution de l'employeur": {}, + "AP - Contribution des employés": {} + } + }, + "Caisse de retraite à payer": {} + }, + "Impôts à payer": { + "Impôt fédéral sur le revenu à payer": {}, + "Impôt provincial sur le revenu à payer": {}, + "TPS à payer": {}, + "TVH à payer": { + "TVH à payer - 13%": {}, + "TVH à payer - 14%": {}, + "TVH à payer - 15%": {} + }, + "TVP/TVQ à payer": {} + }, + "Passifs de stock": { + "Stock reçu non facturé": { + "account_type": "Stock Received But Not Billed" + } + }, + "Provision pour vacances et congés": {}, + "Revenus perçus d’avance": {}, + "Salaires à payer": {} + }, + "Passif à long terme": { + "Avances des actionnaires": {}, + "Crédits d’impôts reportés": {}, + "Hypothèque à payer": {}, + "Liens sur machinerie": {}, + "Liens sur matériel roulant": {}, + "Obligation découlant d’un contrat de location - acquisition": {}, + "Passif d’impôts futurs": {} + }, + "root_type": "Liability" + }, + "Produits": { + "Revenus de ventes": { + "Escomptes de volume sur ventes": {}, + "Autres produits d'exploitation": {}, + "Ventes": { + "account_type": "Income Account" + }, + "Ventes avec des provinces harmonisées": {}, + "Ventes avec des provinces non-harmonisées": {}, + "Ventes à l'étranger": {} + }, + "Revenus non lié à la vente": { + "Autres revenus non liés à la vente": {}, + "Revenues d'intérêts": {} + }, + "root_type": "Income" + } + } +} diff --git a/erpnext/setup/demo.py b/erpnext/setup/demo.py new file mode 100644 index 00000000000..4bc98b91bd3 --- /dev/null +++ b/erpnext/setup/demo.py @@ -0,0 +1,210 @@ +# Copyright (c) 2023, Frappe Technologies Pvt. Ltd. and Contributors +# License: GNU General Public License v3. See license.txt + +import json +import os +from random import randint + +import frappe +from frappe import _ +from frappe.utils import add_days, getdate + +from erpnext.accounts.doctype.payment_entry.payment_entry import get_payment_entry +from erpnext.accounts.utils import get_fiscal_year +from erpnext.buying.doctype.purchase_order.purchase_order import make_purchase_invoice +from erpnext.selling.doctype.sales_order.sales_order import make_sales_invoice +from erpnext.setup.setup_wizard.operations.install_fixtures import create_bank_account + + +def setup_demo_data(): + from frappe.utils.telemetry import capture + + capture("demo_data_creation_started", "erpnext") + try: + company = create_demo_company() + process_masters() + make_transactions(company) + frappe.cache.delete_keys("bootinfo") + frappe.publish_realtime("demo_data_complete") + except Exception: + frappe.log_error("Failed to create demo data") + capture("demo_data_creation_failed", "erpnext", properties={"exception": frappe.get_traceback()}) + raise + capture("demo_data_creation_completed", "erpnext") + + +@frappe.whitelist() +def clear_demo_data(): + from frappe.utils.telemetry import capture + + frappe.only_for("System Manager") + + capture("demo_data_erased", "erpnext") + try: + company = frappe.db.get_single_value("Global Defaults", "demo_company") + create_transaction_deletion_record(company) + clear_masters() + delete_company(company) + default_company = frappe.db.get_single_value("Global Defaults", "default_company") + frappe.db.set_default("company", default_company) + except Exception: + frappe.db.rollback() + frappe.log_error("Failed to erase demo data") + frappe.throw( + _("Failed to erase demo data, please delete the demo company manually."), + title=_("Could Not Delete Demo Data"), + ) + + +def create_demo_company(): + company = frappe.db.get_all("Company")[0].name + company_doc = frappe.get_doc("Company", company) + + # Make a dummy company + new_company = frappe.new_doc("Company") + new_company.company_name = company_doc.company_name + " (Demo)" + new_company.abbr = company_doc.abbr + "D" + new_company.enable_perpetual_inventory = 1 + new_company.default_currency = company_doc.default_currency + new_company.country = company_doc.country + new_company.chart_of_accounts_based_on = "Standard Template" + new_company.chart_of_accounts = company_doc.chart_of_accounts + new_company.insert() + + # Set Demo Company as default to + frappe.db.set_single_value("Global Defaults", "demo_company", new_company.name) + frappe.db.set_default("company", new_company.name) + + bank_account = create_bank_account({"company_name": new_company.name}) + frappe.db.set_value("Company", new_company.name, "default_bank_account", bank_account.name) + + return new_company.name + + +def process_masters(): + for doctype in frappe.get_hooks("demo_master_doctypes"): + data = read_data_file_using_hooks(doctype) + if data: + for item in json.loads(data): + create_demo_record(item) + + +def create_demo_record(doctype): + frappe.get_doc(doctype).insert(ignore_permissions=True) + + +def make_transactions(company): + frappe.db.set_single_value("Stock Settings", "allow_negative_stock", 1) + start_date = get_fiscal_year(date=getdate())[1] + + for doctype in frappe.get_hooks("demo_transaction_doctypes"): + data = read_data_file_using_hooks(doctype) + if data: + for item in json.loads(data): + create_transaction(item, company, start_date) + + convert_order_to_invoices() + frappe.db.set_single_value("Stock Settings", "allow_negative_stock", 0) + + +def create_transaction(doctype, company, start_date): + document_type = doctype.get("doctype") + warehouse = get_warehouse(company) + + if document_type == "Purchase Order": + posting_date = get_random_date(start_date, 1, 25) + else: + posting_date = get_random_date(start_date, 31, 350) + + doctype.update( + { + "company": company, + "set_posting_time": 1, + "transaction_date": posting_date, + "schedule_date": posting_date, + "delivery_date": posting_date, + "set_warehouse": warehouse, + } + ) + + doc = frappe.get_doc(doctype) + doc.save(ignore_permissions=True) + doc.submit() + + +def convert_order_to_invoices(): + for document in ["Purchase Order", "Sales Order"]: + # Keep some orders intentionally unbilled/unpaid + for i, order in enumerate( + frappe.db.get_all( + document, filters={"docstatus": 1}, fields=["name", "transaction_date"], limit=6 + ) + ): + + if document == "Purchase Order": + invoice = make_purchase_invoice(order.name) + elif document == "Sales Order": + invoice = make_sales_invoice(order.name) + + invoice.set_posting_time = 1 + invoice.posting_date = order.transaction_date + invoice.due_date = order.transaction_date + invoice.update_stock = 1 + invoice.submit() + + if i % 2 != 0: + payment = get_payment_entry(invoice.doctype, invoice.name) + payment.reference_no = invoice.name + payment.submit() + + +def get_random_date(start_date, start_range, end_range): + return add_days(start_date, randint(start_range, end_range)) + + +def create_transaction_deletion_record(company): + transaction_deletion_record = frappe.new_doc("Transaction Deletion Record") + transaction_deletion_record.company = company + transaction_deletion_record.save(ignore_permissions=True) + transaction_deletion_record.submit() + + +def clear_masters(): + for doctype in frappe.get_hooks("demo_master_doctypes")[::-1]: + data = read_data_file_using_hooks(doctype) + if data: + for item in json.loads(data): + clear_demo_record(item) + + +def clear_demo_record(document): + document_type = document.get("doctype") + del document["doctype"] + + valid_columns = frappe.get_meta(document_type).get_valid_columns() + + filters = document + for key in list(filters): + if key not in valid_columns: + filters.pop(key, None) + + doc = frappe.get_doc(document_type, filters) + doc.delete(ignore_permissions=True) + + +def delete_company(company): + frappe.db.set_single_value("Global Defaults", "demo_company", "") + frappe.delete_doc("Company", company, ignore_permissions=True) + + +def read_data_file_using_hooks(doctype): + path = os.path.join(os.path.dirname(__file__), "demo_data") + with open(os.path.join(path, doctype + ".json"), "r") as f: + data = f.read() + + return data + + +def get_warehouse(company): + warehouses = frappe.db.get_all("Warehouse", {"company": company, "is_group": 0}) + return warehouses[randint(0, 3)].name -- GitLab From 7451a1085134b85188c697a10f5439a5c8c337a5 Mon Sep 17 00:00:00 2001 From: Deepesh Garg Date: Sun, 17 Dec 2023 14:05:07 +0530 Subject: [PATCH 2/4] Merge pull request #38807 from deepeshgarg007/canada_demo fix(demo): Demo setup for Canadian COA --- ...table_pour_les_provinces_francophones.json | 464 ++++++++++++++++-- 1 file changed, 413 insertions(+), 51 deletions(-) diff --git a/erpnext/accounts/doctype/account/chart_of_accounts/verified/ca_plan_comptable_pour_les_provinces_francophones.json b/erpnext/accounts/doctype/account/chart_of_accounts/verified/ca_plan_comptable_pour_les_provinces_francophones.json index d6398ff54d8..5c7af79d48d 100644 --- a/erpnext/accounts/doctype/account/chart_of_accounts/verified/ca_plan_comptable_pour_les_provinces_francophones.json +++ b/erpnext/accounts/doctype/account/chart_of_accounts/verified/ca_plan_comptable_pour_les_provinces_francophones.json @@ -1,55 +1,417 @@ { - "country_code": "ca", - "name": "Canada - Plan comptable pour les provinces francophones", - "tree": { - "Actif": { - "Actif à court terme": { - "Avances": { - "Avances aux actionnaires": {}, - "Avances aux employés": {}, - "Avances sur commissions": {} - }, - "Banque": { - "account_type": "Bank", - "is_group": 1 - }, - "Comptes à recevoir": { - "Comptes clients": { - "account_type": "Receivable" - }, - "Provision pour créances douteuses": {} - }, - "Encaisse": { - "is_group": 1 - }, - "Frais payés d’avance": { - "Assurances payés d'avance": {}, - "Publicité payé d'avance": {}, - "Taxes payés d'avance": {} - }, - "Petite caisse": { - "account_type": "Cash", - "is_group": 1 - }, - "Stocks": { - "Matières premières": {}, - "Stock de produits fini": { - "account_type": "Stock" - }, - "Stock expédié non-facturé": {}, - "Travaux en cours": {}, - "account_type": "Stock" - }, - "Subventions à recevoir": {}, - "TRÉSORERIE OU ÉQUIVALENTS DE TRÉSORERIE": {}, - "Taxes à recevoir": { - "TPS à recevoir": {}, - "TVH à recevoir": { - "TVH à recevoir - 13%": {}, - "TVH à recevoir - 14%": {}, - "TVH à recevoir - 15%": {} - }, - "TVP/TVQ à recevoir": {} + "country_code": "ca", + "name": "Canada - Plan comptable pour les provinces francophones", + "tree": { + "Actif": { + "Actif \u00e0 court terme": { + "Avances": { + "Avances aux actionnaires": {}, + "Avances aux employ\u00e9s": {}, + "Avances sur commissions": {} + }, + "Banque": { + "account_type": "Bank", + "is_group": 1 + }, + "Comptes \u00e0 recevoir": { + "Comptes clients": { + "account_type": "Receivable" + }, + "Provision pour cr\u00e9ances douteuses": {} + }, + "Encaisse": { + "is_group": 1 + }, + "Frais pay\u00e9s d\u2019avance": { + "Assurances pay\u00e9s d'avance": {}, + "Publicit\u00e9 pay\u00e9 d'avance": {}, + "Taxes pay\u00e9s d'avance": {} + }, + "Petite caisse": { + "account_type": "Cash", + "is_group": 1 + }, + "Stocks": { + "Mati\u00e8res premi\u00e8res": {}, + "Stock de produits fini": { + "account_type": "Stock" + }, + "Stock exp\u00e9di\u00e9 non-factur\u00e9": {}, + "Travaux en cours": {}, + "account_type": "Stock" + }, + "Subventions \u00e0 recevoir": {}, + "TR\u00c9SORERIE OU \u00c9QUIVALENTS DE TR\u00c9SORERIE": {}, + "Taxes \u00e0 recevoir": { + "TPS \u00e0 recevoir": {}, + "TVH \u00e0 recevoir": { + "TVH \u00e0 recevoir - 13%": {}, + "TVH \u00e0 recevoir - 14%": {}, + "TVH \u00e0 recevoir - 15%": {} + }, + "TVP/TVQ \u00e0 recevoir": {} + } + }, + "Autres actifs": { + " Frais de premier \u00e9tablissement": {}, + "Achalandage": {}, + "Brevets, droits": {}, + "Frais de recherche et de d\u00e9veloppement - actif": {} + }, + "Immobilisations": { + " Amortissement accumul\u00e9 - b\u00e2timent": {}, + " Amortissement accumul\u00e9 - entrep\u00f4t": {}, + " Amortissement accumul\u00e9 - logiciels": {}, + " Amortissement accumul\u00e9 - machinerie et \u00e9quipement": {}, + " Amortissement accumul\u00e9 - \u00e9quipement informatique": {}, + "Amortissement accumul\u00e9 - am\u00e9liorations locatives": {}, + "Amortissement accumul\u00e9 - biens lou\u00e9s en vertu d\u2019un contrat de location - acquisition": {}, + "Amortissement accumul\u00e9 - mat\u00e9riel roulant": {}, + "Amortissement accumul\u00e9 - mobilier et \u00e9quipement de bureau": {}, + "Am\u00e9liorations locatives": { + "account_type": "Fixed Asset" + }, + "Biens lou\u00e9s en vertu d\u2019un contrat de location - acquisition": { + "account_type": "Fixed Asset" + }, + "B\u00e2timent": { + "account_type": "Fixed Asset" + }, + "Entrep\u00f4t": { + "account_type": "Fixed Asset" + }, + "Logiciels": { + "account_type": "Fixed Asset" + }, + "Machinerie et \u00e9quipement": { + "account_type": "Fixed Asset" + }, + "Mat\u00e9riel roulant": { + "account_type": "Fixed Asset" + }, + "Mobilier et \u00e9quipement de bureau": { + "account_type": "Fixed Asset" + }, + "Terrain": { + "account_type": "Fixed Asset" + }, + "account_type": "Fixed Asset", + "\u00c9quipement informatique": { + "account_type": "Fixed Asset" + } + }, + "Placements": { + "D\u00e9p\u00f4ts": {}, + "Placement": {} + }, + "root_type": "Asset" + }, + "Avoir des actionnaires": { + " B\u00e9n\u00e9fice de la p\u00e9riode": {}, + "Bonis": {}, + "B\u00e9n\u00e9fices non r\u00e9partis": {}, + "Capital - actions ordinaire": {}, + "Capital - actions privil\u00e9gi\u00e9": {}, + "Dividendes": {}, + "Surplus d\u2019apport": {}, + "root_type": "Equity" + }, + "Charges": { + "Charges d'exploitation": { + "Salaires et charges sociales": { + "Assurance - emploi": { + "account_type": "Chargeable" + }, + "Assurance parentale": {}, + "Fonds des services de sant\u00e9": {}, + "Imp\u00f4t f\u00e9d\u00e9ral": {}, + "Imp\u00f4t provincial": {}, + "Normes du travail": {}, + "Rentes": {}, + "Salaires": { + "account_type": "Chargeable" + }, + "sant\u00e9 et s\u00e9curit\u00e9 du travail CSST": { + "account_type": "Chargeable" + } + } + }, + "Frais fixes": { + "Frais de fabrication": { + " R\u00e9parations et entretien - moules et matrices": {}, + "Ammortissements": { + "Amortissements - am\u00e9liorations locatives": { + "account_type": "Depreciation" + }, + "Amortissements - biens lou\u00e9s contrat de location - acquisition": { + "account_type": "Depreciation" + }, + "Amortissements - b\u00e2timent": { + "account_type": "Depreciation" + }, + "Amortissements - entrep\u00f4t": { + "account_type": "Depreciation" + }, + "Amortissements - machinerie et \u00e9quipement": { + "account_type": "Depreciation" + }, + "Amortissements - mat\u00e9riel roulant": { + "account_type": "Depreciation" + }, + "Amortissements - moules et matrices": { + "account_type": "Depreciation" + }, + "account_type": "Depreciation" + }, + "Assurances": { + " Assurances - feu": {}, + " Assurances - responsabilit\u00e9": {}, + " Assurances - vol": {} + }, + "Avantages sociaux - frais de fabrication": {}, + "D\u00e9penses - mat\u00e9riel roulant": {}, + "Entretien du terrain \u00e0 contrat": {}, + "Fournitures d\u2019emballage": {}, + "Fournitures d\u2019usine": {}, + "Location de machinerie": {}, + "Loyer - b\u00e2timent": {}, + "Loyer - entrep\u00f4t": {}, + "Op\u00e9rations indirectes de la main-d\u2019\u0153uvre directe": { + "is_group": 1 + }, + "R\u00e9parations et entretien - b\u00e2timent": {}, + "R\u00e9parations et entretien - machinerie et \u00e9quipement": {}, + "Salaires de soutien": {}, + "Salaires de supervision": {}, + "Taxes fonci\u00e8res": {}, + "\u00c9nergie": {} + }, + "Frais de formation": { + " Salaires - administration - frais fixe formation": {}, + "Avantages sociaux - frais fixe formation": {}, + "Cr\u00e9dits d\u2019imp\u00f4ts \u00e0 la formation": {}, + "Honoraires": {}, + "Main-d\u2019\u0153uvre directe - frais fixe formation": {}, + "Main-d\u2019\u0153uvre indirecte - frais fixe formation": {}, + "Salaires - bureau - frais fixe formation": {}, + "Salaires - vente": {} + }, + "Frais de non-qualit\u00e9": { + " Avantages sociaux - non-qualit\u00e9": {}, + " Main-d\u2019\u0153uvre directe - non-qualit\u00e9": { + "Main-d\u2019\u0153uvre directe - gaspillage": {}, + "Main-d\u2019\u0153uvre directe - r\u00e9parations de garantie": {}, + "Main-d\u2019\u0153uvre directe - travail a reprendre": {} + }, + "Mat\u00e9riel - non-qualit\u00e9": { + "Mat\u00e9riel - gaspillage": {}, + "Mat\u00e9riel - r\u00e9parations de garantie": {}, + "Mat\u00e9riel - travail a reprendre": {} + }, + "Salaire - inspecteur (contr\u00f4le de la qualit\u00e9)": {} + }, + "Frais de recherche et de d\u00e9veloppement - charge": { + " Mati\u00e8res premi\u00e8res - R&D": {}, + "Avantages sociaux - R&D": {}, + "Cr\u00e9dits d\u2019imp\u00f4ts - R&D": {}, + "Honoraires professionnels - R&D": {}, + "Main-d\u2019\u0153uvre directe - R&D": {}, + "Sous-traitance - R&D": {} + }, + "Frais financiers": { + " Escomptes de caisse sur achats": {}, + " Int\u00e9r\u00eats et frais de banque": {}, + " Int\u00e9r\u00eats sur emprunts - actionnaires": {}, + " Int\u00e9r\u00eats sur emprunts - machinerie": {}, + " Int\u00e9r\u00eats sur emprunts - mat\u00e9riel roulant": {}, + "Escomptes de caisse sur ventes": {}, + "Int\u00e9r\u00eats sur hypoth\u00e8que": {} + }, + "Frais fixe de vente": { + " Frais de voyages - camionneurs": {}, + " Frais de voyages - service apr\u00e8s-vente": {}, + "Amortissement - camions": {}, + "Amortissements - frais fixe de vente": { + " Amortissements - autos": {}, + " Amortissements - bureau de vente": {} + }, + "Assurances - camions": {}, + "Assurances d\u2019autos - vendeurs": {}, + "Avantages sociaux - frais fixe de vente": {}, + "Catalogues": {}, + "D\u00e9penses - bureau de vente": {}, + "Emballage \u00e0 la livraison": {}, + "Entretien et r\u00e9parations - camions": {}, + "Frais de repr\u00e9sentation": {}, + "Frais de voyages - vendeurs": {}, + "Frais d\u2019autos - service apr\u00e8s-vente": {}, + "Frais d\u2019autos - vendeurs": {}, + "Loyer - bureau de vente": {}, + "Prototypes et \u00e9chantillons": {}, + "Publicit\u00e9": {}, + "Salaires - camionneurs": {}, + "Salaires - frais fixe de vente": { + "Salaires - exp\u00e9diteurs": {}, + "Salaires - g\u00e9rants": {}, + "Salaires - service apr\u00e8s-vente": {}, + "Salaires - vendeurs": {} + } + }, + "Frais fixe d\u2019administration": { + " Assurances d\u2019autos - administration": {}, + "Amortissements - frais fixe d'administration": { + "Amortissements - autos - frais fixe d'administration": {}, + "Amortissements - logiciels": {}, + "Amortissements - mobilier de bureau": {}, + "Amortissements - \u00e9quipement informatique": {} + }, + "Avantages sociaux - frais fixe d'administration": {}, + "Dons et associations": {}, + "Entretien et r\u00e9parations - bureau": {}, + "Frais de perception": {}, + "Frais de voyages - administration": {}, + "Frais de v\u00e9rification": {}, + "Frais d\u2019autos - administration": {}, + "Frais juridiques": {}, + "Location - \u00e9quipement de bureau": {}, + "Mauvaises cr\u00e9ances": {}, + "Papeterie et d\u00e9penses de bureau": {}, + "Salaires - frais fixe d'administration": { + "Salaires - administration": {}, + "Salaires - bureau": {} + }, + "Taxe sur le capital": {}, + "Taxes, licences, permis": {}, + "Timbres": {}, + "T\u00e9l\u00e9communications": {} + } + }, + "Frais variables": { + "Frais variables de fabrication": { + " Emballage \u00e0 la production": { + "account_type": "Cost of Goods Sold" + }, + " Sous-traitance": { + "account_type": "Cost of Goods Sold" + }, + "Achats de mati\u00e8res premi\u00e8res": { + "account_type": "Cost of Goods Sold" + }, + "Achats de mat\u00e9riel direct": { + "account_type": "Cost of Goods Sold" + }, + "Achats de produits non fabriqu\u00e9s": { + "account_type": "Expenses Included In Valuation" + }, + "Avantages sociaux": { + "account_type": "Cost of Goods Sold" + }, + "Main-d\u2019\u0153uvre directe": { + "account_type": "Cost of Goods Sold" + }, + "Variation des stocks": { + "account_type": "Stock Adjustment" + }, + "account_type": "Cost of Goods Sold" + }, + "Frais variables de vente": { + "Commissions": {}, + "Redevances": {}, + "Transport (\u00e0 contrat)": {} + } + }, + "root_type": "Expense" + }, + "Passif": { + "PASSIFS NON-COURANTS": { + "AUTRES PASSIFS NON-COURANTS": {}, + "DETTES FINANCI\u00c8RES NON-COURANTES": {}, + "IMP\u00d4TS DIFF\u00c9R\u00c9S": {}, + "PROVISIONS POUR RETRAITES ET AUTRES AVANTAGES POST\u00c9RIEURS \u00c0 L'EMPLOI": {} + }, + "Passif \u00e0 court terme": { + " Commissions \u00e0 payer": {}, + "Assurance collective \u00e0 payer": {}, + "Autres comptes cr\u00e9diteurs": {}, + "Comptes \u00e0 payer": { + "Comptes fournisseurs": { + "account_type": "Payable" + } + }, + "D\u00e9p\u00f4ts de clients": {}, + "Emprunt de banque": {}, + "Imp\u00f4ts li\u00e9s aux salaires \u00e0 payer": { + "Agence du revenu du Canada": { + "Assurance - emploi \u00e0 payer": { + "AE - Contribution de l'employeur": {}, + "AE - Contribution des employ\u00e9s": {} + }, + "Imp\u00f4t f\u00e9d\u00e9ral sur salaires \u00e0 payer": {} + }, + "Agence du revenu du Qu\u00e9bec": { + "Fond des Services de Sant\u00e9 \u00e0 payer": {}, + "Imp\u00f4t provincial sur salaires \u00e0 payer": {}, + "Normes du Travail \u00e0 payer": {}, + "Provision pour sant\u00e9 et s\u00e9curit\u00e9 du travail CSST": {}, + "R\u00e9gime des rentes du Qu\u00e9bec \u00e0 payer": { + "Rentes - Contribution de l'employeur": {}, + "Rentes - Contribution des employ\u00e9s": {} + }, + "R\u00e9gime qu\u00e9becois d'assurance parentale": { + "AP - Contribution de l'employeur": {}, + "AP - Contribution des employ\u00e9s": {} + } + }, + "Caisse de retraite \u00e0 payer": {} + }, + "Imp\u00f4ts \u00e0 payer": { + "Imp\u00f4t f\u00e9d\u00e9ral sur le revenu \u00e0 payer": {}, + "Imp\u00f4t provincial sur le revenu \u00e0 payer": {}, + "TPS \u00e0 payer": {}, + "TVH \u00e0 payer": { + "TVH \u00e0 payer - 13%": {}, + "TVH \u00e0 payer - 14%": {}, + "TVH \u00e0 payer - 15%": {} + }, + "TVP/TVQ \u00e0 payer": {} + }, + "Passifs de stock": { + "Stock re\u00e7u non factur\u00e9": { + "account_type": "Stock Received But Not Billed" + } + }, + "Provision pour vacances et cong\u00e9s": {}, + "Revenus per\u00e7us d\u2019avance": {}, + "Salaires \u00e0 payer": {} + }, + "Passif \u00e0 long terme": { + "Avances des actionnaires": {}, + "Cr\u00e9dits d\u2019imp\u00f4ts report\u00e9s": {}, + "Hypoth\u00e8que \u00e0 payer": {}, + "Liens sur machinerie": {}, + "Liens sur mat\u00e9riel roulant": {}, + "Obligation d\u00e9coulant d\u2019un contrat de location - acquisition": {}, + "Passif d\u2019imp\u00f4ts futurs": {} + }, + "root_type": "Liability" + }, + "Produits": { + "Revenus de ventes": { + "Escomptes de volume sur ventes": {}, + "Autres produits d'exploitation": {}, + "Ventes": { + "account_type": "Income Account" + }, + "Ventes avec des provinces harmonis\u00e9es": {}, + "Ventes avec des provinces non-harmonis\u00e9es": {}, + "Ventes \u00e0 l'\u00e9tranger": {} + }, + "Revenus non li\u00e9 \u00e0 la vente": { + "Autres revenus non li\u00e9s \u00e0 la vente": {}, + "Revenues d'int\u00e9r\u00eats": {} + }, + "root_type": "Income" + } } }, "Autres actifs": { -- GitLab From 3b90bc0ecc1767681f4b0573913e69aab4d004f1 Mon Sep 17 00:00:00 2001 From: Charles-Henri Decultot Date: Sun, 17 Dec 2023 12:40:29 +0000 Subject: [PATCH 3/4] fix: remove demo in Dokos --- erpnext/setup/demo.py | 210 ------------------------------------------ 1 file changed, 210 deletions(-) delete mode 100644 erpnext/setup/demo.py diff --git a/erpnext/setup/demo.py b/erpnext/setup/demo.py deleted file mode 100644 index 4bc98b91bd3..00000000000 --- a/erpnext/setup/demo.py +++ /dev/null @@ -1,210 +0,0 @@ -# Copyright (c) 2023, Frappe Technologies Pvt. Ltd. and Contributors -# License: GNU General Public License v3. See license.txt - -import json -import os -from random import randint - -import frappe -from frappe import _ -from frappe.utils import add_days, getdate - -from erpnext.accounts.doctype.payment_entry.payment_entry import get_payment_entry -from erpnext.accounts.utils import get_fiscal_year -from erpnext.buying.doctype.purchase_order.purchase_order import make_purchase_invoice -from erpnext.selling.doctype.sales_order.sales_order import make_sales_invoice -from erpnext.setup.setup_wizard.operations.install_fixtures import create_bank_account - - -def setup_demo_data(): - from frappe.utils.telemetry import capture - - capture("demo_data_creation_started", "erpnext") - try: - company = create_demo_company() - process_masters() - make_transactions(company) - frappe.cache.delete_keys("bootinfo") - frappe.publish_realtime("demo_data_complete") - except Exception: - frappe.log_error("Failed to create demo data") - capture("demo_data_creation_failed", "erpnext", properties={"exception": frappe.get_traceback()}) - raise - capture("demo_data_creation_completed", "erpnext") - - -@frappe.whitelist() -def clear_demo_data(): - from frappe.utils.telemetry import capture - - frappe.only_for("System Manager") - - capture("demo_data_erased", "erpnext") - try: - company = frappe.db.get_single_value("Global Defaults", "demo_company") - create_transaction_deletion_record(company) - clear_masters() - delete_company(company) - default_company = frappe.db.get_single_value("Global Defaults", "default_company") - frappe.db.set_default("company", default_company) - except Exception: - frappe.db.rollback() - frappe.log_error("Failed to erase demo data") - frappe.throw( - _("Failed to erase demo data, please delete the demo company manually."), - title=_("Could Not Delete Demo Data"), - ) - - -def create_demo_company(): - company = frappe.db.get_all("Company")[0].name - company_doc = frappe.get_doc("Company", company) - - # Make a dummy company - new_company = frappe.new_doc("Company") - new_company.company_name = company_doc.company_name + " (Demo)" - new_company.abbr = company_doc.abbr + "D" - new_company.enable_perpetual_inventory = 1 - new_company.default_currency = company_doc.default_currency - new_company.country = company_doc.country - new_company.chart_of_accounts_based_on = "Standard Template" - new_company.chart_of_accounts = company_doc.chart_of_accounts - new_company.insert() - - # Set Demo Company as default to - frappe.db.set_single_value("Global Defaults", "demo_company", new_company.name) - frappe.db.set_default("company", new_company.name) - - bank_account = create_bank_account({"company_name": new_company.name}) - frappe.db.set_value("Company", new_company.name, "default_bank_account", bank_account.name) - - return new_company.name - - -def process_masters(): - for doctype in frappe.get_hooks("demo_master_doctypes"): - data = read_data_file_using_hooks(doctype) - if data: - for item in json.loads(data): - create_demo_record(item) - - -def create_demo_record(doctype): - frappe.get_doc(doctype).insert(ignore_permissions=True) - - -def make_transactions(company): - frappe.db.set_single_value("Stock Settings", "allow_negative_stock", 1) - start_date = get_fiscal_year(date=getdate())[1] - - for doctype in frappe.get_hooks("demo_transaction_doctypes"): - data = read_data_file_using_hooks(doctype) - if data: - for item in json.loads(data): - create_transaction(item, company, start_date) - - convert_order_to_invoices() - frappe.db.set_single_value("Stock Settings", "allow_negative_stock", 0) - - -def create_transaction(doctype, company, start_date): - document_type = doctype.get("doctype") - warehouse = get_warehouse(company) - - if document_type == "Purchase Order": - posting_date = get_random_date(start_date, 1, 25) - else: - posting_date = get_random_date(start_date, 31, 350) - - doctype.update( - { - "company": company, - "set_posting_time": 1, - "transaction_date": posting_date, - "schedule_date": posting_date, - "delivery_date": posting_date, - "set_warehouse": warehouse, - } - ) - - doc = frappe.get_doc(doctype) - doc.save(ignore_permissions=True) - doc.submit() - - -def convert_order_to_invoices(): - for document in ["Purchase Order", "Sales Order"]: - # Keep some orders intentionally unbilled/unpaid - for i, order in enumerate( - frappe.db.get_all( - document, filters={"docstatus": 1}, fields=["name", "transaction_date"], limit=6 - ) - ): - - if document == "Purchase Order": - invoice = make_purchase_invoice(order.name) - elif document == "Sales Order": - invoice = make_sales_invoice(order.name) - - invoice.set_posting_time = 1 - invoice.posting_date = order.transaction_date - invoice.due_date = order.transaction_date - invoice.update_stock = 1 - invoice.submit() - - if i % 2 != 0: - payment = get_payment_entry(invoice.doctype, invoice.name) - payment.reference_no = invoice.name - payment.submit() - - -def get_random_date(start_date, start_range, end_range): - return add_days(start_date, randint(start_range, end_range)) - - -def create_transaction_deletion_record(company): - transaction_deletion_record = frappe.new_doc("Transaction Deletion Record") - transaction_deletion_record.company = company - transaction_deletion_record.save(ignore_permissions=True) - transaction_deletion_record.submit() - - -def clear_masters(): - for doctype in frappe.get_hooks("demo_master_doctypes")[::-1]: - data = read_data_file_using_hooks(doctype) - if data: - for item in json.loads(data): - clear_demo_record(item) - - -def clear_demo_record(document): - document_type = document.get("doctype") - del document["doctype"] - - valid_columns = frappe.get_meta(document_type).get_valid_columns() - - filters = document - for key in list(filters): - if key not in valid_columns: - filters.pop(key, None) - - doc = frappe.get_doc(document_type, filters) - doc.delete(ignore_permissions=True) - - -def delete_company(company): - frappe.db.set_single_value("Global Defaults", "demo_company", "") - frappe.delete_doc("Company", company, ignore_permissions=True) - - -def read_data_file_using_hooks(doctype): - path = os.path.join(os.path.dirname(__file__), "demo_data") - with open(os.path.join(path, doctype + ".json"), "r") as f: - data = f.read() - - return data - - -def get_warehouse(company): - warehouses = frappe.db.get_all("Warehouse", {"company": company, "is_group": 0}) - return warehouses[randint(0, 3)].name -- GitLab From 57b8774aadbb6117d3156111c91b4471e3257768 Mon Sep 17 00:00:00 2001 From: Charles-Henri Decultot Date: Sun, 17 Dec 2023 14:53:53 +0100 Subject: [PATCH 4/4] fix: COA for Canada --- ...table_pour_les_provinces_francophones.json | 464 ++---------------- 1 file changed, 51 insertions(+), 413 deletions(-) diff --git a/erpnext/accounts/doctype/account/chart_of_accounts/verified/ca_plan_comptable_pour_les_provinces_francophones.json b/erpnext/accounts/doctype/account/chart_of_accounts/verified/ca_plan_comptable_pour_les_provinces_francophones.json index 5c7af79d48d..d6398ff54d8 100644 --- a/erpnext/accounts/doctype/account/chart_of_accounts/verified/ca_plan_comptable_pour_les_provinces_francophones.json +++ b/erpnext/accounts/doctype/account/chart_of_accounts/verified/ca_plan_comptable_pour_les_provinces_francophones.json @@ -1,417 +1,55 @@ { - "country_code": "ca", - "name": "Canada - Plan comptable pour les provinces francophones", - "tree": { - "Actif": { - "Actif \u00e0 court terme": { - "Avances": { - "Avances aux actionnaires": {}, - "Avances aux employ\u00e9s": {}, - "Avances sur commissions": {} - }, - "Banque": { - "account_type": "Bank", - "is_group": 1 - }, - "Comptes \u00e0 recevoir": { - "Comptes clients": { - "account_type": "Receivable" - }, - "Provision pour cr\u00e9ances douteuses": {} - }, - "Encaisse": { - "is_group": 1 - }, - "Frais pay\u00e9s d\u2019avance": { - "Assurances pay\u00e9s d'avance": {}, - "Publicit\u00e9 pay\u00e9 d'avance": {}, - "Taxes pay\u00e9s d'avance": {} - }, - "Petite caisse": { - "account_type": "Cash", - "is_group": 1 - }, - "Stocks": { - "Mati\u00e8res premi\u00e8res": {}, - "Stock de produits fini": { - "account_type": "Stock" - }, - "Stock exp\u00e9di\u00e9 non-factur\u00e9": {}, - "Travaux en cours": {}, - "account_type": "Stock" - }, - "Subventions \u00e0 recevoir": {}, - "TR\u00c9SORERIE OU \u00c9QUIVALENTS DE TR\u00c9SORERIE": {}, - "Taxes \u00e0 recevoir": { - "TPS \u00e0 recevoir": {}, - "TVH \u00e0 recevoir": { - "TVH \u00e0 recevoir - 13%": {}, - "TVH \u00e0 recevoir - 14%": {}, - "TVH \u00e0 recevoir - 15%": {} - }, - "TVP/TVQ \u00e0 recevoir": {} - } - }, - "Autres actifs": { - " Frais de premier \u00e9tablissement": {}, - "Achalandage": {}, - "Brevets, droits": {}, - "Frais de recherche et de d\u00e9veloppement - actif": {} - }, - "Immobilisations": { - " Amortissement accumul\u00e9 - b\u00e2timent": {}, - " Amortissement accumul\u00e9 - entrep\u00f4t": {}, - " Amortissement accumul\u00e9 - logiciels": {}, - " Amortissement accumul\u00e9 - machinerie et \u00e9quipement": {}, - " Amortissement accumul\u00e9 - \u00e9quipement informatique": {}, - "Amortissement accumul\u00e9 - am\u00e9liorations locatives": {}, - "Amortissement accumul\u00e9 - biens lou\u00e9s en vertu d\u2019un contrat de location - acquisition": {}, - "Amortissement accumul\u00e9 - mat\u00e9riel roulant": {}, - "Amortissement accumul\u00e9 - mobilier et \u00e9quipement de bureau": {}, - "Am\u00e9liorations locatives": { - "account_type": "Fixed Asset" - }, - "Biens lou\u00e9s en vertu d\u2019un contrat de location - acquisition": { - "account_type": "Fixed Asset" - }, - "B\u00e2timent": { - "account_type": "Fixed Asset" - }, - "Entrep\u00f4t": { - "account_type": "Fixed Asset" - }, - "Logiciels": { - "account_type": "Fixed Asset" - }, - "Machinerie et \u00e9quipement": { - "account_type": "Fixed Asset" - }, - "Mat\u00e9riel roulant": { - "account_type": "Fixed Asset" - }, - "Mobilier et \u00e9quipement de bureau": { - "account_type": "Fixed Asset" - }, - "Terrain": { - "account_type": "Fixed Asset" - }, - "account_type": "Fixed Asset", - "\u00c9quipement informatique": { - "account_type": "Fixed Asset" - } - }, - "Placements": { - "D\u00e9p\u00f4ts": {}, - "Placement": {} - }, - "root_type": "Asset" - }, - "Avoir des actionnaires": { - " B\u00e9n\u00e9fice de la p\u00e9riode": {}, - "Bonis": {}, - "B\u00e9n\u00e9fices non r\u00e9partis": {}, - "Capital - actions ordinaire": {}, - "Capital - actions privil\u00e9gi\u00e9": {}, - "Dividendes": {}, - "Surplus d\u2019apport": {}, - "root_type": "Equity" - }, - "Charges": { - "Charges d'exploitation": { - "Salaires et charges sociales": { - "Assurance - emploi": { - "account_type": "Chargeable" - }, - "Assurance parentale": {}, - "Fonds des services de sant\u00e9": {}, - "Imp\u00f4t f\u00e9d\u00e9ral": {}, - "Imp\u00f4t provincial": {}, - "Normes du travail": {}, - "Rentes": {}, - "Salaires": { - "account_type": "Chargeable" - }, - "sant\u00e9 et s\u00e9curit\u00e9 du travail CSST": { - "account_type": "Chargeable" - } - } - }, - "Frais fixes": { - "Frais de fabrication": { - " R\u00e9parations et entretien - moules et matrices": {}, - "Ammortissements": { - "Amortissements - am\u00e9liorations locatives": { - "account_type": "Depreciation" - }, - "Amortissements - biens lou\u00e9s contrat de location - acquisition": { - "account_type": "Depreciation" - }, - "Amortissements - b\u00e2timent": { - "account_type": "Depreciation" - }, - "Amortissements - entrep\u00f4t": { - "account_type": "Depreciation" - }, - "Amortissements - machinerie et \u00e9quipement": { - "account_type": "Depreciation" - }, - "Amortissements - mat\u00e9riel roulant": { - "account_type": "Depreciation" - }, - "Amortissements - moules et matrices": { - "account_type": "Depreciation" - }, - "account_type": "Depreciation" - }, - "Assurances": { - " Assurances - feu": {}, - " Assurances - responsabilit\u00e9": {}, - " Assurances - vol": {} - }, - "Avantages sociaux - frais de fabrication": {}, - "D\u00e9penses - mat\u00e9riel roulant": {}, - "Entretien du terrain \u00e0 contrat": {}, - "Fournitures d\u2019emballage": {}, - "Fournitures d\u2019usine": {}, - "Location de machinerie": {}, - "Loyer - b\u00e2timent": {}, - "Loyer - entrep\u00f4t": {}, - "Op\u00e9rations indirectes de la main-d\u2019\u0153uvre directe": { - "is_group": 1 - }, - "R\u00e9parations et entretien - b\u00e2timent": {}, - "R\u00e9parations et entretien - machinerie et \u00e9quipement": {}, - "Salaires de soutien": {}, - "Salaires de supervision": {}, - "Taxes fonci\u00e8res": {}, - "\u00c9nergie": {} - }, - "Frais de formation": { - " Salaires - administration - frais fixe formation": {}, - "Avantages sociaux - frais fixe formation": {}, - "Cr\u00e9dits d\u2019imp\u00f4ts \u00e0 la formation": {}, - "Honoraires": {}, - "Main-d\u2019\u0153uvre directe - frais fixe formation": {}, - "Main-d\u2019\u0153uvre indirecte - frais fixe formation": {}, - "Salaires - bureau - frais fixe formation": {}, - "Salaires - vente": {} - }, - "Frais de non-qualit\u00e9": { - " Avantages sociaux - non-qualit\u00e9": {}, - " Main-d\u2019\u0153uvre directe - non-qualit\u00e9": { - "Main-d\u2019\u0153uvre directe - gaspillage": {}, - "Main-d\u2019\u0153uvre directe - r\u00e9parations de garantie": {}, - "Main-d\u2019\u0153uvre directe - travail a reprendre": {} - }, - "Mat\u00e9riel - non-qualit\u00e9": { - "Mat\u00e9riel - gaspillage": {}, - "Mat\u00e9riel - r\u00e9parations de garantie": {}, - "Mat\u00e9riel - travail a reprendre": {} - }, - "Salaire - inspecteur (contr\u00f4le de la qualit\u00e9)": {} - }, - "Frais de recherche et de d\u00e9veloppement - charge": { - " Mati\u00e8res premi\u00e8res - R&D": {}, - "Avantages sociaux - R&D": {}, - "Cr\u00e9dits d\u2019imp\u00f4ts - R&D": {}, - "Honoraires professionnels - R&D": {}, - "Main-d\u2019\u0153uvre directe - R&D": {}, - "Sous-traitance - R&D": {} - }, - "Frais financiers": { - " Escomptes de caisse sur achats": {}, - " Int\u00e9r\u00eats et frais de banque": {}, - " Int\u00e9r\u00eats sur emprunts - actionnaires": {}, - " Int\u00e9r\u00eats sur emprunts - machinerie": {}, - " Int\u00e9r\u00eats sur emprunts - mat\u00e9riel roulant": {}, - "Escomptes de caisse sur ventes": {}, - "Int\u00e9r\u00eats sur hypoth\u00e8que": {} - }, - "Frais fixe de vente": { - " Frais de voyages - camionneurs": {}, - " Frais de voyages - service apr\u00e8s-vente": {}, - "Amortissement - camions": {}, - "Amortissements - frais fixe de vente": { - " Amortissements - autos": {}, - " Amortissements - bureau de vente": {} - }, - "Assurances - camions": {}, - "Assurances d\u2019autos - vendeurs": {}, - "Avantages sociaux - frais fixe de vente": {}, - "Catalogues": {}, - "D\u00e9penses - bureau de vente": {}, - "Emballage \u00e0 la livraison": {}, - "Entretien et r\u00e9parations - camions": {}, - "Frais de repr\u00e9sentation": {}, - "Frais de voyages - vendeurs": {}, - "Frais d\u2019autos - service apr\u00e8s-vente": {}, - "Frais d\u2019autos - vendeurs": {}, - "Loyer - bureau de vente": {}, - "Prototypes et \u00e9chantillons": {}, - "Publicit\u00e9": {}, - "Salaires - camionneurs": {}, - "Salaires - frais fixe de vente": { - "Salaires - exp\u00e9diteurs": {}, - "Salaires - g\u00e9rants": {}, - "Salaires - service apr\u00e8s-vente": {}, - "Salaires - vendeurs": {} - } - }, - "Frais fixe d\u2019administration": { - " Assurances d\u2019autos - administration": {}, - "Amortissements - frais fixe d'administration": { - "Amortissements - autos - frais fixe d'administration": {}, - "Amortissements - logiciels": {}, - "Amortissements - mobilier de bureau": {}, - "Amortissements - \u00e9quipement informatique": {} - }, - "Avantages sociaux - frais fixe d'administration": {}, - "Dons et associations": {}, - "Entretien et r\u00e9parations - bureau": {}, - "Frais de perception": {}, - "Frais de voyages - administration": {}, - "Frais de v\u00e9rification": {}, - "Frais d\u2019autos - administration": {}, - "Frais juridiques": {}, - "Location - \u00e9quipement de bureau": {}, - "Mauvaises cr\u00e9ances": {}, - "Papeterie et d\u00e9penses de bureau": {}, - "Salaires - frais fixe d'administration": { - "Salaires - administration": {}, - "Salaires - bureau": {} - }, - "Taxe sur le capital": {}, - "Taxes, licences, permis": {}, - "Timbres": {}, - "T\u00e9l\u00e9communications": {} - } - }, - "Frais variables": { - "Frais variables de fabrication": { - " Emballage \u00e0 la production": { - "account_type": "Cost of Goods Sold" - }, - " Sous-traitance": { - "account_type": "Cost of Goods Sold" - }, - "Achats de mati\u00e8res premi\u00e8res": { - "account_type": "Cost of Goods Sold" - }, - "Achats de mat\u00e9riel direct": { - "account_type": "Cost of Goods Sold" - }, - "Achats de produits non fabriqu\u00e9s": { - "account_type": "Expenses Included In Valuation" - }, - "Avantages sociaux": { - "account_type": "Cost of Goods Sold" - }, - "Main-d\u2019\u0153uvre directe": { - "account_type": "Cost of Goods Sold" - }, - "Variation des stocks": { - "account_type": "Stock Adjustment" - }, - "account_type": "Cost of Goods Sold" - }, - "Frais variables de vente": { - "Commissions": {}, - "Redevances": {}, - "Transport (\u00e0 contrat)": {} - } - }, - "root_type": "Expense" - }, - "Passif": { - "PASSIFS NON-COURANTS": { - "AUTRES PASSIFS NON-COURANTS": {}, - "DETTES FINANCI\u00c8RES NON-COURANTES": {}, - "IMP\u00d4TS DIFF\u00c9R\u00c9S": {}, - "PROVISIONS POUR RETRAITES ET AUTRES AVANTAGES POST\u00c9RIEURS \u00c0 L'EMPLOI": {} - }, - "Passif \u00e0 court terme": { - " Commissions \u00e0 payer": {}, - "Assurance collective \u00e0 payer": {}, - "Autres comptes cr\u00e9diteurs": {}, - "Comptes \u00e0 payer": { - "Comptes fournisseurs": { - "account_type": "Payable" - } - }, - "D\u00e9p\u00f4ts de clients": {}, - "Emprunt de banque": {}, - "Imp\u00f4ts li\u00e9s aux salaires \u00e0 payer": { - "Agence du revenu du Canada": { - "Assurance - emploi \u00e0 payer": { - "AE - Contribution de l'employeur": {}, - "AE - Contribution des employ\u00e9s": {} - }, - "Imp\u00f4t f\u00e9d\u00e9ral sur salaires \u00e0 payer": {} - }, - "Agence du revenu du Qu\u00e9bec": { - "Fond des Services de Sant\u00e9 \u00e0 payer": {}, - "Imp\u00f4t provincial sur salaires \u00e0 payer": {}, - "Normes du Travail \u00e0 payer": {}, - "Provision pour sant\u00e9 et s\u00e9curit\u00e9 du travail CSST": {}, - "R\u00e9gime des rentes du Qu\u00e9bec \u00e0 payer": { - "Rentes - Contribution de l'employeur": {}, - "Rentes - Contribution des employ\u00e9s": {} - }, - "R\u00e9gime qu\u00e9becois d'assurance parentale": { - "AP - Contribution de l'employeur": {}, - "AP - Contribution des employ\u00e9s": {} - } - }, - "Caisse de retraite \u00e0 payer": {} - }, - "Imp\u00f4ts \u00e0 payer": { - "Imp\u00f4t f\u00e9d\u00e9ral sur le revenu \u00e0 payer": {}, - "Imp\u00f4t provincial sur le revenu \u00e0 payer": {}, - "TPS \u00e0 payer": {}, - "TVH \u00e0 payer": { - "TVH \u00e0 payer - 13%": {}, - "TVH \u00e0 payer - 14%": {}, - "TVH \u00e0 payer - 15%": {} - }, - "TVP/TVQ \u00e0 payer": {} - }, - "Passifs de stock": { - "Stock re\u00e7u non factur\u00e9": { - "account_type": "Stock Received But Not Billed" - } - }, - "Provision pour vacances et cong\u00e9s": {}, - "Revenus per\u00e7us d\u2019avance": {}, - "Salaires \u00e0 payer": {} - }, - "Passif \u00e0 long terme": { - "Avances des actionnaires": {}, - "Cr\u00e9dits d\u2019imp\u00f4ts report\u00e9s": {}, - "Hypoth\u00e8que \u00e0 payer": {}, - "Liens sur machinerie": {}, - "Liens sur mat\u00e9riel roulant": {}, - "Obligation d\u00e9coulant d\u2019un contrat de location - acquisition": {}, - "Passif d\u2019imp\u00f4ts futurs": {} - }, - "root_type": "Liability" - }, - "Produits": { - "Revenus de ventes": { - "Escomptes de volume sur ventes": {}, - "Autres produits d'exploitation": {}, - "Ventes": { - "account_type": "Income Account" - }, - "Ventes avec des provinces harmonis\u00e9es": {}, - "Ventes avec des provinces non-harmonis\u00e9es": {}, - "Ventes \u00e0 l'\u00e9tranger": {} - }, - "Revenus non li\u00e9 \u00e0 la vente": { - "Autres revenus non li\u00e9s \u00e0 la vente": {}, - "Revenues d'int\u00e9r\u00eats": {} - }, - "root_type": "Income" - } + "country_code": "ca", + "name": "Canada - Plan comptable pour les provinces francophones", + "tree": { + "Actif": { + "Actif à court terme": { + "Avances": { + "Avances aux actionnaires": {}, + "Avances aux employés": {}, + "Avances sur commissions": {} + }, + "Banque": { + "account_type": "Bank", + "is_group": 1 + }, + "Comptes à recevoir": { + "Comptes clients": { + "account_type": "Receivable" + }, + "Provision pour créances douteuses": {} + }, + "Encaisse": { + "is_group": 1 + }, + "Frais payés d’avance": { + "Assurances payés d'avance": {}, + "Publicité payé d'avance": {}, + "Taxes payés d'avance": {} + }, + "Petite caisse": { + "account_type": "Cash", + "is_group": 1 + }, + "Stocks": { + "Matières premières": {}, + "Stock de produits fini": { + "account_type": "Stock" + }, + "Stock expédié non-facturé": {}, + "Travaux en cours": {}, + "account_type": "Stock" + }, + "Subventions à recevoir": {}, + "TRÉSORERIE OU ÉQUIVALENTS DE TRÉSORERIE": {}, + "Taxes à recevoir": { + "TPS à recevoir": {}, + "TVH à recevoir": { + "TVH à recevoir - 13%": {}, + "TVH à recevoir - 14%": {}, + "TVH à recevoir - 15%": {} + }, + "TVP/TVQ à recevoir": {} } }, "Autres actifs": { -- GitLab