Changelog

3.51.1

  • Improvement: styling of multi-line option descriptions.

3.51.0

  • Improvement: add option to update & reuse existing Moneybird contact if email matches.
  • Improvement: add or update tax number on reused Moneybird contact.
  • Improvement: add placeholder tag {{amazon_order_id}}.

3.50.1

  • Improvement: add invoice details to debug box.
  • Fix: rounding error correction line not added in some cases.

3.50.0

  • Fix: rounding error correction line was not always added if prices are specified exclusive of tax.
  • Update WooCommerce compatibility info.

3.49.2

  • Fix: bug in order debug panel.

3.49.1

  • Update WordPress and WooCommerce compatibility info.

3.49.0

  • Improvement: add support for WooCommerce Gift Cards plugin.
  • Improvement: add filter woocommerce_moneybird_invoice_gift_cards.

3.48.1

  • Fix: php warning.

3.48.0

  • Improvement: add filter woocommerce_moneybird_invoice_send_parameters.

3.47.4

  • Fix: division by zero error in specific cases.

3.47.3

  • Fix: php warning.

3.47.2

  • Improvement: add more debugging functionality to back-end integration.
  • Fix: in specific cases incorrect VAT rates could be applied to subscription renewal orders.

3.47.1

  • Fix: PDF download button for credit invoice in front-end does not work in some cases.

3.47.0

  • Improvement: add support for the primary category functionality of the Yoast SEO plugin.
  • Improvement: add title of shipping method to the corresponding invoice line.

3.46.1

  • Fix: button to setup Moneybird authentication was not visible.

3.46.0

  • Improvement: add option to exclude specific products from invoices.

3.45.1

  • Fix: prevent type error in specific cases where order contains gift card(s).

3.45.0

  • Improvement: Moneybird ledger account can now be specified for individual product variations.

3.44.2

  • Mark fully compatible with WooCommerce 6.2.

3.44.1

  • Fix: prevent error in case of multiple tax rates where one or more rates are 0%.

3.44.0

  • Improvement: add new action hook woocommerce_moneybird_after_invoice_generate.

3.43.1

  • Improvement: add support for renamed plugin directory.

3.43.0

  • Improvement: automatically select contact person on invoice if the Moneybird contact has only one contact person.
  • Improvement: check additional fields for VAT number.
  • Improvement: do not show Moneybird box on subscription details page (only relevant in combination with WooCommerce Subscriptions plugin).
  • Mark fully compatible with WooCommerce 6.1.

3.42.0

  • Improvement: better styling of invoice line description in case of configurable products with extended option data.
  • Improvement: gracefully handle html inserted in order item names by other plugins.
  • Improvement: use Dutch language for all nl_* locales, not just nl_NL. This applies for example to nl_BE.
  • Mark fully compatible with WooCommerce 6.0.

3.41.0

  • Improvement: add compatibility with Moneybird API change: contacts can have multiple contact people. Contact reuse algorithm required update.

3.40.0

  • Improvement: specify discounts including tax if other amounts on the invoices are also specified inclusive of tax.

3.39.0

  • Improvement: enable front-end download button for credit invoice(s) for orders with refund(s).
  • Fix: never assign a project to an invoice line if a balance sheet ledger account is assigned (Moneybird does not allow this combination).

3.38.0

  • Improvement: allow the plugin to be auto-updated.

3.37.0

  • Improvement: add option to include order item meta data from external plugins on invoice lines (via “product info on invoice” setting).
  • Improvement: add compatibility with PW WooCommerce Gift Cards plugin. Add setting for gift card ledger account.

3.36.0

  • Improvement: add option to include order item meta data from external plugins on invoice lines (via “product info on invoice” setting).

3.35.0

  • Improvement: add configuration option to respect preferred workflow setting on existing contact.

3.34.0

  • Improvement: add new filter woocommerce_moneybird_process_order allow suppression of contact and invoice generation.
  • Improvement: replace “MoneyBird” by “Moneybird” in texts.

3.33.2

  • Improvement: increase timeout for downloading an invoice to attach to an email to 15 seconds to prevent timeouts.

3.33.1

  • Fix: add support for new format of Moneybird API access tokens.

3.33.0

  • Improvement: add compatibility with WooCommerce Deposits plugin by www.webtomizer.com.
  • Mark compatible with WooCommerce 5.4.

3.32.0

  • Improvement: add option to use the invoice sending method specified on the workflow or contact.

3.31.1

  • Fix: prevent php warning.

3.31.0

  • Improvement: require matching vat number, chamber of commerce number, bank account when reusing a Moneybird contact.

