Aller au contenu

Facturation (taux horaires)

Tickr valorise le temps tracké via une cascade à 4 niveaux et fige le taux résolu sur chaque entrée à son arrêt — c’est le snapshot.

  • La devise est une par workspace, choisie à l’activation, et immuable une fois la première entrée valorisée.
  • Les taux sont éditables à tout moment ; les entrées déjà figées ne sont pas recalculées.
  1. Settings → Facturation → Activer.
  2. Choisissez la devise (ISO 4217, ex. EUR, USD, CHF).
  3. Optionnellement, saisissez un taux par défaut du workspace — il s’appliquera à tout projet/membre sans taux propre.

À partir de là, les nouvelles entrées portent is_billable=true par défaut (modifiable par entrée et par projet).

Pour chaque entrée à valoriser, Tickr résout le taux en suivant cet ordre. Le premier taux non-null gagne :

  1. Taux du membre sur le projet (project_members.hourly_rate).
  2. Taux du projet (projects.hourly_rate).
  3. Taux du membre dans le workspace (workspace_members.hourly_rate).
  4. Taux par défaut du workspace (workspaces.hourly_rate).

Si les 4 niveaux retournent null, l’entrée est créée avec billable_rate_snapshot = NULL (statut pending). Dès qu’un taux est configuré à un niveau qui s’applique, un re-snapshot automatique met à jour ces entrées pending.

Tous depuis Settings → Facturation :

  • Workspace — taux par défaut, devise.
  • Membres — taux par membre (override de la valeur workspace).
  • Projets — taux par projet (override des deux précédents).

Pour le taux d’un membre sur un projet spécifique : Projet → Onglet Rates → ligne du membre → Éditer.

À l’arrêt d’un timer (ou à la création d’une entrée close), Tickr stocke sur l’entrée :

  • billable_rate_snapshot — taux résolu à cet instant.
  • billable_currency_snapshot — devise du workspace à cet instant.

Ces colonnes sont immuables. Changer un taux n’affecte que les entrées futures et les entrées pending. C’est volontaire : votre facturation ne doit pas se mettre à dériver parce qu’un taux a changé hier.

  • Modifier is_billable d’une entrée déjà arrêtée : recalcule le snapshot via la cascade courante (bascule false → true) ou efface (true → false).
  • Modifier la description / le projet / les horaires : ne touche pas au snapshot.
RôleVoit les tauxVoit les revenus
Owner / AdminOui partoutOui détaillés
Project Lead (manager)Oui sur ses projetsOui sur ses projets
AnalystNonTotaux workspace uniquement
Workspace UserNonNon