# Terminals API(1.0.1)

Welcome to the Terminals API documentation!

## Introduction

This is the reference documentation and schemas for the Residuals API.

## Authentication

The platform uses API Keys to manage access to the API. You can pass the API key in the `x-api-key` header to the request. Talk to your sales rep about acquiring these API keys. Authorization is done via headers. You should pass the API key as the value to the `x-api-key` header. For example, `x-api-key: ${API_KEY}`. Please note that you will be given 2 API keys, one public key and one private key. Use the private key for all server-to-server communication. The public key is used for interfacing with the JS SDK.

## Terminals

### post/terminals/fiserv/ping

##### Request Body schema: application/json

Body

|     |     |
| --- | --- |
| hsn<br>required | string |

### Responses

**200**

**400**

**401**

**403**

**500**

- **Request samples**
> Content type
> 
> `{"hsn": "string"}`

- **Response samples**
> Content type
>
> `{"connected": true}`

### post/terminals/fiserv/list_terminals

### Responses

**200**

**400**

**401**

**403**

**500**

- **Response samples**
> Content type
>
> `{"terminals": ["string"]}`

### post/terminals/fiserv/terminal_details

### Responses

**200**

**400**

**401**

**403**

**500**

- **Response samples**
> Content type
>
> `{"terminal_details": [{"hsn": "string","name": "string","connected": true,"device_type": "string","environment": "string","device_capabilities": {"screen_dimension_x": 0,"screen_dimension_y": 0,"pin_pad": true,"msr": true,"emv": true,"nfc": true,"signature": true,"printer": true}}]}`

### post/terminals/fiserv/date_time

##### Request Body schema: application/json

Body

|     |     |
| --- | --- |
| hsn<br>required | string |
| date_time<br>required | string |

### Responses

**200**

**400**

**401**

**403**

**500**

- **Request samples**
> Content type
> 
> `{"hsn": "string", "date_time": "string"}`

- **Response samples**
> Content type
>
> `{"date_time": "string"}`

### post/terminals/fiserv/get_pan_pad_version

##### header Parameters

|     |     |
| --- | --- |
| x-session-key<br>required | string |

##### Request Body schema: application/json

Body

|     |     |
| --- | --- |
| hsn<br>required | string |

### Responses

**200**

**400**

**401**

**403**

**500**

- **Request samples**
> Content type
> 
> `{"hsn": "string"}`

- **Response samples**
> Content type
>
> `{"version": "string"}`

### post/terminals/fiserv/connect

##### Request Body schema: application/json

Body

|     |     |
| --- | --- |
| hsn<br>required | string |
| force | boolean |

### Responses

**200**

**400**

**401**

**403**

**500**

- **Request samples**
> Content type
> 
> `{"hsn": "string", "force": true}`

- **Response samples**
> Content type
>
> `{"key": "string", "expires": "string"}`

### post/terminals/fiserv/disconnect

##### header Parameters

|     |     |
| --- | --- |
| x-session-key<br>required | string |

##### Request Body schema: application/json

Body

|     |     |
| --- | --- |
| hsn<br>required | string |

### Responses

**200**

**400**

**401**

**403**

**500**

- **Request samples**
> Content type
> 
> `{"hsn": "string"}`

- **Response samples**
> Content type
>
> `{"disconnected": true}`

### post/terminals/fiserv/display

##### header Parameters

|     |     |
| --- | --- |
| x-session-key<br>required | string |

##### Request Body schema: application/json

Body

|     |     |
| --- | --- |
| hsn<br>required | string |
| text<br>required | string |

### Responses

**200**

**400**

**401**

**403**

**500**

- **Request samples**
> Content type
> 
> `{"hsn": "string", "text": "string"}`

- **Response samples**
> Content type
>
> `{"text": "string"}`

### post/terminals/fiserv/clear_display

##### header Parameters

|     |     |
| --- | --- |
| x-session-key<br>required | string |

##### Request Body schema: application/json

Body

|     |     |
| --- | --- |
| hsn<br>required | string |

### Responses

**200**

**400**

**401**

**403**

**500**

- **Request samples**
> Content type
> 
> `{"hsn": "string"}`

- **Response samples**
> Content type
>
> `{"cleared": true}`

### post/terminals/fiserv/read_confirmation

##### Request Body schema: application/json

Body

|     |     |
| --- | --- |
| hsn<br>required | string |
| prompt<br>required | string |
| beep | boolean |

### Responses

**200**

**400**

**401**

**403**

**500**

- **Request samples**
> Content type
> 
> `{"hsn": "string", "prompt": "string", "beep": true}`

- **Response samples**
> Content type
>
> `{"confirmed": true}`

### post/terminals/fiserv/read_input

##### header Parameters

|     |     |
| --- | --- |
| x-session-key<br>required | string |

##### Request Body schema: application/json

Body

|     |     |
| --- | --- |
| hsn<br>required | string |
| prompt<br>required | string |
| format<br>required | string or string or string or string or string |
| beep | boolean |

### Responses

**200**

**400**

**401**

**403**

**500**

- **Request samples**
> Content type
> 
> `{"hsn": "string", "prompt": "string", "format": "PHONE", "beep": true}`

