Pipedrive
DocuSign
v1.7.25 — 2026
Paramètres du devis
Choisissez le commercial, le profil partenaire et la langue.
👤 Commercial
📅 Options du devis
🔒
Attribué automatiquement à la sauvegarde (initiales + compteur + date + client)
🏢 Client / Partenaire
🗂 Projet — optionnel
Coordonnées du client
Informations de facturation et d'installation.
🌍 Langue & Pipedrive
👤
Particulier
Personne privée, B2C
🏢
Société assujettie
B2B avec n° TVA actif
🏗️
Société non assujettie
ASBL, commune, etc. sans TVA
🏢 Adresse de facturation
📍 Adresse d'installation
Sélection des bornes
Choisissez les bornes à inclure dans ce devis. Si le partenaire dispose de packages complets, ils sont proposés en preset au-dessus du catalogue.
🛒 Bornes sélectionnées
Description Qté PU HT Total HT Marge
Aucune borne ajoutée. Cliquez sur une borne dans le catalogue ci-dessous.
Sous-total Bornes 0,00 €
🔌 Catalogue de bornes
Installation & Matériel
Sélectionnez le pack d'installation et ajoutez les éléments additionnels.
🔧 Éléments d'installation sélectionnés
Description Qté PU HT Total HT Marge
Aucun élément d'installation ajouté.
Sous-total Installation 0,00 €
Ajouter un élément (prestation, article, accessoire, câble…)
Pack d'installation
🧩 Accessoires & Câbles (parcourir visuellement — la recherche est unifiée plus haut)
📋 L'installation comprend
✏️ Modifiable librement — cliquez Restaurer pour revenir au texte du pack.
Options & Abonnements
Ajoutez des options, abonnements et lignes personnalisées.
Options sélectionnées
Description Qté PU HT Total HT Marge
Aucune option ajoutée.
Sous-total Options 0,00 €
📡 Abonnements ZEborne Mobility Services
Notes & Mentions légales
Ajoutez une note visible sur le devis PDF, une note interne et vérifiez les mentions légales automatiques.
📨 Note client (visible sur le devis PDF)
🔒 Note interne (non visible sur le PDF)
⚖️ Notes légales automatiques
Régime TVA
Calculé automatiquement depuis le profil client et les articles sélectionnés.
🧾 Données utilisées pour le calcul TVA
Client
Articles détectés
TVA applicable
Entité facturante
Récapitulatif & Génération
Vérifiez le devis avant de l'imprimer ou de le sauvegarder.
📊 Récapitulatif financier
Bornes0,00 €
Matériel & Installation0,00 €
Options facultatives (hors total) 0,00 €
SOUS-TOTAL HTVA 0,00 €
TVA (—) 0,00 €
MONTANT À PAYER 0,00 €
🏷️ Remise globale % — laissez 0 pour aucune remise
* Le montant de la TVA est susceptible d'être ajusté en fonction des informations de facturation.
📊 Info Chiffrage
🏗️ Génie civil
⏱️ Temps d'intervention
📈 Analyse des marges
🚀 Actions
Statut :

Devis sauvegardés

Devis triés par numéro.

📂 Connecter le dossier
Filtrer : | | |
📂
Aucun devis sauvegardé
Connectez un dossier partagé ou créez votre premier devis.

📊 Statistiques

Analyse des devis — dernière version par devis, hors brouillons non finalisés
Période : Deviseur : Statut :

Évolution mensuelle — CA HT (€)

Répartition des statuts

Par deviseur
Top clients
ClientNb devisCA HT totalMarge moy.Signés
Détail des devis
N° DevisVer.DateClient DeviseurCA HTMarge €Marge % RemiseStatut

🚀 Générateur d'offre Fleet

Génère une offre commerciale structurée pour les flottes : matériel + ZMS + bonus selon cadence d'installation.

1️⃣ Client
2️⃣ Projet
3️⃣ Pricing
Borne
Pack d'installation
Abonnement ZMS
4️⃣ Bonus Fleet
📄
Remplissez le formulaire à gauche puis cliquez « 👁 Prévisualiser ».
L'offre apparaîtra ici, prête à imprimer (Ctrl+P → PDF).

💼 Tiers Investisseur

Pricer IRVE Belgique — étude rentabilité projet d'infrastructure de recharge.

