VM Ordernumber Plugin

Ordernumber Plugin for VirtueMart

Virtuemart 2 (and 3) plugin to change the format of the order, invoice and customer numbers, as well as the order passwords. The running counter of the orders and invoices can be configured to use separate counters for different time periods.
  • 25
  • 30
  • plugin
  • vm2.0
  • vm3.0

Sales price: 9,90 €
Sales price without tax: 9,90 €
Paid Download


This is a very flexible Virtuemart 2 (and 3) plugin that allows the shop owner to change the format of the order numbers, order passwords, customer numbers and invoice numbers. The format of the numbers is given in text-format and can depend on and use these supported variables:

  • A counter
  • Fixed text
  • Date / time parts: year/month/day, hour/minute/etc.
  • Random numbers and letters
  • Address parts of the shopper
  • Order number and several internal IDs


By default, Virtuemart 2 creates order numbers like b6ee03, where the first four letters/digits are randomly generated and only the last digits are a running order number. Similarly, the order password will be like p_57ad1 and the invoice numbers will look like 12111323602, where the first six digits indicate the date, the next three digits are seemingly random (actually, they are the first few digits of the md5 hash created from the order number and order status), and only the final number(s) are a running count.In many countries, tax laws require invoices to be successively numbered, with an optional fixed prefix (different prefixes for different purposes are allowed), but a random part in the invoice number is a big NO-NO.

This plugin allows you to define the format of the order number, order password, customer number and invoice number in the plugin settings.

Order/Invoice Number Format Strings

The format strings are simple texts like "EK-[year]/#", where the following case-insensitive variables will be replaced (for a comprehensive list with explanations, see the documentation):

  • #  (placeholder for the running counter)
  • [year], [year2], [month], [day], [hour], [hour12], [ampm], [minute], [second]
  • [randomDigit], [randomHex], [randomLetter], [randomULetter], [randomLLetter], [randomAlphanum]
  • [Lastname], [Firstname], [Company], [City], [ZIP], [Country], [CountryCode2], [CountryCode3]
  • [OrderNumber], [OrderStatus]

For example, a format "[year][month]-#" (with 3 set as the minimum number of digits for the counter) will create numbers like:


Further examples can be found in the documentation.

Demo Server

Documentation of the Ordernumber Plugin for VirtueMart 2

Frequently Asked Questions (FAQ)

Support Forum


This plugin is licenced unter the GNU GPLv3. However, you have to pay for the download (all updates are free to our customers). After that, you have all the right and duties that the GPL gives you.