ShieldCert System - Account Management Module — Software Requirements Specification (SRS)
Table of Contents
- 1 Document Information
- 2 Project Overview
- 3 User Requirements
- 4 Detailed Feature Requirements
- 5 Technical Requirements
- 6 External Dependencies
- 7 Data Model
- 8 Business Rules
- 9 Integration Points
- 10 Sign Off
1 Document Information
| Field | Value |
|---|---|
| Project Name | ShieldCert System - Account Management Module |
| Version | 1.0 |
| Date | 2025-12-22 |
| Project Manager | TBD |
| Tech Lead | TBD |
| Qa Lead | TBD |
| Platforms | ['Web'] |
| Document Status | Draft |
| Client | Paladin Envirotech |
| Document Code | SHIELDCERT-ACCOUNT-122025 |
2 Project Overview
2.1 What Are We Building
2.1.1 System Function
A comprehensive account management system that handles the complete client lifecycle from initial account creation through ongoing relationship management, including contact management, pickup addresses, document storage, and Statement of Work (SOW) configuration with service level agreements.
2.1.2 Users
- Account Managers: Primary users for client relationship management
- Sales Representatives: Account assignment and client interaction
- Operations Staff: Access to account information for processing
- Administrators: Account approval and system configuration
2.1.3 Problem Solved
Eliminates manual client management processes, provides centralized client information storage, ensures consistent SOW management across all clients, automates SLA tracking, and maintains comprehensive audit trails for all client interactions.
2.1.4 Key Success Metric
100% digital client onboarding, 95% SLA compliance tracking, 50% reduction in account setup time, and complete audit trail for all client interactions.
2.2 Scope
2.2.1 In Scope
- Account dashboard with filtering and export capabilities
- Account creation and approval workflow
- Contact management with multiple contacts per account
- Pickup address management with responsible contacts
- Document upload and management system
- Statement of Work (SOW) creation and management
- Service fee configuration and pricing
- SLA management and tracking system
- Client decision tree configuration
- Asset tag requirements management
2.2.2 Out Of Scope
- External client portal access
- Advanced analytics and reporting dashboards
- Integration with external CRM systems
- Automated marketing communications
3 User Requirements
3.1 Account Dashboard Management
| Feature Code | I Want To | So That I Can | Priority | Notes |
|---|---|---|---|---|
| FT-ACC-DASH | Access an Account Dashboard that displays all accounts in a grid view | Quickly review and manage account details with filtering and export capabilities | Must | Grid view with filtering, sorting, and Excel export functionality |
| FT-ACC-CREATE | Create a new account with all required information | Onboard new clients and use the account throughout the system | Must | Includes main address, invoice address, and main contact information |
| FT-ACC-APPROVE | Approve newly created accounts | Activate accounts for use in downstream processes | Must | Requires NetSuite Account Number before approval |
3.2 Contact Management
| Feature Code | I Want To | So That I Can | Priority | Notes |
|---|---|---|---|---|
| FT-CONT-CREATE | Create one or more contacts for an account | Maintain accurate communication records for each account | Must | Multiple contacts per account with contact type classification |
| FT-CONT-VIEW | View all contacts belonging to an account | Quickly reference or update account contact information | Must | List view with contact details and navigation to edit |
| FT-CONT-EDIT | Update contact details | Keep contact information current and accurate | Must | Includes audit trail of changes with user and timestamp |
3.3 Pickup Address Management
| Feature Code | I Want To | So That I Can | Priority | Notes |
|---|---|---|---|---|
| FT-PICKUP-CREATE | Create and manage pickup addresses for an account | Schedule shipments from correct locations with responsible contacts | Must | Links pickup addresses to account contacts as responsible parties |
| FT-STATE-SELECT | Select U.S. states from a predefined list | Ensure consistent state entries across the system | Should | Master list of all U.S. states for consistency |
3.4 Document Management
| Feature Code | I Want To | So That I Can | Priority | Notes |
|---|---|---|---|---|
| FT-DOC-UPLOAD | Upload documents for an account | Store supporting documents like contracts and agreements | Should | Document type classification and secure storage |
3.5 Sow Management
| Feature Code | I Want To | So That I Can | Priority | Notes |
|---|---|---|---|---|
| FT-SOW-CREATE | Create and manage Statements of Work (SOW) for client accounts | Capture all contractual details and operational instructions | Must | Includes SOW types, revenue share, processing instructions, and SLAs |
| FT-SOW-SLA | Configure SLAs for different instruction types | Track and ensure compliance with client agreements | Must | Operational and client SLAs with base date configuration |
| FT-SOW-DECISION | Create client decision trees based on product attributes | Automate asset processing decisions per client requirements | Should | Rules based on product type, model, and manufacturer |
| FT-SOW-FEES | Configure service fees at the SOW level | Define applicable service charges for client orders | Must | Per unit, per order, and per weight charging types |
4 Detailed Feature Requirements
4.1 Ft Acc Dash
4.1.1 Priority
Must Have
4.1.2 User Story
As an Account Manager, I want to access an Account Dashboard that displays all accounts in a grid view so that I can quickly review and manage account details
4.1.3 Preconditions
User has Account Manager role and is logged into the system
4.1.4 Postconditions
Account dashboard displays with filtering, sorting, and export capabilities
4.1.5 Test Cases
| Id | Description | Weight |
|---|---|---|
| ACC-TC-001 | Verify account dashboard displays all accounts in grid format with required columns | High |
| ACC-TC-002 | Verify filtering functionality works for all grid columns | High |
| ACC-TC-003 | Verify Excel export includes all displayed columns and data | Medium |
| ACC-TC-004 | Verify only Account Manager role can access the dashboard | High |
4.2 Ft Acc Create
4.2.1 Priority
Must Have
4.2.2 User Story
As an Account Manager, I want to create a new account so that the account can be used throughout the system for processing, billing, and communication
4.2.3 Preconditions
User has Account Manager role and accesses Create New Account screen
4.2.4 Postconditions
New account created with all required information and validation
4.2.5 Test Cases
| Id | Description | Weight |
|---|---|---|
| ACC-TC-005 | Verify account creation with all required fields populated | High |
| ACC-TC-006 | Verify validation prevents saving with missing required fields | High |
| ACC-TC-007 | Verify account type selection allows multiple types | Medium |
| ACC-TC-008 | Verify main address and optional invoice address capture | High |
| ACC-TC-009 | Verify main contact information is captured correctly | High |
4.3 Ft Acc Approve
4.3.1 Priority
Must Have
4.3.2 User Story
As an Account Manager, I want to approve a newly created account so that the account becomes active and can be used in downstream processes
4.3.3 Preconditions
Account exists in Draft/Pending Approval status with NetSuite Account Number
4.3.4 Postconditions
Account status updated to Approved with unique account number assigned
4.3.5 Test Cases
| Id | Description | Weight |
|---|---|---|
| ACC-TC-010 | Verify account approval requires valid NetSuite Account Number | High |
| ACC-TC-011 | Verify approval updates status and assigns unique account number (IXXXXX format) | High |
| ACC-TC-012 | Verify restricted fields become read-only after approval | Medium |
| ACC-TC-013 | Verify approval audit trail captures user and timestamp | High |
4.4 Ft Cont Create
4.4.1 Priority
Must Have
4.4.2 User Story
As an Account Manager, I want to create one or more contacts for an account so that I can maintain accurate communication records
4.4.3 Preconditions
Valid account exists in the system
4.4.4 Postconditions
Contact created and linked to account with all required information
4.4.5 Test Cases
| Id | Description | Weight |
|---|---|---|
| CONT-TC-001 | Verify contact creation requires valid account selection | High |
| CONT-TC-002 | Verify all required contact fields are validated before saving | High |
| CONT-TC-003 | Verify multiple contacts can be associated with single account | Medium |
| CONT-TC-004 | Verify contact type dropdown functionality | Medium |
4.5 Ft Sow Create
4.5.1 Priority
Must Have
4.5.2 User Story
As an Account Manager, I want to create and manage Statements of Work (SOW) for client accounts so that I can capture all contractual details and operational instructions
4.5.3 Preconditions
Valid account exists and user has SOW management permissions
4.5.4 Postconditions
SOW created with all instructions, SLAs, and configuration linked to account
4.5.5 Test Cases
| Id | Description | Weight |
|---|---|---|
| SOW-TC-001 | Verify SOW creation with all required fields and validation | High |
| SOW-TC-002 | Verify SOW type selection affects revenue share percentage visibility | High |
| SOW-TC-003 | Verify processing instructions capture for all categories | High |
| SOW-TC-004 | Verify SLA configuration with base date selection | High |
| SOW-TC-005 | Verify client asset tag requirements configuration | Medium |
| SOW-TC-006 | Verify SOW approval workflow before activation | High |
| SOW-TC-007 | Verify decision tree creation and validation rules | Medium |
5 Technical Requirements
5.1 Performance Standards
| Requirement | Target | How To Test |
|---|---|---|
| Account dashboard loads | ≤ 2 seconds | Load testing with 100+ accounts |
| Account creation saves | ≤ 1 second | Performance testing during account creation |
| Excel export generates | ≤ 5 seconds for 1000 accounts | Export testing with large datasets |
| Contact search response | ≤ 1 second | Search testing with multiple contacts per account |
5.2 Platform Requirements
| Platform | Minimum Version | Target Version | Notes |
|---|---|---|---|
| Web Browser | Chrome 90+, Firefox 88+, Safari 14+, Edge 90+ | Latest stable versions | Responsive design for desktop and tablet use |
5.3 Security Privacy
| Requirement | Must Have | Implementation |
|---|---|---|
| Role-based access control | True | JWT-based authentication with Account Manager role verification |
| Data encryption | True | AES-256 encryption for sensitive client data at rest |
| Audit trail | True | Complete logging of all account and contact changes |
| Document security | True | Secure file storage with access control and virus scanning |
6 External Dependencies
6.1 Third Party Services
| Service | What It Does | Criticality | Backup Plan |
|---|---|---|---|
| NetSuite API | Account number validation and synchronization | Critical | Manual NetSuite number entry with validation |
| File Storage Service | Document upload and storage | Important | Local file system storage |
6.2 System Requirements
| Feature | Required | Optional | Notes |
|---|---|---|---|
| File Upload | True | False | Support for PDF, DOC, XLS, and image formats up to 10MB |
| Excel Export | True | False | Generate Excel files with all account data |
7 Data Model
7.1 Entities
7.1.1 Account
7.1.1.1 Description
Core client account information
7.1.1.2 Key Fields
- account_id (Primary Key)
- account_name (Required)
- account_type (Multiple selection)
- netsuite_number (Required for approval)
- currency
- payment_terms
- sales_representative
- account_manager
- status (Active/Inactive)
- approval_status
- main_address
- invoice_address
- created_date
- approved_date
- approved_by
7.1.2 Contact
7.1.2.1 Description
Account contact information
7.1.2.2 Key Fields
- contact_id (Primary Key)
- account_id (Foreign Key)
- first_name (Required)
- last_name (Required)
- email_address (Required)
- phone_number
- contact_type
- created_date
- modified_date
- modified_by
7.1.3 Pickupaddress
7.1.3.1 Description
Account pickup locations
7.1.3.2 Key Fields
- pickup_id (Primary Key)
- account_id (Foreign Key)
- pickup_name (Required)
- pickup_code (Required)
- street_address (Required)
- street_address_2
- city (Required)
- state (Required)
- zip_code (Required)
- country (Required)
- responsible_contact_id (Foreign Key)
7.1.4 Statementofwork
7.1.4.1 Description
Client SOW configuration
7.1.4.2 Key Fields
- sow_id (Primary Key)
- account_id (Foreign Key)
- sow_type (Required)
- sow_name (Required, Unique per client)
- start_date (Required)
- end_date (Required)
- revenue_share_percentage
- receiving_instructions
- processing_instructions
- remarketing_instructions
- reporting_instructions
- client_asset_tags_count
- requires_decision_tree
- approval_status
- approved_by
- approved_date
8 Business Rules
8.1 Account Management
- Account names must be unique across the system
- NetSuite Account Number required before account approval
- Approved accounts cannot have Account Name or NetSuite Number modified
- Account can have multiple account types (Supplier, Customer, Downstream, OSP, 3PL)
- Main address is required, invoice address is optional
8.2 Sow Management
- SOW name must be unique per client
- Revenue share percentage only visible for Revenue Share and Buyback SOW types
- SOW must be approved before use in operations
- Decision trees are optional and only for SOWs marked as requiring them
- SLA base date determines calculation starting point (Pickup, Received, or Request Date)
8.3 Contact Management
- Each account must have at least one contact
- Email addresses must be unique within an account
- Pickup addresses must have at least one responsible contact assigned
9 Integration Points
9.1 Inbound Systems
| System | Integration Type | Data Flow | Frequency |
|---|---|---|---|
| NetSuite | API | Account number validation and synchronization | Real-time |
9.2 Outbound Systems
| System | Integration Type | Data Flow | Frequency |
|---|---|---|---|
| Inbound Orders Module | Database | Account, contact, and SOW information for order creation | Real-time |
| Sales Orders Module | Database | Account and pricing information for sales processing | Real-time |
10 Sign Off
10.1 Approval
| Role | Name | Signature | Date |
|---|---|---|---|
10.2 Document History
| Version | Date | Changes Made | Changed By |
|---|---|---|---|
| 1.0 | 2025-12-22 | Initial Account Management module SRS based on ShieldCert System requirements | SRS Development Team |