1.Introduction

This is the manual for the integration between Prestashop and WeFact.

This integration ensures that orders from Prestashop webshop are automatically processed to invoices in WeFact. Because the orders go directly into the online retailer's accounting system, this saves time on financial administration.

Please pay special attention to the following
  1. This integration is a financial integration. It is not a logistics integration. It is not suitable for updating customers in WeFact, printing packing slips, or synchronizing products/inventory.
  2. 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.
  3. Tip: Other customers using this integration found the tips in the FAQ for Prestashop and in the FAQ for WeFact.

Read more Introduction .... Read less Introduction ....

Install integration
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.

Cancel integration
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

A order from the Prestashop webshop is processed to a WeFact invoice.

New orders from your webshop are retrieved at least once per hour. If they have the correct status, they are processed to WeFact. You can set the statuses via the dashboard, tab Configuration.
Read more How the integration works .... Read less How the integration works ....

Pre-check orders
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 WeFact for the VAT in each line.
  • It is checked whether the order has not already been processed.

Processing orders
Processing a Prestashop order to WeFact takes place in three steps:
  1. It is checked if the customer already exists in WeFact. If not, the customer is created. Matching is based on the email address.
  2. If product synchronisation is enabled, missing products will be created in WeFact.
  3. The WeFact invoice is created and processed.

Post-check
After the order has been forwarded and a success message from WeFact has been received, the order is marked as handled. The Prestashop order appears at the Reporting tab on the dashboard.

If WeFact 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.

Data
Information about the data that is processed can be found in the section Day-to-day: To WeFact 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.

Read more Required Prestashop ....
Read less Required Prestashop ....

 

PrestaShop API sleutel menu webservices

 

Click on Add New to create a new API key.

 

PrestaShop API sleutel aanmaken

 

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.

 

PrestaShop API sleutel naam en omschrijving

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

 

PrestaShop API sleutel instellen rechten

 

 

 

4.Required: WeFact API key

To establish the connection with WeFact for the integration, you need to do the following:
Read more Required WeFact ....
Read less Required WeFact ....
  1. Log in to WeFact
  2. Go to Settings > API
  3. Check the box to enable the API
  4. Add the IP addresses. The IP addresses are 85.10.150.5 and 85.10.143.192. (Note: until recently, these were 188.241.148.36 and 141.138.138.112. The addresses in the image below are therefore not our current IP addresses)
  5. Copy the generated API key. You will need this key in the next section, Installation.
Aanmaken API-sleutel WeFact

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 WeFact. This authorizes the integration to write transactions to your WeFact administration and read information.
3. Configuring additional data, such as the VAT settings.


Read more Installation ....Read less Installation ....

Before the integration can be used, the terms and conditions must first be accepted. The terms and conditions are based on the general ICT Terms and Conditions (industry organization) and the general GDPR guidelines. We also need a name, email address, and the country of the webshop.

Authentication PrestaShop webshop:
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.

Connection WeFact
The connection with WeFact is established via an API key that you create within your WeFact account. For the API key, you indicate which IP addresses have access to the API key. This is an extra security measure that, in principle, only needs to be filled in once.

Only if we move servers will the IP addresses need to be updated. Should this become relevant in the future, you will receive information about this in a timely manner.

Invoice layout
The integration can provide an invoice layout to the WeFact invoice. You can select the desired invoice layout from the list of available layouts.

Configure VAT rates
When configuring the VAT rates, a link is created between the VAT rates in webshop and the VAT codes and revenue accounts in WeFact. You can always make changes by clicking the blue 'Edit' button and selecting an option from the drop-down menus.

By default, all EU countries are shown in the list. You only need to configure the countries you sell to, and - if applicable - ICP and International.
The integration shows the standard VAT rates for Europe. You can adjust the VAT percentage with which you sell - left column. For example: By default, sales to Germany are set to 21%, but if you sell in the webshop with 19%, you can adjust that in the left column. 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.

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.

Configure payment methods
You can create a link here between the payment methods in the webshop and a fixed debtor in your WeFact 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 WeFact for an ICP order.

6.Day-to-day: From PrestaShop

In this section, we show how we retrieve the orders from the webshop.

Processing schedule: New orders from your webshop are retrieved and processed to WeFact at least once per hour. In addition, every night the orders that were previously retrieved and not yet forwarded to your accounting system are reviewed. The order status of these orders is checked to determine if they should now be processed.

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 WeFact.

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.
Order and invoice numbers: It is possible to provide the Prestashop order or invoice number to the WeFact invoices. When processing the invoice number, we only process the number and not the fixed prefix that is sometimes set in Prestashop. Sometimes it is desirable for reconciliation to process the checkout ID or cart ID of the Prestashop, but unfortunately, we cannot read those via the PrestaShop API. Here is an explanation of how other Prestashop webshop owners have solved this: Cart ID Prestashop.

