La mécanique des rubriques
Fiche fonction. Cette page explique en détail une fonction de calcul de la paie — ici, la grammaire commune à toutes les Rubriques de paie : les assiettes, ce que chaque rubrique y verse, et la lecture des colonnes du bulletin. Pour la vue d’ensemble, revenez à La paie.
Une rubrique déclare, le moteur exécute
Section intitulée « Une rubrique déclare, le moteur exécute »Aucun calcul de rubrique n’est caché dans le code : chaque Rubrique de paie déclare sa nature (gain, retenue, cotisation, non soumis), son mode de calcul (montant saisi, heures × taux, pourcentage d’une assiette…), l’endroit où vit sa règle (taux fixe, matrice CPS, barème à tranches, barème d’ancienneté, grille salariale) — et le moteur les exécute toutes, dans l’ordre d’affichage. Cet ordre n’est pas cosmétique : c’est l’ordre de calcul. Les pas sont espacés (100, 110, 120…) pour insérer une rubrique sans renuméroter.
Les assiettes : « Cumulé (±) dans » et « Base de calcul »
Section intitulée « Les assiettes : « Cumulé (±) dans » et « Base de calcul » »Tout se joue sur un couple de champs, un qui verse, un qui lit :
- Cumulé (±) dans — les assiettes que cette rubrique alimente. C’est
une liste de noms, séparés par des virgules (
brut,cps,cst,salaire) : le montant de la ligne est versé dans chacune. Un gain (ou un non soumis) ajoute ; une retenue ou une cotisation retranche — c’est le (±) du libellé. - Base de calcul — l’assiette que cette rubrique lit pour calculer. Une cotisation en pourcentage fait : assiette lue × taux.
Une assiette est un nom commun aux deux bouts — et ce nom se déclare
dans le référentiel Assiette de paie (carte Barèmes et valeurs, ou le
bouton Nouvelle assiette sur la fiche de la rubrique) : un code (minuscules,
chiffres, tirets bas), un libellé, une description. Seule une assiette déclarée
peut être nommée sur une rubrique : la Base de calcul se choisit dans la
liste, le Cumulé (±) dans s’écrit toujours à la main mais un nom inconnu est
refusé à l’enregistrement, en le nommant — salaire_bse n’est plus une
assiette silencieusement vide, c’est une faute de frappe signalée.
Le plan de paie livré en valeurs par défaut déclare huit assiettes :
| Assiette | Ce qu’elle rassemble | Qui l’alimente / qui la lit |
|---|---|---|
brut |
le brut du mois | tous les gains, et les retenues qui nettent le brut |
cps |
l’assiette CPS | les mêmes ; lue par les rubriques CPS |
cst |
l’assiette CST-S | les mêmes ; lue par la CST-S |
conges |
le brut congés | les mêmes ; lue par l’indemnité de congés payés |
salaire |
salaire de base et heures supplémentaires | base des trentièmes et des paniers |
salaire_base |
le seul salaire de base, sans heures sup | lue par la prime d’ancienneté, livrée d’office (voir Prime d’ancienneté) |
maintien |
le salaire maintenu d’un jour de congés payés — salaire de base, ancienneté, primes régulières | alimentée par le salaire de base et les primes qui le déclarent ; lue par l’indemnité et la retenue de congés payés |
base_hs |
le taux horaire des heures supplémentaires d’un mensualisé : salaire de base et majoration du férié travaillé | alimentée par le salaire de base et le férié travaillé ; lue par les heures supplémentaires (voir Heures supplémentaires) |
Dire qu’une prime « cotise », c’est exactement : ajouter cps,cst à son
Cumulé (±) dans — les cotisations, placées plus loin dans l’ordre,
trouveront son montant dans leurs assiettes.
Besoin d’une assiette sur mesure ? Déclarez-la (Nouvelle assiette), puis écrivez son nom des deux côtés. Exemple : votre convention calcule une prime sur le seul salaire de base, sans les heures supplémentaires ni les autres primes —
salaire_baseest déjà déclarée (c’est celle que lit la prime d’ancienneté livrée) : choisissez-la en Base de calcul de votre propre rubrique. C’est tout.
Le piège classique : croiser les deux champs. La Base de calcul attend une assiette, jamais un code de rubrique — une prime dont la base pointerait
SALB(un code) lirait une assiette que personne n’alimente et sortirait à zéro ; la liste déroulante ne vous le laisse plus faire. Et une rubrique au Cumulé (±) dans vide ne verse nulle part : ni le brut ni les cotisations ne la verront. Symptôme typique : la ligne apparaît à 0, ou les cotisations ignorent votre prime.
Après une mise à jour qui apporte le référentiel : les rubriques déjà en place continuent de calculer (le moteur lit les noms, pas le référentiel), mais une rubrique ne se ré-enregistre qu’une fois les assiettes déclarées — un clic sur l’installation des valeurs par défaut les crée, et le tableau de bord vous le signale.
Une case à part : Salaire de référence des IJ. Elle ne nourrit aucune assiette de cotisation : elle dit qu’une ligne compte dans le salaire « en conditions normales de travail » que la CPS rembourse pendant un arrêt maladie — salaire de base (cochée d’office), prime d’ancienneté, primes régulières. Voir la section « Les indemnités journalières sur le bulletin » de la fiche Arrêts de travail.
Lire une ligne de bulletin
Section intitulée « Lire une ligne de bulletin »Toutes les lignes parlent la même grammaire à quatre notions :
| Colonne | Sens | Salaire de base | Heures sup 25 % | Prime d’ancienneté | Cotisation maladie |
|---|---|---|---|---|---|
| Quantité | ce qu’on compte | 164 h | 8 h | 21 ans | — |
| Base | ce sur quoi le taux s’applique | 4 330 (l’heure) | 4 330 (l’heure) | 710 120 | 907 958 |
| Taux | le pourcentage appliqué | 100 | 125 | 21 (le palier) | 4,98 |
| Montant | le résultat | 710 120 | 43 300 | 149 125 | 45 216 |
Sur le bulletin imprimé, le Montant se lit dans deux colonnes scindées par la nature de la rubrique — Gain salarial (gains et non soumis) ou Retenue salariale (retenues et cotisations) — complétées du Taux patronal % et du Montant patronal pour les cotisations employeur ; une cellule vide vaut zéro (une cotisation à part patronale seule n’affiche rien côté salarié) ; la ligne Totaux en pied porte le brut, le total des retenues et le total patronal, chacun sous sa colonne.
Une ligne horaire se vérifie à l’œil : Quantité × Base × Taux — le taux horaire en Base (c’est un prix unitaire, en francs), le taux de calcul en Taux, majoration comprise (100 pour l’heure normale, 125 pour une heure à +25 %, 150 à +50 %). C’est la même règle pour une cotisation (assiette × %) et pour la prime d’ancienneté, qui utilise les trois à la fois : les années en Quantité (l’entrée du barème), le taux du palier, appliqué à la Base. La Base s’imprime à 2 décimales (« 2 248,52 »), la Quantité à 2 (« 22,50 »), le Taux à 3 (« 125,000 ») ; la colonne N° en tête de ligne porte le code de la rubrique.
Le mode d’arrondi se règle par rubrique. Par défaut, une ligne s’arrondit au plus proche (0,5 vers le haut). Le salaire de base des salariés payés à l’heure est réglé au franc supérieur : c’est ce que demande le Code du travail pour une rémunération mensuelle obtenue en multipliant un taux horaire par une durée. Les autres rubriques, dont les heures supplémentaires, restent au plus proche — vous réglez le champ Arrondi de votre propre rubrique si votre besoin diffère.
Une rubrique horaire peut aussi porter un tarif fixe : règle « taux fixe » et Montant pour le diviseur d’heures (6 000 pour 169 h = 35,50 F l’heure) — pour une indemnité tarifée à l’heure (frais de télétravail, paniers…), en nature non soumis s’il s’agit d’un remboursement ; le prix ne dépend pas des heures du salarié.
Le remboursement du travail hors site ne se désigne pas sur la rubrique, mais sur son type (voir Congés et absences, section « Travail hors site ») : une rubrique n’est reliée qu’à un type, qui choisit aussi son unité (heures ou jours).
Les bulletins calculés avant août 2026 portent l’ancienne présentation des lignes horaires (taux horaire dans Taux, Base vide) : un bulletin ne se réécrit jamais, il s’imprime comme il a été calculé.
Chaque ligne porte aussi sa Version de règle : la cellule de matrice, la version de barème ou la provenance du taux horaire qui a servi. Tout bulletin se rejoue à la main — colonne par colonne, franc par franc.
Une ligne par rubrique, ou une par saisie ?
Section intitulée « Une ligne par rubrique, ou une par saisie ? »Quand plusieurs éléments nourrissent la même rubrique le même mois — deux primes, un permanent complété d’une exception — le bulletin n’affiche par défaut qu’une ligne, avec leur somme. Les commentaires imprimés, eux, se suivent : on lit pourquoi, pas combien chacun.
Cochez Détailler par élément sur la rubrique pour obtenir une ligne par saisie, chacune avec son montant et son commentaire, dans l’ordre où vous les avez saisis. C’est un réglage par rubrique : utile sur les primes et les rappels manuels, rarement sur les heures ou les absences, où c’est le total du mois qu’on veut lire.
La case est refusée sur une rubrique qui calcule son propre montant — cotisations et autres pourcentages (ils valorisent une assiette cumulée, il n’y a pas de part par élément), salaire mensuel du contrat, indemnité de congés, absences, maladie, avances et saisies-arrêts. Les détailler imprimerait la même ligne calculée plusieurs fois. (Les avances et saisies-arrêts sortent déjà une ligne par dossier.)
Les rubriques à barème à tranches (CST-S) ont leur propre case, Détailler par tranche : une ligne par tranche franchie, la tranche en Base et son taux en Taux (voir Cotisations).
Sur une rubrique calculée (horaire, trentièmes), l’arrondi se fait ligne par ligne : le total détaillé peut différer d’un franc du total fusionné. Sur un montant que vous saisissez, aucun écart possible.