3.30.2

  • Improvement: gracefully handle corrupt WordPress configuration settings in the invoice generation lock mechanism.
  • Fix: handle bulk generation tasks in ascending id order.

3.30.1

  • Fix: in WooCommerce versions older than 3.7.0 an undefined method is called.

3.30.0

  • Improvement: postpone creation of Moneybird contact until it is certain that the invoice has to be generated.
  • Improvement: also allow non-revenue ledger accounts to be assigned to invoice lines.

3.29.2

  • Fix: if multiple tax rates are applicable on an item, price calculation could be incorrect in some cases.

3.29.1

  • Improvement: remove SKU codes from option meta information if SKUs are not supposed to be included on invoices.

3.29.0

  • Improvement: add support for order items on which multiple tax rates are applicable.
  • Fix: do not use set_time_limit since it may cause errors on some setups.

3.28.0

  • Improvement: round unit prices on 3 or 4 decimals instead of 2 if necessary to prevent incorrect invoice total due to rounding errors.
  • Improvement: add support for Woosa bol.com integration (bol.com order id field).
  • Improvement: try to create contact with empty email address if it is invalid according to Moneybird.
  • Improvement: use file-based locking mechanism to prevent duplicate invoices in certain hosting setups.
  • Fix: product-specific workflow setting was not used correctly in case of product variations.
  • Fix: contact reuse did not work properly in some special cases.

3.27.0

  • Improvement: refactor queue system to prevent conflicts with caching plugins.

3.26.1

  • Fix: incorrect function name (wcbm_get_invoice_pdf_url) used in wcmb_order_invoice_button.

3.26.0

  • Improvement: add option to skip free items on the invoice.
  • Fix: only create credit invoice automatically if the original order already has a Moneybird invoice.
  • Fix: rename wcbm_* functions to wcmb_*.

3.25.5

  • Updated WordPress ans WooCommerce compatibility info.

3.25.4

  • Fix: bug which causes error on old WP versions where function get_sites is not defined.

3.25.3

  • Fix: bug which caused conflicts in multi-site setups where sites are linked to different Moneybird accounts.
  • Improvement: enable upgrades from the WP updates dashboard in multi-site setups.

3.25.2

  • Fix: bug which could cause incorrect application of the standard workflow if API request limit is reached.

3.25.1

  • Improvement: allow PDF invoices to be attached to non-customer emails.

3.25.0

  • Improvement: add link to settings page to open the debug log file in the browser.
  • Improvement: add queue status + queue flush link to settings page.

3.24.0

  • Improvement: add setting to exclude product options from the Moneybird document.
  • Improvement: make bol_order_id (Bol.com order id) field mappable to a Moneybird custom field.
  • Improvement: show PDF download links for invoice and packing slip on the order edit page.

3.23.0

  • Improvement: make the order note entered by the customer mappable to a Moneybird custom field (customer_order_note).

3.22.1

  • Improvement: use wp_remote_request instead of file_get_contents to load remote content.

3.22.0

  • Improvement: add setting to disable the use of rounding difference correction lines.

3.21.0

  • Fix: enable Moneybird invoicing functionality only if the user has “can edit shop orders” rights (instead of “can publish posts” rights).

3.20.0

  • Improvement: modify authentication pop-up to function better on mobile devices.
  • Improvement: mobile-friendly layout of product-dependent Moneybird configuration box.
  • Improvement: add option to specify Moneybird project on the product level.
  • Improvement: add filters woocommerce_moneybird_custom_fields and woocommerce_moneybird_custom_field_value.
  • Info: mark as fully compatible up to WooCommerce v4.7.1

3.19.0

  • Improvement: split combined revenue ledger account setting for shipping and fees into separate settings.

3.18.1

  • Improvement: add support for “EU VAT for WooCommerce Pro” plugin.

3.18.0

  • Improvement: add placeholder {{product_skus}} for use in reference field.

3.17.0

  • Improvement: convert dates to Dutch format in extra field mappings.
  • Fix: front-end PDF invoice download link did not work properly in specific setups.
  • Improvement: apply tax rate to rounding error correction lines.

3.16.2

  • Fix: in some cases not all active payment methods were visible in the automatic invoice trigger configuration.
  • Fix: meta field _billing_vat_number was not checked under more recent WooCommerce versions.

3.16.1

  • Fix: credit invoice could not be generated if line item quantity field was left blank in the refund specification.

3.16.0

  • Fix: deprecation warning related to WC_Order::get_product_from_item.
  • Improvement: add filter woocommerce_moneybird_revenue_ledger_accounts.
  • Improvement: make extra WooCommerce field shipping_method_title available for extra field mapping.
  • Improvement: add extra placeholder {{first_product_name}} for use in the invoice reference field.

