El uso del screen scraping frente al uso de las API: de qué manera aborda cada uno de estos el manejo de tus propias credenciales bancarias

Financial Connections

Stripe Financial Connections permite que tus usuarios compartan contigo, con toda seguridad, sus datos financieros.

Más información 
  1. Introducción
  2. De un vistazo
  3. ¿En qué consiste el uso de medios de screen scraping en el caso de los servicios que atañen al ámbito financiero?
  4. ¿Cómo funcionan las API de datos financieros?
  5. ¿Por qué reducen las API el riesgo para la seguridad en comparación con el screen scraping?
    1. Almacenamiento de credenciales o emisión de tokens
    2. Acceso total o acceso definido
  6. ¿En qué se diferencian la fiabilidad y la escalabilidad del screen scraping y las de las API?
  7. ¿Cómo afecta el screen scraping a la experiencia del usuario y a la confianza del cliente?
  8. ¿De qué manera están forzando los reguladores este cambio del sector, tendente a evitar el uso del screen scraping a favor del uso de las API?
  9. Cómo puede ayudar Stripe Financial Connections

Tanto el screen scraping como el acceso basado en las interfaces de programación de aplicaciones (API) ayudan a una empresa a obtener los datos financieros que necesitan partiendo de la cuenta bancaria de un cliente, pero usan mecanismos radicalmente distintos para conseguirlo. El screen scraping consiste en que se inicie sesión en tu cuenta bancaria con tus propias credenciales y se lean los datos que constan en las mismas páginas que tú podrías ver. El acceso a través de la API te redirecciona a la página de inicio de sesión de tu banco y, a continuación, se emite un token revocable con un ámbito establecido en el que no se usa en ningún momento tu contraseña. En ciertos casos, las conexiones basadas en la API han aumentado las tasas de éxito hasta en un 99,9 %. Además de en términos de fiabilidad, este método destaca por tener unos altos niveles de seguridad, puede mejorar la experiencia del usuario y puede ayudar a las empresas a mantenerse en un marco de conformidad con la normativa que se aplica.

A continuación, exploraremos de qué manera funcionan el screen scraping y el acceso a la API, el motivo por el cual el almacenamiento de credenciales genera un perfil de riesgo diferente del de los accesos basados en tokens y de qué modo los bancos y los reguladores están acelerando la tendencia del sector a recurrir a las API.

De un vistazo

  • El screen scraping tradicional requiere tener almacenadas las credenciales del banco de un cliente, y el acceso a través de la API se basa en los tokens revocables con un ámbito establecido que se emiten después de que el cliente realice de forma directa una autenticación en su banco.

  • En el caso del screen scraping, se puede romper cuando un banco hace un cambio en su sitio web, en tanto que las API devuelven datos con un sistema de estructura mediante un contrato que generalmente se altera solo cuando el banco realiza de forma deliberada una actualización.

  • La norma dispuesta en el Artículo 1033 de la Oficina para la Protección Financiera del Consumidor de EE. UU. (CFPB) y los actuales marcos de banca abierta vigentes en el Reino Unido y la UE están forzando a los bancos a que tiendan a usar unos medios de acceso estandarizados, y esto a menudo se traduce en el empleo de las API; con ello, se alejan del modelo de scraping basado en credenciales.

¿En qué consiste el uso de medios de screen scraping en el caso de los servicios que atañen al ámbito financiero?

El screen scraping consiste en que un tercero responsable de unos servicios acceda a tu cuenta bancaria valiéndose a tal efecto de tu nombre de usuario y tu contraseña con el propósito de ver tus datos directamente desde las páginas de tu propio banco a las que podrías acceder de modo normal, tras realizar tú el inicio de la sesión pertinente. Para ello no hay dispuesto en ningún momento de uso un canal que haya sido dedicado a proporcionar los datos, y, en la práctica, dicho tercero se vale del empleo de la misma sesión que emplearía un cliente con tal de realizar la recopilación de los datos tocantes a los saldos de su cuenta, sus registros del historial de transacciones y una serie de números de la cuenta directamente obtenidos de la propia página resultante.

