Header Ads Widget

Ticker

6/recent/ticker-posts

La brillantez de las API internas de Spotify para mitigar los pagos


 Agregar nuevas capas de complejidad dentro de un servicio digital sin sacrificar la experiencia del usuario es una tarea difícil. Especialmente para las plataformas que aceptan pagos en línea y formatos de suscripción, mantener el soporte para un número creciente de métodos de pago es engañosamente complejo .

Los usuarios no quieren pensar demasiado en el proceso de pago. Simplemente quieren que los pagos funcionen con su método personalizado preferido. Sin embargo, la cantidad de métodos de compra en línea se ha disparado en los últimos años: las plataformas digitales ahora deben considerar el soporte no solo para tarjetas de crédito o cuentas bancarias, sino también para Paypal, criptomonedas como Bitcoin, pagos de Facebook, Google Wallet, Apple pay, Klarna, Boku, Sofort. … la lista continua.

Se espera que todo esto se comporte sin problemas, pero bajo el capó, manejar diversos métodos de pago de manera eficiente se está volviendo cada vez más complejo, lo que requiere una seria previsión.

En la Cumbre de Plataformas de APIs Nórdicas de 2016, nos ofrecieron un adelanto exclusivo de la arquitectura que implementan los ingenieros de software de Spotify para aceptar millones de pagos de suscripción de usuario cada mes. A medida que crean API internas para manejar las complejidades de sus suscripciones de pago, su plataforma es un excelente caso de estudio sobre el poder que tienen las API privadas para optimizar las operaciones internas.

A pesar de diseñar un sistema personalizado para su propio dominio comercial, el modelo de pago de Spotify seguramente podría inspirar a otras empresas digitales a introducir formatos similares de suscripción de pago escalables impulsados ​​por API en su propio marco de servicio.

La evolución de los pagos de Spotify

Para empezar, consideremos cómo evolucionó Spotify. En 2006, Spotify fue desarrollado por un pequeño equipo en Estocolmo y se lanzó al mercado escandinavo en octubre de 2008. En ese momento, solo aceptaban tarjetas de crédito / débito como método de pago.

A finales de 2011, su mercado volvió a crecer, extendiéndose por Europa y Estados Unidos. Fue entonces cuando agregaron soporte para Paypal. En 2013, el tamaño de su mercado volvió a aumentar y agregaron Boku, Sofort, Klarna, compras en la aplicación de Google (iAP) y pagos de Facebook como métodos de pago opcionales.

En este período de dos años, su crecimiento fue impresionante. A medida que Spotify estaba emergiendo en muchos mercados locales, decidieron cambiar su enfoque de solo aceptar métodos de pago globales a agregar soporte para más locales . Para hacer esto, en 2015 se asociaron con el servicio de pago Adyen , que permite a las empresas admitir más de 250 métodos de pago diferentes y más de 150 monedas, una solución verdaderamente globalizada pero con conocimiento local. Agregaron otros 9 métodos de pago a su pila, incluida la transferencia bancaria y las tarjetas de efectivo precargadas, lo que aumentó el compromiso de la marca en áreas que han experimentado una baja penetración de tarjetas de crédito.

En 2016, ahora tienen aproximadamente 40 millones de suscriptores en todo el mundo en 60 mercados. Además de ofrecer excelentes listas de reproducción musicales y experiencias de audio, su objetivo de remesas sigue siendo constante en todo el mundo: ayudar a los usuarios a seleccionar el método de pago más conveniente .


Esta publicación se inspiró en una charla de Horia Jurcut de Spotify en la Cumbre de APIs nórdicas de 2016

¿Qué sucede realmente con los pagos en línea?

