Cahier des charges des calculs

Tarificateur · Situation financière · Trésorerie

Ce document décrit exactement ce que calcule la plateforme, dans l'ordre où elle le calcule, avec les formules telles qu'elles sont écrites dans le code. Il sert de référence commune : si un chiffre surprend, c'est ici qu'on vérifie d'où il vient.

MOBI CONCEPT · Plateforme de gestion · Version V106 · Mis à jour le 21/09/2026 · Usage interne

Sommaire

Partie A — Le Tarificateur du prix au m² au prix de vente client A.1 · Les grandeurs de départ A.2 · Le coût d'un hébergement, unité par unité A.3 · Les services : revient et facturé A.4 · Le prix de vente d'un modèle A.5 · Du modèle au projet : les totaux A.6 · La commission ambassadeur — pourquoi elle ne fait pas de marge A.7 · TVA, remise et arrondis A.8 · PAC en option et synthèse revient | facturé Partie B — Situation financière ce dont nous disposons, ce que nous devons B.1 · La trésorerie disponible B.2 · Les créances : rentrées par chantier B.3 · Les engagements : charges par chantier et dettes B.4 · Position nette — et pourquoi ce n'est pas de la trésorerie B.5 · La marge par chantier Partie C — Le plan de trésorerie 18 mois, mois par mois C.1 · Le solde de départ C.2 · Les entrées C.3 · Les sorties C.4 · Le cumul et le point bas Partie D — Qui peut modifier quoi Partie E — Le contrôle de cohérence

Partie A — Le Tarificateur

Le tarificateur part des caractéristiques d'un hébergement et produit un prix de vente client. Tout passe par une fonction, calc(modèle), appliquée à chaque modèle du projet, puis par totals() qui consolide.

A.1 · Les grandeurs de départ

GrandeurComment elle est obtenue
surf — surfaceLongueur × largeur, ou saisie manuelle si elle est renseignée. Un hébergement composé de plusieurs modules additionne la surface de chaque module.
nb — nombre d'unitésSaisi dans le modèle (nbunit). C'est lui qui multiplie tout.
module — prix de la caisseSi un prix forfaitaire est saisi, il l'emporte. Sinon : surface × prix au m².
// prix de la caisse, par unité module = (prixForfait > 0) ? prixForfait : surf × prixM2

A.2 · Le coût d'un hébergement, unité par unité

Le coût de construction d'une unité rassemble la caisse, les meubles, les postes de finition, un éventuel supplément producteur, et déduit le bardage s'il n'est pas posé.

// coût de construction, par unité constrU = module + meubles + finitions + supplémentMSP − remiseSansBardage // coût du lodge tel qu'il entre dans le prix coutLodge = constrU + commission + commissionAmbassadeurParUnité

A.3 · Les services : revient et facturé

Chaque service a deux montants, tous deux saisis à l'unité : ce qu'il nous coûte (revient) et ce qu'on le facture. L'écart entre les deux est de la marge.

// par unité servRevU = transport + installation + grutage + pieux + terrasses + scénographie + raccordements + aménagements + mobilier + PAC + pack déco + options libres (revient) servFactU = les mêmes postes en version « facturé » + options libres (facturé) // pour le modèle entier servRevTot = servRevU × nb servFactTot = servFactU × nb
Le transport peut être automatique. S'il est calculé par la grille (départ → destination), c'est ce montant qui sert de revient ; sinon c'est la valeur saisie. L'écran indique lequel des deux s'applique.

La terrasse 16 m² est un cas particulier : elle ajoute 7 000 € au prix facturé par unité, sans revient associé — elle est donc intégralement de la marge.

A.4 · Le prix de vente d'un modèle

// par unité pvU = coutLodge + servFactU + terrasse16 + meublesÉquipementsFacturés // pour le modèle pvMod = pvU × nb prMod = constrU × nb + servRevTot + meublesÉquipementsRevient × nb // marge du modèle margeCommission = commission × nb margeServices = (servFactU − servRevU) × nb + terrasse16 × nb + (meqpFacturé − meqpRevient) × nb margeModèle = margeCommission + margeServices
Ce que la marge du modèle ne contient pas : la commission ambassadeur. Elle est dans le prix de vente (via coutLodge) et dans le prix de revient, donc son effet sur la marge est nul.

A.5 · Du modèle au projet : les totaux

