Sorry, you need to enable JavaScript to visit this website.
Skip to main content

Upgrade Guide

Upgrade Yodlee API v1.0 to v1.1

The upgrade guide highlights the critical differences between the Yodlee API versions 1.0 and 1.1 with respect to linking accounts, editing credentials, and refreshing accounts. This upgrade guide only applies to customers who build their own link account user experience flows using Yodlee APIs.
Before you go further, we assume that you have already gone through all the steps and differences mentioned in the comprehensive Upgrade Guide - v1.0 to v1.1 page.

Yodlee Core API v1.0 vs Yodlee Core API v1.1

Data Type Changes

In the Yodlee Core API v1.1, the data types for the following fields have been changed:

API EndpointField NameChanges
GET providers/{providerId}loginFormv1.0: loginForm is an array of entities.
v1.1: loginForm is an array that supports the login form and questions and answers.
GET providerAccountsimagev1.0: the image was providing the value in a byte array format.
v1.1: the image will be providing the value in base64 format.

Add or Update Accounts Status

The statusCode, status, and additionalStatus used for the add or update providerAccount implementation have to be replaced with providerAccount.status  and dataset.additionalStatus attributes provided in the webhooks or GET providerAccounts endpoint respectively.

Requesting Aggregation vs Verification Data

In Yodlee Core API v1.0, retrieval of data is limited to predefined fixed aggregation data or verification data during an add/update API. In Yodlee Core API v1.1, it has been made flexible so that customers can request and retrieve only the required data.

CapabilityYodlee Core API v1.0 ServiceYodlee Core API v1.1 Service
Basic AggregationPOST/PUT provider accounts, when invoked with credentials input, retrieve aggregation data like accounts, transactions, holdings, and statements.POST/PUT provider accounts when invoked with credentials input and dataset details retrieve only those specified in the input. 
If no dataset information is provided during the request, the default configured datasets will be retrieved.
Account VerificationPOST/PUT provider accounts, when invoked with additional datasets, retrieve aggregation data like accounts, transactions, fullAccountNumber, routing number, and holder name.If a customer needs a full account number, holding name, and routing number, the customer should request the ACCT_PROFILE dataset in the input or should be the default configured dataset.

Note: The add/update account APIs retrieve datasets that are configured by default or demanded during the request.

Contextual Data in APIs

In Yodlee Core API v1.1, the requestId field (i.e., a unique identifier for a tracking request) is generated for every POST providerAccounts or PUT providerAccounts process and is provided in the API response.
To retrieve contextual-based statuses and data, you must provide the requestId as an input in the GET providerAccounts and GET accounts API call. For example, if a customer is requesting only ACCT_PROFILE dataset (i.e., verification data) in the PUT providerAccounts API, the relevant account information data can be retrieved by passing the requestId as an input in the GET accounts API.
The requestId passed should be the one associated with a recent refresh of the account. When requestId is not passed as an input to the API, the responses are not confined to the latest refresh of the account, and the response includes all the data elements associated with the account from its initial aggregation.

Status and Error Mappings

Provider Account Status Mappings

The provider account-level fields that are used to know the progress of the add/update provider accounts and display success or error message to users follow:

Yodlee Core API v1.0Yodlee Core API v1.1

Fields that indicate the state, error, and the different status levels of the provider account follow:

  • refreshInfo.status
  • refreshInfo.additionalStatus
  • refreshInfo.statusCode
  • refreshInfo.statusMessage
  • status - Indicates the status of the provider account.
  • dataset.additionalStatus - Indicates the level of success, failure, and in-progress status.

Status Code to Dataset Additional Status Mappings

The following status to additionalStatus mapping will help you to implement the add or update account flows, display error messages, etc., in your application:

