Project

General

Profile

Edit Copy Actions

Bug #5224

open

Implement Plan Schema & Pricing Scenarios Create Plan API

Added by Thirupathirao Uppu 13 days ago. Updated 13 days ago.

Status:
In Progress
Priority:
High
Target version:
-
Start date:
11/25/2025
Due date:
11/25/2025 (13 days late)
% Done:

80%

Estimated time:
12:00 h
Spent time:
Tested Date:
Raised by Tester:
Page/ Module (POS):

Description

Build and integrate the new Plan Engine that supports all current and upcoming business scenarios for products, services, subscriptions, and hybrid plans.


Add

Subtasks


Add

Related issues

Updated by Thirupathirao Uppu 13 days ago

  • Subject changed from Implement Plan Schema & Pricing Scenarios to Implement Plan Schema & Pricing Scenarios Create Plan API
  • Status changed from New to In Progress
  • Priority changed from Normal to High
  • % Done changed from 0 to 80

1. Implement Unified Plan Schema

Support plan types: service, product, subscription, hybrid

Add support for:

Variants

Combo products

Pricing rules (distance, area, quantity)

Visit schedules

Perks

SKU

Metadata

Multi-tenant (dbName)

2. Pricing Rule Engine

Calculate basePrice

Apply distance rules

Apply area rules

Apply quantity slabs (tier pricing)

Apply combo basePrice overrides

Apply discounts & taxes

Generate finalPrice + savingsAmount

3. API Development

POST /api/plans → Create Plan

Include validation, sanitization, and business rules

Auto-generate price values per variant

4. Validation Layer (Joi)

Validate all plan types

Validate combo items

Validate pricing rules

Validate variants + schedules

5. Controller & Service Layer

CreatePlan controller

PlanService with:

basePrice calculator

combo calculator

rule engine integration

variant processor

6. Utility Functions

priceEngine.js

asyncHandler.js

apiError.js

standardized API response structure

7. Testing

Test with all plan scenarios:

Mixed pricing rules (distance + area)

Tiered / slab pricing

Multi-variant plan

Combo item plans

One-time product bundle

Annual subscription + visit schedule

Full hybrid plan

Simple product plan

Simple service plan

8. Documentation

Explain basePrice

Explain pricing rules

Explain SKU logic

Explain combo pricing flow

Add API examples (Postman JSON)

Acceptance Criteria:

All plan types must be created successfully via API.

Pricing engine must compute correct finalPrice + savingsAmount.

Validation must reject incorrect payloads.

All scenarios tested and passed.

Clean error responses & logging.

Schema ready for future features (addons, bundles, etc.).

Deliverables:

UnifiedPlanSchema

PlanService with pricing engine

PlanController

Routes

Validation schema

Utility modules

Postman collection

Internal documentation PDF

Edit Copy Actions

Also available in: Atom PDF