Accueil
NexoPOS

Catalogue

Construisez le catalogue produit : modules (versions/sorties), modules complémentaires (fonctionnalités de la plateforme) et offres groupées (formules que les clients achètent).

Chemins d’administration :

  • Admin → Modules
  • Admin → Modules complémentaires
  • Admin → Forfaits
catalog

Modules (du module à la version)

Un module est une extension NexoPOS que la plateforme peut installer sur des installations autorisées. Chaque module possède une ou plusieurs versions (sorties).

Créer un module

  1. Admin → Modules → Créer.
  2. Définir le nom, le slug, la description.
  3. Optionnel : référentiel GitHub par défaut + visibilité pour les versions.
  4. Statut : disponible / indisponible ; autoriser les mises à jour lorsque indisponible contrôle si les installations existantes peuvent encore être mises à jour.
create-modul

Publier une version (version de publication)

Ouvrez le module → ajoutez une version :

Source Fields
GitHub Repo owner/name, ref/tag (e.g. v1.2.0), visibility; platform token used if private
ZIP Upload package (size limit enforced server-side, e.g. 50MB)

Marquez la version publiée afin qu’elle puisse être sélectionnée pour les installations et les mises à jour.

Flux de travail :

Create module
  → Add version (GitHub ref or ZIP)
  → Publish version
  → Attach module to one or more bundles
  → Customer installs/updates from entitled bundle

Espace réservé de capture d’écran : page d’affichage du module avec liste des versions et action de publication

Conseils

  • Préférez les balises semver comme github_ref pour la reproductibilité.
  • Les dépôts de modules privés nécessitent un PAT GitHub valide via Admin → GitHub.
  • Le canal Core NexoPOS (latest/pinned) est distinct sous Paramètres → GitHub.

Modules complémentaires

Les modules complémentaires sont des droits payants optionnels sur une installation (pas à l’échelle de l’organisation). Seules deux clés de fonctionnalité de la plateforme sont câblées aujourd’hui :

Feature (UI) feature_key Unlocks
Custom domain custom_domain Domain tab attach/verify when Domain mode is addon
Backups backups Backup tab + scheduled platform backups

Créer une extension

  1. Admin → Modules complémentaires → Créer.
  2. Fonctionnalité — sélectionnez dans la liste déroulante (pas en texte libre). Choisir la mauvaise clé signifie que l’interface ne se déverrouillera jamais.
  3. Nom, description, prix (centimes), devise, intervalle de facturation (mensuel / annuel / ponctuel).
  4. Disponibilité — par exemple publiée (achetable), masquée, etc.
  5. Enregistrer.
addon

Interaction en mode domaine

Admin Domain custom_domain_mode Customer experience
free Custom domain without purchasing the add-on
addon Must purchase Custom domain add-on (or already entitled)
disabled Domain attach not offered

Interaction des sauvegardes

  • Nécessite l’add-on de sauvegardes publiées + une autorisation active lors de l’installation.
  • Le stockage et la planification proviennent de Paramètres → S3 / Sauvegardes, et non uniquement du prix de l’add-on.

Forfaits (plans)

Un forfait est ce que les clients souscrivent par installation. Il comprend :

  • Tarification (essai / lancement / récurrente)
  • Limites de ressources (disque, étiquette/partage du processeur)
  • Modules inclus
  • Fonctionnalités marketing / badges
  • Disponibilité (publiée, etc.)
bundle-creation

Champs de tarification expliqués

Field Meaning
Trial days (trial_days) Free trial length on first checkout of a new install. No paid “full price” invoice is invented while trialing. Renewals never re-grant trial.
Intro / entry price (intro_price_cents) Preferential first charge amount (in cents) when intro is configured.
Intro period days (intro_period_days) How long the intro pricing window is intended to last (product metadata used with intro pricing).
Recurring price (recurring_price_cents) Ongoing price after intro / for renewal line items.
Billing interval e.g. monthly
Currency ISO code, e.g. USD

Le service de facturation (indépendant du fournisseur) construit les lignes de commande à partir de ces règles.

Comment les essais, les offres d’introduction et les paiements récurrents interagissent

Pensez à trois leviers :

  1. Essai uniquement — le client commence sans payer l’intégralité des paiements récurrents ; l’abonnement est en période d’essai jusqu’à la fin de l’essai, puis la collecte / la période de grâce normale s’applique. Exemple (seed Professional) : trial_days = 14, intro 0, récurrent 49 $.
  2. Prix d’entrée sans essai — la première facturation utilise les centimes d’introduction ; le montant récurrent correspond au prix catalogue ensuite / lors du renouvellement. Exemple (seed Starter) : introduction 1 $ (100 cents), récurrent 19 $, essai 0.
  3. Ni l’un ni l’autre — le premier prélèvement utilise immédiatement le prix récurrent.

Important :

  • L’essai est valable pour la vérification d’une nouvelle installation, et non pour un siège gratuit à vie.
  • Les achats complémentaires effectués au cours du cycle de vie sont des postes distincts / des éléments de passerelle.
  • Les coupons (s’ils sont configurés) s’appliquent au moment du paiement lorsqu’ils sont valides.

Exemples de travaux effectués

Style de départ

Value
Intro $1.00 for first period
Recurring $19.00 / month
Trial 0 days

Le client paie le montant d’introduction lors du premier paiement réussi (conformément aux règles du passerelle), puis de manière récurrente par la suite.

Style professionnel

Value
Trial 14 days
Recurring $49.00 / month
Intro $0

Le client peut commencer sans facture entièrement payée pendant la période d’essai ; après la période d’essai, les règles de recouvrement des paiements et de délai/suspension s’appliquent.

Joindre des modules

Sur le formulaire du bundle, sélectionnez les modules inclus. Seuls les modules auxquels vous avez droit apparaissent pour l’installation/la mise à jour sur les installations client.

Publier le bundle

Définissez la disponibilité sur « publié » et l’ordre de tri / badge à la une pour la page de tarification marketing.

Ordre de configuration suggéré du catalogue

  1. Configurer les paramètres de GitHub.
  2. Créer des modules + publier au moins une version chacun.
  3. Créez des modules complémentaires (custom_domain, sauvegardes) si vous les vendez.
  4. Créez des bundles, associez des modules, définissez une période d’essai/d’introduction et des paiements récurrents.
  5. Publiez des bundles et ouvrez la tarification en tant que client.
  6. Configurez le mode Domaine et S3 afin que les modules complémentaires fonctionnent réellement de bout en bout.