Prezzo unitario e vendita a peso: documentazione DataFirefly Unit Price
Installazione, impostazioni, contenuto dei prodotti, vendita al peso scelto, pezzi a peso effettivo e pesatura, editor massivo, CSV e risoluzione dei problemi.
Installazione
Installa il modulo da Moduli > Gestione moduli > Carica un modulo con il file ZIP, oppure copia la cartella dfunitprice nella directory /modules/ del negozio e fai clic su Installa.
All’installazione, il modulo crea tre tabelle (contenuti, modalità di vendita, pesature degli ordini) e registra i suoi hook. Non aggiunge voci di menu: tutto si imposta dalla pagina di configurazione del modulo, dalla scheda Moduli della pagina prodotto e dalla pagina dell’ordine.
Impostazioni del modulo
La pagina di configurazione raccoglie, dall’alto in basso, l’editor massivo, le impostazioni, l’elenco dei pezzi da pesare, gli strumenti e il rapporto di conformità.
Prezzo unitario dei pesi e dei volumi
Scegli l’espressione predefinita: per 1 kg o per 100 g, per 1 litro o per 100 ml. Le lunghezze sono sempre espresse al metro, le superfici al m², i volumi sfusi al m³. Ogni prodotto può modificare questa scelta.
Paesi che impongono 1 kg e 1 litro
Codici ISO separati da virgole, DE di default. Per un visitatore di questi paesi, il prezzo unitario è sempre espresso per 1 kg, 1 l, 1 m, 1 m² o 1 m³, come richiede la PAngV tedesca, anche se altrove hai scelto 100 g.
Visualizzazione e posizioni
- Mostra nella scheda prodotto e Posizione nella scheda prodotto: il prezzo unitario passa dall’hook nativo
displayProductPriceBlock. La posizioneafter_price(sotto il prezzo) va bene per Classic e i temi derivati. Cambiala solo se il tuo tema non richiama quella posizione. - Mostra negli elenchi di prodotti e Posizione negli elenchi: categorie, ricerca, marchi, caroselli. Posizione
unit_pricedi default. - Mostra nel carrello: sotto il prezzo di ogni riga.
- Formato: «12,90 € / kg» o tra parentesi.
- Testo prima del prezzo unitario: facoltativo e traducibile, per esempio «Prezzo al kg».
Nascondi se uguale al prezzo di vendita
Una confezione da 1 kg venduta al kg ripete lo stesso importo. Alcuni paesi consentono di non mostrarlo in questo caso: verifica la regola del tuo paese prima di attivare l’opzione.
Nascondi il prezzo unitario nativo del tema
Evita il doppione nella scheda prodotto quando il tema mostra anche il campo nativo.
Scrivi nei campi nativi di PrestaShop
Il modulo aggiorna il prezzo unitario nativo, la sua etichetta di unità (per esempio «/ kg») e l’impatto per combinazione. I moduli di feed per Google Shopping o marketplace che leggono questi campi ricevono così il valore corretto.
Rimborso minimo dei pezzi a peso effettivo
Sotto questa differenza IVA inclusa su un ordine, non viene creata alcuna nota di credito. Lascia 0 per rimborsare ogni differenza.
Categorie in cui il prezzo unitario è obbligatorio
Serve solo al rapporto di conformità, che elenca i prodotti attivi di queste categorie senza contenuto.
Inserire il contenuto di un prodotto
Apri la pagina prodotto, scheda Moduli, blocco Prezzo unitario e modalità di vendita. Il blocco si salva con il proprio pulsante Salva il prezzo unitario, indipendentemente dal modulo del prodotto.
- Contenuto netto e Unità: 750 g, 1,5 l, 2,5 m, 12 m² o un pezzo. Lascia vuoto per non mostrare il prezzo unitario.
- Prezzo unitario espresso per: per pesi e volumi, sostituisce l’impostazione del modulo su questo prodotto.
Sotto i campi, una riga verde mostra durante la digitazione il prezzo unitario calcolato con il prezzo attuale. Dopo il salvataggio, un’anteprima riporta il prezzo IVA inclusa senza sconto, il contenuto e il prezzo unitario ottenuto.
Combinazioni
Compila solo le combinazioni il cui contenuto differisce dal prodotto, per esempio 250 g, 500 g e 1 kg. Una combinazione senza valore usa quello del prodotto. L’unità «Come il prodotto» usa l’unità del prodotto. Le combinazioni create dopo l’apertura della pagina compaiono dopo averla ricaricata.
Il calcolo
Il prezzo unitario è il prezzo mostrato al cliente diviso per il contenuto, riportato al riferimento scelto. Segue la visualizzazione IVA inclusa o esclusa del gruppo del cliente, i prezzi specifici e gli sconti. Nel carrello usa il prezzo della riga.
Vendita al peso scelto dal cliente
Scegli la modalità Il cliente sceglie la quantità. Il contenuto diventa la dimensione di un passo e il prezzo del prodotto diventa il prezzo di un passo. Esempio: passo di 100 g a 2,50 €, un cliente che sceglie 700 g aggiunge 7 passi al carrello per 17,50 €.
- Minimo e Massimo, nell’unità di base (g, ml, cm, m², m³): ogni valore deve essere un multiplo del passo. Il massimo è facoltativo.
- Pulsanti di quantità: valori separati da punto e virgola, per esempio
250; 500; 1000, ognuno multiplo del passo e compreso tra minimo e massimo. - Consenti una quantità libera: mostra il selettore +/- con inserimento diretto. Senza pulsanti di quantità, l’inserimento libero è sempre visibile.
Nella scheda prodotto, il campo quantità del tema è sostituito da questo selettore, con i limiti e il totale in tempo reale. Il selettore funziona anche nella vista rapida degli elenchi e conserva il peso scelto quando il cliente cambia combinazione.
Cosa gestisce il modulo al posto tuo
- La quantità minima nativa del prodotto e delle sue combinazioni è sincronizzata in numero di passi.
- Il massimo è applicato lato server: una quantità superiore aggiunta al carrello viene riportata al massimo.
- La riga dell’ordine diventa «Caffè (700 g)» nel back office, in fattura e nell’e-mail di conferma.
Lo stock resta contato in passi, perché PrestaShop non gestisce quantità decimali. Con un passo di 100 g, inserisci 50 per 5 kg in stock. Il blocco della scheda prodotto ricorda questa conversione.
Pezzo a peso effettivo
Scegli la modalità Pezzo a peso effettivo per i prodotti il cui peso esatto si conosce solo alla preparazione: carne, formaggio al taglio, pesce.
- Peso medio di un pezzo: è il contenuto, per esempio 1,2 kg. Il prezzo del prodotto è quello di un pezzo di quel peso.
- Pezzo più leggero e Pezzo più pesante: facoltativi, mostrati al cliente come intervallo. L’intervallo deve includere il peso medio.
Nella scheda prodotto, un riquadro «Venduto a peso effettivo» spiega la regola al cliente: un pezzo più leggero viene rimborsato della differenza, un pezzo più pesante non costa nulla in più. La riga dell’ordine diventa «Costata (circa 1,2 kg)» o «(2 × circa 1,2 kg)».
Pesare un ordine
Nella pagina dell’ordine, il pannello Pesi effettivi elenca ogni riga interessata con il peso stimato e l’importo pagato.
- Inserisci il peso effettivo totale di ogni riga, tutti i pezzi inclusi, in kg (in l per un volume, in m per una lunghezza).
- Il rimborso di ogni riga e il totale si calcolano durante la digitazione. Un peso che si discosta di oltre il 50 % dalla stima mostra un avviso, spesso un errore di unità (1200 invece di 1,2).
- Scegli se inviare l’e-mail al cliente e il buono, poi fai clic su Conferma i pesi e conferma.
Il rimborso di una riga più leggera è proporzionale: importo pagato × (1 − peso effettivo / peso stimato). Una riga più pesante non dà alcun rimborso e non viene mai addebitata in più.
Cosa viene creato
- Una nota di credito PrestaShop per il totale delle differenze, visibile nei documenti dell’ordine. Il suo PDF elenca le righe e una tabella «Rettifica al peso effettivo».
- Un buono dello stesso importo se la casella è selezionata, riservato al cliente e valido un anno.
- Un’e-mail al cliente nella sua lingua con i pesi stimati, i pesi effettivi e l’importo rimborsato.
La fattura dell’ordine riporta una nota che spiega la vendita a peso stimato e la rettifica tramite nota di credito. Il cliente vede i pesi effettivi anche nel dettaglio dell’ordine, nel suo account.
La nota di credito registra il rimborso ma non restituisce il denaro. Se non dai un buono, rimborsa l’importo tramite il tuo fornitore di pagamento. Una pesatura confermata è definitiva. La nota di credito riprende la quantità della riga perché il PDF nativo mostri l’importo corretto: PrestaShop considera quindi questi pezzi già rimborsati, e un rimborso successivo di queste righe si fa per importo tramite il tuo fornitore di pagamento.
Ordini da pesare
La pagina di configurazione elenca gli ordini che contengono ancora pezzi da pesare, dal più vecchio al più recente, con un link diretto a ogni ordine. Gli ordini annullati, in errore o rimborsati non compaiono.
Editor massivo
In alto nella pagina di configurazione, l’editor massivo mostra i prodotti in pagine da 50, filtrabili per categoria, per nome, riferimento o ID, e limitati di default a quelli ancora senza contenuto.
- I contenuti scritti nel nome o nel riferimento sono rilevati e precompilati, con la dicitura «Rilevato». Le confezioni sono moltiplicate («6 x 33 cl» dà 198 cl), le dimensioni come «40×60 cm» ignorate.
- Modificare un valore seleziona la riga. Il prezzo unitario si calcola in tempo reale.
- Seleziona le quantità rilevate seleziona in una volta tutte le righe precompilate della pagina.
- Compila anche le combinazioni il cui nome contiene una quantità: una combinazione «Peso – 500 g» riceve 500 g, senza sovrascrivere un valore già inserito.
Svuotare il contenuto di una riga selezionata rimuove il contenuto del prodotto. I prodotti venduti a peso o a peso effettivo sono in sola lettura nella tabella: modificali dalla loro scheda.
Importazione ed esportazione CSV
Il blocco Esporta CSV produce una riga per prodotto e per combinazione, per tutto il catalogo o una categoria. Colonne: id_product, id_product_attribute, reference, name, net_quantity, unit, reference_unit.
L’importazione accetta il separatore ; o ,. Le colonne net_quantity e unit sono obbligatorie, insieme a id_product o reference (riferimento del prodotto o della combinazione). Unità: g, kg, ml, cl, l, mm, cm, m, m2, m3, unit. reference_unit accetta 1kg, 100g, 1l o 100ml. Un net_quantity vuoto rimuove la riga. Gli errori sono elencati con il numero di riga senza bloccare le altre.
Strumenti e rapporto di conformità
Risincronizza ora ricalcola i campi nativi e le quantità minime di tutti i prodotti configurati. Usalo dopo un’importazione massiva di prezzi, o quando dipendenti senza accesso al modulo modificano i prodotti: PrestaShop non esegue gli hook di un modulo per un profilo che non ha il permesso di vederlo.
Il rapporto di conformità indica il numero di prodotti configurati ed elenca fino a 300 prodotti attivi senza contenuto nelle categorie obbligatorie, con un link alla loro scheda.
Risoluzione dei problemi
Il prezzo unitario non compare nella scheda prodotto
Verifica che il prodotto abbia un contenuto e che la visualizzazione nella scheda sia attiva. Se il tema non richiama la posizione after_price, scegli price o weight nelle impostazioni.
Il prezzo unitario compare due volte
Attiva Nascondi il prezzo unitario nativo del tema. Se il doppione resta, il tuo tema usa un’altra classe CSS per quel blocco: contattaci con il nome del tema.
Il campo quantità resta visibile su un prodotto venduto a peso
Il tema usa un markup della quantità non standard. Il peso scelto è comunque rispettato lato server (minimo e massimo). Contattaci con il nome del tema per un adattamento.
Il prezzo nativo non è aggiornato dopo un’importazione di prezzi
Fai clic su Risincronizza ora.
Compatibilità
- PrestaShop da 8.0 a 9.x, lo stesso ZIP copre entrambi i rami.
- Visualizzazione tramite l’hook nativo
displayProductPriceBlock, testata con il tema Classic. - Architettura ModuleAdminController, senza dipendenze Composer, PHP 7.2 e superiori.
- Interfaccia ed e-mail in italiano, francese, inglese, spagnolo, tedesco, olandese, polacco e portoghese.