¿Cómo funcionan las API de datos financieros?

El acceso a través de la API reemplaza el uso compartido de credenciales por un traspaso con permisos y se suele basar en Open Authorization (OAuth) 2.0, el estándar de facto para realizar la autorización en línea.

El proceso se desglosa en unos cuantos pasos que se diferencian claramente:

  • Redireccionamiento y autenticación: se te dirige directamente a la página de inicio de sesión de tu banco, donde debes introducir unas credenciales que solo este ve.

  • Consentimiento y ámbito: tu banco te pide que apruebes una serie de permisos limitados, como los saldos de tu cuenta o el historial de transacciones que le está permitido ver a la empresa que los ha solicitado, en lugar de proporcionar un acceso general a todos los datos de tu cuenta.

  • Emisión de tokens: en cuanto das tu aprobación, el banco emite un token de acceso para la empresa que lo solicita. Ese token representa una concesión limitada y revocable.

  • Entrega de datos estructurados: la empresa llama a la API del banco con ese token y a cambio recibe información de modo estructurado y correcto; por ejemplo, notación de objetos de JavaScript (JSON).

¿Por qué reducen las API el riesgo para la seguridad en comparación con el screen scraping?

La mayor diferencia entre el screen scraping y el acceso a través de la API es lo que se guarda y quién controla el acceso. Esa diferencia condiciona casi todas las consecuencias para la seguridad que se derivan de la primera cuestión: desde quedar expuestos a una brecha hasta con qué rapidez se puede cancelar una conexión comprometida.

Almacenamiento de credenciales o emisión de tokens

Normalmente, el screen scraping tradicional requiere que un agregador almacene tu nombre de usuario y tu contraseña reales del banco en alguna parte de sus sistemas, a menudo mientras sigues usando su servicio. Cada conjunto de credenciales que está almacenado es un objetivo si se produce una brecha en la base de datos de ese agregador.

Con las API, el token de acceso que se le proporciona a una empresa después de realizar la autenticación de OAuth es una credencial revocable con un ámbito establecido que normalmente caduca y que solo concede el acceso a lo que hayas aprobado (por ejemplo, visibilidad de solo lectura sobre el historial de transacciones). Si se comprometen los sistemas de una empresa, el token puede cancelarse al nivel del banco sin requerir que modifiques tu contraseña.

Acceso total o acceso definido

Una contraseña que se almacena concede al que la tiene el mismo acceso de nivel general que tendrías tú si iniciaras sesión en tu cuenta. Un token puede estar limitado a exactamente una función para que una empresa que está confirmando el saldo de tu cuenta para la solicitud de un préstamo no acabe obteniendo cinco años de tu historial de transacciones, algo que nunca le hizo falta. La diferencia entre el acceso total y el acceso definido es uno de los motivos por los que bancos, reguladores y proveedores de API consideran que el almacenamiento de credenciales es el modelo que tiene más riesgos.

¿En qué se diferencian la fiabilidad y la escalabilidad del screen scraping y las de las API?

Por su concepción, el screen scraping es algo poco estable, porque depende del propio sitio web del banco. Cuando un banco actualiza su flujo de inicio de sesión, rediseña su Dashboard o añade un nuevo paso de autenticación, es posible que los scrapers que se basaban en el antiguo diseño dejen de funcionar hasta que un ingeniero los reconstruya de forma manual. Esa fragilidad, sumada a los problemas a escala que crea, tiene como consecuencia la aparición de unos cuantos problemas característicos:

  • Dependencia del sitio: los scrapers se basan en el hecho de que el código HTML de un banco se mantenga constante, y esto significa que un rediseño de tipo rutinario puede interrumpir la conexión de un momento a otro y sin darle ningún aviso al agregador.

  • Mantenimiento manual: para los scrapers que están rotos, a menudo un ingeniero tiene que reconstruirlos a fin de adaptarlos a un nuevo diseño, y este trabajo se repite en miles de bancos de acuerdo con sus correspondientes calendarios de lanzamientos de productos.

  • Tasas de error más altas: las conexiones basadas en scraping suelen dar error con un porcentaje de frecuencia bastante más alto que las conexiones a través de API, especialmente tras el lanzamiento de una actualización en el sitio de un banco.

