

Settings: branding, company details, prefixes, styles, colours, and email attachment mapping.
Kitgenix PDF Invoicing for WooCommerce helps stores generate professional PDF documents from WooCommerce orders without a heavy stack.
It supports core document workflows out of the box:
– Invoices
– Receipts
– Packing Slips
– Credit Notes
– Pro Forma Invoices
– Delivery Notes
– Statements
Key capabilities include:
– Secure admin and customer downloads with nonce and capability checks
– Batch ZIP exports from the WooCommerce orders list
– Optional archived PDF reuse for stable re-downloads
– Numbering controls with prefixes, padding, and reset periods
– Rule-based document availability by status/payment state
– Email attachment support for selected document types
– Bundled templates with style and branding controls
The plugin is built for practical operations: support teams can quickly re-deliver documents, fulfilment teams can work with packing slips and delivery notes, and finance teams can keep consistent invoice/credit-note references.
For setup details and advanced options, see the bundled documentation and support links in this readme.
Templates can be overridden without editing plugin files.
Template resolution order:
1) Full override via filter
2) Theme override path:
kitgenix-pdf-invoicing-for-woocommerce/{style}/
3) Plugin templates fallback:
templates/{style}/
Where {style} is the active template pack selected in settings: standard, simple, modern, or business.
For compatibility, the resolver also checks .../standard/ and legacy root locations if a file is not found.
Choose between four bundled design packs:
– Standard
– Simple
– Modern
– Business
Each pack has its own document templates and stylesheet, while still using the same company details, logo, footer, notes, and colour settings from the plugin options.
Non-technical stores can now reshape the bundled document layouts without editing PHP templates.
The Brand & Styling tab includes no-code controls for:
– header alignment across the logo, company block, and document title
– logo scale for compact or brand-led layouts
– document density for tighter or more spacious tables and notes
– boxed or tinted information panels around address/order-data sections
– clean, striped, or grid-style item tables
– boxed totals panels or highlighted final totals
– footer alignment for legal text, bank details, or closing notes
These controls layer on top of the bundled Standard, Simple, Modern, and Business packs, so stores can fine-tune the presentation without creating a theme override.
Optional customer-facing downloads for the order owner:
– Order details page buttons:
– Download Invoice (PDF)
– Download Credit Note (PDF) (only when refunds exist)
– My Account Orders table actions:
– View Invoice
– View Credit Note (when refunds exist)
Customer downloads are nonce-protected and/or can be validated by order key for guest access (see “Download permissions”).
PDF rendering supports secure query-arg requests:
– kitgenix_pdf=1
– kitgenix_doc={type}
– order_id={id}
– _wpnonce=…
Guest access (without a nonce) is permitted only when a valid WooCommerce order key is provided:
– key= or order_key= must match the order’s key
Default per-document rules:
– Invoice + Receipt + Pro Forma Invoice + Statement:
– order owner OR shop staff OR valid order key
– Packing Slip + Delivery Note:
– shop staff only (by default)
– Credit Note:
– staff OR order owner (only if refunds exist) OR valid order key (only if refunds exist)
Final permission gate is filterable, and document availability can also be narrowed through the built-in rules table or the kitgenix_pdf_document_enabled filter.
Attach PDFs to WooCommerce emails using settings and filters.
The plugin hooks WooCommerce’s email attachment pipeline, generates PDFs as temporary files for each email, attaches them, and cleans up automatically.
Sensible defaults (customisable):
– Invoice: Processing + Completed
– Receipt: Completed
– Credit Note: Refunded
– Packing Slip: New Order (admin email)
Email workflow tools in settings:
– Preview the currently mapped document set against a specific WooCommerce order
– Open live PDF previews for each eligible mapped document from the email settings tab
– Send an attachment-only test email to a safe inbox before relying on the live WooCommerce workflow
– Reuse the same mapping, eligibility checks, and PDF-generation pipeline as production email attachments
To customise layout, copy templates into your theme override folder and edit them.
Copy templates from:
templates/{style}/
Paste into your theme at:
kitgenix-pdf-invoicing-for-woocommerce/{style}/
Edit the theme copies.
The plugin will automatically use your theme templates instead of bundled templates.
Text domain:
kitgenix-pdf-invoicing-for-woocommerce
Architecture:
– Modular plugin with Admin/Settings/Invoicing/Email/Frontend modules
– Document types registry (extendable) with built-in invoice, receipt, packing slip, credit note, pro forma invoice, delivery note, and statement types
– Template system with theme overrides + HTML/CSS filters
– Secure download endpoints with nonce/capability checks and optional order key validation
– Token-based numbering engine for invoices, receipts, packing slips, and credit notes using stored order meta and a shared sequence-counter option
– Rule-based document availability controls by type, order status, and payment state
– Shared template display helper for configurable order rows, note blocks, and line-item metadata across bundled document templates
Numbering tokens available in settings:
– {prefix}
– {order_number}
– {order_id}
– {sequence}
– {refund_sequence}
– {year}
– {yy}
– {month}
– {day}
– {country}
– {billing_country}
– {shipping_country}
– {fiscal_year}
– {fiscal_year_short}
– {fiscal_year_start}
– {fiscal_year_end}
Key filters:
– kitgenix_pdf_invoicing_modules
– kitgenix_pdf_document_types
– kitgenix_pdf_document_enabled
– kitgenix_pdf_document_user_can_download
– kitgenix_pdf_document_filename
– kitgenix_pdf_batch_archive_filename
– kitgenix_pdf_persistent_archive_enabled
– kitgenix_pdf_archive_relative_root
– kitgenix_pdf_invoice_filename (back-compat)
– kitgenix_pdf_document_attachment (inline vs download)
– kitgenix_pdf_document_template_path
– kitgenix_pdf_document_html
– kitgenix_pdf_invoice_html (back-compat)
– kitgenix_pdf_document_custom_css
– kitgenix_pdf_document_lang
– kitgenix_pdf_document_title
– kitgenix_pdf_document_body_class
– kitgenix_pdf_show_shipping_address
– kitgenix_pdf_email_document_map
– kitgenix_pdf_email_attach_document
– kitgenix_dompdf_enable_php (advanced; default false)
Key actions:
– kitgenix_before_stream_pdf_document
– kitgenix_after_stream_pdf_document
– kitgenix_before_stream_pdf_invoice (back-compat)
– kitgenix_after_stream_pdf_invoice (back-compat)
– kitgenix_pdf_document_archived
– Template hooks:
– kitgenix_pdf_before_document / kitgenix_pdf_after_document
– kitgenix_pdf_before_document_wrapper / kitgenix_pdf_after_document_wrapper
– kitgenix_pdf_after_notes
– kitgenix_pdf_after_order_data_rows
kitgenix_pdf_invoicing_settings.kitgenix_pdf_invoicing_for_woocommerce_metrics.kitgenix_pdf_invoicing_for_woocommerce_number_sequences._kitgenix_pdf_invoicing_for_woocommerce_invoice_number_kitgenix_pdf_invoicing_for_woocommerce_invoice_date_kitgenix_pdf_invoicing_for_woocommerce_packing_slip_number_kitgenix_pdf_invoicing_for_woocommerce_packing_slip_date_kitgenix_pdf_invoicing_for_woocommerce_receipt_number_kitgenix_pdf_invoicing_for_woocommerce_receipt_date_kitgenix_pdf_invoicing_for_woocommerce_credit_note_count_kitgenix_pdf_invoicing_for_woocommerce_credit_note_history_kitgenix_pdf_invoicing_for_woocommerce_archived_documentsSecurity identifiers (exact):
– Admin meta box downloads use admin-post.php actions kitgenix_admin_stream_invoice, kitgenix_admin_stream_receipt, kitgenix_admin_stream_packing_slip, kitgenix_admin_stream_credit_note, kitgenix_admin_stream_pro_forma_invoice, kitgenix_admin_stream_delivery_note, and kitgenix_admin_stream_statement, protected by query arg nonce created/verified with nonce action kitgenix_admin_pdf.
– WordPress action hooks for those admin-post actions: admin_post_kitgenix_admin_stream_invoice, admin_post_kitgenix_admin_stream_receipt, admin_post_kitgenix_admin_stream_packing_slip, admin_post_kitgenix_admin_stream_credit_note, admin_post_kitgenix_admin_stream_pro_forma_invoice, admin_post_kitgenix_admin_stream_delivery_note, and admin_post_kitgenix_admin_stream_statement.
– Frontend document downloads use the optional _wpnonce value created/verified with nonce action kitgenix_download_{doc_type}_{order_id}.
– WooCommerce order action key: kitgenix_download_pdf_invoice (hook: woocommerce_order_action_kitgenix_download_pdf_invoice).
– WooCommerce bulk action keys: kitgenix_pdf_batch_export_invoice, kitgenix_pdf_batch_export_packing_slip, kitgenix_pdf_batch_export_receipt, kitgenix_pdf_batch_export_credit_note, kitgenix_pdf_batch_export_pro_forma_invoice, kitgenix_pdf_batch_export_delivery_note, and kitgenix_pdf_batch_export_statement.
Admin page hook suffix:
– kitgenix_page_kitgenix-pdf-invoicing-settings
PDF generation is performed locally on your server using Dompdf. This plugin does not send customer data to a third-party PDF generation API.
This plugin includes a shared “Kitgenix hub” component in wp-admin which may fetch publicly available plugin metadata from WordPress.org using WordPress core’s plugins_api() function.
Caching:
– Transient: kitgenix_hub_wporg_active_installs_v1
– Transient: kitgenix_hub_wporg_ratings_v1
– Transient: kitgenix_hub_wporg_media_v1
Uninstall removes the plugin settings option (kitgenix_pdf_invoicing_settings), metrics option (kitgenix_pdf_invoicing_for_woocommerce_metrics), and numbering sequence option (kitgenix_pdf_invoicing_for_woocommerce_number_sequences) when uninstalled via WordPress.
It also deletes the activation redirect transient: kitgenix_pdf_invoicing_for_woocommerce_do_activation_redirect.
Order meta, archived document metadata, and archived PDF files are intentionally preserved to avoid accidental loss of invoice, receipt, packing slip, or credit note history.
If this plugin helps you generate clean WooCommerce PDFs and reduces admin work, you can support ongoing development here:
https://buymeacoffee.com/kitgenix
Built with ❤︎ by @kitgenix – https://kitgenix.com
Bundled library: Dompdf (see vendor/ for licenses)