Task #17000
closedTask #16360: Sprint Planning for 20/01/2025 - 31/01/2025
Quotation: Add reminder notifications for expiring quotations and approaching validity deadlines 15 days
Description
Title: Notify users when a quotation is still open after its validity period has expired or is about to expire
As a system user (salesperson, manager, etc.),
I want to receive reminder notifications when a quotation is still open after its validity period has expired or is nearing expiration,
So that I can follow up on pending quotations and take appropriate actions before or after expiration.
Acceptance Criteria:¶
-
Triggering Notifications:
- A reminder notification should be triggered when:
- A quotation's validity period has expired.
- A quotation is approaching expiration (e.g., within X days before the expiry date, configurable from the settings).
- The system should check for these conditions on a daily or configurable schedule.
- The Freight Forwarder Agent is responsible for setting the validity date of the quotation. This allows the quotation remains relevant and accurate for the duration needed.
- A notification should be sent to inform the FFW/ Sales person
- A reminder notification should be triggered when:
-
Notification Content:
- The notification should include key information about the quotation:
- Quotation ID/Reference Number.
- Expiration date.
- Days remaining until expiration (for near-expiry reminders).
- Client name.
- Link to view the quotation details.
- The message should clearly state whether the quotation has expired or is nearing expiration.
- The notification should include key information about the quotation:
-
Notification Delivery:
- The notification should be sent via email and/or displayed as an in-app notification, depending on user preferences.
- The recipient of the notification should be the assigned salesperson or other designated team members (e.g., manager or a specific group email).
-
UI Considerations:
- A Settings option should be available to define the number of days before expiration when a reminder should be sent (e.g., 3, 7, or 10 days).
- Users should also be able to opt in/out of receiving near-expiry notifications.
-
Error Handling:
- If the notification fails to send, the system will retry after a defined period (e.g., 1 hour) and log the error.
- In case of repeated failures, a fallback notification (e.g., via a different channel or system alert) should be triggered to notify the administrator.
-
Security & Permissions:
- Only authorized users will be able to modify the validity period of quotations or configure the notification settings.
- Ensure the notifications respect user access control, so only relevant users are notified.
-
Dashboard Visibility:
- A section in the dashboard should display a list of quotations that are near expiration or expired, providing users with a quick overview of pending actions.
Non-functional Requirements:¶
- The system should ensure that notifications are sent in a timely manner (within 5 minutes of the condition being met).
- The reminder system should be scalable to handle a large number of quotations and users.
GitLab Sync Log
[{"id": "14055", "author": "Avisham", "hours": 8.0, "created": "2025-01-23T06:37:16.030Z", "log_date": "2025-01-23", "comment": "Imported from GitLab by @Avisham on 2025-01-23T06:37:16.030Z: 1d-(8.0)h spend at: 2025-01-23", "status": "active", "deleted_by": "", "redmine_entry_id": 8499}]