> ## Documentation Index
> Fetch the complete documentation index at: https://docs.argyle.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Link errors

> Learn about errors your users may see in Link.

This page provides common causes and troubleshooting suggestions for Link errors. All errors (except `generic`) occur due to invalid Link configuration and are not expected to reach the production environment. Link errors are also returned with `onError` [callback function](/legacy/api-reference/callbacks), which is passed the type of the `error` that occurred.

<Note>
  Some error messages shown to the user have placeholders for `[Link item name]` and `[Company name]`. In such cases, for the screens samples below, they were replaced by Starbox and GoodLoans, respectively.
</Note>

## `callback_undefined`

<Tabs>
  <Tab title="User message">
    This page does not exist. Reach out to \[Company name] for help.
  </Tab>

  <Tab title="Error details">
    Reason: callback undefined (`onCantFindLinkItemClicked`)
  </Tab>

  <Tab title="Common causes">
    *Callback triggering* was selected for the **"If no results" experience**, but the `onCantFindLinkItemClicked` callback function is not defined.
  </Tab>

  <Tab title="Troubleshooting">
    Define the `onCantFindLinkItemClicked` callback in your implementation.
  </Tab>
</Tabs>

![The callback\_undefined Link error screen.](https://res.cloudinary.com/argyle-media/image/upload/v1658498487/docs-readme/link-error-callback_undefined.png)

## `card_issuer_unavailable`

<Tabs>
  <Tab title="User message">
    The service is experiencing connection problems. Please try again later.
  </Tab>

  <Tab title="Error details">
    Reason: Partner system is currently unavailable.
  </Tab>

  <Tab title="Common causes">
    Third party system (Unit) failed to respond when retrieving card details required for a deposit update.
  </Tab>

  <Tab title="Troubleshooting">
    Reach out to [Unit](https://www.unit.co/) for help.
  </Tab>
</Tabs>

![The card\_issuer\_unavailable Link error screen.](https://res.cloudinary.com/argyle-media/image/upload/v1662963667/docs-2022/Guides/Troubleshooting/Link%20errors/card-issuer-unavailable-link-error.png)

## `expired_user_token`

<Tabs>
  <Tab title="User message">
    The service is experiencing connection problems. Please try again later.
  </Tab>

  <Tab title="Error details">
    User ID: `{userId}`
    Reason: expired `userToken`.
  </Tab>

  <Tab title="Common causes">
    `userToken` is a temporary access token that contains an expiration date. This error occurs when Link is initialized for a user with an expired `userToken`.
  </Tab>

  <Tab title="Troubleshooting">
    [Create](/legacy/api-reference/users#create-token) a new `userToken` every time Link is initialized for a user.
  </Tab>
</Tabs>

![The expired\_user\_token Link error screen.](https://res.cloudinary.com/argyle-media/image/upload/v1664899567/docs-2022/Guides/Troubleshooting/Link%20errors/user_token_link_error.png)

## `generic`

<Tabs>
  <Tab title="User message">
    The service is experiencing connection problems. Please try again later.
  </Tab>

  <Tab title="Error details">
    N/A
  </Tab>

  <Tab title="Common causes">
    Something unexpected happened. Argyle is investigating.
  </Tab>

  <Tab title="Troubleshooting">
    Contact Argyle's support team for more details.
  </Tab>
</Tabs>

![The generic Link error screen.](https://res.cloudinary.com/argyle-media/image/upload/f_webp/v1/docs-v2/link-errors-generic)

## `invalid_link_items`

<Tabs>
  <Tab title="User message">
    This page does not exist. Reach out to `[Company name]` for help.
  </Tab>

  <Tab title="Error details">
    N/A
  </Tab>

  <Tab title="Common causes">
    * The user was deep linked to a Link item that does not exist. See our [Deep Linking Guide](/legacy/guides/argyle-link/flows/deep-linking) for additional information.
    * A constrained list of Link items was provided in the Link configuration, but all of the provided Link items do not exist.
  </Tab>

  <Tab title="Troubleshooting">
    Check if the Link item is available by calling the GET `/link-items/:id` [endpoint](/legacy/api-reference/link-items#retrieve) each time before initializing Link when deep linking or constraining a Link item list. In the case where you are keeping a map of available Link items on the backend, occasionally call the GET `/link-items` [endpoint](/legacy/api-reference/link-items#list) to sync the newest updates.
  </Tab>
</Tabs>

![The invalid\_link\_items Link error screen.](https://res.cloudinary.com/argyle-media/image/upload/f_webp/v1/docs-v2/link-errors-invalid_link_items)

## `invalid_link_key`

<Tabs>
  <Tab title="User message">
    Please make sure your `linkKey` is correct.
  </Tab>

  <Tab title="Error details">
    N/A
  </Tab>

  <Tab title="Common causes">
    The Link key used when initializing Link is invalid.
  </Tab>

  <Tab title="Troubleshooting">
    Check if you are using an appropriate Link key for the selected environment. There are separate Link keys for the sandbox and production environment. Link keys can be found in the [API keys section](https://console.argyle.com/api-keys) of the Argyle Console.
  </Tab>
</Tabs>

![The invalid\_link\_key Link error screen.](https://res.cloudinary.com/argyle-media/image/upload/f_webp/v1/docs-v2/initialization)

## `invalid_pd_config`

<Tabs>
  <Tab title="User message">
    The service is experiencing connection problems. Please try again later.
  </Tab>

  <Tab title="Error details">
    Reason: invalid PD config.
  </Tab>

  <Tab title="Common causes">
    The `payDistributionConfig` provided when initializing Link is invalid.
  </Tab>

  <Tab title="Troubleshooting">
    * Check the configuration parameters of the provided `payDistributionConfig`. See [DDS configurations](/legacy/api-reference/dds-configurations) for additional information.
    * Check that the `payDistributionConfig` is encrypted correctly using the Argyle [encryption endpoint](/legacy/api-reference/dds-configurations#encrypt). See our [direct deposit switching guide](/legacy/guides/argyle-link/flows/direct-deposit-switching) for additional information.
  </Tab>
</Tabs>

![The invalid\_pd\_config Link error screen.](https://res.cloudinary.com/argyle-media/image/upload/f_webp/v1/docs-v2/link-errors-invalid_pd_config)

## `invalid_user_token`

<Tabs>
  <Tab title="User message">
    The service is experiencing connection problems. Please try again later.
  </Tab>

  <Tab title="Error details">
    Reason: invalid `userToken`.
  </Tab>

  <Tab title="Common causes">
    User token provided during Link initialization is not a valid [JTW token](https://jwt.io/) and could not be decoded.
  </Tab>

  <Tab title="Troubleshooting">
    * Check if the used `userToken` is the same provided by [`/user-tokens`](/legacy/api-reference/users#create-token) endpoint.
    * Check if the user token is not modified (for example, additionally encoded) before being passed to Argyle during Link initialization.
  </Tab>
</Tabs>

![The invalid\_user\_token Link error screen.](https://res.cloudinary.com/argyle-media/image/upload/f_webp/v1/docs-v2/link-errors-invalid_user_token)

## `unsupported_android_version`

<Tabs>
  <Tab title="User message">
    The page does not exist. Reach out to `[Company name]` for help.
  </Tab>

  <Tab title="Error details">
    Reason: unsupported Android version. Forms are supported from Android SDK 26 (Oreo) and above.
  </Tab>

  <Tab title="Common causes">
    Upgrade your Android version to Android SDK 26 (Oreo) or higher.
  </Tab>

  <Tab title="Troubleshooting">
    Contact Argyle's support team for more details.
  </Tab>
</Tabs>

![The unsupported\_android\_version Link error screen.](https://res.cloudinary.com/argyle-media/image/upload/f_webp/v1/docs-v2/link-errors-invalid_link_items)