💼
Chargement du module Tiers Investisseur…

⚙️ Administration

Gérez les produits, clients, équipe et prix.

👤 Non connecté
⏳ En attente de connexion… ⚡ Auto
Bornes de recharge
ImageMarque / ModèleCatégoriePrix achat HTPrix vente HTMargeActions
Prestations & main d'œuvre
Travaux, câblages, déplacements, configurations… — gérez-les dans l'onglet Produits › 🔧 Main d'œuvre
Description Catégorie Prix HT Unité Contenu inclus Actions
Profils Partenaires
LogoNom / StructureTVA défautPaysFacturationPackagesActions
👥 Délégués commerciaux

Les délégués commerciaux se connectent avec leur email et leur mot de passe et rédigent des devis à leur propre nom. Chaque membre peut se voir attribuer des droits d'accès à certaines sections admin.

Initiales Nom Téléphone Email Pipedrive Dernière connexion Droits admin Actions
Enregistre toutes les sections en une fois.
🏢 Informations ZEborne
⚠️ Si le logo vient d'une URL, cliquez sur Intégrer (base64) pour qu'il s'affiche correctement dans les PDFs générés.
🔐 La gestion des codes PIN se fait dans l'onglet 👥 Équipe & Accès — vous pouvez y gérer les délégués commerciaux et les administrateurs.
Tarifs horaires techniciens
Les tarifs de vente sont utilisés dans les devis. Les taux coutants servent au calcul de marge interne (jamais visibles par le client).
🔗 Intégration Pipedrive CRM
Token par deviseur — chaque membre de l'équipe a son propre token Pipedrive, configuré dans Admin → Utilisateurs → modifier le membre.
Le token ci-dessous est le token maître (fallback) utilisé uniquement si le deviseur du devis n'a pas de token personnel.
Aucun token configuré
Trouvez votre token dans Pipedrive → Paramètres → Intégrations API personnelles.
Dans Pipedrive : Paramètres → Champs de données → Affaires → copiez la clé API du champ. Quand un devis est signé via DocuSign, ce champ sera automatiquement mis à jour avec la date de signature.
Dans Pipedrive : Paramètres → Champs de données → Affaires → copiez la clé API du champ. Quand un devis est envoyé pour signature DocuSign, ce champ sera automatiquement mis à jour avec la date d'envoi.
Champ sélecteur Pipedrive. Quand un devis est envoyé pour signature DocuSign, la valeur sélectionnée dans "Info Chiffrage" sera automatiquement synchronisée sur le deal.
Champ sélecteur Pipedrive. Quand un devis est envoyé pour signature DocuSign, la valeur sélectionnée dans "Génie civil" sera synchronisée sur le deal (si renseignée).
Champ texte Pipedrive. Format envoyé : "Technicien 1 - X heures ; Technicien 2 - X heures ; Temps sur site X heures".
Champ sélecteur Pipedrive. Quand un devis est envoyé pour signature, le deviseur (initiales du commercial) est synchronisé sur le deal. Les options Pipedrive doivent correspondre aux initiales de l'équipe (CL, NLF, OH…).
Synchronisé à chaque envoi DocuSign. Si l'adresse d'installation = adresse de facturation, c'est l'adresse de facturation qui est envoyée.
Responsable de l'activité de relance créée J+7 après l'envoi du devis pour signature.
Responsable de l'activité "Devis signé - A checker/planifier" créée dès la signature DocuSign confirmée.
✍️ Intégration DocuSign
Authentification par clé RSA (JWT Bearer Grant) — aucun serveur requis.
Générez une paire de clés RSA dans votre console DocuSign, collez la clé privée ici, puis donnez votre consentement une seule fois.
Créez un Cloudflare Worker gratuit (dash.cloudflare.com) et collez son URL ici. Voir les instructions dans les paramètres.
Aucune clé configurée
Cliquez "Accepter", puis fermez la page — le consentement est accordé.
Toutes les 10 minutes, l'application vérifie le statut des deals liés aux devis en attente de signature. Si un deal est perdu, l'enveloppe est annulée automatiquement sans confirmation.
🗄️ Données
📂 Synchronisation automatique
Toute modification admin (produits, clients, tarifs, paramètres…) est sauvegardée automatiquement dans zeborne_devis.html dès que le dossier est connecté. Vos collègues verront les changements après rechargement de la page.
Les devis sont enregistrés dans leur propre fichier JSON dans le dossier partagé à chaque clic sur 💾.
🌍 Auto-traduction NL / EN (Claude Haiku)

