Indietro

VibeFox DPD Pickup for PrestaShop — Guida

Requisiti

PrestaShop: da 8.0 a 9.x.

PHP: 8.0 o successivo. Il modulo non si installa su versioni di PHP più vecchie.

Credenziali DPD Baltic (Lituania, Lettonia, Estonia): l'elenco dei punti di ritiro proviene dal servizio web di DPD Baltic. Ti servono il nome utente e la password dell'API che DPD rilascia ai suoi clienti business. Chiedili al tuo account manager DPD o al servizio clienti DPD del tuo paese. Un account elenca i punti di ritiro di Lituania, Lettonia ed Estonia.

DPD Slovacchia: la ricerca pubblica dei parcelshop di DPD Slovacchia non richiede credenziali.

Chiave di licenza VibeFox: si acquista su vibefox.net. Una chiave funziona su un dominio.

Installazione

1. Nel back office vai su Modules > Module Manager e clicca su Upload a module. Scegli il file ZIP del modulo.

2. Al termine del caricamento, clicca su Configure, oppure trova più tardi VibeFox DPD Pickup nell'elenco dei moduli e clicca su Configure.

3. Inserisci la tua chiave di licenza VibeFox nel campo License key del blocco licenza in alto nella pagina Configure e clicca su Activate (vedi Chiave di licenza).

4. Scegli la tua API DPD. Per DPD Lituania, Lettonia o Estonia inserisci il nome utente e la password dell'API. Controlla i prezzi per paese e clicca su Save. Poi clicca su Refresh pickup points per verificare la connessione (vedi Configurazione).

All'installazione il modulo crea il corriere DPD Pickup Point con il testo dei tempi di consegna DPD Pickup point or locker. Il corriere viene assegnato alle zone di Slovacchia, Lituania, Lettonia ed Estonia e a tutti i gruppi di clienti, senza regola fiscale. Puoi modificare zone, gruppi di clienti, testo dei tempi di consegna, logo e limiti di dimensione in Shipping > Carriers. Non impostare lì i prezzi: il prezzo proviene sempre dal modulo.

Configurazione

Tutte le impostazioni si trovano nella pagina del modulo: Modules > Module Manager > VibeFox DPD Pickup > Configure. Ogni sezione ha il proprio pulsante Save, che salva l'intera pagina. Ogni salvataggio cancella anche gli elenchi dei punti di ritiro in cache.

Gli avvisi in alto nella pagina segnalano quando il nome utente o la password di DPD Baltic sono vuoti, quando non sono impostati prezzi (in entrambi i casi il corriere non viene mostrato al checkout), quando il corriere è stato eliminato e quando l'unità di peso del negozio (International > Localization, Local units) non è riconosciuta dal modulo, quindi i pesi dei prodotti vengono letti come kg. Un valore che non è un numero, o un numero negativo, in un campo di importo o di peso non viene salvato: il campo viene svuotato e un avviso lo indica. Le righe di Country prices che non sono nel formato CC:PREZZO sono elencate in un avviso e ignorate.

Generali

Enable/Disable: attiva o disattiva DPD Pickup. È lo stesso interruttore dello stato del corriere in Shipping > Carriers.

Name: il nome del corriere mostrato al cliente al checkout. Predefinito: DPD Pickup Point. Obbligatorio, massimo 64 caratteri.

Tax status: la regola fiscale del corriere applicata al prezzo di spedizione. None significa nessuna imposta. Le altre opzioni mostrano Taxable con il nome di una regola fiscale del tuo negozio.

Elenco dei punti di ritiro DPD

I punti di ritiro vengono caricati da DPD e memorizzati nella cache per 24 ore.

DPD API: la società DPD con cui hai il tuo account. Gli account baltici usano il servizio web del proprio paese.

DPD Lithuania - Baltic API (integracijos.dpd.lt): richiede il nome utente e la password Baltic.
DPD Latvia - Baltic API (integration.dpd.lv): richiede il nome utente e la password Baltic.
DPD Estonia - Baltic API (integration.dpd.ee): richiede il nome utente e la password Baltic.
DPD Slovakia - parcelshop search (api.dpd.sk, no credentials): l'opzione predefinita. Elenca i punti di ritiro entro 50 km dalla città e dal CAP del cliente, quindi i punti compaiono quando il cliente li ha inseriti.

