PS PrestaShop Gemiddeld

Product Return Manager: volledige gids

Volledige gids: installatie, configuratie, klanttraject, QR-scan, analytics en integraties.

Bijgewerkt Moduleversie 1.7.0

DataFirefly Product Return Manager verandert het retourbeheer van PrestaShop 8 in een geautomatiseerde stroom van begin tot einde: selfservice-aanvraag door de klant (klantaccount of gast), PDF-etiket met QR-code, validatie via scan bij ontvangst, analytics op 13 assen, tegoedbon of terugbetaling, handmatige admin-retour, automatische vertaling van de redenen via ChatGPT en ERP-integratie via hook. Deze documentatie behandelt de installatie, de volledige configuratie en het dagelijkse gebruik.

Installatie

Standaard PrestaShop-installatie: ga naar Modules → Modulebeheer → Een module installeren, selecteer het bestand dfproductreturn.zip en bevestig. De module maakt automatisch 9 tabellen met de voorvoegsels df_return_* en df_product_return* aan, installeert standaardretourenredenen, registreert haar hooks (displayCustomerAccount, displayMyAccountBlock, displayHeader, enzovoort) en voegt twee menu-ingangen toe aan de back-office: Productretouren (beheer) en Retouranalytics (statistieken).

Vereisten: PrestaShop 8.0 tot 8.99, PHP 8.0 tot 8.3. PrestaShop 1.7 wordt niet ondersteund. Multistore wordt native beheerd. De update vanaf een eerdere versie is idempotent (upgradescripts inbegrepen, waaronder de toevoeging van de kolom manual_amount in 1.7).

Configuratie

Ga naar Modules → Modulebeheer → DataFirefly Product Return Manager → Configureren. De belangrijkste instellingen:

  • Retourtermijn (dagen): venster waarbinnen de klant na zijn bestelling een retour kan aanvragen. Standaard 30 dagen. Geldt alleen voor retouren die door de klant worden gestart; de handmatige admin-retour negeert dit.
  • In aanmerking komende orderstatussen: alleen bestellingen in deze statussen tonen de knop “Retour aanvragen” (typisch “Geleverd”).
  • Tegoedbon activeren: biedt de tegoedbon aan als compensatievorm.
  • Terugbetaling activeren: biedt de terugbetaling op het oorspronkelijke betaalmiddel aan.
  • Admin-e-mail: adres dat bij elke nieuwe retouraanvraag wordt verwittigd.
  • Status gedeeltelijke / volledige terugbetaling: de twee orderstatussen toegepast volgens het type uitgevoerde terugbetaling.
  • OpenAI API-sleutel: alleen vereist voor de automatische vertaling van de retourenredenen via ChatGPT (zie de aparte sectie).

Retourenredenen en categorieën

De module organiseert de redenen op twee niveaus: categorieën (“Productprobleem”, “Logistiek probleem”, “Van gedachten veranderd”…) en redenen gekoppeld aan elke categorie (“Verkeerde maat”, “Defect artikel”, “Levering te traag”…). Deze hiërarchie voedt de analytics: u ziet de macroverdeling per categorie en dan het detail per reden.

Beheer ze via het tabblad Redenen van de configuratie: aanmaken, bewerken, deactiveren, weergavevolgorde. Standaardredenen worden met de module geïnstalleerd; pas ze aan uw catalogus aan.

Goede praktijk: blijf onder de 10 zichtbare redenen per categorie om de klant niet te overspoelen, en formuleer de redenen vanuit zijn standpunt (“Het artikel komt niet overeen met de foto” in plaats van “Visuele non-conformiteit”).

Automatische vertaling via ChatGPT

Zodra uw OpenAI API-sleutel in de configuratie staat, verschijnt op elke reden en categorie een knop Vertalen. Eén klik vertaalt het label naar alle actieve winkeltalen, met een gecontextualiseerd e-commercevocabulaire. De vertalingen blijven na de generatie handmatig bewerkbaar. Haal uw sleutel op via platform.openai.com; de kostprijs per vertaling is verwaarloosbaar (fracties van een cent).

Klanttraject (klantaccount)

De ingelogde klant ziet een link “Mijn retouren” in zijn klantzone. Om een retour te starten:

  1. Hij opent de in aanmerking komende bestelling en klikt op “Retour aanvragen”.
  2. Hij vinkt de te retourneren producten aan en past de aantallen aan.
  3. Hij kiest een redencategorie en dan een precieze reden, en voegt een optionele opmerking toe.
  4. Hij bevestigt: de retour komt in de status “In afwachting” en er vertrekken twee e-mails: een bevestiging naar de klant met de etiket-PDF als bijlage, en een melding naar de admin.