3.15.2

  • Improvement: also check meta field _billing_vat_number for VAT number.

3.15.1

  • Fix: prevent PHP notice related to register_rest_route (permission_callback missing).

3.15.0

  • Improvement: add packing slip PDF download link to list of orders in admin.

3.14.0

  • Improvement: allow order id to be mapped to extra field in Moneybird.
  • Fix: only put reverse charge text on invoice if meta field is_vat_exempt is “yes” on corresponding order, irregardless of tax mapping.

3.13.0

  • Improvement: always apply “No tax” or “Reverse charge” tax rate if the tax amount of an invoice line is 0.0.
  • Improvement: mark compatible up to WooCommerce v4.3.0.

3.12.1

  • Fix: only show “Download invoice” button on front-end pages if the user is logged in.

3.12.0

  • Improvement: add option to specify a Moneybird project to book invoices on.
  • Improvement: try to prevent different invoice and order totals due to rounding errors by adding a correcting invoice line.
  • Fix: always interpret refunds as paid.

3.11.2

  • Fix: prevent error under old (pre-3.7.0) versions of WooCommerce due to missing last argument in the woocommerce_email_attachments hook.

3.11.1

  • Fix: generate credit invoice before the refund notification email is sent, so it can be attached to the email.

3.11.0

  • Improvement: add option to specify the desired invoice workflow per product.

3.10.0

  • Improvement: add option to explicitly mention VAT reverse charge on invoice with user-defined text.

3.9.0

  • Improvement: add option to link meta fields to Moneybird extra fields.
  • Improvement: add license status information to settings page.
  • Improvement: add direct link to invoice PDF in Moneybird column on WooCommerce orders page.

3.8.2

  • Improvement: do not mention backorder quantities on invoice.

3.8.1

  • Improvement: determine if prices are specified inclusive or exclusive of VAT based on order instead of global setting.
  • Improvement: for refund invoices pass the Mollie transaction id of the original order to Moneybird.

3.8.0

  • Improvement: add explicit VAT rate configuration for reverse charge (“BTW verlegging”).

3.7.0

  • Improvement: add option to filter automatic invoicing triggers on payment method.

3.6.2

  • Improvement: mark as compatible with WooCommerce 4.0.

3.6.1

  • Improvement: use unicode bullet point for option values on invoice lines.

3.6.0

  • Improvement: add option to attach Moneybird invoice PDF to WooCommerce e-emails.

3.5.4

  • Improvement: only register Mollie transaction ids that start with ‘tr_‘.

3.5.3

  • Fix: prevent php error if plugin update check cannot be performed for some reason.
  • Improvement: more detailed debug logging if contact cannot be created.

3.5.2

  • Fix: change Mollie transaction id lookup to prevent ids of abandoned payments to be passed to Moneybird.

3.5.1

  • Fix deployment error causing error when downloading invoice as PDF from front-end.

3.5.0

  • Improvement: add option to show “Download invoice” button on front-end order details page (downloads PDF invoice).
  • Improvement: add new filter woocommerce_moneybird_contact_details.

3.4.0

  • Improvement: register (Mollie) payment id in Moneybird to allow automatic processing of (Mollie) transactions in Moneybird.
  • Improvement: add Moneybird column to the WooCommerce orders admin page.

3.3.0

  • Improvement: add new filter woocommerce_moneybird_sendmode to override the invoice sending setting based on the order and invoice details.

3.2.0

  • Improvement: handle API request throttling gracefully: retry finishing invoice generation later if request limit is reached.

3.1.3

  • Fix: prevent error in case an order contains products that no longer exist.

3.1.2

  • Improvement: drop WooCommerce API endpoint (/wc-api) dependency to avoid problems on some hosts.
  • Fix: v3.1.1 of the plugin could generate errors under WooCommerce versions older than v3.0.0.

3.1.1

  • Fix: revenue ledger account of a product variation was not propagated properly.

3.1.0

  • Improvement: allow period to be specified on invoice lines.
  • Fix: upgrade plugin-update-checker dependency to avoid deprecation warnings under PHP 7.2.
  • Fix: address PHP notices that can appear in some cases.
  • Improvement: add setting to enable/disable rounding of small amounts.

3.0.3

  • Improvement: replace OAuth2 authentication procedure with copy-paste API token for personal use.

3.0.2

  • Improvement: better automatic matching of VAT rates.

3.0.1

  • Fix: resolve backwards compatibility issue with WooCommerce 2.x.x.

