Produits & Fonctionnalités
Définissez ce que vous vendez. Créez des produits avec une ou plusieurs variantes, et associez des fonctionnalités réutilisables pour un contrôle d’accès basé sur les droits.
Proyecta Commerce repose sur trois concepts : les produits, les variantes et les fonctionnalités.
- Produit — ce que tu vends (ex. « Offre Pro », « T-shirt », « Appel Stratégie »)
- Variante — un palier tarifaire ou une configuration d’un produit (ex. « Pro Mensuel 29 $», « Pro Annuel 290 $», « T-shirt – Grande taille »)
- Fonctionnalité — une clé de droit réutilisable que ton application vérifie à l’exécution (ex.
pro_features,unlimited_projects,api_access)
Un produit peut avoir plusieurs variantes. Un produit possède également une ou plusieurs ressources associées — généralement des fonctionnalités — qui accordent l’accès lorsqu’un client souscrit.
Deux façons de modéliser ce que tu vends
Section intitulée « Deux façons de modéliser ce que tu vends »Commerce s’intègre au reste de la plateforme, ce qui donne deux formes possibles pour « ce que tu vends » — et Proyecta choisit automatiquement la bonne pour toi :
- Produits natifs Commerce — abonnements, offres, mises à niveau ponctuelles et fonctionnalités/droits. Définis directement dans Admin > Commerce > Products. C’est le modèle décrit sur le reste de cette page.
- Un catalogue de boutique adossé au contenu — des articles avec photos, prix et descriptions qu’un responsable de boutique édite au quotidien. Ces éléments vivent dans le CMS en tant que collection vendable : chaque entrée est le produit. Lorsqu’une entrée est publiée, Proyecta l’intègre automatiquement dans Commerce comme un produit réel et achetable — en créant le produit et sa variante tarifée, et en reprenant le prix directement depuis le champ de contenu. La boutique affiche le prix du contenu et le paiement débite la variante associée ; comme ils partagent une source unique, ils ne peuvent jamais diverger. Tu gères ces articles en tant que contenu (dans le Admin de ton application, dans le builder ou sur ton site publié), et non sous Commerce > Products. Voir Gestion du contenu.
Un catalogue simple qui ne prend pas de paiement par carte — un menu en consultation seule, ou une boutique dont le bouton « acheter » ouvre un lien de commande WhatsApp — n’est qu’un contenu ordinaire — une collection catalogue classique, sans intégration Commerce. C’est le paiement par carte qui rend une collection vendable.
Créer un produit
Section intitulée « Créer un produit »Dans Admin > Commerce > Products, clique sur Create product (ou demande à l’IA : "Create a Pro plan at $29/month and a Business plan at $99/month."). Chaque produit nécessite :
- Un nom d’affichage (ex. « Pro »)
- Au moins une variante
Variantes
Section intitulée « Variantes »Chaque variante possède sa propre tarification :
| Champ | Remarques |
|---|---|
name |
Libellé d’affichage de la variante (« Monthly », « Annual », « Large ») |
currency |
Code ISO à trois lettres — USD, EUR, GBP, JPY, BRL, MXN, INR… (130+ supportés) |
unit_amount |
Prix dans la plus petite unité monétaire (centimes). 2900 = 29,00 $ |
recurring |
Optionnel — { interval: 'week' | 'month' | 'year' }. À omettre pour les prix ponctuels. La facturation quotidienne n’est pas encore prise en charge. |
is_default |
Accepté mais pas encore appliqué — la sélection de la variante par défaut n’est pas encore implémentée. |
media |
Associe des images ou vidéos via l’ID de fichier CDN (voir Fichiers) |
Le prix est immuable. Une fois une variante créée, son prix ne peut pas être modifié — crée plutôt une nouvelle variante. Cela protège les abonnés existants des modifications de prix accidentelles.
Fonctionnalités (droits)
Section intitulée « Fonctionnalités (droits) »Les fonctionnalités sont la primitive de contrôle d’accès. Crée une fonctionnalité une seule fois dans Admin > Commerce > Products, puis associe-la à un ou plusieurs produits. Chaque fonctionnalité possède un nom, une description optionnelle et une clé — lettres minuscules, chiffres et underscores (ex. pro_features) — que ton application utilise pour les vérifications.
Lorsque tu crées un produit, tu lui associes des fonctionnalités via des « ressources ». Les clients qui souscrivent à un produit obtiennent l’accès à toutes les fonctionnalités qui y sont attachées.
Ensuite, dans ton application, conditionne l’accès à cette clé :
const { hasAccess, isLoading } = useEntitlement('pro_features');
if (isLoading) return <Spinner />;if (!hasAccess) return <UpgradePrompt />;return <ProOnlyThing />;La vérification s’exécute côté serveur par rapport à la session connectée, elle ne peut donc pas être falsifiée depuis le navigateur. Voir Intégrer Commerce dans mon application pour le schéma complet.
Remarque : Conditionne toujours l’accès sur la clé de la fonctionnalité — le slug dérivé du nom de la fonctionnalité (ex.
pro_features) — et non sur l’identifiant interne de la fonctionnalité.
C’est ainsi que tu protèges les pages réservées aux utilisateurs Pro, les endpoints API ou les fonctionnalités dans le code de ton application.
Formes de produits courantes
Section intitulée « Formes de produits courantes »Abonnements SaaS
Create products: Free ($0/month), Pro ($29/month, $290/year), Business ($99/month, $990/year).Attach a 'pro_features' feature to Pro and Business so I can gate access in my code.Produits physiques
Create a T-shirt product with three variants: Small, Medium, Large at $25 each.Produits numériques
Create a course product with a single one-time variant at $149.Dons
Create a donation product with three variants: $25, $50, $100 — all one-time.Inventaire
Section intitulée « Inventaire »Proyecta Commerce ne suit pas encore l’inventaire des produits physiques. Si tu vends des articles en stock, gère les quantités disponibles dans la base de données de ton application et vérifie-les dans ton flux de paiement.
Bientôt disponible
Section intitulée « Bientôt disponible »- Personnalisation des champs de paiement — collecte des informations supplémentaires auprès des acheteurs
- Tarification libre (pay-what-you-want)
- Suivi d’inventaire intégré pour les produits physiques