- **Response samples**
> Content type
>
> `{"input": "string"}`

### post/terminals/fiserv/read_signature

##### Request Body schema: application/json

Body

|     |     |
| --- | --- |
| hsn<br>required | string |
| prompt<br>required | string |
| gzip_signature | string<br>Enum:"true""false" |
| signature_format | string<br>Enum:"png""bmp""jpg" |
| signature_image_type | string<br>Enum:"binary""rgb" |
| signature_dimensions | string^\d+,\d+$ |

### Responses

**200**

**400**

**401**

**403**

**500**

- **Request samples**
> Content type
> 
> `{"hsn": "string", "prompt": "string", "gzip_signature": "true", "signature_format": "png", "signature_image_type": "binary", "signature_dimensions": "string"}`

- **Response samples**
> Content type
>
> `{"signature": "string"}`

### post/terminals/fiserv/cancel

##### Request Body schema: application/json

Body

|     |     |
| --- | --- |
| hsn<br>required | string |

### Responses

**200**

**400**

**401**

**403**

**500**

- **Request samples**
> Content type
> 
> `{"hsn": "string"}`

- **Response samples**
> Content type
>
> `{"cancelled": true}`

### post/terminals/fiserv/print_receipt

##### Request Body schema: application/json

Body

|     |     |
| --- | --- |
| hsn<br>required | string |
| print_extra_receipt | boolean |
| print_delay | integer |
| payment_id<br>required | string |

### Responses

**200**

**400**

**401**

**403**

**500**

- **Request samples**
> Content type
> 
> `{"hsn": "string", "print_extra_receipt": true, "print_delay": 0, "payment_id": "string"}`

- **Response samples**
> Content type
>
> `{"receipt_data": {"dba": "string","address1": "string","address2": "string","phone": "string","header": "string","order_note": "string","date_time": "string","items": "string","name_on_card": "string","footer": "string"}}`

### post/terminals/fiserv/read_card

##### Request Body schema: application/json

Body

|     |     |
| --- | --- |
| hsn<br>required | string |
| amount<br>required | integer |
| include_amount_display | boolean |
| confirm_amount | boolean |
| include_signature | boolean |
| signature_format | string<br>Enum:"png""bmp""jpg" |
| gzip_signature | boolean |
| signature_dimensions | string^\d+,\d+$ |
| signature_image_type | string<br>Enum:"binary""rgb" |
| beep | boolean |
| aid | string<br>Enum:"debit""credit" |
| include_pin | boolean |

### Responses

**200**

**400**

**401**

**403**

**500**

- **Request samples**
> Content type
> 
> `{"hsn": "string", "amount": 0, "include_amount_display": true, "confirm_amount": true, "include_signature": true, "signature_format": "png", "gzip_signature": true, "signature_dimensions": "string", "signature_image_type": "binary", "beep": true, "aid": "debit", "include_pin": true}`

- **Response samples**
> Content type
>
> `{"id": "string","entity": "payment_method","created_at": "string","updated_at": "string","payment_method_type": "card","source_type": "cardpointe","billing_details": {"name": "string"},"card": {"last_four_digits": "string","brand": "visa","exp_month": "string","exp_year": "string","reuse_eligible": true},"signature": "string","single_use_token": true}`

### post/terminals/fiserv/read_manual

##### Request Body schema: application/json

Body

|     |     |
| --- | --- |
| hsn<br>required | string |
| amount<br>required | integer |
| include_signature | boolean |
| signature_format | string<br>Enum:"png""bmp""jpg" |
| gzip_signature | boolean |
| signature_dimensions | string^\d+,\d+$ |
| signature_image_type | string<br>Enum:"binary""rgb" |
| include_expiration_date | boolean |
| beep | boolean |

### Responses

**200**

**400**

**401**

**403**

**500**

- **Request samples**
> Content type
> 
> `{"hsn": "string", "amount": 0, "include_signature": true, "signature_format": "png", "gzip_signature": true, "signature_dimensions": "string", "signature_image_type": "binary", "include_expiration_date": true, "beep": true}`

- **Response samples**
> Content type
>
> `{"id": "string","entity": "payment_method","created_at": "string","updated_at": "string","payment_method_type": "card","source_type": "cardpointe","card": {"last_four_digits": "string","brand": "visa","exp_month": "string","exp_year": "string","reuse_eligible": true},"single_use_token": true}`

### post/terminals/fiserv/auth_card

##### Request Body schema: application/json

Body

|     |     |
| --- | --- |
| hsn<br>required | string |
| aid | string<br>Enum:"debit""credit" |
| auth_code | string |
| bin | string |
| print_receipt | boolean |
| include_signature | boolean |
| include_amount_display | boolean |
| beep | boolean |
| include_avs | boolean |
| include_pin | boolean |
| gzip_signature | boolean |
| clear_display_delay | integer |
| print_delay | integer |
| print_extra_receipt | boolean |
| signature_dimensions | string^\d+,\d+$ |
| signature_format | string<br>Enum:"png""bmp""jpg" |
| signature_image_type | string<br>Enum:"binary""rgb" |
| confirm_amount | boolean |
| payment_intent_id<br>required | stringnon-empty<br>Payment Intent ID |
| receipt_header | string |
| receipt_footer | string |
| receipt_dba | string |
| receipt_phone | string |
| receipt_address1 | string |
| receipt_address2 | string |

