What problem does it solve? Modifying Toollab's statistics module without breaking financial invariants is risky: encaissé vs exonéré amounts, enrollment counters, and family payment statuses must satisfy strict sum rules, and several endpoints share query helpers with their Excel exports. This Skill captures those invariants, known pitfalls, and page structures so changes stay consistent. ## Core Features & Use Cases - Endpoint reference: Documents the 9 StatisticsController endpoints (overview, unpaid families, payments, exports, trends), which ones are actually consumed by the front, and their filter parameters. - Calculation invariants: Defines the rules that must never break (encaissé ≠ exonéré, men+women+children == total, paid+partially+fully == total, no hardcoded amounts). - Known issues and fixes: Lists unvalidated parameters causing 500 errors (page, per_page), in-memory pagination performance constraints, and legacy JSON fallbacks to preserve. - Use Case: When asked to add a new indicator to the /statistiques dashboard or fix an export, consult this Skill to respect the shared query helpers and avoid reintroducing hardcoded tariff amounts. ## Quick Start Use the statistiques skill to add a new payment-type filter to the payments endpoint and its Excel export while keeping the calculation invariants intact.