# Refunds

To request for a Zapper refund, the Zapper ID (unique Zapper payment identifier) is required. The Zapper ID may be obtained in 1 of 2 ways:&#x20;

1. &#x20;Zapper provides the Zapper ID in the body of a payment notification. An integration may store the Zapper ID against the payment and retrieve it if necessary for the refund request.&#x20;
2. The Customer may be asked to provide the Zapper ID referring to the "Payment History" on the Zapper application.

## Refunds

<mark style="color:green;">`POST`</mark> `https://api.zapper.com/business/api/v1/merchants/{merchantId}/refunds`

This endpoint allows you to request a Zapper refund on the customer's behalf.

#### Path Parameters

| Name       | Type   | Description              |
| ---------- | ------ | ------------------------ |
| merchantId | string | The merchant identifier. |

#### Query Parameters

| Name     | Type   | Description                   |
| -------- | ------ | ----------------------------- |
| zapperId | string | The Zapper payment identifier |

#### Headers

| Name          | Type   | Description                                |
| ------------- | ------ | ------------------------------------------ |
| Authorization | string | Bearer \<integration authentication token> |

#### Request Body

| Name                     | Type   | Description                                                                                         |
| ------------------------ | ------ | --------------------------------------------------------------------------------------------------- |
| invoiceCreatedUTCDate    | string | The UTC date when the invoice was created.                                                          |
| invoiceExternalReference | string | The external reference for an invoice (e.g. The merchant's invoice reference)                       |
| origin Reference         | string | The unique identifier for the integration                                                           |
| origin                   | string | The integration source (e.g the name of the integration/POS/store to help identify the integration) |
| amount                   | string | The refund amount being requested in cents (must not exceed the processed amount)                   |

{% tabs %}
{% tab title="200 Refund request successful." %}

```
```

{% endtab %}

{% tab title="400 Invalid Zapper ID or amount requested is greater than processed amount" %}

```
```

{% endtab %}

{% tab title="403 Authorization token not provided or invalid" %}

```
{
    "Message": "User is not authorized to access this resource with an explicit deny"
}
```

{% endtab %}

{% tab title="500 Internal Server Error" %}

```
```

{% endtab %}
{% endtabs %}
