Lightweight PDF Invoices & Packing Slips Generator for WooCommerce
Automatically generate PDF invoices and packing slips, attach invoices to order emails and download them from the order screen: fast, lightweight, no SaaS subscription.
WooCommerce tax settings explained: prices with or without tax, tax classes and rate tables, shipping tax, zero-rated products, tax-exempt customers, automated services and invoices. Not tax advice.
WooCommerce's tax settings appear only after you enable taxes. Once enabled, WooCommerce calculates tax from rate tables you enter and shows prices with or without tax. For WooCommerce VAT in Saudi Arabia that usually means entering prices with VAT included, adding a 15 percent rate and showing tax-inclusive prices, then checking the result with your accountant. This guide follows WooCommerce's documentation as of October 2026. It is general information, not tax or legal advice: WooCommerce's own tax guide says it explains how to configure rates, not when or what to charge.
In short
Open WooCommerce > Settings > General, tick Enable tax rates and calculations under Taxes and coupons, and save. The Tax tab then appears at WooCommerce > Settings > Tax, with the options the official tax guide lists.
| Setting | What it does |
|---|---|
| Prices entered with tax | Yes, inclusive of tax, or No, exclusive of tax |
| Calculate tax based on | Customer shipping address (the default), customer billing address, or shop base address |
| Shipping tax class | Based on the cart items (the default), or Standard, Reduced rate, Zero rate or an additional class |
| Rounding | Round tax at subtotal level instead of per line |
| Additional tax classes | One class per line |
| Display prices in the shop, and in cart and checkout | Each shows prices including or excluding tax |
| Price display suffix | Text after the price, with {price_including_tax} or {price_excluding_tax} |
| Display tax totals | Itemised by rate name, or as a single total |
"Prices entered with tax" tells WooCommerce how to read the numbers you type. If you choose inclusive, it works backwards to a base price and the tax inside it: in the documentation's UK example, a price of 9.99 entered with tax included becomes a base price of 8.325 plus tax. Changing the setting later changes how existing prices are read and does not rewrite them, so decide before you enter your catalogue.
If the entered-price setting and the two display settings disagree, WooCommerce warns you, and Use recommended settings aligns them. Our guide to VAT and invoices for online stores in Saudi Arabia explains that consumer prices are normally expected to include VAT, with the VAT amount as its own line. Keep WooCommerce consistent with it: prices entered and displayed with tax, and tax totals itemised so the VAT line shows its name.
For Calculate tax based on, the specific setups page shows a single-rate store using the shop base address and tax-inclusive prices, so every customer pays the same price. If you sell abroad, ask your accountant which address should decide the rate.
Every product has a tax class, Standard by default, and each class has its own rate table with these columns: country code, state code, postcode, city, rate, tax name, priority, compound and shipping. An asterisk matches all countries, states or cities. When several rows match, only the first at each priority applies, and lower numbers come first. Compound stacks a rate on earlier taxes, and the Shipping box applies a rate to delivery. Add rows with Insert row, then Save changes. Tax reports are at WooCommerce > Analytics > Taxes.
You can import and export a rate table as CSV: export one manually entered row to get a template with the ten required columns. The documentation says its sample file is not for production, so use rates your accountant confirms. WooCommerce > Status > Tools > Delete tax rates removes every rate and cannot be undone, so back up first.
The Shipping tax class setting decides which rate applies to delivery. By default it follows the cart: a Standard-rate product makes that rate apply to shipping, and otherwise WooCommerce uses the first rate in Additional tax classes. Each shipping method also has a Tax status, and None stops tax on it. Whether delivery should carry VAT is for ZATCA and your accountant to say. Our shipping setup guide covers the shipping side.
Rounding causes small differences: the troubleshooting page notes that rounding per line and at subtotal level can give slightly different totals. Compare a multi-line test order with your accounting system.
The product editor has a Tax status (Taxable, Shipping only or None) and a Tax class. Shipping only taxes just the delivery cost. VAT law distinguishes zero-rated from exempt supplies, and which one a product is, and how it must appear on an invoice, is for ZATCA and your accountant to say. WooCommerce only stores the setting: a class with a zero rate row, or a status of None, both add no tax to the price.
For business customers, the core documentation we read describes no setting to exempt a customer, and its display options apply store-wide. WooCommerce.com lists extensions for tax exemption by customer or role and for rates and display by role. Check what each does before relying on it, and see our guide to B2B and wholesale setup in WooCommerce.
WooCommerce Tax is the official extension for automated taxes. Its documentation says it calculates sales tax at checkout from the store and customer addresses, and that it does not file returns, remit tax or decide where you owe tax. It lists supported stores in the United States, Canada, Australia, the United Kingdom and named EU countries. As of October 2026 no Gulf country is on that list, so do not assume Saudi support. While it is on, prices are entered and displayed without tax, which does not match a VAT-inclusive display. Ask any other tax service which countries it covers.
ZATCA's VAT page describes a simplified tax invoice as showing the issue date, the supplier's name and address, a description of the goods or services, the amount and the VAT value, and says it must be in Arabic and show the total including VAT.
E-invoicing goes further: ZATCA's introduction says a scanned or copied paper invoice is not an electronic invoice, and our guide to ZATCA e-invoicing phase 2 explains the XML, QR code, stamp and waves. Nothing in the WooCommerce documentation we read describes those formats, so treat core WooCommerce as not covering them. Plugins describe Saudi invoicing features, but we have not tested any, and DevMarket offers no ZATCA integration. ZATCA's solution providers directory says a listing is not an approval, so ask each vendor what is covered and for which phase.
The PDF Invoices & Packing Slips for WooCommerce plugin on DevMarket generates PDF invoices and attaches them to WooCommerce emails. Its page makes no compliance claim and, as of October 2026, says Arabic script is not supported in this version, so check it against your accountant's requirements.
These settings are a starting point for your accountant, not a ruling. Work before launch or on staging, with a backup.
| Question | Why it matters |
|---|---|
| Am I VAT-registered, and from what date? | Decides whether you charge VAT |
| Are prices entered and shown with VAT? | Matches consumer price display |
| Which products are standard-rated, zero-rated or exempt? | Sets each class and status |
| Is delivery taxed, and at which rate? | Sets the shipping tax settings |
| What applies to customers outside Saudi Arabia? | Sets Calculate tax based on |
| How do I treat business customers? | Decides price display and exemptions |
| Which documents, language and e-invoicing wave apply? | Decides if my invoicing tool is enough |
At WooCommerce > Settings > Tax, once Enable tax rates and calculations is ticked under WooCommerce > Settings > General. If the tab is missing, check that box.
Core WooCommerce calculates from the rate you enter, so you add the 15 percent rate yourself and confirm it with ZATCA. The WooCommerce Tax extension lists no Gulf country as of October 2026.
Not by itself, as far as its documentation shows. Ask any plugin vendor which e-invoicing phase it covers, then check with ZATCA and your accountant.
Rounding is the usual cause: compare rounding at subtotal level with rounding per line.
Review the checklist with your accountant before launch, then read ZATCA e-invoicing phase 2 for online stores. For the wider store, see how to set up WooCommerce and browse WooCommerce plugins on DevMarket.
The software this guide talks about, ready to look at.
Automatically generate PDF invoices and packing slips, attach invoices to order emails and download them from the order screen: fast, lightweight, no SaaS subscription.
Fix the WordPress critical error and white screen of death calmly: back up, read the logs, find the cause by elimination, then handle database, 500, memory, maintenance mode, 404 and login errors.
9 min read
Choose a WordPress theme by testing, not by demo. Compare block and classic themes, sources, speed, accessibility, RTL support, WooCommerce, builder lock-in and licence terms on a staging copy.
9 min read
Use this WordPress maintenance checklist to plan weekly, monthly and yearly tasks: updates, backups, users, plugins, security, speed, PHP, domain and SSL, plus Site Health and WooCommerce checks.
9 min read
Every item on DevMarket has a human-reviewed release, an instant licence key and clear update and support terms.