### Responses

**200**

**400**

**401**

**403**

**500**

- **Request samples**
> Content type
> 
> `{"hsn": "string","aid": "debit","auth_code": "string","bin": "string","print_receipt": true,"include_signature": true,"include_amount_display": true,"beep": true,"include_avs": true,"include_pin": true,"gzip_signature": true,"clear_display_delay": 0,"print_delay": 0,"print_extra_receipt": true,"signature_dimensions": "string","signature_format": "png","signature_image_type": "binary","confirm_amount": true,"payment_intent_id": "string","receipt_header": "string","receipt_footer": "string","receipt_dba": "string","receipt_phone": "string","receipt_address1": "string","receipt_address2": "string"}`

- **Response samples**
> Content type
>
> `{"id": "string","entity": "payment","status": "pending","billing_details": null,"amount": 0,"amount_authorized": 0,"amount_captured": 0,"amount_refunded": 0,"amount_voided": 0,"amount_disputed": 0,"amount_reversed": 0,"cvv": "M","avs": "A","address_line1_check": "pass","address_postal_code_check": "pass","cvv_check": "pass","entry_mode": "keyed","reversed": true,"reversal_id": "string","disputed": true,"dispute_id": "string","payment_intent_id": "string","payment_method_id": "string","payment_method": {"id": "string","entity": "payment_method","created_at": "string","updated_at": "string","payment_method_type": "card","source_type": "cardpointe","billing_details": {"name": "string"},"card": {"last_four_digits": "string","brand": "visa","exp_month": "string","exp_year": "string","reuse_eligible": true},"signature": "string","single_use_token": true},"auth_code": "string","auth_response_text": "string","external": true,"card_present": true,"created_at": "string","updated_at": "string","account_id": "string","reference_id": "string","user_fields": {"property1": null,"property2": null},"description": "string","settlement_status": "settled","settled_at": "string","terminal_details": {"entry_mode": "keyed","signature": {"data": "string","gzipped": true,"image_type": "binary","format": "png","dimensions": {"width": 0,"height": 0}},"emv_tag_data": "string","receipt_data": {"dba": "string","address_1": "string","address_2": "string","phone": "string","header": "string","order_note": "string","date_time": "string","items": "string","name_on_card": "string","footer": "string"}}}`

### post/terminals/fiserv/auth_manual

##### Request Body schema: application/json

Body

|     |     |
| --- | --- |
| hsn<br>required | string |
| auth_code | string |
| print_receipt | boolean |
| include_signature | boolean |
| include_amount_display | boolean |
| beep | boolean |
| include_avs | boolean |
| include_cvv | boolean |
| gzip_signature | boolean |
| clear_display_delay | integer |
| print_delay | integer |
| print_extra_receipt | boolean |
| signature_dimensions | string^\d+,\d+$ |
| signature_format | string<br>Enum:"png""bmp""jpg" |
| signature_image_type | string<br>Enum:"binary""rgb" |
| payment_intent_id<br>required | stringnon-empty<br>Payment Intent ID |
| receipt_header | string |
| receipt_footer | string |
| receipt_dba | string |
| receipt_phone | string |
| receipt_address1 | string |
| receipt_address2 | string |

### Responses

**200**

**400**

**401**

**403**

**500**

- **Request samples**
> Content type
> 
> `{"hsn": "string","auth_code": "string","print_receipt": true,"include_signature": true,"include_amount_display": true,"beep": true,"include_avs": true,"include_cvv": true,"gzip_signature": true,"clear_display_delay": 0,"print_delay": 0,"print_extra_receipt": true,"signature_dimensions": "string","signature_format": "png","signature_image_type": "binary","payment_intent_id": "string","receipt_header": "string","receipt_footer": "string","receipt_dba": "string","receipt_phone": "string","receipt_address1": "string","receipt_address2": "string"}`

### post/terminals/fiserv/tip

##### Request Body schema: application/json

Body

|     |     |
| --- | --- |
| hsn<br>required | string |
| prompt<br>required | string |
| amount<br>required | integer |
| include_custom_tip_amount | boolean |
| tip_percent_presets | Array of integers |

### Responses

**200**

**400**

**401**

**403**

**500**

- **Request samples**
> Content type
> 
> `{"hsn": "string","prompt": "string","amount": 0,"include_custom_tip_amount": true,"tip_percent_presets": [0]}`

- **Response samples**
> Content type
>
> `{"tip": "string","amount": "string","total": "string"}`

### post/terminals/fiserv/activation_code

##### Request Body schema: application/json

Body

|     |     |
| --- | --- |
| hsn<br>required | string |

### Responses

**200**

**400**

**401**

**403**

**500**

- **Request samples**
> Content type
> 
> `{"hsn": "string"}`

- **Response samples**
> Content type
>
> `{"activation_code": "string"}`
