Product & Technical Specification
Core Flows & Technical Requirements
Specifiche funzionali e tecniche per trasformare l’applicazione
in una piattaforma SaaS white-label, multi-store e multi-tenant,
configurabile per nuovi clienti e pronta per la commercializzazione.
Core Flows
I seguenti flussi rappresentano le funzionalità fondamentali
della piattaforma e devono funzionare completamente end-to-end.
Onboarding del nuovo cliente
Core
Al primo accesso il nuovo cliente deve poter configurare
autonomamente la piattaforma e trasformare il template
nel proprio prodotto branded senza necessità di modificare
manualmente il codice.
Flusso previsto
- Il cliente clona o attiva l’applicazione.
- Effettua il primo accesso come amministratore.
-
Il sistema verifica automaticamente se l’onboarding
è già stato completato. - Se l’account è nuovo viene avviato un wizard guidato.
- L’amministratore inserisce le informazioni del proprio brand.
-
Il sistema configura automaticamente
SiteContente gli Store iniziali. -
L’intera applicazione assume automaticamente
la nuova identità visiva e aziendale.
Informazioni richieste
- Nome del brand
- Logo principale
- Logo alternativo
- Favicon
- Palette colori
- Email aziendale
- Telefono
- Dominio principale
- Domini mittente email
- Store iniziali
- Dati aziendali
- Informazioni legali principali
Risultato atteso
Una volta completato l’onboarding, ogni pagina,
comunicazione e componente della piattaforma deve utilizzare
esclusivamente i dati dinamici configurati dal nuovo cliente.
Configurazione Multi-Store
Store Management
Ogni amministratore deve poter creare e gestire autonomamente
uno o più negozi o punti vendita fisici.
Dati configurabili per ogni Store
Nome Store
Città
Indirizzo
Telefono
WhatsApp
Orari
Mappa
Immagine
Sincronizzazione automatica
Gli Store creati o modificati dall’amministratore
devono comparire automaticamente:
- nella pagina pubblica Stores;
- nei form di acquisizione contatti;
- nei filtri del CRM;
- nei filtri delle Newsletter;
- nelle campagne WhatsApp;
- nelle segmentazioni marketing;
- nelle statistiche della piattaforma.
Gestione Contatti & Liste
CRM
Il CRM rappresenta il centro operativo della piattaforma
per la gestione dei clienti, lead e iscritti.
Acquisizione contatti
- Inserimento manuale
- Importazione massiva
- Form pubblici
- Newsletter subscription
- Acquisizione associata allo Store
Organizzazione e segmentazione
- Liste
- Store di provenienza
- Tag
- Consenso marketing
- Consenso newsletter
- Stato del contatto
- Data acquisizione
GDPR & Consent Management
Ogni contatto deve mantenere informazioni verificabili
relative ai consensi privacy e marketing.
Il sistema di disiscrizione deve essere realmente funzionante:
quando un utente utilizza il link presente nell’email,
il relativo stato deve essere aggiornato automaticamente
nel database.
Creazione e Invio Newsletter
Email Marketing
L’amministratore deve poter creare, programmare,
inviare e monitorare campagne email direttamente
dalla piattaforma.
Newsletter Editor
Layout commerciale tradizionale
Layout visuale ed editoriale
Layout essenziale e premium
Targeting
- Per lista
- Per Store
- Per segmento
- Per tag
- Per stato consenso
Invio
La newsletter deve poter essere:
- salvata come bozza;
- inviata immediatamente;
- programmata per una data e un orario specifici.
Tracking
Ogni operazione di invio deve generare un record
NewsletterSend
per consentire il monitoraggio delle campagne.
Campagne WhatsApp
Meta API
La piattaforma deve consentire la creazione e gestione
centralizzata delle campagne WhatsApp attraverso
template approvati da Meta.
Workflow
- Configurazione account WhatsApp Business.
- Configurazione dei template Meta.
- Importazione o sincronizzazione dei template.
- Mappatura delle variabili.
- Creazione della campagna.
- Selezione del pubblico.
- Invio dei messaggi.
- Tracking automatico dello stato.
Target
Liste
Store
Tag
Segmenti
Tracking messaggi
sent
delivered
read
failed
Tutti gli eventi devono essere registrati
nell’entità WhatsAppLog.
Automazioni & AI
AI
L’area amministrativa deve integrare strumenti dedicati
all’automazione delle attività marketing e all’utilizzo
dell’intelligenza artificiale.
Automation Plans
L’amministratore deve poter visualizzare e gestire
i piani di automazione disponibili per il proprio account.
AI Knowledge Center
Area dedicata al caricamento e all’analisi di documenti
utilizzabili come knowledge base aziendale.
AI Automation Planner
L’intelligenza artificiale deve poter analizzare
le informazioni disponibili e proporre:
- automazioni;
- segmentazioni;
- campagne;
- azioni marketing;
- possibili workflow.
Area Pubblica
Website
La piattaforma deve includere un sito pubblico
completamente dinamico e collegato alle informazioni
configurate dall’amministratore.
Funzioni pubbliche
- Visualizzazione informazioni aziendali
- Visualizzazione automatica degli Store
- Contatto diretto con l’azienda
- Iscrizione alla newsletter
- Registrazione consenso GDPR
- Disiscrizione tramite link email
02
Technical Requirements
Requisiti tecnici necessari per trasformare
l’applicazione in un prodotto realmente white-label,
configurabile, scalabile e sicuro.
01 — Eliminazione Branding Hardcoded
Rimuovere tutti i riferimenti hardcoded
al brand utilizzato nell’applicazione originale.
Tutte le informazioni devono essere recuperate
dinamicamente da SiteContent.
Layout
Home
About
Stores
Contact
Footer
Newsletter
Obiettivo
Nessun nome, logo, colore, indirizzo,
contatto o riferimento commerciale deve essere
scritto direttamente nel codice.
02 — Onboarding Entity & Wizard
Creare un’entità o sistema equivalente
per memorizzare lo stato dell’onboarding.
Onboarding
├── tenant_id
├── admin_id
├── brand_name
├── logo
├── favicon
├── primary_color
├── secondary_color
├── email_domain
├── whatsapp_number
├── onboarding_completed
└── completed_at
Al completamento del wizard,
il sistema deve creare o aggiornare automaticamente:
SiteContentStore- Brand configuration
- Impostazioni iniziali del tenant
03 — Configurazione Dinamica del Brand
Le principali caratteristiche del brand
devono poter essere modificate dal pannello amministrativo.
- Brand Name
- Logo
- Favicon
- Palette
- Telefono
- Email Sender
- Domini Email
- Informazioni aziendali
Design Tokens
La palette deve essere applicata attraverso
CSS Variables centralizzate in index.css.
:root {
--brand-primary: #000000;
--brand-secondary: #ffffff;
--brand-accent: #c7a86b;
--brand-background: #f8f8f8;
}
04 — Pulizia Seed & Demo Data
Eliminare qualsiasi dato hardcoded o auto-seeding
specifico dell’applicazione originale.
- Eliminare contatti reali.
- Eliminare Store reali.
- Eliminare dati aziendali reali.
- Eliminare riferimenti al brand originale.
- Eliminare campagne demo specifiche.
- Eliminare dati di test non neutri.
Template Clean Start
Ogni nuova installazione deve partire vuota
oppure utilizzare esclusivamente dati demo neutri,
facilmente eliminabili e chiaramente identificabili.
05 — Configurazione Email
Ogni tenant deve poter utilizzare
la propria identità email.
Devono essere configurabili:
- Nome mittente
- Email mittente
- Reply-To
- Dominio verificato
- Footer email
- Informazioni aziendali
L’integrazione email deve utilizzare
configurazioni specifiche per tenant
mantenendo sicure le API key.
06 — Configurazione WhatsApp
Ogni cliente deve poter collegare
il proprio account WhatsApp Business / Meta.
Devono essere gestibili:
- WhatsApp Business Account
- Phone Number ID
- Business ID
- Access Token
- Template Meta
- Webhook
Security
Token e credenziali non devono mai essere esposti
nel frontend o salvati in chiaro in entità accessibili
agli utenti.
07 — Documentazione
Creare un README.md completo
per permettere installazione, configurazione
e manutenzione della piattaforma.
Il README deve includere
- Setup iniziale
- Architettura dell’applicazione
- Lista delle entità
- Lista delle funzioni backend
- Variabili d’ambiente
- Secrets necessari
- Configurazione WhatsApp Meta
- Configurazione Resend
- Configurazione domini email
- Configurazione webhook
- Procedura deployment
Secrets principali
WHATSAPP_*
RESEND_API_KEY
08 — RLS & Multi-Tenant Security
Critical
La sicurezza multi-tenant rappresenta
un requisito fondamentale prima della
commercializzazione della piattaforma.
Data Isolation Requirement
Nessun cliente deve poter leggere,
modificare, interrogare o cancellare
dati appartenenti a un altro cliente.
Tenant ID
Tutte le principali entità devono essere
associate a:
tenant_id
Entità da proteggere
SiteContent
Store
Contact
List
Newsletter
NewsletterSend
WhatsAppCampaign
WhatsAppLog
Automation
KnowledgeDocument
Le policy RLS devono garantire che ogni richiesta
venga eseguita esclusivamente all’interno
del tenant autenticato.
Regola fondamentale
User → Tenant → Data.
Ogni query deve essere autorizzata
in funzione dell’appartenenza dell’utente
al relativo tenant.
03
Definition of Done
La piattaforma può essere considerata pronta
alla commercializzazione quando tutti
i seguenti criteri risultano verificati.
Un nuovo cliente può configurare il proprio brand
senza modificare codice.
Nessun riferimento al brand originale
rimane hardcoded.
Logo e palette sono completamente dinamici.
Gli Store sono configurabili e completamente dinamici.
CRM, liste e segmentazioni funzionano
separatamente per ogni tenant.
Newsletter e unsubscribe funzionano end-to-end.
WhatsApp registra correttamente
sent, delivered, read e failed.
Consensi e disiscrizioni vengono
registrati correttamente.
AI e automazioni sono tenant-aware.
I dati demo originali sono stati completamente rimossi.
La documentazione tecnica è completa.
RLS impedisce qualsiasi accesso cross-tenant.
04
Implementation Priority
Ordine consigliato per trasformare
l’applicazione nel prodotto SaaS vendibile.
| Priorità | Attività | Impatto |
|---|---|---|
| P0 | Multi-Tenant + RLS | Security Critical |
| P0 | Rimozione dati e branding hardcoded | Product Critical |
| P1 | Onboarding Wizard | Core Product |
| P1 | Brand Configuration | White Label |
| P1 | Multi-Store | Core Product |
| P1 | CRM / Lists / GDPR | Core Product |
| P1 | Newsletter End-to-End | Marketing |
| P1 | WhatsApp End-to-End | Marketing |
| P2 | AI & Automation | Advanced Features |
| P2 | README & Documentation | Distribution |
05
Target Architecture
Architettura logica finale prevista
per la piattaforma.
Cliente / Brand
SiteContent · Logo · Palette
Multi-Store
Contacts · Lists · Tags
Email · WhatsApp
Knowledge · Automation