Perché è la funzione più delicata
Un cliente B2B conosce il proprio prezzo a memoria. Se il portale gliene mostra uno diverso — anche di poco, anche in meglio — succedono due cose: telefona al commerciale, e smette di fidarsi dello strumento. Recuperare quella fiducia costa molto più che costruire bene la funzione all'inizio.
La gerarchia dei prezzi
| Livello | Esempio | Priorità |
|---|---|---|
| Listino base | Prezzo di catalogo | La più bassa |
| Listino assegnato al cliente | Listino rivenditori, listino installatori | Sostituisce il base |
| Sconto di categoria merceologica | -15% su tutta una famiglia | Si applica sopra il listino |
| Condizione negoziata sul singolo articolo | Prezzo bloccato da contratto | Prevale su tutto |
| Scaglione per quantità | Da 50 pezzi, prezzo ridotto | Si applica sul risultato |
| Promozione a tempo | Valida in una finestra di date | Da decidere se prevale o no |
L'ultima riga è quella che va decisa esplicitamente: se una promozione generale sia migliorativa o meno rispetto a un prezzo già negoziato è una scelta commerciale, e va scritta prima di sviluppare — altrimenti la decide il codice, a caso.
Dove vivono i listini
| Approccio | Come funziona | Rischio |
|---|---|---|
| Prezzo calcolato dal gestionale in tempo reale | Il portale chiede il prezzo al gestionale a ogni visualizzazione | Dipende dalla disponibilità del gestionale; serve una cache |
| Listini replicati nel portale e sincronizzati | Copia periodica delle tabelle prezzi | Divergenza tra i due sistemi: succede sempre, prima o poi |
| Prezzi inseriti a mano nel portale | Gestione separata | Certezza di disallineamento; sostenibile solo con pochi clienti |
La regola pratica: il gestionale resta l'unica fonte del prezzo. Il portale può conservarne una copia per velocità, ma la copia deve avere una scadenza breve e il prezzo va riverificato al momento in cui l'ordine viene confermato.
La riverifica alla conferma d'ordine è il dettaglio che risolve la maggior parte dei problemi: anche se il prezzo mostrato in catalogo fosse leggermente vecchio, quello che entra nell'ordine è sempre quello valido, e l'eventuale differenza viene mostrata al cliente prima che confermi.
I casi limite che vanno decisi prima
Domande da porre alla direzione commerciale, non allo sviluppatore
- Un cliente senza listino assegnato cosa vede: il prezzo base, nessun prezzo, o non accede?
- Un articolo fuori listino per quel cliente è nascosto o visibile senza prezzo?
- Gli scaglioni si calcolano sulla riga, sull'ordine o sul cumulato del periodo?
- Le promozioni prevalgono sulle condizioni negoziate?
- Il prezzo è al netto o al lordo, e in che valuta per i clienti esteri?
- Chi ha più utenti sotto lo stesso cliente vede tutti lo stesso prezzo?
- Cosa succede se il prezzo cambia tra il carrello e la conferma?