En términos generales, se considera que las API son más fiables por algunos motivos:

  • Contratos de datos definidos: la API del banco devuelve los datos de la cuenta conforme a unas estructuras que están fijadas; por ejemplo, un campo del saldo que tiene el formato de un número entero en céntimos y esa estructura no suele modificarse, salvo que el banco opte de forma deliberada por actualizar su API y proporcione un aviso para notificarlo.

  • Control de errores que es claro: una API devuelve un código de error explícito cuando se interrumpe algo, y por ello los sistemas de una empresa pueden saber si es necesario que se haga un reintento para solucionar la cuestión o notificar el problema en lugar de trabajar con datos que están corruptos o son incorrectos.

  • Escala lineal o en red: la infraestructura de banca abierta facilita el entablar relaciones de forma directa con miles de bancos y uniones de crédito, y esto significa que una empresa que haga una sola integración puede llegar a toda la red. Sin embargo, en el caso de un enfoque basado en el scraping, hace falta tener un script personalizado que se haya creado y se mantenga actualizado de forma específica para todos los bancos de la lista.

¿Cómo afecta el screen scraping a la experiencia del usuario y a la confianza del cliente?

Proporcionar tu nombre de usuario y tu contraseña del banco a una aplicación de un tercero requiere un nivel de confianza que a muchas personas no les gusta otorgar. La propia mensajería de seguridad de muchos bancos indica a los usuarios que nunca deben compartir sus credenciales de inicio de sesión fuera del sitio web del propio banco, de manera que una aplicación basada en scraping que solicita a los usuarios que hagan exactamente eso en su propia interfaz podría verse con recelo. Ese desajuste puede generar dudas a la hora de conectar una cuenta, lo que disuade a los usuarios de completar el flujo de asociación o hace que lo abandonen a la mitad del proceso cuando no confían en la solicitud de credenciales.

Los flujos basados en OAuth evitan ese problema porque la contraseña solo se escribe en la página de inicio de sesión de tu banco. Es una interfaz que te resulta familiar en un dominio conocido y la pantalla de permisos te indica de forma específica qué información aceptas compartir. Esa especificidad hace que se perciba de forma distinta la cuestión de otorgar el consentimiento, porque se te proporciona una lista concreta de elementos, como un saldo de la cuenta y el historial de transacciones de los últimos 90 días, y se te pide que lo apruebes o deniegues directamente. Como consecuencia de ello, los flujos de consentimiento creados en la autenticación bancaria directa pueden lograr tasas de finalización más altas que la agregación basada en credenciales.

Una vez que una mala experiencia o un titular acerca de una brecha en un agregador que usa screen scraping acaban con la confianza, es difícil volver a recuperarla. Las empresas que crean productos financieros abordan cada vez más el propio método de autenticación como un indicador de credibilidad en lugar de considerarlo como un simple detalle en la implementación.

¿De qué manera están forzando los reguladores este cambio del sector, tendente a evitar el uso del screen scraping a favor del uso de las API?

La norma del Artículo 1033 de la CFPB, que en la actualidad se halla en estado de pausa al emitir una orden judicial preliminar un tribunal de tipo federal, trata de aplicar una sección de la Ley Dodd-Frank por la cual los proveedores de datos, como los bancos, tengan la obligación de poner los datos de tipo financiero sobre los clientes a la total disposición de un tercero si así lo ordena su cliente. El fin previsto por la norma es dar a los clientes una serie de derechos legales sobre sus propios datos y presentados de modo utilizable y portátil. En esta normativa se apoya explícitamente el uso de aquellos medios de transferencia electrónica que sean estándar y seguros y esto en la práctica implica decantarse por el uso de las API en lugar del modelo de scraping basado en el manejo de las credenciales.

