Title: RakeshDhiman Invoice Manager for WooCommerce
Author: Rakesh Kumar
Published: <strong>July 23, 2026</strong>
Last modified: July 23, 2026

---

Search plugins

![](https://ps.w.org/rakeshdhiman-invoice-manager-woocommerce/assets/banner-772x250.
png?rev=3619486)

![](https://ps.w.org/rakeshdhiman-invoice-manager-woocommerce/assets/icon-256x256.
png?rev=3619486)

# RakeshDhiman Invoice Manager for WooCommerce

 By [Rakesh Kumar](https://profiles.wordpress.org/rakeshdhiman/)

[Download](https://downloads.wordpress.org/plugin/rakeshdhiman-invoice-manager-woocommerce.2.0.4.zip)

 * [Details](https://wordpress.org/plugins/rakeshdhiman-invoice-manager-woocommerce/#description)
 * [Reviews](https://wordpress.org/plugins/rakeshdhiman-invoice-manager-woocommerce/#reviews)
 *  [Installation](https://wordpress.org/plugins/rakeshdhiman-invoice-manager-woocommerce/#installation)
 * [Development](https://wordpress.org/plugins/rakeshdhiman-invoice-manager-woocommerce/#developers)

 [Support](https://wordpress.org/support/plugin/rakeshdhiman-invoice-manager-woocommerce/)

## Description

RakeshDhiman Invoice Manager for WooCommerce generates clean, print-ready invoice
documents for every WooCommerce order. Store owners can fully customise company 
details, invoice numbering, branding, Tax ID / GSTIN, HSN / SAC / SKU columns, bank
details, notes, terms, and signatures directly from the WooCommerce admin.

The plugin works standalone out of the box. No account required, no nag screens,
and no crippled trial — every free feature is fully functional.

Designed to work for WooCommerce stores in any country. The Tax ID field label (
GSTIN, VAT Number, ABN, EIN, CRN) and product code column label (HSN, SKU, HS Code,
Tariff Code) are fully configurable. Amount-in-words adapts automatically to Indian
numbering (lakhs/crores) for INR, BDT, NPR, PKR, and LKR, and uses international
numbering (millions/billions) for all other currencies.

#### Free Features

**Invoice generation**

 * Automatic invoice numbers with configurable prefix, start number, and zero-padding
 * Atomic invoice number assignment — prevents duplicate invoice numbers under concurrent
   orders
 * Invoice dates assigned automatically on order creation
 * Invoice view and print from the WooCommerce admin order screen
 * Invoice view and print from the customer My Account orders page
 * Guest invoice access via WooCommerce order key (no login required)
 * Invoice PDF download powered by Dompdf

**Branding and company details**

 * Company name, address, phone, email, and configurable Tax ID / VAT Number
 * Configurable Tax ID label — set it to GSTIN, VAT Number, ABN, EIN, CRN, or any
   custom text
 * Logo upload via WordPress media library (stored as attachment ID — survives domain
   changes)
 * Signature image and signature label
 * Accent colour for invoice headers

**Product table**

 * Optional product code column with fully configurable label (HSN, SAC, SKU, HS
   Code, Tariff Code, or any custom text)
 * Product-level code field on the WooCommerce product edit screen

**Bank details**

 * Bank account name, account number, IFSC / SWIFT / BIC code, and bank name
 * Bank details section shown on every invoice when filled in

**Notes and terms**

 * Editable notes and terms and conditions on every invoice

**Admin settings**

 * Card-based settings page with organised sections and live invoice preview
 * Live invoice preview panel — reflects unsaved changes before saving
 * Required-field validation before settings are saved
 * Data Management — optional data removal on uninstall

**Compatibility**

 * Compatible with WooCommerce High-Performance Order Storage (HPOS)
 * Compatible with WordPress Multisite

#### Pro Features

The [RakeshDhiman Invoice Manager for WooCommerce Pro](https://payhip.com/b/xkn6B)
add-on extends this plugin with advanced features for businesses that need more:

**Custom templates and PDF**

 * Custom HTML/CSS invoice templates — full control over invoice design using your
   own markup and placeholders
 * Browser PDF engine — Chrome/Edge headless rendering for pixel-perfect PDFs from
   modern custom templates
 * Auto PDF mode — custom templates use the browser engine; the default layout uses
   Dompdf

**Packing slips**

 * Packing slip view and print from admin order screens
 * Packing slip PDF downloads
 * Packing slips show shipping details, product names, SKUs, quantities, and packed
   checkboxes — no prices

**Email attachments**

 * Automatically attach invoice PDFs to selected WooCommerce order emails
 * Choose which emails receive invoice PDFs — admin emails and customer emails shown
   separately
 * Attach packing slip PDFs to admin New Order email
 * Packing slips are never sent to customer emails regardless of settings

**Bulk actions**

 * Bulk print invoices from the WooCommerce orders list
 * Bulk download invoice PDFs as a single ZIP file
 * Bulk print packing slips

Pro requires the free plugin to be installed and active.

#### Invoice access rules

Invoices can be viewed by:

 * WooCommerce administrators and shop managers
 * The customer who placed the order
 * Anyone with a valid WooCommerce order key (for guest checkout links)

#### Live invoice preview

The invoice settings page includes a live preview panel that:

 * Updates while you edit settings, including before saving
 * Uses a nonce-protected AJAX request
 * Uses the latest WooCommerce order as sample data
 * Renders inside a sandboxed iframe
 * Is available only to users with WooCommerce management permissions

Preview changes are not applied to real invoices until you click Save Changes.

#### PDF generation (Free)

The free plugin uses Dompdf to generate invoice PDFs. Dompdf works well for the 
built-in default invoice layout.

The Pro add-on adds a browser-based PDF engine (Chrome/Edge headless) for custom
HTML/CSS templates that use modern CSS such as flexbox, grid, and gradients.

#### Product code column

The product code column is optional and works for any country. Admins can:

 * Hide it completely
 * Rename it to any label — HSN, SAC, SKU, HS Code, Tariff Code, Product Code, or
   anything else

#### COD due amount behaviour

 * For Cash on Delivery orders, due amount follows WooCommerce paid status.
 * For non-COD orders, due amount shows as zero once payment is received.

#### Required settings

The following fields must be filled before settings can be saved:

 * Invoice Title
 * Company Name
 * Company Address
 * Company Phone
 * Company Email
 * Logo URL

#### Optional settings

All other fields are optional. Empty optional fields are hidden cleanly in the default
invoice layout.

#### Custom template placeholders (Pro)

**Invoice and company**

 * `{{invoice_title}}` `{{invoice_number}}` `{{order_number}}` `{{invoice_date}}`
 * `{{payment_method}}` `{{order_status}}` `{{order_currency}}`
 * `{{company_name}}` `{{company_phone}}` `{{company_email}}`
 * `{{company_gstin}}` `{{company_gstin_label}}`
 * `{{signature_label}}` `{{accent_color}}`
 * `{{currency_code}}` `{{currency_symbol}}`
 * `{{hsn_label}}` `{{show_hsn_column}}`

**Totals**

 * `{{taxable_amount}}` `{{shipping_amount}}` `{{total_payable}}`
 * `{{received_amount}}` `{{due_amount}}` `{{total_words}}`
 * `{{total_quantity}}` `{{notes}}` `{{terms}}`

**Billing address — individual fields**

 * `{{billing_first_name}}` `{{billing_last_name}}` `{{billing_company}}`
 * `{{billing_email}}` `{{billing_phone}}`
 * `{{billing_address_1}}` `{{billing_address_2}}`
 * `{{billing_city}}` `{{billing_state}}` `{{billing_postcode}}` `{{billing_country}}`

**Shipping address — individual fields**

 * `{{shipping_first_name}}` `{{shipping_last_name}}` `{{shipping_company}}`
 * `{{shipping_address_1}}` `{{shipping_address_2}}`
 * `{{shipping_city}}` `{{shipping_state}}` `{{shipping_postcode}}` `{{shipping_country}}`

**HTML blocks (prebuilt)**

 * `{{logo_html}}` `{{signature_html}}`
 * `{{company_address_html}}` `{{billing_lines_html}}`
 * `{{products_rows_html}}` `{{products_table_html}}`
 * `{{tax_rows_html}}`
 * `{{bank_details_rows_html}}` `{{bank_details_table_html}}`
 * `{{notes_html}}` `{{terms_html}}`

**Note:** `{{products_rows_html}}` returns only the inner `<tr>` rows. Wrap it in
your own `<table><tbody>...</tbody></table>`. Use `{{products_table_html}}` for 
the complete table including headers.

## Installation

 1.  Upload the `rakeshdhiman-invoice-manager-woocommerce` folder to `/wp-content/plugins/`.
 2.  Activate the plugin through the **Plugins** screen in WordPress.
 3.  Make sure WooCommerce is active.
 4.  Go to **WooCommerce > Invoice Settings**.
 5.  Fill in the required company and branding fields.
 6.  Upload a logo using the media library button next to the Logo URL field.
 7.  Review the live invoice preview on the right-hand side.
 8.  Click **Save Changes**.
 9.  Open any WooCommerce order to see the invoice and PDF download buttons.

## FAQ

### Does this plugin generate PDF files?

Yes. Invoice PDFs are generated using Dompdf and can be downloaded directly from
admin order screens and from the customer My Account page.

### Does the free plugin support custom invoice templates?

No. Custom HTML/CSS invoice templates are available in the Pro add-on. The free 
plugin uses the built-in default invoice layout.

### Does the free plugin include packing slips?

No. Packing slips are a Pro feature. The free plugin generates invoices only.

### Can invoices be attached to WooCommerce emails?

Email PDF attachments are available in the Pro add-on. The free plugin does not 
attach PDFs to emails.

### Can guests access their invoice without logging in?

Yes. Customers who checked out as guests can view and download their invoice using
the order key link included in their WooCommerce order confirmation email.

### Does the preview update before I save settings?

Yes. The preview reflects your current form values, including any unsaved changes.
Click Save Changes to apply those values to real invoices.

### Can I hide or rename the product code column?

Yes. Go to WooCommerce > Invoice Settings and disable the column entirely, or change
the label to any text — HSN, SAC, SKU, HS Code, Product Code, or anything else.

### Can I use my own Tax ID label instead of GSTIN?

Yes. The Tax ID Label field in Company Details lets you set any label — GSTIN, VAT
Number, ABN, EIN, CRN, or any custom text. This label prints before the Tax ID value
on every invoice.

### Will the plugin data be deleted when I uninstall it?

Not by default. Enable Delete Data on Uninstall in the Data Management section of
the settings before uninstalling if you want all plugin settings and stored invoice
meta to be removed.

### Is this plugin compatible with WooCommerce HPOS?

Yes. The plugin is fully compatible with WooCommerce High-Performance Order Storage(
HPOS / custom order tables).

### Does this plugin work with WooCommerce Blocks checkout?

Yes. The plugin hooks into WooCommerce order creation events and works regardless
of whether orders are placed through the classic or block-based checkout.

### Where do I report bugs or request features?

Please use the WordPress.org support forum to report bugs or request features.

## Reviews

There are no reviews for this plugin.

## Contributors & Developers

“RakeshDhiman Invoice Manager for WooCommerce” is open source software. The following
people have contributed to this plugin.

Contributors

 *   [ Rakesh Kumar ](https://profiles.wordpress.org/rakeshdhiman/)

[Translate “RakeshDhiman Invoice Manager for WooCommerce” into your language.](https://translate.wordpress.org/projects/wp-plugins/rakeshdhiman-invoice-manager-woocommerce)

### Interested in development?

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

## Changelog

#### 2.0.4

 * Removed additional non-runtime files bundled from dependencies (docs, examples,
   bin scripts, lint/CI configs) and hardened .distignore against them recurring.
 * Replaced remaining hardcoded style tags in the live preview with genuine wp_enqueue_style()/
   wp_add_inline_style() calls.
 * Rewrote the settings sanitizer to build an explicit field whitelist instead of
   merging raw input over defaults.
 * Added a defense-in-depth sanitization pass on live-preview input before it reaches
   the settings sanitizer.
 * Escaped custom-template output and custom CSS at the point of use instead of 
   relying solely on save-time sanitization.

#### 2.0.3

 * Renamed plugin to RakeshDhiman Invoice Manager for WooCommerce (previously Dynamic
   Invoice for WooCommerce) for directory naming compliance.
 * Removed all custom HTML/CSS invoice template code from the free plugin; this 
   is now exclusively a Pro add-on feature with its own independent settings storage.
 * Removed the browser (headless Chrome/Edge) PDF engine from the free plugin; also
   exclusively a Pro add-on feature now.
 * Replaced hardcoded stylesheet tags with wp_enqueue_style()/wp_add_inline_style()
   throughout.
 * Removed unnecessary load_plugin_textdomain() call.
 * Removed unused development/test files from bundled dependencies.

#### 2.0.2

 * Hardened invoice access control so the admin nonce path is exclusive and no longer
   falls through to the order-key path.
 * Capped bulk print, bulk packing-slip print, and bulk PDF download handlers to
   prevent denial-of-service through large order selections.
 * Fixed `clear_cache()` to remove orphaned browser profile directories, leftover
   HTML files, and the temp subdirectory while preserving `.htaccess` and `index.
   php` sentinels.
 * Replaced the manual “free plugin required” notice on the Pro add-on with a WordPress
   6.5+ native dependency notice on older WordPress versions.
 * Removed dead code in the bulk download path and unused invoice sequence lock 
   constants.
 * Removed development dependencies (`wpcs`, `phpcodesniffer-composer-installer`,`
   php-scoper`) from the production `composer.json`.
 * Bumped minimum PHP to 8.0 and minimum WordPress to 6.5.
 * Reformatted plugin source to follow WordPress Coding Standards.

#### 2.0.1

 * Renamed plugin to Dynamic Invoice for WooCommerce.
 * Redesigned admin settings page with card-based sections, a purple gradient header
   banner, sticky save bar, and organised field groups.
 * Added Free vs Pro comparison table to the settings page when Pro is not active.
 * Added Pro feature gate — custom HTML/CSS templates and browser PDF engine are
   disabled automatically when the Pro add-on is not active, even if values were
   previously saved.
 * Added atomic MySQL invoice number assignment using SELECT FOR UPDATE — prevents
   duplicate invoice numbers under concurrent order processing.
 * Added activation integrity check — next invoice number is always set higher than
   the highest stored sequence on plugin activation/reactivation.
 * Added friendly PDF error page — replaces white screen / wp_die on PDF generation
   failure.
 * Added logo attachment ID storage — logo URL is re-resolved from WordPress media
   library on save, survives domain changes.
 * Added 22 individual billing, shipping, and order field placeholders for custom
   templates.
 * Added configurable Tax ID label (GSTIN, VAT Number, ABN, EIN, CRN, or custom 
   text).
 * Added Tax ID / VAT Number field label and IFSC / SWIFT / BIC bank label — internationally
   neutral.
 * Added bulk action processing feedback — spinner notice shown while bulk print
   or ZIP download runs.
 * Added email admin/customer group separation — Admin emails and Customer emails
   shown as separate labelled groups in email settings.
 * Added packing slip hard gate — packing slip PDFs are never attached to customer
   emails regardless of settings.
 * Fixed invoice and packing slip print/PDF layout — removed forced min-height, 
   added page-break controls and overflow fixes.
 * Improved live invoice preview sidebar to fill full viewport height.

#### 2.0.0

 * Added invoice PDF downloads powered by Dompdf.
 * Added browser-based PDF rendering for modern custom HTML/CSS templates.
 * Added PDF engine setting with Auto, Browser, and Dompdf modes.
 * Added live invoice preview panel to the admin settings screen.
 * Added packing slip generation and packing slip PDF downloads.
 * Added optional WooCommerce email PDF attachments.
 * Added bulk invoice and packing slip actions.
 * Added HPOS (High-Performance Order Storage) compatibility.
 * Added guest invoice access via WooCommerce order key.
 * Improved settings sanitization and required-field validation.

#### 1.0.6

 * Added a short-lived invoice sequence lock to reduce duplicate invoice number 
   risk during concurrent order processing.
 * Localised media uploader strings used by the invoice settings page.

#### 1.0.5

 * Fixed live preview AJAX requests returning 0 by excluding WordPress settings 
   form control fields from the preview payload.

#### 1.0.4

 * Improved live preview error handling so WordPress AJAX error messages are shown
   instead of a generic network error.

#### 1.0.3

 * Fixed live preview updates for unsaved invoice settings such as Invoice Title.
 * Improved AJAX form data handling so preview values are parsed as WordPress settings
   fields.

#### 1.0.2

 * Added AJAX-based live invoice preview to the invoice settings screen.
 * Added immediate preview refresh when Invoice Layout Mode changes.
 * Improved preview security with nonce validation, capability checks, and sandboxed
   iframe rendering.

#### 1.0.1

 * Added required-field validation for invoice settings.
 * Added editable signature label support.
 * Added optional HSN column toggle and custom HSN label.
 * Improved COD due amount handling.
 * Added uninstall data-retention option.
 * Added WordPress.org readme and translation loading.

#### 1.0.0

 * Initial release.

## Meta

 *  Version **2.0.4**
 *  Last updated **24 hours ago**
 *  Active installations **Fewer than 10**
 *  WordPress version ** 6.5 or higher **
 *  Tested up to **7.0.2**
 *  PHP version ** 8.0 or higher **
 * Tags
 * [Billing](https://wordpress.org/plugins/tags/billing/)[invoice](https://wordpress.org/plugins/tags/invoice/)
   [pdf invoice](https://wordpress.org/plugins/tags/pdf-invoice/)[woocommerce](https://wordpress.org/plugins/tags/woocommerce/)
   [woocommerce invoice](https://wordpress.org/plugins/tags/woocommerce-invoice/)
 *  [Advanced View](https://wordpress.org/plugins/rakeshdhiman-invoice-manager-woocommerce/advanced/)

## Ratings

No reviews have been submitted yet.

[Your review](https://wordpress.org/support/plugin/rakeshdhiman-invoice-manager-woocommerce/reviews/#new-post)

[See all reviews](https://wordpress.org/support/plugin/rakeshdhiman-invoice-manager-woocommerce/reviews/)

## Contributors

 *   [ Rakesh Kumar ](https://profiles.wordpress.org/rakeshdhiman/)

## Support

Got something to say? Need help?

 [View support forum](https://wordpress.org/support/plugin/rakeshdhiman-invoice-manager-woocommerce/)