> For the complete documentation index, see [llms.txt](https://docs.xorosoft.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.xorosoft.com/xoroerp-1/connected-apps/shopify/shopify-returns/shopify-exchanges/equal-value-exchange.md).

# Equal-Value Exchange

### **Overview**

An equal-value exchange allows a customer to return an item and receive the same item as a replacement without creating an additional payment or refund. In this workflow, Loop recommends replacing the returned item with the same item, and Xoro creates a new Exchange Order with a **$0.00** value.

### Workflow

**Step 1:** Create a Sales Order in Shopify by adding the required product and customer information. Ensure that the order is **Paid** and **Fulfilled**.

<figure><img src="https://3188343778-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fkf8DNCjEfcSm64PCPcmf%2Fuploads%2Fwq5sg7LXEGzgXtMmikwf%2Fimage.png?alt=media&amp;token=f52f0abb-1daa-4935-831a-5d88404ae6fd" alt=""><figcaption></figcaption></figure>

**Step 2:** In Xoro, navigate to **Shopify Channel → Orders → Actions → Import by Order**. Enter the Shopify Order Number and click **Import**. The corresponding Sales Order is created in Xoro.

<figure><img src="https://3188343778-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fkf8DNCjEfcSm64PCPcmf%2Fuploads%2FNLeZmPV1Pa13SbZEuVBG%2Fimage.png?alt=media&amp;token=b5d6ae3d-93ae-4a22-81da-c7eb3e9179e3" alt=""><figcaption></figcaption></figure>

<figure><img src="https://3188343778-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fkf8DNCjEfcSm64PCPcmf%2Fuploads%2FjLDFY5TC8iUgq67reAGG%2Fimage.png?alt=media&amp;token=12514219-a354-42e9-a8b1-f5819ddc7f6f" alt=""><figcaption></figcaption></figure>

**Step 3:** In Loop, navigate to **Returns Management → Returns → Find an order** and search for the Shopify Order Number. Locate the order and click **Start Return**.

<figure><img src="https://3188343778-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fkf8DNCjEfcSm64PCPcmf%2Fuploads%2FTbGWVQDaQ6dEp23Cawox%2Fimage.png?alt=media&amp;token=51fc7cba-fdda-4c7c-8e77-c6d15e72bbd4" alt=""><figcaption></figcaption></figure>

**Step 4:** On the **Select an item to return** page, select the item to be returned.

<figure><img src="https://3188343778-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fkf8DNCjEfcSm64PCPcmf%2Fuploads%2FNZJ0tVsMuXA3VflBBPoK%2Fimage.png?alt=media&amp;token=2581db53-b033-4abb-87f5-726d9309fb30" alt=""><figcaption></figcaption></figure>

**Step 5:** Select the applicable **Return reasons** and click **Continue**.

<figure><img src="https://3188343778-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fkf8DNCjEfcSm64PCPcmf%2Fuploads%2FqtOPlvZI4VrvZ2JRzGQG%2Fimage.png?alt=media&amp;token=70bc21d4-f448-4162-8422-77fa3e8ea74c" alt=""><figcaption></figcaption></figure>

**Step 6:** Under **How would you like to proceed?**, select the option suggested in the **Best match** textbox.

<figure><img src="https://3188343778-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fkf8DNCjEfcSm64PCPcmf%2Fuploads%2FtLQClXnGkHSqsGWCu0Tx%2Fimage.png?alt=media&amp;token=c124af9a-d3e0-4f40-a7f4-5a04d27a5c79" alt=""><figcaption></figcaption></figure>

**Step 7:** Loop suggests a replacement for the returned item. Click **Confirm item**.

<figure><img src="https://3188343778-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fkf8DNCjEfcSm64PCPcmf%2Fuploads%2FgY0cmW7F1m8zANq7NZTQ%2Fimage.png?alt=media&amp;token=671ebeb2-1a5f-4426-a58b-ea8561826e02" alt=""><figcaption></figcaption></figure>

**Step 8:** Review the return information, select the checkbox confirming that the return policy has been reviewed, and click **Submit return**.

<figure><img src="https://3188343778-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fkf8DNCjEfcSm64PCPcmf%2Fuploads%2FyMLJflKBKWBBBtMopKyA%2Fimage.png?alt=media&amp;token=c4c86f7f-1565-4c7e-a275-51b57d8cecac" alt=""><figcaption></figcaption></figure>

**Step 9:** After the return is submitted, review the return confirmation details, including the **Return address**, **Return instructions**, returned item, replacement item, and customer information.

**Step 10:** In Xoro, navigate to **Shopify Channel → RMA** and verify that the RMA has been successfully synced with the respective return.

<figure><img src="https://3188343778-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fkf8DNCjEfcSm64PCPcmf%2Fuploads%2FAAE0QexyiuufyrifspAM%2Fimage.png?alt=media&amp;token=6e67a9bc-b85f-4c9c-8d85-54314f7eebb5" alt=""><figcaption></figcaption></figure>

**Step 11:** In **Return Processing**, locate the return and review the return details. The return should show the **Exchange** outcome.

<figure><img src="https://3188343778-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fkf8DNCjEfcSm64PCPcmf%2Fuploads%2FlZLHMqK1wHGKXhjTjEW8%2Fimage.png?alt=media&amp;token=bfc81b9d-495f-47cc-985e-1981851763f9" alt=""><figcaption></figcaption></figure>

**Step 12:** Click the return record and select **Process items** to process the returned item. Once the return is successfully processed, its status changes to **Closed**.

<figure><img src="https://3188343778-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fkf8DNCjEfcSm64PCPcmf%2Fuploads%2FggNJ8Rh1IHdS51LmxJ7Q%2Fimage.png?alt=media&amp;token=5c9db181-67fa-4a43-8025-7883a7ebf561" alt=""><figcaption></figcaption></figure>

<figure><img src="https://3188343778-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fkf8DNCjEfcSm64PCPcmf%2Fuploads%2FufN45THptk7MISayP3uX%2Fimage.png?alt=media&amp;token=11f76a64-5cda-44b5-bc32-01c7e899c5e1" alt=""><figcaption></figcaption></figure>

**Step 13:** Once the item is fully received and the return is closed, reimport the Shopify order from **Shopify Channel → Orders → Actions → Import by Order**.

**Step 14:** In Xoro, verify that an **Exchange Order** has been created for the replacement item instead of creating any memo against the existing Sales Order.

<figure><img src="https://3188343778-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fkf8DNCjEfcSm64PCPcmf%2Fuploads%2FJOOrYpXqFPoAP3xzVBHp%2Fimage.png?alt=media&amp;token=d855bd66-68a1-4db5-8fc4-d301f2695ac1" alt=""><figcaption></figcaption></figure>

Open the Exchange Order and verify that its total value is **$0.00**, confirming that the replacement item is of equal value to the returned item.

<figure><img src="https://3188343778-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fkf8DNCjEfcSm64PCPcmf%2Fuploads%2FjZh7rNyQxm6y9j8MhKdX%2Fimage.png?alt=media&amp;token=b877abb6-41fd-4ec6-93a0-abc2fbc838ec" alt=""><figcaption></figcaption></figure>


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.xorosoft.com/xoroerp-1/connected-apps/shopify/shopify-returns/shopify-exchanges/equal-value-exchange.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
