1.Introduction
This is the manual for the integration between Lightspeed eCom and AFAS.
- This integration is a financial integration. It is not a logistics integration. It is not suitable for updating customers in AFAS, 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.
- It is possible to process to AFAS sales orders, but there are restrictions. For example, new products are placed in item group 900 by default, VAT type 1 is used for low VAT and VAT type 2 for high VAT in new products.
Tip: Other customers using this integration found the tips in the FAQ for Lightspeed eCom and in the FAQ for AFAS.
You install this integration from the Lightspeed eCom App Store. If you select the Accounting category, our apps will appear automatically. You can recognize us as a supplier by the blue area and the white gear icon at the top right. If you click on the App, you will see a description and the Install button. Upon activation, you will be automatically guided through the configuration screens.
The installation is complete when both connection dots are green, and the settings in the Configuration tab have been entered and saved.
Important: Once the integration is installed, always log in to the dashboard via https://uwkoppeling.webwinkelfacturen.nl, and not from the app store.
The trial period for the integration is 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.
If you want to terminate the integration, you can simply remove the app from the app store in your backend.
Are you switching to another accounting system and want to create a new integration? You can install the new app from the app store in your backend. Make sure you are logged out of the dashboard of the old integration and preferably start the new installation in an incognito browser.
Are you switching to another webshop system? Via our integrations page you can see whether you install it from the relevant app store, or by means of an installation link.
Has the installation been successful, but do you see in the dashboard of the integration the old license key still present when you click the dropdown arrow next to the key (even though that app/key has been deleted)? If so, please send us an email requesting that the old key be removed.
2.How the integration works
The integration works with webhooks from the Lightspeed eCom webshop. Processing can be done in two ways, namely based on paid orders or invoices. The advantage of the option paid orders is that orders that are not paid do not enter the accounting system. With this option, however, credit notes are not included. With the option invoices all invoices are processed to AFAS, so both debit and credit invoices. You can set the preference for paid orders or invoices via the Configuration tab of the dashboard.
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 Lightspeed eCom order or invoice:
- It is checked whether the total of the Lightspeed eCom order / invoice is equal to the sum of the amounts in the order / invoice lines plus the shipping costs amount.
- If the order / invoice is an ICP sale, the VAT number is checked.
- It is checked whether a corresponding VAT code exists in AFAS for the VAT in each line.
- It is checked whether the order or invoice has not already been processed.
Processing orders or invoices
Processing a Lightspeed eCom order or invoice to AFAS takes place in three steps:
- It is checked if the customer already exists in AFAS. If not, the customer is created. Matching is based on the email address.
- When processing to AFAS orders, it is checked whether the products from the Lightspeed eCom order or invoice are already present in AFAS. Missing products are created.
- The AFAS order or financial entry is created and added.
After the order or invoice has been forwarded and a success message from AFAS has been received, the order or invoice is marked as handled. The Lightspeed eCom order appears at the Reporting tab on the dashboard.
If AFAS returns an error while processing the order or invoice, the order or invoice 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 or invoice 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 or invoices 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 AFAS later in the manual.
3.Required: AFAS Key and connectors
To get the connection working, an AppConnector must be created in the Afas Administration. The AppConnector must be populated with GetConnectoren and UpdateConnectoren.
Step 0: Create user group and special user
Afas advises you to create a separate username and user group for the connection.
- Creating a separate user group is done via General > Administration > Authorization tool
- Create the new user group via Group > New and fill in the details.
- For more information see: https://help.afas.nl/help/NL/SE/App_Auth_Group_Add.htm
- Create system user and place in group
- Go to User > New system user
- Vul de gebruikersnaam en omschrijving in.
- Click on: Next.
- Profit Windows must be unchecked.
- Complete the wizard. You do not need to enter an email address and UPN.
- Go to the tab: Group maintenance.
- Select the user group you created in step 1.
- Go to the tab: Users in group.
- Click on New.
- Check the connector user.
- Click on: Ok.
- Close the Authorization tool. You do not need to reopen the environment.
- Also see https://help.afas.nl/help/NL/SE/App_Auth_Group_Add.htm
Step 1: Create AppConnector
To create the AppConnector, log in to the Profit environment and go to General > Administration > AppConnector.
Enter a clear description for the AppConnector and specify a user group. Afas users in that user group can use the connector.
Then click Finish.
The AppConnector opens. The check mark next to Blocked is pre-checked. Remove this check mark.
Step 2: Add GetConnectoren
We make the GetConnectors available as a zip file. You can download this file here: https://www.webwinkelfacturen.nl/afas_getconnectors.zip
Extract the zip file on your own computer.
Then go to General > Output > Management > GetConnector and click on import.
You can import the GetConnectors one by one. After that, you can add them to the AppConnector. If you are working in a browser, you can upload the GetConnectors to your temporary Afas drive via the lines at the top of the screen and the upload circle.
Step 3: Add UpdateConnectoren
Go to the Update Connectors option and click New to add a new Update Connector. We recommend adding these connectors:
- FbItemArticle - for adding products
- FiEntries - for adding financial transactions
- FbSales - for adding orders
- KnSalesRelationOrg - for adding customer organizations
- KnSalesRelationPer - for adding customer relationships
Step 4: Add user tokens
Via the User Token tab, you can generate a code to authorize the connection to the Afas environment. Click on New to create a new user token.
Select the user and provide a description. You can create multiple tokens for one user.
A screen with a special code will now appear. Save this code carefully. You will need this code during the configuration of the connection on the dashboard https://uwkoppeling.webwinkelfacturen.nl. Please note that you need the entire code, including the 1 part.
If you are working via the browser, you can copy the code from the top of the screen. This saves a lot of typing and prevents errors.
4.Installation
The integration between Lightspeed eCom and afas is installed via the Lightspeed App Store. First, the connection with your webshop is established and you authorize the integration to read data from your webshop.
Read more Installation .... Read less Installation ....
Two more steps need to be completed:
1. Establishing the connection with AFAS. This authorizes the integration to write transactions to your AFAS administration and to read information.
2. The configuration itself.
Authentication AFAS
Establishing the connection with AFAS is done via the red Connect button in the Configuration tab. In the pop-up, you enter your Customer Code (this is the AFAS online 5-digit member number), and the token you created in the previous section. Please note, you need the entire code as a token, including the 1-part.
To use AFAS, select an administration within your account. You also indicate in which journal the revenue should be posted and what the debtors account is. The journal for processing (individual) orders or invoices will be a Sales journal.
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 AFAS. You can always make changes by clicking the blue 'Edit' button and selecting an option from the drop-down menus.
By default, the integration shows a fixed list of VAT rates per EU country. You can configure this fixed list. If you provide OSS, you can easily adjust the list with the correct VAT percentage per country. If you prefer to use the VAT rates from your webshop, you can adjust this in the contract settings. 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 AFAS administration. Orders or invoices 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 or invoices. For an ICP order or invoice, a valid VAT number must be transmitted. Therefore, a debtor will always be created in AFAS for an ICP order or invoice.
5.Day-to-day: From Lightspeed
VAT numbers: For business orders within the EU, outside the Netherlands, a VAT number is mandatory. The integration performs a check on the validity of VAT numbers.
Field-level specification orders
| Below is an elaboration at field level when retrieving orders. The general values in the order and the order rules are discussed, the shipping costs and the debtor details. | |
| Name field | Values from Lightspeed eCom order |
| Order-identifier | [id] |
| Order number | [ordernumber_full] |
| Affiliate number | This must be requested separately by the merchant. The field [comment] is used for this. |
| Customer number | [customer][resource][id], this is not used |
| Order and booking date | [createdAt] |
| ICP indication |
An order is an ICP order if:
|
| International indication |
An order is an international order if:
|
| Order status | [status] |
| Payment status | [paymentStatus] |
| Payment method | [paymentTitle] |
| Paymentmethod-id | [paymentId] |
| Total amounts excl VAT | [priceExcl] |
| Total amounts incl VAT | [priceIncl] |
| Total VAT | Total incl - Total excl |
| Total discounts incl or excl VAT | The amounts in the order can be incl. or excl. VAT. This is determined by the field [order_row_taxes_included] |
| Total discounts | 0 |
| Name field | Values from Lightspeed eCom order |
| VAT percentage | [taxRate] * 100 |
| Name product | The name of the product is determined as follows
|
| SKU | [sku] |
| Ean | [ean] |
| Productcode | [articleCode] |
| Amount | [quantityOrdered] |
| Discount excl / incl VAT | [discountExcl] / [discountIncl] |
| Line amounts incl or excl VAT without discount | [basePriceExcl] / [basePriceIncl] * quantity |
| Line amounts incl or excl VAT with discount | [priceExcl] / [priceIncl] |
| Unit amounts incl or excl VAT without discount | [basePriceExcl] / [basePriceIncl] |
| Unit amounts incl or excl VAT with discount | [priceExcl] / [priceIncl] divide by the quantity |
| Accounts and VAT codes from AFAS | These are determined based on the settings in the integration, the delivery country of the order and the VAT percentages. The type for order lines is turnover / revenue. |
| Name field | Values from Lightspeed eCom order |
| Name | Shipping costs [shipmentTitle] |
| VAT percentage | [shopmentTaxRate] * 100 |
| Shipping costs incl or excl VAT without discount | [shipmentBasePriceExcl] / [shipmentBasePriceIncl] |
| Discount Shipping costs incl or excl VAT | [shipmentDiscountExcl] / [shipmentDiscountIncl] |
| Shipping costs incl or excl VAT with discount | [shipmentBasePriceExcl] / [shipmentBasePriceIncl] minus [shipmentDiscountExcl] / [shipmentDiscountIncl] |
| Accounts and VAT codes from AFAS | These are determined based on the settings in the integration, the delivery country of the order and the VAT percentages. The type for shipping costs is shipping / shipping costs. |
| Name field | Values from Lightspeed eCom order |
| Name | Payment costs [paymentTitle] |
| VAT percentage | [paymentTaxRate] |
| Payment costs incl and excl VAT | [paymentBasePriceExcl] / [paymentBasePriceIncl] |
| Accounts and VAT codes from AFAS | These are determined based on the settings in the integration, the delivery country of the order and the VAT percentages. The type for payment costs is payment / payment costs. |
| Name field | Values from Lightspeed eCom order |
| First name | [first_name] |
| Last name | [last_name] |
| Company name | [companyName] |
| Phone number | [phone] |
| Chamber of Commerce number | [companyCoCnumber], a clean-up action takes place here |
| Address line 1 | [addressBillingStreet] [addressBillingNumber] [addressBillingExtension] |
| Address line 2 | [addressBillingStreet2] |
| Zip code | [addressBillingZipcode] |
| City | [addressBillingCity] |
| Country | [addressBillingCountry][code], and the name is determined based on that code |
| Iso country | [addressBillingCountry][code] |
| Shipping address | Same as for the billing address, but now with [addressShipping] instead of [addressBilling] |
| VAT number | [companyVatNumber] - this is checked for correctness |
| Emailaddress | [email] |
Field-level specification invoices
| Below is a specification at field level for retrieving invoices. The debtors from the invoice are read in the same way as for orders. The fields are listed above. | |
| Name field | Values from Lightspeed eCom invoice |
| Invoice-identifier | [id] |
| Invoice number | [number] |
| Order-identifier | [id] of the order associated with the invoice |
| Affiliate number | This must be requested separately by the merchant. The field [comment] is used for this. |
| Invoice date | [createdAt] |
| ICP indication |
An order is an ICP order if:
|
| International indication |
An order is an international order if:
|
| Payment status | [paymentStatus] |
| Payment method | [paymentTitle] |
| Paymentmethod-id | [paymethodId] |
| Total amounts incl or excl VAT | [priceIncl] and [priceExcl] |
| Total VAT | [priceIncl] - [priceExcl] |
| Similar to retrieving customer data from the order, see above. |
| The invoice lines in the Lightspeed invoice have a type. The lines with type equal to product or custom are designated as invoice lines. These invoice lines are processed one by one. | |
| Name field | Values from the Lightspeed eCom invoice line |
| VAT percentage | [taxRate] * 100 |
| Name product | The name of the product is determined as follows
|
| SKU | [sku] |
| Ean | [ean] |
| Productcode | [articleCode] |
| Amount | [quantity] |
| Discount excl / incl VAT | [discountExcl] / [discountIncl] |
| Line amounts incl or excl VAT without discount | [basePiceExcl] / [basePriceIncl] * [quantity] |
| Line amounts incl or excl VAT with discount | [priceExcl] / [priceIncl] |
| Unit amounts incl or excl VAT without discount | [basePriceExcl] / [basePriceIncl] |
| Unit amounts incl or excl VAT with discount | [priceExcl] / [priceIncl] divide by [quantity] |
| Accounts and VAT codes from AFAS | These are determined based on the settings in the integration, the delivery country of the invoice and the VAT percentages. The type for invoice lines is turnover / revenue. |
| The invoice lines in the Lightspeed invoice have a type. The lines with type equal to shipment. The integration expects a maximum of 1 shipping line. | |
| Name field | Values from the Lightspeed eCom shipping line |
| VAT percentage | [taxRate] * 100. If the VAT percentage is 0, it is checked whether the VAT percentage can be determined from [basePriceIncl] and [basePriceExcl] |
| Name | Shipping costs [variant] |
| Amount | 1 |
| Discount excl / incl VAT | [discountExcl] / [discountIncl] |
| Line amounts incl or excl VAT without discount | [basePiceExcl] / [basePriceIncl] |
| Line amounts incl or excl VAT with discount | [priceExcl] / [priceIncl] |
| Unit amounts incl or excl VAT without discount | [basePriceExcl] / [basePriceIncl] |
| Unit amounts incl or excl VAT with discount | [priceExcl] / [priceIncl] |
| Accounts and VAT codes from AFAS | These are determined based on the settings in the integration, the delivery country of the invoice and the VAT percentages. The type for shipping lines is shipment / shipping costs. |
| The invoice lines in the Lightspeed invoice have a type. The lines with type equal to payment. The integration expects a maximum of 1 payment line. | |
| Name field | Values from the Lightspeed eCom payment line |
| VAT percentage | [taxRate] * 100. If the VAT percentage is 0, it is checked whether the VAT percentage can be determined from [basePriceIncl] and [basePriceExcl] |
| Name | Payment costs [variant] |
| Amount | 1 |
| Discount excl / incl VAT | [discountExcl] / [discountIncl] |
| Line amounts incl or excl VAT without discount | [basePiceExcl] / [basePriceIncl] |
| Line amounts incl or excl VAT with discount | [priceExcl] / [priceIncl] |
| Unit amounts incl or excl VAT without discount | [basePriceExcl] / [basePriceIncl] |
| Unit amounts incl or excl VAT with discount | [priceExcl] / [priceIncl] |
| Accounts and VAT codes from AFAS | These are determined based on the settings in the integration, the delivery country of the invoice and the VAT percentages. The type for payment lines is payment / payment costs. |
6.Day-to-day: To AFAS
Creating orders / sales transactions
The orders or invoices from Lightspeed eCom are imported into AFAS as financial entries or orders. For each order or invoice, the VAT and general ledger account are provided as configured during the installation of the integration.
When creating entries / orders, new debtors and/or products may be added to AFAS.
Cost center
It is possible to provide one default cost center to the order or sales transaction. One default cost center is possible per integration. Contact webcare@webwinkelfacturen.nl stating the license key to make use of this.
When processing customer information, it is first checked whether the customer has been processed before. If so, this AFAS debtor is used as the debtor for the AFAS order or financial entry. If the customer is not yet known, they are added to AFAS. Matching is based on email address. Please note: The integration only creates debtors. The integration does not modify debtors.
When processing to AFAS orders incl. products, products that are not yet in AFAS will be added. See here for an explanation of how product codes are determined FAQ. The product is assigned VAT group 1 if the product has 9% or 6% in the sales line. Otherwise, the new product is assigned VAT group 2. The product is automatically placed in AFAS item group 900. Ensure that this is also configured in the AFAS administration, otherwise the entries may go wrong.
Please note: The integration only creates products. The integration does not modify products.
The rules for matching products between Lightspeed eCom and AFAS can be found in this FAQ be read.
The integration creates an order or financial entry in AFAS, not an invoice. Therefore, the integration cannot ensure that the invoice is automatically sent to the customer.
Field-level specification AFAS
| Name | Example | Note |
| Paragraph | ||
| Year | 2023 | Invoice date year (Lightspeed eCom order) |
| period(Peri) | 03 | Invoice date month (Lightspeed eCom order) |
| UniqueId(UnId) | 3 | Administration - One administration is possible per integration. |
| Journal(JoCo) | 01 | Journal |
| (AutoNumber)AuNu | 1 | |
| AFAS assigns the invoice numbers (default) - can be adjusted to the invoice or order number upon request. | ||
| Total line | ||
| AccountNumber(AcNr) | 89302 | |
| EnDa | 2023-03-01 | Order date |
| BpDa | 2023-03-01 | Order date |
| Description(Ds) | ORD08725 | Description - Lightspeed eCom order number. |
| BpNr | ORD08725 | Payment reference - Lightspeed eCom invoice or order number. |
| AmountDebet(AmDe) | 24.95 | Total price incl. VAT - debit. |
| Cost center(DiC1) | xxxx | The default cost center if configured. |
| If AFAS does not determine the invoice number - order number or invoice number | ||
| Revenue line | ||
| VaAs | 2 | 1 = General ledger account. 2 = debtor |
| AccountNumber(AcNr) | 89302 | |
| EnDa | 2023-03-01 | order date |
| BpDa | 2023-03-01 | |
| Description(Ds) | ORD08725, INV09854 | Description - Lightspeed eCom order or invoice number. |
| BpNr | ORD08725 | Payment reference - Lightspeed eCom invoice or order number. |
| AmountDebet(AmDe) | 24.95 | Total price incl. VAT - debit. |
| If AFAS does not determine the invoice number - order number or invoice number | ||
| VAT lines | ||
| VaAs | 1 | 1 = General ledger account. 2 = debtor |
| AccountNumber(AcNr) | 8000 | |
| EnDa | 2023-03-01 | Order date |
| BpDa | 2023-03-01 | Order date |
| Description(Ds) | Garden light | Description: VAT - Name in the order line - Amount excl. VAT. |
| BpNr | ORD08725 | Entry number: Lightspeed eCom invoice number or order number. |
| AmountCredit(AmCr) | 20.62 | VAT amount - credit. |
| VatId(VaId) | 101 | VAT account |
| If AFAS does not determine the invoice number - order number or invoice number. | ||
| Any rounding difference is processed in the VAT amounts if the rounding difference is 5 cents at most. | ||
| Name | Example | Note |
| Paragraph | ||
| OrderNumber (OrNu) | [number] | Lightspeed eCom - invoice or order number. |
| OrderDate(OrDa) | [date] | Lightspeed eCom - order date.. |
| DebtorID(DbId) | [debtornr] | AFAS debtor ID |
| Unit | [division] | Administration - Per integration, the administration is fixed. |
| CurrencyId(CuId) | EUR | Currency - This option is disabled by default. You can contact us if you wish to use this. |
| InclVat(InVa) | true | Total price incl. VAT (true), unless afasexcltax is configured. |
| War | ***** | Default for the warehouse, can be overwritten via the settings |
| Reference(Re) | [notes] | Comment - if present. |
| FRef | [number] | InvoiceReference (payment reference) Lightspeed eCom order number |
| line | ||
| Description(Ds) | [name] | Description |
| Ledger account | as configured on the dashboard. | |
| Quantity(QuUn) | 1 | Amount |
| ItemCode(ItCd) | [productid] | Productcode |
| Unitprice(Upri) | excl. / incl. VAT | Unit price, as configured on the dashboard. |
| Name | Example | Note |
| CuId | EUR | Not editable |
| IsDb | true | Not editable |
| PaCd | 14 | Not editable |
| PersonDetails | ||
| Padadr | true | Not adjustable |
| AutoNum | true | Not editable |
| MatchPer | 7 | Not editable |
| SpNm | false | Not editable |
| FiNm | Karin | |
| Last name | de Wit | |
| ViGe | 0 | Not editable |
| EmAd | info@sponiza.nl | |
| AdresDetails | ||
| CoId | NL | AFAS country code |
| PbAd | false | Not editable |
| StAd | Not editable | |
| Ad | Stationstraat | |
| HmNr | 12 | |
| ZpCd | 1000 AA | |
| Rs | Amsterdam | |
| Name | Example | Note |
| AutomaticID(AuId) | false | |
| ItemCode(ItCd) | [ArticleKey] | |
| ChDs | false | |
| Group(Grp) | 900 | |
| BiSt | false | |
| BiUn | ***** | |
| VaRc | [Vattype] | VAT type |
| CostPrice(CoPrice) | [costprice] | |
| SalePrice(SaPrice) | [priceIncl] | Unit price INCL. |
| BatchCode(BaCo) | [eannumber] | Product Number |
7.Support
Read more Support .... Read less Support ....
Explanation tabs dashboard
On the Dashboard >> Report you can see which orders or invoices from your Lightspeed eCom webshop, and when, have been transferred to AFAS.What if orders or invoices are missing in AFAS
If orders or invoices are missing in AFAS 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 or invoice is there. You may need to adjust the search period if the
order or invoice is from a previous month. If you find order or invoice 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 or invoice.
- 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 or invoice is listed there. If so, you'll often see an identifier for AFAS (in the purple section of the overview) that you can use to search for order or invoice.
- Go to the Open tab and check if order or invoice is there.
- If you cannot resolve the issue, you can always create a ticket via the green Ask us button.