SEPA Direct Debit / Automatische incasso
Overview
SEPA Direct Debit is additional HostBill plugin that allows you to:
Create XML batch file with the list of invoices to process, to import in your bank account for automatic transfers debits processing (pain.008.002.02 file standard)
Import bank statement files (in CAMT.052, CAMT.053, CAMT.054, CBI and MT940) for processing them for new transactions
Parse bank statement files for unpaid invoices in HostBill for futhrer transaction processingÂ
Ask customers to store bank details (Mandate) in HostBill for recurring charges
Store multiple creditor accounts (bank account details) and attempt to match upcoming direct debits to related account (for lower transfer fees)
Log all related batch operations
 Activating the module
If the plugin is included in your HostBill edition you can download it from your client portal.
If the plugin is not included in your HostBill edition you can purchase it from our marketplace and then download it from the client area.
Once you download the plugin extract it in the main HostBill directory.
Go to Settings → Modules, find and activate SEPA Direct Debit plugin.
You will be directed to Settings→ Modules→ Plugins
Module is now available under Payments → SEPA Direct Debit
Module configuration
This module provides few simple configuration options available under Payments → SEPA Direct Debit → Settings:
Â
Regex for matching clients
 When batch will be imported, this regular expression will be used to find client_id in bank transfer subject. This option should be set to match setting "Client ID prefix" belowClient ID prefix
 Enter how client ID should be prefixed on bank statements (Default: "DB")Regex for matching invoices
 This setting should correspond to your Settings → General Settings → Billing → Invoice prefix option. If you prefix your pro-formas/invoices somehow, please update this field.
From settings screen you should setup your creditor accounts - here you can enter details obtained from your bank:
Name: Your bank account name (usually business name)
Payee ID: This is your unique SEPA Payee ID obtained from bank after signing SEPA contract.
IBAN:Â Your bank account number in IBAN format (prefixed with country code)
BIC: Your bank's BIC Identifier
Processing days: Here you can enter number of days in month that debit batches should be generated, use comma to separate them
Notice time: Enter minimum number of days that you have to notify your customers.
Before you can perform direct debit, you are required to send the notice. You can use invoice email template to notify that this will occur.Processing time: first: Number of days it usually takes your bank to process first/one-off collection
Processing time: recurring:Â Number of days it usually takes your bank to process recurring debit collection
Status: Set to inactive to stop batch auto-creation
How to use SEPA Direct Debit
Sign a SEPA Direct Debit contract with your bank
Contact your bank to request and sign European SEPA contract. This feature is offered and supported by most European banks.Install and configure SEPA direct debit module, as described above.
Add your current debtors (if you have any)
Debtor account is assigned with your client profile in HostBill. When browsing client profile you will see direct debit status in top menu:Â
When you'll click on Direct Debit button, you'll be redirected to Debtor profile page / add new Debtor page:
Here you can:
Â
Setup a customer that this debtor profile belongs to
Enter customer bank details like BIC, IBAN, Bank Name, Bank Account Name (customer name)
Provide Mandate ID - if empty HostBill will generate its own mandate ID.Â
Mandate is authorization granted by your customer to perform direct debits on their bank accountProvide Mandate Date - when mandate was signed by your customer
Setup mandate status - here you can disable debtor profile from future charges
Mandate type: Select whether customer agreed on only one charge (One-Time) or subsequent automatic collections (Recurring)
Create your batch
You can either wait for cron to automatically create new batch, based on your creditor settings, or create new batch manually in "Export" menuAdd invoices to batch
Invoices are being added automatically to draft batches based on creditor settings. You can add them manually to draft batch in batch details screen.
Note: Invoices in manual add list are Unpaid, with Sepa Direct Debit payment gateway, belonging to customers with active mandateDownload batch
When all invoices are already added/batch is ready to be downloaded, you can download it from batch details screen.Change batch status
When batch has been processed, you can change its current state to indicate it for other staff members.Upload bank statement
Login to your bank account and download bank statement in format of CAMT.053 or MT940.
Make sure to use proper date range to not overlap with previously processed statements .Process bank statement
After uploading, HostBill will process statement to its own format and store it in database.
Â
Click on: Attempt to match rows - for HostBill to look for potential transactions in imported statement rows.
When matched HostBill will not create transactions automatically but will ask you to confirm it.If HostBill was unable to find related unpaid invoices, you can still point it manually, by selecting row and clicking on Attempt Match.
Select matched rows from list, and click on Process - this will create transactions in HostBill database/mark invoices as paid.
Adding client bank information to invoice PDF/template
When module SEPA Direct Debit Gateway is used as payment gateway to invoice, and related customer is registered as a "Debtor" in SEPA Direct Debit plugin, you can access his mandate details in invoice document template using:
{$debtor.client_id} - Stores related client id
{$debtor.iban} - Client's IBAN
{$debtor.bic} - Client's BIC
{$debtor.iban_masked}Â - Client's IBAN, masked with "*" to reveal just first two and last two digits
{$debtor.bic_masked} - Client's BIC, masked with "*" to reveal just first two and last two digits
{$debtor.bank_name} - Client's Bank Name
{$debtor.bank_account_name} - Client's Bank Account Name
{$debtor.mandate_id} - Client's Mandate ID
{$debtor.mandate_date} - Client's Mandate Date
{$debtor.mandate_status} - Client's Mandate status (one of:Â 'NotAgreed','Pending Review','Active','Expired' )
{$debtor.mandate_type} - Client's Mandate type (one of:Â 'Recurring','OneTime' )
Â
Connecting to GoCardless Bank Account Data API
 SEPA Direct Debit module can also make use of GoCardless Bank Account Data API to connect to your bank directly and import statements from there, saving you time for downloading statements manually from bank.
To connect to GoCardless Bank Account Data API using SEPA Direct Debit plugin:
Obtain API credentials from bankaccountdata.gocardless.com in Developers → User Secrets section
Use those credentials in Settings section of SEPA Direct Debit module, picking your bank Country:
Â
Save SEPA module Settings, proceed to Creditors tab to define new Creditor using this connection:
Enter basic details like Name, IBAN etc.
For import source, pick GoCardless
Pick your Bank in Bank account section
Save changes
Â
In Creditors section you will notice that you need to Authorize your connection, click on a button to proceed to your bank to authorize using GoCardless Bank Account Data
Â
Once connection is authorized you will be redirected back to Creditors page and should see Active status:
From now on SEPA direct debit module will once a day, using cron:
Connect to your bank
pull transactions from last 24 hours
create new statement in SEPA module containing fetched transactions
attempt to match imported statement rows with regex rules for matching clients / invoices
Â
Â
Â
Â
Â
Â
Â