Status CodeAdditional StatusScenarioNext Action
407ACCOUNT_LOCKEDThe account is locked at the provider site. The user has exceeded the maximum number of incorrect login attempts resulting in locking the account.Instruct the user to visit the provider site and take necessary actions to unlock the account.
518, 519, 520, 522, 573ADDL_AUTHENTICATION_REQUIREDAdditional MFA information is needed at the provider site or to download document additional verification is required.Instruct the user to provide the required additional MFA information or verification.
507BETA_SITE_DEV_IN_PROGRESSThe site for which the data is requested is in the development or beta stage.Instruct the user to try again later or disable the beta sites.
410, 420, 526CREDENTIALS_UPDATE_NEEDEDUnable to log in to the provider site because credentials are outdated. The site may be prompting the user to change or verify the credentials.Instruct the user to visit the provider site and perform the required actions and then invoke the edit account flow to update the credentials in the Yodlee system.
402, 551INCORRECT_CREDENTIALSUnable to log in to the provider site because the credentials are incorrect. The credentials that the user has provided are incorrect.Instruct the user to provide the correct credentials by invoking the edit account flow.
414, 422, 570DATA_NOT_AVAILABLEThe requested data or document is not available at the provider site.Instruct the user to check with the data provider or provider site.
509, 523, 524INVALID_ADDL_INFO_PROVIDEDThe user has provided incorrect MFA information or the MFA information provided has expired.Instruct the user to provide the correct MFA information.
508, 525, 553, 554, 555REQUEST_TIME_OUTThe request has timed-out due to technical reasons.Instruct the user to try again later. If the request fails repeatedly, report the issue to the Yodlee Client Services team.
426SITE_BLOCKING_ERRORThe Yodlee IP is blocked by the provider site.Instruct the user to try again later. If the request fails repeatedly, report the issue to the Yodlee Client Services team.
401, 412, 418, 423, 425, 431, 432, 556, 558, 571UNEXPECTED_SITE_ERRORAll errors indicating issues at the provider site.Instruct the user to try again later. If the request fails repeatedly, report the issue to the Yodlee Client Services team.
411, 417, 421, 430, 505SITE_NOT_SUPPORTEDIndicates that the site does not support the requested data or support is not available to complete the requested action. For example, the site is not available, document download not supported at the site, etc.Inform the user about the latest available status.
575DATASET_NOT_SUPPORTEDThe requested datasets are not supported.Either enable the dataset/attribute or remove the dataset/attribute from the input.
409, 424SITE_UNAVAILABLEThe provider site is unavailable.Instruct the user to try again later. If the request fails repeatedly, report the issue to the Yodlee Client Services team.
400, 403, 404, 408, 413, 419, 517, 552, 557, 559, 561, 572, 576, 577, 578, 579, 601, 708, 709TECH_ERRORIt indicates there is a technical error.Instruct the user to try again later. If the request fails repeatedly, report the issue to the Yodlee Client Services team.
406, 427, 428, 429, 521, 560USER_ACTION_NEEDED_AT_SITEThe errors that require users to take action at the provider site, for example, accept T&C, etcInstruct the user to visit the provider site and perform the necessary action.
415, 416SITE_SESSION_INVALIDATEDIndicates if multiple sessions or a session is terminated by the provider site.Instruct the user to try again later.
574ENROLLMENT_REQUIRED_FOR_DATASETThe dataset cannot be retrieved as the user has not enrolled for it.Instruct the user to enroll for the dataset and then request for it.
504DATA_RETRIEVAL_FAILEDFailed to retrieve the data due to unexpected issues.Instruct the user to try again later. If the request fails repeatedly, report the issue to the Yodlee Client Services team.
811PARTIAL_DATA_RETRIEVEDPartial data is retrieved for the dataset.Instruct the user to try again if the mandatory data is missing. If the request fails repeatedly, report the issue to the Yodlee Client Services team.
506NEW_AUTHENTICATION_REQUIREDThe site requires re-authentication.Instruct the user to re-authenticate by invoking the edit account flow.
510PROPERTY_VALUE_NOT_AVAILABLEEither the provider site cannot find the property value or the address provided by the user is incorrect.Instruct the user to provide the correct address or add the real estate account manually.
801, 802NAThe 801 and 802 codes are not mapped to any additional status as they are not error codes. They indicate the in-progress state of the add or update account process that is also indicated by providerAccount.status=IN_PROGRESS.NA
Any other error codeDATA_RETRIEVAL_FAILEDFailed to retrieve the data due to unexpected issues.Instruct the user to try again later. If the request fails repeatedly, report the issue to the Yodlee Client Services team.

Refresh Webhooks Notifications

In v1.1, the REFRESH webhooks notification payload is different than for v1.0. This is due to the change in the GET providerAccounts response.
Yodlee strongly recommends that customers implement only one version of API. If the customer has implemented both the API versions and has subscribed to the notification, the notifications will always be sent in the latest API version.
If the customer has implemented only the v1.0 version for add or update accounts, the notification will be sent in the 1.0 format.

