---
title: "Display receipt options"
method: POST
path: "/v1/device/receipt-options"
tags: ["RECEIPTS"]
---

# Display receipt options

`POST /v1/device/receipt-options`

Presents the customer with choices for their transaction receipt.

## Headers

- `User-Agent` string, required
- `X-Clover-Device-Id` string, required
- `X-POS-Id` string, required
- `X-Clover-Timeout` integer
- `Idempotency-Key` string

## Request body

- ReceiptOptionsRequest
  - `deliveryOptions` ReceiptDeliveryOption[] — A list of options that will be displayed. Note that the options of type 'NO_RECEIPT' and 'PRINT' are always present and will always be available regardless of whether or not they are present.
    - `additionalData` string — Additional data that can be passed in the request for certain delivery types. For method EMAIL the additionalData will pre-populate the email field in the customer facing UI. For method SMS the additionalData will pre-populate the phone number field in the customer facing UI.
    - `method` 'NO_RECEIPT' | 'PRINT' | 'EMAIL' | 'SMS'
  - `message` string — Message to display on the receipt options screen.

## Response `200`

A valid ReceiptOptionsResponse

- ReceiptOptionsResponse
  - `deliveryOption` ReceiptDeliveryOption[]
    - `additionalData` string — Additional data that can be passed in the request for certain delivery types. For method EMAIL the additionalData will pre-populate the email field in the customer facing UI. For method SMS the additionalData will pre-populate the phone number field in the customer facing UI.
    - `method` 'NO_RECEIPT' | 'PRINT' | 'EMAIL' | 'SMS'

## Other responses

- `209` — Operation was canceled.
- `400` — The request is invalid, and subsequent calls will continue to fail; do not repeat the call.
- `401` — An invalid bearer token has been provided. The call may be repeated if the provided bearer token is updated.
- `415` — The request is invalid, and contains request data in an unsupported format. This call may be repeated if the content is changed to a supported format.
- `500` — The request processing failed with an unknown error, and the processing state of the operation is indeterminate. Do not repeat the call without additional analysis.
- `501` — The device does not have the ability to respond to the requested operation; do not repeat the call.
- `503` — The device is not available because it is currently servicing another call. This can be repeated at a later time, or cancel may be called to end the current operation.
- `504` — The Device did not respond in a timely manner. This can be repeated at a later time.

---

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