1.Introduction
This is the manual for the integration between JouwWeb and Twinfield.
The option processing of payments is only available if the orders are processed to Twinfield draft entries. This option is not available for Twinfield invoices. Additional costs are charged for this option.
Please note: The integration only processes orders. The integration does not process refunds.
- This integration is a financial integration. It is not a logistics integration. It is not suitable for updating customers in Twinfield, 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 JouwWeb and in the FAQ for Twinfield.
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.
2.How the integration works
It is also possible to process the payments based on the orders from to Twinfield. This is only available if the orders are processed to Twinfield draft entries. For Twinfield invoices, this option is not available.
The integration retrieves the orders from the webshop every hour and prepares them to be processed to Twinfield.
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 JouwWeb order:
- It is checked whether the total of the JouwWeb order is equal to the sum of the amounts in the order lines plus the shipping costs amount.
- If the order is an ICP order, the VAT number is checked.
- It is checked whether a corresponding VAT code exists in Twinfield 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 Twinfield and that has been paid in Jouwweb. It is possible to always process the payment, regardless of the status in Jouwweb. This can be requested via webcare@webwinkelfacturen.nl.
Processing a Jouwweb order to Twinfield takes place in two steps:
- It is checked if the customer already exists in Twinfield. If not, the customer is created. Matching is based on the email address.
- The Twinfield transaction (draft entry, invoice) is created and processed.
When processing a payment, the integration first looks up the draft entry in Twinfield that belongs to the payment. The integration uses the following criteria to search for the draft entry:
- 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 processing the payment, the integration will reconcile the payment and the draft entry against each other.
After the order has been processed and a success message has been received from Twinfield, the order is marked as handled. The JouwWeb order appears in the Reporting tab on the dashboard.
If Twinfield 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 Twinfield later in the manual.
3.Preparation Twinfield
To connect with Twinfield, your own username/password is required to log in. The connection must be established using this username/password.
When using an accountancy username/password, the integration gains access to all records under the accountant's responsibility. This is highly undesirable. The consequence may be that the integration posts to the wrong record. Additionally, the integration has access to all records covered by the accountancy license. This is undesirable from a security perspective and is contrary to GDPR regulations.
For more information, see: FAQ.
4.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.
Read more Installation .... Read less Installation ....
Webshop authentication
The authentication with the webshop runs via OAuth. Make sure you are logged out of your webshop before establishing the connection. Now click the red Connect button. A login screen for the JouwWeb webshop will automatically appear. If you log in, you will get a screen asking if you allow the connection. If you confirm this, the connection will be established.
If you want to re-establish the connection at a later time, you can always do so by clicking the Connect button.
Twinfield connection
The connection with Twinfield is handled via OAuth. Ensure you are logged out of Twinfield before starting the connection. Now click the red Connect button. A login screen for your Twinfield account will automatically appear. Once you log in, you will see a screen asking if you allow the connection. If you confirm this, the connection with Twinfield will be established.
If you want to re-establish the connection at a later time - for example because you want to use a different one - you can do so by clicking the Connect button.
Multiple webshops can be present within one Jouwweb account. You can set here for which webshop you want to create the integration.
Processing status
You can specify which statuses orders should be processed to Twinfield. You can select multiple statuses. The integration will never forward orders twice. The integration is protected against this.
It is important that after establishing the connection with Twinfield, you first set the administration code of your Twinfield administration. You can also change the debtors dimension. The default in Twinfield is a debtors dimension 1300.
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 Twinfield. 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 this 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.
When processing orders without processing payments, a link can be established for each payment method in with a fixed debtor. The list of debtors contains the Twinfield debtors with the specific substring WWF_. See this faq for more information, if the list is empty.
If the payments are processed, a link is established between payment methods in webshop and clearing accounts from Twinfield. The possibility to assign payment methods to fixed debtors will then lapse. Processing payments is only possible if the orders are processed to Twinfield draft entries. It is not possible if the orders are processed to Twinfield invoices.
5.Day-to-day: From Jouwweb
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 Twinfield.
Please note: The integration only processes orders, no returns / refunds.
Payments (if activated) When processing payments, the integration checks every day the Jouwweb orders that have been successfully processed to Twinfield. If the order has been processed and the payment status is met, a payment will be created in Twinfield for this order.
Field-level specification orders
| Below is a detail at field level for retrieving orders. The order includes the general values in the order, the order lines, shipping costs, payment costs, and the debtor details. | |
| Name field | Values from Jouwweb order |
| Order-identifier | [id] |
| Order number | [orderNumber] |
| Date | [createdAt] |
| Order date | [date_created] |
| Status order | [status] |
| Payment method | [paymentMethod] |
| Total VAT order incl. discount | [totalTaxAmount] |
| Order total incl. VAT and discount | [totalPrice] | Order total excl. VAT with discount | [totalPrice] - [totalTaxAmount] |
| Total VAT order without discount | [totalTaxAmount] - [discountTaxAmount] |
| Order total incl VAT | [price][total] |
| Delivery country | [shippingAddress][country] if filled, otherwise [paymentAddress][country] |
| 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 Jouwweb, 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 Jouwweb order line | |
| Amount | [quantity] | |
| Description | [title], please note, JouwWeb uses an unusual dash. This dash is replaced by a normal dash. | |
| VAT percentage | [taxPercentage], if smaller than 1, the VAT percentage is multiplied by 100. If the field taxPercentage does not exist in the line, the VAT percentage becomes [totalTaxAmount] / ([totalPrice] - [totalTaxAmount]. This percentage is also multiplied by 100. | |
| VAT amount in line | [totalTaxAmount] | |
| Line amount incl VAT | [totalPrice] | |
| Line amount excl VAT | [totalPrice] - [totalTaxAmount] | |
| Unit amounts | Divide the line item amounts by the amount | |
| VAT code and accounts Twinfield | 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. | |
| A JouwWeb order can have multiple shipping cost lines with different VAT percentages. It can therefore happen that two shipping lines are created from the shipping costs. The first line will be the shipping cost line, the second line will be added to the order lines. | ||
| Name field | Values from Jouwweb shipping costs-line | |
| Amount | 1 | |
| Description | Shipping VAT percentage < |
|
| SKU | Shipping_< |
|
| Line amount incl VAT | [shippingCost], where the amount is calculated pro rata over the VAT percentages in the shopping cart. | |
| VAT amount | [shippingTaxAmount]. , where the amount is calculated pro rata over the VAT percentages in the shopping cart. | |
| VAT percentage | Dependent on the VAT on the order lines | |
| Line amount excl VAT | price incl VAT - VAT amount | |
| VAT code and accounts Twinfield | 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 discount lines in the JouwWeb orders are recalculated relative to the order lines. The integration does this to process VAT percentages correctly. The fields discountAmount and discountTaxAmount from the JouwWeb order are used. | ||
| Name field | Values from Jouwweb discount-line | |
| Amount | 1 | |
| Description | Discount (with VAT percentage xxx %) | |
| Discount amount incl VAT | relative amount incl. VAT | |
| Discount amount excl VAT | relative amount excl. VAT | |
| VAT percentage discount | VAT percentage | |
| VAT code and accounts Twinfield | 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 Jouwweb customer |
| Customer |
General
|
| The billing address is in field [paymentAddress] and the shipping address in field [shippingAddress]. The content of these fields is always the same, so we do not describe them separately. | |
| Address |
Address-fields
|
6.Day-to-day: To Twinfield
For orders in Jouwweb, draft entries or invoices can be created in Twinfield. The option draft entry is default and is used most often. The option invoices can be requested from us. For the invoices option, you need the paid invoice module, see also the FAQ. If you are in doubt between draft entries (financial transactions) or invoices, we recommend draft entries / transactions.
Create debtors
When processing customer information, it is first checked whether the customer has been processed before. If so, this Twinfield debtor is used as the debtor for the Twinfield transaction. If the customer is not yet known, they are added to Twinfield. Matching is based on email address.
Please note: The integration only creates debtors. The integration does not modify debtors.
Payments from Jouwweb are imported into as memo entries. A memo entry consists of two lines, one line for the payment and one for the associated sales entry. If the sales entry for the payment cannot be found, the memo entry cannot be created.
Please note: we can only process payments if they are processed to draft sales entries, not with invoices. Additionally, the invoice number that is in the outstanding sales entry in Twinfield must be present in the payment transaction of the sale.
Reconcile
After processing the payment, the integration will perform an additional action to reconcile the payment and sale.
The integration cannot automatically have Twinfield invoices or draft entries sent from Twinfield.
Field-level specification Twinfield
| Name | Example | Note | |
| @attributes | |||
| destiny | temporary | ||
| raisewarning | true | ||
| header | |||
| code | VRK | ||
| office | 300333 | ||
| invoicenumber | 5869 | order number | |
| date | 20230203 | order date | |
| Currency | EUR | Default, variable on request. | |
| Totalline | |||
| type | total | ||
| id | 4 | debtor id | |
| dim1 | 1600 | Debtor dimension | |
| dim2 | 4539 | Debtor dimension | |
| debitcredit | debit | ||
| value | 82.20 | Total price Incl. VAT | |
| basevalue | 82.20 | Total price Incl. VAT | |
| description | 4121 | Description: order number, or invoice number - this cannot be adjusted. | |
| Detaillines | |||
| @attributes | |||
| type | detail | ||
| id | 5 | ||
| dim1 | 2000 | Debtor dimension | |
| debitcredit | credit | ||
| basevalue | 33.47 | Line price Excl. VAT | |
| value | 33.47 | Line price Excl. VAT | |
| description | 24 pcs Prof. drawing paper. | Product description, max length 35. | |
| vatvalue | 7.03 | VAT amount | |
| vatcode | VH | VAT code | |
| Cost center | 1 default cost center per integration. | ||
| ICP | If it is an ICP entry: | ||
| Performancetype | goods | ||
| Performancecountry | [isocountry] | Country of delivery | |
| Performancevatnumber | [vatnr] | VAT number | |
| In the VAT amounts, any rounding difference is processed if the rounding difference is at most 5 cents. | |||
| Name | Example | Note |
| header | ||
| office | KJ903932 | |
| invoicetype | INVOICE | This cannot be adjusted. |
| invoicedate | 20230308 | order date |
| headertext | Order 3234002342 |
If the invoice number is equal to the order number: Order order number Otherwise Invoice invoice number. |
| customer | 9023 | Customer code |
| currency | EUR | Default, variable on request. |
| status | draft | |
| Payment method | Bank | |
| Detailline | ||
| @attributes | ||
| id | 4 | |
| article | 0 | |
| description | 70 x 70 painter's canvas | Description |
| quantity | 9 | quantity |
| units | 1 | |
| unitspriceexcl | 21.50 | unit price excl. VAT |
| dim1 | 3456 | Ledger account |
| vatcode | VH | VAT code |
| Name | Example | Note |
| name | [name] | |
| website | ||
| Cocnumber | [coc] | |
| VATnumber | [VATnr] | |
| Address | ||
| contact | [firstname][lastname] | |
| Country | [isocountry] | |
| City | [city] | |
| Postal code | [zipcode] | |
| Phone number | [telnr] | |
| [email] | not longer than 200 characters. | |
| Name | Example | Note |
| Payment line | The information of the payment. | |
| Suspense account | As set in the configuration tab of the dashboard. | This is the field dim1 in Twinfield |
| Type | debit | This is the field debitcredit in Twinfield |
| Description | [transaction_id] payment | |
| Invoicenumber | [ordernumber] | If the length > 40, the last 40 characters are shown. This is to keep the invoice numbers unique. |
| Amount | Amount from the payment | |
| Sales line | The information from the sales entry. | |
| Debtors-account | 1300 | This is the field dim1 in Twinfield. This is usually 1300 but can be adjusted in the configuration tab of the dashboard. |
| Customer code | [Debtor code] | This is the field dim2 in Twinfield |
| Type | credit | This is the field debitcredit in Twinfield |
| Description | [ordernumber] | If the length > 40, the first 40 characters are shown. |
| Invoicenumber | [ordernumber] | If the length > 40, the last 40 characters are shown. This is to keep the invoice numbers unique. |
| Amount | Amount from the sale | |
7.Support
Read more Support .... Read less Support ....
Explanation tabs dashboard
On the Dashboard >> Report you can see which orders from your Jouwweb webshop, and when, have been transferred to Twinfield.What if orders are missing in Twinfield
If orders are missing in Twinfield 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 Twinfield (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.