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

# Display receipt options

`POST /v1/device/receipt-options`

## Request

- Base URL: `https://deviceIpOrHost:12346/connect`
- URL: `https://deviceIpOrHost:12346/connect/v1/device/receipt-options`
- Auth: HTTP bearer

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.dev/clover/apis/clover-card-present-rest-api.md) - [All operations](https://skmtc.dev/clover/apis/clover-card-present-rest-api/llms.txt) - [OpenAPI document](https://skmtc.dev/clover/apis/clover-card-present-rest-api/revisions/5f7829c5114f?raw)