Cosas como las suscripciones parecen un proceso fácil, pero el flujo de trabajo requerido incluso para un simple pago con tarjeta de crédito tiene una complejidad oculta, con muchos actores que trabajan y casos extremos únicos a considerar. Primero, analicemos el flujo de trabajo de un pago en línea típico realizado con una tarjeta de crédito Visa.

  1. El usuario abre una línea de crédito con un banco y recibe una tarjeta.
  2. Escriben su número de tarjeta en una pantalla de Checkout que se vincula con un Payment Backend .
  3. A continuación, Payment Backend intentará autorizar los detalles de pago con el Proveedor de pagos .
  4. Si tiene éxito, el proveedor de pagos se comunicará con el banco a través de la red de crédito para reservar dinero para una suscripción.
  5. Finalmente, el Banco confirma que la compra es posible, y la respuesta vuelve al Backend de Pago a través de la Red de Crédito .

Una vez completado este flujo común, se iniciará una suscripción en línea. ¿Cómo se diseña esta comunicación? Para Spotify, el proceso cuenta con el apoyo de tres actores principales: el Cliente con la página de pago, el Backend de pago y el Proveedor de pago . En realidad, sin embargo, Spotify admite 16 proveedores de pago diferentes , cada uno con API únicas que tienen diferentes implementaciones.

Entonces, ¿cómo debería una plataforma gestionar esta complejidad? Para hacerlo, Spotify desarrolló dos herramientas inteligentes: la API de Checkout para ayudar a crear flujos que faciliten a los usuarios ingresar los detalles de pago, y la API de facturación para interactuar con los diversos detalles de los proveedores de pago y las redes de crédito, lo que permite que el backend de pago determine si pueden cobrar a un usuario por una suscripción con una sola llamada.

La API de Checkout

El primer componente principal es la API de Checkout . Para comenzar una suscripción, Payment Backend debe intentar validar los detalles de pago e iniciar el flujo de trabajo mencionado anteriormente. Sin embargo, para hacer esto, primero necesita recopilar información de Spotify internamente, que en realidad se obtiene a partir de la entrada del usuario en clientes como dispositivos móviles o computadoras de escritorio. Dado que el tipo de clientes es múltiple, Spotify usa una máquina de estado .

Por lo tanto, su Payment Backend dicta las operaciones, controlando el flujo de trabajo y solicitando datos a los clientes. La API de Checkout facilita así la comunicación entre Payment Backend y los clientes.

Esto es necesario por el hecho de que pueden existir pasos adicionales en un flujo de trabajo de verificación. Por ejemplo, en algunos países, es posible que sea necesario completar la información fiscal. El Backend de pago de Spotify debe informar a los clientes de la existencia de este paso, y los clientes deben responder con un formulario matizado y recopilar también otros datos. Otros casos especiales pueden involucrar un código de oferta de una invitación por correo electrónico para unirse. Para todos estos escenarios, el backend decide qué datos se requieren y el cliente debe completarse con el formulario correcto.

La API clave que impulsa estas experiencias es la API de Checkout, que se encuentra entre los clientes de Spotify y Payment Backend. Esta API les permite crear formularios personalizados en un número infinito de iteraciones dentro de los clientes de Spotify.

Flujo de API de Checkout simple

  1. El Cliente inicia una compra, que activa la API de Checkout .
  2. La API de Checkout pregunta al Payment Backend cuál es el siguiente paso.
  3. Las Pago Backend responde diciendo que las necesidades de información de tarjeta de crédito para ser recogidos.
  4. La API de Checkout envía esto al Cliente , quien usa esta información para mostrar un formulario personalizado para que el usuario ingrese datos.
  5. La API de Google Checkout a continuación, envía los datos de la tarjeta para el pago de backend .
  6. Luego, Payment Backend procesa el pago, lo confirma con la API de Checkout , que inicia al Cliente para mostrar la página de confirmación.

Estos pasos podrían ampliarse fácilmente para escenarios de formularios personalizados. Para que esto funcione, la lógica empresarial siempre descansa en el backend para dictar los procesos y para que los clientes respondan con la información adecuada.

