金融数据应用程序编程接口(API)允许商家在客户同意分享后拉取该客户的银行账户信息。商家不再需要手动收集银行对账单或作废支票,而是请求结构化的记录(例如,余额、交易历史记录、账户和路由号码)。这些记录由管理连接及相关同意的中介机构直接从客户的金融机构传回。
2024 年的一项研究发现,在美国约有 11% 的成年人使用金融数据 API 进行了至少一次开放银行业务的支付交易。下面,我们将解释这些连接如何运作、可用的不同访问模型,以及结果在贷款、工资验证和账户聚合等业务流程中的何处出现。
要点
金融数据 API 通过直接由用户控制的同意流程,返回经客户许可的银行记录,例如余额、交易和账户详情。
商家可以在实时连接、定期刷新、Webhook 和历史检索之间进行选择,这取决于数据需要达到多新。
集成成功在很大程度上取决于团队如何处理不同银行间的令牌过期、错误状态以及不一致的数据模式。
什么是金融数据 API?
金融数据 API 是允许商家在获得明确的用户许可后,检索客户的银行账户信息的编程接口。请求者无需让任何人通过电子邮件发送银行对账单或手动输入路由号码,而是可以通过管理该连接的中介机构直接向客户的金融机构请求结构化数据。
金融数据 API 如何运作?
金融数据 API 连接遵循同样基本的步骤顺序:
金融数据 API 的常见数据访问模型是什么?
并非每个用例都需要相同类型的连接。以下是常见的数据访问模型:
实时直接连接: 商家在其需要数据的确切时刻查询 API(例如,在发起支付之前马上检查余额)。这提供了尽可能最新鲜的信息,但它依赖于银行系统快速响应。
定期数据刷新: API 按照设定的时间表而不是按需拉取更新的数据。这非常适合在几周或几个月内向客户显示其支出模式且不需要秒级准确度的账户聚合工具。
针对账户更改的 Webhook: 与其检查更新,商家选择注册以在发生更改(例如,新的交易发布、同意被撤销)时获得通知。这最大程度减少了不必要的请求,并允许系统在事件发生时做出响应。
历史数据检索: 单次请求将拉取过去数月的活动,可用于在更长的时间段内评估收入稳定性或支出行为。
金融数据 API 解决了哪些业务问题?
金融数据 API 用实际的银行记录取代了人工验证和存疑的数字。以下是该数据可证明其有用的地方:
即时银行账户验证: API 返回的数据可确认账户是真实的并且属于声称拥有它的人,而无需让商家等待几天的时间以结清小额存款。
银行转账发起: API 使用经验证的账户和路由号码来设置银行转账,从而减少由输入错误或不匹配的详细信息而导致的失败支付。
贷款和审批: API 拉取交易历史记录以评估现金流模式,相比仅靠信用报告所能提供的画面,它为贷方提供了更新的画面。
工资和收入验证: 可以通过查看存款历史记录来确认收入,而不是依赖可能已经过时或被更改的工资单。
金融账户聚合: API 将来自多个账户的余额和交易提取到单个管理平台中,这正是许多预算应用在一个地方向客户展示其完整财务状况的方式。
个人理财工具: API 使用经过分类的交易数据来帮助某人根据预算跟踪支出或了解他们每个月的资金去向。
使用金融数据 API 面临哪些挑战?
在围绕这些 API 之一进行构建之前,有必要了解一些约束条件。请注意以下几点:
数据新鲜度: 定期刷新连接可能会显示一天前的余额。这种延迟对于实时支付授权等用例可能具有重要影响。
机构覆盖范围: 较大的银行往往具有稳定且经过充分测试的连接。规模较小的信用合作社或区域性银行有时正常运行时间不太稳定,或者对较新 API 功能的支持较慢。
同意过期: 用户可以随时撤销访问权限。这意味着当数据连接意外断开时,商家需要为客户关系或依赖交易将发生的情况制定计划。
合规开销: 处理经过客户许可的金融数据伴随着有关同意记录、数据保留以及信息存储和共享方面的自身义务。与已经内置了这些流程的提供商合作可以减少商家必须自己构建的内容。
第三方依赖: 依赖第三方银行接口意味着依赖该提供商的正常运行时间、支持响应速度和路线图。提供商端的服务中断将演变成依赖该数据的任何人的服务中断。
开发人员在集成金融数据 API 时需要考虑什么?
成功的集成需要采用长期策略,重点关注性能、弹性和错误处理。特定的因素往往决定了集成的可靠程度:
身份验证处理
许多金融数据 API 都会签发与客户初始同意相关联的 OAuth- 样式的令牌。如果用户更改其银行密码或手动断开账户连接,这些令牌可能会过期或被撤销。团队需要一个计划来检测已过期的令牌并提示重新授权。
错误状态
对于每种可能的错误,无论是由于银行系统维护、账户关闭还是请求超时,都需要向终端用户发送一条消息。机构端的这种暂时性中断可能会削弱客户的信任。
速率限制
金融机构限制了任何给定账户被查询的频率;过于频繁地拉取数据的商家可能会面临被限流或暂时封禁的风险。这在一定程度上就是为什么存在定期刷新和 Webhook 模型的原因;它们消除了不断检查的必要。
数据模式
当商家接收金融数据时,模式会被标准化,但填充这些字段的值并不总是一致的。交易描述可能是来自一家银行的原始商家字符串,以及来自另一家银行的预清理名称。团队需要针对一系列机构进行测试,而不是假设全面的值都是干净一致的。
测试环境
许多提供商提供沙盒凭据,可以模拟银行连接而无需接触真实的账户。这让开发人员可以在涉及任何真实的客户数据之前构建和测试错误处理。
一些提供商还提供涵盖银行选择、登录和同意的预构建流程,这些流程可以直接嵌入。当提供商通过其自己的接口处理这些步骤时,商家的工程团队主要需要处理随后接收的令牌和信息;他们不需要构建和保护授权流程本身。这就最大限度地减少了他们可能需要解决的问题数量。
评估金融数据 API 平台时需要考虑哪些因素?
在平台之间进行选择时,请考虑每个平台连接到哪些机构,以及它对您的客户使用的特定银行和信用合作社的支持程度。了解它返回哪些数据类型,以及它们是否足够规范化,以便您的团队无需为每家银行编写单独的逻辑。
还要查看开发人员的体验,从文档和沙盒测试到错误显示方式。如果您已经在使用提供商提供其他金融基础设施,请确定该平台是否与您已构建的基础设施集成,或者是否需要您维护第二个不相连的系统。
Stripe Financial Connections 支持跨各种金融机构的账户验证、余额检查以及交易和身份数据,并具有处理银行选择和客户同意的托管用户界面,以便开发人员无需从头开始构建该流程。
如果一家商家已经在使用 Stripe 进行支付或开单,并通过 Financial Connections 提取其信息,则可以将其直接输入其他 Stripe 产品,例如使用经过验证的账户数据设置银行转账(例如美国的 ACH (Automated Clearing House) 支付),或将交易历史记录输入审批决策——而无需为每个应用场景寻找单独的供应商。
Stripe Financial Connections 如何提供帮助
Stripe Financial Connections 是一套 API,允许您安全地关联客户的银行账户并获取他们的财务数据,从而构建创新的金融产品和服务。
Financial Connections 可以帮助您:
简化入驻流程:提供无缝、即时的银行账户验证流程,无需人工核验身份与账户信息。
访问丰富的财务数据:获取客户银行账户的完整信息,包括余额、交易记录及账户详情。
自动化经常性付款流程:支持客户安全绑定银行账户实现经常性付款,提升支付成功率。
加强风险管理:分析客户财务数据,为信贷、借贷及其他金融产品决策提供依据。
遵守法规:Financial Connections 可帮助您满足客户身份验证 (KYC) 和反洗钱 (AML) 要求。
安心创新:基于安全可靠的 Financial Connections 基础设施开发新型金融产品与服务。
本文中的内容仅供一般信息和教育目的,不应被解释为法律或税务建议。Stripe 不保证或担保文章中信息的准确性、完整性、充分性或时效性。您应该寻求在您的司法管辖区获得执业许可的合格律师或会计师的建议,以就您的特定情况提供建议。