Tigmi · Artisanat et décoration d'intérieur — vente en ligne

Tigmi — une boutique en ligne trilingue pour des pièces uniques

Boutique en ligne d'artisanat et de décoration : catalogue, panier, paiement, stocks, promotions, frais de port par zone, avis, blog et administration. Trois langues, dont l'arabe en écriture inversée, avec des adresses traduites et non simplement préfixées.

Page d'accueil de Tigmi : « Ce qui est fait à la main se voit », artisanat et décoration d'intérieur

Le problème

Vendre de l'artisanat en ligne pose un problème que n'ont pas les produits de série : chaque pièce est unique, ou presque. Un tapis noué n'existe qu'en un exemplaire, ses dimensions ne se déclinent pas, et une rupture de stock n'est pas un réapprovisionnement mais une disparition. S'y ajoute une clientèle qui ne lit pas la même langue — français, anglais, arabe — et l'arabe ne se contente pas d'une traduction : il retourne la mise en page entière.

Et puis il y a ce qu'on ne voit pas : le prix. Sur une boutique, il se calcule à partir du produit, d'une éventuelle promotion, d'un port qui dépend de la zone, d'un seuil de gratuité et d'un régime de TVA. Chacune de ces règles est simple ; c'est leur combinaison qui produit les erreurs de facturation.

Ce que nous avons construit

**Le prix facturé est toujours recalculé côté serveur.** La requête ne transporte que des choix — adresse, transporteur, moyen de paiement — et le prix, la remise, le port et la taxe viennent d'un seul service. Un test vérifie qu'un montant injecté dans le formulaire est purement et simplement ignoré. C'est la garantie la moins visible d'une boutique, et la seule qui empêche qu'on s'y serve.

**Les adresses sont traduites, pas préfixées.** Les slugs vivent dans une table indexée en unique sur la langue et le slug : une URL se résout en une requête, ce qu'une colonne JSON ne permet pas. Les anciens slugs continuent de répondre et renvoient une 301 vers le nouveau, ce qui préserve le référencement quand un produit est renommé. Les slugs arabes gardent leurs caractères plutôt que d'être translittérés.

**Dix entités partagent deux écrans d'administration.** Catégories, ateliers, articles, pages, FAQ, carrousel, témoignages, transporteurs et zones passent par un CRUD générique où une déclaration décrit colonnes et champs ; la validation multilingue et les slugs en découlent. Moins de code à maintenir, et un comportement identique partout.

**Les rappels de paiement sont vérifiés puis journalisés sous contrainte d'unicité** : un webhook rejoué par le prestataire ne produit ni double encaissement ni double événement. Et sous franchise en base de TVA, aucune ligne de taxe n'apparaît — les prix sont annoncés nets, comme la loi l'exige.

Le résultat

Une boutique complète en trois langues, du catalogue au suivi de commande, avec une administration qui couvre dix entités par deux écrans. Le référencement est en place dès la première mise en ligne : adresses traduites, redirections permanentes sur les anciens slugs, données structurées et équivalences de langue déclarées.
Accueil : « Ce qui est fait à la main se voit », navigation par matière, recherche, favoris et panier
Catégorie « Poterie & céramique » : filtres par disponibilité, prix, atelier et matière, et tri des résultats
Fiche produit : atelier, référence, avis, état du stock, ajout au panier et mention de la pièce faite main
Tableau de bord du commerçant : chiffre d'affaires sur trente jours, panier moyen, commandes à traiter et stock faible
Liste des commandes en administration : recherche, filtres par statut et par date, statut de paiement et export CSV

Autres réalisations

Votre projet mérite mieux qu'un devis générique

Dites-nous ce que vous voulez obtenir. Nous vous répondons avec une analyse, une fourchette et les questions que personne d'autre ne vous aura posées.

Réponse sous 4 heures ouvrées · Aucun engagement · Vos données restent chez nous