I run a made to order B2B store and invoice customers on dispatch (they’re on payment terms, so they don’t pay at order time). I’ve hit a naming conflict that’s confusing customers, and I’d like to know the correct way to resolve it.
For a single order, two different Shopify features both produce something called an “invoice”, each with a different number:
When the order is created, Shopify auto-generates the native VAT invoice with its own sequential number, e.g. INV-GB-138. This is what the customer sees when they log into their account.
2. When I click Resend invoice (my dispatch trigger, to request payment under their terms), the payment request email is labelled “Invoice #1143” — but 1143 is the order number, not an invoice number. This label appears in both the email subject and the email body.
So the customer receives one document referencing “Invoice 1143” and sees another in their account referencing “INV-GB-138” for the same order. It looks like two different invoices with two different numbers.
My questions:
Is there any way to make the “Send invoice” payment request email stop labelling itself with the order number as “Invoice #”, or align it with the actual VAT invoice number?
Is the payment request email body editable at all, or is it a fixed template?
For a B2B, what’s the recommended way to present a single, consistently numbered invoice to the customer. Is native B2B payment terms the intended solution here rather than the manual “Send invoice” approach?
Any guidance on the correct setup would be much appreciated. Thanks!
That “Invoice #1143” is the Order invoice email, at Settings > Notifications > Customer notifications > Order invoice (“Sent when an order has an outstanding balance”). It is what your Send invoice / Resend invoice button triggers, and it is a completely separate thing from the native VAT invoice.
It says “Invoice #1143” because the email prints your order number, not the VAT number. The default subject is Invoice {{name}} and the body heading is Invoice {{ order_name }} - both output the order name (#1143).
Can it show INV-GB-138 instead? No. The VAT invoice number is not an available variable in this email
Fix: Just reename it from Invoice to something else:
Email subject: change Invoice {{name}} to Payment request for order {{name}}.
Email body: find the heading line Invoice {{ order_name }} (the big “INVOICE #…” near the top) and change the word Invoice to Payment request. Keep {{ order_name }} so the customer can still match it to the order.