What a substitution is
A substitution is an edit to an order before it is fulfilled — swapping one item for another, changing a quantity, or adding and removing a product.
Nothing is sent back, and no money is returned, because the order hasn't shipped yet. That is what makes a substitution different from a refund or a return, which can only happen after an order is fulfilled.
Example: a customer orders a size M shirt for $100. Before you ship it, they ask for size L ($120) instead, so you swap M for L on the order.
In Calculation Preferences this row is labelled Substitute.
Why it can look like a return
When you swap the items, TrueProfit records the old item coming off and the new item going on. The item coming off shows up as a reversal, which can inflate your return numbers on that day — even though your customer never returned anything. That reversal is the main thing the setting below exists to fix.
Your real refunds are not affected
This is the most common worry, so to be clear: choosing Order date removes only the phantom reversal created by an edit. It never hides or moves a genuine refund.
If a customer actually returns something after the order is fulfilled, that refund still appears as a normal refund. It is controlled by the separate Returns row, not by this one.
The three rows under Recording date — Returns, Chargeback Loss and Fee, and Substitute — each control a different kind of event and work independently. Changing one never changes the others, and no amount is ever counted twice.
When it's recorded
Set this in Settings → Calculation Preferences → Recording date → Substitute.
Setting | What happens |
Substitution date (default) | The swap is recorded on the day you edited the order. Past reports stay unchanged, but the reversal can inflate that day's return numbers. Matches Shopify. |
Order date | TrueProfit folds the order's final value onto the original order's date and removes the reversal the swap creates, then restates that past period. |
Most order edits happen on the same day as the order itself. For those, both options give the same result, and this setting changes nothing.
If you choose Order date
These Dashboard metrics change: Revenue, Units Sold, Refund/Returns, Net Profit, ROAS, and Net Profit Margin.
The ones you can compare against Shopify will no longer match: Revenue, Units Sold, and Refund/Returns. Shopify keeps both the removed item and the new item on the day you edited the order.
Swapping for something more expensive — an order placed in March for item A at $100; in April you swap A for item B worth $120.
Substitution date: April shows a +$120 change and a −$100 reversal.
Order date: March restates to $120, and April shows nothing for this order.
Swapping for something cheaper — an order placed for $100; you later swap it for a $70 item.
Order date: the order's date records $70, the amount your customer actually paid. Revenue for that period goes down.
Editing several times — an order edited twice, on two different days.
Order date: the order's date records the final value only. The edit days record nothing, and no amount is counted twice.
Changing quantity, or adding and removing items — these count as edits too.
Order date: the order's date records the final number of units and the final value.
What isn't covered
Each option solves half the problem. Substitution date leaves your past reports untouched but keeps the phantom reversal. Order date removes the reversal but restates the period containing the order date — if you have already closed your books for that period, those numbers will change.
Turning Order date on re-reads your history. The first time you save it, every order that was ever edited switches to the new treatment at once. This happens once, only when you choose it, and switching back restores the previous view.
Edits that only change the shipping fee keep the default treatment — the order's date keeps the original fee, and the edit day records the difference.
Edits that do change products fold that edit's shipping change in with the rest of the order.
