Point-of-sale icon

Check the cloud connection

Remotely check the live WebSocket connection of terminals.

In a cloud Terminal API integration, terminals establish a WebSocket connection to access Terminal API. If the terminal is connected to your network, for example to the Wi-Fi network, this doesn't mean the terminal can establish a WebSocket connection. You need to enable WebSockets in your Customer Area under In-person payments > Terminal settings > Integrations. After WebSockets are enabled, you can verify in real time whether terminals have a live cloud connection.

You can verify this:

Check in the Customer Area

In your Customer Area, you can view the terminals list or the terminal details to verify whether terminals have a live cloud connection to Terminal API:

  1. In your Customer Area, go to In-person payments > Terminals.

  2. Check the WebSocket column. This uses cloud symbols to indicate the cloud connection status of each terminal, or a minus sign () if WebSockets aren't enabled.

    If the WebSocket column isn't shown, select the settings icon and select the column.

    There is a delay between the actual status and the status shown in the list. You may want to check an individual terminal as described below.

  3. Select the terminal from the list.
    The page Settings > About this terminal appears.

    If you don't see the field Cloud connection, WebSockets aren't enabled for the terminal.

  4. At Cloud connection, select Check connection.
    An icon indicates the result, and a message pops up, either:

    • -white_check_mark- Terminal is connected.
    • -x- Terminal is disconnected. This indicates the terminal is turned off, or there is a problem with the
      terminal's cloud connection.

    The connection icon is not updated automatically. You need to click Check connection each time you want to know the current state.

Check using an API request

The /connectedTerminals endpoint returns a list of terminals that have a live cloud connection. You can get this
information for a merchant account, a store, or a specific terminal.

The endpoint to use differs for test and live terminals:

  • For test terminals: https://terminal-api-test.adyen.com/connectedTerminals
  • For live terminals: https://terminal-api-live.adyen.com/connectedTerminals

Authenticate your requests using the same API key that you use for your Terminal API requests.

To verify whether terminals have a live cloud connection to Terminal API:

  1. Make a POST request to the test or live /connectedTerminals endpoint, specifying:

    Parameter Required Description
    merchantAccount -white_check_mark- The merchant account that you want to check.
    store The store that you want to check. Must belong to the specified merchantAccount.
    uniqueTerminalId The POIID of the terminal that you want to check, in the format [device model]-[serial number]. Must belong to the specified merchantAccount

    Here are some example requests:

  2. You receive a response with:

    • uniqueTerminalIds: an array with the POIIDs of the terminals that have a live cloud connection. If you checked a specific terminal, the same uniqueTerminalId from the request is returned.

    If the uniqueTerminalIds array from the response is empty, this can indicate:

    • No terminal found with a live cloud connection.
    • WebSockets are not enabled.

Check on the terminal

To verify on the physical terminal whether it has a live cloud connection to Terminal API, run a Terminal API connection test:

  1. Check the icons in the top row of the terminal display: there should be a cloud icon.
  2. Select Settings > Diagnostics.
  3. Select Terminal API: the items API enabled, WebSocket enabled, and WebSocket connection should all
    have a green check mark -white_check_mark-.

Restore the cloud connection

If the result from your check indicates the terminal doesn't have a live cloud connection to Terminal API:

  1. Check that WebSockets are enabled.
    If disabled, go to your Customer Area and enable WebSockets under In-person payments > Terminal settings > Integrations.

  2. If you checked remotely, verify that the terminal wasn't turned off at the time.

  3. If the terminal is turned on, restart the terminal.

See also