Comment fonctionne la reconnaissance du chiffre d’affaires, des PCA et FAE ?

Pour calculer le chiffre d’affaires reconnu sur une période donnée (un mois, un trimestre, une année), ainsi que les montants de PCA (produit constaté d’avance) et de FAE (factures à établir) à la fin de cette période, nous calculons d’abord séparément les contributions individuelles de chaque ligne de facture à ces différents éléments avant de les agréger.

Dans ce qui suit, on considère :

  • une facture (comportant une ou plusieurs lignes de factures)

  • une pĂ©riode de temps (un mois, un trimestre, une annĂ©e) sur laquelle on souhaite reconnaitre le chiffre d’affaires et les montants de PCA et de FAE Ă  la fin de cette pĂ©riode

Et on appelle:

  • invoice_date la date d’émission de la facture

  • line_item_period_start et line_item_period_end les dates de dĂ©but et de fin de pĂ©riode de service associĂ©es Ă  une ligne de facture

  • period_start et period_end les dates de dĂ©but et de fin de la pĂ©riode de temps considĂ©rĂ©e

  • amount le montant HT de la ligne de facture après dĂ©duction de toute remise ou avoir

  • line_item_period_intersection_length la durĂ©e de l’intervalle de temps commun Ă  la pĂ©riode de service de la ligne de facture et Ă  la pĂ©riode de temps sur laquelle on souhaite reconnaĂ®tre le CA

Pour une ligne de facture ponctuelle:

Contribution au chiffre d’affaires sur la période :

  • amount si invoice_date est compris entre period_start et period_end

  • 0 sinon

Contribution aux montants de PCA et FAE toujours nulle

Pour une ligne de facture récurrente:

Contribution au chiffre d’affaires sur la période :

`recognized_revenue` = `amount` * `line_item_period_intersection_length` / (`line_item_period_end` - `line_item_period_start`)

Contribution aux montants de PCA et FAE de fin de période :

On note cumulated_recognized_revenue la valeur cumulée de ces contributions sur l’ensemble des périodes précédant la période considérée (incluse).

ConditionPCAFAE

invoice_date < period_end

amount - cumulated_recognized_revenue

0

invoice_date > period_end

0

cumulated_recognized_revenue

Dernière mise à jour