Completely integrates your WooCommerce customers and orders to your Fortnox CRM and Fortnox accounting software.
Requires the WooCommerce plugin.
Data export to Fortnox
The integration has a number of actions and filters available to extend the data sent to Fortnox. We do not have a complete reference for this, but you can find a list of the current ones here:
- Install WooCommerce Fortnox Integration either via the WordPress.org plugin directory, or by uploading the files to your server.
- Activate the plugin in your WordPress Admin and go to the admin panel Settings -> Fortnox.
- Active the plugin with your API-key that you have received by email and your Fortnox API key.
- Configure the integration as needed.
- That’s it. You’re now ready to focus on sales, marketing and other cool stuff 🙂
All FAQs are posted on our site, if you don’t find your answer we provide you with free support by email.
Contributors & Developers
“WooCommerce Fortnox Integration” is open source software. The following people have contributed to this plugin.Contributors
Interested in development?
- Feature: HPOS corrections
- Minor bugixes
- If refund fails on Fortnox the error is caught so that WooCommerce Refund logic is not stopped
- Feature: support for WooCommerce HPOS
- Feature: new setting, skip customer update if customer is present in Fortnox
- Feature: Added support for zipcodes in shipping zones
- Fix: Support for PHP > 8.1, when raising http timeout limit
- Fix: Raised time limit for access token refresh call
- Feature: Added action that is executed after Fortnox Invoice is created. Action name: wf_invoice_after_create
- Feature: Improved support for identifying customers with other properties than email
- Feature: Added filter that enables modifying product name in the payload sent to Fortnox Order Rows. Filter name: wf_product_name. Parameters: $payload, $product_name, $wc_order_item, $wc_order
- Bug fix: Automatic SKU generation for variations updated
- Fix: Fix for order refunds that were not invoiced
- Added a new setting that disables customer update on order synchronozation.
- Added the order parameter to filter wf_customer_url, for better usage. Its now possible to fetch a customer by any Fortnox Customer parameter
- Added support for multisites, up to 10 different sites supported
- Fallback implementation for authorization, if WooCommerce does not accept request, containing auth tokens, from Wetail Middleware an emailed is sent to shop-admin
- Auth token fix
- License check fix
- Extended filters for products and ordeers
- Feature: Validation on organizationnumbers and trimming on VAT-Numbers
- Feature: New settings for defining sales account per country
- Fix: refund bugs corrected
- Bugfix: Partial refund correction
- Fix: License check compatability
- Fix: PHP 8.0 compatability
- Feature: New filter for order EU VAT ‘wf_eu_vat_number’
- Feature: Optional, emails shop admin on order synchronization failure
- Feature: Optional, purchase field on products. The field will be synchronized to Fortnox Article
- Fix: Support for shipping instanceIDs
- Feature: Extended support refunds
- Fix: Does not halt execution on order sync error
- Feature: Filters for VAT-Type handling
- Fix: Extended support for order numbers with characters
- Fix: Longer window for authentication
- New authentication flow
- Feature: Refund order sync on manual order synchronization
- Bugfix: Refund order EU VAT
- Bugfix: . added to SKU handling
- Removed GB out of EU Countries
- Fix: Support for WooCommerce EU VAT Number
- Bugfix: on Fortnox error codes
- Bugfix: removal of attribute appendix on order rows
- Added GB to EU VAT countries
- Bugfix error message
- Bugfix for initial install
- Bufix: Errorhandling on POST and PUT requests
- Bugfix: Paymentways
- Fix: Does not make a invoice payment if order total is zero
- Complete overhaul of the way settings are presented to the customer, including visualisation of integration presets, Fortnox presets etc.
- Updated testing for current WP versions
- Throttling fix
- License check for < PHP 7.1
- Added support for adding different invoice payment accounts by payment gateway
- New hook for custom shipping method: wetail_fortnox_custom_order_shipping
- Added order syncing created in specified date range
- Fix for Warehouse module
- Fix for updating settings on suffixed domains
- Bugfix for adress
- Bugfix for checking authorize code
- Fix for adress, if shipping address is empty billing adress is sent
- Added icon for order notifications
- Added extra support for admin fees
- Bugfix for hook ‘woocommerce_before_resend_order_emails’
- Improved help links
- File naming convention change
- Added log
- BUGFIX: Invoice payment
- BUGFIX: Billing company number value fix
- BUG: Sync inventory from Fortnox fixed
- BUG: Does not sync product stock on order synchronization
- FIX: Uses order date when making invoice payment to avoid timezone problems
- New Hook: wetail_fortnox_invoice_payment
- Added support for EU VAT with https://woocommerce.com/products/eu-vat-number/
- New hook for products “wetail_fortnox_after_product_price_update”.
- Updated automatic SKU handling
- Better support for credit notes .
- Added hook wetail_fortnox_invoice_before_fortnox_submit
- Added better support for sales with 6% and 12% VAT .
- New filter for adding AccountNumber to OrderRow, wetail_fortnox_modify_order_row_sales_account
- New filter for order shipping AccountNumber, wetail_fortnox_shipping_account
- Added a setting for a freight product for shipping outside EU.
- If shipping to US, state is added to Delivery Address 2.
- Bugfix for Klarna Fortnox automatic payments.
- Added a setting for automatic SKU creation if SKU is missing.
- Bugfix for credit notes.
- YourReference is set on Invoices.
- Added functionality for refunding orders. Plugin will now create a credit note for refunded order.
- Added extra hook for overriding Order->VATIncluded.
- Added external logging functionality.
- Refactoring and bugfixes.
- Added filter for Fortnox customer details, “wetail_fortnox_sync_modify_customer”.
- Added support of width, height, length and weight when syncing products to Fortnox.
- Minor improvements.
- Shipping methods from “Rest of the world” can now be configured under the plugins shipping settings.
- Fixed so that a SKU for product is required in order to sync to Fortnox.
- Minor bugfixes
- Minor bugfixes
- Organization number can now be added and synced with Fortnox.
- The plugin is now backwards compatible with WooCommerce >2.5
- Updates required for WooCommerce 3.0
- Minor bugfixes
- The plugin will now allow sync of orders with removed products in WooCommerce. The sales account for the row will
come from the predefined accounts in Fortnox.
- Fixed incorrect tax on shipping fee when using non line item shipping. We previously included tax in the shipping fee
which was incorrect since Fortnox calculates tax on the shipping fee itself.
- Order auto-sync function now works better with plugins that override WooCommerce
- Added option to copy order remarks from order to invoice in Fortnox
- Added option to set order currency rate from Fortnox currencies settings if the orders currency isn’t
- Fixed bug where order items with a price of 0 would cause a tax rate calculation error
- Fixed bug where orders without an email address would replace the first customers
details in Fortnox.
- Fixed bug where discounts were applied inccorectly in Fortnox when ordered item quantity
was more than 1.
- Sales accounts are now determined from the Article settings instead of the
predefined accounts settings in Fortnox. This means that you can sync a product, edit the
bookkeeping accounts from within Fortnox, and it will be used for all order syncs.
If an article doesn’t have any custom accounts, it will use the predefined default one.
- You can now sync an order even if it has been synced before, if the order hasn’t been turned
into an invoice already. This will update the order in Fortnox.
- Plugin will set prices to excl. VAT in fortnox when syncing customers and order rows
- Added support for invoice fees. They must be added to an order as a “fee” in
WooCommerce, and have the name of “Faktura”. It will be added to Fortnox
as an Administration fee.
- You can now choose which WooCommerce order status to automatically sync on
in the plugins settings page.
- Fixed incorrect way of determining an order items taxrate when syncing order.
This happened due to some WooCommerce installs having zero decimals configured,
which caused rounding on the tax line.
- Fixed bug that prevented sync of variable articles
- Minor improvements
- Shipping product (if set) will now be correctly synced to Fortnox orders
and has it’s account number set from the predefined account for shipping
under Fortnox settings.
- Re-enabled advanced shipping options tab under plugin settings
- Fixed bug where order line items where calculated incorrectly
- Removed “Show advanced settings” tab
- Removed bookkeeping accounts settings from the plugins settings page
- Fixed previously unreliable way to determine a customers VAT type
Fixed the way the plugin gets the sales account for order rows.
It now comes from the predefined accounts in Fortnox and it will
correctly determine the account to get depending on the customers VAT-type.
For example: EU customer with VAT-number will set the sales account to the predefined
account for EU reversed VAT.
It is important that you set a product as “Virtual” in WooCommerce if it’s a service
The plugin no longer syncs bookkeeping accounts to the product in Fortnox.
Instead, we set it on the orders, see above.
- The plugin now determines the price of items on an order from the order itself,
instead of the underlying product. We also get the discounts from the order in
a more reliable way.
- Fixed bug where a product without a SKU had it’s ID missing during order sync,
sometimes resulting in an order being synced without a reference to it’s article in
- Products can now have special symbols (UTF-8) in their names
- Fixed bug where you couldn’t reach the plugins settings page
in some cases.