1.Introduction
This is the manual for the integration between Prestashop and Asperion.
- This integration is a financial integration. It is not a logistics integration. It is not suitable for updating customers in Asperion, 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 Asperion.
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 Asperion. 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 Asperion 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 Asperion 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 Asperion takes place in three steps:
- It is checked if the customer already exists in Asperion. If not, the customer is created. Matching is based on the email address.
- When processing to Asperion invoices incl. products, it is checked whether the products from the Prestashop order are already present in Asperion. Missing products are added to Asperion.
- The Asperion invoice or sales entry is created and added.
Because the integration created the Asperion invoice for the Prestashop sale, the Asperion invoice is known. The payment entry is created for this invoice and processed to Asperion. Note: The invoice in Asperion must be processed. The payment entry cannot be processed if the invoice still has a draft status.
After the order has been forwarded and a success message from Asperion has been received, the order is marked as handled. The Prestashop order appears at the Reporting tab on the dashboard.
If Asperion 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 Asperion 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: Asperion connection
The connection to Asperion is established via OAuth. You can easily set up this connection via the Configuration tab on the dashboard https://uwkoppeling.webwinkelfacturen.nl. An image of this is included in the following section.
If you wish to switch to Asperion invoices including products, the integration will add a product if it does not yet exist. The integration will use the revenue accounts configured via the dashboard https://uwkoppeling.webwinkelfacturen.nl as far as possible, but it may happen that the revenue account cannot be determined.
In that situation, the integration will use a default Sales Type SHOPORDER. Ensure that this Sales Type is available in your Asperion account. The image below shows how to add the SHOPORDER Sales Type.
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 Asperion. This authorizes the integration to write transactions to your Asperion 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.
Authentication Asperion
The authentication with Asperion runs via OAuth. Make sure you are logged out of Asperion before starting the connection. You now click on the red Connect button. A login screen for your Asperion account will automatically appear. When you log in, you will get a screen asking if you allow the connection. If you confirm this, the connection with Asperion is established.
If you want to re-establish the connection at a later time—for example, because you want to connect via a different Asperion user—you can always do so by clicking the Connect button.
To use Asperion, select an administration within your account.
You can also set a payment condition for new debtors. One payment condition is possible per integration, and setting a payment condition is mandatory.
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 Asperion. 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.
You can create a link here between the payment methods in the webshop and a fixed debtor in your Asperion 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 Asperion for an ICP order.
6.Day-to-day: From PrestaShop
In this section, we show how we retrieve the orders from the webshop.
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 Asperion.
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 Asperion. If the order has been processed, a payment will be created in Asperion 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 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:
|
| 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 Asperion | 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 Asperion | 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 Asperion | 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 Asperion
For orders in Prestashop, sales entries or invoices can be created in Asperion. Invoices are the default. If you prefer to process to sales entries, you can configure this on the dashboard, Configuration tab. When processing to invoices in Asperion, the integration posts to the products in Asperion. This does not happen when processing to sales entries.
The invoices in Asperion are always created with draft status. Unfortunately, it is not possible to set the invoices in Asperion to paid.
Create payments
For orders in Prestashop, payment transactions are created in Asperion. The payment transaction consists of two lines, one line for the payment and one for the associated invoice. To create a payment transaction, the corresponding invoice must therefore already be in Asperion.
Create debtors
When processing customer information, it is first checked whether the customer has been processed before. If so, this Asperion debtor is used as the debtor for the Asperion invoice or sales entry. If the customer is not yet known, they are added to Asperion.
Matching is based on email address. Please note: The integration only creates debtors. The integration does not modify debtors.
Create products
This only applies when processing to Asperion invoices. When creating a new product, the integration will, where possible, use the revenue account configured in the dashboard. If the revenue account cannot be determined, products will be assigned a default sales type SHOPORDER. Therefore, ensure this sales type is present in your Asperion account.
Please note: The integration only creates products. The integration does not modify products.
When processing to Asperion invoices, products in the sales lines will be looked up in Asperion. When posting to Asperion invoices, the SKU of the Asperion product will be included in the lines of the Asperion invoice. No separate revenue account is provided in the Asperion invoice lines, as that revenue account is already associated with the product in Asperion. This means that if a product is not yet present in Asperion, the integration will create this product using a revenue account from the settings.
The rules for matching products between Prestashop and Asperion can be found in this FAQ read here.
The integration creates the invoice in Asperion with the status draft. The invoice must first be processed in Asperion. Only then can the invoice be sent to the customer. Therefore, the integration cannot ensure that sending happens automatically.
Field level specification creating Asperion invoice / sales transaction
| Below is an specification at field level for the creation of an invoice or sales transaction. | |
| Name field | Values from Prestashop order |
| Date | orderdate |
| Customer number | [debtorcode] from Asperion |
| Subject / Reference | This field is composed of the order number and/or (credit) invoice number
|
| Company - invoice | Company name in the invoice address |
| For the attention of - invoice | First name Last name in the invoice address |
| Address - invoice | Invoice address house number in the invoice address |
| Postcode - invoice | Postcode in the invoice address, max length 10 |
| City - invoice | City in the invoice address |
| Country code - invoice | Country code in the invoice address |
| Company - shipping | Company name in the shipping address |
| For the attention of - shipping | Shipping first name shipping last name in the shipping address |
| Address - shipping | Shipping address house number in the shipping address |
| Postcode - shipping | Postcode in the shipping address, max length 10 |
| City - shipping | City in the shipping address |
| Country code - shipping | Country code in shipping address |
| Payment condition | Payment term |
| Payment method |
|
| lines |
|
| Separate lines are created for the various components of the order. For an order with five individual products and shipping costs, there will be (5 + 1 =) six lines in the Asperion invoice. If the order has five individual products and two surcharges, the Asperion invoice will have (5 + 2 =) seven lines. | |
| Name field | Value |
| Entry type | Is calculated as follows:
|
| SKU | If the product is in Asperion, the SKU of the product is used. Thus, it is only added for entry type A. |
| Description | name or description from the line |
| Amount | quantity |
| Unit price | The unit price is determined as follows
|
| VAT-code | Based on the VAT and ledger settings in the dashboard |
| Revenue account | Based on the VAT and ledger settings in the dashboard. Only added if the booking type is G. |
| This concerns discounts on the entire order that have been allocated proportionally to the VAT percentages on the lines. | |
| Name field | Value |
| Entry type | G, this is a discount line |
| SKU | If the product is in Asperion, the SKU of the product is used. Only added for booking type A. |
| Description | name or description from the line |
| Amount | Quantity |
| Unit price | The unit price is determined as follows
|
| VAT-code | Based on the VAT and ledger settings in the dashboard |
| Revenue account | Based on the VAT and ledger settings in the dashboard. Only added if the booking type is G. |
| Below is a specification at field level for the creation of a payment. | ||
| Name field | Value | Remark |
| Date | 2023-08-01 | Current date |
| Journal | 40 | Memo journal |
| Description | Payment identifier - invoice number | Number of the Asperion invoice |
| Transaction lines | ||
| Payment information line |
|
The VAT amount is 0 |
| Line Asperion invoice |
|
|
| Name field | Values from Prestashop order | |
| Name | firstname lastname, max length 50 | |
| Phone number | phone no, max length 15 | |
| City | city | |
| Address | address housenumber | |
| Zip code | zipcode, max length 10 | |
| Country code | isocountry | |
| VAT number | VAT number | |
| Emailaddress | ||
| Payment condition | paymentcondition |
| Name field | Values from Prestashop order |
| SKU | articlekey following the logic SKU, EAN, article code |
| Description | description, max length 100 |
| Keep track of article stock | true, cannot be adjusted |
| Fixed selling price | 0, cannot be adjusted |
| General ledger account | revenue account |
| Date added | Current date Y-m-d |
| Date modified | Current date Y-m-d |
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 Asperion.What if orders are missing in Asperion
If orders are missing in Asperion 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 Asperion (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.