API di FlavosoGuideReport

Report

Fatturato per giorno, settimana o mese e vendite per piatto, con le stesse regole dei numeri della dashboard.

Report del fatturato

GET /reports/sales richiede reports:read e accetta questi parametri:

ParametroSignificato
from, toGiorni di calendario (YYYY-MM-DD) nel fuso orario del locale, al massimo 366 giorni. Per ottobre: from=2026-10-01&to=2026-10-31.
group_byday, week, month o total.

La risposta indica currency, timezone, il periodo, totals su tutto e buckets per ogni intervallo. Ogni intervallo ha gli stessi campi:

CampoSignificato
period_start, period_endL'intervallo.
ordersNumero degli ordini che contano.
gross, net, taxFatturato lordo e netto e l'imposta, in centesimi.
tipsMance. Non sono fatturato e sono indicate a parte.
delivery_fees, service_feesSpese di consegna e costi del servizio.
discountsSconti, per esempio dalla tessera fedeltà.
by_tax_ratePer aliquota rate_bps, gross, net, tax; una quota senza aliquota registrata con rate_bps: null e net e tax come null.
by_payment_methodSuddiviso per online e on_site.
by_typeSuddiviso per pickup, delivery, dine_in.
cancelledOrdini annullati: numero e lordo, a parte.

La forma esatta di ogni campo è nel riferimento.

# October by day, in the restaurant's local time
curl "https://api.flavoso.com/v1/reports/sales?from=2026-10-01&to=2026-10-31&group_by=day" \
  -H "Authorization: Bearer $ACCESS_TOKEN"

# The whole year as one total (at most 366 days per request)
curl "https://api.flavoso.com/v1/reports/sales?from=2026-01-01&to=2026-12-31&group_by=total" \
  -H "Authorization: Bearer $ACCESS_TOKEN"

Cosa conta

Si conta con le stesse regole dei numeri della dashboard, con somme calcolate nel database e non ricavate dagli elenchi. Un ordine online non pagato non conta mai; gli ordini annullati non sono nel fatturato, ma a parte sotto cancelled. Un giorno è il giorno di calendario del locale nel suo fuso orario.

Vendite per piatto

GET /reports/products?from=…&to=…&limit=… restituisce i piatti più venduti di un periodo, ordinati per quantità, con quantità e lordo: { "object": "list", "data": [{ "product_id", "name", "quantity", "gross" }] }. limit accetta da 1 a 100 (predefinito 25); non c'è paginazione, has_more dice solo se ci sono altri piatti. Si conta come per il fatturato, senza annullamenti. Un piatto eliminato compare con product_id: null e il suo nome dagli ordini.

# The 20 best-selling dishes of October
curl "https://api.flavoso.com/v1/reports/products?from=2026-10-01&to=2026-10-31&limit=20" \
  -H "Authorization: Bearer $ACCESS_TOKEN"

Riconciliazione con la cassa o la contabilità

  • Una volta al giorno, dopo la mezzanotte nel fuso orario del locale, recupera il giorno precedente.
  • Confronta lordo, imposta per aliquota e mance con la tua chiusura per il canale Flavoso.
  • Le differenze nascono di solito da ordini annullati dopo la presa in carico o da mance registrate come fatturato.
  • Per la contabilità: group_by=month e by_tax_rate danno i numeri per aliquota.

Qualcosa non è chiaro? Scrivi a support@flavoso.com indicando l'identificativo di X-Request-Id. Così troviamo la tua richiesta nel registro.