Hay algunos beneficios de diseñar un proceso de pago de esta manera. Tener la API de Checkout entre el backend y el cliente significa que puede modificar la experiencia de pago con bastante facilidad. Los propios clientes ahora también pueden crear experiencias nativas, lo que significa que los datos se pueden moderar en un dispositivo para alterar otras aplicaciones o funciones específicas del dispositivo.

La API de facturación

Una vez que Payment Backend recibe la información de pago, debe comunicarse con los Proveedores de pago para cobrar al usuario. La API de facturación de Spotify es el puente entre los proveedores de pago y su backend de pago; la segunda API interior necesaria para que se produzca este flujo de pago.

Dado que los proveedores de pago tienen una lógica comercial diferente (un cargo de crédito es instantáneo, mientras que una transferencia bancaria puede demorar de 3 a 5 días, por ejemplo), la API de facturación es muy útil. Traduce estas diferentes implementaciones en datos utilizables, ocultando la complejidad de 16 proveedores de pago diferentes del Backend de pago, consolidando las cosas en una sola llamada .

La API de facturación también es responsable del manejo de datos financieros, liquidación, monitoreo y otras tareas. Esto le permite al equipo comparar diferentes métodos de pago, como ver las diferencias de uso entre Paypal y un método donde se requiere confirmación por SMS.

Ejemplo de caso de uso: alertas automáticas

Una faceta principal del enfoque DevOps es tener alertas automáticas para permitir tiempos de respuesta más rápidos a los problemas del sistema. Spotify aprovecha la API de facturación interna para proporcionar funciones de monitoreo de plataforma enriquecidas , que luego se reutilizan en toda la empresa en lo que ellos llaman su "sistema de detección de anomalías". La API de facturación puede convertir las acciones de los proveedores de pago en cadenas de eventos consistentes, que luego se pueden monitorear y filtrar.

Las acciones diferentes para todos los métodos de remesas se hierven abajo en el intercambio de JSON con campos tales como messageamountproviderfailure_code, y más. La producción de eventos estandarizados para todos los tipos de métodos de pago permite alertas que pueden informar el desarrollo y las operaciones.

Hacer un seguimiento de las transacciones de pago recibidas y modelarlas con historiales de transacciones anteriores significa que el sistema puede detectar tendencias en fallas de pago . Entonces, cuando un desarrollador implementa un cambio que rompe el entorno de producción, el equipo recibe una alerta. Al utilizar estos mismos datos para completar visualizaciones, el equipo también puede detectar si un determinado proveedor de pagos tiene un problema, ya que los datos les permiten aislar las actividades de proveedores individuales.

Relacionado: Puede crear alertas automatizadas con estos marcos de bots de ChatOps

Tener un sistema de monitoreo para una API de facturación permite a una empresa seguir las tendencias y estar al tanto de los eventos locales, como los días festivos. También puede ayudar a automatizar la contabilidad interna; El enfoque de Spotify es tan detallado que si un pequeño proveedor de pagos pierde una fecha / hora de vencimiento para enviar solicitudes por lotes, el sistema de alerta de Spotify notificará inmediatamente al equipo.

Reutilizado de las diapositivas de sesión de Jurcut / Spotify.

Reutilizado de las diapositivas de sesión de Jurcut / Spotify.

4 razones por las que el diseño de API es fundamental para los servicios de suscripción

