Aller au contenu principal

Rapports

Base path: /api/reporting

Tous les endpoints de rapports nécessitent l'authentification Admin.

GET /reporting/sales-summary

Chiffre d'affaires total de toutes les commandes POS.

Response: { "total_sales": 12450.00 }


GET /reporting/booking-count

Nombre total de rendez-vous créés.

Response: { "booking_count": 384 }


GET /reporting/item-breakdown

Top 10 produits et top 10 services par chiffre d'affaires POS.

Query parameters: from (date), to (date)


GET /reporting/staff-performance

Chiffre d'affaires, rendez-vous terminés et note moyenne par employé.

Query parameters: from, to

[
{
"id": 2,
"name": "Lisa",
"revenue": 3200.00,
"booking_count": 48,
"avg_rating": "4.7",
"review_count": 22
}
]

GET /reporting/retention

Analyse de fidélisation : clients récurrents, liste de désabonnement, fréquence de visite moyenne.

Query parameters: from, to, churn_days (défaut : 90)


GET /reporting/heatmap

Nombre de rendez-vous par jour de la semaine et heure pour une heatmap des heures de pointe.

Response: Tableau de { day, hour, count }. day utilise DAYOFWEEK() de MariaDB : 1=Dimanche, 2=Lundi, ..., 7=Samedi.


GET /reporting/forecast

Prévision de chiffre d'affaires basée sur les rendez-vous planifiés.

Query parameters: days (défaut : 30)


GET /reporting/promotions

Statistiques d'utilisation des promotions.

Query parameters: from, to


GET /reporting/gift-cards

Vue d'ensemble des cartes cadeaux : vendues/valeur et solde en cours.

Query parameters: from, to


Filtrage par date

Tous les endpoints acceptent from et to au format AAAA-MM-JJ. to est traité comme la fin de journée (23:59:59).