Yodlee MFA not availble when MFA error occurred

196 views Asked by At

I am integrating Yodlee MFA in my application but I am facing difficulties to render MFA form when any MFA errors occurred. So Steps I follow:

  1. The user selects MFA form say, Dag Site SecurityQA.
  2. The user enters username and password and waits for MFA authentication.
  3. MFA form renders to site and user enters wrong credentials
  4. User receives refresh response with error code 523
  5. Now user tries to refresh the site.

Here I get refresh response as,

{
  "siteRefreshStatus"=>{
    "siteRefreshStatusId"=>10,
    "siteRefreshStatus"=>"SITE_CANNOT_BE_REFRESHED"
  },
  "siteRefreshMode"=>{
    "refreshModeId"=>1,
    "refreshMode"=>"MFA"
  },
  "updateInitTime"=>0,
  "nextUpdate"=>2104528345,
  "code"=>523,
  "suggestedFlowReason"=>{
    "suggestedFlowReasonId"=>2,
    "suggestedFlowReason"=>"ACCOUNT_IN_ERROR"
  },
  "suggestedFlow"=>{
    "suggestedFlowId"=>3,
    "suggestedFlow"=>"EDIT"
  },
  "itemRefreshInfo"=>[
    {
      "memItemId"=>xxxxxx,
      "itemSuggestedFlow"=>{
        "suggestedFlowId"=>3,
        "suggestedFlow"=>"EDIT"
      },
      "itemSuggestedFlowReason"=>{
        "suggestedFlowReasonId"=>2,
        "suggestedFlowReason"=>"ACCOUNT_IN_ERROR"
      },
      "errorCode"=>523,
      "retryCount"=>4
    },
    {
      "memItemId"=>xxxxxx,
      "itemSuggestedFlow"=>{
        "suggestedFlowId"=>3,
        "suggestedFlow"=>"EDIT"
      },
      "itemSuggestedFlowReason"=>{
        "suggestedFlowReasonId"=>2,
        "suggestedFlowReason"=>"ACCOUNT_IN_ERROR"
      },
      "errorCode"=>523,
      "retryCount"=>4
    }
  ],
  "noOfRetry"=>4,
  "isMFAInputRequired"=>true,
  "siteAddStatus"=>{
    "siteAddStatusId"=>15,
    "siteAddStatus"=>"ADD_FAILURE"
  },
  "memSiteAccId"=>xxxxxx,
  "lastRefreshCompleteTime"=>1482460665
}

which says its MFA account.

I want to open MFA authentication form for this. But when I try to fetch MFA form using /jsonsdk/Refresh/getMFAResponseForSite API,

It doesn't give me MFA form details but gives following response.

{"isMessageAvailable"=>false, "timeOutTime"=>150000, "itemId"=>0, "errorCode"=>508, "memSiteAccId"=>xxxxxx, "retry"=>false}

Even after waiting after 5-10 mins, I get the same response for MFA form.

The user needs to go for change credentials to resolve this.

Does any work on this? I directly want to open MFA form if the response has MFA-related errors.

1

There are 1 answers

1
Saurabh Kumar On

We recommend you to please use our new Rest(Yodlee) API. Yodlee API's Swagger Tool

As you are using Rest Wrapper please follow these steps:

Please update your Step-5 with this-> Call updateSiteAccountCredentials API, then poll getMFAResponseForSite to get the MFA login form information.

When you will get "isMessageAvailable=true" in getMFAResponseForSite API's response then stop polling the API and build MFA login form accordingly.

Regards

Saurabh