Preventivi Portale

Guida

Che cosa fa ogni schermata, cosa ci devi fare e la trappola che quella schermata ha. Le trappole non sono generiche: sono i guasti che sono già capitati qui.

Preventivi

Tutti i preventivi generati dagli utenti della web-app. Dettaglio/modifica apre le voci esatte del preventivo; invia lo manda al cliente via email.

Utenti web-app

Chi può generare preventivi: accesso con un link via email (nessuna password). Solo le email registrate qui ricevono il link.

Utenti della web-app accesso con magic link

La license key lega l'utente alla licenza del suo cliente (dal wizard "Nuova licenza" su Licenses): se scaduta o assente, l'accesso viene bloccato o avvisato secondo la configurazione.

Import massivo

Una riga per utente: email,nome

Magic link recenti

Registro attività

Caricamenti, indicizzazioni, gestione utenti, magic link, equivalenze: in ordine di tempo.

Premi «Aggiorna registro» per caricare le attività.

Caricamento listini

Carica un file: l'OCR estrae i prezzi e la KB si aggiorna. La card si libera subito, l'elaborazione continua in background e l'indicizzazione parte da sola a coda svuotata.

Nuovo caricamento

Trascina qui i file o fai clic per sceglierli Qualsiasi formato: XLSX, PDF, DOC/DOCX, CSV… — selezione multipla

I file oltre 14 MB vengono caricati direttamente nello storage (con avanzamento) ed elaborati a pagine — nessun limite di dimensione. Richiede la CORS del bucket impostata (una tantum, vedi runbook).

Dati & copertura listini

Quali listini sono caricati a catalogo: brand, prezzi, numero di prodotti e job di ingestione recenti.

Premi «Verifica copertura» per vedere quali listini sono caricati a catalogo. Lo stato della Knowledge Base è in «Indicizzazione KB».

Indicizzazione KB

Lo stato dell'indice che l'agente interroga, file per file.

Stato indicizzazione

Il reindex è non distruttivo e serializzato: un solo job per volta, così l'agente resta interrogabile.

Premi «Visualizza KB» per lo stato per-file dell'ultimo indexing job.

Storico listini

Cronologia dei caricamenti listino: brand, data listino, prodotti aggiornati, esito.

Premi «Mostra storico».

Listini concorrenza

I prodotti dei concorrenti, con la provenienza di ogni prezzo. Archivio separato dal tuo catalogo: queste righe non possono finire in un preventivo.

Chi, quanto, da quando

«Con prezzo» non è un dettaglio: un listino estratto male dà righe senza prezzo, e un totale che le conta insieme alle altre dice «400 prodotti del concorrente» quando i prezzi utilizzabili sono dodici. È lo stesso motivo per cui il preventivo distingue «da quotare» da zero.

Premi «Aggiorna» per vedere i concorrenti caricati.

Indirizzi sorvegliati

Un indirizzo per concorrente, che il sistema scarica da sé con la cadenza che scegli. Deve puntare al file del listino (pdf, xlsx, csv, doc), non a una pagina: una pagina non è un listino e viene rifiutata dicendolo. Non c'è nessun crawler che gira il web — un prezzo senza fonte non si può né verificare né aggiornare, e qui ogni riga acquisita porta l'indirizzo da cui viene.

Prodotti

Separazione dal catalogo

Fino al 03/10/2026 un caricamento di concorrenza finiva in products, il tuo catalogo: il motore poteva proporre e prezzare un articolo del concorrente, e sullo stesso brand+SKU il suo prezzo sovrascriveva il tuo. I nuovi caricamenti non ci entrano più; quelli già entrati si portano fuori da qui. L'anteprima non scrive niente, e le righe spostate vengono disattivate, non cancellate. Un brand caricato sia come listino tuo sia come concorrenza resta nel catalogo e viene elencato fra gli «ambigui»: va deciso a mano.

Equivalenze competitor

