# Vend\RegistersApi

Register operations

All URIs are relative to https://example.retail.lightspeed.app/api/2026-07, except if the operation defines another base path.

| Method | HTTP request | Description |
| ------------- | ------------- | ------------- |
| [**closeRegister()**](RegistersApi.md#closeRegister) | **PUT** /registers/{register_id}/actions/close | Close a single register |
| [**getButtonLayoutById()**](RegistersApi.md#getButtonLayoutById) | **GET** /button_layouts/{button_layout_id} | Get a single button layout |
| [**getRegisterByID()**](RegistersApi.md#getRegisterByID) | **GET** /registers/{register_id} | Get a single register |
| [**listButtonLayouts()**](RegistersApi.md#listButtonLayouts) | **GET** /button_layouts | List button layouts |
| [**listRegisters()**](RegistersApi.md#listRegisters) | **GET** /registers | List registers |
| [**openRegister()**](RegistersApi.md#openRegister) | **PUT** /registers/{register_id}/actions/open | Open a single register |
| [**registerPaymentsSummary()**](RegistersApi.md#registerPaymentsSummary) | **GET** /registers/{register_id}/payments_summary | Get all the payments data associated with a single register. |


## `closeRegister()`

```php
closeRegister($register_id, $register_close_request): \Vend\Model\RegisterResponse
```

Close a single register

Closes a single register with the requested ID.  🔒 Requires: `register:close` `payment_types:read` scopes

### Example

```php
<?php
require_once(__DIR__ . '/vendor/autoload.php');


// Configure Bearer (JWT) authorization: bearerAuth
$config = Vend\Configuration::getDefaultConfiguration()->setAccessToken('YOUR_ACCESS_TOKEN');


$apiInstance = new Vend\Api\RegistersApi(
    // If you want use custom http client, pass your client which implements `GuzzleHttp\ClientInterface`.
    // This is optional, `GuzzleHttp\Client` will be used as default.
    new GuzzleHttp\Client(),
    $config
);
$register_id = 'register_id_example'; // string | The register id
$register_close_request = new \Vend\Model\RegisterCloseRequest(); // \Vend\Model\RegisterCloseRequest

try {
    $result = $apiInstance->closeRegister($register_id, $register_close_request);
    print_r($result);
} catch (Exception $e) {
    echo 'Exception when calling RegistersApi->closeRegister: ', $e->getMessage(), PHP_EOL;
}
```

### Parameters

| Name | Type | Description  | Notes |
| ------------- | ------------- | ------------- | ------------- |
| **register_id** | **string**| The register id | |
| **register_close_request** | [**\Vend\Model\RegisterCloseRequest**](../Model/RegisterCloseRequest.md)|  | |

### Return type

[**\Vend\Model\RegisterResponse**](../Model/RegisterResponse.md)

### Authorization

[bearerAuth](../../README.md#bearerAuth)

### HTTP request headers

- **Content-Type**: `application/json`
- **Accept**: `application/json`

[[Back to top]](#) [[Back to API list]](../../README.md#endpoints)
[[Back to Model list]](../../README.md#models)
[[Back to README]](../../README.md)

## `getButtonLayoutById()`

```php
getButtonLayoutById($button_layout_id): \Vend\Model\ButtonLayout
```

Get a single button layout

Returns a single button layout by id. Button layouts define the arrangement of quick key buttons on a register.  🔒 Requires: `registers:read` scope

### Example

```php
<?php
require_once(__DIR__ . '/vendor/autoload.php');


// Configure Bearer (JWT) authorization: bearerAuth
$config = Vend\Configuration::getDefaultConfiguration()->setAccessToken('YOUR_ACCESS_TOKEN');


$apiInstance = new Vend\Api\RegistersApi(
    // If you want use custom http client, pass your client which implements `GuzzleHttp\ClientInterface`.
    // This is optional, `GuzzleHttp\Client` will be used as default.
    new GuzzleHttp\Client(),
    $config
);
$button_layout_id = 'button_layout_id_example'; // string | UUID of the button layout

try {
    $result = $apiInstance->getButtonLayoutById($button_layout_id);
    print_r($result);
} catch (Exception $e) {
    echo 'Exception when calling RegistersApi->getButtonLayoutById: ', $e->getMessage(), PHP_EOL;
}
```

### Parameters

| Name | Type | Description  | Notes |
| ------------- | ------------- | ------------- | ------------- |
| **button_layout_id** | **string**| UUID of the button layout | |

### Return type

[**\Vend\Model\ButtonLayout**](../Model/ButtonLayout.md)

### Authorization

[bearerAuth](../../README.md#bearerAuth)

### HTTP request headers

- **Content-Type**: Not defined
- **Accept**: `application/json`

[[Back to top]](#) [[Back to API list]](../../README.md#endpoints)
[[Back to Model list]](../../README.md#models)
[[Back to README]](../../README.md)

## `getRegisterByID()`

```php
getRegisterByID($register_id): \Vend\Model\RegisterResponse
```

Get a single register

Returns a single register with the requested ID.  🔒 Requires: `registers:read` scope

### Example

```php
<?php
require_once(__DIR__ . '/vendor/autoload.php');


// Configure Bearer (JWT) authorization: bearerAuth
$config = Vend\Configuration::getDefaultConfiguration()->setAccessToken('YOUR_ACCESS_TOKEN');


$apiInstance = new Vend\Api\RegistersApi(
    // If you want use custom http client, pass your client which implements `GuzzleHttp\ClientInterface`.
    // This is optional, `GuzzleHttp\Client` will be used as default.
    new GuzzleHttp\Client(),
    $config
);
$register_id = 'register_id_example'; // string | The register id

try {
    $result = $apiInstance->getRegisterByID($register_id);
    print_r($result);
} catch (Exception $e) {
    echo 'Exception when calling RegistersApi->getRegisterByID: ', $e->getMessage(), PHP_EOL;
}
```

### Parameters

| Name | Type | Description  | Notes |
| ------------- | ------------- | ------------- | ------------- |
| **register_id** | **string**| The register id | |

### Return type

[**\Vend\Model\RegisterResponse**](../Model/RegisterResponse.md)

### Authorization

[bearerAuth](../../README.md#bearerAuth)

### HTTP request headers

- **Content-Type**: Not defined
- **Accept**: `application/json`

[[Back to top]](#) [[Back to API list]](../../README.md#endpoints)
[[Back to Model list]](../../README.md#models)
[[Back to README]](../../README.md)

## `listButtonLayouts()`

```php
listButtonLayouts($after, $before, $page_size, $deleted): \Vend\Model\ButtonLayoutCollection
```

List button layouts

Returns a versioned collection of button layouts for the authenticated retailer. Button layouts define the arrangement of quick key buttons on a register.  🔒 Requires: `registers:read` scope

### Example

```php
<?php
require_once(__DIR__ . '/vendor/autoload.php');


// Configure Bearer (JWT) authorization: bearerAuth
$config = Vend\Configuration::getDefaultConfiguration()->setAccessToken('YOUR_ACCESS_TOKEN');


$apiInstance = new Vend\Api\RegistersApi(
    // If you want use custom http client, pass your client which implements `GuzzleHttp\ClientInterface`.
    // This is optional, `GuzzleHttp\Client` will be used as default.
    new GuzzleHttp\Client(),
    $config
);
$after = 56; // int | The lower limit for the version numbers to be included in the response.
$before = 56; // int | The upper limit for the version numbers to be included in the response.
$page_size = 56; // int | The maximum number of items to be returned in the response.
$deleted = True; // bool | Indicates whether deleted items should be included in the response.

try {
    $result = $apiInstance->listButtonLayouts($after, $before, $page_size, $deleted);
    print_r($result);
} catch (Exception $e) {
    echo 'Exception when calling RegistersApi->listButtonLayouts: ', $e->getMessage(), PHP_EOL;
}
```

### Parameters

| Name | Type | Description  | Notes |
| ------------- | ------------- | ------------- | ------------- |
| **after** | **int**| The lower limit for the version numbers to be included in the response. | [optional] |
| **before** | **int**| The upper limit for the version numbers to be included in the response. | [optional] |
| **page_size** | **int**| The maximum number of items to be returned in the response. | [optional] |
| **deleted** | **bool**| Indicates whether deleted items should be included in the response. | [optional] |

### Return type

[**\Vend\Model\ButtonLayoutCollection**](../Model/ButtonLayoutCollection.md)

### Authorization

[bearerAuth](../../README.md#bearerAuth)

### HTTP request headers

- **Content-Type**: Not defined
- **Accept**: `application/json`

[[Back to top]](#) [[Back to API list]](../../README.md#endpoints)
[[Back to Model list]](../../README.md#models)
[[Back to README]](../../README.md)

## `listRegisters()`

```php
listRegisters($after, $before, $deleted, $page_size): \Vend\Model\RegisterCollection
```

List registers

Returns a paginated list of registers.  🔒 Requires: `registers:read` scope

### Example

```php
<?php
require_once(__DIR__ . '/vendor/autoload.php');


// Configure Bearer (JWT) authorization: bearerAuth
$config = Vend\Configuration::getDefaultConfiguration()->setAccessToken('YOUR_ACCESS_TOKEN');


$apiInstance = new Vend\Api\RegistersApi(
    // If you want use custom http client, pass your client which implements `GuzzleHttp\ClientInterface`.
    // This is optional, `GuzzleHttp\Client` will be used as default.
    new GuzzleHttp\Client(),
    $config
);
$after = 56; // int | The lower limit for the version numbers to be included in the response.
$before = 56; // int | The upper limit for the version numbers to be included in the response.
$deleted = True; // bool | Indicates whether deleted items should be included in the response.
$page_size = 56; // int | The maximum number of items to be returned in the response.

try {
    $result = $apiInstance->listRegisters($after, $before, $deleted, $page_size);
    print_r($result);
} catch (Exception $e) {
    echo 'Exception when calling RegistersApi->listRegisters: ', $e->getMessage(), PHP_EOL;
}
```

### Parameters

| Name | Type | Description  | Notes |
| ------------- | ------------- | ------------- | ------------- |
| **after** | **int**| The lower limit for the version numbers to be included in the response. | [optional] |
| **before** | **int**| The upper limit for the version numbers to be included in the response. | [optional] |
| **deleted** | **bool**| Indicates whether deleted items should be included in the response. | [optional] |
| **page_size** | **int**| The maximum number of items to be returned in the response. | [optional] |

### Return type

[**\Vend\Model\RegisterCollection**](../Model/RegisterCollection.md)

### Authorization

[bearerAuth](../../README.md#bearerAuth)

### HTTP request headers

- **Content-Type**: Not defined
- **Accept**: `application/json`, `new`

[[Back to top]](#) [[Back to API list]](../../README.md#endpoints)
[[Back to Model list]](../../README.md#models)
[[Back to README]](../../README.md)

## `openRegister()`

```php
openRegister($register_id, $register_open_request): \Vend\Model\RegisterResponse
```

Open a single register

Opens a single register with the requested ID.  🔒 Requires: `register:open` scope

### Example

```php
<?php
require_once(__DIR__ . '/vendor/autoload.php');


// Configure Bearer (JWT) authorization: bearerAuth
$config = Vend\Configuration::getDefaultConfiguration()->setAccessToken('YOUR_ACCESS_TOKEN');


$apiInstance = new Vend\Api\RegistersApi(
    // If you want use custom http client, pass your client which implements `GuzzleHttp\ClientInterface`.
    // This is optional, `GuzzleHttp\Client` will be used as default.
    new GuzzleHttp\Client(),
    $config
);
$register_id = 'register_id_example'; // string | The register id
$register_open_request = new \Vend\Model\RegisterOpenRequest(); // \Vend\Model\RegisterOpenRequest

try {
    $result = $apiInstance->openRegister($register_id, $register_open_request);
    print_r($result);
} catch (Exception $e) {
    echo 'Exception when calling RegistersApi->openRegister: ', $e->getMessage(), PHP_EOL;
}
```

### Parameters

| Name | Type | Description  | Notes |
| ------------- | ------------- | ------------- | ------------- |
| **register_id** | **string**| The register id | |
| **register_open_request** | [**\Vend\Model\RegisterOpenRequest**](../Model/RegisterOpenRequest.md)|  | |

### Return type

[**\Vend\Model\RegisterResponse**](../Model/RegisterResponse.md)

### Authorization

[bearerAuth](../../README.md#bearerAuth)

### HTTP request headers

- **Content-Type**: `application/json`
- **Accept**: `application/json`

[[Back to top]](#) [[Back to API list]](../../README.md#endpoints)
[[Back to Model list]](../../README.md#models)
[[Back to README]](../../README.md)

## `registerPaymentsSummary()`

```php
registerPaymentsSummary($register_id): \Vend\Model\RegisterPaymentsSummaryResponse
```

Get all the payments data associated with a single register.

Returns a payload containing payment totals for all payments types defined in the account for a single register.  🔒 Requires: `payments:read` scope

### Example

```php
<?php
require_once(__DIR__ . '/vendor/autoload.php');


// Configure Bearer (JWT) authorization: bearerAuth
$config = Vend\Configuration::getDefaultConfiguration()->setAccessToken('YOUR_ACCESS_TOKEN');


$apiInstance = new Vend\Api\RegistersApi(
    // If you want use custom http client, pass your client which implements `GuzzleHttp\ClientInterface`.
    // This is optional, `GuzzleHttp\Client` will be used as default.
    new GuzzleHttp\Client(),
    $config
);
$register_id = 'register_id_example'; // string | The register id

try {
    $result = $apiInstance->registerPaymentsSummary($register_id);
    print_r($result);
} catch (Exception $e) {
    echo 'Exception when calling RegistersApi->registerPaymentsSummary: ', $e->getMessage(), PHP_EOL;
}
```

### Parameters

| Name | Type | Description  | Notes |
| ------------- | ------------- | ------------- | ------------- |
| **register_id** | **string**| The register id | |

### Return type

[**\Vend\Model\RegisterPaymentsSummaryResponse**](../Model/RegisterPaymentsSummaryResponse.md)

### Authorization

[bearerAuth](../../README.md#bearerAuth)

### HTTP request headers

- **Content-Type**: Not defined
- **Accept**: `application/json`

[[Back to top]](#) [[Back to API list]](../../README.md#endpoints)
[[Back to Model list]](../../README.md#models)
[[Back to README]](../../README.md)
