WC Duplicate Order

Plugin Banner

WC Duplicate Order

by Jamie Gill

Download
Description

After activation there will be a Duplicate link in the order overview page within the order actions on hover.

Duplicates all order Meta data and product data across into the new order ID.

Order is created and a note is left in the new order of the older order ID for future reference. Order status is then set on hold awaiting admin to confirm payment.

Supports Bulk order duplication.

Includes custom order field hook

Feature requests welcome for future development.

  1. Upload the plugin files to the /wp-content/plugins/ directory, or install the plugin through the WordPress plugins screen directly.
  2. Activate the plugin through the ‘Plugins’ screen in WordPress
  3. There will now be a Duplicate link in the to Woocommerce order overview page within the order actions on hover. Alternatively there is a bulk option to duplicate multiple orders.
  1. Order duplicate button displays on hover

    Order duplicate button displays on hover

  2. After clicking the button order is duplicated and note is made on order with referance of duplicated order

    After clicking the button order is duplicated and note is made on order with referance of duplicated order

  3. Bulk Duplication

    Bulk Duplication

Excelent plugin

By hlondono on November 29, 2020

This is a perfect solution to duplicate orders. Will be good if you can duplicate orders and update prices of product that was modified.

Good but no custom checkout field support

By santhisaleem on November 20, 2020

So far so good. It would be great if you can copy the custom checkout form data as well.

Works great!

By noalert on October 2, 2020

Even though the plugin hasn't been updated for a while, it still works great on the newest Woocommerce version (tested in 4.5.2). A small hack. I prefer to set the default order status for duplicated orders to 'pending'. That's easy to achieve by changing 1 line of code in class-clone-order.php $order->update_status('on-hold'); to $order->update_status('pending');

Just perfect

By adminanatole on April 25, 2020

Beautiful job, the plugin works perfectly and the support is really quick and helpful (helped me with a little bit of code to duplicate the custom fields of my orders). Thanks!

Not working

By inzerat on December 9, 2019

- the customer does not receive an email - The administrator's email will not receive a completed billing address tested for woocommerce 3.8.1

Good and simple

By webhk on November 20, 2019

Good and simple plgin. Better to not make it complicated but if i can add something: + will be great if it will have option for dupplicate order directly in order details as well + will be perfect if we have option for choose the status for dupplicate. In my case is better to choose "waiting for payment" becasue at this status customers do not get notifications.

Works well but...

By Adam (jarfar) on November 1, 2019

This plugin works well, except that if you have different tax timezones this plugin recalculates order totals based on default timezone not the one from customer billing data. I didn't found any other issues so far. Dear plugin Author, can you please fix the issue so I can give 5 stars?

Works GREAT

By cristianciuberea on September 23, 2019

Works great! very usefor for our case

One Small Change?

By Darren (dkoviessen) on March 23, 2019

Fantastic plugin. I ended up adjusting so that instead of the duplicate order initially being set to "On Hold" it is now set to "Payment Pending". This seems to make more sense, at least for us, as then I can send an invoice off to the customer for payment without changing the status and it also ensures that no emails are sent to admin or the customer until they pay or the status is manually changed. Pretty easy to find but in case anyone else wants to make the change classes->class-clone-order.php Line 142 Change $order->update_status('on-hold'); to $order->update_status('pending-payment');

extremely helpful

By behold on December 5, 2018

Very useful button!

1.0

  • stable release
  • Tested Woocommerce 2.6.4+

1.0.1

  • Stock Reduction added

1.1

  • Bulk Duplication added
  • Bug fixes thanks to Shaun @ Rubious

1.2

  • Bug fix to keep order item meta in correct format contributed by @Kevin
  • 2 New hooks for extra fields for other developers ‘clone_extra_billing_fields_hook’ & ‘clone_extra_shipping_fields_hook’. Passes through orders IDs so you can pass in custom fields, just simply chacge the meta key to your new fields name see below (meta key been ‘_billing_mobile_phone’ in this case)

add_action(‘clone_extra_billing_fields_hook’, ‘clone_extra_billing_fields’, 10, 2);

function clone_extra_billing_fields($order_id, $original_order_id)
{
update_post_meta( $order_id, ‘_billing_mobile_phone’, get_post_meta($original_order_id, ‘_billing_mobile_phone’, true));
}

1.3

  • Update of clone items using CRUD methods due to incompatability

1.4

  • Update of clone fees and coupons using CRUD methods due to incompatability
  • Security patch thanks to @dungengronovius report

1.4.1

  • Introduce Nonce verification as an initial check before proceeding

1.4.2

  • Added in version check to make sure compatible, if false deactivate and display friendly error message
  • Duplicate other product meta data (attribute / variation data)

1.5

  • Modifications to work with 3.3.1 and onwards

1.7

  • Stock reduction fix
  • Fees name and other minor fixes
  • Duplicate button on quick view
Back to top