Muchas grandes instituciones financieras han dedicado ya una serie de años a crear una infraestructura de las API dedicada con el propósito de, en cierto modo, dejar de tener que proporcionar soporte al tráfico de scrapers que afecta a sus propios sitios web destinados a los clientes. Esto puede saturar la capacidad en un servidor y dar lugar a ciertas complicaciones a la hora de realizar la revisión de las medidas de seguridad. Este cambio de perspectiva del sector cuenta con los precedentes sentados en los marcos de la banca abierta del Reino Unido y la UE.

Habida cuenta de que muchas entidades e instituciones financieras y de unión de crédito de tamaño más reducido aún no cuentan con la infraestructura de la API que han creado los bancos de mayor tamaño, en algunos agregadores se sigue usando el recurso del scraping a modo de resguardo de emergencia destinado a aquellas cuentas para las que no se proporcione de momento la alternativa en forma de uso de una API. No obstante, a medida que la aplicación del Artículo 1033 prosiga avanzando y más bancos pasen a disponer de ciertos endpoints de las API con los que cumplir con el estado de conformidad en torno a la normativa, es natural que las empresas dedicadas a la labor de crear productos de tipo financiero se vean empujadas, cada vez con mayor grado de razones, a adelantarse y realizar su transición propia antes de verse abocadas al momento de que sus mismas conexiones basadas en los métodos que emplean en el scraping se hayan quedado ya totalmente obsoletas.

Cómo puede ayudar Stripe Financial Connections

Stripe Financial Connections constituye un determinado conjunto provisto de unas API con las que tienes a tu total alcance el hecho de conectar la totalidad de las cuentas bancarias dispuestas por tus clientes en condiciones que sean del todo seguras para las partes y en virtud del cual poder rescatar una información financiera tocante a ellos, y que ello resulte habilitado de forma en que seas capaz de crear tus propios productos de naturaleza financiera en que no falte la vocación a la innovación por lo que atañe a esos servicios.

Esto es lo que puedes conseguir con Financial Connections:

  • Simplificar el onboarding: ofrece un proceso de verificación de cuenta bancaria instantáneo y fluido que no requiere verificación manual de la identidad y la cuenta.

  • Posibilidad de darte un gran nivel de acceso a una enorme gama de datos del mundo de las finanzas: obtén en tu uso información pormenorizada relativa a las cuentas en los bancos proporcionadas por tus clientes, y que al mismo tiempo conste del abanico de datos formado por saldos, sus transacciones pertinentes y asimismo sus propios datos de la cuenta.

  • Automatizar los pagos recurrentes: permite a tus clientes vincular sus cuentas bancarias de forma segura para pagos recurrentes, lo que mejora las tasas de pagos efectuados correctamente.

  • Mejorar la gestión de riesgos: analiza los datos financieros de los clientes para tomar decisiones más fundamentadas sobre crédito, préstamos y otros productos financieros.

  • Cumplir con la normativa: Financial Connections te ayuda a cumplir con los requisitos de conocimiento del cliente (KYC) y prevención del blanqueo de capitales (AML).

  • Innovar con confianza: crea nuevos productos y servicios financieros sobre la infraestructura segura y fiable de Financial Connections.

Obtén más información acerca de Financial Connections o empieza hoy mismo.

El contenido de este artículo tiene solo fines informativos y educativos generales y no debe interpretarse como asesoramiento legal o fiscal. Stripe no garantiza la exactitud, la integridad, la adecuación o la vigencia de la información incluida en el artículo. Busca un abogado o un asesor fiscal profesional y con licencia para ejercer en tu jurisdicción si necesitas asesoramiento para tu situación particular.

Más artículos

  • Se ha producido un error. Vuelve a intentarlo o contacta con soporte.

¿A punto para empezar?

Crea una cuenta y empieza a aceptar pagos: no tendrás que firmar ningún contrato ni proporcionar datos bancarios. Si lo prefieres, puedes ponerte en contacto con nosotros y diseñaremos un paquete personalizado para tu empresa.

Financial Connections

Stripe Financial Connections permite que tus usuarios compartan contigo sus datos financieros de forma segura.

Documentación de Financial Connections

Descubre cómo acceder a los datos autorizados de las cuentas financieras de tus usuarios.