De klant volgt daarna de status van zijn retour (in afwachting, aanvaard, geweigerd, terugbetaald) via “Mijn retouren”, met de mogelijkheid om zijn PDF-etiket op elk moment opnieuw te downloaden.

Gastretour (v1.7+)

Klanten die zonder account hebben besteld, bereiken de retour via dezelfde URL als ingelogde klanten. Een niet-geauthenticeerde bezoeker ziet een formulier “Bestelnummer + e-mail” in plaats van de lijst “Mijn bestellingen”. De werking:

  • De validatie gebeurt server-side: het paar bestelreferentie + e-mail moet exact overeenkomen met een bestaande bestelling (hoofdletterongevoelige vergelijking op de e-mail).
  • Bij een mismatch is de foutmelding bewust generiek: anti-enumeratiebescherming, er wordt geen enkele informatie over bestaande referenties prijsgegeven.
  • Eenmaal gevalideerd krijgt de bezoeker toegang tot de standaardretourstroom uitsluitend voor deze bestelling (scoped PrestaShop-sessie).
  • De etiket-PDF blijft bereikbaar via de per e-mail ontvangen link zonder login, beschermd door een willekeurig token van 64 tekens, uniek per retour.
  • Een balk “Use a different order” laat toe de gastsessie te resetten en naar een andere bestelling over te schakelen.

De etiket-PDF en de QR-code

Elke retour genereert een PDF met: het retouradres, het retournummer, de lijst van producten en aantallen, de instructies en een unieke QR-code met een cryptografisch verificatietoken. De klant drukt hem af en plakt hem op zijn pakket.

Meerdere retouradressen

Configureer meerdere adressen in het tabblad Adressen (hoofdmagazijn, verwerkingssite voor grote volumes, EU- versus niet-EU-adres…). Elke retour wordt gekoppeld aan een adres dat op zijn etiket verschijnt.

Validatie via QR-scan bij ontvangst

Wanneer het pakket aankomt, scant uw operator de QR met een telefoon of een USB-scanner. De scan opent de beveiligde validatiepagina: een actieve PrestaShop-adminsessie is vereist; zonder sessie stuurt de pagina door naar de back-office-login. De operator ziet dan het volledige retourdetail, controleert de fysieke staat van de producten en klikt op Valideren of Weigeren.

De validatie zet een cascade in gang: overgang van de bestelling naar de geconfigureerde status (gedeeltelijke of volledige terugbetaling), generatie van de tegoedbon of terugbetaling, update-e-mail naar de klant, en dispatch van de hook actionOrderSlipAdd voor externe integraties.

Het QR-token is uniek per retour en wordt server-side geverifieerd: een vervalste of hergebruikte QR wordt geweigerd. Deel de validatie-URL’s nooit buiten uw team.

Handmatige admin-retour (v1.6+)

De klantendienst kan een retour aanmaken voor eender welke bestelling, ongeacht de ingestelde retourtermijn en de bestelstatus; bedoeld voor commerciële gebaren, telefonisch onderhandelde retouren en retroactieve regularisaties.

  1. Klik op “Create manual return” in de header van de retourenlijst in de back-office.
  2. Stap 1: voer de referentie of de ID van de bestelling in (een bestelling uit 2022, geannuleerd of in concept wordt aanvaard).
  3. Stap 2: vink de te retourneren producten aan, hun aantallen, hun reden, het compensatietype (tegoedbon of creditnota), en pas indien nodig het terugbetaalde bedrag per regel aan.
  4. Bevestig: de retour wordt onmiddellijk verwerkt: tegoedbon of creditnota meteen gegenereerd, voorraad teruggeboekt, orderstatus bijgewerkt, Fastmag-hook gedispatcht.

Een vakje “Klant verwittigen” (standaard uitgevinkt) verstuurt desgewenst de standaardbevestigingsmail. Een vrije adminnotitie kan aan de retour worden gehecht.

Het aanpasbare terugbetaalde bedrag (v1.7+)

Elke regel van de handmatige retour heeft een bewerkbaar veld “Refund amount”. De standaardwaarde (eenheidsprijs × aantal) wordt automatisch herberekend wanneer het aantal verandert, tot een handmatige invoer: de ingevoerde waarde wordt dan als zodanig gerespecteerd. Het proportionele kortingsratio van de bestelling, toegepast op klassieke klantretouren, is uitgeschakeld voor handmatige retouren: het ingevoerde bedrag is exact het terugbetaalde bedrag. Nuttig voor een gedeeltelijke terugbetaling (beschadigd product voor 50 % terugbetaald), een commercieel gebaar of een regularisatie. De gegenereerde creditnota behoudt de verdeling excl./incl. btw evenredig met het btw-tarief van de oorspronkelijke regel.

