{"id":375409,"date":"2026-09-30T11:48:18","date_gmt":"2026-09-30T11:48:18","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/legal-email-attachments-for-woocommerce\/"},"modified":"2026-09-30T11:47:51","modified_gmt":"2026-09-30T11:47:51","slug":"opuswerk-legal-pdfs-for-woocommerce","status":"publish","type":"plugin","link":"https:\/\/wordpress.org\/plugins\/opuswerk-legal-pdfs-for-woocommerce\/","author":23573567,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.0.0","stable_tag":"1.0.0","tested":"7.1.2","requires":"6.5","requires_php":"7.4","requires_plugins":null,"header_name":"Opuswerk Legal PDFs for WooCommerce","header_author":"Opuswerk","header_description":"Attach your terms and conditions, cancellation policy and privacy policy as PDF files to any WooCommerce email.","assets_banners_color":"767676","last_updated":"2026-09-30 11:47:51","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/opuswerk.at\/plugins\/legal-pdfs\/","header_author_uri":"https:\/\/opuswerk.at","rating":0,"author_block_rating":0,"active_installs":0,"downloads":49,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.0":{"tag":"1.0.0","author":"ykamanin","date":"2026-09-30 11:47:51","revision":3721133}},"upgrade_notice":{"1.0.0":"<p>First release.<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3721130,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3721130,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256},"icon.svg":{"filename":"icon.svg","revision":3721130,"resolution":false,"location":"assets","locale":false}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3721130,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3721130,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0.0"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3721130,"resolution":"1","location":"assets","locale":"","width":1280,"height":720},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3721130,"resolution":"2","location":"assets","locale":"","width":1280,"height":720},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3721130,"resolution":"3","location":"assets","locale":"","width":1280,"height":720},"screenshot-4.png":{"filename":"screenshot-4.png","revision":3721130,"resolution":"4","location":"assets","locale":"","width":1280,"height":720}},"screenshots":{"1":"The settings tab: documents on the left, the emails each one is attached to on the right.","2":"Choosing PDF files from the media library.","3":"The deliverability warning shown when one email's attachments exceed 2 MB.","4":"A missing file is logged under WooCommerce, Status, Logs, and the email is still sent."}},"plugin_section":[],"plugin_tags":[1346,267,1764,9686,286],"plugin_category":[41,45,50],"plugin_contributors":[283687],"plugin_business_model":[],"class_list":["post-375409","plugin","type-plugin","status-publish","hentry","plugin_tags-attachments","plugin_tags-email","plugin_tags-pdf","plugin_tags-terms-and-conditions","plugin_tags-woocommerce","plugin_category-communication","plugin_category-ecommerce","plugin_category-media","plugin_contributors-ykamanin","plugin_committers-ykamanin"],"banners":{"banner":"https:\/\/ps.w.org\/opuswerk-legal-pdfs-for-woocommerce\/assets\/banner-772x250.png?rev=3721130","banner_2x":"https:\/\/ps.w.org\/opuswerk-legal-pdfs-for-woocommerce\/assets\/banner-1544x500.png?rev=3721130","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":"https:\/\/ps.w.org\/opuswerk-legal-pdfs-for-woocommerce\/assets\/icon.svg?rev=3721130","icon":"https:\/\/ps.w.org\/opuswerk-legal-pdfs-for-woocommerce\/assets\/icon.svg?rev=3721130","icon_2x":false,"generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/opuswerk-legal-pdfs-for-woocommerce\/assets\/screenshot-1.png?rev=3721130","caption":"The settings tab: documents on the left, the emails each one is attached to on the right."},{"src":"https:\/\/ps.w.org\/opuswerk-legal-pdfs-for-woocommerce\/assets\/screenshot-2.png?rev=3721130","caption":"Choosing PDF files from the media library."},{"src":"https:\/\/ps.w.org\/opuswerk-legal-pdfs-for-woocommerce\/assets\/screenshot-3.png?rev=3721130","caption":"The deliverability warning shown when one email's attachments exceed 2 MB."},{"src":"https:\/\/ps.w.org\/opuswerk-legal-pdfs-for-woocommerce\/assets\/screenshot-4.png?rev=3721130","caption":"A missing file is logged under WooCommerce, Status, Logs, and the email is still sent."}],"raw_content":"<!--section=description-->\n<p>Shops are routinely expected to send customers a set of documents along with the order\nconfirmation. Doing that in WooCommerce normally means either editing <code>functions.php<\/code> by\nhand or buying a large German-market suite for the sake of one feature.<\/p>\n\n<p>This plugin does that one thing. You pick PDF files from your media library, tick the\nWooCommerce emails each file belongs to, and they are attached from then on.<\/p>\n\n<p><strong>What it does<\/strong><\/p>\n\n<ul>\n<li>Attach any number of PDF documents. There is no document limit and no email-type limit.<\/li>\n<li>Choose from every email your shop actually exposes. The list is read from WooCommerce\nitself, so emails added by other extensions appear automatically and nothing is hardcoded.<\/li>\n<li>Warn you when the attachments for one email add up to more than 2 MB, because large\nattachments can be rejected by mail providers. It warns; it never blocks.<\/li>\n<li>Skip a file that has gone missing, write a line to the WooCommerce log, and let the email\ngo out regardless. A broken document never delays or breaks an order confirmation.<\/li>\n<\/ul>\n\n<p><strong>F\u00fcr deutschsprachige Shops<\/strong><\/p>\n\n<p>Wenn Sie Ihre AGB, die Widerrufsbelehrung und die Datenschutzerkl\u00e4rung als PDF Anhang zur\nBestellbest\u00e4tigung mitschicken m\u00f6chten, richten Sie das hier in wenigen Minuten ein. Sie\nladen die Dokumente in die Mediathek, w\u00e4hlen aus, an welche WooCommerce E-Mails sie\nangeh\u00e4ngt werden sollen, und speichern. Das Plugin hilft Ihnen dabei, Ihre Dokumente zu\nversenden. Es pr\u00fcft und beurteilt nicht, ob Ihr Shop rechtlichen Anforderungen gen\u00fcgt.<\/p>\n\n<p>Eine vollst\u00e4ndige deutsche \u00dcbersetzung in der Sie-Form liegt vor. WordPress l\u00e4dt sie\nautomatisch \u00fcber translate.wordpress.org, und die Formulierungen sind f\u00fcr Deutschland und\n\u00d6sterreich gleicherma\u00dfen passend.<\/p>\n\n<p><strong>What it deliberately does not do<\/strong><\/p>\n\n<p>It makes no claim about your legal position. It helps you send documents you already have.\nWhether those documents are the right ones, and whether sending them satisfies any\nobligation you are under, is a question for you and your legal advisor.<\/p>\n\n<p>It also does not generate PDFs, does not require an account, does not phone home, and does\nnot hold a feature back for a paid tier.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Install and activate the plugin. WooCommerce 8.0 or newer must be active.<\/li>\n<li>Upload your PDF documents to the media library, or use files already there.<\/li>\n<li>Go to WooCommerce, then Settings, then \"Legal attachments\".<\/li>\n<li>Add each document and tick the emails it should be attached to.<\/li>\n<li>Save. Send yourself a test order to confirm the documents arrive.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"welche%20dokumente%20kann%20ich%20an%20die%20bestellbest%C3%A4tigung%20anh%C3%A4ngen%3F\"><h3>Welche Dokumente kann ich an die Bestellbest\u00e4tigung anh\u00e4ngen?<\/h3><\/dt>\n<dd><p>Alle, die als PDF in Ihrer Mediathek liegen. \u00dcblich sind AGB und Kundeninformationen, die\nWiderrufsbelehrung mit Muster-Widerrufsformular und die Datenschutzerkl\u00e4rung. Sie k\u00f6nnen\njedes Dokument einzeln einer oder mehreren E-Mails zuordnen, etwa nur der\nBestellbest\u00e4tigung oder zus\u00e4tzlich der Rechnung und der Kontoer\u00f6ffnung.<\/p><\/dd>\n<dt id=\"an%20welche%20e-mails%20kann%20ich%20dokumente%20anh%C3%A4ngen%3F\"><h3>An welche E-Mails kann ich Dokumente anh\u00e4ngen?<\/h3><\/dt>\n<dd><p>An jede, die Ihr Shop bereitstellt. Das Plugin liest die Liste direkt aus WooCommerce\naus, statt sie fest einzubauen. E-Mails, die andere Erweiterungen hinzuf\u00fcgen, stehen\ndeshalb automatisch zur Auswahl.<\/p><\/dd>\n<dt id=\"how%20is%20this%20different%20from%20germanized%20pro%20or%20german%20market%3F\"><h3>How is this different from Germanized Pro or German Market?<\/h3><\/dt>\n<dd><p>Both are full German-market suites and both put this feature behind a paid tier. Germanized\noffers legal PDF attachments in its Pro version only; German Market includes it inside a\nlicence for the whole suite. If you already run one of those and pay for it, you do not\nneed this plugin.<\/p>\n\n<p>This plugin exists for the shop that wants exactly this one capability and does not want to\nbuy, configure and maintain a suite to get it. It is free, it is single-purpose, and there\nis no paid tier that unlocks the feature you came for.<\/p><\/dd>\n<dt id=\"does%20this%20make%20my%20shop%20legally%20compliant%3F\"><h3>Does this make my shop legally compliant?<\/h3><\/dt>\n<dd><p>No, and no plugin can. It attaches the files you choose to the emails you choose. Whether\nyour documents are correct, current and sufficient is between you and your legal advisor.<\/p><\/dd>\n<dt id=\"how%20do%20i%20attach%20a%20pdf%20to%20the%20order%20email%3F\"><h3>How do I attach a PDF to the order email?<\/h3><\/dt>\n<dd><p>Go to WooCommerce, then Settings, then the \"Legal attachments\" tab. Choose \"Add PDF\" to\npick a file from your media library, tick the emails it should go out with, and save.<\/p><\/dd>\n<dt id=\"what%20happens%20if%20a%20file%20is%20deleted%20or%20unreadable%3F\"><h3>What happens if a file is deleted or unreadable?<\/h3><\/dt>\n<dd><p>The email is still sent, without that attachment, and a warning is written to the\nWooCommerce log under WooCommerce, Status, Logs, with the source\n    opuswerk-legal-pdfs. Order emails are never delayed or blocked by a document problem.<\/p><\/dd>\n<dt id=\"why%20does%20it%20warn%20me%20about%202%20mb%3F\"><h3>Why does it warn me about 2 MB?<\/h3><\/dt>\n<dd><p>Mail providers apply their own attachment size limits, and large attachments make delivery\nless reliable. When the documents attached to one email exceed 2 MB in total, the settings\nscreen says so. It is advice, not a restriction, and you can save and send anyway.<\/p><\/dd>\n<dt id=\"does%20it%20work%20with%20hpos%20and%20with%20the%20block%20checkout%3F\"><h3>Does it work with HPOS and with the block checkout?<\/h3><\/dt>\n<dd><p>Yes. The plugin declares compatibility with High-Performance Order Storage and works with\nboth the classic and the block checkout, because it hooks into WooCommerce's email layer\nrather than the checkout.<\/p><\/dd>\n<dt id=\"does%20it%20send%20any%20data%20anywhere%3F\"><h3>Does it send any data anywhere?<\/h3><\/dt>\n<dd><p>No. The plugin makes no external requests of its own.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>First release.<\/li>\n<li>Attach any number of PDF documents to any WooCommerce email.<\/li>\n<li>Email list read from WooCommerce at runtime; no hardcoded email IDs.<\/li>\n<li>Deliverability warning above 2 MB per email.<\/li>\n<li>Missing or unreadable files are skipped and logged, never breaking a send.<\/li>\n<li>German translation included, for Germany and Austria.<\/li>\n<li>Compatible with High-Performance Order Storage.<\/li>\n<\/ul>","raw_excerpt":"Attach your terms, cancellation policy and privacy policy as PDF files to any WooCommerce email. Free, with no suite to buy.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/375409","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=375409"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/ykamanin"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=375409"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=375409"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=375409"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=375409"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=375409"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=375409"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}