How to bulk refund Shopify orders by line item
Refund specific line items on existing orders in bulk using a spreadsheet import.
Goal: Refund one or more line items on existing Shopify orders in bulk, with control over restock behavior and customer notifications.
Prerequisites:
You have Altera installed on your Shopify store
The orders you want to refund already exist in your store
You know the order names (e.g., #1001) or IDs of the orders to refund
Step 1 - Export your orders
Export the orders you want to refund so you have the correct order names and line item details. Go to Apps > Altera > Export and select Orders. Use filters to narrow down to the specific orders.
Step 2 - Prepare your refund spreadsheet
Create a spreadsheet with the following columns. Each refund line item gets its own row.
Name | Command | Line: Type | Line: Variant SKU | Line: Quantity | Refund: ID | Refund: Restock | Refund: Restock Type | Refund: Note |
#1001 | UPDATE | Refund Line | SKU-001 | 1 | 1 | TRUE | return | Customer return |
#1001 | UPDATE | Refund Line | SKU-002 | 2 | 1 | TRUE | return | Customer return |
#1002 | UPDATE | Refund Line | SKU-003 | 1 | 1 | FALSE | Damaged item |
Key columns:
Name is the order number shown in your Shopify admin. You can also use the ID column with the numeric Shopify order ID.
Command must be
UPDATEto modify an existing order.Line: Type must be
Refund Lineso the row is treated as a refund.Line: Variant SKU tells the app which product to refund. You can also use Line: Variant ID if you have the Shopify variant ID.
Line: Quantity is how many units to refund. Use a positive number.
Refund: ID ties multiple rows into one refund. Give every row that should be part of the same refund the same number (e.g.,
1). Use a different number to create a separate refund on the same order.Refund: Restock set to
TRUEto add units back to inventory,FALSEto leave inventory unchanged.Refund: Restock Type use
returnfor items that were already shipped, orcancelfor items that were never fulfilled.
Step 3 - Add optional columns
You can include these additional columns:
Refund: Note to record why the refund was issued.
Refund: Send Receipt set to
TRUEif you want the customer to receive an email about the refund.Refund: Restock Location to choose which inventory location the returned units go to.
Step 4 - Import the file
Go to Apps > Altera > Import, upload your file, and confirm the import. The sheet name or file name should contain "Orders".
Outcome
Each order listed in the file is partially refunded for the specified line items. You can verify the refunds in the Shopify admin under Orders by opening each order and checking the refund history.
Example
To refund 1 unit of SKU-001 and 2 units of SKU-002 from order #1001 with restocking:
Name | Command | Line: Type | Line: Variant SKU | Line: Quantity | Refund: ID | Refund: Restock | Refund: Restock Type |
#1001 | UPDATE | Refund Line | SKU-001 | 1 | 1 | TRUE | return |
#1001 | UPDATE | Refund Line | SKU-002 | 2 | 1 | TRUE | return |
Because both rows have Refund: ID set to 1, they are processed together as a single refund on that order.