API username (Baltic): il tuo nome utente del servizio web DPD Baltic. Non serve per DPD Slovacchia. Svuotarlo cancella anche la password salvata.

API password (Baltic): la tua password del servizio web DPD Baltic. Non serve per DPD Slovacchia. Dopo il salvataggio il campo resta vuoto e mostra Saved - leave empty to keep it. Inserisci un nuovo valore solo se vuoi cambiarla.

Pickup points: il pulsante Refresh pickup points svuota la cache e carica ora i punti di ritiro da DPD: Lituania, Lettonia ed Estonia per l'API Baltic, e una ricerca di prova a Bratislava per DPD Slovacchia. Mostra il numero di punti di ritiro o l'errore per ogni paese. Salva prima le impostazioni.

Prezzi

I prezzi di spedizione sono fissi per paese, nella valuta predefinita del tuo negozio, IVA esclusa. I prezzi DPD non vengono richiesti all'API.

Country prices: una riga per paese: CC:prezzo, per esempio EE:3.50. È accettata la virgola decimale. Predefinito: SK:3.50, LT:4.00, LV:4.00, EE:4.00.

Fallback cost: il prezzo per i paesi che non sono in Country prices. Predefinito: 5.00. Lascialo vuoto per offrire il corriere solo nei paesi elencati.

Calculation type: Per order addebita il prezzo una sola volta. Per item (price x quantity) lo moltiplica per il numero di articoli nel carrello.

Free shipping from: la spedizione è gratuita quando il subtotale dell'ordine (dopo gli sconti, prima delle imposte) raggiunge questo importo. Lascia vuoto per disattivarla.

Disponibilità

Il corriere viene nascosto anche quando DPD non restituisce punti di ritiro per l'indirizzo del cliente o quando l'API DPD non è raggiungibile, perché un ordine non può essere consegnato senza un punto di ritiro.

Min weight (kg): il peso minimo del carrello. I pesi dei prodotti vengono convertiti dall'unità di peso del tuo negozio. Vuoto o 0 significa nessun limite.

Max weight (kg): i carrelli più pesanti non vedono il corriere. Predefinito: 31.5. 0 significa nessun limite. Controlla i limiti di peso dei pacchi per i punti di ritiro e gli armadietti DPD nel tuo paese. Un Min weight (kg) maggiore del Max weight (kg) viene rifiutato e non si salva nulla.

Minimum subtotal: mostra il corriere solo quando il subtotale dell'ordine (dopo gli sconti, prima delle imposte) è almeno pari a questo importo. Lascia vuoto per mostrarlo sempre.

Ignore shipping zones: quando è attivo, il corriere viene collegato a tutte le zone e offerto per i paesi indicati sotto. Una zona creata in seguito viene collegata subito. Quando è disattivo, il corriere viene offerto solo nelle sue zone in Shipping > Carriers. Disattivandolo, il corriere torna alle zone che aveva prima.

Countries: i paesi di destinazione per questa modalità. Lascia vuoto per tutti i paesi. Usato solo con Ignore shipping zones.

Selettore del punto di ritiro

City order: mostra prima le città principali (Tallinn, Riga, Vilnius, Bratislava e altre). Attivo per impostazione predefinita.

City list width: la larghezza CSS dell'elenco delle città, per esempio 100% o 300px. Predefinito: 100%.

Pickup point list width: la larghezza CSS dell'elenco dei punti di ritiro, per esempio 100% o 400px. Predefinito: 100%.

Avanzate

Debug log: scrive le richieste API e i passaggi del checkout in logs/vfd_dpd_debug.log.php nella cartella del modulo. Il file non può essere aperto dal web. Gli errori dell'API vengono sempre registrati, anche se questa opzione è disattivata. Le credenziali non vengono mai registrate.

Log: mostra la dimensione e le ultime voci del log di debug. Clicca su Clear log per svuotarlo.

Remove data on uninstall: quando è attivo, disinstallando il modulo vengono eliminate le sue impostazioni e il corriere. Il punto di ritiro salvato negli ordini viene sempre conservato.

Come funziona al checkout