New Capabilities

Retrieving MFA Questions

Compared to Yodlee API v1.0, the get provider account details service provides the capability to retrieve the MFA questions. While invoking get provider account details include="questions" that have to be passed to retrieve them.

Requesting 365 days of transactions and verification data

Compared to Yodlee API v1.0, the add/update provider accounts have the capability of bringing 365 days of transactions and verification data like full account number, routing number, and holder details in one API call. This helps customers avoid making two API calls one after the other.

Dataset Requesting Capabilities

In Yodlee Core API v1.1, Yodlee has introduced flexibility to mandate the retrieval of existing data attributes that are specifically required for your business flow. As Yodlee incurs additional cost to retrieve the following information from pages other than the landing page, you will have to subscribe for the dataset attributes if they are critical for your business flow:

  • Interest Details – The dataset attribute provides details of the interest rate for student loan accounts under the loan container.
  • Payment Details – The dataset attribute consists of loan payment-related details such as payoff amount, outstanding balance, etc. If both the attributes are mandatory for your use case then both attributes have to be explicitly requested.

Note: If the information is available on the landing page, Yodlee will continue to return the same to you, even if you have not subscribed to the datasets or attributes.

Upgrade Legacy (REST/SOAP) to v1.1

The upgrade guide highlights the critical differences between the legacy API and Yodlee API v1.1 with respect to linking accounts, editing credentials, and refreshing accounts. This upgrade guide only applies to customers who build their own link account user experience using Yodlee APIs.
Before you go further, we assume that you have already gone through all the steps and differences mentioned in the comprehensive Upgrade Guide – Legacy (REST/SOAP) to v1.1 page.

Legacy API vs Yodlee Core API v1.1

The differences between the API calls for each of Yodlee platform capabilities are highlighted in the section.

Linking or Update Accounts

In Yodlee legacy API, the following were the two types of requests used for aggregating data from provider sites:

  • Aggregation requests – Retrieves accounts, statements, holdings, and transactions.
  • Instant Account Verification (IAV) requests – Retrieves full account number, routing number, and holder details.

In the RESTful Yodlee Core API v1.1, to retrieve aggregation or verification-related information, only one API must be invoked.
Yodlee has classified the aggregation data in the following four datasets:

  • BASIC_AGG_DATA
  • ADVANCE_AGG_DATA
  • ACCOUNT_PROFILE
  • DOCUMENTS
Legacy API ServiceYodlee Core API v1.1 Service
Aggregation requests retrieve: accounts, transactions, holdings, and statements.If a customer needs accounts, transactions, holdings or statements, the customer should request BASIC_AGG_DATA dataset.
IAV requests retrieve basic account information, full account number, holding name, and routing number.If a customer needs the full account number, holding name and routing number, the customer should request ACCOUNT_PROFILE dataset.

Note: Customers can also request basic aggregation data and account profile in one request.

Link Account
The API mappings and sequence of API calls in the add account implementation follows:

CapabilityLegacy API ServiceYodlee Core API v1.1 Service
Locate SiteGET SiteTraversal/getAllSitesGET providers
Search SiteGET SiteTraversal/searchSiteGET providers
Note: Search text to be passed as a query parameter for performing a search.
Capture credentials from a user by displaying the site login form.GET SiteTraversal/getSiteInfoGET providers/{providerId}
Submit Credentials to YodleePOST SiteAccountManagement/addSiteAccount1POST providerAccounts
Check the status or wait for status change notificationGET Refresh/getSiteRefreshInfoGET providerAccounts/{providerAccountId}
Note: requestId provided in the response of POST provider accounts should be provided to know the status of an add account progress, as that gives relevant and contextual information.
Alternatively, instead of calling this polling API to learn the status, customers can also subscribe to webhooks and wait for notifications. For details, refer to the Refresh Webhooks page.
Submit MFA (if required)PUT Refresh/putMFARequestForSitePUT providerAccounts
Note: This step applies to MFA accounts only and is used to provide MFA information from the user.
Check for status or wait for status notification.GET Refresh/getMFAResponseForSiteGET providerAccounts/{providerAccountId}
Note: requestId provided in the response of POST provider accounts should be provided to know the status of an add/update account progress, as that gives relevant and contextual information.
View resultsGET /account/summary/all
GET DataService/getItemSummariesForSite
GET accounts


