BBVA-Wipöp es una nueva plataforma de pagos basada en Openpay, la cual, asimismo, es una plataforma de pagos en línea que permite a los negocios recibir pagos de sus clientes de forma segura y eficiente, tanto de forma presencial como online. Se integra con distintos métodos de pago como tarjetas de crédito y débito, transferencias bancarias, y otros métodos innovadores, como Bizum, GooglePay o ApplePay.
El reto
El objetivo es implementar una serie de plugins para distintos e-commerces basados en PHP, como Woocommerce y PrestaShop, que permitan integrar Wipöp como plataforma para procesar los pagos, pudiendo configurar qué opciones de pago se quieren habilitar cada vez y configurar características como el pago recurrente o preautorizaciones de cobro para cada producto del e-commerce.
La solución
Dado que hay que implementar varios plugins distintos, se corría el riesgo de hacer dos veces la implementación del API de Openpay, con los consiguientes riesgos de cara a actualizaciones o corrección de bugs. Por eso decidimos construir una librería PHP que luego pueda usarse como base para implementar los distintos plugins para cada e-commerce. De esta forma mantenemos la funcionalidad core en la libreria, con versionado semántico para facilitar el mantenimiento de los plugins.
Cada plugin desarrollado implementa esta librería, que contiene toda la lógica necesaria para comunicarse con el API de Openpay de forma transparente para el plugin, independientemente del e-commerce que sea.
El desarrollo
Para el desarrollo de la librería seguimos los principios de desarrollo de paquetes para Packagist, la plataforma de librerías que utiliza Composer, el gestor de paquetes de PHP. Hemos desarrollado una librería que actúa como un cliente HTTP que se comunica con el API de Openpay de forma transparente para el usuario, devolviendo siempre objetos de dominio conocidos. El versionado de la misma sigue el estándar SEMVER, de esta forma podemos gestionar cómodamente desde los plugins qué version de la librería usar, o actualizar solo correcciones de bugs sin obtener las nuevas características o pasar a una major version que podría romper la compatibilidad con nuestro plugin. Para cada uno de los plugins, hemos seguido los estándares de desarrollo de cada uno de los e-commerce, para asegurar la máxima compatibilidad con el mismo. Estos plugins luego de ser desarrollados se incluyen en los markets propios de cada e-commerce, para que puedan ser descargados e instalados por los usuarios.
El equipo
Alberto / Project Manager
Mangel / Tech Lead
Victor / Principal Developer
Tecnología utilizada
PHP 8.1
Woocommerce
PrestaShop
Proyectos relacionados

Signaturit
Signaturit es una plataforma de firma electrónica que permite firmar documentos y contratos de forma digital, legal y segura. Ofrece servicios como la firma simple,

softonic
Softonic es una plataforma de descarga de software que distribuye, categoriza y evalúa programas para Windows, Android y Mac en todo el mundo.

Civitatis
Civitatis es una plataforma online española de actividades turísticas. Con sede en Madrid, vende tours, excursiones, entradas a atracciones turísticas y otras actividades.