{"id":280573,"date":"2026-03-01T21:39:49","date_gmt":"2026-03-01T21:39:49","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/checkmate-pdf-fully-customizable-pdf-invoices-packing-slips-for-woocommerce\/"},"modified":"2026-09-02T09:03:03","modified_gmt":"2026-09-02T09:03:03","slug":"checkmate-pdf-invoices","status":"publish","type":"plugin","link":"https:\/\/te.wordpress.org\/plugins\/checkmate-pdf-invoices\/","author":22029276,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"2.0.4","stable_tag":"2.0.4","tested":"7.1.1","requires":"6.0","requires_php":"7.4","requires_plugins":null,"header_name":"Checkmate PDF Invoices, Packing Slips & Delivery Notes for WooCommerce","header_author":"KingAddons.com","header_description":"Create custom PDF Invoices and Packing Slips for WooCommerce. Includes a Visual Template Editor, HPOS support, Bulk Actions, and Email Attachments.","assets_banners_color":"1e2621","last_updated":"2026-09-02 09:03:03","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"","header_author_uri":"https:\/\/kingaddons.com\/","rating":5,"author_block_rating":0,"active_installs":10,"downloads":1505,"num_ratings":1,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"2.0.3":{"tag":"2.0.3","author":"kingaddons","date":"2026-03-01 21:39:16","revision":3472262},"2.0.4":{"tag":"2.0.4","author":"kingaddons","date":"2026-09-02 09:03:03","revision":3677560}},"upgrade_notice":[],"ratings":{"1":0,"2":0,"3":0,"4":0,"5":1},"assets_icons":{"icon.svg":{"filename":"icon.svg","revision":3472127,"resolution":false,"location":"assets","locale":false}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3472130,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3472131,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["2.0.3","2.0.4"],"block_files":[],"assets_screenshots":[],"screenshots":{"1":"<strong>Visual Editor<\/strong>: Drag and drop blocks to build your perfect invoice.","2":"<strong>Order Screen<\/strong>: Easy access to download Invoices and Packing Slips."}},"plugin_section":[],"plugin_tags":[21477,12480,51080,57399,286],"plugin_category":[45],"plugin_contributors":[238603,228287,238604],"plugin_business_model":[],"class_list":["post-280573","plugin","type-plugin","status-publish","hentry","plugin_tags-delivery-note","plugin_tags-invoice","plugin_tags-packing-slip","plugin_tags-pdf-invoice","plugin_tags-woocommerce","plugin_category-ecommerce","plugin_contributors-alxrlov","plugin_contributors-kingaddons","plugin_contributors-olgadev","plugin_committers-kingaddons"],"banners":{"banner":"https:\/\/ps.w.org\/checkmate-pdf-invoices\/assets\/banner-772x250.png?rev=3472131","banner_2x":"https:\/\/ps.w.org\/checkmate-pdf-invoices\/assets\/banner-1544x500.png?rev=3472130","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":"https:\/\/ps.w.org\/checkmate-pdf-invoices\/assets\/icon.svg?rev=3472127","icon":"https:\/\/ps.w.org\/checkmate-pdf-invoices\/assets\/icon.svg?rev=3472127","icon_2x":false,"generated":false},"screenshots":[],"raw_content":"<!--section=description-->\n<p><strong>Checkmate PDF Invoices<\/strong> turns every WooCommerce order into a professional PDF document \u2014 automatically.<\/p>\n\n<p>Pick a preset, drag the blocks where you want them, and Checkmate attaches the finished PDF to your order emails. Your customers get their invoice the moment they pay, your warehouse gets a packing slip, and you never touch a template file, a code snippet or a child theme again.<\/p>\n\n<h4>Design your documents visually<\/h4>\n\n<p>The built-in editor is a real drag-and-drop canvas, not a settings page with a \"custom CSS\" box. Build your layout from rows and columns, then drop in the blocks you need:<\/p>\n\n<ul>\n<li><strong>Document blocks<\/strong> \u2014 document title, document number, document date, shop info<\/li>\n<li><strong>Order blocks<\/strong> \u2014 billing address, shipping address, order number, order date, payment method, shipping method, customer note<\/li>\n<li><strong>Tables<\/strong> \u2014 line items table and totals table, with control over which columns appear<\/li>\n<li><strong>Content<\/strong> \u2014 logo, headings, text, images, notes, footer<\/li>\n<li><strong>Layout<\/strong> \u2014 rows, columns, spacers, dividers<\/li>\n<\/ul>\n\n<p>Every block has its own controls for font size, weight, colour, alignment and spacing, and the live preview shows the real PDF as you build. Set your paper size, orientation and base font per template; DejaVu Sans is the default so accented and non-Latin characters render correctly out of the box.<\/p>\n\n<p>Start from one of the bundled presets \u2014 Classic, Minimal, Compact and Bold invoices, four packing slip styles, plus delivery note and credit note designs \u2014 or open a blank canvas.<\/p>\n\n<h4>Four document types<\/h4>\n\n<ul>\n<li><strong>Invoices<\/strong> \u2014 sequential, legally usable numbering, attached to the emails you choose<\/li>\n<li><strong>Packing Slips<\/strong> \u2014 price-free versions for your fulfilment team, with SKU-focused presets<\/li>\n<li><strong>Delivery Notes<\/strong> \u2014 for the parcel or the courier<\/li>\n<li><strong>Credit Notes<\/strong> \u2014 for refunds, with their own numbering format<\/li>\n<\/ul>\n\n<h4>Automatic email attachments<\/h4>\n\n<p>Assign a template to any WooCommerce email event and Checkmate does the rest: New Order, Processing, Completed, On-Hold, Cancelled, Failed, Refunded, Partially Refunded, Customer Note, and the manual \"Customer Invoice\" email. Different templates for different events are fine \u2014 a full invoice on Completed, a packing slip on New Order for the admin, whatever your workflow needs.<\/p>\n\n<p>If PDF generation ever fails, the email still goes out. Checkmate never breaks checkout.<\/p>\n\n<h4>Invoice numbering that fits your accounting<\/h4>\n\n<ul>\n<li>Custom number formats with <code>{year}<\/code>, <code>{month}<\/code>, <code>{day}<\/code> and <code>{number}<\/code> placeholders<\/li>\n<li>Zero padding to any width (<code>00042<\/code>)<\/li>\n<li>Set the next number manually when migrating from another system<\/li>\n<li>Optional yearly counter reset<\/li>\n<li>Separate formats for packing slips and credit notes<\/li>\n<li>Invoice number column in the orders list<\/li>\n<\/ul>\n\n<h4>Built for how shops actually work<\/h4>\n\n<ul>\n<li><strong>Bulk downloads<\/strong> \u2014 select orders in the list table and get every invoice in one ZIP<\/li>\n<li><strong>Order screen buttons<\/strong> \u2014 download or print any document straight from the order edit page<\/li>\n<li><strong>Customer downloads<\/strong> \u2014 logged-in customers get a link in My Account; guests get a secure key-based link in their order email, no account required<\/li>\n<li><strong>HPOS compatible<\/strong> \u2014 full support for High-Performance Order Storage, including the new orders screen and its bulk actions<\/li>\n<li><strong>Performance<\/strong> \u2014 optional template caching and on-disk PDF storage, with automatic cleanup of files older than N days<\/li>\n<li><strong>Debug mode<\/strong> \u2014 detailed logging when you need to trace a rendering problem<\/li>\n<\/ul>\n\n<h4>Developer friendly<\/h4>\n\n<ul>\n<li><strong>No dependency conflicts.<\/strong> Dompdf ships prefixed inside its own namespace, so Checkmate can never collide with another plugin's copy of a PDF library.<\/li>\n<li><strong>Modern PHP.<\/strong> Strict types, namespaced classes, a minimal autoloader, no Composer autoload registered at runtime.<\/li>\n<li><strong>Filterable.<\/strong> Templates, numbering and limits go through filters \u2014 for example <code>checkmate_pdf_invoices_template_limit<\/code>.<\/li>\n<\/ul>\n\n<!--section=installation-->\n<ol>\n<li>Upload the plugin folder to <code>\/wp-content\/plugins\/<\/code>, or install it from Plugins &gt; Add New.<\/li>\n<li>Activate the plugin through the WordPress Plugins screen. WooCommerce must be active.<\/li>\n<li>Go to <strong>Checkmate PDF &gt; Templates<\/strong>, pick a preset and adjust it in the editor.<\/li>\n<li>Assign the template to the email events that should carry it.<\/li>\n<li>Check <strong>Checkmate PDF &gt; Settings<\/strong> for numbering, customer access and storage options.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"does%20it%20work%20with%20hpos%20%28high-performance%20order%20storage%29%3F\"><h3>Does it work with HPOS (High-Performance Order Storage)?<\/h3><\/dt>\n<dd><p>Yes. Checkmate declares HPOS compatibility and supports both the legacy orders screen and the new WooCommerce orders table, including the invoice number column and bulk actions.<\/p><\/dd>\n<dt id=\"can%20customers%20download%20their%20own%20invoice%3F\"><h3>Can customers download their own invoice?<\/h3><\/dt>\n<dd><p>Yes, two ways, and both are optional. Logged-in customers get a download action in My Account &gt; Orders. Guests get a link in their order email that works through a secure unique key, so no account is needed.<\/p><\/dd>\n<dt id=\"can%20i%20attach%20a%20different%20document%20to%20each%20email%3F\"><h3>Can I attach a different document to each email?<\/h3><\/dt>\n<dd><p>Yes. Templates are assigned per email event, so you can send a full invoice on Completed and a packing slip on New Order, for example.<\/p><\/dd>\n<dt id=\"how%20many%20templates%20can%20i%20create%3F\"><h3>How many templates can I create?<\/h3><\/dt>\n<dd><p>This build allows 3 saved templates. Developers can change that with the <code>checkmate_pdf_invoices_template_limit<\/code> filter or the <code>CHECKMATE_PDF_INVOICES_TEMPLATE_LIMIT<\/code> constant.<\/p><\/dd>\n<dt id=\"will%20my%20invoice%20numbers%20stay%20sequential%20if%20i%20migrate%20from%20another%20plugin%3F\"><h3>Will my invoice numbers stay sequential if I migrate from another plugin?<\/h3><\/dt>\n<dd><p>Yes. Set the next invoice number in Settings &gt; Document Numbering and Checkmate continues from there.<\/p><\/dd>\n<dt id=\"do%20non-latin%20characters%20work%3F\"><h3>Do non-Latin characters work?<\/h3><\/dt>\n<dd><p>Yes. Templates use DejaVu Sans by default, which covers Cyrillic, Greek and most European accented characters. Helvetica, Times and Courier are also available.<\/p><\/dd>\n<dt id=\"does%20it%20slow%20down%20checkout%3F\"><h3>Does it slow down checkout?<\/h3><\/dt>\n<dd><p>No. PDF generation is wrapped so that a rendering error can never block an order email or the checkout process, and generated PDFs can be cached on disk.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>2.0.4<\/h4>\n\n<ul>\n<li>Maintenance release. The plugin has been tested with WordPress 7.1, and everything works as expected.<\/li>\n<\/ul>\n\n<h4>2.0.3<\/h4>\n\n<ul>\n<li>Initial release with Visual Editor and HPOS support.<\/li>\n<\/ul>","raw_excerpt":"Drag-and-drop PDF invoices, packing slips, delivery notes and credit notes for WooCommerce. Auto-attached to order emails. HPOS compatible.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/te.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/280573","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/te.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/te.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/te.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=280573"}],"author":[{"embeddable":true,"href":"https:\/\/te.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/kingaddons"}],"wp:attachment":[{"href":"https:\/\/te.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=280573"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/te.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=280573"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/te.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=280573"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/te.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=280573"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/te.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=280573"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/te.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=280573"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}