VAT numbers For business orders within the EU, outside the Netherlands, a VAT number is mandatory. The integration checks for this and also verifies the validity of the VAT number.

VAT calculation: Prestashop webshops sometimes have VAT rates for all countries with characters from the respective country in the name. For example for Cyprus or Greece. In that case, the integration cannot store the VAT rates. We advise adjusting the names of the VAT rates in the webshop. An explanation can be found here: VAT rates Prestashop.


Field-level specification orders
Specification Prestashop order. +-
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 and the debtor details.
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:
  • If [total_paid_tax_incl] is unequal to 0
  • And the fields [total_paid_tax_incl] and [total_paid_tax_excl] are equal to eachother
  • And the delivery country is not the same as the country of the Prestashop webshop
  • And the delivery country is an EU country
  • Then it is an ICP delivery, otherwise it is not an ICP delivery
International indication The integration determines as follows whether it concerns an international order:
  • If [total_paid_tax_incl] is unequal to 0
  • And the fields [total_paid_tax_incl] and [total_paid_tax_excl] are equal to eachother
  • And the delivery country is not the same as the country of the Prestashop webshop
  • And the delivery country is not an EU country
  • Then it is an international delivery outside the EU, otherwise it is not an international delivery outside the EU
Specification Prestashop order lines. +-
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 WeFact 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.
Specification Prestashop payment costs - lines. +-
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.
Specification Prestashop discount rules. +-
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 WeFact 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.
Specification Prestashop surcharges +-
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 WeFact 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.
Specification Prestashop customer details +-
Name field Values from Prestashop customer
A customer's addresses must be retrieved separately in the webshop. This works as follows:
  • The integration retrieves the addresses via field [id] of the customer.
  • Subsequently, the integration first searches for the address that matches the address ID in the Prestashop order.
  • If this address is not present, the integration searches for the address with the same first and last name.
  • If this address is also not present, the integration takes the first address.
A similar method is used to determine the delivery address.
Customer Customer fields
  • Email - [email]
Address Address-fields
  • First name - [firstname]
  • Last name - [lastname], part of the first space
  • Company name - [company]
  • Addressline1 - [address1]
  • Addressline1 - [address1]
  • Zipcode - [zipcode]
  • City - [city]
  • Iso country code - [iso_code], the iso code is retrieved from the Prestashop webshop with a separate request based on field [id_country]
  • Country - Based on the iso country code and our own reference table between ISO code and country name
  • Phone nr - [phone]
  • VAT number - [vat_number]

7.Day-to-day: To WeFact

Create transactions
A order from the Prestashop webshop is processed to WeFact as a WeFact invoice. The draft invoice option is default and is used most often; the processed invoice option can be requested from us.

The synchronization of data between Prestashop and WeFact is as follows:

Automatically sending invoice
Even if the WeFact invoice created by the integration has the status sent, that does not mean that WeFact the invoice by email has sent. The status sent can also mean that the invoice was sent manually. If you want the invoice to be sent automatically by email, please contact us via webcare@webwinkelfacturen.nl. We adjust your contract settings so that the integration - after the WeFact invoice has been created - sends an additional command to WeFact to send the invoice to the customer by email.

Create debtors
When processing customer information, it is first checked whether the customer has been processed before. If so, this WeFact debtor is used as the debtor for the WeFact transaction. If the customer is not yet known, they are added to WeFact. Matching is based on email address.
Please note: The integration only creates debtors. The integration does not modify debtors.

Create products
We can add products to WeFact. This is disabled by default; please contact us if you would like to enable it. If enabled, the integration first checks whether the products from the order already exist in WeFact. The integration then adds missing products to the accounting system. If a product already exists in WeFact, it will not be added again. The integration automatically creates the following products in WeFact: Shipping costs, Payment costs, Surcharge, Discount, and Additional costs.
WeFact only accepts SKUs consisting of numbers/letters, without special characters.
When creating invoices, the integration uses the VAT percentage as it is in the of Prestashop. Even if there is a different VAT percentage in the product of WeFact.

Automatically sending invoices
The integration creates the invoice in WeFact, but will not automatically send the invoice to the debtor. It is possible to set an invoice layout. This can be done via the dashboard https://uwkoppeling.webwinkelfacturen.nl, tab Configuration.


Field-level specification WeFact

