Description
NINJA Docsmith for WooCommerce gives your WooCommerce store professional, sequentially numbered PDF documents — entirely on your own server, with no cloud dependency.
Invoice PDF — contains your company logo, name, address and tax/VAT details; the customer’s billing address; a line-items table with unit prices, quantities, subtotals, shipping, tax, discounts and a bold total row; and the payment method. Every invoice receives a persistent sequential number (e.g. INV-00042) that is stored on the order so it never changes on regeneration.
Packing Slip PDF — a price-free pick/pack document showing the shipping address, item names, quantities, and the chosen shipping method. Ideal for warehouse staff.
Email attachment — choose which WooCommerce emails (Completed Order, Processing Order, Customer Invoice, New Order, or any other) should automatically include the invoice PDF as an attachment. The PDF is generated on the fly and attached before the email is sent.
Admin download & print — every order row gains two action links (“Invoice PDF” and “Packing Slip PDF”) that stream the document inline so you can view or print it directly from the browser. A bulk action (“Download Invoice PDFs”) lets you grab a ZIP of invoices for multiple selected orders at once.
Settings (under WooCommerce PDF Invoices):
- Company name, address, and tax/VAT/registration details printed in the document header
- Optional logo — paste the URL of any JPEG or PNG from your media library
- Invoice number prefix (e.g. “INV-“) and configurable starting number
- Checkboxes for which WC email notifications should carry the invoice attachment
Compatibility — HPOS-safe (Custom Order Tables supported), tested on WordPress 6.8–7.0 and WooCommerce 8.0+. Requires PHP 7.4 or later.
Privacy — the plugin makes zero external requests during normal operation. PDF generation runs entirely on your server. The only optional network call is the consent-gated “NINJA Updates” subscription (see below).
Third-party library: FPDF
This plugin bundles FPDF 1.86 by Olivier PLATHEY (http://www.fpdf.org). FPDF is free software distributed under a permissive licence that permits free use for any purpose, commercial or not, with no attribution required. The library is included as a single PHP file (includes/lib/fpdf.php) with no Composer or external autoloader needed.
Stay updated (optional)
The settings screen has an optional “NINJA Updates” card: tick the consent box and enter your email to hear about plugin updates and new NINJA modules. Nothing is sent unless you submit that form. You can unsubscribe with one click at any time.
Installation
- Go to Plugins Add New, search for “NINJA Docsmith for WooCommerce”, and click Install Now — or upload the ZIP under Add New Upload Plugin.
- Click Activate.
- Open WooCommerce PDF Invoices, fill in your company details and logo, choose which emails should attach the invoice, and click Save Changes.
FAQ
-
Does it make any external requests?
-
Not during normal operation. Everything the plugin does — PDF generation, email attachment, admin download — runs inside your own WordPress install. The single exception is the optional “NINJA Updates” card: only if you tick its consent box and submit your email does the plugin contact ninja.si. Leave it alone and nothing is ever sent.
-
How are invoice numbers assigned?
-
Each order receives a unique, sequential invoice number the first time its invoice is generated. The number (e.g. INV-00042) is saved on the order so it stays the same no matter how many times the document is regenerated. You can set the prefix and starting number under WooCommerce PDF Invoices Invoice Numbering.
-
Which emails can carry the invoice attachment?
-
Any WooCommerce email can be selected in the “Email Attachments” section. By default the Completed Order email is pre-selected. Tick as many as your workflow requires.
-
What is a packing slip and how does it differ from an invoice?
-
A packing slip is a warehouse document: it shows the shipping address, item names, and quantities but no prices. It is intended for the person packing the box, not the customer. Download it from the order row action “Packing Slip PDF” — it is not emailed automatically (you can email an invoice instead).
-
Is this compatible with WooCommerce HPOS (Custom Order Tables)?
-
Yes. The plugin fetches orders exclusively via
wc_get_order()andwc_get_orders(), which are HPOS-safe WooCommerce APIs. HPOS compatibility is declared to WooCommerce at load time so no warnings appear in the WooCommerce Features screen. -
Can I bulk-download invoices for multiple orders?
-
Yes. On the Orders list, tick the orders you want, choose “Download Invoice PDFs” from the bulk-actions dropdown, and click Apply. The plugin generates all selected invoices and streams them as a single ZIP file.
-
Where do I configure it?
-
Under WooCommerce PDF Invoices.
Reviews
There are no reviews for this plugin.
Contributors & Developers
“NINJA Docsmith for WooCommerce” is open source software. The following people have contributed to this plugin.
ContributorsTranslate “NINJA Docsmith for WooCommerce” into your language.
Interested in development?
Browse the code, check out the SVN repository, or subscribe to the development log by RSS.
Changelog
1.4.0
- Fix: Prefixed the bundled FPDF class (now
Ninjapdf_FPDF) and its version constant so the library can never clash with another plugin’s copy of FPDF, regardless of load order. - Internal: Renamed plugin slug, folder, main file and text domain to
ninja-docsmith-for-woocommercefor the WordPress.org submission.
1.3.0
- Fix: Guard the bundled FPDF include with
class_exists( 'FPDF' )to prevent “cannot redeclare class” fatals when another plugin loads its own copy of FPDF first. - Internal: Renamed under a new, distinctive slug for the WordPress.org directory.
1.2.0
- New: Document Design settings — accent color, header/table color (color pickers) and custom footer text, applied to invoices and packing slips. Check the result with the Preview buttons.
1.1.0
- New: “Preview” buttons on the settings screen generate a sample invoice and packing slip from your current settings (logo, company details, numbering) using placeholder data — so you can check the layout without a real order. No invoice number is consumed.
1.0.0
- Initial release: invoice + packing slip generation via bundled FPDF 1.86, sequential numbering, email attachment filter, order row actions, bulk download.