Scan le catalogue (bornes, articles, packs, abonnements) et remplit automatiquement les libellés NL et EN manquants via l'API Claude Haiku. Sûr — n'écrase aucune traduction existante. Coût ~0,01 € pour 200 libellés.

Limite : 200 traductions par appel (~30s). Relancez si davantage de libellés à traiter.

📄 Conditions Générales de Vente (CGV)

Les CGV sont incluses automatiquement dans le devis PDF selon la langue sélectionnée. Collez le texte ou importez un fichier .txt pour chaque langue.

Aucune CGV FR chargée. Importez un fichier PDF.
📝 Historique des versions
📖

Manuel d'utilisation — Déviseur ZEborne

Guide complet pour la gestion du catalogue, des packages et la création de devis

1. Créer un devis — Les 8 étapes

Le déviseur guide la création d'un devis via un assistant en 8 étapes successives. Cliquez sur « + Nouveau devis » pour démarrer.

Étape 1 — Paramètres

Sélectionnez le commercial en charge du devis, la date, la durée de validité et la langue du devis (FR, NL ou EN). Le choix de la langue impacte tous les libellés du PDF final.

Étape 2 — Infos Client

Renseignez la raison sociale, le numéro de TVA, l'adresse de facturation et l'adresse d'installation (si différente). Vous pouvez sélectionner un partenaire existant ou créer un nouveau client.

Étape 3 — Bornes

Parcourez le catalogue par marque (Alfen, EVBox, Easee…) et ajoutez les bornes souhaitées. Vous pouvez aussi utiliser un Package full qui préconfigure borne + installation en un clic. Ajustez les quantités si nécessaire.

Étape 4 — Installation

Choisissez un pack d'installation ou ajoutez des éléments individuellement via le champ « Ajouter un élément (prestation, article, accessoire, câble…) » — une seule barre de recherche unifiée donne accès à tout le catalogue : 🔧 Prestations & main-d'œuvre, 📦 Articles, 🧩 Accessoires et 🔌 Câbles de charge. Les câbles avec longueur fixe (ex. 5 m) sont ajoutés en lot avec le bon prix automatiquement, ceux au mètre laissent saisir la quantité de mètres. Les cartes en dessous (Accessoires & Câbles) restent disponibles pour parcourir visuellement le catalogue.

Étape 5 — Options

Ajoutez des accessoires, abonnements (monitoring, maintenance…) ou des lignes personnalisées. Chaque ligne peut être taggée « INCLUS » si offerte dans un package.

Étape 6 — Notes

Ajoutez des notes visibles sur le devis (conditions particulières, délais…). Les mentions légales sont automatiquement générées selon les paramètres configurés dans l'onglet « Notes légales ».

Étape 7 — TVA

Le régime de TVA est calculé automatiquement. Vérifiez le taux appliqué (21 %, 6 % rénovation, autoliquidation…) et ajustez si nécessaire selon le profil du client.

Étape 8 — Récapitulatif

Vérifiez l'ensemble du devis : lignes, prix, remises, TVA. Vous pouvez sauvegarder, générer le PDF, l'envoyer par email ou lancer la signature DocuSign. Le récapitulatif affiche aussi la marge globale (visible uniquement en interne).

2. Gérer le catalogue produits

Onglet 🗂️ Catalogue → 🔌 Bornes ou 🧩 Accessoires. Chaque produit doit être correctement renseigné pour garantir des devis fiables.

⚠️ Règle essentielle : le prix d'achat

Le champ « Prix d'achat HT (€) » est obligatoire pour chaque produit. Sans prix d'achat, le calcul de marge est impossible et l'onglet « Coût packs » affichera des valeurs incorrectes. Indiquez toujours le prix fournisseur réel.

Champs à renseigner :
Champ Description Obligatoire
MarqueNom du fabricant (Alfen, EVBox, Easee…)
CatégorieType de produit (borne, accessoire, câble…)
Nom / Modèle (FR)Nom français affiché sur le devis
Naam (NL) / Name (EN)Traductions pour devis en néerlandais ou anglaisRecommandé
Prix d'achat HTCoût fournisseur — base du calcul de marge
Taux de marge (%)Marge souhaitée (défaut : 35 %)
Prix de vente HTAuto-calculé = achat ÷ (1 − marge/100)Auto
Réf. fabricant / ERPRéférences pour traçabilité interneOptionnel
⭐ FavoriApparaît en premier dans le catalogue lors de la création de devisOptionnel
💡 Astuce : calcul automatique du prix

