Cómo funciona la API de Open Payments

Resumen

En 2023, una cafetería en Kenia recibió su primer pago desde Japón usando solo una dirección de billetera, sin bancos intermediarios. Detrás de esa simplicidad está la API de Open Payments, una tecnología que conecta sistemas financieros desconectados y que cualquier desarrollador o usuario interesado en pagos digitales debería entender.

Enviar dinero ya es tan fácil como enviar un email, pero la magia técnica ocurre gracias a una arquitectura estandarizada que vamos a desglosar paso a paso.

¿Qué es la API de Open Payments y cómo se estructura?

Una API conecta dos mundos: el cliente hace una solicitud y el servidor responde con datos o ejecuta una acción. En el caso de Open Payments, esa conversación está perfectamente definida [01:00].

Cuando recuperas un pago, la API espera campos específicos:

  • Wallet address (requerido): una cadena con la URL de la cuenta que recibe el dinero.
  • Quote ID (requerido): el identificador único de la cotización del pago.
  • URL de la cotización: define el monto exacto del pago.
  • Metadata (opcional): un objeto con información adicional asociada a la transacción.

Así, cada interacción tiene reglas claras sobre qué datos se necesitan y qué acciones se ejecutan.

¿Qué es un quote ID en Open Payments? Es un identificador único que tu proveedor genera antes de aprobar un pago. Incluye monto, comisiones y tipo de conversión, para que veas todo con transparencia antes de confirmar.

¿Por qué Open Payments usa un modelo RESTful API?

Open Payments organiza todo en torno a recursos y métodos estándar, lo que lo hace predecible para cualquier desarrollador [01:30].

Los recursos principales son quotes, payments y accounts. Los métodos siguen la convención REST:

  • GET para obtener información.
  • POST para crear algo nuevo, como una cotización.
  • PUT para actualizar.
  • DELETE para eliminar.

Esta estandarización permite construir funcionalidades de pago sin procesadores de terceros, sin integraciones personalizadas y en cualquier lenguaje de programación. Y aquí viene una distinción que mucha gente confunde.

¿Cuál es la diferencia entre Open Payments API y Open Payments Standard?

La Open Payments API son las implementaciones concretas que cada proveedor expone para manejar cuentas, balances y pagos. El Open Payments Standard, en cambio, es el conjunto universal de funcionalidades que asegura que todas las APIs hablen el mismo idioma.

Piénsalo como el correo electrónico: Gmail, Outlook y Yahoo tienen interfaces distintas, pero todos usan el mismo protocolo para que los mensajes viajen sin problemas. Open Payments hace lo mismo con el dinero.

¿Cómo funcionan las autorizaciones con el protocolo GNAP?

Antes de hablar de autorizaciones, aclaremos un concepto: un cliente es simplemente un software capaz de hacer un request a la API de Open Payments [03:00].

Open Payments utiliza el protocolo GNAP (negociación y autorización de concesiones) para otorgar permisos a la aplicación cliente que interactúa con la cuenta del usuario. El servidor de autorización (AS) implementa GNAP y entrega tokens de acceso. Los clientes usan esos tokens para acceder a los recursos en nombre del usuario.

Imagina que compras un libro en línea por 15 dólares. La tienda tiene tu wallet address. El sistema conecta con tu proveedor y te llega una notificación: "La librería quiere aprobar 15 dólares". Confirmas con tu huella o contraseña y listo.

Lo importante: la tienda nunca vio tu contraseña, nunca tuvo acceso a tu cuenta. La validación ocurrió directamente entre tú y tu proveedor.

¿Por qué Open Payments es más seguro que los métodos tradicionales?

En los sistemas tradicionales tenías que entregar información sensible: números de tarjeta, cuentas bancarias, identificaciones. Cada paso aumentaba el riesgo de fraude.

Con Open Payments solo compartes tu llave pública dentro de tu wallet address. Menos intermediarios, menos exposición, más seguridad.

Un paralelismo claro: cuando una app de filtros quiere acceder a tu Google Photos, Google te pregunta si das permiso. Inicias sesión, autorizas y la app recibe un token de acceso para usar tus fotos. En Open Payments pasa lo mismo, pero con tu dinero, y todo ocurre a través de la billetera de pruebas sin que tengas que hacerlo manualmente.

¿Qué es GNAP y para qué sirve? Es el protocolo de autorización que usa Open Payments para entregar tokens de acceso seguros. Permite que una app actúe en tu nombre sin nunca ver tus credenciales.

¿Cómo fluye un pago paso a paso con la API de Open Payments?

El flujo completo es más sencillo de lo que parece [05:30]:

  1. El cliente solicita un quote al servidor usando la API.
  2. El servidor devuelve el quote ID con todos los detalles del pago.
  3. El cliente revisa y aprueba la cotización.
  4. Se envían las instrucciones al servicio de pagos.
  5. La transacción se ejecuta con seguridad gracias al protocolo GNAP.

Este flujo permite la integración directa entre aplicaciones y cuentas de usuarios. Las entidades de servicio de cuentas (ASE) crean cuentas habilitadas para Open Payments y establecen un canal de pago común entre ellas, lo que se convierte en una forma estandarizada de liquidar transacciones.

La API de Open Payments combina principios de Internet, recursos RESTful, identificadores únicos como el quote ID y un estándar abierto que une a todos los proveedores. Para los usuarios significa simplicidad y control. Para los desarrolladores, una base sólida y universal sobre la cual construir.

¿Qué proyecto te gustaría construir usando Open Payments? Cuéntame en los comentarios cómo imaginas tu primera integración.