El evento “Notificar información del carrito” sirve para describir la cesta de la compra que tiene el contacto en un momento determinado. Para ello, notifica vía Mobile SDK los productos y el estado del carrito de un contacto mediante el uso del método Connectif.sendCart.
Cómo se usa
Esta notificación describe el carrito completo. Connectif se encarga de detectar los cambios y generar los eventos adecuados cuando se añade o se quita un producto del carrito.
Notificar el carrito de la compra
Este objeto representa un carrito de la compra completo en un determinado instante de tiempo. Incluye las siguientes propiedades:
Nombre | Obligatoria | Tipo | Descripción |
---|---|---|---|
cartId | Sí | String | Identificador único del carrito. |
totalQuantity | Sí | Int | Cantidad total de productos que hay en el carrito. |
totalPrice | Sí | Int | Precio total del carrito. |
products | Sí | Product Basket Item | Artículos que contiene el carrito, junto con la cantidad de los mismos y el importe. |
Notificar los productos mediante Product Basket Item
Este objeto representa los productos, la cantidad de los mismos y el precio total que hay en un carrito de la compra o en una compra. Incluye todas las propiedades del tipo de objeto Producto (más información en Notificar evento de producto visitado), además de las siguientes:
Nombre | Obligatoria | Tipo | Descripción |
---|---|---|---|
quantity | Sí | Int | Cantidad de unidades de este producto. |
price | Sí | Int | Precio acumulado de los productos representados por este Product Basket Item. Normalmente suele ser quantity * unitPrice . |
Otras consideraciones
Es muy importante establecer un identificador de carrito (cartId) y notificar a Connectif también cuando el carrito se vacía, para prevenir que se generen eventos de carritos abandonados.
Ejemplo
La notificación tendrá este aspecto:
let productBasketItem = ProductBasketItem( productDetailUrl: "https://example.com/product/12345", productId: "59a31949a1a562d4979fbca2", name: "Example Product", unitPrice: Decimal(51.88), description: "This is an example product", imageUrl: "https://example.com/product/images/12345.jpg", availability: "instock", categories: ["Electronics", "Gadgets"], tags: ["Trending", "New Arrival"], brand: "ExampleBrand", reviewCount: 150, rating: Decimal(4.5), ratingCount: 124, thumbnailUrl: "https://example.com/product/thumbnails/12345.jpg", relatedExternalProductIds: ["54321", "67890"], priority: 10, unitPriceOriginal: Decimal(120.00), unitPriceWithoutVAT: Decimal(80.00), discountedAmount: Decimal(20.00), discountedPercentage: Decimal(16.67), publishedAt: Date(), customField1: "Special Edition", customField2: "Limited Stock", customField3: "Online Only", price: Decimal(51.88), quantity: 1 ) let cart = Cart( products: [productBasketItem], totalQuantity: 1, totalPrice: Decimal(51.88), cartId: "cart-0098caf9-42f4-44e9-afdd-45eafe892293" ) Connectif.sendCart(cart)
Callbacks (Opcional)
Si queremos tener feedback de posibles errores al enviar eventos, podremos añadir un EventCallbacks cuando usemos nuestro método.
EventCallbacks( onSuccess: { //Manejo en caso de éxito }, onError: { error in //Manejo en caso de error })
Keep Learning!
To fully unlock the potential of your Connectif account, we recommend continuing with the following articles:
- Android SDK Get Started, to add Connectif Mobile SDK to your Android project.
- Firebase Cloud Messaging Setup, to enable push sending and receiving via the Android Mobile SDK.
- iOS SDK Get Started, to add Connectif Mobile SDK to your iOS project.
- Apple Push Notifications Service Setup, to enable push sending and receiving via the iOS Mobile SDK.