Modifiez le prix d'achat ou le taux de marge : le prix de vente se recalcule automatiquement. Vous pouvez aussi modifier directement le prix de vente, la marge se recalculera.

3. Articles d'installation & main-d'œuvre

Onglet 🗂️ Catalogue → 🔧 Main d'œuvre. Ces articles représentent les actions individuelles d'installation (tirage câble, mise en service, etc.).

⚠️ Heures de main-d'œuvre

Lorsque vous créez un article de main-d'œuvre (catégorie « labor »), renseignez impérativement le champ « ⏱ Heures MO (technicien) ». Ce temps est multiplié par le tarif horaire configuré dans les paramètres pour calculer le coût réel. Sans cette valeur, le coût de revient du pack sera sous-estimé.

⚠️ Prix d'achat des articles

Comme pour les produits, le prix d'achat doit être renseigné pour chaque article d'installation matériel. Pour les articles de MO, c'est le nombre d'heures qui détermine le coût.

Types d'articles :
Catégorie Unité Exemple
packforfaitPack installation standard — contient plusieurs composants
laborh (heure)Mise en service, tirage câble, paramétrage
additionalforfait / m / unitéCâble supplémentaire, percement béton
subscriptionmois / anContrat de maintenance, monitoring
💡 Option « Tarif senior »

Cochez « 👷 Disponible en tarif senior » sur un article horaire pour proposer deux tarifs (standard et senior) lors de la composition d'un pack. Les taux sont configurés dans Paramètres.

🔒 Articles réservés aux packages full

Cochez « Réservé aux packages full » si un article ne doit jamais apparaître directement dans la liste d'installation lors de la création d'un devis, mais uniquement être utilisé dans la composition d'un package full.

4. Packages d'installation

Onglet 🗂️ Catalogue → ⚡ Packages install. Un pack d'installation regroupe plusieurs articles pour proposer un forfait clé en main.

⚠️ Règle cruciale : lister les composants

Pour que l'onglet 📊 Coût packs calcule correctement la marge, vous devez ajouter tous les composants du pack via la section « 🔧 Composants du pack ». Sans composants listés, le coût de revient sera 0 € et la marge affichée sera fausse (100 %).

Composition d'un pack :
1. Informations générales

Nom (FR/NL/EN), prix de vente HT, prix d'achat HT, heures de MO.

2. Composants — Articles d'installation

Ajoutez chaque article matériel ou de prestation avec sa quantité. Cliquez « + Ajouter un composant installation ».

3. Composants — Accessoires produits

Ajoutez les produits accessoires inclus (Power Meter, câbles…). Utilisez « 🔌 Associer borne » si l'accessoire doit être compté dans le prix de la borne plutôt que dans l'installation.

4. Composants — Main-d'œuvre

Ajoutez les heures de travail : « 👷 Ajouter » (tarif standard) ou « 👷 Senior » (tarif senior). Chaque article de MO ajouté ici contribue au coût de revient via le tarif horaire.

5. Contenu inclus (description devis)

Le texte dans « Contenu inclus » apparaît sur le devis sous le nom du pack. Cliquez « ↺ Générer depuis composants » pour remplir automatiquement à partir des composants listés.

💡 Dupliquer un pack

Utilisez le bouton « 📋 Dupliquer » pour créer une copie d'un pack existant. La copie inclut tous les composants et peut être modifiée indépendamment de l'original.

5. Packages full (préconfigurations)

Onglet 🗂️ Catalogue → 📦 Packages full. Un package full combine une borne + un pack d'installation en une offre préconfigurée avec des prix éventuellement négociés.

Fonctionnement :
🔌 Sélection de la borne

Choisissez un produit de type « borne » dans le catalogue. Son prix de vente sera utilisé par défaut.

⚡ Sélection du pack d'installation

Associez un pack d'installation existant. Son prix de vente et son contenu inclus seront repris.

💰 Overrides de prix (surcharges)

