Dolibarr + WooCommerce : CSV au Maroc

Un guide pratique pour les commerçants marocains qui veulent connecter leurs deux systèmes 


1. Pourquoi associer Dolibarr et WooCommerce ?

Avantage Dolibarr WooCommerce
Gestionmerchant (CRM, stocks, factures, devis) ✔️
Site e‑commerce (catalogue, panier, paiement) ✔️
Flexibilité (modules, API, import/export) ✔️ ✔️
Localisation (MAD, TVA marocaine, transporteur local) ✔️

En combinant les deux, vous bénéficiez d’un ERP léger pour la comptabilité et la logistique, tout en conservant la puissance d’un moteur de boutique en ligne. Le fichier CSV devient le pont de communication entre les deux plateformes.

Astuce marocaine : Exportez vos données au format MAD (dirham marocain) et assurez‑vous que les codes régionaux (ex. : MA pour le Maroc) sont bien respectés.


2. Les principaux scénarios d’échange CSV

Scénario Source → Destination Champs essentiels (exemple) Utilité pour le marché marocain
Création de produits Dolibarr → WooCommerce reference, name, description, price, currency (MAD), category, stock, weight, tax_rate Synchronise rapidement le catalogue de vos fournisseurs locaux.
Mise à jour des stocks Dolibarr → WooCommerce sku, stock_qty Évite les ruptures de stock sur votre boutique.
Import de clients WooCommerce → Dolibarr email, firstname, lastname, address, city, postcode, country (MA), vat_number Centralise la relation client et facilite les devis/factures.
Export des commandes WooCommerce → Dolibarr order_number, date, customer, status, total, items[sku, qty, price], shipping_method Intègre automatiquement les ventes dans votre comptabilité.
Export des devis/factures Dolibarr → WooCommerce invoice_number, date, customer, line_items[sku,qty,price], tax Permet aux clients de télécharger leurs factures depuis la boutique.

Bon à savoir : Si vous travaillez avec plusieurs devises (ex. : EUR pour les fournisseurs européens), exportez toujours le champ currency et assurez‑vous que WooCommerce accepte la conversion via un plugin de taux de change.


3. Étapes détaillées pour préparer et utiliser un fichier CSV

3.1. Exporter les données depuis Dolibarr

  1. Connectez‑vous à votre instance Dolibarr via l’interface d’administration.
  2. Allez dans ExportCSV (ou ExportationsExport CSV).
  3. Sélectionnez le module à exporter : Produits, Clients, Commandes ou Factures.
  4. Paramétrez le filtre si besoin (ex. : « statut = en_attente »).
  5. Téléchargez le fichier .csv.
  6. Vérifiez le séparateur utilisé : la norme marocaine recommande la virgule (,) mais certains systèmes locale utilisent le point‑virgule (;). Ouvrez le fichier avec LibreOffice Calc ou Excel et ajustez le séparateur si nécessaire.

Export typique de produits (avec les colonnes essentielles) :

reference name description price currency tax_rate stock weight
PROD-001 Tapis berbère Tapis 100 x 150 cm, laine 280,00 MAD 20 15 1,2

3.2. Nettoyer le CSV pour WooCommerce

Action Pourquoi Comment le faire
Supprimer les colonnes inutiles WooCommerce ignore les champs non reconnus Ouvrez le fichier, supprimez les colonnes superflues.
Convertir les prix en float (pas de thousand separator) Les plugins d’importation interprètent mal les espaces Utilisez la fonction « Rechercher / Remplacer » pour enlever les espaces et les tirets.
Ajouter le champ currency = MAD Garantit que le prix est reconnu en dirham Insérez une colonne currency à la main ou via la fonction = "MAD" dans Excel.
Vérifier le tax rate (TVA marocaine) La TVA marocaine est généralement 20 % Ajoutez tax_rate=20 pour les produits taxables, ou 0 pour les exemptés.
Convertir les poids en grammes (ou kilogrammes) WooCommerce utilise le poids pour le calcul des frais de port Si vos poids sont en kg, multipliez par 1000 (ex. : 1,21200).

3.3. Importer le CSV dans WooCommerce

  1. Installez un plugin d’importation (ex. : WP All Import ou le built‑in Import de WooCommerce).
  2. Dans le plugin, choisissez ProduitImport CSV.
  3. Mappez les colonnes du CSV aux champs WooCommerce (SKU, Nom, Description, Prix, etc.).
  4. Spécifiez le type de produit (simple, variable, téléchargeable).
  5. Lancez l’import.
  6. Vérifiez les produits créés dans le tableau de bord de WooCommerce.

Astuce : Avant le premier import complet, testez avec 5 produits pour vous assurer que les champs sont correctement reconnus.


4. Gestion des spécificités marocaines

4.1. Devise et taxes

Élément Valeur par défaut au Maroc Comment le configurer
Devise MAD (Dirham marocain) Settings → General → Currency → choisir MAD.
TVA 20 % (standard), 10 % (certaines catégories), 0 % (exonéré) Dans WooCommerce → Settings → Tax, activer “Enable EU/UK tax rate calculations” et ajouter 20 comme taux standard.
Taux de change 1 EUR ≈ 10,8 MAD (varie) Installez le plugin “Auto‑Currency Switcher for WooCommerce” pour mettre à jour le taux chaque jour.

4.2. Transporteurs et frais de port

  • Maroc Post (poste Marocain) : tarif fixe par poids (ex. : 30 MAD jusqu’à 2 kg).
  • Chronya, Aramex, DHL : offrent des API de calcul de prix.

