# Void

{% hint style="info" %}
An authorization can be voided before it is captured if the payment is no longer needed.
{% endhint %}

## Void Authorization

<mark style="color:green;">`POST`</mark> `https://gateway-test.pagsmile.com/trade/void`

This endpoint allows you to void an authorization.

#### Headers

| Name                                            | Type   | Description                                |
| ----------------------------------------------- | ------ | ------------------------------------------ |
| Content-Type<mark style="color:red;">\*</mark>  | string | application/json; chartset=UTF-8           |
| Authorization<mark style="color:red;">\*</mark> | string | Basic Base($app\_*id:$security\_*&#x6B;ey) |

#### Request Body

| Name                                             | Type   | Description                                                           |
| ------------------------------------------------ | ------ | --------------------------------------------------------------------- |
| app\_id<mark style="color:red;">\*</mark>        | string | <p>created app's id at dashboard</p><p>- Max. 32 chars -</p>          |
| timestamp<mark style="color:red;">\*</mark>      | string | <p>yyyy-MM-dd HH:mm:ss<br>- Max. 19 chars -</p>                       |
| version                                          | string | fixed value: 2.0                                                      |
| out\_trade\_no<mark style="color:red;">\*</mark> | string | <p>ID given by the merchant in their system<br>- Max. 64 chars - </p> |

{% tabs %}
{% tab title="200: OK submit successfully" %}

```json
{
    "msg": "Success",
    "code": "10000"
}
```

{% endtab %}

{% tab title="400: Bad Request failed" %}

```json
{
    "msg": "Business Failed",
    "code": "40002"
}
```

{% endtab %}
{% endtabs %}

{% hint style="info" %}
If the pre-authorization is voided, a callback with `"trade_status":"CANCEL"` will be sent.
{% endhint %}

### Example

```
curl --location --request POST 'https://gateway-test.pagsmile.com/trade/void' \
--header 'Authorization: Basic MTYyNTgyOTIxNDUzMTY2Mzg6UGFnc21pbGVfc2tfZDUwMWQ1ZGNkNTI5OGQ5N2MwNmUzYjI4YjA2OWZjZmY3NDU5ZjY2NzNiMjFjMTFlYTY3NDM5MDgzOTZkOTYxNQ==' \
--header 'Content-Type: application/json' \
--data-raw '{
    "app_id": "1617****052",
    "timestamp": "2022-08-11 16:17:36",
    "version": "2.0",
    "out_trade_no": "836***93"
}'
```

{% hint style="info" %}
Note:  **162\*\*\*\*\*\*\*\*\*\*\*\*38** is pagsmile's test app id for sandbox, and **MTYyNTgyOTIxNDUzMTY2Mzg6UGFnc21pbGVfc2tfZDUwMWQ1ZGNkNTI5OGQ5N2MwNmUzYjI4YjA2OWZjZmY3NDU5ZjY2NzNiMjFjMTFlYTY3NDM5MDgzOTZkOTYxNQ==** is authorization token associated with the test app id.&#x20;
{% endhint %}

{% hint style="danger" %}
Please use your own **app\_id** and generate your own **authorization token** when testing.
{% endhint %}
