# SEPA-incasso met online machtiging: documentatie van de PrestaShop-module

> Overzicht De module dfsepadebit voegt SEPA-incasso toe als betaalmethode in PrestaShop 8 en 9. De klant tekent tijdens het afrekenen online een machtiging met een code die per e-mail wordt…

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

## Overzicht

De module **dfsepadebit** voegt SEPA-incasso toe als betaalmethode in PrestaShop 8 en 9. De klant tekent tijdens het afrekenen online een machtiging met een code die per e-mail wordt verstuurd. Elke bestelling, elke abonnementstermijn of elke eenmalige incasso wordt een incasso die vooraf aan de klant wordt aangekondigd. U maakt het pain.008-bestand aan en uploadt het bij uw bank, en importeert daarna de retourbestanden om betalingen en storneringen bij te werken.

De module maakt geen verbinding met uw bank en er gaan geen gegevens via derden: het geld komt rechtstreeks op uw rekening.

## Vereisten

- Een **SEPA-incassant-ID** en een **incassocontract voor SEPA-incasso** van uw bank. Vermeld het zakelijke schema (B2B) als u bedrijven incasseert.
- Het bestandsformaat dat uw bank aanvaardt (pain.008.001.02 of pain.008.001.08) en de aanleverdeadline (meestal 1 TARGET-werkdag vóór de incassodatum).
- Een winkel in **EUR**: de betaalmethode verschijnt alleen voor winkelwagens in euro.
- PrestaShop 8.0 tot 9.x, PHP met de OpenSSL-extensie (AES-256-GCM-versleuteling van IBAN's).
- Een dagelijkse cron-taak (hostingpaneel of externe dienst) voor schema's en automatische bevestigingen.

## Installatie

1. Klik in _Modules > Modulebeheer_ op _Een module uploaden_ en kies het ZIP-bestand `dfsepadebit`.
2. De module maakt haar tabellen, twee bestelstatussen (“Wacht op SEPA-incasso” en “SEPA-incasso geweigerd”) en een menu _Verkopen > SEPA-incasso_ aan.
3. Open de configuratie en vul de gegevens van de incassant in. Zolang naam, incassant-ID en IBAN niet geldig zijn, blijft de betaalmethode verborgen.
4. Kopieer de cron-URL bovenaan de configuratie en plan die één keer per dag in.

## Configuratie

### Incassant

Naam van de incassant (zoals die op de afschriften van uw klanten verschijnt), incassant-ID, IBAN van de te crediteren rekening, BIC (optioneel binnen de EER) en adres. Incassant-ID en IBAN worden bij het opslaan gecontroleerd.

### Machtigingen en afrekenen

- **Schema van nieuwe machtigingen**: zakelijke SEPA-incasso (B2B) of doorlopende SEPA-incasso (Core).
- **Prefix van machtigingskenmerken**: letters en cijfers, maximaal 8 tekens (standaard DF).
- **Ondertekening met een code per e-mail**: aanbevolen. Uitgeschakeld tekent de klant met een selectievakje.
- **Alleen voor klanten met een bedrijfsnaam**: de betaalmethode wordt alleen aangeboden als het factuuradres een bedrijf bevat.
- **Toegestane klantgroepen**, **minimaal en maximaal bestelbedrag**.
- **Maximaal openstaand bedrag per klant**: nog niet betaalde incasso's plus de huidige winkelwagen. Daarboven wordt de betaalmethode voor die klant verborgen.
- **Verbergen na weigeringen in de laatste 12 maanden**: standaard 2, 0 om uit te schakelen.

### Incasso's en bankbestanden

- **Termijn van vooraankondiging**: de wettelijke standaardtermijn is 14 dagen. Een kortere termijn (de module stelt 2 dagen voor) geldt alleen als die in uw algemene voorwaarden staat. Een bestelling wordt aan het einde van deze termijn geïncasseerd.
- **Aanleverdeadline van uw bank**, in TARGET-werkdagen.
- **Bestandsformaat**: pain.008.001.02 (het meest aanvaard) of pain.008.001.08.
- **Verzamelboeking**: één creditering per bestand op uw afschrift, of één per incasso.
- **Eerste afschrijving als FRST**: laat ingeschakeld als uw bank de reeks FRST nog vereist.
- **Bankbestand automatisch aanmaken**: de dagelijkse taak maakt het bestand aan voor incasso's die binnen N dagen vervallen en mailt het als bijlage naar het meldingsadres.
- **Automatisch als betaald markeren na** N dagen zonder stornering (standaard 5). 0 om handmatig of met camt.054 te bevestigen.

### Storneringen

- **Redencodes met automatische nieuwe poging**: standaard AM04, MS03.
- **Maximaal aantal nieuwe pogingen** en **termijn vóór een nieuwe poging**.
- **Stornokosten** toegevoegd aan het bedrag van de nieuwe poging, alleen als uw voorwaarden dat voorzien.
- **Redencodes die de machtiging intrekken**: standaard AC01, AC04, AC06, AC13, MD01, MD07.
- **E-mail voor meldingen aan de verkoper**: storneringen, intrekkingen, bankwijzigingen, gepauzeerde schema's, automatische bestanden.

## Klanttraject

### Ondertekening bij het afrekenen

Bij de betaalstap kiest de klant “Betalen met SEPA-incasso”. Met een actieve machtiging kiest hij zijn rekening (gemaskeerde IBAN) en bevestigt de bestelling. Anders opent zich in het betaalblok een formulier, vooraf ingevuld vanuit het factuuradres: bedrijf, rekeninghouder, adres, IBAN (gecontroleerd tijdens het typen) en BIC. Hij leest de machtigingstekst, vinkt de akkoordverklaring aan en ontvangt een code van 6 cijfers per e-mail. De machtiging is getekend zodra de code is ingevoerd. Tot dan is het bevestigen van de bestelling geblokkeerd met een melding.

Als het thema het script tegenhoudt, wordt de klant na bevestiging naar een aparte ondertekeningspagina geleid, waarna de bestelling wordt aangemaakt. Er gaat geen betaling verloren.

### Klantaccount

De pagina _Mijn SEPA-machtigingen_ toont de machtigingen met hun pdf, lopende schema's en recente afschrijvingen. De klant kan een machtiging intrekken of op _Bankrekening wijzigen_ klikken: hij tekent een nieuwe machtiging, zijn schema's en nog niet verzonden incasso's gaan naar de nieuwe rekening en de oude machtiging wordt gesloten. De details van elke bestelling tonen de afschrijvingsdatum en de status.

## Back-office

### Dashboard

Bedrag dat binnen 7 dagen naar de bank moet, bedrag bij de bank in afwachting van bevestiging, geïnd deze maand, stornopercentage over 90 dagen, terugkerende maandomzet van schema's met vast bedrag, actieve en wachtende machtigingen. Een grafiek toont de komende 6 weken (aangemaakte incasso's en prognose van schema's). De laatste storneringen en de machtigingen die op ondertekening wachten, met een knop _Herinneren_, maken de pagina compleet. Er verschijnt een waarschuwing als de dagelijkse taak al 36 uur niet is uitgevoerd.

### Machtigingen

De knop _Nieuwe machtiging_ biedt twee modi: de klant een online ondertekeningsverzoek sturen (hij krijgt een beveiligde link, zonder inloggen) of een al op papier getekende machtiging registreren met de ondertekeningsdatum. Het veld _Vervangt de machtiging_ zet de schema's van een bestaande machtiging over zodra de nieuwe is getekend. De machtigingspagina toont het bewijs van ondertekening (datum, methode, IP, browser, SHA-256-vingerafdruk), de pdf, schema's en incasso's, en maakt intrekking mogelijk.

### Incasso's

Filterbare lijst van alle incasso's met hun status: te exporteren, naar de bank verzonden, betaald, geweigerd, geannuleerd. Vanuit een incasso: als betaald markeren, een stornering met code registreren, annuleren (vóór export). De knop _Nieuwe eenmalige incasso_ maakt een incasso aan op een actieve machtiging, eventueel gekoppeld aan een bestelling.

### Terugkerende schema's

Een schema is gekoppeld aan een machtiging (actief of wachtend op ondertekening) en werkt in twee modi: **vast bedrag** of **bestelling herhalen** (de referentiebestelling wordt op elke vervaldatum tegen actuele prijzen opnieuw geplaatst en daarna geïncasseerd). Kies frequentie, volgende vervaldatum en aantal afschrijvingen (0 voor zonder einde). De klant ontvangt een overzichtsmail. Een schema kan worden gepauzeerd, hervat of gestopt.

### Bankbestanden

1. Kies de uiterste vervaldatum van de incasso's die meegaan en klik op _Aanmaken_.
2. Download het XML-bestand en upload het dezelfde dag bij uw bank.
3. Importeer daarna de retourbestanden van de bank: pain.002 (weigering van bestand of transacties), camt.054 of camt.053 (storneringen en crediteringen).

Een nog niet verzonden bestand kan worden geannuleerd: de incasso's staan dan weer klaar voor export.

## Levenscyclus van een incasso

1. **Te exporteren**: aangemaakt met de bestelling, door een schema of handmatig. De klant ontvangt de vooraankondiging.
2. **Naar de bank verzonden**: opgenomen in een bestand. De datum kan verschuiven naar de eerste mogelijke dag van de TARGET2-kalender.
3. **Betaald**: na de termijn zonder stornering, bij import van een camt.054 of handmatig. De bestelling gaat naar “Betaling aanvaard”.
4. **Geweigerd**: R-code geregistreerd, bestelling op “SEPA-incasso geweigerd”, nieuwe poging of intrekking volgens de configuratie.

## Storneringen verwerken

| Code | Betekenis | Standaardactie |
| --- | --- | --- |
| AM04 | Onvoldoende saldo | Nieuwe poging |
| MS03 | Reden niet door de bank opgegeven | Nieuwe poging |
| AC01, AC04, AC06 | Rekening onjuist, opgeheven of geblokkeerd | Machtiging ingetrokken |
| AC13 | Consumentenrekening onder B2B | Machtiging ingetrokken |
| MD01 | Geen geldige machtiging (vaak een B2B-machtiging die niet bij de bank is geregistreerd) | Machtiging ingetrokken |
| MD07 | Debiteur overleden | Machtiging ingetrokken |
| MS02, MD06 | Geweigerd of terugboeking door de debiteur | Melding, handmatige afhandeling |

Een weigering van een bestand of betaalblok in een pain.002 (formaat, onbekende incassant-ID...) raakt de klant niet: de incasso's staan weer klaar voor het volgende bestand.

## Dagelijkse taak (cron)

De met een token beveiligde cron-URL maakt de incasso's aan van schema's die binnen de vooraankondigingstermijn vervallen, maakt het automatische bestand aan als dat is ingeschakeld, markeert incasso's zonder stornering na de ingestelde termijn als betaald, laat machtigingen die 36 maanden niet zijn gebruikt vervallen en ruimt ondertekeningen op die 60 dagen zijn blijven liggen. De knop _Taken nu uitvoeren_ op de pagina Bankbestanden doet hetzelfde voor de huidige winkel.

## Verzonden e-mails

- Aan de klant: ondertekeningscode, bevestiging van de machtiging met pdf, ondertekeningsverzoek, overzicht van het schema, vooraankondiging van de afschrijving, stornering.
- Aan de verkoper: stornering, intrekking door de klant, bankwijziging, gepauzeerd schema, automatisch bestand klaar (XML als bijlage).

De sjablonen worden in 8 talen geleverd in `mails/` en zijn te bewerken zoals de standaard-e-mails.

## Factuur, bestelpagina en AVG

De pdf-factuur bevat een vermelding van de vooraankondiging (bedrag, datum, gemaskeerde IBAN, machtigingskenmerk, incassant-ID), die “betaald op” wordt zodra de incasso is bevestigd. De bestelpagina in de back-office toont de machtiging en de incasso's. Met de officiële AVG-module worden machtigingen meegenomen in de gegevensexport; bij verwijdering van een klant worden alleen wachtende machtigingen en machtigingen die langer dan 14 maanden gesloten zijn geanonimiseerd, de andere blijven als bewijs bewaard.

## Probleemoplossing

### De betaalmethode verschijnt niet

Controleer of de incassant geldig is (groen kader bovenaan de configuratie), of de winkelwagen in EUR is, of de klant is ingelogd (geen gast), of het factuuradres een bedrijf bevat als de optie actief is, en of de klant het toegestane openstaande bedrag of aantal storneringen niet heeft overschreden.

### Stornering MD01 op een B2B-machtiging

De klant heeft de machtiging niet bij zijn bank geregistreerd. Vraag hem dat te doen met het machtigingskenmerk en uw incassant-ID, en maak daarna een nieuwe eenmalige incasso aan.

### De klant ontvangt de code niet

Controleer de e-mailinstellingen van PrestaShop en de spammap van de klant. Na een minuut kan een nieuwe code worden aangevraagd; de code is 10 minuten geldig.
