--- title: "Run connection tests from the terminal" description: "Start connection tests on the terminal and learn how to interpret the results." url: "https://docs.adyen.com/point-of-sale/pos-troubleshooting/connection-tests" source_url: "https://docs.adyen.com/point-of-sale/pos-troubleshooting/connection-tests.md" canonical: "https://docs.adyen.com/point-of-sale/pos-troubleshooting/connection-tests" last_modified: "2020-10-09T12:30:00+02:00" language: "en" --- # Run connection tests from the terminal Start connection tests on the terminal and learn how to interpret the results. [View source](/point-of-sale/pos-troubleshooting/connection-tests.md) On the payment terminal, you can run tests to verify the connection: * Between the terminal and the Adyen payments platform. * Between the terminal and the Adyen Terminal API. * Between the terminal and various endpoints, for example for receiving updates. The next sections describe: * How to run the connection tests. * What it means when a connection test fails. ## Requirements Before you begin, take into account the following requirements. | Requirement | Description | | -------------------- | ------------------------------------------------------------------------------------------------------------------ | | **Integration type** | * A Terminal API integration using payment terminals integrated with a POS system. * Standalone payment terminals. | | **Hardware** | All non-legacy payment terminals. | | **Limitations** | Some tests apply only to cloud communications or only to local communications. | ## Run diagnostic connection tests from a terminal 1. Check the icons in the top row of the terminal display. If an expected icon is missing, that is the first indication of what is wrong. * If the terminal uses a Wi-Fi connection, you should see the Wi-Fi symbol. * If you have a Terminal API integration using cloud communications, you should see a cloud symbol. 2. Go to **Settings** and select **Diagnostics**. * On *non-Android terminals* that use the [old menu structure](/point-of-sale/menu-access#old-menu-structure), go to the Admin menu and select **Network** > **Diagnostics**. * On an *Android* terminal, go to **Settings** and select **Diagnostics**. 3. Under **Diagnostics**, select **PSP connection** and check the result. Refer to [PSP connection test](#psp-connection-test). 4. Go back to **Diagnostics**, select **Terminal API** and check the result. Refer to [Terminal API test](#terminal-api-test) and [Local communications TLS test](#local-communications-tls). 5. Go back to **Diagnostics** and select **Endpoints**. The terminal runs tests on four URLs and shows the results. Refer to [Endpoints test](#endpoints-test). On a *non-Android* terminal that uses the [old menu structure](/point-of-sale/menu-access#old-menu-structure), when tests pass the terminal shows a green check mark ![-white\_check\_mark-](/user/data/smileys/emoji/white_check_mark.png "-white_check_mark-") for all steps in a test. If a test fails, it is marked with red cross ![-x-](/user/data/smileys/emoji/x.png "-x-"), and all steps are also marked as failed with a red cross ![-x-](/user/data/smileys/emoji/x.png "-x-").\ On an *Android* terminal, when tests pass the terminal shows **Successful**. If you tap **Successful**, all steps show a green check mark ![-white\_check\_mark-](/user/data/smileys/emoji/white_check_mark.png "-white_check_mark-"). If a test fails, the terminal shows **Failed**, and all steps when you tap **Failed** are also marked as failed with a red cross ![-x-](/user/data/smileys/emoji/x.png "-x-"). The next sections explain what it means when a test step fails. ## PSP connection test The **PSP connection** test verifies the connection to the Adyen payments platform. The test checks the DNS resolution, firewalls, routing, and TLS negotiations. If a test step fails, all steps after that are also marked as failed with a red cross ![-x-](/user/data/smileys/emoji/x.png "-x-"). | Test step | Result | Description | | ------------------- | -------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | **Looking up host** | ![-x-](/user/data/smileys/emoji/x.png "-x-") | There is a DNS problem. The terminal is not able to resolve the Adyen domains. Contact your company's network or IT team. | | **Connecting** | ![-x-](/user/data/smileys/emoji/x.png "-x-") | Something in the network is preventing the terminal from connecting. There can be several causes:- A problem with your router. - The internet connection is down.Contact your company's network or IT team. | | **Negotiating** | ![-x-](/user/data/smileys/emoji/x.png "-x-") | This step checks the security of the connection. If it fails, this can indicate:- Your security gateway is inspecting the TLS session. If that is the case, wait for the inspection to finish. We recommend bypassing any inspections of Adyen domains. - Some other problem.**Contact Adyen immediately.** | | **Writing data** | ![-x-](/user/data/smileys/emoji/x.png "-x-") | Traffic from the terminal is blocked. There is a problem with the settings of your router or firewall. Contact your company's network or IT team. | | **Receiving data** | ![-x-](/user/data/smileys/emoji/x.png "-x-") | Traffic to the terminal is blocked. There is a problem with the settings of your router or firewall. If you connected the terminal for the first time and the overall result of the PSP connection test is **No Error**, the terminal is successfully connected and you can ignore the red cross for Receiving data. Otherwise, contact your company's network or IT team. | ## Terminal API test The **Terminal API** test verifies the API connection and the cloud WebSocket connection. For integrated terminals using local communications, you can ignore the WebSocket test results. If a test step fails, all steps after that are also marked as failed with a red cross ![-x-](/user/data/smileys/emoji/x.png "-x-"). | Test step | Result | Description | | ------------------------ | -------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | **API enabled** | ![-x-](/user/data/smileys/emoji/x.png "-x-") | To solve this issue, enable Terminal API in your [Customer Area](https://ca-live.adyen.com/) under **In-person payments** > **Terminal settings** > **Integrations**. | | **WebSocket enabled** | ![-x-](/user/data/smileys/emoji/x.png "-x-") | To solve this issue, enable WebSockets in your [Customer Area](https://ca-test.adyen.com/) under **In-person payments** > **Terminal settings** > **Integrations**. | | **WebSocket connection** | ![-x-](/user/data/smileys/emoji/x.png "-x-") | The cloud connection with our Terminal API fails. | ## Local communications TLS test The **Terminal API** test also returns information about the Transport Layer Security (TLS) used in your [local communications](/point-of-sale/design-your-integration/choose-your-architecture/local) integration. For integrated terminals using [cloud communications](/point-of-sale/design-your-integration/choose-your-architecture/) and for standalone terminals, these tests are not applicable. | Test step | Description | | --------------- | ------------------------------------------------------------------------------------------------------- | | **TLS version** | Transport Layer Security (TLS) version used in the communication between your POS app and the terminal. | | **Cipher** | The cipher used to encrypt and decrypt messages. | | **URL** | The address that your POS app connects to. Depends on your integration. | ## Endpoints test The **Endpoints** test verifies whether the terminal is able to connect with several URLs: * **Sync URL**, which is used for refunds and cancellations. * **Config URL**, where the terminal retrieves its configuration. * **PAL URL**, where the terminal sends requests. * **Firmware URL**, where the terminal retrieves the latest software release. The test also shows the [Maximum Transmission Unit (MTU) value](/point-of-sale/design-your-integration/network-and-connectivity/networking-issues#avoid-mtu-issues) that the terminal is using. For each of the above URLs the terminal carries out the following test steps: If a test step fails, all steps after that are also marked as failed with a red cross ![-x-](/user/data/smileys/emoji/x.png "-x-"). | Test step | Result | Description | | ------------------- | -------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | | **Looking up host** | ![-x-](/user/data/smileys/emoji/x.png "-x-") | There is a DNS problem. Contact your company's network or IT team. | | **Connecting** | ![-x-](/user/data/smileys/emoji/x.png "-x-") | There can be several causes:- A problem with your router. - Our server is down. - The internet connection is down. Contact your company's network or IT team. | | **Negotiating** | ![-x-](/user/data/smileys/emoji/x.png "-x-") | This step checks the security of the connection. If it fails, this can indicate that we have updated our certificates, or that you have fallen victim to hacking. **Contact Adyen immediately.** | | **Writing data** | ![-x-](/user/data/smileys/emoji/x.png "-x-") | There is a problem with the settings of your router or firewall. Contact your company's network or IT team. | | **Receiving data** | ![-x-](/user/data/smileys/emoji/x.png "-x-") | There is a problem with the settings of your router or firewall. Contact your company's network or IT team. | ## See also * [Make a diagnosis request](/point-of-sale/diagnostics/request-diagnosis) * [Network and connectivity](/point-of-sale/design-your-integration/network-and-connectivity) * [Know when certificates expire](/point-of-sale/design-your-integration/network-and-connectivity/wi-fi-profiles#know-when-certificates-expire)