# Returns

In case a customer is not satisfied with the product, they can call the merchant (customer service) and ask for a return of a complete order, partial order or from different orders for different products.

<figure><img src="/files/NPMYS7pk1nSYVQbG35Wk" alt="" width="400"><figcaption></figcaption></figure>

### Scenario - Customer calls Merchant Support to return items

A customer created several orders with several items. After the delivery the customer calls the merchant customer service to ask for a return of one or more items.

1. As a customer service employee, log in to the Management Dashboard and open the returns overview page.

<figure><img src="/files/aoggo6VEyNyQRbhwLTTp" alt=""><figcaption></figcaption></figure>

2. To open the edit mode, click the **Create return** button.
3. Select the order you want to make a return for:

**a. Existing customers:** Select the corresponding customer from the list.

<figure><img src="/files/6Fuxhjexiib6TKGKANEJ" alt=""><figcaption></figcaption></figure>

{% hint style="warning" %}
Only one customer can be selected and for that customer returns can be created.
{% endhint %}

After selecting the customer, go to the **Orders** tab to select the orders which the customer wants to create the return for.

<figure><img src="/files/qwp5cpCAdyHxfH9A2yQb" alt=""><figcaption></figcaption></figure>

**b. Guest customers:** Go to **Orders** tab to find the relevant order. You can filter the orders by email from the purchase.

<figure><img src="/files/1hzdZ1HN8K0UEJjghuMu" alt=""><figcaption></figcaption></figure>

{% hint style="warning" %}
If you don't select any customer in the **Customer** tab, the **Orders** tab shows **only** the orders created by the **guest** customers.
{% endhint %}

4. In the **Products** tab, all the related products are displayed for these selected orders. The following screen shows the selected orders and the corresponding products.

<figure><img src="/files/zI3AvI9xrvQW08nB4eMp" alt=""><figcaption></figcaption></figure>

{% hint style="danger" %}
All the products that you want to return have to be selected. It is possible to decide if the same **reason code** & **reason details** is used for all products. The reason code on header level is mandatory. Reason codes are provided on product level.
{% endhint %}

If different reason codes and reason details are necessary, it is possible to maintain a different reason for separate materials.

5. Select the products which should be returned. With selecting the items the pricing calculation takes place.

   <figure><img src="/files/r5aMHiYDwbbfrUmpGh5F" alt=""><figcaption></figcaption></figure>

{% hint style="warning" %}
If the ordered quantity is greater than one, only a partial quantity can be returned.
{% endhint %}

6. The return total is calculated with the selected products. Within the last step, in the **review** tab, it is possible to check the whole return.

<figure><img src="/files/zKFdt4dgzkZXvebgh3LE" alt=""><figcaption></figcaption></figure>

Check the return under **review** and save the return.

**Result**: After saving the return it is visible under the **Returns** overview with status pending.

<figure><img src="/files/2n3FtlgyuPWps4lFZG9Q" alt=""><figcaption></figcaption></figure>

{% hint style="warning" %}
By default, the validity of the return is set to 30 days.
{% endhint %}

7. It is possible to change the statuses within the details of the return.

Let's assume everything is booked in the corresponding backend systems (integration work for a project). The status is selected and set to **Approved** within the Management Dashboard.

<figure><img src="/files/9KrTVUVZhtjXEuH6ZoJA" alt=""><figcaption></figcaption></figure>

8. Save the return, the status gets updated.

<figure><img src="/files/SbGz5ODGzTGb4VurQcAl" alt=""><figcaption></figcaption></figure>

### Scenario - Customer creates a return from the storefront

Within this scenario, we provide the possibility to enable the self service for your customer. This means your customer is able to create a return from your storefront.

1. Customer logs in and opens the **My Orders** overview under **My Account**.

<figure><img src="/files/wd3i9XsHyl8F08Bq1Pbh" alt=""><figcaption></figcaption></figure>

{% hint style="warning" %}
In the case when a guest customer wants to return the purchased item, they need to register with the email address provided at checkout and to create a customer account. After logging in, the customer is able to see the orders history associated with the email.
{% endhint %}

2. The customer clicks on **Return** and the order that is to be returned is opened.

{% hint style="danger" %}
You can only decrease the quantity. A return reason (reason code) is mandatory. The text (reason details) is optional.
{% endhint %}

<figure><img src="/files/5HwYIXrvs7TUVC3ZLtxw" alt="" width="500"><figcaption></figcaption></figure>

3. The customer clicks the **Submit return** button, a return is created within the showcase and Management Dashboard.

* Storefront view:

{% hint style="info" %}
In a real scenario, an email notification is sent out to the merchant to notify them regarding the created return.
{% endhint %}

<figure><img src="/files/UXPAq8zALMWlZquZBRKQ" alt=""><figcaption></figcaption></figure>

* Backend view:\
  Overview page - return is created with status pending

<figure><img src="/files/eA223X9KZRyEKdNgb8g5" alt=""><figcaption></figcaption></figure>

* Return details:

<figure><img src="/files/2djqglRE19wChQnqxJ4i" alt=""><figcaption></figcaption></figure>

4. The employee can decide if the return is rejected, approved or just closed. In this case, the return is approved.

{% hint style="info" %}
At the moment no cancellation reason can be maintained by the employee. In a real scenario an email notification is sent out to the customer after the merchant rejects the return.
{% endhint %}

5. The status is updated for the customer under **My Account** → **My Returns**.

Return details:

<figure><img src="/files/XQYyJeVYKCFOLWxS0CXx" alt=""><figcaption></figcaption></figure>

It is not possible to create a second return for the same order in the showcase.

{% hint style="info" %}
To learn more about API used in this use case see the [Returns Service](/api-references/api-guides/orders/returns.md) and for user guides check the [Returns](/ce/core-commerce/returns.md) documentation.
{% endhint %}


---

# Agent Instructions: Querying This Documentation

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

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://developer.emporix.io/ce/customer-use-cases/scenarios-introduction/returns-process.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
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.
