UNPKG

cashea-web-checkout-sdk

Version:
201 lines (167 loc) 5.7 kB
# Cashea Web Checkout SDK 🛒 🔹 SDK para integrar Web Checkout mediante clase configurable. ## 📌 Instalación Puedes instalar el SDK mediante npm: ``` npm install cashea-web-checkout-sdk ``` O importar directamente en un archivo HTML: ``` <script src="dist/bundle.js"></script> ``` ## 🚀 Cómo Usarlo ### 1️⃣ Instanciar el SDK Debes configurar la API key al instanciar el SDK: ```javascript import CheckoutSDK from "cashea-web-checkout-sdk"; const sdk = new CheckoutSDK({ apiKey: 'TU_API_KEY', }); ``` ### 2️⃣ Configuración del Payload - Creación de orden ``` const payload = { deliveryMethod: 'IN_STORE', redirectUrl: 'https://mi-sitio.com/retorno', merchantName: 'Mi Comercio', orders: [ { store: { id: 123, name: 'Mi Tienda', enabled: true, }, products: [ { id: 'prod-001', name: 'Producto A', price: 50, quantity: 2, sku: "SKU-123", description: "descripcion", imageUrl: "https://mi-sitio.com/imagen.jpg", tax: 0, discount: 0, }, ], }, ], identificationNumber: '123456789', invoiceId: 'inv-001', externalClientId: '351', deliveryPrice: 0, }; ``` ### Campos del Payload * **deliveryMethod** (Cadena de texto) - **Descripción**: Método de entrega de la orden. - **Valores posibles**: 'IN_STORE', 'DELIVERY' - **Ejemplo**: 'IN_STORE' - **Requerido**: Sí * **identificationNumber** (Cadena de texto) - **Descripción**: Número de identificación del cliente. - **Ejemplo**: '123456789' - **Requerido**: Sí * **orders** (Arreglo de objetos) - **Descripción**: Lista de órdenes de compra. - **Requerido**: Sí - **Campos del objeto**: - **storeId** (Número) - **Descripción**: ID de la tienda. - **Ejemplo**: 123 - **Requerido**: Sí - **products** (Arreglo de objetos) - **Descripción**: Lista de productos en la orden. - **Requerido**: Sí - **Campos del objeto**: - **storeId** (Número) - **Descripción**: ID de la tienda. - **Ejemplo**: 123 - **Requerido**: Sí - **enabled** (Booleano) - **Descripción**: Indica si el producto está habilitado. - **Ejemplo**: true - **Requerido**: Sí - **name** (Cadena de texto) - **Descripción**: Nombre del producto. - **Ejemplo**: 'Producto A' - **Requerido**: Sí - **sku** (Cadena de texto) - **Descripción**: SKU del producto. - **Ejemplo**: 'SKU123' - **Requerido**: Sí - **description** (Cadena de texto) - **Descripción**: Descripción del producto. - **Ejemplo**: 'Descripción del producto' - **Requerido**: Sí - **imageUrl** (Cadena de texto) - **Descripción**: URL de la imagen del producto. - **Ejemplo**: 'https://mi-sitio.com/imagen.jpg' - **Requerido**: Sí - **quantity** (Número) - **Descripción**: Cantidad del producto. - **Ejemplo**: 2 - **Requerido**: Sí - **price** (Número) - **Descripción**: Precio del producto. - **Ejemplo**: 50 - **Requerido**: Sí - **tax** (Número) - **Descripción**: Impuesto del producto. - **Ejemplo**: 10 - **Requerido**: Sí - **discount** (Número) - **Descripción**: Descuento del producto. - **Ejemplo**: 5 - **Requerido**: Sí * **installmentPlanId** (Número) - **Descripción**: ID del plan de cuotas. - **Ejemplo**: 1 - **Requerido**: No (valor por defecto: 1) * **invoiceId** (Cadena de texto) - **Descripción**: ID de la factura asociada a la orden. - **Ejemplo**: 'inv-001' - **Requerido**: No (opcional) * **externalClientId** (Cadena de texto) - **Descripción**: ID del cliente externo. - **Ejemplo**: '351' - **Requerido**: Sí * **deliveryPrice** (Número) - **Descripción**: Precio del envío de la orden. - **Ejemplo**: 0 - **Requerido**: No (opcional) ### 3️⃣ Agregar un Botón de Pago El SDK permite crear un botón de pago que dirige al usuario al flujo de Web Checkout. ``` const container = document.getElementById("checkout-container"); sdk.createCheckoutButton({ payload: payload, container: container, }); ``` 🔹 payload: Información de la orden. 🔹 container: Elemento HTML donde se insertará el botón. ## 🔄 Confirmación y Cancelación de Órdenes Una vez que el usuario complete el pago, será redirigido a la URL especificada en `redirectUrl` con un **idNumber**. #### 📌 Ejemplo de Redirección ``` https://mi-sitio.com/retorno?idNumber=12345 ``` 🔹 El **idNumber** se usa para **confirmar o cancelar** la orden. ## 📝 Preguntas Frecuentes (FAQ) #### ❓ ¿Cómo obtengo un API Key? Debes solicitarlo al equipo de integración de Cashea. #### ❓ ¿Cómo actualizo el SDK? Simplemente corre: ``` npm update web-checkout-sdk ``` ## 📌 Contribuciones y Soporte Si encuentras un problema o quieres contribuir, puedes hacer un pull request en nuestro repositorio de GitHub: 🔗 [Repositorio en GitHub](https://github.com/The-Flock/Cashea). Para soporte, puedes escribir a: soporte@cashea.com ## 📝 Licencia Este SDK está licenciado bajo la **MIT License**. ## 🎉 ¡Listo! Ahora puedes integrar Web Checkout en minutos. 🚀 🔹 Si tienes dudas, revisa nuestra documentación o contáctanos. 🔹 ¡Gracias por usar Web Checkout SDK! 😊