Corrispondenze fra prodotti concorrenti e catalogo interno (la logica "Coca/Pepsi"): dataset gestito qui ed esportabile.

Nuova equivalenza

Nota: il collegamento all'agente/KB è uno step separato: «Pubblica nella KB dell'agente».

Equivalenze

Prezzi & margini

Prezzi a catalogo e regole di sconto applicate al preventivo.

Prodotti modifica il prezzo a catalogo

Cerca per brand o testo per modificare i prezzi.

Regole di pricing sconti e margini applicati in fase di preventivo

Applicate dal Pricing Engine: prezzo × (1−sconto) × (1+margine). Vince la più specifica per brand/categoria/tipo cliente con priorità minore.

Condizioni commerciali

Sconti fornitore, pagamento e resa per brand. Si compilano da sole quando carichi le «Condizioni commerciali.doc»; qui le correggi. Costo netto = prezzo di listino × moltiplicatore netto.

Condizioni per brand

Adeguamenti listino

Variazioni percentuali da lettera fornitore (es. +5% dal 01/04): si applicano al prezzo base senza riscrivere i listini, attive dalla decorrenza.

Nuovo adeguamento

Adeguamenti attivi

Margini per prodotto

Prezzo di listino (con adeguamenti), costo netto interno (catena sconti) e margine.

Mostra il margine per brand (richiede condizioni commerciali caricate).

Consumi

Token e costo reali di questo ambiente dal registro dei consumi di TWIZA Licenses. Si popola quando il provisioning gateway è attivo (vedi RUNBOOK_provisioning.md).

Consumo per operazione

—

Settori

Come il preventivatore capisce i prodotti di un mercato: attributi, sinonimi, prompt dell'agente. Un nuovo settore si crea qui, senza toccare codice, e poi si assegna a un tenant.

Settori attivi

—

Impostazioni

Contatti, logo, tema, email e limiti di questo ambiente: tutto parametrizzabile, niente hardcode.

Contatti e documenti

Fascia di prezzo proposta

Fra più prodotti equivalenti, quale il motore mette nel preventivo. Non cambia i listini: cambia quale riga viene scelta. Era deciso nel codice.

«Fascia alta» non prende mai il pezzo fuori scala (la vasca finita fra i miscelatori): scarta i candidati oltre il triplo della mediana del gruppo.

Una riga per tipo, valore | etichetta (o solo etichetta). La prima riga è di solito l'auto-rilevamento. Es. bagno: progetto | Progetto architetto; elettronica: datasheet | Scheda tecnica.

Logo filigrana export Word/PDF

Carica il logo (PNG/JPG/WebP): diventa il logo di filigrana negli export. Se non caricato, gli export funzionano senza filigrana.

Tema del preventivatore aspetto della web-app cliente

Colori e font della web-app cliente (index.html) per questo ambiente. Lascia un campo vuoto per usare il tema TWIZA di default. Le modifiche sono visibili al prossimo caricamento della web-app.

Titolo di esempio
Testo secondario di esempio.
Pulsante

Email di invio preventivo modificabile e brandizzabile

HTML dell'email che riceve il cliente. Segnaposto: {{logo}} {{brand}} {{brand_color}} {{client_name}} {{quote_url}} (link al PDF) {{total}} {{contact_email}} {{contact_url}}. {{quote_table}} inserisce il preventivo inline (opzionale — di default si manda il link al PDF).

Limiti preventivi per utente

Un utente privato può generare fino al limite indicato (default 3); un professionista è illimitato. Il tipo è legato all'account (login), non aggirabile dal form.

—

Diagnostica

Stato di microservizio, licenze e agente AI di questo ambiente.

Servizi dell'ambiente

Premi «Verifica servizi».

Playground agente

Interroga l'agente con i listini attuali senza generare un preventivo: utile per validare la KB dopo un caricamento.

Domanda di prova non consuma il limite degli utenti

Suggerimenti