Edit Provider or Site Credentials
The API mappings and sequence of API calls in the edit provider or site credentials implementation follows:

CapabilityLegacy API ServiceYodlee Core API v1.1 Service
Choose a site to editGET /account/summary/all
GET DataService/getItemSummariesForSite
GET accounts
View or retrieve stored credentialsGET SiteTraversal/getSiteloginformGET providerAccounts/{providerAccountId}
Note: The include=credentials parameter should be passed to retrieve the non-password fields that are stored in the system.
Submit user-edited credentials to YodleeSiteAccountManagement/updateSiteAccountCredentialsPUT providerAccounts
Check the status or wait for status change notificationGET Refresh/getSiteRefreshInfoGET providerAccounts/{providerAccountId}
Note: requestId provided in the response of PUT provider accounts should be provided to get the status of the update account progress, as that gives more relevant information.
Alternative Approach:
Alternatively, instead of calling this polling API to learn the status, customers can also subscribe to webhooks and wait for notifications. For more details, refer to the Refresh Webhooks page.
Submit MFA (if required)PUT Refresh/putMFARequestForSitePUT providerAccounts
Check the status or wait for status change notificationGET Refresh/getMFAResponseForSiteGET providerAccounts/{providerAccountId}
Note: requestId provided in the response of PUT provider accounts should be provided to know the status of an update account progress, as that gives relevant and contextual information.
View resultsGET /account/summary/all
GET DataService/getItemSummariesForSite
GET accounts


Updating Accounts
The API mappings and sequence of API calls in the update accounts implementation follows:

CapabilityLegacy API ServiceYodlee Core API v1.1 Service
Choose a site to updateGET /account/summary/allGET accounts
Initiate updatePOST Refresh/startSiteRefreshPUT providerAccounts
Check the update account statusGET Refresh/getSiteRefreshInfoGET providerAccounts/{providerAccountId}
Submit MFA (If required) and check the statusPUT Refresh/putMFARequestForSite
GET Refresh/getMFAResponseForSite
PUT providerAccounts
GET providerAccounts/{providerAccountId}
View resultsGET /account/summary/all
GET /jsonsdk/DataService/getItemSummariesForSite
GET accounts

Legacy to Yodlee Core API v1.1 Mappings

  • Container-based Legacy API to Yodlee Core API v1.1 Mapping

    Container based Legacy APIYodlee Core API v1.1
    MethodURLMethodURL
    POST/addItemForContentService1POSTproviderAccounts
    POST/getLoginFormForContentServiceGETproviders/{providerId}
    POST/getContentServiceInfo1GETproviders/{providerId}
    POST/startRefresh7PUTproviderAccounts
    POST/getMFAResponseGETproviderAccounts/{providerAccountId}
    POST/putMFARequestPUTproviderAccounts
    POST/updateCredentialsForItem1PUTproviderAccounts
  • Site-based Service Legacy API to Yodlee Core API v1.1 Mapping

    Site-based Service Legacy APIYodlee Core API v1.1
    MethodURLMethodURL
    POST/SiteAccountManagement/addSiteAccount1POSTproviderAccounts
    POST/SiteTraversal/getSiteInfoGETproviders/{providerId}
    POST/SiteAccountManagement/getSiteLoginFormGETproviders/{providerId}
    POST/Refresh/putMFARequestForSitePUTproviderAccounts
    POST/Refresh/startSiteRefreshPUTproviderAccounts
    POST/SiteAccountManagement/updateSiteAccountCredentialsPUTproviderAccounts

Please refer to the different additionalStatus values that are provided at the account-level and provider account-level. Use them as needed go offer the user experience that you want.

Handling Newly Introduced Features

Dataset Requesting Capabilities

In Yodlee Core API v1.1, Yodlee has introduced flexibility to mandate the retrieval of existing data attributes that are specifically required for your business flow. As Yodlee incurs additional cost to retrieve the following information from pages other than the landing page, you will have to subscribe for the dataset attributes if they are critical for your business flow:

  • Interest Details – The dataset attribute provides details of the interest rate for student loan accounts under the loan container.
  • Payment Details – The dataset attribute consists of loan payment-related details such as payoff amount, outstanding balance, etc. If both the attributes are mandatory for your use case then both attributes have to be explicitly requested.

Note: If the information is available in the landing page, Yodlee will continue to return the same to you, even if you have not subscribed to the datasets or attributes.