Menu

Customizing Virtuemart Invoice PDFs

How to customize invoices in Joomla VirtuemartThe default layout of PDF invoices in Virtuemart for Joomla can be quite ugly, however there are some quite easy ways to add simple branding and slightly more complex ways for customizing the entire layout using the standard template override system.

The simplest things to do are to customize the header and footer areas. Typically I'll add a logo or custom header banner image to make the invoice match the rest of the branding. I also like to add some contact information in the footer such as address, customer service email and phone number and perhaps VAT ID or company registration details. Adding these things is very like editing articles in Joomla and is achieved through the two content editor areas Invoice Head and Invoice footer on the Invoices/Emails tab at Virtuemart > Shop > Shop.

Should you want to further customize the invoice area you will need to edit the file(s) at /components/com_virtuemart/views/invoice/tmpl which create various parts of the invoice. The one that creates the main body of the invoice is invoice_items.php. If you're editing these files, you should use a template override in order to retain the changes after any Virtuemart updates. When editing these files and checking your changes, you will also have to delete any PDF invoices which have already been generated in order to force a new one to generate showing your adjustments. These are stored in the Virtuemart temporary files folder which you may have customized but it by default at /vmfiles/invoices

 

Read more...
Subscribe to this RSS feed

Enjoyed this post? Don't miss out! Connect up with us:            

Free assessment

Send us your details and we will complete a free assessment of your online business presence.

Name*
Please type your full name.
E-mail*
Invalid email address.
Domain*
Invalid domain name
Phone #*
Invalid Phone #

Invalid Captcha

We use cookies to improve your experience. By your continued use of this site you accept such use I understand