Task #17528
closedTask #18451: Ocean Sprint Planning for 16/06/2025 - 30/06/2025
User Story: Track and Manage Demurrage(Detention) for Containers After Pickup
Description
A Freight Forwarder (FFWD) should be able to track the demurrage (detention) process for containers after they leave the CHCL yard. He/she can monitor the deadline for container return, record demurrage charges, and notify consignees to avoid additional costs.
Actors:
- Freight Forwarder (FFWD) / Co-Loader
- Consignee
Refer to Epic https://gitlab.maccs.mu/rnd/ffa/documentation/-/issues/390 for more information.
Pre-requisites:
- A File Reference must have already been created and approved in the system for the shipment.
- In order to begin the demurrage countdown, the Container Status must be updated to "Picked Up", and the deadline for returning the empty container has been recorded.
Acceptance Criteria:
1. Container Pickup & Deadline for Return
- After leaving the CHCL yard and clearing any Terminal Storage fee, the system updates the container status to "Picked Up" and starts tracking the demurrage deadline.
- The system should have a subsection named “Return of Container” within the container-level section of the Shipment Cost screen where it will store and track the following fields.
- Pickup Date
- Deadline for returning the empty container (the last date before demurrage applies).
2. Deadline Monitoring & Notifications
- The system should track the allowed return date (LFD).
- Automated notifications should be sent:
- 2 days before deadline → Reminder email/SMS/WhatsApp to consignee & FFWD.
- On deadline day → Final warning before demurrage starts.
- After the deadline → Notification that demurrage charges are being applied.
3. Demurrage Charges
- The system should allow the user to record the Demurrage charges as an Additional Cost for the particular container at the MBL level.
- The system should allow the user to then record the Storage charges as Sales charges to bill back the client (additional invoice) at the MBL level.
4. Payment Request & Invoice Generation
- The system should allow the FFWD to generate a Payment Request to the accounting department for settling demurrage charges with the Shipping Line.
- The system should allow the user to generate an invoice to bill the consignee/client fback for this charge.
5. Container Return & Status Update
- Once the demurrage charges are cleared and the container is returned, the FFWD updates the system with:
- Return Date
- Return Location (Shipping Line depot)
- The shipment status should update to "Container Returned".
6. Demurrage Dashboard & Reports
- A Demurrage Dashboard should show:
- Pending Containers (within the deadline).
- Overdue Containers (demurrage fees being applied).
- Returned Containers (demurrage cleared).
- The FFWD should be able to filter by Client, Vessel, Date, or Shipping Line.
@Peeroo_Raees Note that demurrage is both at Import & export level (in transhipment cases). Confirmed by Jacques from ED logistics¶
GitLab Sync Log
[{"id": "24863", "author": "Ra-ees Peeroo", "hours": 8.0, "created": "2025-06-12T11:25:45.072Z", "log_date": "2025-06-12", "comment": "Imported from GitLab by @Ra-ees Peeroo on 2025-06-12T11:25:45.072Z: 1d-(8.0)h spend at: 2025-06-12", "status": "active", "deleted_by": "", "redmine_entry_id": 9615}, {"id": "24909", "author": "Ra-ees Peeroo", "hours": 2.0, "created": "2025-06-13T10:24:23.009Z", "log_date": "2025-06-13", "comment": "Imported from GitLab by @Ra-ees Peeroo on 2025-06-13T10:24:23.009Z: 2h-(2.0)h spend at: 2025-06-13", "status": "active", "deleted_by": "", "redmine_entry_id": 9631}, {"id": "25103", "author": "Ra-ees Peeroo", "hours": 4.0, "created": "2025-06-16T11:27:56.750Z", "log_date": "2025-06-16", "comment": "Imported from GitLab by @Ra-ees Peeroo on 2025-06-16T11:27:56.750Z: 4h-(4.0)h spend at: 2025-06-16", "status": "active", "deleted_by": "", "redmine_entry_id": 9650}, {"id": "25233", "author": "Ra-ees Peeroo", "hours": 4.0, "created": "2025-06-18T09:28:35.807Z", "log_date": "2025-06-16", "comment": "Imported from GitLab by @Ra-ees Peeroo on 2025-06-18T09:28:35.807Z: 4h-(4.0)h spend at: 2025-06-16", "status": "active", "deleted_by": "", "redmine_entry_id": 9681}, {"id": "26698", "author": "Ra-ees Peeroo", "hours": 4.0, "created": "2025-07-16T06:52:53.176Z", "log_date": "2025-07-16", "comment": "Imported from GitLab by @Ra-ees Peeroo on 2025-07-16T06:52:53.176Z: 4h-(4.0)h spend at: 2025-07-16", "status": "active", "deleted_by": "", "redmine_entry_id": 9938}, {"id": "32024", "author": "Yashvee Seetul", "hours": 2.0, "created": "2025-10-15T07:55:28.452Z", "log_date": "2025-10-12", "comment": "Imported from GitLab by @Yashvee Seetul on 2025-10-15T07:55:28.452Z: 2h-(2.0)h spend at: 2025-10-12", "status": "active", "deleted_by": "", "redmine_entry_id": 10796}]