3.0.0

  • Improvement: add support for (automatic) credit invoice generation (WC 3.0.0 and newer).
  • Improvement: add new filter woocommerce_moneybird_credit_invoice.
  • Fix: do not use hard-coded wp-content path.
  • Improvement: try to read VAT number from meta field vat_number if meta field _vat_number is empty.

2.7.6

  • Fix: revenue ledger account was not passed in some cases.

2.7.5

  • Improvement: more informative debug log messages.
  • Improvement: make sure that specified revenue ledger accounts are available in the linked administration.
  • Improvement: add support for custom order item types.
  • Improvement: add bulk action to delete invoices.

2.7.4

  • Bugfix: invoices could be generated prematurely for Subscriptions renewal orders.

2.7.3

  • Improvement: show name of linked administration on settings page.
  • Improved compatibility with WooCommerce Subscriptions renewal orders.
  • Bugfix: setting to ignore empty orders was ignored in some cases.
  • Bugfix: invoice reference setting had empty default on fresh installs.

2.7.2

  • Add bulk action to unlink Moneybird invoices from orders.

2.7.1

  • Fix bug that could cause invoices to be incorrectly generated upon order creation.

2.7.0

  • Add filter ‘woocommerce_moneybird_payment_amount’.

2.6.2

  • Fix: no automatic invoice in some cases when a new order is created through WooCommerce Subscriptions.

2.6.1

  • Enhancement: Change {{order_id}} resolver in invoice reference text to support sequential order number plugins.

2.6.0

  • Allow revenue ledger account to be configured on product and product category level.
  • Try to load billing details from user if the order billing fields are empty.
  • New setting to fill invoice reference field based on user-specified template.
  • Upgrade plugin update checker library.
  • Small compatibility fixes.

2.5.9

  • Fill tax_number field in Moneybird contacts (built-in integration with EU VAT Numbers plugin).

2.5.8

  • Change ‘view invoice’ link on order page: open invoice in Moneybird instead of redirecting to publicly accessible url to view the invoice.
  • Allow triggering invoice generation on custom order statuses.

2.5.7

  • Improved styling of meta data on invoices.

2.5.6

  • Use live exchange rates to calculate the EUR amount of payments in foreign currencies.

2.5.5

  • Add locking mechanism to prevent duplicate invoices in bulk generation mode.

2.5.4

  • Bugfix: options were not correctly put on invoice under some old WooCommerce versions (pre-3.0).

2.5.3

  • Add option to explicitly specify discount per item on invoices.

2.5.2

  • Bugfix: automatic invoice generation settings did not save properly in some cases.

2.5.1

  • Enable multiple order status triggers for automatic invoice generation.

2.5

  • Drop support for the old Moneybird system.
  • Add option to let Moneybird select the workflow (based on the contact).
  • New filter: woocommerce_moneybird_invoice_item.
  • New filter: woocommerce_moneybird_invoice_shipping.
  • New filter: woocommerce_moneybird_invoice_fees.
  • New filter: woocommerce_moneybird_is_order_paid.
  • Add setting to select different workflows for paid/unpaid orders.

2.4.13

  • Fix deprecation warning.

2.4.12

  • Bugfix: allow contacts with empty company name if either firstname or lastname is filled.

2.4.11

  • Add bulk invoice generation function.
  • Add option to delete invoice payments linked to failed orders.

2.4.10

  • Add setting to select policy for reusing Moneybird contacts.

2.4.9

  • Edit update checker to avoid conflicts with other plugins that use the same system.
  • Fix bug that can cause settings page to not be displayed completely.
  • Small improvements.

2.4.8

  • Restore rounding of unit prices above 1.0.

2.4.7

  • Translate “order” to “bestelnummer” in reference field for dutch shops.
  • Don’t round unit prices.

2.4.6

  • Fix bug in shipping tax calculation in old Moneybird setups.

2.4.5

  • Fix bug that can cause shipping tax to be ignored in old Moneybird setups.
  • Fix bug in asynchronous payment register method.
  • Fill payment.price_base since Moneybird requires it for non-primary currencies.

2.4.4

  • Fix bug that is triggered under old versions of WooCommerce.

2.4.3

  • Some additional WooCommerce 3.0 compatibility updates.

2.4.2

  • Add submitted contact object to debug log.
  • Upgrade new Moneybird API library.
  • WooCommerce 3.0 compatibility updates.

2.4.1

  • Modify OAuth2 library to prevent triggering a PHP 7.0 cURL bug (segmentation fault).
  • Fix to prevent unnecessary Moneybird API requests that might trigger the request throttler.

2.4.0

  • Migrate to new plugin update system.

2.3.7

  • Don’t sync contacts but check for existing contact when generating an invoice.
  • Fix compatibility issue with object cache on the “W3 total cache” plugin.

