3. Service Catalog & Pricing

← Business Requirements

(a) Business requirements

  • Admin defines the catalog skeleton: top-level service categories (e.g., مراقبت از سالمند / Elderly Care, مراقبت پس از جراحی / Post-Surgery Recovery, مراقبت از نوزاد / Infant Care, مدیریت بیماری مزمن / Chronic Illness Management) and configurable option dimensions as admin-managed option groups (e.g., تعداد بیمار / patient count, نوع شیفت / shift type) each with concrete option values (e.g., ۱ نفر, ۲ نفر, شبانه‌روزی). Admin can add new dimensions without a schema change.
  • Each nurse defines their own offerings as variants. A variant is the atomic bookable unit: a category + a chosen combination of option values + the nurse's own price and price unit. A nurse may have many variants per category, one per combination they choose to offer and price independently.
  • Price units must support the real shapes of home nursing: per_hour, per_session, per_half_day, per_day, and per_24h (شبانه‌روزی / live-in). For hourly variants an estimated duration helps the customer estimate total cost.
  • The variant display_name auto-generates from option labels but is nurse-editable. Nurses can deactivate (not delete) a variant; deactivated variants cannot be booked.
  • Catalog and prices are snapshotted onto the booking at booking time (variant_snapshot_json) so historical records survive later edits.

(b) Iran-specific considerations

  • Iranian competitors sell exactly these shapes — hourly / daily / 24-hour (شبانه‌روزی) shifts and multi-day packages — so per_24h and per_day are first-class, not edge cases.
  • Competitor pricing is opaque and "توافقی" (negotiable); transparent, upfront, nurse-set pricing is a deliberate differentiator families value.
  • All catalog tables carry name_fa / name_en pairs (Persian primary).

(c) MVP vs DEFERRED

  • MVP: admin categories + option groups/values; nurse variants with own price + price unit across all five units; activate/deactivate; snapshotting.
  • DEFERRED: holiday/surge pricing rules; a lighter "companionship / daily-living" tier (modeled as a future category); dynamic/tiered commission per category.

(d) Supporting database entities

service_categories, service_option_groups, service_option_values, nurse_service_variants (carries price, price_unit), nurse_service_variant_options.

Related: Data model — Services & Pricing.

↑ Back to top