All Products
Link
API
Pay Distribution
Console
Changelog

Migrating to Link 3

Learn how to switch over to the newest Link version.

Argyle is releasing Link version 3 which brings design updates, new features, and a more intuitive configuration. This guide will walk you through all of the backward-incompatible changes that you need to be aware of when migrating to Link 3.

For a full list of all Link 3 configuration attributes, please refer to the Link 3 Guide.

For a full list of attributes that can customize the UI of Argyle Link, please refer to the Link Customization Guide.

Upgrading the SDK version

Web SDK

Simply change the URL pointing to the web SDK.

Android SDK

Upgrade your Gradle dependency version:

Add JitPack repository to your project main build.gradle:

iOS SDK

Supported Swift compiler versions are 5.4 and above (Xcode 12.5+).

Upgrade your CocoaPods dependency version:

Note: the imported module name changed from Argyle to ArgyleLink starting with Pod version 3.1.0

React Native SDK

Bump your react native package version:

Supported Swift compiler versions are 5.4 and above (Xcode 12.5+)

Add JitPack repository to your project main build.gradle:

Change RN SDK dependency (if any) in your app build.gradle:

Updated configuration attributes

If you're using a previous version of Link and would like to migrate to the new version, please find below a list of all configuration attributes that have been removed or changed.

payDistributionConfig and payDistributionUpdateFlow: changed

Where previously it was enough to set the payDistributionConfig to trigger the pay distribution update flow, it is now required that you also explicitly enable the flow by using the payDistributionUpdateFlow configuration parameter.

dataPartners: renamed

The property was renamed to linkItems

addIncomeSourceLinkVisible: removed

addIncomeSourceLinkVisible is no longer available. The "Can't find your company?" button is enabled whenever the onCantFindLinkItemClicked callback is defined. The button title can be changed by using the cantFindLinkItemTitle attribute.

onAddIncomeSourceLinkClicked: renamed

onAddIncomeSourceLinkClicked callback is no longer available. Instead, please use onCantFindLinkItemClicked.

addIncomeSourceExitButtonTitle, addIncomeSourceLinkTitle: removed

The addIncomeSourceExitButtonTitle and addIncomeSourceLinkTitle attributes are no longer available. The flow of adding non-covered Link items was removed.

showIntroScreen, introTitle, introSubtitle: removed

The showIntroScreen, introTitle, and introSubtitle attributes are no longer available. The intro screen has been redesign to immediately show the search bar and thus the intro screen is now shown in most Link integrations. You can customize the search placeholder in the intro screen by using the introSearchPlaceholder configuration attribute. The intro screen will be hidden when using the linkItems attribute to provide a single Link item ID and deeplink a user straight into the company login screen.

showPlatformsToggle: renamed

The showPlatformsToggle attribute is no longer available. The "Platforms" tab has been redesigned. Please use the showCategories parameter to control if the user can see the new All/Employer/Gig/Platform tabs.

Callbacks: onAccountCreated, onAccountConnected, onAccountUpdated, onAccountRemoved: changed

Callbacks remain the same except that the dataPartnerId parameter is now renamed to linkItemId.

New configuration attributes

Please find below a list of all new configuration attributes available in Link 3

linkItems
array of strings
optional

Use this parameter to limit the number of Link items that your users can connect to. Provide an array of Link item IDs you want Argyle Link to display in the company selection screen. The order in which you list the IDs will define the order in which they are displayed in the UI.

Defaults to [], which shows all available Link items.

If you provide a single Link item ID, the company selection screen will be skipped and the user will be navigated directly to the Link item login screen.

introSearchPlaceholder
string
optional

Placeholder text in the search box in the intro screen of Link.

Defaults to "Find and link your employer".

showCategories
bool
optional

Show/hide category tabs (e.g. All, Employer, Gig, Payroll).

Defaults to true.

searchScreenTitle
string
optional

The main title in the search screen.

Defaults to "Search for your income source".

searchScreenSubtitle
string
optional

The subtitle in the search screen.

Defaults to "Find your employer, gig platform, or payroll provider."

cantFindLinkItemTitle
optional

The title for the "Can't find your company" button when no Link item is available.

Defaults to "Can't find your company".

onCantFindLinkItemClicked
func
optional

An optional callback triggered after the "Don't see your company?" button is clicked. By default, this button is not shown if the cantFindLinkItemTitle attribute is not defined.

Link will close by default if this callback is defined and triggered on iOS, Android, and ReactNative SDKs. You can use the close method of the Argyle instance to close the Link Javascript SDK.

The callback function will receive an object containing a search query that was entered by the user.

showBackToSearchButton
bool
optional

If set to false, hides the back to search button in the success screen.

The default value is true.

payDistributionUpdateFlow
bool
optional

If payDistributionUpdateFlow is set to true and the payDistributionConfig parameter is provided, the pay distribution update flow will be initiated right after an account gets connected.

If this is set to true but the payDistributionConfig is not set, Link will not initialize properly.

Defaults to false.

onPayDistributionSuccess
func
optional

A callback function invoked after a successful pay distribution update flow.

The function will be passed an object containing accountId, userId, and linkItemId.

onPayDistributionError
func
optional

A callback function invoked after an error occurs during the pay distribution update flow.

The function will be passed an object containing accountId, userId, and linkItemId.