WooCommerce doesn’t generate invoices on its own, but you can automatically create and attach a PDF invoice to every order confirmation email using an invoice plugin such as Challan, a free WooCommerce PDF invoice generator. Once installed, Challan hooks into WooCommerce’s existing transactional emails and attaches a customer invoice automatically, with no manual download-and-send step required.
This guide covers how WooCommerce’s default emails work, how to set up automatic invoice sending with Challan, how to build your invoice template, and what to do if customers aren’t receiving the emails at all.
How WooCommerce Emails Work
WooCommerce sends two kinds of emails: transactional and marketing.
Marketing emails are the ones you design and send deliberately, such as abandoned cart emails, product recommendations, and discount offers. These need a separate email marketing tool and aren’t part of this guide.
Transactional emails are triggered automatically by an order event, and WooCommerce generates and sends these out of the box. Go to WooCommerce > Settings > Emails to see them.
By default, WooCommerce ships with these 10 transactional emails:
- New order: Sent to you and the customer when a new order comes in.
- Processing order: Sent to the customer after payment is completed.
- Completed order: Sent after you mark the order as shipped or complete.
- Refunded order: Sent when a refund is issued.
- Order on hold: Sent when an order is placed on hold.
- Cancelled order: Sent when an order is cancelled.
- Failed order: Sent when a payment attempt fails.
- Customer note: Sent when you add a note to the order in the admin.
- Reset password: Sent when a customer requests a password reset.
- New account: Sent when a customer registers a new account.
WooCommerce can attach a PDF invoice to any of these emails, but it has no built-in tool to design or generate that invoice. That’s where a dedicated plugin comes in.
How to Automatically Send an Invoice Using Challan
Challan is a free WooCommerce PDF invoice, packing slip, and shipping label plugin available on the WordPress plugin repository. Once active, it generates a PDF invoice for every order and attaches it to whichever transactional emails you choose, without any manual step from you.
Step 1: Install and Activate Challan
From your WordPress dashboard, go to Plugins > Add New, search for Challan, then install and activate it. That’s the entire setup. From this point, every new order automatically gets a PDF invoice attached to its confirmation email.
Step 2: Create a Test Order to Confirm It’s Working
Go to WooCommerce > Orders > Add new order, and set the order status to Processing.
Click the edit icon next to the billing address and fill in a test customer’s details.
Step 3: Add Products to the Order
Scroll to the items section, click Add Items, then Add Products, and add one or more products to the order.
Step 4: Save the Order
Click Create to finalize the order. Challan generates the invoice and attaches it to the new order email automatically.
Step 5: Check the Customer’s Email
Open the test order email. The PDF invoice will be attached, generated and sent without any manual action on your part.
Step 6: Choose Which Emails Get the Invoice Attached
Go to Challan > Settings > Settings tab. Here you decide which transactional emails should carry the invoice. The free version supports:
- New order
- Completed order
- On-hold order
- Processing order
- Refunded order
- Customer invoice
The pro version supports more email types and can attach packing slips alongside the invoice.
Step 7: Download Invoices Manually if Needed
Challan also adds a dedicated panel on the order page for downloading invoices, packing slips, credit notes, and shipping labels one at a time, in case you need to send or reprint one manually. Customers can also download their own invoice copy from their My Account page.
Building Your Invoice Template
A default invoice is functional but plain. To make it look like it came from your brand rather than a generic plugin, customize the template.
Free Version Template Settings
Go to Challan > Settings > Seller & Buyer tab and add your company name, logo, address, phone number, and email. A logo here does more for brand recognition than almost any other single field on the invoice.
You can add footer notes and links using basic HTML, for example a link to your terms and conditions page, which will then appear as clickable text on every invoice.
Back in the main Settings tab, scroll to the template and page size section:
- Paper size: A4, A5, or Letter
- Template layout: two premade layouts in the free version, both editable further using the Invoice Template CSS field
- Order settings: custom invoice number prefix and suffix
- Display payment method: toggle to show the customer’s payment method on the invoice
- Add order meta: attach extra order fields to the invoice
Pro Version Template Settings
The pro version adds a dedicated invoice-template menu with more layout choices, plus:
- Barcode and QR code display
- RTL (right-to-left) invoice support for Arabic-language stores
- “Paid” stamps, using built-in designs or your own uploaded image
- Custom paper sizes beyond A4/A5/Letter
- A signature field, so you can display your own or an authorized signer’s signature
- Product image, category, and description display on the itemized list, with adjustable description length
- VAT, discount, tax, SSN, and bank account fields
- Attachment of up to three static files, such as terms and conditions, sent alongside the invoice
Check the official pricing page for current plan pricing before publishing, since third-party listings show different figures depending on when they were last updated.
Best WooCommerce Invoice Plugin for Automatic Sending
If you need one plugin that generates the invoice, attaches it automatically, and lets you customize the template without touching code, Challan covers all three. The free version handles the core job: PDF generation, automatic attachment to order emails, and basic branding. The pro version adds the fields larger or international stores tend to need, such as VAT/tax display, multi-language invoices for WPML and Polylang stores, and shipping labels.
Key Features
- Automatic PDF invoice generation and attachment on order emails
- Packing slips, credit notes, and shipping labels from one dashboard
- Custom invoice numbering, paper sizes, and CSS-level template editing
- Multi-language support for WPML, Polylang, TranslatePress, and Weglot (Pro)
- Barcode, QR code, and payment method display
If you’re also running promotions or tiered pricing on the same store, a dynamic pricing plugin like Disco can handle the discount rules while Challan handles the paperwork that follows, so the invoice always reflects the price the customer actually paid.
Why Customers Aren’t Receiving the Invoice Email
If customers aren’t getting their order emails at all, they won’t get the attached invoice either, regardless of how Challan is configured.
WordPress sends emails through PHP mail by default, using your hosting server. Many hosting providers don’t configure their servers correctly for outbound mail, so messages get dropped, delayed, or sent to spam.
To diagnose the problem, install a plugin like WP Mail Logging. It won’t fix delivery by itself, but it shows you every email WordPress attempted to send and flags the ones that failed, which tells you whether the problem is WordPress not sending the email or the recipient’s server rejecting it.
To fix the problem, install an SMTP plugin and connect it to an authenticated email service. SMTP (Simple Mail Transfer Protocol) lets your emails pass the sender authentication checks that Gmail, Yahoo, and other providers run on every incoming message. Without that authentication, messages are far more likely to land in spam or get rejected outright. SMTP plugins require some setup, but that setup is what actually solves deliverability, not the logging step.
Frequently Asked Questions
How do I automatically send a customer invoice in WooCommerce?
Install a PDF invoice plugin like Challan. It generates an invoice for every order and attaches it to the WooCommerce transactional email you choose, such as the order confirmation or completed order email, with no manual step needed.
Does WooCommerce send invoices automatically?
WooCommerce can send an invoice automatically, but only with the help of a plugin, since it has no built-in invoice generator. Once a plugin like Challan is active, WooCommerce sends the invoice as an attachment on its existing transactional emails.
How do I generate an invoice in WooCommerce?
Install an invoice plugin such as Challan. It generates a PDF invoice from the order data automatically. You can also download any invoice manually from the order page if you need a copy outside of the automatic email.
Can I add a payment link to a WooCommerce invoice?
Native WooCommerce invoices don’t include a payment link by default. Some invoice plugins support a “pay now” link for unpaid orders, so check your plugin’s settings or documentation for a payment-link or pay-by-invoice option if that’s part of your workflow.
What’s the difference between a WooCommerce invoice and a receipt?
An invoice is issued to request or confirm payment for an order and typically includes order and tax details. A receipt confirms that payment has already been received. Most invoice plugins, including Challan, can be configured to display a “Paid” stamp once payment clears, which effectively turns the same document into a receipt.
Why aren’t my customers receiving WooCommerce order emails?
The most common cause is that your hosting server isn’t properly configured to send authenticated email. Installing an SMTP plugin and connecting it to a mail service fixes this in most cases. Use an email logging plugin first to confirm whether the emails are failing to send or being sent but rejected.
Key Takeaways
- WooCommerce has no built-in invoice generator, but plugins like Challan attach a PDF invoice to its existing transactional emails automatically.
- The setup is install-and-activate: no manual invoice creation is required once the plugin is configured.
- You choose which transactional emails carry the invoice, such as new order, processing, or completed order, from the plugin’s settings.
- Template customization, logo, paper size, invoice numbering, and CSS, turns a generic PDF into a branded document.
- Pro-tier features like VAT/tax fields, multi-language invoices, and payment stamps matter most for GST-compliant, international, or higher-volume stores.
- If customers aren’t receiving invoices, check email deliverability first with a logging plugin, then fix it with SMTP, since no invoice plugin can attach a document to an email that never arrives.
Free version on WordPress.org. Every Pro licence includes a 30-day money-back guarantee.
thanks alot of information keren bgt