addSiteAccount即使凭据不正确,也返回siteAccountId

时间:2014-04-16 17:11:12

标签: yodlee

我想区分两种情况:addSiteAccount API包含不正确的凭据,addSiteAccount API包含正确的凭据集。我注意到两种情况都返回一个带有RefreshStatus = Triggered的siteAccountId。但是当我再次调用相同的API或任何其他API时,我收到一条Login错误消息。

如何在addSiteAccount的单次执行中区分这两种情况?

这样我就可以将错误传递给最终用户有关错误凭据的信息。感谢。

1 个答案:

答案 0 :(得分:0)

addSiteAccount1是API,它将创建siteaccountID,即链接的特定帐户的标识符。 在您尝试添加相同凭据之前,它不会返回任何错误,即在这种情况下,它将检查您是否已经添加了这些凭据并将返回这些凭据的响应。

了解其运作方式:

调用addSiteAccount1后,将创建siteAccountId并为其启动刷新。这将继续并验证通过银行网站传递的凭证,并将返回响应(成功或失败取决于传递的凭据)。

要检查状态,您需要在循环中调用getSiteRefreshInfo,我提及您的参考流程。

(仅适用于非MFA网站)

  1. CobLogin
  2. 寄存器3
  3. 登录
  4. AddSiteAccount1 - (这将触发刷新请求,无需调用startSiteRefresh)
  5. 检查#4返回的siteRefreshStatus字段的值,如果显示“REFRESH_TRIGGERED”,则可以转到#6
  6. 在循环中调用getSiteRefreshInfo,直到收到以下任一状态的SiteRefreshStatus
  7. PARTIAL_COMPLETE - 这表示帐户级数据已汇总 REFRESH_COMPLETED - 刷新已完成。

    LOGIN_FAILURE - 提供的登录凭据错误。

    REFRESH_CANCELLED - 用户取消刷新。

    REFRESH_TIMED_OUT - 刷新需要更多时间。

    7从#6你也得到一个“代码”,如果代码是 402 那么这意味着凭据是错误的,如果它是0(零),这意味着凭据是正确的和收集数据成功了。然后你可以去#8并抓住交易。 另外,要了解有关error_code的更多信息,请参阅ErrorCode文档。

    8 ExecuteUserSearchRequest或根据您的实现调用任何其他API。