Startseite
NexoPOS

Katalog

Erstellen Sie den Produktkatalog: Module (Versionen/Releases), Add-ons (Plattformfunktionen) und Bundles (Pakete, die Kunden kaufen).

Admin-Pfade:

  • Admin → Module
  • Admin → Add-ons
  • Admin → Pakete
catalog

Module (vom Modul bis zur Veröffentlichung)

Ein Modul ist eine NexoPOS-Erweiterung, die die Plattform auf berechtigten Installationen installieren kann. Jedes Modul hat eine oder mehrere Versionen (Releases).

Erstelle ein Modul

  1. Admin → Module → Erstellen.
  2. Name, Slug, Beschreibung.
  3. Optional: Standard-GitHub-Repository + Sichtbarkeit für Versionen.
  4. Status: verfügbar / nicht verfügbar; Updates zulassen, wenn nicht verfügbar – steuert, ob bestehende Installationen weiterhin aktualisiert werden können.
create-modul

Veröffentlichen Sie eine Version (Release)

Öffne das Modul → Version hinzufügen:

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)

Markieren Sie die veröffentlichte Version, damit sie für Installationen/Updates ausgewählt werden kann.

Workflow:

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

Screenshot-Platzhalter: Modul-Übersichtsseite mit Versionsliste und Aktion „Veröffentlichen“

Tipps

  • Bevorzuge semver-Tags als github_ref für die Reproduzierbarkeit.
  • Private Modul-Repositories benötigen ein gültiges Admin → GitHub-PAT.
  • Der Core NexoPOS-Kanal (neueste/angeheftet) ist separat unter „Einstellungen → GitHub“ aufgeführt.

Add-ons

Add-ons sind optionale kostenpflichtige Berechtigungen für eine Installation (nicht unternehmensweit). Derzeit sind nur zwei Plattform-Feature-Keys verdrahtet:

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

Erstelle ein Add-on

  1. Admin → Add-ons → Erstellen.
  2. Funktion – aus der Dropdown-Liste auswählen (kein Freitext). Die Auswahl des falschen Schlüssels bedeutet, dass die Benutzeroberfläche nie entsperrt wird.
  3. Name, Beschreibung, Preis (Cent), Währung, Abrechnungsintervall (monatlich / jährlich / einmalig).
  4. Verfügbarkeit – z. B. veröffentlicht (kaufbar), ausgeblendet usw.
  5. Speichern.
addon

Domänenmodus-Interaktion

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

Backup-Interaktion

  • Erfordert das veröffentlichte Backup-Add-on + eine aktive Berechtigung bei der Installation.
  • Speicher und Zeitplan stammen aus „Einstellungen → S3 / Backups“ und nicht nur aus dem Add-on-Preis.

Pakete (Tarife)

Ein Bundle ist das, worauf sich Kunden pro Installation abonnieren. Es umfasst:

  • Preise (Test / Einführung / fortlaufend)
  • Ressourcenlimits (Datenträger, CPU-Kennzeichnung/-Anteil)
  • Enthaltene Module
  • Marketing-Funktionen / Badges
  • Verfügbarkeit (veröffentlicht usw.)
bundle-creation

Erläuterungen zu den Preisfeldern

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

Checkout erstellt Bestellpositionen anhand dieser Regeln in BillingService (gateway-unabhängig).

Wie sich Einmal-, Probe- und wiederkehrende Zahlungen gegenseitig beeinflussen

Denke an drei Hebel:

  1. Nur Testphase – der Kunde startet, ohne die volle wiederkehrende Zahlung zu leisten; das Abonnement befindet sich im Testmodus, bis der Test endet, danach gelten die normale Einziehung / die Kulanzfrist. Beispiel (Seed Professional): trial_days = 14, intro 0, recurring $49.
  2. Einführungspreis ohne Testphase – die erste Abbuchung erfolgt zu Einführungscents; der wiederkehrende Preis ist danach der Listenpreis / auf den Verlängerungspfaden. Beispiel (Seed Starter): Einführung 1 $ (100 Cent), wiederkehrend 19 $, Test 0.
  3. Weder — die erste Abbuchung verwendet sofort den wiederkehrenden Preis.

Wichtig:

  • Die Testversion gilt pro neuer Installation beim Checkout, nicht für einen dauerhaft kostenlosen Sitzplatz.
  • Zukäufe während der Lebenszyklusphase sind separate Positionen / Gateway-Artikel.
  • Gutscheine (falls konfiguriert) werden beim Checkout angewendet, wenn sie gültig sind.

Ausgearbeitete Beispiele

Starter-Stil

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

Der Kunde zahlt den Einführungsbetrag beim ersten erfolgreichen Checkout (gemäß den Regeln des Gateways) und anschließend die wiederkehrenden Zahlungen.

Professioneller Stil

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

Der Kunde kann den Dienst auch ohne vollständig bezahlte Rechnung während der Testphase starten; nach der Testphase gelten Regeln zur Zahlungserhebung sowie zu Kulanz-/Sperrungen.

Module hinzufügen

Wählen Sie im Bundle-Formular aus, welche Module enthalten sind. Nur berechtigte Module werden für die Installation/Aktualisierung auf Kundeninstallationen angezeigt.

Veröffentliche das Bundle

Stellen Sie die Verfügbarkeit auf „veröffentlicht“ und die Sortierreihenfolge / das „Featured“-Badge für die Marketing-Preisseite ein.

Vorgeschlagene Reihenfolge für die Katalogeinrichtung

  1. Konfigurieren Sie die GitHub-Einstellungen.
  2. Erstelle Module + veröffentliche mindestens eine Version für jedes.
  3. Erstellen Sie Add-ons (custom_domain, Backups), wenn Sie diese verkaufen.
  4. Erstellen Sie Bundles, binden Sie Module ein und legen Sie Test-/Einführungs-/wiederkehrende Abrechnungen fest.
  5. Veröffentlichen Sie Bundles und öffnen Sie „Preise“ als Kunde.
  6. Konfigurieren Sie den Domain-Modus und S3, damit Add-ons tatsächlich Ende-zu-Ende funktionieren.