pricing4ts
Version:
 Pricing4TS is a TypeScript-based toolkit designed to enhance the server-side functionality of a pricing-driven SaaS by enabling the seamless integration of pricing plans into the application logic. T
167 lines (166 loc) • 4.02 kB
YAML
saasName: PetClinic
syntaxVersion: '3.0'
version: 2024-1-15
createdAt: '2024-01-15'
currency: EUR
variables: {}
tags:
- Pets Management
- Veterinary Care
features:
pets:
description: Pets description
valueType: BOOLEAN
defaultValue: true
expression: subscriptionContext['pets'] < pricingContext['usageLimits']['maxPets']
serverExpression: subscriptionContext['pets'] <= pricingContext['usageLimits']['maxPets']
type: DOMAIN
tag: Pets Management
visits:
description: visits description
valueType: BOOLEAN
defaultValue: true
expression: >-
subscriptionContext['visits'] <
pricingContext['usageLimits']['maxVisitsPerMonthAndPet']
type: DOMAIN
tag: Veterinary Care
supportPriority:
description: supportPriority description
valueType: TEXT
defaultValue: LOW
type: SUPPORT
tag: Veterinary Care
expression: true
haveCalendar:
description: haveCalendar description
valueType: BOOLEAN
defaultValue: false
expression: pricingContext['features']['haveCalendar']
type: DOMAIN
havePetsDashboard:
description: havePetsDashboard description
valueType: BOOLEAN
defaultValue: false
expression: pricingContext['features']['havePetsDashboard']
type: DOMAIN
haveVetSelection:
description: haveVetSelection description
valueType: BOOLEAN
defaultValue: false
expression: pricingContext['features']['haveVetSelection']
type: DOMAIN
consultations:
description: consultations description
valueType: BOOLEAN
defaultValue: false
expression: pricingContext['features']['consultations']
type: DOMAIN
smartClinicReports:
description: smartClinicReports description
valueType: BOOLEAN
defaultValue: false
type: INFORMATION
expression: pricingContext['features']['smartClinicReports']
petAdoptionCentre:
description: petAdoptionCentre description
valueType: BOOLEAN
defaultValue: false
type: DOMAIN
expression: pricingContext['features']['petAdoptionCentre']
usageLimits:
maxPets:
description: ''
valueType: NUMERIC
defaultValue: 2
unit: pet
type: NON_RENEWABLE
linkedFeatures:
- pets
maxVisitsPerMonthAndPet:
description: ''
valueType: NUMERIC
defaultValue: 1
unit: visit
type: RENEWABLE
linkedFeatures:
- visits
plans:
BASIC:
description: Basic plan
price: 0
unit: user/month
features: null
usageLimits: null
GOLD:
description: Advanced plan
price: 5
unit: user/month
features:
supportPriority:
value: MEDIUM
haveCalendar:
value: true
haveVetSelection:
value: true
usageLimits:
maxPets:
value: 4
maxVisitsPerMonthAndPet:
value: 3
PLATINUM:
description: Pro plan
price: 10
unit: user/month
features:
supportPriority:
value: HIGH
haveCalendar:
value: true
haveVetSelection:
value: true
consultations:
value: true
usageLimits:
maxPets:
value: 7
maxVisitsPerMonthAndPet:
value: 6
addOns:
havePetsDashboard:
description: havePetsDashboard description
availableFor:
- PLATINUM
price: 5.95
unit: user/month
features:
havePetsDashboard:
value: true
subscriptionConstraints:
minQuantity: 1
maxQuantity: 1
quantityStep: 1
smartClinicReports:
description: smartClinicReports description
dependsOn:
- havePetsDashboard
price: 3.95
unit: user/month
features:
smartClinicReports:
value: true
subscriptionConstraints:
minQuantity: 1
maxQuantity: 1
quantityStep: 1
petAdoptionCentre:
description: petAdoptionCentre description
price: 15.95
unit: user/month
features:
petAdoptionCentre:
value: true
subscriptionConstraints:
minQuantity: 1
maxQuantity: 1
quantityStep: 1