UStackUStack
hyperswitch-prism icon

hyperswitch-prism

Hyperswitch Prism es una librería de conectores unificada y sin estado que usa un solo esquema de solicitud para integrarte con varios procesadores.

hyperswitch-prism

¿Qué es hyperswitch-prism?

Hyperswitch Prism es una librería de conectores unificada y sin estado para integrarte con procesadores de pagos. Está diseñada para proporcionar un único esquema de solicitud/interacción, de modo que los mismos patrones de llamada se puedan usar en múltiples procesadores de pagos con menos cambios de código.

Prism fue extraída y es mantenida por el equipo detrás de Hyperswitch, una plataforma de pagos de código abierto. El repositorio describe a Prism como una capa de transformación que se centra en la consistencia de la integración de conectores, dejando aspectos como vault/tokenización, reintentos y lógica de enrutamiento a Hyperswitch.

Características clave

  • Un esquema de solicitud unificado en todos los conectores: La misma llamada de autorización funciona con múltiples procesadores (p. ej., Stripe, Adyen) sin líneas de código adicionales dedicadas a cada procesador.
  • Librería sin estado (sin base de datos, sin PII almacenado): Prism no requiere una base de datos y evita almacenar datos personales; indica que las credenciales no se almacenan ni registran en la librería y solo existen durante la vida del cliente HTTP.
  • Control de alcance PCI por diseño: La librería puede evitar que los datos de tarjeta entren en Prism; los datos de tarjeta que fluyen (o no fluyen) a través de la librería se posicionan como una elección, con la posibilidad de usar un vault del procesador de pagos o un vault PCI certificado proporcionado por el usuario.
  • Pruebas continuas de conectores con un modelo de estado publicado: Los conectores se prueban continuamente contra entornos reales de sandbox/producción, con una leyenda de estados que cubre soporte completo, en progreso/parcial y necesita validación.
  • Interfaz idiomática y multiidioma (según la documentación del repositorio): Prism se describe como una interfaz type-safe e idiomática empaquetada como SDK multiidioma.

Cómo usar hyperswitch-prism

  1. Selecciona el SDK de Prism para tu lenguaje y revisa la guía del SDK para autenticación y patrones de solicitud.
  2. Escribe solicitudes de pago usando el esquema unificado de Prism (por ejemplo, usando la misma forma de llamada de autorización en diferentes procesadores de pagos).
  3. Elige dónde se maneja la data sensible de pago: usa tu propio vault PCI certificado o un vault del procesador de pagos, alineado con la nota del repositorio de que los servicios de vault/tokenización no están integrados en Prism.
  4. Valida la cobertura de conectores para tus necesidades usando la página de cobertura/estado de conectores del proyecto, ya que Prism describe niveles variables de soporte en los conectores.

Casos de uso

  • Integración de checkout multi-procesador: Quieres enrutar operaciones de pago a más de un procesador de pagos manteniendo cambios pequeños en el código de la aplicación al apoyarte en el esquema de solicitud unificado de Prism.
  • Reducción de estado y datos almacenados en tu capa de integración: Tu equipo prefiere una capa de conectores sin estado donde Prism en sí no requiere una base de datos y no almacena ni registra credenciales.
  • Alineación con responsabilidades PCI vía tu elección de vault: Quieres controlar si los datos de tarjeta se manejan dentro de tu infraestructura y elegir entre un vault del procesador de pagos o tu propio vault PCI certificado.
  • Equipos de ingeniería que mantienen lógica de conectores a lo largo del tiempo: Necesitas una capa de integración de conectores que se pruebe continuamente contra sandbox/producción y se rastree con estado por conector.
  • Integración de capa de transformación dentro de una plataforma de pagos más grande: Usas Prism como la capa de transformación, mientras implementas lógica de reintentos/enrutamiento en otro lugar (el repositorio apunta a Juspay Hyperswitch para estos aspectos).

Preguntas frecuentes

¿Es Prism responsable de las reintentos y la lógica de enrutamiento?
No. El repositorio indica que los reintentos o la lógica de enrutamiento están en Juspay Hyperswitch; Prism se presenta como una capa de transformación.

¿Incluye Prism un vault o servicio de tokenización integrado?
No. Se describe como una elección de diseño; puedes usar tu propio vault o el vault del procesador de pagos.

¿Almacena Prism credenciales o PII?
El repositorio indica que la librería no almacena ni registra credenciales, es sin estado sin base de datos, y no almacena PII. También señala que las credenciales solo existen durante la vida de tu cliente HTTP.

¿Cómo puedo saber qué procesadores de pagos y métodos de pago están soportados?
Prism publica la cobertura de conectores con una leyenda que indica soportado (totalmente implementado y probado), no aplicable/no soportado, en progreso/parcial, e implementación que necesita validación en entornos en vivo.

¿Cuántas llamadas de pago necesito implementar para múltiples procesadores?
La afirmación principal del repositorio es que un solo esquema de solicitud permite que la misma llamada de autorización funcione en procesadores como Stripe y Adyen sin líneas de código específicas adicionales del procesador.

Alternativas

  • Integraciones directas por procesador (múltiples SDKs / APIs): Implementa contra cada procesador de pagos por separado. Esto puede aumentar el código y mantenimiento específicos del procesador en comparación con un esquema unificado.
  • Plataformas de orquestación de pagos / conectores SaaS: Usa orquestación de terceros para abstraer múltiples procesadores. Estas alternativas suelen trasladar la complejidad a la plataforma en lugar de usar una librería de integración como capa de transformación.
  • Otras librerías de conectores sin estado o capas de middleware: Elige middleware que normalice solicitudes de pago entre proveedores. Las diferencias estarán en cómo manejan vault/tokenización, si mantienen estado, y cómo se gestiona la cobertura/pruebas de conectores.
  • Usar la lógica de conectores de Hyperswitch directamente (sin Prism como extracción): Si ya operas dentro de Hyperswitch, puedes depender de los componentes más amplios de la plataforma en lugar de adoptar Prism como librería unificada independiente.