Les champs « Override prix borne » et « Override prix installation » permettent de fixer un prix différent du prix catalogue. Utile pour les offres partenaires négociées. Si laissé vide, le prix catalogue s'applique.

📝 Override du contenu inclus

Vous pouvez remplacer la description d'installation standard par un texte personnalisé via « Override contenu inclus ». Utile si le package full inclut des prestations supplémentaires.

🏢 Association partenaires

Cochez les partenaires qui ont accès à ce package. Lors de la création d'un devis pour un partenaire donné, seuls les packages associés à ce partenaire seront proposés.

🏷️ Remise volume

Configurez un pourcentage de remise et un libellé de remise qui s'appliqueront automatiquement quand ce package est sélectionné dans un devis.

ℹ️ Calcul du prix total d'un package full

Prix total = (Override borne OU prix catalogue borne) + (Override install OU prix catalogue install) + accessoires non-borne

6. Traductions (NL / EN)

Onglet 🌐 Traductions. Gérez les traductions néerlandaises et anglaises de tous vos articles.

⚠️ Rappel important

Si un devis est généré en NL ou EN et qu'un article n'a pas de traduction, le nom français sera utilisé par défaut. Pour des devis professionnels, renseignez systématiquement les traductions NL et EN.

Éléments traduits :
🔌 Produits — Champs : name_nl, name_en
Articles d'installation — Champs : label_nl, label_en
📦 Packages full — Champs : label_nl, label_en
📡 Abonnements — Champs : label_nl, label_en
🧾 Mentions légales TVA — Autoliquidation, verlegging, etc. Les textes NL/EN sont pré-remplis mais éditables ici. Filtre rapide : type Mentions TVA.
💡 Remplissage automatique

L'onglet Traductions propose des boutons pour appliquer les traductions prédéfinies (dictionnaire intégré) et remplir automatiquement les termes techniques. Ces fonctions ne modifient que les champs vides — vos traductions manuelles sont préservées.

💡 Où renseigner les traductions ?

Vous pouvez saisir les traductions soit directement dans la fiche produit/article (champs NL et EN), soit via l'onglet 🌐 Traductions qui offre une vue consolidée de tous les éléments.

🌍 Auto-traduction NL/EN (v1.5.40)

Dans Admin → Données → carte « 🌍 Auto-traduction NL / EN », vous pouvez (1) scanner le catalogue (dry-run) pour lister les libellés sans traduction, ou (2) lancer l'auto-traduction qui passe par Claude Haiku pour remplir tous les name_nl / name_en / label_nl / label_en / includes_nl / includes_en manquants. Sûr — n'écrase aucune traduction existante. Coût ≈ 0,01 € pour 200 libellés. Limite 200 par appel — relancez si nécessaire. Une variable d'environnement ANTHROPIC_API_KEY doit être configurée côté serveur.

7. Vérification des marges

Onglet 📊 Coût packs. Visualisez le coût de revient et la marge de chaque pack et package full.

Lecture du tableau :
Colonne Signification
Coût matérielSomme des prix d'achat des composants matériels
Coût MOHeures × tarif coût horaire (standard ou senior)
Coût total (achat)Matériel + MO = coût de revient
Prix ventePrix affiché au client sur le devis
Marge (%)= (vente − achat) ÷ vente × 100
Code couleur des marges :
Vert : marge > 20 % — OK
Jaune : marge 10-20 % — Attention
Rouge : marge < 10 % — Alerte
⚠️ Marges à 0 € ou 100 %

Si la marge affiche 0,00 € ou 100 %, cela signifie généralement que les composants du pack ne sont pas renseignés ou que les prix d'achat des articles sont à zéro. Vérifiez la fiche du pack et ses composants.

💡 Différence sidebar vs. onglet Coût packs

La marge affichée dans la sidebar du devis inclut toutes les lignes (borne + install + options). L'onglet Coût packs analyse chaque pack individuellement avec le détail de ses composants. Les deux calculs sont cohérents mais leur périmètre diffère.

8. Partenaires & équipe

Onglets 🏢 Partenaires et 👥 Équipe & Accès.

🏢 Partenaires

Créez et gérez les profils partenaires (installateurs, revendeurs). Les partenaires sont associés aux packages full pour personnaliser les offres. Le profil partenaire sélectionné lors de la création d'un devis détermine les packages disponibles et peut pré-remplir les informations client.

