SDK Web
El SDK Web de Cubo Pago es un conjunto de herramientas de desarrollo que permite a tu aplicación web interactuar directamente con los lectores de tarjetas de Cubo Pago a través de una conexión Bluetooth.
Con este SDK, tu plataforma puede iniciar y completar transacciones de pago de forma sencilla y segura. En la práctica, esto convierte cualquier navegador web compatible en un punto de venta totalmente funcional.
⚠️ Actualmente, este SDK funciona solo con el modelo de terminal Cubo QPOS Cute.
Requisitos previos
Antes de integrar el SDK, asegúrate de cumplir con los siguientes requisitos indispensables:
-
API Key generada en Cubo Admin
Necesitas una API Key válida para poder realizar pagos. Si aún no la has generado, consulta nuestra guía. -
Sitio en contexto seguro (HTTPS)
Tu aplicación debe estar servida sobrehttps. Solo se permitehttp://localhostdurante el desarrollo. -
Bluetooth disponible y activado
El dispositivo donde se ejecuta la app debe contar con conectividad Bluetooth. -
Compatibilidad con navegadores
El SDK funciona únicamente en los siguientes navegadores:- Chrome (Desktop y Android)
- Edge (Desktop)
- Opera (Desktop y Android)
No es compatible con Safari (macOS/iOS) ni con Firefox.
Funcionalidades clave
Esta sección resume brevemente las funciones clave del SDK. Para ejemplos detallados de implementación, consulta el repositorio oficial.
🔗 Conexión con el lector
El SDK permite conectar y desconectar el lector de tarjetas mediante los métodos connect() y disconnect(). Estos métodos gestionan la conexión Bluetooth directamente desde el navegador.
💳 Iniciar pagos
Para procesar una transacción, se utiliza el método startPayment(), que recibe los siguientes parámetros:
amount: Monto a cobrar en centavos (ej."1250"para $12.50).currencyCode: Código numérico ISO 4217 (ej."0840"para USD -"0320"para GTQ).currencySymbol: Símbolo de la moneda (ej."$"-"Q").
📡 Escuchar eventos del SDK
El SDK emite varios eventos para informar sobre el estado del proceso de conexión y pago. Puedes escucharlos con el método on().
Eventos disponibles:
-
connected: Se dispara cuando la conexión con el lector se establece correctamente. -
disconnected: Indica que el lector se ha desconectado (manualmente o por pérdida de señal). -
loading: Indica que hay una operación en curso (por ejemplo, procesando un pago). -
transactionResult: Devuelve el resultado final de una transacción. -
error: Se emite cuando ocurre un error en el SDK o en la comunicación con el lector. -
status: Informa sobre cambios en el estado general de conexión y pago. A continuación, se listan los estados posibles emitidos:Estado Descripción searchingBuscando dispositivos Bluetooth connectingConectando con el dispositivo connectedConexión establecida disconnectedSin conexión waiting_for_cardLector listo, esperando tarjeta processing_paymentProcesando información de la tarjeta payment_successTransacción exitosa payment_failedLa transacción falló transaction_terminatedInforma que la transacción fue cancelada antes de completarse (por el usuario, por tiempo de espera, o por un error). No significa “Aprobada” ni “Declinada”.
Repositorio oficial
Visita el repositorio oficial para acceder a ejemplos completos, código y toda la documentación técnica. ¡Comienza tu integración hoy mismo! 🚀.