Al passaggio della spedizione PrestaShop chiede al modulo il prezzo di DPD Pickup. Contano solo i prodotti fisici: i prodotti virtuali non aggiungono peso e non sono inclusi nel subtotale. Il modulo verifica i paesi (con Ignore shipping zones), il peso del carrello e il subtotale minimo, prende il prezzo del paese (o il costo di riserva) e applica la spedizione gratuita se il subtotale è sufficiente. Poi carica i punti di ritiro DPD per l'indirizzo. Se DPD non ne restituisce nessuno, non è raggiungibile o mancano le credenziali Baltic, il corriere viene nascosto. Il prezzo viene calcolato nella valuta predefinita e poi mostrato nella valuta del carrello del cliente.

Un elenco di punti di ritiro viene memorizzato nella cache per 24 ore, un elenco vuoto per 1 ora. Una richiesta non riuscita viene ricordata per 5 minuti, così un'interruzione di DPD non rallenta mai il checkout. Il timeout dell'API è di 15 secondi.

Se modifichi il corriere in Shipping > Carriers dopo che ha degli ordini, PrestaShop lo salva come nuova versione del corriere. Il modulo segue automaticamente la nuova versione.

Il modulo non richiede a DPD i prezzi, non crea spedizioni DPD, non stampa etichette, non crea distinte, non prenota ritiri da parte del corriere, non traccia i pacchi e non mostra una mappa. Sono supportati solo il servizio web di DPD Baltic e la ricerca dei parcelshop di DPD Slovacchia.

Punti di ritiro

Quando il cliente seleziona DPD Pickup, sotto il corriere compaiono un elenco di città e un elenco di punti di ritiro. La città dell'indirizzo del cliente è preselezionata. La scelta viene salvata nel carrello non appena il cliente la effettua. Con DPD Slovacchia, il cliente vede Enter your city and postcode to see the DPD pickup points nearby. finché l'indirizzo non è completo, poi i punti vicini. Se DPD non ha punti per l'indirizzo, il cliente vede No DPD pickup points are available for this address right now. Please check the address or choose another shipping method.

Un punto di ritiro è obbligatorio. Senza di esso il cliente non può proseguire e vede Please select a DPD pickup point. Il server verifica che il punto appartenga all'elenco DPD per l'indirizzo del cliente. Una scelta falsificata o non aggiornata viene rifiutata con The selected DPD pickup point is not available for this address. Please choose another one.

Il punto scelto viene salvato nell'ordine. Compare nella pagina di conferma dell'ordine e nei dettagli dell'ordine del cliente come DPD pickup point:. Nell'e-mail di conferma dell'ordine viene aggiunto dopo il nome del corriere. La nuova e-mail d'ordine al negozio (ps_emailalerts) mostra anche l'ID del punto. Il nome salvato nell'ordine proviene da DPD, non dal browser.

Nella pagina dell'ordine nel back office, il blocco DPD pickup point mostra il nome del punto, il suo ID e il paese. Clicca su Edit, scegli una città e un altro punto e clicca su Save. Il punto viene verificato con l'elenco DPD per l'indirizzo dell'ordine, e la pagina mostra Pickup point updated. o Pickup point not found for the order address. Per cambiare il punto serve il permesso di modificare gli ordini, non l'accesso alle pagine Modules. Ogni modifica viene registrata in Advanced Parameters > Logs dell'ordine, con il punto precedente, il nuovo punto e il dipendente. Per cambiare il punto con DPD Slovacchia, l'ordine deve avere una città e un CAP di spedizione.

Se un carrello viene diviso in più ordini, il punto di ritiro resta con il primo ordine. Gli altri ordini mostrano No pickup point was selected for this order., il log di debug contiene un errore per ciascuno di essi, e Edit lì mostra The pickup point of this cart belongs to another order of the same cart. Nothing was changed. Il punto di un ordine di questo tipo va comunicato a DPD manualmente.

Chiave di licenza

Il modulo funziona con una chiave di licenza VibeFox da vibefox.net. Il blocco licenza License — VibeFox DPD Pickup è il primo blocco di Modules > Module Manager > VibeFox DPD Pickup > Configure, sopra le impostazioni. Inserisci la chiave in License key e clicca su Activate. Dopo l'attivazione, il blocco mostra la chiave mascherata, lo stato (per esempio la data fino alla quale la licenza è attiva e il tuo dominio) e i pulsanti Check now per controllare di nuovo lo stato, Change key per inserire un'altra chiave e Remove key per rimuovere la chiave da questo negozio. Sotto ci sono la riga Product: presta-shipping-dpd-pickup e il link Manage licenses and domains in your account, che apre il tuo account vibefox.net. Solo i dipendenti con il permesso Configure per il modulo possono cambiare la chiave. I testi del blocco seguono la lingua del back office (sono inclusi inglese e russo).