💼 Facturation employé (B2B/B2C) — Cochez l'option dans la fiche partenaire/groupe pour permettre les devis à charge de l'employé. Sous-option « Masquer les prix des éléments couverts » : par défaut, les éléments du package sont affichés avec leur prix barré et la mention « ✓ Pris en charge par {entité} ». Cochez cette sous-option pour masquer entièrement quantités/prix sur le PDF — seule la mention « pris en charge » subsiste. Si l'option est cochée sur le groupe parent, toutes les filiales en héritent automatiquement.

💰 Prix dédiés (override par article) — Cochez l'option dans la fiche partenaire/groupe pour activer la grille de prix dédiés. Le partenaire apparaît alors dans chaque fiche article (Catalogue → modifier un produit) sous la section « Prix dédiés par partenaire » : vous pouvez y saisir un prix de vente spécifique qui remplacera le prix catalogue lorsqu'un devis est créé pour ce partenaire. Laissez vide pour utiliser le prix catalogue. Héritage : si vous définissez un prix sur un groupe, toutes ses filiales l'utilisent (sauf si elles ont leur propre prix dédié).

👥 Équipe & Accès

Gérez les membres de l'équipe, attribuez des codes PIN d'accès et configurez les permissions par onglet (catalogue, partenaires, paramètres, zone danger…). L'accès admin est protégé par un PIN à 4 chiffres.

🔒 Suppression sûre (soft-delete) — Lorsqu'un membre est supprimé via 🗑, il est marqué comme supprimé (champ _deleted_at) au lieu d'être effacé physiquement. Conséquences : (1) il disparaît immédiatement de la liste admin, du sélecteur de commercial et ne peut plus se connecter avec son PIN ; (2) la suppression se propage proprement aux autres PCs lors de la sync — un PC stale ne peut plus « ressusciter » un membre supprimé volontairement ; (3) les anciens devis qui référencent ce membre continuent d'afficher correctement son nom.

9. Paramètres & tarifs main-d'œuvre

Onglet 🛠️ Paramètres. Configurez les valeurs globales utilisées dans tous les calculs.

Paramètre Utilisation Défaut
Tarif horaire MO (vente)Prix facturé au client par heure de travail75 €/h
Tarif horaire MO senior (vente)Prix facturé pour un technicien senior95 €/h
Coût horaire MO (achat)Coût interne réel par heure — utilisé pour le calcul de marge35 €/h
Coût horaire MO senior (achat)Coût interne technicien senior45 €/h
💡 Impact des tarifs

Le tarif vente détermine le prix affiché sur le devis pour les articles horaires. Le coût achat est utilisé dans l'onglet « Coût packs » pour calculer la marge réelle. Veillez à maintenir ces deux valeurs à jour.

10. Synchronisation & conflits

Le deviseur travaille en temps réel sur un fichier partagé. Voici comment la synchronisation fonctionne et comment résoudre les conflits éventuels.

