WooCommerce Sequential Order Numbers


This plugin extends WooCommerce by automatically setting sequential order numbers for new orders. If there are existing orders at the time of installation, the sequential order numbers will start with the highest current order number.

This plugin requires WooCommerce 3.0.9 or newer.

No configuration needed! The plugin is so easy to use, there aren’t even any settings. Activate it, and orders will automatically become sequential.

If you have no orders in your store, your orders will begin counting from order number 1. If you have existing orders, the count will pick up from your highest order number.

If you’ve placed test orders, you must trash and permanently delete them to begin ordering at “1” (trashed orders have to be counted in case they’re restored, so they need to be gone completely).

Support Details

We do support our free plugins and extensions, but please understand that support for premium products takes priority. We typically check the forums every few days (usually with a maximum delay of one week).

Sequential Order Numbers Pro

If you like this plugin, but are looking for the ability to set the starting number, or to add a custom prefix/suffix to your order numbers (ie, you’d prefer something like WT101UK, WT102UK, etc) please consider our premium WooCommerce Sequential Order Numbers Pro plugin, which is available in the WooCommerce Store.

More Details

Interested in contributing? You can find the project on GitHub and contributions are welcome 🙂
If you’d like to make your payment gateway compatible with Sequential Order Numbers, or other plugins that filter the order number, please make one small change. Instead of referencing $order->id when storing order data, reference: $order->get_order_number()

This is compatible with WooCommerce core by default, as the order number is typically equal to the order ID. However, this will also let you be compatible with plugins such as ours, as the order number can be filtered (which is what we do to make it sequential), so using order number is preferred.

Some other notes to help developers:

Get an order from order number

If you want to access the order based on the sequential order number, you can do so with a helper method:

$order_id = wc_sequential_order_numbers()->find_order_by_order_number( $order_number );

This will give you the order’s ID (post ID), and you can get the order object from this.

Get the order number

If you have access to the order ID or order object, you can easily get the sequential order number based on WooCommerce core functions.

$order = wc_get_order( $order_id );
$order_number = $order->get_order_number();


You can install the plugin in a few ways:

  1. Upload the entire ‘woocommerce-sequential-order-numbers’ folder to the ‘/wp-content/plugins/’ directory
  2. Upload the zip file you download via Plugins > Add New
  3. Go to Plugins > Add New and search for “WooCommerce Sequential Order Numbers”, and install the one from SkyVerge.

Once you’ve installed the plugin, to get started please:

  1. Activate the plugin through the “Plugins” menu in WordPress.
  2. No configuration needed! Order numbers will continue sequentially from the current highest order number, or from 1 if no orders have been placed yet.


Where are the settings?

The plugin doesn’t require any 🙂 When you activate it, it gets to work right away! Orders will automatically become sequential, starting from the most recent order number.

Why doesn’t my payment gateway use this number?

For full compatibility with extensions which alter the order number, such as Sequential Order Numbers, WooCommerce extensions should use $order->get_order_number(); rather than $order->id when referencing the order number.

If your extension is not displaying the correct order number, you can try contacting the developers of your payment gateway to see if it’s possible to make this tiny change. Using the order number instead is both compatible with WooCommerce core and our plugin, as without the order number being changed, it will be equal to the order ID.

Can I start the order numbers at a particular number?

This free version does not have that functionality, but the premium WooCommerce Sequential Order Numbers Pro will allow you to choose any starting number that’s higher than your most current order number.

Can I start the order numbers at “1”?

If you want to begin numbering at “1”, you must trash, then permanently delete all orders in your store so that there are no order numbers already being counted.

Can I set an order number prefix/suffix?

This free version does not have that functionality, but it’s included in the premium WooCommerce Sequential Order Numbers Pro.


