Returns APIs have inconsistent side effects on Sales Reports

Topic summary

A developer working with Shopify’s Returns & Exchanges API has identified inconsistent behavior in how return and refund operations affect sales reports in Shopify Analytics.

Three distinct patterns observed:

  • Example 1: returnCreate does NOT affect sales reports, but refundCreate DOES
  • Example 2: returnCreate DOES affect sales reports, but refundCreate does NOT
  • Example 3: Both returnCreate and refundCreate affect sales reports

Key concern: The unpredictable side effects make it difficult to maintain accurate sales reporting when processing returns through the API.

The developer has provided detailed timelines with specific dates and SKU examples for each scenario, along with screenshots demonstrating the inconsistent impacts on sales data. They are seeking clarification on why these different behaviors occur and how to predict or control the API’s effect on analytics.

Status: Question remains unanswered; awaiting response from Shopify or community members with insight into the Returns & Exchanges API behavior.

Summarized with AI on November 4. AI used: claude-sonnet-4-5-20250929.

I work on a Shopify Returns App that heavily uses the Returns & Exchanges API. I am writing this message to ask for some clarification around unexpected behaviours that I noticed when using the API. I am referring specifically to how the Shopify Analytics (i.e., sales reports) are affected by the usage of the Returns & Exchanges API.

What you will see in the following examples is that, sometimes the returnCreate action does not affect the sales report while the refundCreate action does (Example 1), sometimes the returnCreate action does affect the sales report while the refundCreate action does not (Example 2), and sometimes both actions affect the sales report (Example 3).

Please see the examples below and see if you have any idea why we see these different behaviours. Thanks.

Example 1 (Refund action affects sales report):

Timeline:

  1. Sep 29: Two items were purchased, their SKUs prefixed with “S2199” and “ROU”
  2. Oct 15: We created a return using returnCreate for “S2199”, and clearly the sales report was NOT affected
  3. Oct 17: We created a refund using refundCreate, and clearly the sales report WAS affected

Example 2 (Return action affects sales report):

Timeline:

  1. Oct 13: Three items were purchased, their SKUs are “12757”, “10188”, and “11333”
  2. Oct 22: We created a return using returnCreate for “11333”, and clearly the sales report WAS affected
  3. Oct 24: We created a refund using refundCreate, and clearly the sales report was NOT affected

Example 3 (Return action AND Refund action affects sales report):

Timeline:

  1. Sep 15: Two items were purchased, their SKUs are “12488” and “12490”
  2. Oct 2: We created a return using returnCreate, and clearly the sales report WAS affected
  3. Oct 8: We created a refund using refundCreate, and clearly the sales report WAS affected AGAIN, doubly decreasing the quantity of the return items!