Tegoedbon of terugbetaling

Volgens uw configuratie levert de validatie van een retour ofwel een tegoedbon op (native PrestaShop-winkelwagenregel, bruikbaar bij een volgende bestelling), ofwel een terugbetaling te verwerken op het oorspronkelijke betaalmiddel. De twee speciale orderstatussen (gedeeltelijk / volledig) laten toe de gevallen te onderscheiden in uw exports en boekhoudrapporten.

Analytics-dashboard

Het menu Retouranalytics toont 13 analyse-assen, allemaal filterbaar per periode en per winkel:

  • Globale KPI’s: retourvolume, retourpercentage, geretourneerde waarde, verdeling tegoedbon / terugbetaling.
  • Per redencategorie en per reden: identificeer de dominante oorzaken.
  • Per land: spoor geografische afwijkingen op (falende vervoerder in een zone).
  • Top geretourneerde producten: de referenties om te onderzoeken (maattabel, leverancierskwaliteit).
  • Kruisingen reden × land en reden × product: het detailniveau om te handelen.
  • Maandelijkse (12 maanden) en dagelijkse trends: seizoensgebondenheid en pieken.
  • Gemiddelde verwerkingstijd: de prestatie van uw klantendienst.
  • Verdeling per weekdag en top retourklanten: detectie van misbruik.

De knop CSV-export downloadt alle retouren van de gefilterde periode (retournr., bestelling, klant, producten, reden, status, datums, bedrag) voor externe analyse of BI-import.

Fastmag- en ERP-integratie

Bij elke gevalideerde retour dispatcht de module de PrestaShop-hook actionOrderSlipAdd met de bestelling, de productlijst en de aantallen. Elke module die naar deze hook luistert (DataFirefly Fastmag-module, ERP-connectoren, Systempay…) ontvangt de melding in realtime. Handmatige admin-retouren dispatchen dezelfde hook.

De knop “Re-sync past returns to Fastmag” (werkbalk van de retourenlijst) activeert de hook opnieuw op alle voorbije retouren: onmisbaar na de installatie van een ERP-connector die dateert van na deze module, of na een synchronisatie-incident.

Transactionele e-mails

Drie automatische e-mails, geleverd in 6 talen (FR, EN, ES, IT, PT, DE): aanvraagbevestiging aan de klant (met PDF-bijlage), melding aan de admin, statusupdate aan de klant (validatie / weigering / terugbetaling). Bij handmatige admin-retouren is de klantmail optioneel (vakje standaard uitgevinkt). Personaliseer de templates in modules/dfproductreturn/mails/<taal>/ of via het native e-mailvertaalsysteem van PrestaShop.

Multistore

Alle tabellen dragen een id_shop: elke winkel heeft haar eigen redenen, retouradressen en analytics. De multistore-kiezer van de back-office filtert vanzelf de retourenlijst en het dashboard.

Probleemoplossing

De knop “Retour aanvragen” verschijnt niet

Controleer drie punten: de bestelling zit in een in aanmerking komende status (configuratie), de retourtermijn is niet verstreken, en de module is actief op de betrokken winkel (multistore-context). Ter herinnering: gebruik voor een retour buiten de termijn de handmatige admin-retour.

Het gastformulier weigert een geldige bestelling

Het ingevoerde e-mailadres moet exact dat van de bestelling zijn (hoofdletters worden genegeerd, tikfouten niet). Controleer de bestelreferentie: dat is de alfanumerieke referentie (bv. XKBKNABJK), niet de numerieke ID.

De QR-scan toont “Access denied”

Dat is het verwachte gedrag zonder adminsessie: de operator moet in dezelfde browser ingelogd zijn op de PrestaShop back-office. Log in en scan opnieuw.

De ChatGPT-vertaling mislukt

Controleer de API-sleutel in de configuratie, het beschikbare krediet op uw OpenAI-account, en of uw server uitgaande verbindingen naar api.openai.com (poort 443) toestaat.

Fastmag ontvangt de retouren niet

Controleer of de Fastmag-module is geïnstalleerd en aan de hook actionOrderSlipAdd hangt, en gebruik dan “Re-sync past returns to Fastmag” om de geschiedenis in te halen.

Was deze pagina nuttig?

Loopt u nog vast? Neem contact op met support