Title: Taxvoice – Tax Invoices for WooCommerce
Author: agencepixelweb
Published: <strong>November 2, 2026</strong>
Last modified: November 2, 2026

---

Search plugins

![](https://ps.w.org/taxvoice/assets/banner-772x250.png?rev=3780637)

![](https://ps.w.org/taxvoice/assets/icon-256x256.png?rev=3780637)

# Taxvoice – Tax Invoices for WooCommerce

 By [agencepixelweb](https://profiles.wordpress.org/agencepixelweb/)

[Download](https://downloads.wordpress.org/plugin/taxvoice.1.0.3.zip)

 * [Details](https://wordpress.org/plugins/taxvoice/#description)
 * [Reviews](https://wordpress.org/plugins/taxvoice/#reviews)
 *  [Installation](https://wordpress.org/plugins/taxvoice/#installation)
 * [Development](https://wordpress.org/plugins/taxvoice/#developers)

 [Support](https://wordpress.org/support/plugin/taxvoice/)

## Description

**Taxvoice** creates the PDF invoice your country asks for, automatically, for every
WooCommerce order. Arabic is printed properly (joined letters, right-to-left layout)
without any extra add-on, and an invoice can show two languages at once: Arabic 
and English for the Gulf, French and Arabic for Morocco.

Pick a country profile, fill in your business details once, and Taxvoice prints 
the right title, identifiers and mentions.

#### Country profiles

 * **Saudi Arabia – ZATCA Phase 1**: Arabic “Simplified Tax Invoice” for consumers,
   full “Tax Invoice” when the buyer gives a VAT number, seller VAT number and CR,
   supply date and time, and the ZATCA QR code (seller name, VAT number, time stamp,
   total with VAT, VAT total, TLV + Base64).
 * **United Arab Emirates – FTA**: “Tax Invoice” with the supplier TRN, the buyer
   TRN when registered, VAT per line and VAT also shown in AED with the exchange
   rate when you sell in another currency.
 * **Morocco – article 145 of the tax code**: ICE, IF, RC, TP and CNSS of the seller,
   ICE of business buyers, VAT broken down per rate, payment method; French and 
   Arabic on the same document.
 * **France**: SIRET, SIREN, RCS, VAT number, legal form and capital, nature of 
   the operation (goods, services or both), delivery address when it differs, client
   SIREN, late-payment penalties and the 40 € recovery fee for business buyers, “
   TVA non applicable, art. 293 B du CGI” and the VAT-on-debits option (mentions
   required from September 2026).
 * **International**: a clean invoice for any other country, with optional VAT numbers.

#### Features

 * Sequential numbers without gaps or duplicates, even when two orders are paid 
   at the same second.
 * Invoices are frozen when issued: changing your settings later never alters an
   invoice already sent.
 * Issue automatically when the order is paid or completed, or only by hand.
 * PDF attached to the WooCommerce e-mails you choose.
 * Download from the order screen, the orders list, My Account and the order page(
   guests use their private order link).
 * Buyer VAT number / TRN / ICE / SIREN field in the classic checkout **and** the
   checkout block, checked against the country format.
 * VAT summary per rate, discounts, shipping and fees.
 * Logo, footer note, VAT exemption mention.
 * Documents in English, Arabic and French whatever the language of your site.
 * Compatible with High-Performance Order Storage (HPOS) and the checkout block.
 * Layout can be changed by copying the template into your theme.
 * No external service: invoices are created on your own server.

#### Taxvoice Pro

The optional [Pro add-on](https://pixelweb.ma/taxvoice/) adds credit notes on refunds(
with the original invoice reference), packing slips, bulk export (ZIP of PDFs and
CSV for your accountant), numbers with the year and a yearly reset, the amount in
words (French, English and Arabic) and your brand colors. Everything described above
is free and stays free.

#### Important

Taxvoice prints the mentions each country asks for, but you remain responsible for
your invoices: check them once with your accountant.

In Saudi Arabia, businesses called by ZATCA to a Phase 2 (integration) wave must
also report their invoices to ZATCA. In the UAE, B2B e-invoicing through an accredited
service provider is being introduced. In France, business-to-business e-invoicing
through an approved platform is being introduced from September 2026. Taxvoice 1.0
creates PDF invoices; it does not send invoices to these platforms.

### Additional Information

#### Third-party code

Taxvoice bundles the following libraries in the `lib` folder. Their namespaces are
prefixed (`Taxvoice\Vendor\`) so they never conflict with another plugin that ships
the same libraries. `composer.json` in the plugin folder lists them.

 * mPDF 8 – GPL-2.0 – https://github.com/mpdf/mpdf
 * mPDF QR code – LGPL-2.1 – https://github.com/mpdf/qrcode
 * FPDI – MIT – https://github.com/Setasign/FPDI
 * DeepCopy – MIT – https://github.com/myclabs/DeepCopy
 * PSR Log and PSR HTTP Message interfaces – MIT – https://github.com/php-fig
 * random_compat – MIT – https://github.com/paragonie/random_compat

Fonts in `assets/fonts`, both under the SIL Open Font License 1.1 (license files
included):

 * Poppins – Indian Type Foundry – https://github.com/google/fonts/tree/main/ofl/
   poppins
 * Tajawal – Boutros Fonts – https://github.com/google/fonts/tree/main/ofl/tajawal

#### External services

None. Taxvoice does not contact any external server.

#### Developer hooks

Filters: `taxvoice_profiles`, `taxvoice_document_css`, `taxvoice_terms`, `taxvoice_document_types`,`
taxvoice_numbered_types`, `taxvoice_document_data`, `taxvoice_format_number`, `taxvoice_counter_name`,`
taxvoice_exchange_rate`, `taxvoice_colors`, `taxvoice_pdf_config`, `taxvoice_template`,`
taxvoice_buyer_tax_id`, `taxvoice_valid_buyer_tax_id`, `taxvoice_issue_statuses`,`
taxvoice_should_issue`, `taxvoice_email_documents`, `taxvoice_customer_links`.
 
Actions: `taxvoice_loaded`, `taxvoice_issued`, `taxvoice_order_box`, `taxvoice_settings_cards`,`
taxvoice_template_after_totals`.

## Screenshots

[⌊Saudi Arabia: bilingual Arabic/English simplified tax invoice with the ZATCA QR
code.⌉⌊Saudi Arabia: bilingual Arabic/English simplified tax invoice with the ZATCA
QR code.⌉[

Saudi Arabia: bilingual Arabic/English simplified tax invoice with the ZATCA QR 
code.

[⌊UAE tax invoice with VAT shown in AED.⌉⌊UAE tax invoice with VAT shown in AED.⌉[

UAE tax invoice with VAT shown in AED.

[⌊Moroccan invoice with ICE, IF, RC and TP, in French and Arabic.⌉⌊Moroccan invoice
with ICE, IF, RC and TP, in French and Arabic.⌉[

Moroccan invoice with ICE, IF, RC and TP, in French and Arabic.

[⌊French invoice with the 2026 mandatory mentions.⌉⌊French invoice with the 2026
mandatory mentions.⌉[

French invoice with the 2026 mandatory mentions.

[⌊Settings screen: country profile, business details, numbering, e-mails.⌉⌊Settings
screen: country profile, business details, numbering, e-mails.⌉[

Settings screen: country profile, business details, numbering, e-mails.

## Installation

 1. Install and activate WooCommerce, then Taxvoice.
 2. Go to **WooCommerce  Taxvoice**.
 3. Choose your country profile and fill in your business details.
 4. Click **Preview on my latest order** to check the result.

## FAQ

### Does Arabic really display correctly?

Yes. Taxvoice ships with a PDF engine that joins Arabic letters and lays out right-
to-left text, and with the Tajawal font. Choose Arabic as first language for a right-
to-left invoice, or as second language for a bilingual one.

### Is the ZATCA QR code valid?

It holds the five fields required for Phase 1 (seller name, VAT number, time stamp,
invoice total with VAT and VAT total), encoded as Tag-Length-Value and Base64, as
ZATCA specifies. It can be read with the ZATCA “VAT” mobile application.

### My shop does not sell in SAR or AED.

Enter the exchange rate in the settings: the VAT and the total are also printed 
in the local currency, and the QR code uses the local amounts. Developers can supply
a live rate with the `taxvoice_exchange_rate` filter.

### Can I change an invoice after it was issued?

No, and that is on purpose: tax rules require an issued invoice to stay as it is.
Refund the order and issue a credit note (Pro), then a new invoice if needed.

### Where are the PDF files stored?

Nowhere permanently. A PDF is built from the order each time it is opened. Copies
attached to e-mails are written to `wp-content/uploads/taxvoice/mail/` and deleted
after one hour.

### What happens to my invoices if I delete the plugin?

Settings and temporary files are removed. Invoice numbers stay on the orders, because
they are accounting records, and the number counters are kept so that reinstalling
Taxvoice continues the sequence without duplicates.

### Can I change the layout?

Copy `templates/document.php` to `yourtheme/taxvoice/document.php` and edit the 
copy. Colors, styles, fonts and paper size can also be changed with filters (`taxvoice_colors`,`
taxvoice_document_css`, `taxvoice_pdf_config`).

## Reviews

There are no reviews for this plugin.

## Contributors & Developers

“Taxvoice – Tax Invoices for WooCommerce” is open source software. The following
people have contributed to this plugin.

Contributors

 *   [ agencepixelweb ](https://profiles.wordpress.org/agencepixelweb/)

[Translate “Taxvoice – Tax Invoices for WooCommerce” into your language.](https://translate.wordpress.org/projects/wp-plugins/taxvoice)

### Interested in development?

[Browse the code](https://plugins.trac.wordpress.org/browser/taxvoice/), check out
the [SVN repository](https://plugins.svn.wordpress.org/taxvoice/), or subscribe 
to the [development log](https://plugins.trac.wordpress.org/log/taxvoice/) by [RSS](https://plugins.trac.wordpress.org/log/taxvoice/?limit=100&mode=stop_on_copy&format=rss).

## Changelog

#### 1.0.3

 * The bundled PDF library no longer contains code that prints to the browser: Taxvoice
   reads the PDF as a string and sends it itself.

#### 1.0.2

 * The document styles are passed to the PDF engine separately from the template(
   new filter `taxvoice_document_css`).
 * Every value printed by the template is escaped with `wp_kses()`.
 * The setup reminder only shows on the Plugins screen and can be dismissed.

#### 1.0.1

 * Fix: product names that contain HTML (for example “” added by a theme or a variation
   plugin) are now printed as plain text. Names, addresses, shipping methods and
   notes are cleaned the same way.
 * Fix: when another plugin changes the order total without adding an order line(
   store credit, gift card, currency or rounding tools), an “Adjustment” line now
   makes the lines, the VAT summary and the totals agree with the amount charged.
 * Fix: negative fees (discounts added as fees) keep their minus sign.
 * New: the setup check warns when the seller VAT number, TRN, ICE or SIRET does
   not have the expected number of digits.

#### 1.0.0

 * First release.

## Meta

 *  Version **1.0.3**
 *  Last updated **7 hours ago**
 *  Active installations **Fewer than 10**
 *  WordPress version ** 6.2 or higher **
 *  Tested up to **7.1.4**
 *  PHP version ** 7.4 or higher **
 * Tags
 * [arabic](https://wordpress.org/plugins/tags/arabic/)[invoice](https://wordpress.org/plugins/tags/invoice/)
   [pdf invoice](https://wordpress.org/plugins/tags/pdf-invoice/)[vat](https://wordpress.org/plugins/tags/vat/)
   [zatca](https://wordpress.org/plugins/tags/zatca/)
 *  [Advanced View](https://wordpress.org/plugins/taxvoice/advanced/)

## Ratings

No reviews have been submitted yet.

[Your review](https://wordpress.org/support/plugin/taxvoice/reviews/#new-post)

[See all reviews](https://wordpress.org/support/plugin/taxvoice/reviews/)

## Contributors

 *   [ agencepixelweb ](https://profiles.wordpress.org/agencepixelweb/)

## Support

Got something to say? Need help?

 [View support forum](https://wordpress.org/support/plugin/taxvoice/)