A merchant needs to ship replacement items for a delivered order but cannot purchase a second shipping label because the order is archived and already fulfilled.
Official Workaround:
Shopify Support recommends creating a draft order with the missing items, applying a full discount to avoid impacting sales figures, marking it as paid, and adding notes indicating it’s a replacement. This allows purchasing a new shipping label while keeping both orders visible in the customer’s account.
Community Alternatives:
Duplicate the original order, apply a discount equal to the total, and mark as paid
Unarchive the order and add a $0 custom item (labeled “Replacement”) to generate a shipping label without affecting inventory or sales data
Create a $0 product specifically for replacement requests that customers can “order” to provide shipping details
Major Concerns:
The duplicate order method incorrectly adjusts inventory (system treats it as a new sale)
Full discounts still impact gross sales and discount tracking, complicating tax reconciliation
Automated customer emails must be disabled to prevent confusion
Multiple users report the workarounds no longer function or don’t provide shipping label options
Consensus:
Merchants strongly criticize the lack of a built-in “reshipment” or “exchange label” feature, noting competitors like eBay and PayPal offer this standard functionality. The workarounds are considered excessively complex and time-consuming for a common business need.
Summarized with AI on October 29.
AI used: claude-sonnet-4-5-20250929.
I recently shipped one order to my customer. The package has been deliveried. And the customer contact me with some items missing in that package. I was trying to purchase a second shipping label under the same order to send a replacement order. But the order has been archived, so I wasn’t able to do so. Can anyone help me with this?
If an order has been fulfilled and delivered already, there is no way in the admin to go back and “re-fulfil” those items. In cases like this, you’ll need to create a draft order in the admin by going to Orders > Create Order, add the items that were missing from that orde, then buy a shipping label and fulfil the new order. In this new order, you can mark it as paid, discount it fully to not impact your sales figures, and add notes to indicate that the items in this order are a replacement for the previous. After this is completed, you’ll be able to look at the customer account in the admin and see both orders at a glance.
If you have any questions about this process, please let me know.
I’m glad I found this! I too was wondering how to print another label on an order I sent out, and needed to make an exchange. I marked the order as paid, but what do you mean by “discount it fully to not impact your sales figures”?
I found a quicker way just go to the original order and hit duplicate and add a discount equalling the total and mark as paid. That’s it then you can create a new label and it won’t affect your metrics.
I just did all that but didn’t see the discount thing so now I have a full order amount sitting in my account. Do i just “refund” that? Did it get charged to the customer? Hope not. If I refund, di I actually refund her money she didn’t pay because I marked it as paid??? Easier on Etsy sorry guys haha.
Just go to the new order you created refund the entire amount but un select
email customer so they do not see it. Then you should have a 0$ order you
can fulfill.
The problem with this workaround is that you then have to manually adjust the inventory because the system thinks it is re-selling those items, when in fact they were only sold once and just not delivered.
Creating a draft order for a second round of shipping associated with exchanges is entirely inefficient. It creates an artificial revenue amount, takes onerous amount of time, and appears as an order when it’s an exchange only. Shopify needs to enable an second label option associated with initial order activity - processing a draft order for purposes of label generation with information already in system is stupid.
This is an unreasonably complex work-around for what should be a standard feature. The need to ship a second package to a customer is frequent enough to justify adding the feature. If an item was left out by accident, a follow up item needs to be sent, etc. There are a variety of reasons why I need to create another label after the original shipment. Ebay offers this. Paypal shipping offers this. It would be much appreciated if shopify would add this feature, it would be very helpful. Thanks.
This ridiculous work-around actually *does impact the sales figures. When you create an order and discount it fully, the order contributes to your gross sales, and the discount is tracked in the discounts line. Sure, it doesn’t affect the bottom line in the end, but it does end up tracking the sale and discount. I know this because I struggled with it at tax time this year… having to reconcile discounts against gross receipts at tax time… all that extra trouble… just to print some additional shipping labels. Come on guys, everybody else who does e-commerce shipping systems offers this feature, and has for a long time… get with the 1900’s already.
This doesn’t work for me anymore. I tried four times, with a couple minor variations, notably making it free shipping and also First Class Mail. This worked early June now it’s late August and I can’t print a shipping label. And this is using the same item + discount that I used the previous time. I hit “fulfill order” and it just asks me to enter carrier and tracking number.
This workaround creates a lot of additional work. In my previous software we could right click and duplicate the order order, delete items not being reshipped, use the same order # and add a “-R” to the order #. This allows our bookkeeper to easily find all orders that were reshipped and categorize them as a loss. The 2 orders are easily cross referenced.
This is exactly what I do (unarchiving > creating a custom item worth nothing w. shipping.) This also helps for quickbooks/ tax purposes and doesn’t remove additional inventory; it doesn’t count as a sale since the custom item is titled “Replacement” or whatever you want to do with it, the cost is 0 dollars and although you do have to mark it as needs shipping, they’ve already paid shipping costs on the order so it’s not charging extra. A great fix until something better comes along.
Maybe you might try duplicating the order using the duplicate option in the drop-down menu for the original order, then tag it with “R” for replacement.
Yes, do that now but then you must discount order amount or it gets added
in as new revenue, also must mark as paid and remove customer email address
or customer receives notification of order showing 0 due which confuses &
annoys them so we get phone call or email.
I think the Unarchive > Edit > Add $0 Custom Item is the best hack for this. Doesn’t affect total sales numbers (which a 100% discount would), keeps the inventory intact, keeps the history in one order, and even prints put a dedicated packing slip for the custom item.
it’s still ridiculous there isn’t a built-in method for this.