Ce guide suppose que vous avez une boutique Chariow avec un produit de type Licence créé. Si vous n’en avez pas encore, créez votre produit licence d’abord.
Qu’est-ce qu’un Paywall par Licence ?
Un paywall par licence restreint l’accès à votre application SaaS (ou à des fonctionnalités spécifiques) jusqu’à ce que l’utilisateur fournisse une clé de licence valide. C’est idéal pour :- Applications de bureau : Applications Electron, logiciels natifs, outils CLI
- Applications web : Plateformes SaaS, tableaux de bord admin, outils premium
- Applications mobiles : Applications iOS/Android avec fonctionnalités premium
- Accès API : Contrôle d’accès API basé sur la validité de la licence
Comment ça fonctionne
1
Le client achète la licence
Le client achète votre produit licence sur Chariow. Une clé de licence unique est automatiquement générée (ex:
ABC-123-XYZ-789).2
Le client entre sa clé de licence
Dans votre application, le client saisit sa clé de licence dans un écran de paramètres ou d’activation.
3
Votre application valide la clé
Votre application appelle l’API Chariow pour valider la clé de licence et vérifier son statut.
4
Accès accordé ou refusé
Selon la réponse de l’API (
is_active, is_expired), votre application accorde ou refuse l’accès.5
Optionnel : Activation sur l'appareil
Pour les licences limitées par appareil, activez la licence pour suivre et limiter l’utilisation.
Points d’accès API nécessaires
Votre clé API (
sk_live_...) doit être conservée côté serveur uniquement. Ne l’exposez jamais dans le code côté client.Modèles d’architecture
Modèle 1 : Validation côté serveur (Recommandé)
Votre backend valide les licences et contrôle l’accès. Idéal pour les applications web.Modèle 2 : Validation Serverless/Edge
Validez les licences à la périphérie avec des fonctions serverless. Bon pour les sites statiques.Modèle 3 : Application de bureau avec validation périodique
Les applications de bureau valident au démarrage et périodiquement. Inclut une période de grâce hors ligne.Guide d’implémentation
Étape 1 : Créer une route API pour la validation de licence
Votre backend doit exposer un point d’accès que votre frontend appelle :Étape 2 : Créer le composant de saisie de licence
Étape 3 : Envelopper votre application avec le contrôle de licence
Activation sur appareil (Optionnel)
Si votre licence a des activations limitées, activez sur l’appareil :Prompts IA pour l’implémentation
Utilisez ces prompts avec Lovable, Cursor, Bolt ou tout assistant de codage IA pour implémenter rapidement le paywall par licence.Prompt 1 : Paywall de licence basique (React + Next.js)
Prompt 2 : Paywall de licence avec activation d’appareil
Prompt 3 : Licence basée sur les fonctionnalités
Prompt 4 : Validation de licence compatible hors ligne
Prompt 5 : Implémentation complète pour application Electron
Prompt 6 : Intégration Supabase
Bonnes pratiques de sécurité
À faire
- Stocker les clés API côté serveur dans les variables d’environnement
- Valider côté backend avant d’accorder l’accès
- Mettre en cache les résultats de validation pour réduire les appels API
- Implémenter une limitation de débit sur votre point de validation
- Utiliser HTTPS pour toutes les communications API
- Journaliser les tentatives de validation pour l’audit de sécurité
À ne pas faire
- Ne pas faire confiance à la validation côté client seule - elle peut être contournée
- Ne pas stocker l’objet licence complet dans un localStorage accessible
- Ne pas ignorer la validation pour les utilisateurs “de confiance”
- Ne pas coder en dur les clés de licence dans votre application
- Ne pas exposer des messages d’erreur détaillés qui pourraient aider les attaquants
Tester votre intégration
Scénarios de test
Clés de licence de test
Pendant le développement, créez des produits de test dans votre boutique Chariow avec :- Des licences de test gratuites pour le développement
- Des périodes d’expiration courtes pour tester la gestion d’expiration
- Des activations limitées pour tester les limites d’appareils
Exemple complet : Next.js App Router
Voici une implémentation complète utilisant Next.js App Router :Prochaines étapes
Guide des licences
En savoir plus sur la gestion des licences
API Licences
Voir la référence complète de l’API Licences
Pulses (Webhooks)
Être notifié quand des licences sont achetées
Bonnes pratiques
Bonnes pratiques de sécurité et d’intégration