---
title: "Cancel a pending manual approval"
method: DELETE
path: "/pay/{id}/approval"
tags: ["Payins"]
---

# Cancel a pending manual approval

`DELETE /pay/{id}/approval`

Cancels a pending or approved manual approval for a Tier 4 payin transaction,
setting it to REJECTED state.

Use this endpoint when a platform or shopper wants to withdraw a transaction
that is awaiting compliance review. Once cancelled, the transaction cannot
be reinstated — a new `POST /pay/rfq` must be issued.

The `merchant_code` query parameter is optional. When omitted, the
authenticated platform code is used as the merchant identifier.

## Path parameters

- `id` string, required

## Query parameters

- `participant_code` string, required
- `merchant_code` string

## Headers

- `X-SCX-SIGNED` string, required
- `X-SCX-TIMESTAMP` string, required

## Response `204`

Approval successfully cancelled.

## Other responses

- `400` — Approval is already in a terminal state (FINALIZED or REJECTED) and cannot be cancelled (authorizer FAILED_PRECONDITION). The body carries the error message.
- `403` — Forbidden
- `404` — No cancellable approval found for the given transaction ID and participant.
- `500` — Internal Server Error
- `503` — Service Unavailable

---

[API](https://skmtc.net/zerohash/apis/zerohash-api.md) · [All operations](https://skmtc.net/zerohash/apis/zerohash-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/zerohash/zerohash-api/revisions/8b647d934363/schema)