Solution simple :

  1. Créez un “Flat rate” dans WooCommerce → Settings → Shipping.
  2. Ajoutez un “Local pickup” (option “Retrait en magasin”).
  3. Ajoutez un “Cost based on weight” en renseignant le prix par tranche de poids (ex. : 0‑1 kg = 25 MAD, 1‑3 kg = 40 MAD).

Exportez le tableau de frais de port depuis Dolibarr (module Ventes → Factures) sous forme CSV, puis importez‑le dans WooCommerce pour synchroniser les tarifs.

4.3. Gestion des stocks et broken‑link

  • Dolibarr gère les stocks par entreprise/entreprise_fournisseur.
  • WooCommerce utilise le champ stock_status (instock, outofstock).

Procédure de synchronisation :

  1. Exportez le champ stock_qty depuis Dolibarr.
  2. Importez-le dans WooCommerce en associant le sku.
  3. Activez “Enable stock management at product level” dans WooCommerce.
  4. Mettez en place une tâche cron (ou un plugin like “WP‑Cron”) qui lance l’import quotidiennement pour éviter les ruptures.


5. Automatiser le flux CSV (exemple de script simple)

Vous avez besoin de mettre à jour le catalogue chaque semaine ? Un petit script PHP/Drupal (ou Python) peut faire le travail automatiquement.

<?php
// script_sync_dolibarr_to_woocommerce.php
require_once '/chemin/dolibarr/constants.php';
require_once '/chemin/dolibarr/dolibarr.php';
// 1. Récupération des produits
$products = dolibarr_search_all($_TABLES['product'], '', 'ref', false, 0, -1);
// 2. Construction du CSV
$fp = fopen('php://output', 'w');
fprintf($fp, "sku,name,description,price,currency,tax_rate,stock\n");
foreach($products as $p) {
$price = number_format($p->price, 2, '.', '');
$line = [
$p->ref,
$p->label,
strip_tags($p->desc),
$price,
'MAD',
$p->tax_rate,
$p->qty,
];
fputcsv($fp, $line);
}
fclose($fp);

  • Exécution : php script_sync_dolibarr_to_woocommerce.php > catalogue.csv
  • Planification : ajoutez une entrée dans crontab pour lancer le script chaque dimanche à 2 h du matin.

Note : Le script exporte uniquement les champs essentiels. Vous pouvez l’enrichir avec les Poids, Images, etc., en fonction de vos besoins.


6. Checklist avant de lancer le script de synchronisation

Action
1 Sauvegarde de votre base Dolibarr et de votre base WooCommerce.
2 Vérifier que le CSV est encodé en UTF‑8 (important pour les caractères français comme « é », « ç »).
3 Confirmer que les taxes (TVA 20 %) sont bien renseignées dans les deux systèmes.
4 Tester l’import avec 5 produits avant le lot complet.
5 Revérifier les règles de prix (hors frais de port, hors remises).
6 S’assurer que les SKUs sont uniques et conformes au format que vous utilisez dans Dolibarr.
7 Mettre en place un plan de secours (ex. : restaurer la sauvegarde si le CSV corrupt).
8 Programmer une tâche récurrente (CRON, plugin) si l’import doit être périodique.


7. Exemples de fichiers CSV

7.1. Exemple de produits.csv (prêt à être importé)

sku,name,description,price,currency,tax_rate,stock,weight
MOR-001,Tapis berbère 100x150,"Tapis en laine naturelle, couleur rouge",280.00,MAD,20,15,1200
GRS-045,Set de tasses en céramique,"4 tasses, design marocain",95.00,MAD,20,30,400

7.2. Exemple de clients.csv (exporté de WooCommerce)

email,first_name,last_name,address,city,postcode,country,vat_number
john.doe@example.ma,John,Doe,"12 Rue Hassan","Casablanca","20000","MA",FR123456789

7.3. Exemple de commandes.csv (exportées de WooCommerce)

order_number,order_date,customer_email,status,total,items
#1001,2024-09-12 14:23:00,john.doe@example.ma,completed,575.00,"PROD-001|2|280.00;GRS-045|1|95.00"
#1002,2024-09-15 09:45:00,jane.smith@example.ma,completed,340.00,"GRS-045|3|95.00;MOR-001|1|280.00"

Ces modèles vous permettront de faire le match entre les deux plateformes sans perdre d’informations sensibles (TVA, devise, poids, etc.).


8. Conclusion

  • Dolibarr fournit la gestion back‑office (stocks, factures, devis) idéale pour les PME marocaines.
  • WooCommerce apporte la visibilité et la convivialité d’une boutique en ligne moderne.
  • Le CSV est le maillon indispensable qui assure la cohérence des données entre les deux systèmes.
  • En suivant les étapes décrites — export, nettoyage, configuration des taxes et du poids, import, automatisation — vous pouvez synchroniser votre catalogue, vos stocks et vos factures sans recourir à un développeur coûteux.

En résumé : adoptez le workflow CSV, adaptez‑le aux spécificités du marché marocain (MAD, TVA 20 %, transporteurs locaux), et vous disposerez d’une solution ERP + e‑commerce fluide, fiable et prête à évoluer au fil de vos ventes.


Ressources complémentaires

Ressource Lien
Dolibarr Documentation – Export CSV https://www.dolibarr.org/docs/en/export_csv/
WooCommerce – Importer des produits CSV https://docs.woocommerce.com/document/import-products/
Guide TVA Maroc – Le Guide officiel 2024 https://www.impots.gov.ma/tva2024
WP All Import – Plugin d’import CSV avancé https://www.wpallimport.com/
Plugin “Auto Currency Switcher for WooCommerce” https://wordpress.org/plugins/auto-currency-switcher/

Bonne synchronisation et succès dans votre aventure e‑commerce marocain ! 🎉

Publications similaires