1.Introduction
This is the manual for the integration between Prestashop and e-Boekhouden.
- This integration is a financial integration. It is not a logistics integration. It is not suitable for updating customers in e-Boekhouden, printing packing slips, or synchronizing products/inventory.
- This integration does not replace the work of an accountant. It saves time because you no longer have to retype documents. The accountant is still needed for advice, expertise, and control.
Tip: Other customers using this integration found the tips in the FAQ for Prestashop and in the FAQ for e-Boekhouden.
Installing the integration starts with signing up for a trial period, via our integrations page. After registration, you will receive an email containing an installation URL and login details. With this installation URL, you start the installation of the integration.
The installation is complete when both connection dots are green, and the settings in the Configuration tab have been entered and saved.
There is a trial period of 30 days.
If you want to install another integration, you can do so in the same way. Make sure you are logged out of the integration dashboard and preferably start the new installation in an incognito browser.
At the end of the trial or subscription period, the integration will not be automatically renewed. You will receive an offer for a one-year subscription or renewal by email at the end of this period. You can confirm the renewal by using the payment link in that email. Do you want to terminate the integration in the meantime? This can be done via the dashboard, tab Profile>>Cancel integration.
Are you switching to another web shop/accounting system and do you want to re-establish a connection? In this faq we explain how to do this.
We advise you to revoke the API key in Prestashop when uninstalling the integration.
2.How the integration works
New orders from your webshop are retrieved at least once per hour. If they have the correct status, they are processed to e-Boekhouden. You can set the statuses via the dashboard, tab Configuration.
Read more How the integration works .... Read less How the integration works ....
At the start of processing an order, we perform a number of checks on the Prestashop order:
- It is checked whether the total of the Prestashop order is equal to the sum of the amounts in the order lines plus the shipping cost amount.
- If the order is an ICP order, the VAT number is checked.
- It is checked whether a corresponding VAT code exists in e-Boekhouden for the VAT in each line.
- It is checked whether the order has not already been processed.
A payment is processed for every order that has been processed to e-Boekhouden and that has been paid in Prestashop. It is possible to always process the payment, regardless of the status in Prestashop. This can be requested via webcare@webwinkelfacturen.nl.
Processing a Prestashop order to e-Boekhouden takes place in three steps:
- The integration first checks if the debtor is already present in the accounting system. If not, the integration creates the debtor in e-Boekhouden. For a new debtor, we must provide a Code field. This becomes the debtor number in e-Boekhouden. We use the same logic here as e-Boekhouden. Matching of debtors between Prestashop and e-Boekhouden is based on email address.
- Products With the invoices option, the integration uses the SKU in the invoice lines. If this product is not present in e-Boekhouden, e-Boekhouden will reject the invoice or post it to a random product. Unfortunately, the integration cannot create new products in e-Boekhouden.
- The e-Boekhouden transaction (mutation, invoice) is created and processed.
When processing payments, the integration retrieves the mutation from e-Boekhouden that was created based on the related sale. The integration checks if this mutation is still outstanding. If so, the integration creates the payment mutation.
After the order has been forwarded and a success message from e-Boekhouden has been received, the order is marked as handled. The Prestashop order appears at the Reporting tab on the dashboard.
If e-Boekhouden returns an error while processing the order, the order appears in the Errors tab on the dashboard. Via the yellow button More info more information about the problem can be found. Via the red button Report problem can the order with all necessary information easily be submitted to us after you have tried to resolve the problem yourself. If the problem is solved, in some cases the orders can be processed again with the blue Process button.
When forwarding the payment, the payment is also registered so that it cannot be processed again. Payments can also be reviewed via the dashboard.
Data
Information about the data that is processed can be found in the section Day-to-day: To e-Boekhouden later in the manual.
3.Required: Prestashop API key
To create the API key in your PrestaShop webshop, go to Advanced parameters - Web services via the menu.
Click on Add New to create a new API key.
If you click Generate on the next screen, an API key will be automatically generated. You can also create an API key yourself, but it is safer to let the system do it. Also provide a description so that you know later what you are using the API key for.
Finally, you need to set the permissions for the API key. The integration only wants to read from the PrestaShop webshop. So, only select View permissions for the following items:
addresses
categories
countries
customers
order details
orders
order state
producten
statussen
taxes
4.Required: e-Boekhouden codes
Registrations from March 14, 2025
To establish the integration with e-Boekhouden, you need an API token. You can find this API token via Administration > Connections > API > e-Boekhouden API > Next. We recommend entering a clear name and an end date one year in the future. Please note that after this end date, you will need to re-establish the connection with the integration.
Registrations before March 14, 2025
To establish the integration with e-Boekhouden.nl, special codes are required. These are:
- username
- Security code 1
- Security code 2
5.Installation
After the installation, check using this FAQ, whether the integration works.
Installing the integration starts with signing up for a trial period, via our integrations page. After registering, you'll receive an email with an installation URL and login details. Use this installation URL to start the integration installation.
Activating the integration consists of three steps:
1. Establishing the connection with the Prestashop webshop. Through this step, you authorize the integration to read the data from your webshop.
2. Establishing the connection with e-Boekhouden. This authorizes the integration to write transactions to your e-Boekhouden administration and read information.
3. Configuring additional data, such as the VAT settings.
Read more Installation ....Read less Installation ....
Authentication with your PrestaShop webshop is done via the API key you created in a previous section. Click the red Connect button next to PrestaShop and enter the API key in the popup window. If the connection is correctly established, the indicator will turn green. If the connection is not established, check that the web service is enabled in the PrestaShop webshop.
e-Boekhouden Authentication
The red dot and the red Connect button for e-Boekhouden on the Configuration screen indicate that the connection with e-Boekhouden is not yet valid. To activate the connection, click the red Connect button. You will then see a screen containing fields for a username and two security codes. Here, you enter the username and the two security codes you determined in the previous section.
For e-Boekhouden invoices, an invoice template must be provided. Unfortunately, the integration cannot retrieve the invoice templates in the e-Boekhouden administration. Therefore, the integration uses the name 'Invoice template' as default. If you want to use a different invoice template, you can enter the name of the template when clicking Edit.
When configuring the VAT rates and general ledger accounts, a link is created between the VAT rates in webshop and the VAT codes and revenue accounts in e-Boekhouden. You can always make changes by clicking the blue 'Edit' button and selecting an option from the drop-down menus.
Intra-Community (ICP) and international deliveries
The Intra-Community supplies / ICP option is intended for business-to-business deliveries within the EU. These sales are invoiced with 0% VAT. A VAT number from the customer is required. The International option applies to deliveries outside the EU. For these sales, the integration expects 0% VAT; otherwise, the sales cannot be processed. Separate VAT codes and general ledger accounts can be configured for both ICP and international deliveries.
OSS settings
If you are dealing with OSS - new regulations as of July 1, 2021 - it can be configured as follows.
If you use the NL VAT rates, the following remains applicable:
- in the column VAT Code the VAT code with the relevant percentage
- in the column revenue account a revenue account for the net revenue, the payment and shipping costs
- the VAT account column has no function in this case
If you calculate with VAT percentages of the country of delivery in the webshop, please fill in the following:
Per EU country, except NL
- in the column VAT code the VAT code VAT_OSS
- in the VAT account column, a Balance Sheet account for the VAT to be paid in the respective country
- in the column revenue account a revenue account for the net revenue, the payment and shipping costs
Only when using VAT code VAT_OSS, the entry will take place based on the configured VAT account in the Configuration. For other codes, the VAT account is determined in e-boekhouden based on the code.
Once the VAT settings have been configured and saved, you will always see the selected VAT rates. If you want to start over, you can use the grey 'Remove VAT settings' button. Your current settings will then be deleted and you can begin again.
You can create a link here between the payment methods in the webshop and a fixed debtor in your e-Boekhouden administration. Orders with a payment method from the list will then always be posted to this debtor. In that case, no new debtors will be created.
Note: It is not possible to set fixed debtors for ICP orders. For an ICP order, a valid VAT number must be transmitted. Therefore, a debtor will always be created in e-Boekhouden for an ICP order.
This option is only available when processing to Invoices.
6.Day-to-day: From PrestaShop
In this section, we show how we retrieve the orders from Prestashop
Once an order has been processed, it cannot be processed again. Any order changed in the webshop after it has been processed will not be updated in e-Boekhouden.
Please note: Due to the load on our systems, we go back a maximum of 3 months in time to check the status of orders and process them anyway. In addition, the number of orders that can be checked is limited to 300. Therefore, ensure that orders are completed in a timely manner so that the integration can process them and you do not have to manually re-enter them.
When processing payments, the integration checks every day the Prestashop orders that have been successfully processed to e-Boekhouden. If the order has been processed, a payment will be created in e-Boekhouden for this order.
Field-level specification orders
| Below is an elaboration at field level when retrieving orders. The general values in the order, the order lines, discounts, surcharges are addressed, the shipping costs, the debtor details and the payments. | |
| Name field | Values from Prestashop order |
| Order-identifier | [id] |
| Order number | [reference] |
| Invoice number | [invoice_number] |
| Date | [date] |
| Order date | [date_add] |
| Status order | [current_state] |
| Payment method | [payment_details][method_title] |
| Total VAT order | [price][tax][amount] or - if [price][tax] consists of multiple lines, the sum of the [amount] fields of the [price][tax] lines |
| Order total incl VAT | [total_products_wt + total_shipping_tax_incl + total_wrapping_tax_incl - total_discounts_tax_incl] |
| Order total excl VAT | [total_products + total_shipping_tax_excl + total_wrapping_tax_excl - total_discounts_tax_excl] |
| Total VAT order | Order total incl - Order total excl |
| Delivery country | [], please note that the country of delivery is NOT used here. |
| ICP indication | The integration determines as follows whether it concerns an ICP order:
|
| International indication | The integration determines as follows whether it concerns an international order:
|
| To read the order lines, the integration takes the field [orderlines]. In Prestashop, order lines have different types. These are indicated by the field [type]. For the order lines, this concerns type article or type [custom]. | ||
| Name field | Values from Prestashop order line | |
| Productid | [articles][0][id] | |
| Amount | [quantity]. Please note, if the quantity is 0, the line is skipped. | |
| SKU | [articles][0][sku] if it is filled. If not, the product is retrieved from Prestashop and the SKU is determined based on that. | |
| Description | [description] | |
| VAT percentage | [price][rate], if smaller than 1, the VAT percentage is multiplied by 100. | |
| Line amount excl VAT | Amount in the field [price][amount] | |
| Line amount incl VAT | Amount in the field [price][amount_including_tax] | |
| Unit amounts | Divide the line item amounts by the amount | |
| VAT code and accounts e-Boekhouden | These are determined based on the settings, the VAT percentage and the delivery country. It also takes into account whether it is an ICP or international order. | |
| Only the payment method and possibly the set debtor are retrieved here. Payment costs are not in the Prestashop order, so they cannot be processed either. | ||
| To read the order lines, the integration takes the fields total_discounts_tax_excl] and total_discounts_tax_incl]. This concerns a discount on the entire order. The integration calculates the discount proportionally back to the VAT percentages in the shopping cart. | ||
| Name field | Values from Prestashop discountline | |
| Amount | 1 | |
| Description | Discount < |
|
| Line amount incl VAT | Relative with value [total_products_wt] | |
| Line amount excl VAT | Relative with value [total_products_wt] and the VAT percentage | |
| VAT code and accounts e-Boekhouden | These are determined based on the settings, the VAT percentage and the delivery country. It also takes into account whether it is an ICP or international order. | |
| Name field | Values from Prestashop surcharge-fields |
| Amount | 1 |
| Description | Surcharge |
| Amount excl VAT | [total_wrapping_tax_excl] |
| Amount incl VAT | [total_wrapping_tax_incl] |
| VAT amount | [total_wrapping_tax_incl] - [total_wrapping_tax_excl] |
| VAT percentage | Amount incl - Amount excl A percentage greater than 0.204 and smaller than 0.21 is rounded to 21%. |
| VAT code and accounts e-Boekhouden | These are determined based on the settings, the VAT percentage and the delivery country. It also takes into account whether it is an ICP or international order. |
| Name field | Values from Prestashop customer |
A customer's addresses must be retrieved separately in the webshop. This works as follows:
|
|
| Customer |
Customer fields
|
| Address |
Address-fields
|
| Name field | Values from Prestashop order line |
| Payment-identifier | [order_payment][id] |
| Paymentmethod-id | [order_payment][payment_method] |
| Payment method | [order_payment][module] - [order_payment][payment_method] |
| Order-id and transaction-id | [id] from the order |
| Transaction-id | [order_payment][transaction_id] from the order |
| Amount | [order_payment][amount] |
| Date | [order_payment][date_add] |
7.Day-to-day: To e-Boekhouden
Creating invoices / sales transactions
The orders from Prestashop are imported into e-Boekhouden as mutations or invoices. For each order, the VAT and ledger account are provided as configured during the installation of the integration.
When creating an OSS invoice or mutation in e-Boekhouden, for each line in the Prestashop order two lines appear in the e-Boekhouden mutation / invoice. The first line in the e-Boekhouden mutation / invoice contains the amount excl VAT and the second line the VAT amount. The first line is posted to a revenue account, the second line to a VAT account. The revenue and VAT accounts can be configured via the Configuration tab of the dashboard.
When creating invoices or mutations, descriptions and invoice numbers can be adjusted. Below are the options for creating invoices and mutations in e-Boekhouden. When creating invoices, new debtors may be added to e-Boekhouden.
Please note: When creating mutations, the integration provides a sales number. If a mutation with that number already exists, the existing mutation will be overwritten. Therefore, always ensure that sales numbers are unique, especially if you have multiple integrations feeding into a single e-Boekhouden account.
If your integration was installed after March 14, 2025, and the integration processes to Invoices, these are invoices without a corresponding mutation. We can change this to Invoices with a corresponding mutation. In that case, the invoice can no longer be modified in e-Boekhouden.
Creating new debtors
When creating a mutation or invoice in e-Boekhouden, the code of the relation in e-Boekhouden is used. The integration first checks if the debtor is already present in e-Boekhouden. If so, the integration will use the relation code of this existing e-Boekhouden debtor. If not, the integration creates the debtor in e-Boekhouden.
The integration creates a RelationCode for the new e-Boekhouden debtor. The procedure is the same as if you were to create the mutation or invoice in e-Boekhouden yourself. The method performed by the integration is:
1. Determine the company name and the name of the debtor. For the debtor's name, the first name is appended to the last name.
2. Determine whether the company name or personal name of the debtor is used as the base name. If the company name is present, this becomes the base name. Otherwise, the first plus last name.
3. Take at most the first 10 characters of the base name
4. Determine if the base name occurs more than once in e-Boekhouden. If so, it will have one or more sequence numbers. Determine the first available sequence number and append this to the base name.
Example: If the company name is empty and the name is Klaartje Pietersen, the base name becomes KlaartjePietersen. We take the first 10 characters of this. This results in KlaartjePi. If this already occurs 5 times and the highest is KlaartjePi4, the debtor code becomes KlaartjePi5.
Matching between and e-Boekhouden for debtors is based on the email address.
Please note: The integration will never modify debtors in e-Boekhouden. The email address field is used for matching debtors. For integrations started before October 28, 2023, that process to e-Boekhouden mutations, we provide the debtor data within the mutation, and e-Boekhouden determines the debtor code itself.
Creating payment transactions
Payments from Prestashop are imported into e-Boekhouden as mutations. For each payment, the financial account is provided as configured in the integration settings. If you want to change this account, you can easily do so via the Configuration tab of the dashboard.
To process a payment, the integration attempts to find the corresponding item in e-Boekhouden.
Since the sale has also been processed under the same key, the integration will attempt to find the mutation for the processed sale.
Processing without outstanding item
It is possible to process payments for which there is no outstanding item to e-Boekhouden. To do this, we need to adjust a contract setting. It is certainly not the best method, so we advise using this sparingly or not at all. Please note: There are two things to keep in mind when processing payments to e-Boekhouden:
- There is a technical limit to the number of outstanding items the integration can retrieve. We cannot say exactly where that limit lies, but a few hundred outstanding items is very many.
- e-Boekhouden has its own reconciliation option. This means that if payments come in through the bank book, for example, and the debtor and order number match, e-Boekhouden automatically matches that payment to the sales mutation. e-Boekhouden does not take the outstanding amount into account because there may also be partial payments. Always ensure that the order numbers of the mutations are unique.
Specification field level creating e-Boekhouden
| Name | Example | Note |
| Invoice number | 3908 | This is optional; we recommend letting e-Boekhouden determine the invoice numbers itself. Then they are guaranteed to be unique and sequential. If you still want to provide the invoice number, the Prestashop order number / invoice number on request can be used for this. |
| Relation code | 2023031416200123 | The RelationCode of the debtor in e-Boekhouden. It is possible that the debtor was added to e-Boekhouden by the integration in a previous step. |
| Date | 2023-01-11 | Order date |
| Payment term | 14 | |
| Accounting mutation description | ORD145 - mollie | Order number - payment method (if present) |
| DirectDebit | false | Cannot be adjusted |
| Invoice template | Invoice template | The name of the invoice profile, default Invoice template. If you cannot set the invoice profile in the Configuration tab, you can provide the name to us, and we will set it. |
| Products | The article codes of the products in e-Boekhouden. It is possible that the integration created products in e-Boekhouden for this in a previous step. | |
| PostInAccounting | true | Cannot be adjusted |
| Lines | ||
| Amount | 1 | |
| Code | 6940478067395 | Product code in e-Boekhouden |
| Description | 2-week extension | The description in the line |
| PricePerUnit | 8.22 | Unit price excl. VAT |
| VATCode | HIGH_SALES_21 | As configured via the dashboard |
| OffsetAccountCode | 8000 | As configured via the dashboard |
| CostCenterID | 0 | This is never provided |
| Name | Example | Note |
| TYPE | 2 | Invoice payment received, this cannot be adjusted. |
| ACCOUNT | 1300 |
Usually 1300, but can be adjusted on request. Account configured for the payment method - this is a financial account in e-Boekhouden. |
| DESCRIPTION | ORD235 | Payment payment method - sales number in payment. |
| INVOICE | ORD235 | sales number in payment |
| PAYMENT REFERENCE | ORD235 | order number / invoice number on request |
| DATE | 01-01-2023 | |
| INEX | EX | |
| RelationCode | Debtor from the Open Items list at the sales mutation | |
| Lines | ||
| AMOUNTEXCL | 99.09 | Amount ex VAT |
| AMOUNTINCL | 119.90 | Amount incl. VAT |
| VATAMOUNT | 20.81 | VAT amount |
| VATPERC | HIGH_SALES_21 | As set on the dashboard |
| OFFSET ACCOUNT | 8000 | As set on the dashboard |
| Name | Example | Note |
| MutationNo | Empty | e-Boekhouden determines this number automatically. This cannot be adjusted. |
| Type | InvoicePaymentReceived | This cannot be adjusted. |
| Relation code | Relation debtor in e-Boekhouden | |
| Date | 2023-10-02 | Sales date |
| Description | iDEAL - 123 - trx_qwer | Payment method - mutation number - transaction_id |
| Invoice number | 90282 | Invoice number |
| Entry document | tr_qwer | transaction ID payment |
| Payment term | 14 | Not editable |
| InExVAT | IN | Not editable |
| Line |
|
8.Support
Read more Support .... Read less Support ....
Explanation tabs dashboard
On the Dashboard >> Report you can see which orders from your Prestashop webshop, and when, have been transferred to e-Boekhouden.What if orders are missing in e-Boekhouden
If orders are missing in e-Boekhouden we recommend following the steps below:- Log in to the dashboard: https://uwkoppeling.webwinkelfacturen.nl. The username and password are included in the registration email.
- Go to the Errors tab and check if order is there. You may need to adjust the search period if the
order is from a previous month. If you find order in this overview:
- Check the error code and verify whether you can resolve it yourself.
- If yes resolve the issue and click the blue Process button to resubmit the order.
- If not use the red Report problem button to create a ticket with us.
- Note if there are multiple errors, please create only 1 or 2 tickets. We will automatically see the other issues.
- Go to the Report tab and see if order is listed there. If so, you'll often see an identifier for e-Boekhouden (in the purple section of the overview) that you can use to search for order.
- Go to the Open tab and check if order is there.
- If you cannot resolve the issue, you can always create a ticket via the green Ask us button.