Sauvegarde automatique
Toute modification dans l'administration (produits, articles d'installation, main-d'œuvre, clients, paramètres…) est sauvegardée automatiquement dans le fichier partagé. Les modifications critiques du catalogue (ajout, suppression, archivage, import, révision de prix) déclenchent une écriture immédiate. Les modifications mineures (éditions inline) sont regroupées et écrites après un court délai (600 ms).
Chaque modification enregistre automatiquement le nom du deviseur et l'horodatage (modified_by / modified_at), permettant de tracer qui a modifié quoi.
Synchronisation entrante (pull)
Le deviseur recharge les données du dossier partagé toutes les 5 minutes automatiquement. Cela permet de voir les modifications faites par vos collègues sans recharger la page manuellement.
Détection de conflits
Lorsque vous sauvegardez, le système compare votre version locale avec celle du fichier partagé. Deux cas possibles :
Aucune différence réelle — La fusion est automatique et silencieuse. Les métadonnées (auteur, date de modification) ne comptent pas comme différences.
Différences détectées — Une fenêtre de conflit s'affiche avec le détail : champs modifiés, valeurs locales vs serveur, nom du deviseur à l'origine de chaque version, et horodatages respectifs.
Résoudre un conflit
La fenêtre de conflit vous permet pour chaque élément (client, produit, article d'installation) de choisir entre :
Garder la version locale (votre version)
Accepter la version du serveur (version d'un collègue)
Les badges colorés indiquent les champs qui diffèrent (nom, prix, description…) avec les valeurs et auteurs correspondants, pour vous aider à prendre la bonne décision.

Sélection par défaut : la version la plus récente selon l'horodatage modified_at est cochée automatiquement (badge 🕐). Vous pouvez toujours basculer manuellement vers l'autre version si nécessaire. Si l'une des deux versions n'a pas d'horodatage (ancien enregistrement), la version serveur est utilisée par défaut (badge ⚠ « Pas d'horodatage »).
💡 Conseil

Si vous travaillez à plusieurs sur le catalogue, communiquez avec vos collègues pour éviter de modifier les mêmes articles simultanément. En cas de conflit, prenez le temps de lire les détails avant de choisir — le système vous montre précisément ce qui diffère.

🔄 Forcer la synchro & CGV (mode web)
« 🔄 Forcer la synchro » dans Admin → Données pousse manuellement toutes les données locales (catalogue, équipe, partenaires, paramètres, CGV) vers le serveur. Utile après un import JSON ou si plusieurs onglets ont été ouverts. En mode web, l'auto-save est de toute façon déclenché à chaque modification, ce bouton sert surtout en cas de doute.

📄 CGV (FR / NL / EN) dans Admin → CGV : importez un PDF par langue. À partir de v1.5.39, les CGV sont persistées côté serveur et resynchronisées automatiquement entre tous les utilisateurs (avant cette version, elles disparaissaient au reload — bug).
11. Bonnes pratiques & checklist
Checklist avant de créer un devis :
Erreurs fréquentes à éviter :
Oublier le prix d'achat → Marge incalculable, contrôle de rentabilité impossible
Pack sans composants → Coût de revient = 0 €, fausse marge à 100 %
Article MO sans heures → Coût de main-d'œuvre = 0 dans le calcul de marge
Traduction manquante → Le nom français apparaît sur un devis NL/EN, aspect non-professionnel
Package full sans partenaire → Le package n'apparaît pour aucun client lors de la création d'un devis
🎯 Règle d'or

Un devis fiable repose sur un catalogue complet et à jour. Prenez le temps de vérifier les prix d'achat, les composants et les traductions avant de créer vos devis. L'onglet 📊 Coût packs est votre meilleur allié pour contrôler la rentabilité.

12. Vente internationale 🌍

Par défaut, le deviseur limite les pays client à Belgique, Luxembourg, Pays-Bas et France. Pour vendre à un client dans un autre pays (Italie, Espagne, Allemagne, etc.), activez l'option internationale sur sa fiche partenaire.

Activation sur la fiche partenaire

Dans Admin → Partenaires, ouvrez la fiche du client. Cochez 🌍 Autoriser les pays hors Benelux/France dans la section Général. Enregistrez la fiche.

Utilisation dans le deviseur

Dès que ce client est sélectionné dans le deviseur, les sélecteurs Pays client, Pays d'installation et Pays TVA proposent une liste étendue de 26 pays (UE + Suisse, Royaume-Uni, Norvège) avec drapeaux. La TVA est calculée automatiquement selon les règles intracommunautaires.

Règles TVA appliquées

Pays UE — B2B : Livraison intracommunautaire 0%, le preneur comptabilise la TVA dans son pays. Pays UE — Particulier : TVA du pays de destination (régime OSS). Hors UE : Exonération export 0% (art. 39 CTVA).

Ne pas activer l'option sans raison → Pour éviter toute confusion, laissez l'option désactivée pour les clients Benelux/France habituels.
13. Module Reporting — saisies sur serveur ☁️

Depuis la v1.7.8, le module 📈 Reporting ne stocke plus rien en local. Toutes les saisies (clôture comptable, téléphonie, provisions, reporting hebdo), toutes les coches et tous les imports (Pipedrive, facturation, finance, recouvrement, tickets D4) sont automatiquement sauvegardés sur le serveur — partagés entre tous les utilisateurs et persistants au reload.

☁️ Indicateur « Synchronisé »

En haut à droite du dashboard, un petit badge ☁️ Synchronisé indique en permanence l'état de la sauvegarde. Il passe en bleu « Sauvegarde… » pendant un push (debounce ~1.5 s après la dernière modification) et en rouge « Erreur sync » en cas de problème réseau (réessai automatique toutes les 5 s).

Plus de bouton « 💾 Sauvegarder »

L'ancien bouton (qui demandait un dossier data/ via un picker Chrome) a été supprimé. Vous n'avez plus rien à cliquer pour sauver — la moindre modification est captée et poussée vers le serveur. Les boutons 📄 Export Reporting (HTML lecture seule) et 📊 Export XLS restent disponibles si vous voulez exporter manuellement.

Au démarrage

À chaque ouverture du module Reporting, le dashboard charge l'état serveur et le ré-affiche. Si quelqu'un d'autre a modifié des données depuis votre dernière session, vous verrez la version la plus récente. Pour rafraîchir manuellement (par exemple si un collègue vient de sauvegarder), rechargez l'onglet du navigateur.

Sous le capot

Stockage : table Setting avec un blob JSON par catégorie (préfixe dashboard_state_*). Routes API : GET, PUT et DELETE sur /api/admin/reporting/state. Permission requise : module_reporting. Les imports binaires (xlsx/csv/zip/xml) sont stockés sur disque sous uploads/reporting/ via les routes /api/admin/reporting/files (déjà en place depuis la v1.7.5).

🌙 Thème dark fusionné (v1.7.9)

Quand vous entrez dans le module Reporting, la topbar zebdev passe en mode dark et fusionne avec le header sombre du dashboard. Plus de double bandeau : une seule barre continue, plus reposante visuellement pour des sessions d'analyse longues. Quand vous sortez du module, la topbar revient au thème clair habituel.

v1.7.11 — Activable sur d'autres modules : ouvrez le menu utilisateur (clic sur votre badge en haut à droite) et cochez les modules sur lesquels vous voulez la topbar en dark. La pref est mémorisée par poste/navigateur (localStorage). Reporting reste toujours en dark.

💾 Sauvegardes des données vitales

Les backups préservent vos produits, partenaires, équipe et paramètres. Les devis ne sont jamais inclus — ils peuvent être purgés séparément.
Un backup automatique est créé chaque jour à la première connexion du dossier. Les 15 backups les plus récents sont conservés dans data/backups/.

Sauvegardé dans : DEVISEURS ZEborne / data / backups /
📋 Backups disponibles
Chargement…
🖼️ Migration des images vers fichiers

Convertit les images stockées en base64 dans la base de données (articles, logos partenaires, logo ZEborne) en vrais fichiers .jpg / .png dans data - pas toucher / Images /.
Les nouvelles images uploadées sont déjà sauvegardées directement en fichier.

🧹 Consolider les fichiers data

OneDrive crée parfois des copies de conflit quand plusieurs machines écrivent simultanément dans data - pas toucher : admin_log-NOM-PC.json, db-NOM-PC.json
Cette action fusionne les entrées de journal manquantes dans admin_log.json et supprime les doublons (admin_log-*.json + db-*.json). db.json reste la source de vérité et n'est pas modifié.

⚠️ Zone de danger
🔢 Remettre le compteur de devis à zéro
Réinitialise le numéro global (counter.json). Le prochain devis créé recevra le numéro 0001.
🗑 Purger tous les devis
Supprime tous les fichiers JSON de devis dans le dossier partagé, vide le cache local, et remet le compteur à zéro. Irréversible.
📋 Journal des activités
Date / Heure Utilisateur Catégorie Action Détail
Aucune entrée pour l'instant.
✍️ Gestion des enveloppes DocuSign
Devis N° Client Destinataire Envoyé le Statut DocuSign Signé le Actions
Chargement…
🔍 JOURNAL API DOCUSIGN (persistant — cliquez une ligne du tableau pour filtrer)
Heure Opération Via Méthode HTTP Réponse (champs clés)
Aucun appel API enregistré dans cette session.
📡 Journal des appels API

Persistant — survit au rechargement de la page. Max 200 entrées par service. Tokens masqués.

Date / Heure Type Méthode Opération / URL HTTP Durée Détail / Erreur
Aucun appel API enregistré.
🌐 Vérification des traductions
Type ID 🇫🇷 Français 🇳🇱 Nederlands 🇬🇧 English Statut Actions
💰 Révision des prix
Type Libellé Unité Prix achat (€) Prix vente (€) Marge Actions
📊 Coût de revient des packs