{"id":321256,"date":"2026-06-17T16:50:50","date_gmt":"2026-06-17T16:50:50","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/virtevo-invoices\/"},"modified":"2026-06-17T16:50:19","modified_gmt":"2026-06-17T16:50:19","slug":"virtevo-invoices","status":"publish","type":"plugin","link":"https:\/\/ltz.wordpress.org\/plugins\/virtevo-invoices\/","author":23501794,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.0.5","stable_tag":"1.0.5","tested":"7.0","requires":"5.8","requires_php":"7.4","requires_plugins":null,"header_name":"Virtevo Invoices","header_author":"Virtevo","header_description":"Automatic PDF invoice generation for online stores. Clean, professional, fast.","assets_banners_color":"494950","last_updated":"2026-06-17 16:50:19","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/virtevo.bg\/invoices","header_author_uri":"https:\/\/virtevo.bg","rating":0,"author_block_rating":0,"active_installs":0,"downloads":36,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.5":{"tag":"1.0.5","author":"ehristov","date":"2026-06-17 16:50:19"}},"upgrade_notice":{"1.0.5":"<p>Initial release.<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3576177,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3576177,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3576177,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3576177,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0.5"],"block_files":[],"assets_screenshots":[],"screenshots":{"1":"Admin settings \u2014 General tab","2":"Admin settings \u2014 Numbering tab","3":"Generated invoice PDF \u2014 Basic template"}},"plugin_section":[],"plugin_tags":[15149,12480,16281,1764,26349],"plugin_category":[45,50],"plugin_contributors":[264074],"plugin_business_model":[],"class_list":["post-321256","plugin","type-plugin","status-publish","hentry","plugin_tags-billing","plugin_tags-invoice","plugin_tags-orders","plugin_tags-pdf","plugin_tags-receipt","plugin_category-ecommerce","plugin_category-media","plugin_contributors-ehristov","plugin_committers-ehristov"],"banners":{"banner":"https:\/\/ps.w.org\/virtevo-invoices\/assets\/banner-772x250.png?rev=3576177","banner_2x":"https:\/\/ps.w.org\/virtevo-invoices\/assets\/banner-1544x500.png?rev=3576177","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/virtevo-invoices\/assets\/icon-128x128.png?rev=3576177","icon_2x":"https:\/\/ps.w.org\/virtevo-invoices\/assets\/icon-256x256.png?rev=3576177","generated":false},"screenshots":[],"raw_content":"<!--section=description-->\n<p><strong>Virtevo Invoices<\/strong> generates professional PDF invoices for your orders automatically. No configuration overload \u2014 just install, set your company details, and invoices start generating.<\/p>\n\n<h4>Free Features<\/h4>\n\n<ul>\n<li><strong>Automatic PDF generation<\/strong> \u2014 invoices created on order status change (processing \/ completed)<\/li>\n<li><strong>Sequential invoice numbering<\/strong> \u2014 fully configurable prefix, format and padding (e.g. INV-2025-0042)<\/li>\n<li><strong>Professional basic template<\/strong> \u2014 clean, A4, printer-ready<\/li>\n<li><strong>Download from admin<\/strong> \u2014 one click from the order list or order detail page<\/li>\n<li><strong>Customer download<\/strong> \u2014 optional link on My Account &gt; Order Details<\/li>\n<li><strong>Custom company details<\/strong> \u2014 name, address, VAT\/EIK, email, phone, footer note<\/li>\n<li><strong>Custom numbering format<\/strong> \u2014 use tokens: <code>{prefix}<\/code>, <code>{year}<\/code>, <code>{month}<\/code>, <code>{seq}<\/code>, <code>{order}<\/code><\/li>\n<li><strong>HPOS compatible<\/strong> \u2014 works with both legacy and High-Performance Order Storage<\/li>\n<\/ul>\n\n<h4>Pro Features<\/h4>\n\n<ul>\n<li>3 additional premium templates (Modern, Minimal, Corporate)<\/li>\n<li><strong>Auto-send<\/strong> invoice PDF as email attachment on order status change<\/li>\n<li><strong>Bulk export<\/strong> \u2014 download multiple invoices as a ZIP archive from the orders list<\/li>\n<li>Custom logo on invoices<\/li>\n<li>Remove \"Generated by Virtevo Invoices\" branding<\/li>\n<li>Priority support<\/li>\n<\/ul>\n\n<p><a href=\"https:\/\/virtevo.bg\/invoices?ref=wp-org-readme\">Upgrade to Pro \u2192<\/a><\/p>\n\n<h4>Designed for simplicity<\/h4>\n\n<p>Virtevo Invoices focuses on doing one thing well: generating clean, correct PDF invoices with minimal configuration. Install it, enter your company details, and invoices start generating automatically.<\/p>\n\n<h4>Developer friendly<\/h4>\n\n<ul>\n<li>PSR-4 autoloading<\/li>\n<li>Clean hooks: <code>vinv_invoice_created<\/code>, <code>vinv_available_templates<\/code><\/li>\n<li>Template overrides via your theme: <code>your-theme\/virtevo-invoices\/{template-name}.php<\/code><\/li>\n<li><code>Invoice_Manager::get_or_create( $order_id )<\/code> \u2014 get invoice data programmatically<\/li>\n<\/ul>\n\n<h3>External Services<\/h3>\n\n<p>This plugin connects to the following external services:<\/p>\n\n<h4>Freemius<\/h4>\n\n<p>This plugin uses the <a href=\"https:\/\/freemius.com\">Freemius<\/a> SDK for licensing and updates. Upon activation, Freemius displays an opt-in dialog asking for your permission before any data is collected. No data is sent without explicit user consent.<\/p>\n\n<ul>\n<li>Service URL: https:\/\/freemius.com<\/li>\n<li>Privacy Policy: https:\/\/freemius.com\/privacy\/<\/li>\n<li>Terms of Use: https:\/\/freemius.com\/terms\/<\/li>\n<\/ul>\n\n<p>Data collected (only after opt-in): WordPress version, PHP version, plugin version, site URL. No personal data is shared without consent.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Upload the plugin to <code>\/wp-content\/plugins\/virtevo-invoices<\/code> or install via the WordPress plugin directory<\/li>\n<li>Activate the plugin<\/li>\n<li>Go to <strong>Settings \u2192 Virtevo Invoices<\/strong> and enter your company details<\/li>\n<li>That's it \u2014 invoices will be generated automatically for new orders<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"does%20it%20work%20with%20hpos%3F\"><h3>Does it work with HPOS?<\/h3><\/dt>\n<dd><p>Yes. Virtevo Invoices supports both legacy CPT orders and High-Performance Order Storage (custom order tables).<\/p><\/dd>\n<dt id=\"can%20i%20customise%20the%20invoice%20template%3F\"><h3>Can I customise the invoice template?<\/h3><\/dt>\n<dd><p>Yes. Copy <code>templates\/free\/basic.php<\/code> to <code>your-theme\/virtevo-invoices\/basic.php<\/code> and edit freely. The Pro version includes 3 additional premium templates.<\/p><\/dd>\n<dt id=\"can%20customers%20download%20their%20invoice%3F\"><h3>Can customers download their invoice?<\/h3><\/dt>\n<dd><p>Yes. Enable \"Customer Download\" in settings and a download link appears on the My Account &gt; Order Details page.<\/p><\/dd>\n<dt id=\"will%20it%20regenerate%20invoices%20i%20already%20issued%3F\"><h3>Will it regenerate invoices I already issued?<\/h3><\/dt>\n<dd><p>No. Each order gets exactly one invoice number, assigned once and never changed. Regenerating the PDF always uses the same number.<\/p><\/dd>\n<dt id=\"is%20the%20pdf%20library%20included%3F\"><h3>Is the PDF library included?<\/h3><\/dt>\n<dd><p>Yes. The plugin bundles a pre-built copy of dompdf for PDF rendering. No additional libraries needed.<\/p><\/dd>\n<dt id=\"does%20it%20support%20multi-currency%3F\"><h3>Does it support multi-currency?<\/h3><\/dt>\n<dd><p>Yes. Invoices use the currency stored on each order.<\/p><\/dd>\n<dt id=\"can%20i%20change%20the%20invoice%20number%20sequence%3F\"><h3>Can I change the invoice number sequence?<\/h3><\/dt>\n<dd><p>Yes. Go to Settings \u2192 Virtevo Invoices \u2192 Numbering. You can change the prefix, format, padding and start number. The counter resets automatically each year.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.0.5<\/h4>\n\n<ul>\n<li>Updated dompdf to 3.1.5<\/li>\n<\/ul>\n\n<h4>1.0.4<\/h4>\n\n<ul>\n<li>PDF template CSS embedded as static HTML \u2014 no dynamic PHP output inside style tag<\/li>\n<\/ul>\n\n<h4>1.0.3<\/h4>\n\n<ul>\n<li>Fixed sanitization: company_email now uses sanitize_email(), logo_url uses esc_url_raw()<\/li>\n<li>Added external services disclosure for Freemius SDK in readme<\/li>\n<\/ul>\n\n<h4>1.0.2<\/h4>\n\n<ul>\n<li>Unified function\/constant prefix to virtin_ for wp.org compliance<\/li>\n<li>Updated dompdf to 3.0.2<\/li>\n<li>PDF template CSS extracted to separate file<\/li>\n<\/ul>\n\n<h4>1.0.1<\/h4>\n\n<ul>\n<li>Initial release<\/li>\n<\/ul>","raw_excerpt":"Automatic PDF invoice generation for online stores. Clean, professional, lightweight.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/ltz.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/321256","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ltz.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/ltz.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/ltz.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=321256"}],"author":[{"embeddable":true,"href":"https:\/\/ltz.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/ehristov"}],"wp:attachment":[{"href":"https:\/\/ltz.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=321256"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/ltz.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=321256"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/ltz.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=321256"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/ltz.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=321256"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/ltz.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=321256"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/ltz.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=321256"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}