Aperçu
Le panier est stocké dans le localStorage du navigateur et persiste entre les rechargements de page. Toutes les opérations sur le panier sont synchrones et mettent à jour l’état local immédiatement.
L’objet komerza est disponible globalement après l’inclusion du script.
Appelez komerza.init('votre-id-boutique') avant d’utiliser d’autres
méthodes.
Ajouter des articles
Ajoutez une variante de produit au panier avec une quantité spécifiée.
komerza.addToBasket(productId, variantId, quantity);
Paramètres
L’identifiant unique du produit
L’identifiant unique de la variante du produit
Combien d’articles ajouter (par défaut 1 si non fourni)
Exemple
// Ajouter 2 articles d'une variante de produit spécifique
komerza.addToBasket("prod_abc123", "var_xyz789", 2);
// Gestionnaire du bouton ajouter au panier
document.getElementById("add-to-cart").addEventListener("click", () => {
const productId = "prod_abc123";
const variantId = document.getElementById("variant-select").value;
const quantity = parseInt(document.getElementById("quantity").value) || 1;
komerza.addToBasket(productId, variantId, quantity);
alert("Ajouté au panier !");
});
Voir le panier
Obtenez tous les articles actuellement dans le panier.
const items = komerza.getBasket();
Retours
Retourne un tableau d’objets BasketItem :
interface BasketItem {
productId: string; // Identifiant du produit
variantId: string; // Identifiant de la variante
quantity: number; // Nombre d'articles
}
Exemple
const basket = komerza.getBasket();
if (basket.length === 0) {
console.log("Le panier est vide");
} else {
basket.forEach((item) => {
console.log(
`Produit : ${item.productId}, Variante : ${item.variantId}, Qté : ${item.quantity}`,
);
});
}
Obtenir le nombre d’articles
Obtenez le nombre total d’articles dans le panier (somme de toutes les quantités).
const count = komerza.getBasketItemCount();
Retours
Retourne un nombre représentant la quantité totale de tous les articles.
Exemple
function mettreAJourBadgePanier() {
const count = komerza.getBasketItemCount();
document.getElementById("cart-count").textContent = count;
if (count > 0) {
document.getElementById("cart-badge").style.display = "block";
}
}
mettreAJourBadgePanier();
Retirer des articles
Retirez entièrement une variante de produit du panier.
komerza.removeFromBasket(productId, variantId);
Paramètres
L’identifiant du produit à retirer
L’identifiant de la variante à retirer
Exemple
function retirerArticle(productId, variantId) {
if (confirm("Retirer cet article du panier ?")) {
komerza.removeFromBasket(productId, variantId);
mettreAJourAffichagePanier();
}
}
Vider le panier
Retirez tous les articles du panier en une seule fois.
Exemple
document.getElementById("clear-cart").addEventListener("click", () => {
if (confirm("Retirer tous les articles du panier ?")) {
komerza.clearBasket();
mettreAJourAffichagePanier();
}
});
Sauvegarde et restauration
Créez des sauvegardes de l’état du panier et restaurez-les ultérieurement. Utile pour gérer les erreurs de paiement ou implémenter des fonctionnalités « enregistrer pour plus tard ».
Créer une sauvegarde
const success = komerza.createBasketBackup();
Retourne true si la sauvegarde a été créée avec succès.
Restaurer une sauvegarde
const success = komerza.restoreBasketFromBackup();
Retourne true si la sauvegarde a été restaurée avec succès.
Exemple
async function procederAuPaiement() {
komerza.createBasketBackup();
try {
const order = await komerza.checkout(email, couponCode);
// Succès - redirection vers le paiement
} catch (error) {
// Restaurer le panier en cas d'échec
komerza.restoreBasketFromBackup();
}
}