Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Montants au format comptable #5

Open
tcharlss opened this issue Sep 5, 2022 · 4 comments
Open

Montants au format comptable #5

tcharlss opened this issue Sep 5, 2022 · 4 comments

Comments

@tcharlss
Copy link

tcharlss commented Sep 5, 2022

Une chose découverte en intégrant la lib pour intl : dans les factures, les montants devraient être affichés au format comptable.

Ils disent que c'est utile notamment pour les montants négatifs, qui doivent être mis entre parenthèse, sans signe négatif : -2.99$(2.99$).
Cela dépend peut-être de la langue, mais en tout cas la lib s'en charge très bien.

Cf. https://github.com/commerceguys/intl/#formatting-numbers

// The accounting style shows negative numbers differently and is used
// primarily for amounts shown on invoices.
$currencyFormatter->format('-2.99', 'USD', ['style' => 'accounting']); // (2.99$)

Et c'est de fait possible avec le plugin Intl (1) :

[(#PRIX*|montant_formater{#ARRAY{style,accounting}})]

C'est un peu verbeux tout de même, peut-être il faudrait compléter par un filtre dédié |montant_comptable ? (juste un raccourci vers montant_formater).


(1) Sauf si on a pas les bonnes extensions sur le serveur et que ça utilise le fallback.

@Cerdic
Copy link
Member

Cerdic commented Sep 5, 2022

heu "dans les factures, les montants devraient être affichés au format comptable." tu es sûr de ça ?

C'est pas parce que les américains font ça/doivent faire ça, que ce serait obligatoire en France, voire même légal.
Et pour moi c'est pas lié à la langue ni à la devise, mais au pays auquel l'entité qui émets la facture est rattachée. En tout cas, pour les factures des entités basées en France c'est extrêmement réglementé (et de fait ça doit être en français).

Selon mon expérience, les montants négatifs dans une facture en France sont toujours indiqué avec un signe négatif (et pas à la manière des bilans comptables entre parenthèse)

(je viens de vérifier sur une facture Free que j'avais sous la main et j'ai bien un -4.00€)

Donc si l'option 'accounting' applique le même formatage quel que soit le pays ça va pas le faire...
(si ils savent quoi faire selon le pays, ils sont forts et je dis bravo !)

@tcharlss
Copy link
Author

tcharlss commented Sep 5, 2022

Donc si l'option 'accounting' applique le même formatage quel que soit le pays ça va pas le faire...
si ils savent quoi faire selon le pays, ils sont forts et je dis bravo !

Eeeeet la réponse est... oui.
Le formatage comptable dépend de la locale.
Et comme locale, beh on met ce qu'on veut : celle par défaut du site, ou bien une spéciale pour les factures.

C'est testable sur la page de démo du plugin prix (qui aurait dû être déplacée dans intl d'ailleurs) : spip.php?page=demo/prix

Tu choisis le prix négatif, le format compatble, et ensuite tu testes avec les différentes locales (j'ai mis « langues » pour simplifier mais c'est des locales langue+région,).

Certaines mettent des parenthèses (en-GB / anglais britannique), d'autres non (de / allemand).
Avec le français ils gardent les parenthèses, ça je sais pas si c'est une erreur, ou si les 2 sont acceptés, faudrait vérifier.

Mais voilà, dans l'idée, s'il y a un format comptable possible et bien pris en charge par la lib selon la locale souhaitée, je vois pas de raison de s'en passer.

@tcharlss
Copy link
Author

tcharlss commented Sep 5, 2022

J'attends le bravo bien sûr.

@Cerdic
Copy link
Member

Cerdic commented Sep 5, 2022

Ah ben je dis bravo :)

(mais quand même ça me chagrine d'avoir des nombres entre parenthèses sur les factures FR, ça me semble pas du tout l'usage et j'ai peur que ce soit un "par défaut" calqué sur les anglo-saxons pour les pays pour lesquels ils savent pas, donc ça mérite vérification)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants