Title: SoftGlaze Invoices Gulf
Author: Azhar Ali
Published: <strong>August 30, 2026</strong>
Last modified: August 30, 2026

---

Search plugins

![](https://ps.w.org/softglaze-invoices-gulf/assets/banner-772x250.png?rev=3672537)

![](https://ps.w.org/softglaze-invoices-gulf/assets/icon-256x256.png?rev=3672537)

# SoftGlaze Invoices Gulf

 By [Azhar Ali](https://profiles.wordpress.org/softglaze/)

[Download](https://downloads.wordpress.org/plugin/softglaze-invoices-gulf.0.4.0.zip)

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

 [Support](https://wordpress.org/support/plugin/softglaze-invoices-gulf/)

## Description

An add-on for SoftGlaze PDF Invoices that adds what a tax invoice in Saudi Arabia
and the United Arab Emirates has to carry.

What it does:

 * Issues ZATCA generation-phase simplified tax invoices, including the TLV QR code
   and a bilingual Arabic and English layout.
 * Keeps a register of what was issued: the totals, the VAT rate in force, the QR
   payload exactly as encoded, and a snapshot of the document.
 * Produces UBL 2.1 XML for the ZATCA integration phase, and a PINT AE payload for
   the UAE.
 * Hands a finished document to a certified provider through a connector interface.

Once the seller details are filled in, a WooCommerce order produces the tax invoice
on its own. The add-on takes the document over on the parent plugin’s own developer
seam, so the customer is given the bilingual invoice rather than the parent’s, and
the number printed on it is the one this add-on issued. That is deliberate: the 
number a tax invoice carries has to be the one the seller issued for it, and it 
is the number encoded in the QR code. A document that is not a tax invoice, a store
that has not been configured yet, and anything the generator refuses, all leave 
the parent’s own document exactly as it was.

#### What it does not do

This add-on does not transmit anything, and it is not an Accredited Service Provider.

Clearing an invoice with ZATCA needs a cryptographic stamp issued through onboarding
with ZATCA, which is a credential belonging to a specific taxpayer. Transmission
in the UAE is legally an Accredited Service Provider’s, and accreditation requires
a Peppol-certified solution that has been in operation for at least two years. Neither
is something this plugin can hold on your behalf.

So the honest description of what you get is: correct invoice data, ready to hand
to the provider you have chosen. The provider does the filing.

#### Requirements

SoftGlaze PDF Invoices must be installed and active. This is an add-on and does 
nothing on its own.

### Resources

Amiri 1.000
 Copyright 2010-2022 The Amiri Project Authors License: SIL Open Font
License 1.1 Source: https://github.com/aliftype/amiri Bundled at assets/fonts/, 
unmodified. The regular and bold faces are embedded in the PDF so an Arabic invoice
renders the same on any host. The licence text is at assets/fonts/OFL.txt.

## Screenshots

[⌊A Saudi simplified tax invoice as the customer receives it: the Arabic and English
headings side by side, the seller block with the VAT registration number, the priced
lines, the totals and the ZATCA TLV QR code.⌉⌊A Saudi simplified tax invoice as 
the customer receives it: the Arabic and English headings side by side, the seller
block with the VAT registration number, the priced lines, the totals and the ZATCA
TLV QR code.⌉[

A Saudi simplified tax invoice as the customer receives it: the Arabic and English
headings side by side, the seller block with the VAT registration number, the priced
lines, the totals and the ZATCA TLV QR code.

[⌊The head of the invoice. The document title, the seller name and registered address
in both languages, the VAT registration number, and the invoice number, issue date
and issue time that Annex 2 makes mandatory.⌉⌊The head of the invoice. The document
title, the seller name and registered address in both languages, the VAT registration
number, and the invoice number, issue date and issue time that Annex 2 makes mandatory
.⌉[

The head of the invoice. The document title, the seller name and registered address
in both languages, the VAT registration number, and the invoice number, issue date
and issue time that Annex 2 makes mandatory.

[⌊The line items. Every column is headed in Arabic and in English, and each line
carries its quantity, unit price and total.⌉⌊The line items. Every column is headed
in Arabic and in English, and each line carries its quantity, unit price and total
.⌉[

The line items. Every column is headed in Arabic and in English, and each line carries
its quantity, unit price and total.

[⌊The totals and the QR code. The QR encodes the five ZATCA TLV tags: the seller
name, the VAT registration number, the timestamp, the total including VAT, and the
VAT amount.⌉⌊The totals and the QR code. The QR encodes the five ZATCA TLV tags:
the seller name, the VAT registration number, the timestamp, the total including
VAT, and the VAT amount.⌉[

The totals and the QR code. The QR encodes the five ZATCA TLV tags: the seller name,
the VAT registration number, the timestamp, the total including VAT, and the VAT
amount.

[⌊A second invoice raised from a different order, with the numbering running in 
sequence against the register.⌉⌊A second invoice raised from a different order, 
with the numbering running in sequence against the register.⌉[

A second invoice raised from a different order, with the numbering running in sequence
against the register.

[⌊The settings screen. The seller name and address in Arabic and English, the VAT
registration number, the VAT rate and the currency invoices are issued in.⌉⌊The 
settings screen. The seller name and address in Arabic and English, the VAT registration
number, the VAT rate and the currency invoices are issued in.⌉[

The settings screen. The seller name and address in Arabic and English, the VAT 
registration number, the VAT rate and the currency invoices are issued in.

[⌊The registered address in parts, and the registration identifiers the two XML 
profiles ask for: the Saudi commercial register entry, and the UAE trade licence
and electronic address.⌉⌊The registered address in parts, and the registration identifiers
the two XML profiles ask for: the Saudi commercial register entry, and the UAE trade
licence and electronic address.⌉[

The registered address in parts, and the registration identifiers the two XML profiles
ask for: the Saudi commercial register entry, and the UAE trade licence and electronic
address.

[⌊The submission section, which says plainly what this add-on does and does not 
do, and where the provider connector for each country is chosen.⌉⌊The submission
section, which says plainly what this add-on does and does not do, and where the
provider connector for each country is chosen.⌉[

The submission section, which says plainly what this add-on does and does not do,
and where the provider connector for each country is chosen.

[⌊The WooCommerce orders list, with an invoice against every completed order.⌉⌊The
WooCommerce orders list, with an invoice against every completed order.⌉[

The WooCommerce orders list, with an invoice against every completed order.

[⌊The order screen. The document box belongs to SoftGlaze PDF Invoices; this add-
on replaces what the invoice contains, so the button that was already there now 
produces the bilingual tax invoice.⌉⌊The order screen. The document box belongs 
to SoftGlaze PDF Invoices; this add-on replaces what the invoice contains, so the
button that was already there now produces the bilingual tax invoice.⌉[

The order screen. The document box belongs to SoftGlaze PDF Invoices; this add-on
replaces what the invoice contains, so the button that was already there now produces
the bilingual tax invoice.

[⌊The Plugins screen, showing the dependency in both directions. The parent plugin
cannot be deactivated while this add-on is relying on it.⌉⌊The Plugins screen, showing
the dependency in both directions. The parent plugin cannot be deactivated while
this add-on is relying on it.⌉[

The Plugins screen, showing the dependency in both directions. The parent plugin
cannot be deactivated while this add-on is relying on it.

## Installation

 1. Install and activate SoftGlaze PDF Invoices.
 2. Upload this plugin to `/wp-content/plugins/` and activate it.
 3. Open the settings screen and enter the seller details a tax invoice needs: the 
    registered name, the VAT registration number and the national address.

## FAQ

### Is this ZATCA compliant?

It generates ZATCA generation-phase simplified tax invoices, and it produces UBL
2.1 documents for the integration phase. It does not stamp or submit them. An invoice
is compliant once your provider has cleared or reported it.

### Does it work without the parent plugin?

No. It adds fields, a renderer and a register to SoftGlaze PDF Invoices, and stands
down when that plugin is absent.

### Which VAT rate does it use?

The rate is configurable per country and is stored with each invoice, so a rate 
change does not rewrite an invoice that was already issued.

## Reviews

There are no reviews for this plugin.

## Contributors & Developers

“SoftGlaze Invoices Gulf” is open source software. The following people have contributed
to this plugin.

Contributors

 *   [ Azhar Ali ](https://profiles.wordpress.org/softglaze/)

[Translate “SoftGlaze Invoices Gulf” into your language.](https://translate.wordpress.org/projects/wp-plugins/softglaze-invoices-gulf)

### Interested in development?

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

## Changelog

#### 0.4.0

 * A WooCommerce order now produces the tax invoice without anything having to call
   the generator.
 * The document is taken over on the parent plugin’s `sgci_document_html` seam, 
   and the number printed is the one issued against this add-on’s register.
 * A receipt, a proforma, an unconfigured store, or any refusal by the generator
   leaves the parent’s document untouched.
 * Added the `sgig_render_document` filter, which switches the takeover off for 
   one document or for all of them.

#### 0.3.0

 * Added UBL 2.1 output for the ZATCA integration phase.
 * Added the PINT AE payload for the UAE.
 * Added a provider-agnostic connector interface. No implementation ships.

#### 0.2.0

 * Added the invoice register and reprinting from the register.

#### 0.1.0

 * First release. ZATCA generation-phase simplified tax invoices with the TLV QR
   code.

## Meta

 *  Version **0.4.0**
 *  Last updated **20 hours ago**
 *  Active installations **Fewer than 10**
 *  WordPress version ** 6.5 or higher **
 *  Tested up to **7.1**
 *  PHP version ** 7.4 or higher **
 * Tags
 * [e-invoicing](https://wordpress.org/plugins/tags/e-invoicing/)[invoice](https://wordpress.org/plugins/tags/invoice/)
   [vat](https://wordpress.org/plugins/tags/vat/)[woocommerce](https://wordpress.org/plugins/tags/woocommerce/)
   [zatca](https://wordpress.org/plugins/tags/zatca/)
 *  [Advanced View](https://wordpress.org/plugins/softglaze-invoices-gulf/advanced/)

## Ratings

No reviews have been submitted yet.

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

[See all reviews](https://wordpress.org/support/plugin/softglaze-invoices-gulf/reviews/)

## Contributors

 *   [ Azhar Ali ](https://profiles.wordpress.org/softglaze/)

## Support

Got something to say? Need help?

 [View support forum](https://wordpress.org/support/plugin/softglaze-invoices-gulf/)