2.3.6

  • Upgrade new Moneybird API library.

2.3.5

  • Disable caching of Moneybird document styles, workflows, and tax rates on the plugin settings page.
  • Rename “New Moneybird API” -> “Moneybird API”, “Moneybird API” -> “Old Moneybird API”.

2.3.4

  • Drop administration dropdown on settings page since there is nothing to choose.
  • Refactor contacts syncing for improved robustness.

2.3.3

  • Make scheme of WC API request urls consistent to avoid oauth errors in some setups.

2.3.2

  • Fix bug that causes PHP notice.
  • No longer use discounts to correct rounding errors.

2.3.1

  • Fix for extensions: make WC_Moneybird2::mb_api public again.
  • Fix bug that can block contacts synchronization.

2.3.0

  • Add option to specify a revenue category (ledger account) for invoice lines.
  • Add option to include SKU code to product name on invoice.
  • Add debug logging functionality.
  • Only fix the invoice date if it should be equal to the order date.
  • Add WC_Moneybird2::get_invoice_from_order_id($order_id) to access invoices from the front-end.
  • Add action “woocommerce_moneybird_generate_invoice_error” to enable custom error handlers.

2.2.4

  • Update Moneybird 2 api library.

2.2.3

  • Bugfix: PHP notice.
  • Feature: add row_order field to invoice lines to fix the order of invoice rows.

2.2.2

  • Bugfix: explicit tax mapping sometimes ignores one or more tax rates.

2.2.1

  • Update Moneybird 2 API library.
  • Add setting to define Moneybird tax rate for tax-free items (such as shipping costs).
  • Bugfix: don’t reverse the order of the items on the invoice.

2.2.0

  • Update Moneybird 2 API library.
  • Prevent casting large numbers to integers to avoid 32 bit troubles.
  • Use WC_Abstract_Order::get_order_number() to get order reference (avoids issues in combination with other plugins).
  • Bugfix: prevent rounding errors on invoice in case product prices are specified including tax.
  • Explicitly map WooCommerce tax rates to Moneybird tax rates on the settings page.
  • Improved compatibility with old WooCommerce versions.

2.1.4

  • Bugfix: Perform AJAX request for Moneybird 2 authentication over https if possible.

2.1.3

  • Fix bug that causes addresses in certain countries to block Moneybird contact creation.

2.1.2

  • Add filter woocommerce_moneybird_invoice.
  • Add filter woocommerce_moneybird_register_payment.

2.1.1

  • Fill phone field for newly created Moneybird contacts (old Moneybird system).
  • Add filter woocommerce_moneybird_reference.
  • Add filter woocommerce_moneybird_invoice_id.
  • Add filter woocommerce_moneybird_invoice_sequence_id.
  • Add filter woocommerce_moneybird_new_contact.

2.1.0

  • Fill phone field for newly created Moneybird contacts.
  • Add setting to enable/disable WooCommerce order id as invoice reference.
  • Add import mappings lookup to translate old invoice ids.

2.0.0

  • Add compatibility for the new Moneybird version. The old system is still supported.

1.8.6

  • Bugfix: undefined method WC_Countries::get_countries() under WooCommerce 2.1

1.8.5

  • Allow 5% tax rate rounding error instead of 2% to prevent errors.

1.8.4

  • Bugfix to prevent PHP notificatrion.

1.8.3

  • Bugfix to prevent PHP notify error.

1.8.2

  • Bugfix incorrect tax rate calculation with coupons that are applied befor tax on WooCommerce 2.1 and older.
  • Fix settings url in plugins list on WooCommerce 2.1 and older.

1.8.1

  • Bugfix in get_rounded_tax_rate(): returns wrong tax rate if rounding error with wrong tax rate is < 2%.

1.8

  • New setting to select whether invoice generation date or order date should be used as invoice date.

1.7

  • Bugfix to prevent errors due to inaccurate tax rate calculations for small amounts (WooCommerce 2.1 and older)
  • Bugfix to prevent – from ending up on invoice (WooCommerce 2.1 and older)

1.6

  • Fixed tax problem in case of multiple tax rates
  • Small bugfixes (undefined index notices)
  • Removed ‘x’ after quantity in invoice line
  • Fixed issues with older WooCommerce versions
  • Load contacts in batches to reduce invoice generation time

1.5

  • Don’t create invoice lines for shipping or fee with subtotal 0
  • Tax rate bugfix
  • Don’t create invoice for orders with no amounts != 0
  • Add country to Moneybird contact
  • Deleted obsolete debugging statement
  • Option to ignore orders with total 0.0
  • Fixed discount compensation factor