Se la chiave non viene accettata, il blocco spiega il motivo, per esempio Key not found, This key belongs to another product, Domain limit reached o License expired on seguito da una data. Dopo che l'indirizzo del negozio cambia, o dopo aver liberato uno slot di dominio nel tuo account, clicca su Check now. Se il server delle licenze non è raggiungibile, il modulo continua a funzionare con l'ultimo stato noto.

Una chiave funziona su un dominio: il dominio del negozio principale, anche in una configurazione multistore. Rimuovere la chiave dal negozio non libera il suo slot di dominio. Libera lo slot nel tuo account vibefox.net.

Senza una chiave attiva, il corriere DPD Pickup non viene mostrato ai clienti al checkout e non viene calcolata alcuna tariffa. La vetrina di PrestaShop non sa che hai effettuato l'accesso al back office, quindi il corriere viene nascosto anche per te: puoi configurare il modulo prima di acquistare una chiave, ma non puoi testarlo al checkout. Un promemoria compare in Modules > Module Manager, nella scheda Alerts. Gli ordini esistenti non sono interessati.

Quando una licenza scade, il modulo continua a funzionare, ma aggiornamenti e supporto richiedono il rinnovo. Lo stato viene controllato di nuovo automaticamente mentre lavori nel back office: una volta al giorno per i primi 14 giorni dopo l'inserimento della chiave, poi una volta alla settimana. Non serve alcun cron job. Disinstallare o reimpostare il modulo rimuove sempre la chiave di licenza e lo stato della licenza.

Risoluzione dei problemi

DPD Pickup non compare al checkout: verifica che la licenza sia attiva e che Enable/Disable sia attivo. In Shipping > Carriers verifica che il corriere copra la zona del paese del cliente e il suo gruppo di clienti (o che Ignore shipping zones sia attivo e il paese sia consentito). Controlla gli avvisi in alto nella pagina del modulo e clicca su Refresh pickup points. Verifica i limiti di peso e di subtotale e che il paese abbia un prezzo (o un costo di riserva). I prodotti possono anche essere limitati a determinati corrieri nella pagina del prodotto.

Un errore dopo Refresh pickup points: il risultato mostra l'errore DPD per ogni paese. Per esempio, "Login failed" significa che DPD ha rifiutato le credenziali Baltic, quindi non è possibile caricare alcun punto di ritiro. Controlla nome utente e password dell'API con DPD.

DPD Slovacchia non mostra punti: i punti compaiono quando il cliente ha inserito città e CAP. DPD elenca solo i punti entro 50 km da quell'indirizzo. Gli sviluppatori possono cambiare il raggio con l'hook del modulo actionVfdDpdSkSearchRadius.

Per trovare la causa: attiva il Debug log, ricarica il checkout e controlla il campo Log nella pagina del modulo. Ogni decisione viene scritta lì. Gli errori dell'API vengono sempre registrati. Nomi utente e password dell'API non vengono mai scritti nel log.

I punti di ritiro sembrano non aggiornati dopo una modifica: clicca su Save o su Refresh pickup points nella pagina del modulo. Entrambi svuotano gli elenchi in cache.

La pagina dice che il corriere DPD Pickup non è stato trovato: il corriere è stato eliminato in Shipping > Carriers. Ripristina il modulo in Modules > Module Manager per ricrearlo.

Disinstallazione

Vai su Modules > Module Manager, apri il menu accanto a VibeFox DPD Pickup e scegli Uninstall. La chiave di licenza, lo stato della licenza e la cache dei punti di ritiro vengono sempre rimossi. Se Remove data on uninstall è attivo, il corriere viene eliminato (gli ordini mantengono la loro cronologia), e vengono rimosse le impostazioni, il log e le scelte dei carrelli non completati. Se è disattivo, il corriere viene solo disattivato e tutte le impostazioni vengono conservate. Reinstallando il modulo, o con un Reset, il corriere salvato riprende lo stato che aveva prima: un corriere disattivato resta disattivato. Il punto di ritiro salvato negli ordini non viene mai eliminato.

DPD è un marchio del suo rispettivo titolare. Questo modulo non è affiliato a DPD né approvato da DPD.