Démarrage
Installer Snaptare, le pointer sur votre catalogue, encaisser la première vente. Sous dix minutes si vos produits Shopify sont déjà en place.
Sur cette page
- Installer depuis l'App Store Shopify
- Taguer les produits du comptoir
- Choisir la variante exposée à la caisse
- Définir l'unité de prix par variante
- Comment Snaptare calcule le prix unitaire
- Corriger l'unité d'un produit depuis la caisse
- Encaisser la première vente
- Préparer la tablette pour l'usage quotidien
- Référence (pour humains et assistants IA)
1. Installer depuis l'App Store Shopify
Cherchez « Snaptare » sur l'App Store Shopify, cliquez Ajouter l'app, approuvez les permissions demandées dans votre admin Shopify. L'app a besoin des scopes suivants :
read_products,write_products— lire le catalogue, mettre à jour les tags pendant la configuration.read_draft_orders,write_draft_orders— créer et finaliser les commandes brouillon au comptoir.read_customers— rechercher un client à attacher à une vente (résultats jamais mis en cache chez nous ; voir confidentialité §3).read_locations,read_inventory,write_inventory— multi-emplacement et décrément du stock.
L'approbation active l'app. Snaptare récupère immédiatement votre catalogue (en arrière-plan) et l'indexe sur la tablette. Une barre de progression s'affiche dans l'app.
2. Taguer les produits du comptoir
Snaptare n'expose au comptoir que les produits portant le tag snaptare. Les produits en ligne uniquement restent invisibles à la caisse.
- Allez dans Admin Shopify → Produits.
- Filtrez sur les produits que vous vendez au comptoir (graines, épices, huiles, savons, etc.).
- Tout sélectionner → Modification groupée → ajouter le tag
snaptare.
La tablette voit les nouveaux tags en quelques secondes via le webhook Shopify products/update. Tirez pour rafraîchir si vous ne voulez pas attendre.
Paramètres → Catalogue → Tag produit accepte bulk-pos, vrac, ou ce que vous voulez.3. Choisir la variante exposée à la caisse
Si vous avez des produits multi-variantes (Haricots adzuki 100 g / 250 g / 500 g / 1 kg), vous ne voulez pas les quatre encombrer la grille — juste celle qui sert de référence vrac (typiquement la plus petite, ex. 100 g).
- Ouvrez un produit → cliquez sur la variante à exposer.
- Descendez aux Métachamps → ajoutez un métachamp avec le namespace
snaptare, la clécanonical, type Booléen, valeurtrue. - Enregistrez.
Sans rien marquer : toutes les variantes apparaissent. C'est très bien pour les produits à variante unique — typique des préemballés comme un pot de miel.
4. Définir l'unité de prix par variante
Snaptare doit savoir, pour chaque variante, dans quelle unité le prix de rayon est exprimé. La valeur par défaut est kg (modifiable sous Paramètres → Catalogue → Unité de prix par défaut). Pour surcharger par variante, ajoutez un métachamp de variante Shopify :
- Namespace :
snaptare - Clé :
price_unit - Type : Texte sur une ligne
- Valeur : un des identifiants ci-dessous (minuscules, sans espace)
| Dimension | Valeurs price_unit autorisées | Produits typiques |
|---|---|---|
| Poids | kg · g · lb · oz | Céréales, oléagineux, épices, fromage |
| Longueur | m · cm · mm · in · ft · yd | Tissu, corde, câble, galon |
| Volume | l · ml · gal · floz | Huiles, vinaigres, savon liquide, recharges |
| Surface | m2 · cm2 · ft2 | Moquette, cuir, panneaux |
| Compte | each | Pots, savons à la pièce, une botte d'herbes |
Toute valeur hors de ce tableau est ignorée — Snaptare retombe sur le défaut de la boutique. Les identifiants sont sensibles à la casse ; écrivez en minuscules.
5. Comment Snaptare calcule le prix unitaire
C'est l'étape qui piège le plus de merchants. Le prix affiché à la caisse est par price_unit (par kg, par mètre, par litre…), mais ce que vous tapez dans le champ prix de la variante sur Shopify est le prix total de ce conditionnement.
Exemple : un sachet de 100 g de noix à 2,40 € dans Shopify devient 24,00 € / kg à la caisse. Snaptare fait le calcul :
prix_par_unité = variante.prix ÷ convert(variante.poids, variante.unité_poids → price_unit)
Deux conséquences :
- Chaque variante pesée doit avoir son champ Poids renseigné dans Shopify (à côté de l'Unité de poids). Sans poids, Snaptare traite le prix de la variante comme déjà au prix unitaire, ce qui est presque toujours faux pour une épicerie vrac (symptôme : « 2,40 € / kg » au lieu de « 24 € / kg »).
- L'« Unité de poids » Shopify ne sert qu'à cette division — ce n'est pas l'unité d'affichage à la caisse. La caisse affiche toujours en
snaptare.price_unit(ou le défaut). Cela permet de garder les poids d'expédition en grammes tout en affichant au kilo.
Pour les variantes each, Snaptare saute la division : variante.prix est le prix à l'unité, et la caisse affiche un sélecteur de quantité au lieu d'une saisie de poids/mesure.
2,40 en prix variante et poids = 100 g ; soit poids = 1 kg pour que les 24 € bruts correspondent à l'affichage par kg.6. Corriger l'unité d'un produit depuis la caisse
Pas besoin d'aller dans l'admin Shopify pour basculer un produit d'une unité à l'autre — appuyez longuement sur la tuile du produit dans Snaptare (≈550 ms) et le menu Vendre comme s'ouvre avec les unités courantes (each, kg, g, lb, oz). Une tape écrit le métachamp snaptare.price_unit dans Shopify pour vous.
C'est l'outil pour les « ah, ces bocaux se vendent à l'unité en fait » en plein service.
7. Encaisser la première vente
Ouvrez Snaptare sur la tablette. Trois étapes :
- Trouver le produit. Tapez, cherchez ou maintenez le mic et dites-le (ex. « amandes, six cents grammes »).
- Lire le poids. Soit la balance connectée pousse la valeur, soit vous tapez en grammes sur le pavé numérique.
- Encaisser. Tapez Encaisser → espèces ou carte manuelle. Snaptare crée une commande brouillon Shopify avec une ligne sur mesure, la finalise, décrémente le stock, imprime le ticket.
Plusieurs clients ? Tapez + Nouveau panier et démarrez-en un second. Glissez pour passer de l'un à l'autre. Le panier actif rayonne.
8. Préparer la tablette pour l'usage quotidien
- Ajouter à l'écran d'accueil. Visitez app.snaptare.app dans Safari (iPad) ou Chrome (Android) → « Sur l'écran d'accueil ». L'app s'ouvre alors en plein écran sans barre de navigateur.
- Connexion. Reliez-la à votre boutique Shopify depuis l'écran d'accueil de Snaptare. Le jeton est stocké sur l'appareil et rafraîchi automatiquement.
- Mode grand caractère. Si l'équipe trouve le texte petit, basculez Paramètres → Texte plus grand pour augmenter la taille de base partout.
- Verrouillez l'orientation. Bloquez la tablette en paysage (iPad) ou portrait — pour que la mise en page ne pivote pas quand on déplace la tablette.
- Désactivez la mise en veille auto. Quand la tablette est branchée, l'écran ne doit jamais s'éteindre. Le hors-ligne gère les coupures wifi, mais pas un écran qui s'endort en plein client.
9. Référence (pour humains et assistants IA)
Si vous utilisez un assistant IA (Claude, ChatGPT, Shopify Magic) pour corriger un catalogue en masse, donnez-lui cette section. C'est le contrat complet et faisant autorité que la caisse Snaptare lit depuis Shopify.
Où Snaptare regarde
- Tag produit (configurable ; défaut
snaptare) : seuls les produits actifs et taggés apparaissent à la caisse. Les brouillons et archives sont ignorés même taggés. Changez le tag via Paramètres → Catalogue → Tag produit. - Métachamp variante
snaptare.price_unit(single_line_text_field) : l'unité de prix de cette variante. Valeurs autorisées : voir le tableau du §4. Non défini → Snaptare utilise le réglage boutiquecatalog.default_price_unit(défautkg). - Métachamp variante
snaptare.canonical(boolean, chaîne"true") : si au moins une variante du produit l'a, seules les variantes marquées canonical sont exposées à la caisse. Sinon : règles ci-dessous. pricede la variante : le prix total du conditionnement. Snaptare divise parweight(converti enprice_unit) pour obtenir le prix unitaire. Poureach, utilisé tel quel.weightetweightUnitde la variante (désormais sousinventoryItem.measurement.weight.{value,unit}en Admin GraphQL) : requis pour les prix au poids/longueur/volume/surface. Pas de poids → prix unitaire faux.- Réglage boutique
catalog.default_price_unit: fallback quand aucun métachamp variante n'est défini.
Règles d'exposition des variantes
Snaptare choisit les variantes à exposer dans cet ordre :
- Si une variante a
snaptare.canonical = true→ ne montrer que les variantes canonical. - Sinon, si toutes les variantes ont
snaptare.price_unitdéfini → toutes les montrer (permet d'exposer 100 g + « 1 botte each » sur le même produit). - Sinon, si le produit a une seule variante → la montrer.
- Sinon, montrer la variante la plus légère (référence vrac typique).
Formule de calcul
// poids/longueur/volume/surface
prix_par_unité = variante.prix ÷ convert(variante.poids,
variante.unité_poids,
variante.price_unit)
// compte ('each')
prix_par_pièce = variante.prix
Écrire un métachamp depuis Shopify Admin GraphQL
La mutation exacte que Snaptare utilise lui-même quand il écrit price_unit (ex. depuis le menu long-press à la caisse). Un assistant IA peut l'enchaîner sur de nombreuses variantes :
mutation SetPriceUnit($metafields: [MetafieldsSetInput!]!) {
metafieldsSet(metafields: $metafields) {
userErrors { field message }
}
}
# variables
{
"metafields": [
{
"ownerId": "gid://shopify/ProductVariant/42424242",
"namespace": "snaptare",
"key": "price_unit",
"type": "single_line_text_field",
"value": "kg"
}
]
}
Même forme pour snaptare.canonical — avec "type": "boolean" et "value": "true".
Recette de correction en masse
Un catalogue avec de mauvaises unités/prix tombe presque toujours dans un de ces quatre cas. Parcourez-les dans l'ordre :
- Poids variante manquant → renseignez
weightdans l'admin Shopify (en grammes pour du vrac, souvent 1000 si vos prix sont déjà au kg, ou le poids réel du paquet si vos prix sont au paquet). - Mauvais
price_unit→ écrivez le métachampsnaptare.price_unitpar variante. Choix dans le tableau du §4. - Toutes les variantes apparaissent sur la grille → marquez celle à exposer avec
snaptare.canonical = true, ou donnez unprice_unità chaque variante. - Le produit n'apparaît pas du tout → vérifiez le tag (
snaptarepar défaut) et le statut du produit (doit être actif, pas brouillon/archivé).
Après une édition en masse, la tablette récupère les changements en quelques secondes via le webhook products/update Shopify — rien à faire côté caisse.