Field-level specification of the WeFact invoice. +-
WeFact Factuur
Name Example Note
xml
VatCalcMethod incl This means that the invoice in WeFact will display amounts including VAT. This cannot be changed. WeFact has indicated that invoices are correctly submitted in this way.
Debtor 906 WeFact debtorID
Date 2023-03-01 21:25:08 order date
InvoiceCode Empty, upon request order number / invoice number on request
Description 000000906/000000345 order number / invoice number on request
Term 14 Not editable
Status 0 Selecting status 4 - Processed is possible.
Invoice profile As set on the dashboard.
InvoiceLines
Number 1 Amount
Description 3-in-1 Magazine Bundle Description
PriceExcl 20.65 Unit price excl VAT.
TaxCode V21 VAT code
ReferenceNumber 000000906 order number
Cost center It is possible to have the revenue posted to a default cost center.
Shipping address - via CustomFields. The name fields - such as [verzend_bedrijf] - cannot be adjusted.
[shipping_company] BV Sponiza IT Company name
[shipping_firstname] Soumaya First name
[shipping_lastname] van Spanje Last name
[shipping_address] Stationstraat 12 Shipping address
[shipping_zipcode] 1000 AA Zipcode shipping address
[shipping_city] Amsterdam City shipping address
[shipping_country] The Netherlands Country shipping address
Field-level specification of the WeFact customer. +-
Name Example Note
CompanyName [company] Company name
Initials [firstname] first name
Surname [lastname] If [lastname] is not provided, we will fill in NN.
Taxnumber [VATnr] VATnumber
Address [address] If a house number is provided then: [adres][housenr]
Zipcode [zipcode] Zip code
City [city] City
Country [isocountry] Country
emailaddress [email]
Phonenumber [telnr]
Field-level specification of the WeFact product. +-
Name Example Note
productcode [articlekey]
productname [name]
productkeyphrase [description]
price excl [unitpriceexcl] Unit price excl VAT.
taxcode VAT code As set on the dashboard.
CostCentre [defaultcostcenter] If this is present, we will display it.

8.Support

We believe it is important that you as online retailer have direct access to information about the integration whenever you want. That is why every customer has a personal dashboard.
Read more Support .... Read less Support ....

Persoonlijk

Explanation tabs dashboard

On the Dashboard >> Report you can see which orders from your Prestashop webshop, and when, have been transferred to WeFact.

At Dashboard >> Errors you can see which orders have not been processed. Via the blue Process button you can (re)submit the order. Via the red Report problem button you can create a ticket with us.

At Dashboard >> Open the orders are listed that have not yet been processed because they do not yet have the correct status in the webshop. Every night jobs run to review the status again and still process the order.

At Dashboard >> Configuration the settings of your integration are listed. You can adjust the settings there.

At Dashboard >> Profile invoices are available for download. You can also specify an additional email address here for sending emails and stop the integration.

What if orders are missing in WeFact

If orders are missing in WeFact we recommend following the steps below:
  1. Log in to the dashboard: https://uwkoppeling.webwinkelfacturen.nl. The username and password are included in the registration email.
  2. 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:
    1. Check the error code and verify whether you can resolve it yourself.
    2. If yes resolve the issue and click the blue Process button to resubmit the order.
    3. If not use the red Report problem button to create a ticket with us.
    4. Note if there are multiple errors, please create only 1 or 2 tickets. We will automatically see the other issues.
  3. Go to the Report tab and see if order is listed there. If so, you'll often see an identifier for WeFact (in the purple section of the overview) that you can use to search for order.
  4. Go to the Open tab and check if order is there.
  5. If you cannot resolve the issue, you can always create a ticket via the green Ask us button.

You can send any other questions or comments to webcare@webwinkelfacturen.nl. For a quick response, please always include the license key and as much information as possible. If you encounter any problems during installation, please let us know where you're experiencing the issue. And if there's an error message, please include that as well. If you think orders is missing, please provide the number and date. This way, we can perform a more targeted search and tell you what's wrong.

We have an extensive FAQ-section on the website. Pay particular attention to these sections: https://faq.webwinkelfacturen.nl/category/27/prestashop.html and https://faq.webwinkelfacturen.nl/category/57/wefact.html.

Would you rather have us do the installation of the integration for you? That is possible. Send an email to webcare@webwinkelfacturen.nl with the request. For an installation, we charge € 39.50 excl. VAT. For installations, we need access to the webshop and the accounting system.

We can perform migrations for orders that took place in the past. The request procedure and method are described in this faq. For migrations we charge €67.50 excl. VAT per 1000 orders.