// somme sur tous les modèles utilisés pr = Σ prMod + AMO_revient + meublesMobiConcept pvBrut = Σ pvMod + AMO_facturé margeBrute = Σ margeCommission + Σ margeServices + (AMO_facturé − AMO_revient) // après réduction commerciale pvNet = pvBrut − remise marge = margeBrute − remise − meublesMobiConcept taux = marge ÷ pvNet × 100
Poste du projetEffet
AMO & conseilsRevient et facturé saisis séparément. L'écart est de la marge.
Meubles & Équip. Mobi ConceptPrix de revient à notre charge : il augmente le prix de revient et diminue la marge, sans apparaître au prix de vente.
Réduction commercialeSe déduit du prix de vente et de la marge, euro pour euro.
Commission ambassadeurNeutre sur la marge. Voir A.6.
Conséquence à connaître. Une remise de 10 000 € ne coûte pas 10 000 € de chiffre d'affaires : elle coûte 10 000 € de marge. Sur une offre à 15 % de marge, une remise de 10 000 € efface la marge de près de 67 000 € de vente.

A.6 · La commission ambassadeur

Elle est saisie dans la zone MOBI CONCEPT du projet global (ou dans l'assistant), après avoir choisi l'ambassadeur dans la liste (Alban, Jeremy, Jean Louis, Eric, Julien), selon deux modes :

Dans les deux cas, c'est ce total qui est utilisé partout. Il est ensuite :

commissionParUnité = commissionTotale ÷ nombre total d'unités du projet
  1. intégrée au coût du lodge, donc au prix facturé au client — elle n'apparaît jamais en tant que ligne sur le devis client ;
  2. comptée aussi dans le prix de revient, puisqu'elle sera reversée ;
  3. donc neutre sur la marge de Mobi Concept : elle transite.
Contrôle intégré. L'écran de vérification teste l'égalité prix de vente = prix de revient + marge + ambassadeur. Un écart signale une saisie incohérente.

A.7 · TVA, remise et arrondis

A.8 · PAC en option et synthèse revient | facturé

Partie B — Situation financière

Cet écran ne saisit rien : il rapproche des données déjà entrées ailleurs. C'est important pour comprendre d'où vient un écart — il vient toujours de la saisie, jamais du rapprochement.

B.1 · La trésorerie disponible

trésorerieDisponible = Σ soldes des comptes bancaires − réserve TVA

Les six comptes de référence sont affichés dans cet ordre, avec leur entité et leur pays :

OrdreCompteEntité
1Belfius🇧🇪 Mobi Belgique
2Belfius🇫🇷 Mobi France
3Belfius🇱🇺 CBS
4Qonto🇫🇷 Mobi France
5Vivid Money🇱🇺 CBS
6Crelan🇧🇪 Mobi Belgique
Pourquoi déduire la TVA. Les soldes bancaires sont TVA comprise : ils contiennent de la TVA déjà encaissée sur des dossiers passés, qui sera reversée à l'État. La réserve TVA la retire pour ne garder que ce qui nous appartient réellement. Elle n'est donc jamais recomptée du côté des engagements — ce serait la compter deux fois.
Un compte non reconnu n'est jamais masqué. Une ligne bancaire dont le libellé ne correspond à aucun des six comptes est affichée à part et comptée dans le total. Le contrôle de cohérence la signale pour qu'on la renomme au format « Banque — Entité ».

B.2 · Les créances — rentrées par chantier

Un chantier est soit facturé globalement, soit découpé en tranches (acompte, livraison, solde).

// montant d'une tranche montantTranche = montant saisi, sinon contrat × pourcentage de la tranche // ce qui est encaissé encaissé = Σ des paiements enregistrés sur la tranche (à défaut : le montant entier si la tranche est cochée « payée ») resteÀPercevoir = max(contrat − encaissé, 0)

Les honoraires & commissions du pipe commercial s'ajoutent aux créances.

B.3 · Les engagements

// par chantier, en regroupant par fournisseur coût = Σ montants des tranches fournisseurs payé = Σ paiements enregistrés resteÀPayer = max(coût − payé, 0) // dettes hors chantier soldeDette = max((CBS + MOBI BE + MOBI FR) − Σ paiements, 0) ENGAGEMENTS = Σ resteÀPayer + Σ soldeDette
Le lien entre les deux colonnes se fait par le NOM du chantier. C'est le seul lien. Si un chantier s'appelle « Camping du Lac » côté recettes et « Camping-du-Lac » côté charges, les deux ne se rejoignent pas : les charges tombent à zéro et la marge paraît totale. Le contrôle de cohérence le dit.

B.4 · Position nette

RESSOURCES = trésorerie disponible + créances (chantiers + honoraires) ENGAGEMENTS = restes à payer chantiers + solde des dettes fournisseurs positionNette = RESSOURCES − ENGAGEMENTS
La position nette n'est pas de la trésorerie. Elle suppose que 100 % des créances seront encaissées, et n'a donc de sens que si les chantiers vont à leur terme. Le chiffre à regarder pour savoir si l'on peut payer cette semaine, c'est la trésorerie disponible.

B.5 · La marge par chantier

margeChantier = contrat − coût engagé tauxDeMarge = margeChantier ÷ contrat
Règle de prudence appliquée depuis la V106 : si un chantier a un contrat mais aucune charge saisie, sa marge n'est ni affichée ni comptée dans le total. Elle vaudrait mécaniquement 100 % et fausserait la marge globale. L'écran affiche « charges non saisies » et le contrôle de cohérence nomme le chantier concerné.

Partie C — Le plan de trésorerie

Il projette 18 mois, mois par mois, de juillet 2026 à décembre 2027.

C.1 · Le solde de départ

soldeInitial = Σ soldes des comptes bancaires − réserve TVA

C'est exactement la même base que la trésorerie disponible de la Partie B. Les deux écrans ne peuvent donc pas diverger.

C.2 · Les entrées

C.3 · Les sorties

LigneMéthode
Charges mensuellesDéduites chaque mois. Deux modes : « Plan » (le montant du budget) ou « Simulation » (un montant que l'on fixe). Un mois précis peut être corrigé à la main — c'est ainsi qu'on réajuste les charges déjà réglées.
Remboursement d'empruntCapital mensuel de la configuration, corrigeable mois par mois.
Dettes fournisseursSolde restant dû, placé au mois de son échéance.
Provisions achats équipementsPour les projets à livrer.
Décaissements de chantierTranches fournisseurs, au mois prévu.
Sorties ponctuellesSaisies à la main.

C.4 · Le cumul et le point bas

soldeDuMois(m) = entrées(m) − sorties(m) cumul(m) = soldeInitial + Σ soldeDuMois(1…m) trésorerieFin2026 = cumul(décembre 2026) pointBas = le plus petit cumul de la période, et le mois où il tombe
Le point bas est l'indicateur qui compte. Une trésorerie confortable en fin d'année n'empêche pas un mois à découvert en cours de route. C'est ce mois-là qu'il faut préparer.

Partie D — Qui peut modifier quoi

ProfilVoitModifieSoldes bancaires
DirectionToutTout sauf charges et salaires (réservés nominativement)✅ Oui
GestionTout sauf budget et salairesOui❌ Non
Comptabilité
comptabilite@ · isabelle.janssen@
Situation financière, Trésorerie, Contrôle de cohérence, Synthèse CA Oui — dont les charges passées❌ Non
CommercialPipe commercial et DoublonsOui, sans aucune marge à l'écran❌ Non
Analyste · CAConsultation du pilotageNon❌ Non
Correction apportée en V106. Jusqu'à la V105, les soldes bancaires étaient visibles par tout profil ayant le droit de modifier — gestion et commercial compris — alors qu'ils avaient été annoncés comme réservés à la direction. C'est désormais le cas.

Le profil Comptabilité a été créé pour que Geoffroy, Isabelle et Domoina puissent faire évoluer les charges passées et fiabiliser les perspectives de trésorerie, sans accéder aux soldes bancaires ni au business plan.

Partie E — Le contrôle de cohérence

Il tourne à chaque affichage de la Situation financière. Il ne corrige rien : il dit d'où vient un écart.

Ce qu'il vérifieCe que ça veut dire
Un chantier a un contrat mais aucune chargeSa marge serait de 100 %. Le plus souvent, les deux côtés ne portent pas le même nom.
Un chantier a des charges sans recetteIl consomme de la trésorerie sans contrepartie enregistrée.
Encaissé supérieur au contratUn avenant non reporté, ou un encaissement saisi deux fois.
Payé supérieur au coûtUne tranche fournisseur manque, ou un paiement est en double.
Un compte de référence sans soldeLe total bancaire est incomplet.
Une ligne bancaire non reconnueElle est comptée, mais elle mérite d'être renommée.
Deux chantiers du même nomIls seront fusionnés ou comptés deux fois selon l'écran.
La règle à retenir. Tant que le contrôle affiche un point à vérifier, les totaux ne sont pas faux : ils sont incomplets. La différence compte — un total incomplet bouge dès qu'on complète la saisie, et c'est ce qui donne l'impression que « les chiffres changent d'une version à l'autre ».
MOBI CONCEPT — Cahier des charges des calculs — V106 — 21/09/2026 — usage interne