1.Introduction
This is the manual for the integration between Woocommerce and SnelStart.
- This integration is a financial integration. It is not a logistics integration. It is not suitable for updating customers in SnelStart, 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.
- We do our utmost to keep the manuals up to date. No rights can be derived from the content of this manual. We appreciate customer feedback to further improve the manuals.
- Tip: Other customers using this integration found the tips in the FAQ for Woocommerce and in the FAQ for SnelStart.
Installing the integration starts with signing up for a trial period, via our integrations page. After registering, you'll receive an email containing an installation URL and login details. Use this installation URL to start the integration setup. Installation is complete when both dots for the connection are green and the settings in the Configuration tab have been entered and saved.
There is a 30-day trial period. 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.
When uninstalling the integration, we recommend revoking the consumerkey and consumersecret in WooCommerce.
2.How the integration works
New orders from your online store are retrieved at least once per hour. If webhooks are enabled in the Woocommerce webshop, orders are retrieved in real time. In addition, any previously retrieved orders that have not yet been sent to your accounting system are checked every night. For more details see the FAQ.
If the option Process payment to clearing account is enabled, for each processed order to SnelStart, the task to process the payment will also be created.
Read more How the integration works .... Read less How the integration works ....
At the start of processing a order we perform a number of checks on the Woocommerce order:
- It is checked whether the total of the Woocommerce order is equal to the sum of the amounts in the order lines plus the shipping amount.
- If the order is an ICP order, the VAT number is checked.
- It is checked whether a corresponding VAT code exists in SnelStart 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 SnelStart and that has been paid in Woocommerce. It is possible to always process the payment, regardless of the status in Woocommerce. This can be requested via webcare@webwinkelfacturen.nl.
Processing a Woocommerce order to SnelStart takes place in three steps:
- It is checked if the customer already exists in SnelStart. If not, the customer is created. Matching is based on the email address.
- When processing to SnelStart orders, it is checked whether the products from the Woocommerce order are already present in SnelStart. Missing products are created.
- The SnelStart transaction (financial entry, order) is created and processed.
When processing a payment, the integration first looks up the outstanding item in SnelStart that belongs to the invoice. The integration uses the following criteria to search for the outstanding item:
- A match is performed on the amount
- If a customer email address is available, a match is performed on this email address
- A match is performed on the order number and the description in the payment
After the order has been forwarded and a success message from SnelStart has been received, the order is marked as completed. The Woocommerce order appears in the Report tab on the dashboard. If SnelStart 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 SnelStart later in the manual.
3.Required: WooCommerce keys
The last paragraph of this chapter "WooCommerce Keys" is only necessary if you want to push real-time orders in addition to the regular batch. If you skip this subsection, your orders from WooCommerce will still be transferred regularly and automatically at the batch level after installing the connection in the next chapter.
To create the webhook, click on the "Webhooks" tab within the "Advanced" main tab and then on the "Add webhook" button.
In the screen that has now opened, fill in the requested information. Provide a clear description for the name of the webhook. The Status must be "active". In the third field, enter when the webhook is activated. We recommend choosing "Order updated" (Dutch "Order gewijzigd") here.
At “Delivery URL" enter: https://interface.cloudinvoice.company/api/v1/servlet/woocommerce/webhook.php?licensekey=UWLICENTIESLEUTEL
where "UWLICENTIESLEUTEL" is of course your own specific webwinkelfacturen.nl license key that you received in your email confirmation of the connection (a 32-character letter/number combination). For the secret, enter the WooCommerce consumer secret as generated at the beginning of this paragraph. Finally, you must save the configuration (save webhook).
Indien je later ooit de Webhooks zou willen de-activeren, ga je binnen "Advanced” tab naar subtab "Webhooks" en kiest voor die specifieke webhook "delete permanently”.
4.Required: Snelstart API key
To establish the connection with your Snelstart account, you need to create a special key. This key is a secret key that authorizes the integration to read from your Snelstart account and, for example, add debtors and sales entries to your account. Essentially, the key is a special password for the connection.
You create the key depending on your Snelstart administration. Therefore, ensure that you check that you create the key for the administration in which you want to book the revenue.
To create the key for Snelstart, log in to the web version of Snelstart at https://web.snelstart.nl. Go to the 'Connections' menu item and search for 'Webwinkelfacturen'. Various tiles for different systems will now appear. Look for the tile for Woocommerce.
Now click on Generate the key. Copy this key and save it. You will need to enter it later during the installation of the connection.
5.Installation
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 WooCommerce webshop. In this step you authorize the integration to read data from your webshop.
2. Establishing the connection with SnelStart. This authorizes the integration to write transactions to your SnelStart administration and read information.
3. The configuration itself.
The connection with the Woocommerce webshop is established using the Clientkey and Clientsecret that you created in a previous section. Click the red Connect button next to Woocommerce and enter the Clientkey and Clientsecret in the popup window. If the connection is established correctly the indicator will turn green. If the connection is not established then this is the FAQ for troubleshooting.
SnelStart connection
You establish the connection with SnelStart via the key you determined in the previous step. Click the red Connect button next to SnelStart. You can now enter the key in the popup window.
You can specify which statuses orders should be processed to SnelStart. You can select multiple statuses. The integration will never forward orders twice. The integration is protected against this.
It is possible to set a journal. If you process to SnelStart financial entries, setting it is optional, and you fill in Debtors. Invoice layout
When processing to SnelStart orders, an invoice layout can be selected. This is not 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 SnelStart. You can always make changes by clicking the blue 'Edit' button and selecting an option from the drop-down menus.
In Woocommerce you can work with standard VAT rates or with the VAT rates from the webshop. We recommend that you work with standard VAT rates. This takes a little more time to set up, but it prevents orders from not being processed to SnelStart.
Option 1:
With standard VAT rates you work with a list of VAT rates per EU country. You can adjust the VAT percentage for orders and configure the VAT settings for SnelStart per EU country. For example, if you deliver to Germany you can indicate in the settings that 19% and/or 7% VAT is used and that it should be booked to a separate code in SnelStart.
Option 2:
With VAT rates from the shop the integration retrieves the VAT rates from the webshop. Countries that are not present in the webshop VAT settings will therefore not appear in the list. Woocommerce works with VAT percentages and VAT classes. This combination is loaded and validated by the integration. An order with 21% VAT and VAT class reduced will often not be processed because in Woocommerce the VAT class standard usually belongs to 21%.
We often see this go wrong, which is why we recommend the first option, namely standard VAT rates. 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 SnelStart 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 SnelStart for an ICP order.
When processing payments, a clearing account of type Payment methods is set in SnelStart. When setting up the clearing accounts, there is no (longer a) possibility to post to fixed debtors per payment method.
It is possible to process the revenue based on product categories. You can set the ledger accounts here. We advise a maximum of 40 categories and there is a technical maximum of 99 categories. When setting accounts for categories, these take preference. The revenue accounts for the VAT rates will be canceled.
When processing to Snelstart orders, a product is provided instead of a revenue account. Within Snelstart, this product is linked to a product account. Therefore, posting to categories is not possible when processing to Snelstart orders.
6.Day-to-day: From WooCommerce
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 SnelStart.
Payments (if activated):
When processing payments, the integration checks every day the Woocommerce orders that have been successfully forwarded to SnelStart. If the order has been forwarded and the status of the order in Woocommerce is paid, then a payment will be created in SnelStart for this order. If desired, payments can always be created — regardless of the status of the order in Woocommerce. Send an email to webcare@webwinkelfacturen.nl to request this.
Orders that are picked up and have a status other than one of the selected options will automatically be transferred the following night if they have one of the selected options in WooCommerce.
* Technical: This concerns the fields [total], [total_tax], [subtotal], [subtotal_tax] and [taxes] per order line in [line_items].
- The fields [total] and [total_tax] contain the line amount excluding VAT and the VAT amount after discount, in two decimals
- The fields [subtotal] and [subtotal_tax] contain the line amount excluding VAT and the VAT amount before discount, in two decimals.
- The [taxes] field contains the same amounts but with four decimals. The integration uses the values in [taxes] for the VAT calculation.
Please note: The integration looks back 30 days to retrieve refunds. Refunds that come in later cannot be processed by the integration. The integration only processes a refund if it has previously processed the order to which the refund relates. Finally, the integration only processes full refunds . Partial refunds are not processed. For more information see the FAQ
Pay special attention to fields that come from plugins. There is a good chance that the integration does not process these fields. For example, with discount plugins the amounts may not be correctly included in the order, preventing the order from being processed.
Field-level specification orders
| Name field | Values from Woocommerce order |
| Order-identifier | [id] |
| Order number | A fixed prefix followed by field [number]. The prefix configuration can be requested via webcare@webwinkelfacturen.nl |
| Invoice number | Determined from the [meta_data]. The following fields are examined in turn. The first one present is returned.
|
| Booking date | [date_created] |
| Order date | [date_created] |
| Status order | [status] |
| Payment status | If the status of the order is completed or processed or if [date_paid] has been entered then paid |
| Payment reference | [id] |
| Note | [customer_note] |
| Is it a Bol.com order? | The answer is yes if there is a field [customer_user_agent] with the value effectconnect and the field [billing][email] is a bol.com email address |
| Is it a Fonq order? | The answer is yes if it is not a Bol.com order and there is a field [customer_user_agent] with the value effectconnect |
| Is it another order coming through an external party? | The answer is yes if the key is part of a fixed set of keys. This list can be expanded upon request. |
| Affiliate number |
The affiliate number is determined as follows:
|
| Valuta | If the currency option is set for the customer then [currency] |
| Payment method | field [gateway] in [transactions] |
| Order total incl. VAT and discounts | [total_price] |
| Total VAT order incl. discounts | Value in [total_tax], or, if that value is 0, the value from [current_total_tax]. When using [current_total_tax], there's an additional check. The VAT lines in the order must add up to the value in [current_total_tax]. |
| Order total excl. VAT and discounts | Difference between the two lines above |
| Delivery country | The delivery country will be the [shipping][country] field if it is filled in. Otherwise, the [billing][country] field will be used. |
| 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:
|
| Do the order lines have VAT? | To determine whether VAT is applied to order lines, the [subtotal_tax] and [total_tax] fields are examined per line, and the [shipping_tax] fields are examined in the order itself. If any of these fields have a value other than 0, VAT is applied to the order lines. If all fields have a value of 0, there is no VAT on the order lines. |
| To read the order lines, the integration retrieves the [line_items] field. Multiple order lines can be included in the order, and the integration reads these lines one by one. | ||
| Name field | Values from Woocommerce order line | |
| Productid | [product_id] | |
| Category | In the case of processing categories, the category ID and name | |
| Amount | [quantity]. Note: if the quantity is 0, parsing stops. | |
| SKU | If the SKU is filled, then [sku]. Otherwise [product_id]. | |
| Description | [name] plus the values ​​in field [meta] in the order line with key / key label or key | |
| VAT percentage |
The VAT percentage is determined as follows:
|
|
| Amounts excl. VAT | Amount in field [total] | |
| Amounts incl. VAT | Amount in field [total] plus the amount in field [total_tax] | |
| Discount in order line | An order line has two totals: [total] and [subtotal]. The [total] amount is the line amount including the discount, and the [subtotal] amount is the amount excluding the discount. Discounts are therefore processed directly in the order line and not added as separate lines. | |
| VAT code and accounts SnelStart | These are determined based on the settings, the VAT percentage and the delivery country. It also takes into account whether the order is an ICP or international order. If processing is done based on categories, the revenue account is determined using the revenue account configured for the respective category in the dashboard | |
| To read the shipping costs, the integration uses the field [shipping_lines]. There can be multiple shipping lines. For the name and VAT percentage only the first line is used, while the amounts from all shipping lines are summed. In most cases there will be only one shipping cost line. | ||
| Name field | Values from Woocommerce order line | |
| Description | [method_title] from the last shipping cost line | |
| VAT amount shipping costs | Each line in the [shipping_lines] field can contain multiple VAT lines in the [taxes] field. These are summed and the total is the VAT amount for shipping costs. | |
| Shipping costs excl VAT | [shipping_total] in the order | |
| Shipping costs incl VAT | Shipping costs excl. VAT plus the VAT amount for the shipping costs. | |
| VAT percentage | VAT amount for shipping costs divided by the shipping cost amount excl. VAT | |
| VAT code and accounts SnelStart | 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. | |
| The surcharges are stored in the [fee_lines] field. Each surcharge becomes a separate line in the order. | ||
| Name field | Values from Woocommerce order line | |
| Description | [name] | |
| VAT amount | If it is an international or ICP order then 0, otherwise the amount in the [total_tax] field. | |
| Amount excl VAT | [total] in the order | |
| Amount incl VAT | Amount excl. VAT plus VAT amount | |
| VAT percentage | VAT amount of the surcharge divided by the amount excl. VAT | |
| VAT code and accounts SnelStart | 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 Woocommerce customer |
| The billing address is in field[billing] and the shipping address in field [shipping]. The content of these fields is always the same, so we do not describe them separately. | |
| Address |
If present based on [billing_address] in the Woocommerce order
|
| VAT number | The VAT number may be present in the [meta_data] of the order. There is a fixed list of keys that are searched. If the VAT number is not found, the integration continues searching in the [vat_number] and VIES data fields in the order. A VAT number is always validated. |
| The option to forward payments to SnelStart in addition to orders can be requested via webcare@webwinkelfacturen.nl. This option has additional costs. The payment is created if the field [date_paid] is filled. | |
| Name field | Values from Woocommerce order |
| Order id | The field [id] from the order |
| Payment id | The field [payment_method]]#[transaction_id] from the order |
| The paid amount | The field [total] from the order |
| Payment method | [payment_method_title] |
| Status | [status] |
| Transaction-id | Retrieved from the [meta_date] key, [_mollie_payment_id] key. If this field is not found, the [transaction_id] field from the order is used.|
| Payment date | [date_paid] |
7.Day-to-day: To Snelstart
The synchronization of data between Woocommerce and SnelStart is as follows.
The orders are imported into SnelStart as orders or financial entries.
By default, the integration is set up to create financial entries. This choice can be changed in the contract settings in the dashboard, Configuration tab, or can be requested from us via email. To process to orders, the InBalans or InZicht package is required. For processing to financial entries, InKaart is also suitable in addition to these packages.
When processing customer information, it is first checked whether the customer has been processed before. If so, this SnelStart debtor is used as the debtor for the SnelStart transaction. If the customer is not yet known, they are added to SnelStart. Matching is based on email address. Please note: The integration only creates debtors. The integration does not modify debtors.
Shipping address With the SnelStart orders option, the integration includes a separate shipping address with the order, provided the shipping address differs from the billing address.
If the orders are processed to SnelStart orders, the integration first checks whether the products from the order already exist in SnelStart. The integration then adds missing products to the accounting system. If a product already exists in SnelStart, the product is not added again.
The rules for matching products between Woocommerce and SnelStart can be found in this FAQ be read.
The default setting in SnelStart for item numbers is length 10 and digits only. This should be increased to length 25 and digits and letters. The reason is that at least the dummy products need this space. See also the FAQ.
Please note: The products are only created in SnelStart. Products in SnelStart are never modified.
Payments from Woocommerce are imported into SnelStart as memo entries. A reference to the sales entry will be included in the entry.
If no sale can be found for the payment, the memo entry cannot be created.
The integration creates an order or financial entry in SnelStart, not an invoice. Therefore, the integration cannot ensure that an invoice is automatically sent from SnelStart. It is however possible to set an invoice layout. This can be done via the dashboard https://uwkoppeling.webwinkelfacturen.nl, tab Configuration.
Field-level specification SnelStart
| Required package: InKaart, InBalans or InZicht | ||
| Name | Example | Note |
| Invoice date | [orderdate] | order date |
| Invoice number | [ordernumber] | order number, on request invoice number |
| Payment term | 14 days | This cannot be adjusted. |
| Description | Order number / Invoice number / Payment method if present |
|
| Invoice amount | The total amount of the order incl. VAT. | |
| Customer | ||
| Id | [debtorID] | SnelStart debtor id. |
| uri | /relations/[debtorID] | |
| Entry line | ||
| Description | [name] | |
| Ledger account | As configured via the tab Configuration of the dashboard. | |
| Amount | Amount excl. VAT. | |
| Cost center | 1 default cost center per integration. | |
| VATlines | ||
| VAT amount | [price] | |
| VATtype |
|
|
| Required package: InBalans or InZicht | ||
| Name | Example | Note |
| relation | ||
| id | 7382g324-8f90-76b8-h999-fv4sh870c87j | SnelStart debtor-ID. |
| uri | /relations/7382g324-8f90-76b8-h999-fv4sh870c87j | |
| processStatus | Order | |
| date | 2023-03-01 | order date |
| salesOrderVatEntryModel | Exclusive | Default Exclusive, can be adjusted to inclusive. |
| description | 890492 / iDEAL | Order number / Invoice number / Payment method if present |
| payment reference | 890492 |
|
| memo | ||
| lines | ||
| item | ||
| id | 8d76f75n-9283-9291-93m2-fv5682e34akd | |
| uri | /items/8d76f75n-9283-9291-93m2-fv5682e34akd | |
| description | Digital Xbox one - white | |
| unit price | 245.45 | Unit price excl. VAT, on request incl. VAT - discounts are included in this amount. |
| quantity | 1 | |
| total | 245.45 | Total excl. VAT, on request incl. VAT - discounts are included in this amount |
| salesordersjabloon | ||
| id | 8fe5j5y8-h8a1-9084-760h-98k979h4ujk4 | |
| uri | /salesordertemplates/8fe5j5y8-h8a1-9084-760h-98k979h4ujk4 | |
|
The SnelStart orders never have negative unit prices. With a negative unit price, the quantity and amount are multiplied by (-1). |
||
| Name | Example | Note |
| orderdate | Payment date | |
| Sales number | [transaction-identifier] | |
| Journal | as set in the dashboard | |
| Memorial entry line | ||
| Description | [name] | For example payment method and postfix order number |
| debit | [PaidAmount] | |
| credit | 0 | |
| ledger | The clearing account as set in the dashboard | |
| sales line | ||
| Id | Identifier of the sales entry | |
| Amount | Amount incl. VAT of the sales entry | |
| description | order number | |
| Amount | [salesAmount] | |
| Name | Example | Note |
| item code | [articlekey] | |
| Description | [productName] | |
| Item Revenue Group |
|
|
| ModifiedOn | [date] | |
| isNonActive | false | |
| Name | Example | Note |
| relationtype | Customer | |
| Name | [name] | |
| Phone | [Telnr] | |
| Mobile | [Mobile] | |
| [Email] | ||
| CoCnumber | [CoC] | |
| Iban | [Bankaccount_iban] | |
| SettlementAddress |
|
|
| correspondence Address | Same as SettlementAddress. | |
| vatNumber | [VATnr] | |
8.Support
Read more Support .... Read less Support ....
Explanation tabs dashboard
On the Dashboard >> Report you can see which orders from your Woocommerce webshop, and when, have been transferred to SnelStart.What if orders are missing in SnelStart
If orders are missing in SnelStart 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 SnelStart (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.