De todos los enfoques para manejar los pagos, ¿por qué los servicios de suscripción deberían diseñar sus propias API internas? Hay algunos beneficios:

  • Las API son independientes de la plataforma : en primer lugar, las API web están diseñadas para que las utilice cualquier cliente. Esto ayuda a ocultar la complejidad al tratar con una gran cantidad de clientes y proveedores de pagos. Dado que el panorama del método de compra aún está evolucionando, las interfaces adaptables son muy importantes.
  • Integraciones internas : otros beneficios incluyen la integración con plataformas de contabilidad, seguridad de pagos o monitoreo de la actividad del usuario. Tener API bien definidas para los servicios de suscripción permite poderosas capacidades de integración de datos con otros sistemas internos.
  • Escala de crecimiento : a medida que una empresa crece, la necesidad de crear productos más complejos se convertirá en una preocupación. Por lo tanto, tener un buen diseño de API ayuda a prepararse para la compatibilidad con la nueva lógica empresarial que afectará a la empresa.
  • Potencial de personalización : hay muchos proveedores de pago, servicios de agregación o pasarelas de pago en el mercado, pero crear sus propias API es una forma de garantizar la personalización y la eficiencia.

Horia Jurcut, ingeniero de software de Spotify, también describe su afecto personal por las API y las reverberaciones positivas que crean dentro de una empresa moderna:

- Las API facilitan la colaboración de varios equipos
- Las API lo ayudan a resolver un problema difícil y dividirlo en dominios más manejables
- Las API requieren documentación
- Las API le permiten probar, experimentar y aprender rápidamente.

API Longevity, Devious Drones y Bourbon: Eche un vistazo a más sorprendentes API Insights de la Platform Summit 2016

Análisis: la infraestructura escalable impulsada por API impulsará el futuro de los pagos en línea

Spotify ha equilibrado de manera impresionante lo pequeño y lo grande con su arquitectura de pago. Han arbitrado con éxito la complejidad que ha surgido de la necesidad de ofrecer opciones de personalización a sus usuarios y, al hacerlo, han creado una arquitectura escalable para aceptar múltiples pagos que podrían modelarse en otras empresas.

Al construir construcciones consistentes que interactúan con componentes maleables (proveedores de pago y clientes) a través de API, pueden escalar para uso global mientras se integran con proveedores de pago pequeños, lo que permite que su marca atienda a audiencias de nicho muy locales en mercados específicos.

Por el lado del usuario, agregar soporte para métodos de pago locales es una de las formas en que Spotify ha cumplido su compromiso de brindar excelentes experiencias al consumidor. Dado que el servicio de música de Spotify se destaca por ofrecer listas de reproducción musicales personalizadas y seleccionadas según el comportamiento del usuario, tiene sentido que sus modelos de pago también permitan métodos personalizados. La coherencia en toda la plataforma con el objetivo final de mejorar la UX debería ser, de forma similar, el objetivo final en otras empresas. Parece que una parte significativa del rápido crecimiento global de Spotify se debe, en parte, a un backend de pago bien diseñado.

La estrategia de pago de Spotify se adapta a otras empresas y puede actuar como un gran modelo arquitectónico para los nuevos servicios digitales orientados al usuario final que pretenden expandirse a mercados especializados con opciones de pago locales . Dado que el número de proveedores de pago sigue aumentando, las empresas digitales muy pronto deberán planificar cómo pueden aceptar y monitorear de manera más eficiente los nuevos tipos de pago dentro de sus suscripciones.

Dado que las decisiones que se tomen ahora con respecto a los pagos en línea serán cruciales para la longevidad de la plataforma digital , considere cómo su empresa podría empaquetar la funcionalidad de liquidación de paquetes de manera más eficiente. Si necesita o no una solución personalizada, depende de usted. Las emocionantes API de tecnología financiera emergente como Adyen ,  Klarna , Plaid , Stripe , Transpay u otras FinTech probablemente ayudarán a las PYMES, desbloqueando diferentes métodos de pago para que puedan convertirse en servicios reconocidos y respaldados a nivel mundial.

Aunque las opciones de pago detalladas pueden no ser necesarias actualmente para todos los servicios digitales, su ubicuidad va en aumento. Como mínimo, a partir de este estudio de caso podemos ver los beneficios de crear microservicios internos distribuidos: abstraer funcionalidades es clave para la escalabilidad.

 

Publicar un comentario

0 Comentarios