# Accounting for WooCommerce
Contributors: bastho, leroysabrina, enzomangiante, agencenous
Tags: woocommerce, accounting, bookkeeping, vat, export
Requires at least: 5.3
Requires PHP: 7.4
Tested up to: 6.5
Stable tag: 1.6.4
License: GPLv2
License URI: https://www.gnu.org/licenses/gpl-2.0.html
All you need to transfer accounting data from Woocommerce to accounting softwares!
## Description
Define global codes for each type of data: products, taxes, shipping fees, payment methods, account number, analytic.
You can export your orders in a CSV file, filtered by date and status, set columns and separators so every common Accounting Software.
At this time, tested on : CIEL, Cogilog, EBP Accounting, GNUcash
With the PRO addon, you will be able to set accounting number and analytic code for each item of: products, taxes, shipping fees and payment methods.
Try out this plugin on our demo site to see how it works.
### Features in free version
- Define global codes (account number and analytic) for each type of data: products, taxes, shipping fees, payment methods, customers
- Define which order status you want to export
- Export accounting in CSV file
- Custom date format
- Custom separator
- Custom decimal separator
### Features added by PRO addon
All free version features plus:
- Define accounting number and analytic code for each item of: products, taxes, shipping fees and payment methods
- Define accounting number for each customers
- Support invoice number from WooCommerce PDF Invoices & Packing Slips
- Mark orders as exported
Moreover, you can add the bank slips generated by Bank Slip for WooCommerce (free) in your exports with the Bank Reconcilation addon.
This plugin is a fork from WooCommerce Book-keeper with a huge refactor by NOUS Ouvert Utile et Simple.
## Installation
1. Upload into the `/wp-content/plugins/` directory
2. Activate the plugin through the 'Plugins' menu in WordPress admin
3. You can edit defaults settings in WooCommerce > Settings > Accounting
## Screenshots
1. Settings page
2. Export page
## Frequently asked questions
### Which accounting software are currently supported?
Accounting for WooCommerce exports configurable CSV files, so most of common accounting softwares will be able to read it.
### Why do I have a timeout in some exports?
Consider using the hight performance mode of WooCommerce _(see: WooCommerce > Settings > Advanced > Features)_
At this time, exports have been tested on Cogilog and GnuCash.
## Changelog
### 1.6.4
- Optimize data fetching
- Use main methods of WC_Order to get data
- Fix detection of Order status
- Fix bug in refund export
- Correctly set account code for payment method and fall back on dafault code
- Improves performances of export
- Ensure variable types for PHP8.3
- Ensure compatibility for PHP7
### 1.6.3
- Add support for High-performance order storage
- Adds comment for translators
- Format comments for PHPCS compliance
### 1.6.2
- Fix missing product lines
### 1.6.1
- Fix columns sorting on product line with no coupon
### 1.6.0
- Add hooks
- Add "rounding precision" export option
- Use domain name in CSV filename
- Skip taxes for small numbers (1E-5 syntax)
- More consistent settings page layout
### 1.5.0
Fix country code in refund export
Add hooks
### 1.4.4
- Fix export refunds
- export-refunds.php code clean up
### 1.4.3
- Autofix column order bad structure
### 1.4.2
- Rename filter woocommerce_accounting:export:order_output_deliv_line. Pass shipping option
- Optimize algorythm by moving get_option outside the loop. Improve performances
- Use default customer account if chosen
- Earlier load of textdomain
### 1.4.1
- Add comments to functions
- Small UI improvements
### 1.4.0
- Refactor column mapping manager: merge column names and order.
- Tab style exports
- More obvious export setting toggler
- Default to hide refund export settings
**Fixes**
- Use formatted date for packing slip
- Fix missing icons in datepicker
### 1.3.1
- Fix column mapping regression
- Expend filters possibilities
- Fix var type for PHP8
### 1.3
- Add option for coupon column
- Fix PHP warnings
- Better layout in export page
- Add missing translatable strings
### 1.2.1
* Manage WooCommerce activated on network
### 1.2
- Use message notice instead of JS alert in case of empty result
- Factorize get orders params in export
New hooks:
- woocommerce_accounting:export_form:before_submit action hook
- woocommerce_accounting:export:get_orders_args filter hook
### 1.1.3
* Fix default settings tab name
* More consistent wording
* Rearrange export page layout.
* Update pot file
* Remove useless po/mo files
### 1.1.2
* Add hook to export filename
* Fix PHP syntax
### 1.1.1
* Do not export taxes having amount equal to zero
* Fix lost preference for "tab" separator
### 1.1
* Move welcome message from setting tab to help tab.
### 1.0.0
* Initial release
## Upgrade notice
### 1.4.2
Tech note: filter woocommerce_accounting:export:order_output_deliv_line moves to woocommerce_accounting:export:order_output_deliv_line_0 and woocommerce_accounting:export:order_output_deliv_line_1
### 1.3.1
Due to a regression fix, column mappging must be set again.