An invoice is the first document that is sent to the customers after an order is received. The whole transaction begins with customers accepting the invoice. Thus while creating an invoice one should pay utmost attention to avoid any kind of mistakes in it. Manual creation of invoices might increase the chances of errors and it is a very time-consuming process as well. The only way to overcome these shortcomings of manual invoicing is by using an extension to create invoices.
WebToffee’s WooCommerce PDF Invoices and Packing Slips Plugin for WooCommerce provides you with this functionality. Installing it on your website will help you create invoices efficiently.
The whole process has been divided into few steps.
Installation of the Plugin
- Step 1: Go to My Account > “API Downloads” tab and download the plugin.
- Note: If you have the basic/free version already installed, please Deactivate and Delete the Basic Version before installing Premium Version to avoid any conflict. Your plugin settings will be retained on your website.
- Step 2: Install the downloaded plugin into your WordPress / WooCommerce Site.
- Step 3: You will get an Activation Key and Activation Email at My Account -> “API Keys”.
- Step 4: Go to your site admin and the Settings page of the plugin and activate it using email and key.
General Settings
General Settings window acts as a common source of information for the documents throughout the plugin. It is further classified into the following tabs:
- Documents
- General
- Advanced
- Help
Documents
The user can explicitly enable/disable documents required for his site and configure individual settings pertaining to each document.
- Enable/Disable Documents– Each document type can be enabled/disabled as per user requirement. On disabling a document type, the corresponding item will be removed from the dashboard view and thereby the user will not be able to access it further until it is enabled.
- Settings: You will be redirected to the concerned document settings page by clicking on the Settings button.

General
As the name implies, it is in the general tab where the essential basic details like the company info and shipping from address details are configured. The information entered in the general tab is taken as the common source of data across all documents in the plugin.

- Company Info
- Company Name – Input the name of your company in this field.
- Custom Logo – You can upload a custom logo or image of your company that can be used across all printable objects. Alternatively, the URL of the image can also be used. By default, the logo will be placed on the top left corner across all documents. However, further customization provisions are also given in respective document settings.
- Return Policy, Conditions, etc. – You can set return policies, conditions and so on in the given text area section.
- Custom Footer – You can set up a custom footer which will be used across all respective documents.
- Address (Sender details)
- Department/Business/Sender – Enter the name of WooCommerce shop owner.
- Address Line1 – Enter the first line of the address, which is mostly the street name and number.
- Address Line2 – Enter the second line of the address, which can be the apartment number.
- City – Enter the city name of the sender.
- Country/State – Enter the country name of the sender.
- Postal Code – Enter postcode from where you are shipping items.
- Contact Number – Specify the contact number of the sender in this field.
- VAT – VAT details of the sender can be entered here. The details can be saved by clicking on the Update Settings button.
Advanced
The advanced settings can be used to configure additional information with respect to custom data, RTL support, packaging formats, etc

The Advanced tab consist of following fields:
- Add additional fields on the checkout page: Append additional information in documents by selecting the required item from the drop-down.
- You can select a field from the list of default fields or click the Add Custom Field button to create custom meta fields by providing a custom Field Name. The meta keys can be found in the product’s custom field section of the WooCommerce Order page.
- Preview Before Printing – You can enable this to have a preview option in all the shipping documents before they are printed.
- Enable RTL support: Enable or disable the RTL support in documents generated by the browser.
- Tracking number meta: Enter the tracking number meta field to add tracking number information. The tracking number meta can be obtained from the respective tracking data provider.
- Display state name: Displays the state name instead of state code in billing and shipping address.
- Packaging Type: The packaging type that you set here can be applied to all documents, except Invoice. You can select the packaging type from the three available options:

- Pack items individually: Allows you to pack each item in the cart separately. Total Shipping cost is calculated by adding the shipping cost of each item.
- Box packing: If packing items individually or weight based packing does not suit your business, then you can customize box sizes based on your requirement. Once you select this option, the following fields will be appended as shown below:
To define a new box size, click the Add Box button. All cart items are packed into custom boxes defined in Box Size settings. The best fit box is chosen automatically from the defined boxes. This box dimension and weight settings are applicable only when Box Packing is selected. Based on your requirement, you can enable or disable a particular box using the checkbox under the Enabled column of the respective box rule. - Single package per order: Allows you to pack all items of a single order as one single package.

The settings can be saved by clicking on the Update Settings button.
Cloud Print
To have a Cloud Print, you will need to obtain a client ID and client secret from the Google developer console. Refer to Google developer documentation to know more.
Click here to find how to set up your printer with Google Cloud Print.