March 2, 2019
Unfortunately the plugin doesn't work properly. It incremetns the excessive "1" to the order number when payment gateway is invoked. As result the order number in woocommerce and order number in payment system became different. It's difficult to identify buyer's payment if buyer pays by creditcard.
May 22, 2018
I just want to know why are you guys taking so long to resolve the issues? We brought 3 plugins from you the past 4 years. This is the second plugin we are still using and having issues.
November 17, 2016
Love this plugin, It has worked really well and been very reliable for the last few years, up until I updated word press to V4.6.1 November 15th 2016 and woo-commerce to version 2.6.8 After this, new orders failed and customers were unable to check out. The error message customers got on screen after pressing Place order then checkout buttons was: (Oops something went wrong! We're probably doing scheduled maintenance) After hours of testing and process of elimination and retesting each time. It came down to everything worked until I activated this plugin (WooCommerce Sequential Order Numbers) by Skyverge. The weird thing is that it didn't make sense, however, what did make sense a was that I also had the same plugin installed on 3 other clients websites and I did the same updates in the same evening. Those sites also had the same error the following morning on the 16th Nov. error: (Oops something went wrong! We're probably doing scheduled maintenance) After disabling and deleting the (WooCommerce Sequential Order Numbers) plugin on those sites too, no further checkout problems occurred. Apart from this little glitch what ever it is. I love this plugin, It has been really great for a few years. I'm sure this will be figured out and resolved soon so it can be reinstalled. The developer is very helpful so I hear and has some great articles on his blog. Edited to add: The payment processor on all three sites with the same issue is PayPal Standard as is installed with woo commerce. No other payment gateways or processors were active or being used. Hope this helps figure things out.
Read all 23 reviews

Contributors & Developers

“WooCommerce Sequential Order Numbers” is open source software. The following people have contributed to this plugin.


“WooCommerce Sequential Order Numbers” has been translated into 5 locales. Thank you to the translators for their contributions.

Translate “WooCommerce Sequential Order Numbers” into your language.

Interested in development?

Browse the code, check out the SVN repository, or subscribe to the development log by RSS.


2019.10.03 – version 1.9.1

  • Fix – Fix order number filter in WooCommerce Admin Downloads Analytics

2019.08.15 – version 1.9.0

  • Misc – Add support for WooCommerce 3.7
  • Misc – Remove support for WooCommerce 2.6

2018.07.17 – version 1.8.3

  • Misc – Require WooCommerce 2.6.14+ and WordPress 4.4+

1.8.2 – 2017.08.22

  • Fix – PHP deprecation warning when Subscriptions is used
  • Misc – Removed support for WooCommerce Subscriptions older than v2.0

1.8.1 – 2017.03.28

  • Fix – Removes errors on refund number display

1.8.0 – 2017.03.23

  • Fix – Admin orderby was not properly scoped to orders, props @brandondove
  • Misc – Added support for WooCommerce 3.0
  • Misc – Removed support for WooCommerce 2.4

1.7.0 – 2016.05.24

  • Misc – Added support for WooCommerce 2.6
  • Misc – Removed support for WooCommerce 2.3

1.6.1 – 2016.02.04

  • Misc – WooCommerce Subscriptions: Use new hook wcs_renewal_order_meta_query instead of deprecated woocommerce_subscriptions_renewal_order_meta_query

1.6.0 – 2016.01.20

  • Misc – WooCommerce Subscriptions: Use new filter hook wcs_renewal_order_created instead of deprecated woocommerce_subscriptions_renewal_order_created
  • Misc – WooCommerce 2.5 compatibility
  • Misc – Dropped WooCommerce 2.2 support

1.5.1 – 2015.11.26

  • Fix – Compatibility fix with WooCommerce Subscriptions 2.0

1.5.0 – 2015.07.28

  • Misc – WooCommerce 2.4 Compatibility

1.4.0 – 2015.02.10

  • Fix – Improved install routine for shops with a large number of orders
  • Misc – WooCommerce 2.3 compatibility

1.3.4 – 2014.09.23

  • Fix – Compatibility fix with WooCommerce 2.1
  • Fix – Fix a deprecated notice in WooCommerce 2.2

1.3.3 – 2014.09.05

  • Localization – Included a .pot file for localization

1.3.2 – 2014.09.02

  • Misc – WooCommerce 2.2 compatibility

1.3.1 – 2014.01.22

  • Misc – WooCommerce 2.1 compatibility

1.3 – 2013.04.26

  • Feature – Improved WooCommerce Subscriptions compatibility
  • Feature – Improved WooCommerce Pre-Orders compatibility
  • General code cleanup and refactor

1.2.4 – 2012.12.14

  • Fix – WordPress 3.5 compatibility fix
  • Fix – Order numbers not assigned to temporary auto-draft orders created from the admin

1.2.3 – 2012.06.06

  • Fix – Removed WooCommerce functions, which caused a compatibility issue with other WooCommerce plugins

1.2.2 – 2012.05.25

  • Tweak – Takes advantage of new action hooks/filters available in WooCommerce 1.5.6
  • Fix – Bug fix on installation to stores with more than 10 existing orders

1.2.1 – 2012.05.13

  • Tweak – Minor updates due to WooCommerce 1.5.5 release

1.2.0 – 2012.04.21

  • Feature – Added support for the order tracking page

1.1.2 – 2012.04.18

  • Tweak – Minor updates due to WooCommerce 1.5.4 release

1.1.1 – 2012.04.02

  • Fix – Order number in the subject line of the admin new order email is fixed

1.1.0 – 2012.04.02

  • Feature – Search by order number

1.0.1 – 2012.04.02

  • Fix – small bug fix

1.0.0 – 2012.04.02

  • Initial Release