Initial setup
If you are using Shopware version 6.5+, you need to configure your message consumer to consume messages from an extra transport "exact" after installing and activating the plugin. If you do not do this, nothing will be synced to Exact Online. You can set it up in the same way as consuming messages from the default transport "async", only the name is different.
Please see the official documentation for more information.
API config
To configure the API settings, you need to add the app in the Exact App Centre. You do this by logging into your Exact account and clicking on the top right to go to the App Center (2nd option).
In the App Center, click on “Manage my apps” at the top right and register a production app:
- Name of the app: free to choose
- Redirect URI: This is the url of your Shopware administration + /gshop-exact/connect/get-token. E.g.: https://generationshop.be/admin/gshop-exact/connect/get-token
In the next screen you will see some data that you need to include in the API configuration of the plugin.
In Shopware go to Settings -> Extensions -> Exact config
- Sales channels: The plugin configuration can be determined per sales channel or once for all sales channels.
- Base URL: Determines the localization. https://start.exactonline.be for Belgium, https://start.exactonline.nl for the Netherlands.
- Redirect URL, Client ID, Client Secret, Webhook Secret: Copy these values from Exact after registering the app.
- Connect to Exact Online: Start a session with Exact. When starting a session, data is synchronized from Exact to Shopware (accounts, contacts, cost items, …) and webhooks are set up. The webhooks include accounts, contacts, and expense items. This means that if changes are made to these entities in Exact, the changes will also be synchronized to Shopware in near real-time.
Attention: Exact uses refresh tokens to keep a session active. This refresh token expires after 30 days. So if you do not use the plugin for a long time, you must manually start a new session via this button.
VAT codes
Exact works with codes for determining VAT (eg domestic sales 21%). Unfortunately, it is not possible to retrieve these codes via the API. These must therefore also be created manually in Shopware. You can do this under Orders -> Exact -> VAT code.
- Label: free to choose. Often the label is simply taken over from Exact here.
- State: the tax status. Choice of:
- Tax free: the price does not include VAT (e.g. sales outside the EU).
- Gross: the price includes VAT.
- Net: the price is excl. VAT.
- Tax Exempt: your organization is not subject to VAT.
Type:
- International: it concerns a sale outside the EU.
- Europe: it concerns a B2B sale within the EU.
- National: it concerns a domestic sale or a sale to private individuals within the EU.
Code: the VAT code from Exact (eg 5I).
Percentage: the VAT percentage.
Sales channels: here you can determine for which sales channels this VAT code should be used.
General settings
Can be found under Orders -> Exact -> Settings.
- Always invoice: By default, invoices are only created for B2B customers. If you still want an invoice for all customers, you must activate this option. Attention: if you use our daily totals plugin, be sure to deactivate it for all sales channels where this option is active. Otherwise, the B2C orders will be added to the daily totals and booked separately with an invoice.
- Tax exempt: can only be activated if your organization has a tax-free status.
- Order states: here you can indicate one or more order state(s). When an order reaches this state, it will be processed. So if it concerns a B2B order or if the above option is active, an invoice will be created and sent and the order will be placed in the queue for booking.
- Transaction states: the same principle as the order states, but for payment states.
- Default account for customers without company: customers that are created in Exact must always be linked to a company. Because we would have to create a fictitious company in the customer's name for B2C customers, you have the option here to book all B2C customers under 1 company. This way you avoid contamination of your database and all B2C orders can easily be found in Exact.
- GLAccount: the default cost item. This can be overridden at product level via the tab Specifications -> Custom Fields (at the very bottom).
- Sales channel: here you can determine for which sales channels these settings are active.
Shopware settings
In addition to the API configuration and determining the functionality of the plugin, further settings are required. These should be done under Settings -> Shop:
Email templates: 'Document email template' is used to send invoices and credit notes to the customer. You might want to change the copy, translate it or adapted it to your house style.
Salutations: must be mapped to the Exact salutation codes. These codes can be found in Exact under 'Master Data' -> 'Titles'.