Subscriptions

Wiederkehrende Abrechnung

MarktplatzKundenVersion 0.1.0manifest

Wofür sie gedacht ist ​

Define recurring plans and track customer subscriptions with trial, active, past due and cancelled states, including the next invoice date. It does not create invoices by itself.

Was das Paket leistet und was nicht ​

Recurring plans and customer subscriptions with a trial, active, past due and cancelled flow. It records the next invoice date; it does not create invoices on its own.

Modelle ​

subscriptions_plan ​

A recurring offer customers can subscribe to

Lesegruppe: subscriptions.user. Schreibgruppe: subscriptions.manager.

FeldArtDatenklassePersonenbezogene DatenGruppeAgenten sehenBeschreibung
nametextnoneneinsubscriptions.userim KlartextPlan name, for example Team yearly
codetextnoneneinsubscriptions.userim KlartextShort code of the plan
intervalselect (monthly, quarterly, yearly)noneneinsubscriptions.userim KlartextHow often the customer is billed: monthly, quarterly, yearly
pricemoneynoneneinsubscriptions.userim KlartextStandard price per billing interval (minor currency units, e.g. cents)
trial_daysnumbernoneneinsubscriptions.userim KlartextLength of the free trial in days
activeboolnoneneinsubscriptions.userim KlartextWhether new customers can pick the plan

subscriptions_subscription ​

A customer's recurring subscription to a plan

Lesegruppe: subscriptions.user. Schreibgruppe: subscriptions.manager.

FeldArtDatenklassePersonenbezogene DatenGruppeAgenten sehenBeschreibung
customer_idref → partynoneneinsubscriptions.userim KlartextThe customer who subscribed
plan_idref → subscriptions_plannoneneinsubscriptions.userim KlartextThe plan subscribed to
started_ondatenoneneinsubscriptions.userim KlartextDate the subscription began (YYYY-MM-DD)
trial_ends_ondatenoneneinsubscriptions.userim KlartextDate the free trial ends (YYYY-MM-DD)
next_invoice_ondatenoneneinsubscriptions.userim KlartextDate the next invoice is due (YYYY-MM-DD)
recurring_amountmoneynoneneinsubscriptions.userim KlartextAmount billed each interval after discounts (minor currency units, e.g. cents)
currencytextnoneneinsubscriptions.userim KlartextISO 4217 currency code, for example EUR
seatsnumbernoneneinsubscriptions.userim KlartextNumber of licences or users covered
cancel_reasonlongtextnoneneinsubscriptions.userim KlartextWhy the customer cancelled
stateselect (trial, active, past_due, cancelled)noneneinsubscriptions.userim KlartextSubscription status: trial, active, past_due, cancelled

Workflows ​

subscriptions_subscription ​

AktionBewegtWer sie ausführen darfFreigabe
subscriptions_subscription.activatestate: trial → activesubscriptions.managernein
subscriptions_subscription.mark_past_duestate: active → past_duesubscriptions.managernein
subscriptions_subscription.recoverstate: past_due → activesubscriptions.managernein
subscriptions_subscription.cancel_trialstate: trial → cancelledsubscriptions.managerja
subscriptions_subscription.cancelstate: active → cancelledsubscriptions.managerja
subscriptions_subscription.cancel_overduestate: past_due → cancelledsubscriptions.managerja

Berechtigungsgruppen ​

Von dieser App verwendete Gruppen:

  • subscriptions.manager
  • subscriptions.user

Freigabeschritte ​

Schritte, die ein Agent nur vorschlagen kann:

  • subscriptions_subscription.cancel_trial
  • subscriptions_subscription.cancel
  • subscriptions_subscription.cancel_overdue

Was Agenten tun können und was nicht ​

Ein Agent kann Datensätze dieser App lesen, durchsuchen, anlegen und aktualisieren sowie Aktionen ausführen, die keine Freigabe brauchen, und zwar innerhalb der Berechtigungsgruppen seines Tokens.

Diese Schritte kann er nur vorschlagen, und eine Person muss sie freigeben: subscriptions_subscription.cancel_trial, subscriptions_subscription.cancel, subscriptions_subscription.cancel_overdue, subscriptions_plan.delete, subscriptions_subscription.delete.

Abhängigkeiten ​

  • base

Installation ​

Installieren Sie sie in der App Customize (Marktplatz) oder über die Kommandozeile:

bash
obop modules install-from subscriptions

Erfordert eine Datenbank und Administratorrechte.

Selbst bauen ​

Der Modulleitfaden zeigt, wie Apps wie diese geschrieben werden