---
title: "Terminate a Reader Checkout"
method: POST
path: "/v0.1/merchants/{merchant_code}/readers/{reader_id}/terminate"
tags: ["Readers"]
---

# Terminate a Reader Checkout

`POST /v0.1/merchants/{merchant_code}/readers/{reader_id}/terminate`

Terminate a Reader Checkout stops the current transaction on the target device.

This process is asynchronous and the actual termination may take some time to be performed on the device.


There are some caveats when using this endpoint:
* The target device must be online, otherwise terminate won't be accepted
* The action will succeed only if the device is waiting for cardholder action: e.g: waiting for card, waiting for PIN, etc.
* There is no confirmation of the termination.

If a transaction is successfully terminated and `return_url` was provided on Checkout, the transaction status will be sent as `failed` to the provided URL.


**Note**: If the target device is a Solo, it must be in version 3.3.28.0 or higher.

## Path parameters

- `merchant_code` string, required
- `reader_id` string, required

## Response `202`

The Terminate action was successfully dispatched for the given reader.

## Other responses

- `400` — Response when given params (or one of them) are invalid
- `401` — Unauthorized
- `404` — Response when given reader is not found
- `422` — Response when given params (or one of them) are invalid

## Changes

- **2026-03-11** `cd79d83b07e0` — 7 info
  - added the media type `application/problem+json` for the response with the status `400`
  - added the media type `application/problem+json` for the response with the status `401`
  - added the media type `application/problem+json` for the response with the status `422`
  - added the non-success response with the status `404`
  - …3 more
- **2026-02-25** `bef1083e0580` — 5 info
  - added the required property `errors/type` to the response with the `400` status
  - added the required property `errors/type` to the response with the `401` status
  - added the required property `errors/type` to the response with the `500` status
  - added the required property `errors/type` to the response with the `502` status
  - …1 more

[Change history](https://skmtc.dev/sumup/apis/sumup-rest-api/changes/v0.1/merchants/:merchant_code/readers/:reader_id/terminate/post.md)

---

[API](https://skmtc.dev/sumup/apis/sumup-rest-api.md) · [All operations](https://skmtc.dev/sumup/apis/sumup-rest-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/sumup/sumup-rest-api/revisions/b050b86c35d1/schema)