- Client ID: Specify the Client ID obtained from the Google developer console for authentication.
- Client Secret: Specify the Client Secret obtained from the Google developer console for authentication.
- Redirect URI: Use this redirect URI when setting up Google API credentials. You can click on Connect button to establish the connection with the cloud print.
- Settings:
- Enable manual printing: Choose ‘Yes’ to have a ‘Cloud Print’ button in the WooCommerce Orders page.
- Enable automatic printing: Prints the document automatically whenever an order status is updated. Ensure that a default printer is set up for this to work.
Hit Update Settings button to save the settings.
Help Guide
This section gives you links to resources related to the WooCommerce PDF Invoices, Packing Slips, Delivery Notes & Shipping Labels plugin. It is sub-divided into two categories as Help Links and Filters.
Help Links
Help Links provides direct links to resources like documentation and support.
Filters
You can use filters to extend the functionality of the plugin in the required manner.
Invoice Settings
An Invoice is a detailed statement generated by the seller containing information related to goods sold or shipped. The Invoice page is categorized into the following:
- General
- Customize
- Invoice Number
- Advanced
General
You can configure the general settings required for the invoice in the general tab.

- Enable invoice: Disabling will remove the invoice view/print provisions for orders.
- Generate Invoice for Order Statuses– This option lists all the order statuses for which invoices can be generated. You can select multiple statuses based on your requirements.
- Attach invoice PDF in the email: PDF version of the currently active invoice template will be attached to the order email.
- Enable Print Invoice option for customers – You will able to display a print invoice button for your customers.
- Enable variation data: To include variation data of the product in the invoice, enable this option.
- Upload signature: If you want the signature to be displayed in the invoice, upload it in this field.
- Custom logo for invoice: To have a custom logo different from that uploaded in the general settings page, upload it in this field. If left blank, then the default logo will be populated.
The settings can be saved by clicking on the Update Settings button.
Customize
With the customizer, you can personalize the overall appearance of your document. You are provided with inbuilt themes to choose from as well as you can create new themes or templates from the existing ones. Additionally, toggle controls are given at the right-hand side of the window, which when enabled or disabled will be reflected in the sample invoice template.

To create a new Invoice template,
- Select a theme from the Create new template option.
- From the inbuilt templates that pop up, choose a layout.

Invoice Number
You can set up a custom invoice number with prefix/suffix/number series or even mirror the order number as invoice number respectively.

- Invoice number format: Specify the format in which the invoice has to be generated. For example: [prefix][number][suffix]


- Invoice Start Number: Enter the Invoice Start Number.
- Invoice Number Prefix: Enter the prefix which will be added before the invoice number. You can use any of the date formats or alphanumeric characters in this field as shown in the popup.
Update and reset the invoice number format settings by clicking on the Update and Reset button.
Advanced
The advanced invoice settings can be used to configure additional information with respect to order/product meta.

Order meta fields: Append additional order information in the invoice by selecting the required item from the drop-down. You can select a field from the list of default fields.

Click the Add/Edit Order Meta Field button to create custom meta fields. From the Add new tab specify a custom Field Name and the respective Meta Key to add a new order meta. The order meta keys can be found in the custom field section of the WooCommerce Order page.

To view, edit or delete previously added meta, click on previously added tab.

All the previously added order meta can be edited or deleted.
Product meta fields: Append additional product information in the invoice by adding product metadata. Click the Add/Edit Product Meta to add a new product meta field by providing a custom Field Name and the respective meta key for the field. The product meta keys can be found in the custom field section of the product page.

To view, edit or delete previously added product meta, click on previously added tab.

All the previously added product meta can be edited or deleted.
Product Attributes: To have product attributes in the invoice, simply add them by using the Add/Edit Product attribute button. Add new tab will give you options to specify the filed name and the corresponding meta of the product attribute.

Likewise, you can view, edit, or delete previously created attributes from the previously added tab.

Custom footer for invoice: Key in with a custom footer for the invoice in the text area. If left blank, then the default footer from General settings will be loaded.
The settings can be saved by clicking on the Update Settings button.
All-In-One - Generate PDF Invoice, Packing Slip, Labels & Delivery Note.
Used by 10,000+ WooCommerce Stores
#1 in Customer Satisfaction
WebToffee Guarantee: Get Your Money Back if You Are Not Satisfied With The Product
Buy Now!
Comments (4)
Giorgos
September 14, 2019
Hi. A quick pre-sales question. Can I add conditional fields on checkout page? For example a checkbox to enable invoice and if checked, the VAT field and Company name appear.
Mark
September 15, 2019
Hi,
You can add additional checkout fields on invoice. However, these won’t be implemented based on any conditions.
Lan
January 31, 2019
This is a presale question.
Can you add product image to the invoice?
Is the invoice able to print the attributes and variables of the product?
Mark
January 31, 2019
Hi,
The plugin does support both options you mentioned. You can add images and variation information to invoices and other label