Group Billing
Author(s)
- Reshmi Karan
- ...
Last Updated Date
[2025-04-23]
SRS References
Version History
| Version | Date | Changes | Author |
|---|---|---|---|
| 1.0 | 2025-04-23 | Initial draft | Reshmi Karan |
| ... | ... | ... | ... |
Feature Overview
Objective:
The objective of this feature is to enable Group Billing, where a single consolidated bill is generated for multiple subscribers linked under a Head Subscriber.
The Head Subscriber will be responsible for managing, receiving, and paying the group's combined bill, while the system maintains a detailed breakdown for each individual subscriber within the group.
Scope:
- Consolidate billing information from multiple subscribers into a single invoice.
- Introduce a Head Subscriber concept to own and pay for the group’s total bill.
- Track individual subscriber usage but aggregate charges under the Head Subscriber’s account.
- Only subscribers linked under the same Head Subscriber ID can be grouped.
- Skip individual invoice generation for linked subscribers (only group invoice will generate).
- Head Subscriber must have a valid Activation Date set before billing starts.
Dependencies:
(List any external dependencies, libraries, or other features that this feature depends on.)
Requirements
- Regenerate Preview Invoice for the Head Subscriber with all linked subscriber charges.
- Save Invoice with mapping of Head Subscriber and child subscribers.
- Generate Preview Invoice before final save.
- Auto-generate Invoice only for the Head Subscriber during the regular billing cycle.
- Skip Auto-generation of invoices for all linked child subscribers.
- Validate that no linked subscriber has Auto Fixed Generation enabled before grouping.
- Validate that Head Subscriber has a valid Activation Date before group billing starts.
- Check if any linked subscriber’s Setup Fee has already been generated before grouping.
- Store mappings of Target (Head Subscriber) and Source (Child Subscribers) against the Invoice.
Design Specifications
(Provide detailed design specifications, including UI/UX designs, API interfaces, and any other relevant architectural details.)
-
UI/UX Design:
(Include wireframes, mockups, or links to design files.) -
Data Models:
-
API Interfaces:
(Define the APIs required for this feature, including endpoints, methods, request/response formats.)Endpoint Method Parameters Response Response Status Codes -
Third-Party Integrations:
(List any third-party services or tools that need to be integrated.) -
Workflow:
(Describe the end-to-end workflow of the feature, detailing how different components interact, including the sequence of events, data flow, and the user journey.)
Development Tasks & Estimates
(Break down the development process into smaller tasks and provide time estimates for each.)
| No | Task Name | Estimate (Hours) | Dependencies | Notes |
|---|---|---|---|---|
| 1 | Regenerate Preview Invoice | 3 hours | ||
| 2 | Generate Preview Invoice | 3 hours | ||
| 3 | Save Invoice | 2 hours | ||
| 4 | Auto-generate Invoice only for the Head Subscriber | 3 hours | ||
| 5 | Check if any linked subscriber’s Setup Fee has already been generated before grouping | 1 hours | ||
| 6 | Store mappings of Target (Head Subscriber) and Source (Child Subscribers) against the Invoice. | 1 hours | ||
| 7 | Total | 13 hours |
Testing & Quality Assurance
(Outline the testing strategy and quality assurance measures for the feature.)
-
Unit Tests:
(List the unit tests that will be written for this feature.) -
Integration Tests:
(Describe how integration testing will be conducted.) -
Acceptance Criteria:
(Define the criteria that must be met for the feature to be considered complete.) -
Testing Tools:
(List any tools that will be used for testing.)
Deployment Considerations
(Describe any deployment considerations, including environment configurations, feature toggles, or migration steps.)
- Configuration Changes:
CREATE TABLE [dbo].[tblDilawriInvoiceMapping](
[InvoiceID] [uniqueidentifier] NOT NULL,
[InvoiceNumber] [varchar](500) NULL,
[SourceSubscriberID] [uniqueidentifier] NOT NULL,
[MemberSubscriberID] [uniqueidentifier] NOT NULL,
[InvoiceDate] [datetime] NULL,
[BillingPeroidStart] [datetime] NULL,
[BiliingPeriodEnd] [datetime] NULL,
[InvoiceType] [int] NOT NULL,
[TotalAmount] [decimal](10, 2) NOT NULL,
[isFirstInvoice] [bit] NULL
)
spIsOtherInvoiceGeneratedForSpecifiedItemTypeForPrestonAutomotive
spIsInvoiceExistsForDilawriMember
spSaveDilawriInvoiceMapping
spCheckSetupExistsForAnyOtherInvoicesForPrestonAutomotive
``
- **Rollout Plan**:
(Outline the plan for rolling out the feature, including any phased releases.)
---
## **Risks & Mitigations**
(Identify potential risks and the strategies to mitigate them.)
| **Risk** | **Impact** | **Likelihood** | **Mitigation Strategy** |
|--------------------------|------------|----------------|------------------------------------------|
---
## **Review & Approval**
(Include a section for review and approval by stakeholders.)
- **Reviewer**:
(Name and role of the person reviewing the document.)
- **Approval Date**:
(Date when the feature is approved for development.)
---
**Notes**
(Add any additional notes or considerations related to the feature development here.)