# B2B Offerteaanvraag: volledige gids

> Overzicht De module B2B Offerteaanvraag (dfb2bquote) voegt een volwaardig verkooptraject op offerte toe aan uw PrestaShop-winkel. Een knop « Offerte » vervangt of vult het toevoegen aan de winkelwagen aan:…

- Pagina: <https://www.datafirefly.com/nl/documentation/dfb2bquote/>
- Taal: nl
- Bijgewerkt op: 2026-09-09
- Andere talen: [fr](https://www.datafirefly.com/documentation/dfb2bquote/index.md), [en](https://www.datafirefly.com/en/documentation/dfb2bquote/index.md), [es](https://www.datafirefly.com/es/documentation/dfb2bquote/index.md), [de](https://www.datafirefly.com/de/documentation/dfb2bquote/index.md), [it](https://www.datafirefly.com/it/documentation/dfb2bquote/index.md), [pl](https://www.datafirefly.com/pl/documentation/dfb2bquote/index.md), [pt](https://www.datafirefly.com/pt/documentation/dfb2bquote/index.md)
- Index: <https://www.datafirefly.com/nl/documentation/llms.txt>

## Overzicht

De module **B2B Offerteaanvraag** (`dfb2bquote`) voegt een volwaardig verkooptraject op offerte toe aan uw PrestaShop-winkel. Een knop **« Offerte »** vervangt of vult het toevoegen aan de winkelwagen aan: uw zakelijke klanten stellen hun aanvraag samen in een **eigen offertemandje**, sturen die op, en u neemt het over in de backoffice om de **prijzen regel voor regel te onderhandelen**, een korting toe te passen, een geldigheidsduur vast te leggen en een **PDF** in de stijl van uw winkel te genereren. Zodra de klant de offerte aanvaardt, zet één klik die om in een **echte bestelling** met de onderhandelde prijzen vastgezet.

Ontworpen voor B2B en verkoop op maat: groothandels, professionele benodigdheden, grote volumes en configureerbare producten. Het klassieke aankooptraject van uw particuliere klanten blijft intact: de offerteknop kan de aankoop vervangen of er eenvoudigweg naast staan.

## Compatibiliteit

- PrestaShop 8.0 tot 9.x
- PHP 7.4 tot 8.3
- Eén winkel en multistore
- Meertalig (vertaalde statussen, e-mails geleverd in FR en EN)
- Classic-thema en eigen thema's (de knop wordt geïnjecteerd, ook als het thema de hook niet aanroept)
- Geen enkele afhankelijkheid (geen Composer, geen framework)

## Installatie

1. Open in de backoffice **Modules > Modulebeheer**.
2. Klik op **Een module installeren** en selecteer het bestand `dfb2bquote.zip`.
3. Klik na de installatie op **Configureren**.

Bij de installatie maakt de module zijn tabellen aan (offertes, regels, statussen, offertemandje, historiek), initialiseert hij de **zeven** standaardstatussen, registreert hij zijn hooks (productfiche, header, klantenzone, authenticatie) en voegt hij het tabblad **Offertes** toe onder _Bestellingen_ in het beheermenu. In de klantenzone verschijnt een link **Mijn offertes**.

## Configuratie

### Knop en weergave

- **Module inschakelen**: schakelt het volledige offertetraject aan de frontzijde in of uit.
- **Modus van de knop**: _Vervanging_ (de offerteknop neemt de plaats in van het toevoegen aan de winkelwagen, voor een winkel die volledig op offerte werkt) of _Aanvulling_ (de knop komt naast de klassieke aankoop te staan, om zowel B2C als B2B te bedienen).
- **Opschrift van de knop**: de tekst op de knop (« Offerte », « Prijs aanvragen » en dergelijke).
- **Prijzen verbergen**: verbergt de catalogusprijzen aan de frontzijde, voor een werkwijze die volledig op offerte berust.
- **Klantgroepen**: laat leeg om de knop aan iedereen te tonen, of selecteer de groepen (bijvoorbeeld uw zakelijke groepen) om die aan B2B voor te behouden.

### Aanvraag en regels

- **Gasten toestaan**: laat een niet-ingelogde bezoeker een aanvraag indienen door zijn gegevens in te vullen (naam, e-mail, bedrijf, telefoon). Schakel dit uit om alleen ingelogde klanten toe te laten.
- **Minimumbedrag**: vereiste drempel excl. btw om een aanvraag te kunnen indienen.
- **Geldigheid (dagen)**: geldigheidsduur die standaard op de offertes wordt toegepast.
- **Link « Mijn offertes » tonen**: toont de offerte-indicator en de toegangslink in de header.

### Omzetting en documenten

- **E-mailadres beheerder**: het adres dat bij elke nieuwe aanvraag een melding ontvangt.
- **Besteltoestand bij omzetting**: de status die wordt toegepast op de bestelling die uit een aanvaarde offerte ontstaat.
- **Voorwaarden**: tekst onder aan de offerte-PDF.

## Gebruik aan klantzijde

### Een offerte aanvragen

Op de productfiche en in de lijsten klikt de klant op de knop **Offerte**. Het product (en de variant) wordt toegevoegd aan zijn **offertemandje**, dat losstaat van de winkelwagen. Een indicator « Mijn offerte » wordt in de header bijgewerkt.

### Het offertemandje

Op de pagina van het offertemandje past de klant de aantallen aan, verwijdert hij regels, voegt hij een bericht toe en dient hij zijn aanvraag in. Is hij niet ingelogd en is de gastmodus toegestaan, dan vult hij zijn gegevens in. Bij het indienen wordt de offerte aangemaakt met de status **Nieuwe aanvraag** en gaat er een melding naar uw team.

Het offertemandje hangt aan de sessie van de bezoeker en **blijft bestaan van pagina tot pagina**. Bij het inloggen wordt een als gast samengesteld mandje automatisch **overgezet** naar het klantaccount.

### De zone « Mijn offertes »

Vanuit zijn account vindt de klant de lijst met zijn offertes en hun status terug. In het detail van een offerte bekijkt hij de regels en de totalen, **downloadt hij de PDF**, en zodra de offerte naar hem is verstuurd kan hij die **aanvaarden** of **weigeren**. Een gast bereikt zijn offerte via een link die met een unieke sleutel is beveiligd.

## Gebruik in de backoffice

### Lijst met offertes

Het tabblad **Offertes** (onder _Bestellingen_) toont alle aanvragen met hun referentie, de klant, een gekleurde statusbadge, het totaal excl. btw en de datum. Eén klik opent het beheerscherm.

### De offerte onderhandelen

In het detailscherm wordt per regel de **catalogusprijs** herhaald en voert u de **onderhandelde prijs excl. btw** in. U kunt daarnaast:

- een **globale korting** toepassen, als bedrag excl. btw of als percentage;
- **indicatieve verzendkosten** toevoegen;
- een **bericht voor de klant** invoeren;
- de **geldigheidsdatum** vastleggen of aanpassen.

### Status en melding

U wijzigt de **status** van de offerte en stuurt, door **De klant informeren** aan te vinken, een e-mail. Zet de offerte op **Offerte verstuurd** zodat de klant die vanuit zijn zone kan aanvaarden. De volledige statushistoriek blijft met tijdstempel bewaard.

### Omzetten in een bestelling

Zodra de offerte op **Aanvaard** staat, verschijnt de knop **Omzetten in bestelling**. De omzetting maakt een winkelwagen aan, past elke onderhandelde prijs toe via een `SpecificPrice` die aan die winkelwagen hangt, voegt de eventuele globale korting toe via een winkelwagenregel (`CartRule`) en maakt daarna de bestelling aan via `validateOrder` met de ingestelde toestand.

De tijdelijke specifieke prijzen en regels worden na het aanmaken van de bestelling **automatisch opgeruimd**: uw catalogus wordt nooit gewijzigd en de bestelling draagt exact de onderhandelde bedragen.

## De offertestatussen

- **Nieuwe aanvraag**: offerte ontvangen, nog te behandelen.
- **In behandeling**: wordt aan winkelzijde voorbereid.
- **Offerte verstuurd**: naar de klant gestuurd, die kan aanvaarden of weigeren.
- **Aanvaard**: door de klant goedgekeurd, klaar om in een bestelling om te zetten.
- **Geweigerd**: door de klant afgewezen.
- **Verlopen**: geldigheidsdatum overschreden.
- **Omgezet in bestelling**: omgezet in een echte bestelling.

## FAQ en probleemoplossing

### De knop « Offerte » verschijnt niet

Controleer of de module is ingeschakeld, of de bezoeker tot een toegestane groep behoort (als u de weergave hebt beperkt), en leeg de cache van PrestaShop. De module kan de knop injecteren ook als uw thema de hook van de productfiche niet aanroept; controleer bij een sterk aangepast thema of de aankoopcontainer aanwezig is.

### Witte pagina of fout « ongeldige JSON » bij het toevoegen

Leeg de cache (Geavanceerde parameters > Prestaties) en schakel tijdens uw tests de combinatie en compressie van bestanden (CCC) uit. De AJAX-antwoorden van de module zijn strikte JSON, rechtstreeks teruggegeven om compatibel te blijven met PrestaShop 9.

### De prijzen worden niet verborgen

Schakel de optie **Prijzen verbergen** in. Afhankelijk van uw thema kunnen zeer specifieke prijsplaatsen een aanpassing vergen; de module verbergt de standaardplaatsen van PrestaShop.

### De klant kan zijn offerte niet aanvaarden

Aanvaarden en weigeren zijn alleen mogelijk als de offerte de status **Offerte verstuurd** heeft. Zet de offerte in de backoffice op die status.

### De e-mails komen niet aan

Controleer het adres bij **E-mailadres beheerder** en de e-mailconfiguratie van PrestaShop (Geavanceerde parameters > E-mail). De sjablonen worden in het Frans en het Engels geleverd en blijven aanpasbaar.

### Werkt dit met PrestaShop 9 en multistore?

Ja. De module is compatibel met PrestaShop 8 en 9, zowel met één winkel als in multistore. Offertes zijn gekoppeld aan de winkel en de taal van de klant.
