Une régie municipale qui vend des billets pour ses spectacles et ateliers en ligne n’a rien d’un e-commerçant classique aux yeux de sa propre comptabilité : chaque transaction doit pouvoir se rattacher à un numéro de bon de commande, être exportée dans un format compatible avec le logiciel de comptabilité publique de la collectivité, et respecter des règles d’encaissement propres à la gestion des régies de recettes.
Ce projet, mené pour une régie municipale gérant la billetterie d’un théâtre et de plusieurs ateliers culturels, a nécessité d’adapter WooCommerce sur deux points précis que le e-commerce privé classique ne rencontre jamais : la numérotation des bons de commande et l’export comptable vers le logiciel métier de la collectivité.
Comprendre la contrainte de la régie de recettes
Une régie de recettes, statut juridique encadrant l’encaissement de fonds publics par une collectivité, impose un suivi précis de chaque encaissement, distinct du fonctionnement d’un commerce privé où le rapprochement bancaire suffit généralement. Chaque vente doit être traçable individuellement, avec un numéro de pièce justificative propre au référentiel de la collectivité, pas seulement le numéro de commande WooCommerce standard.
Générer un numéro de bon de commande conforme
La numérotation WooCommerce native (identifiant de post auto-incrémenté) ne correspond pas au format attendu par le logiciel comptable de la collectivité, qui exige généralement un format structuré incluant l’exercice budgétaire et un compteur séquentiel remis à zéro chaque année :
function generer_numero_bon_commande(WC_Order $order): string
{
$annee = date('Y');
$compteur = (int) get_option('compteur_bon_commande_' . $annee, 0) + 1;
update_option('compteur_bon_commande_' . $annee, $compteur);
$numero = sprintf('BC-%s-%05d', $annee, $compteur);
$order->update_meta_data('_numero_bon_commande', $numero);
$order->save();
return $numero;
}
add_action('woocommerce_checkout_order_processed', function ($order_id) {
$order = wc_get_order($order_id);
generer_numero_bon_commande($order);
});

Adapter l’export vers la comptabilité publique
Le format d’export attendu par le logiciel de la collectivité impose généralement des colonnes précises : numéro de bon de commande, code de nature de recette (imputation budgétaire propre à la nomenclature comptable publique M14 ou M57 selon la collectivité), montant hors taxes et taxes séparément même pour des recettes souvent exonérées de TVA dans le cadre d’un service public culturel.
- Prévoir un export CSV planifié, généralement quotidien ou hebdomadaire selon le rythme de traitement du service comptable
- Vérifier avec le service comptable de la collectivité le format exact attendu avant tout développement, chaque collectivité ayant ses propres exigences de format selon son logiciel
- Ne jamais supposer que la TVA s’applique de la même façon qu’en e-commerce privé, certaines recettes de service public culturel bénéficiant de régimes spécifiques
Ce qui reste hors du périmètre technique
La procédure de délibération autorisant la création de la régie de recettes, ou les règles précises de nomenclature comptable applicables (M14, M57), relèvent de décisions administratives et budgétaires de la collectivité, à valider en amont avec le service comptable avant toute implémentation technique. Le rôle du développeur se limite à traduire ces règles, une fois précisées, dans la structure de données WooCommerce.
Sur ce projet, la première réunion avec le service comptable de la régie a permis d’éviter des semaines de développement inutile : le format d’export initialement envisagé ne correspondait pas du tout à ce qu’attendait le logiciel comptable réellement utilisé par la collectivité.
En résumé
Adapter WooCommerce à une régie municipale demande avant tout de dialoguer tôt avec le service comptable de la collectivité pour cerner ses contraintes précises de numérotation et d’export. Une fois ces règles identifiées, l’implémentation technique reste raisonnable : un compteur séquentiel par exercice budgétaire et un export planifié au format attendu couvrent l’essentiel du besoin.