Project

General

Profile

Task #19667

Updated by Redmine Admin 4 months ago

Implement Invoice for MAWB in the Air module. 

 This feature will allow users to generate invoices at Master Air Waybill (MAWB) level, following the same core logic as Ocean invoicing, but adapted to: 

 * Air shipment data 
 * Updated UI structure (AIR tab + Create Air Invoice button) 

 **Scope** 

 * Applicable to Air module only 
 * Applicable to MAWB (Master Air Waybill) 
 * Accessible via: 
   * Invoice → AIR tab → “Create Air Invoice” 
 * Covers linked invoices only 
 * Out of scope: 
   * Create Unlinked Invoice functionality 

 **UI Alignment (Air Invoice Module)** 

 * Invoice creation is initiated from: 
   * Accounting→ Invoice → AIR tab 
 * User clicks: 
   * “+ Create Air Invoice” 
 * Invoice list must display the following columns: 
   * Invoice Reference 
   * Client 
   * Entity Type (MAWB) 
   * Created On 
   * File Ref 
   * House 
   * Master (MAWB No.) 
   * Shipment (Air) 
   * Cargo Type (Import/Export) 
   * Status 
   * Amount Excl. VAT 
   * VAT Amount 
   * Total Amount 
   * Download 
   * Preview 
 * Entity Type must clearly identify invoices created from: 
   * MAWB 

 **Functional Requirements** 

 **1. Create Air Invoice Entry** 

 * User clicks **“**+ Create Air Invoice” 
 * User selects MAWB tab 

 **2. MAWB Selection** 

 System should allow selection of MAWB using filters: 

 **Filters:** 

 * File Reference 
 * MAWB Reference 
 * Cargo Type 
 * Date Range 

 **Search Results Must Display:** 

 * File Reference 
 * MAWB Reference 
 * Airline 
 * ~~Flight Details~~ Flight Details 
 * Origin Airport 
 * Destination Airport 
 * Cargo Type 
 * Created On 

 **3. Expandable MAWB Row** 

 * User can expand MAWB row to view invoiceable data: 
   * Customer / Client Name 
   * Client Type 
   * VAT Type 
   * Total Invoiceable Amount 

 4\. Create Invoice from MAWB 

 * User clicks the "+" Create Invoice against a MAWB row 
 * System opens Invoice Detail Screen 

 **5. MAWB Invoice Detail Screen** 

 **Shipment Summary:** 

 * File Reference 
 * MAWB No. 
 * Airline 
 * Flight Number 
 * ETD / ETA 
 * Origin Airport 
 * Destination Airport 
 * Shipper 
 * Consignee 
 * Number of Packages 
 * Package Type 
 * ~~Weight~~ Weight 
 * Chargeable Weight 
 * Volume 
 * Description of Goods 

 **6. Invoice Charges Section** 

 Display all invoiceable charges linked to MAWB: 

 **Columns:** 

 * Charge Code 
 * Description 
 * Currency 
 * Prepaid / Collect 
 * Amount Excl. VAT 
 * VAT 
 * Discount 
 * Exchange Rate 
 * Total Amount 
 * Footer - System displays totals 

 **7. Invoice Processing** 

 User can: 

 * Process individual invoice—follows same logic as for ocean module 
 * Process all invoices—follows same logic as for ocean module 

 **8. Save Invoice Modal** 

 User must select: 

 * Invoice Currency (mandatory) 
 * Bank ~~(mandatory)~~ (mandatory) 

 System displays: 

 * Exchange rate details, which can be modified by the user and the charges will be calculated as per this new rate. 

 **Save options:** 

 * Draft 
 * Proforma 
 * Standard 

 **9.Invoice PDF format** 

 [Invoice-MACCS26INV03691-2026-03-18.pdf](/uploads/a57fd1a27bb6f9907abdd6a574670001/Invoice-MACCS26INV03691-2026-03-18.pdf) 

 The invoice format will be the same as the attached; however, the "HAWB Reference:" will be replaced by "MAWB Reference:" in the header. 

 **10. List of Generated Invoices** 

 After creation: 

 * The invoice appears in the "List of Generated Invoices" section 

 <table> 
 <tr> 
 <th> 

 **Reference** 
 </th> 
 <th> 

 **Client** 
 </th> 
 <th> 

 **VAT Type** 
 </th> 
 <th> 

 **Type** 
 </th> 
 <th> 

 **Inv. Type** 
 </th> 
 <th> 

 **Due Date** 
 </th> 
 <th> 

 **Status** 
 </th> 
 <th> 

 **Inv. Currency** 
 </th> 
 <th> 

 **Total Inv. Amt.** 
 </th> 
 <th> 

 **Total Amt. (MUR)** 
 </th> 
 <th> 

 **Disbursement** 
 </th> 
 <th> 

 **Action** 
 </th> 
 </tr> 
 </table> 

 * Reference 
 * Client 
 * VAT Type 
 * Type 
 * Inv. Type 
 * Due Date 
 * Status 
 * Inv. Currency 
 * Total Inv. Amt. 
 * Total Amt. (MUR) 
 * Disbursement 
 * Action 

 **11. List of Invoices** 

 Clicking on "Back" button returns the user to the "List of Invoices" screen. 

 * The created invoice appears in invoice list under the AIR Tab 

 <table> 
 <tr> 
 <th> 

 **Invoice Reference** 
 </th> 
 <th> 

 **Client** 
 </th> 
 <th> 

 **Entity Type** 
 </th> 
 <th> 

 **Created On** 
 </th> 
 <th> 

 **File Ref.** 
 </th> 
 <th> 

 **House** 
 </th> 
 <th> 

 **Master** 
 </th> 
 <th> 

 **Type** 
 </th> 
 <th> 

 **Shipment** 
 </th> 
 <th> 

 **Cargo Type** 
 </th> 
 <th> 

 **Status** 
 </th> 
 <th> 

 **Amt. Excl. VAT** 
 </th> 
 <th> 

 **VAT Amt.** 
 </th> 
 <th> 

 **Total Amt.** 
 </th> 
 <th> 

 **Download** 
 </th> 
 </tr> 
 <tr> 
 <td colspan="15">No record(s) found.</td> 
 </tr> 
 </table> 

 **Columns must include:** 

 * Invoice Reference 
 * Client 
 * Entity Type (MAWB) 
 * Created On 
 * File Ref 
 * House 
 * Master (MAWB No.) 
 * Type 
 * Shipment 
 * Cargo Type 
 * Status 
 * Amount Excl. VAT 
 * VAT Amount 
 * Total Amount 
 * Download - Download icon & Preview Icon 

 **12. Invoice Output / Download** 

 * User can preview and download the invoice. 
 * Existing PDF generation logic should be reused 
 * Output format remains consistent with system standards 

 **13. Validation Rules** 

 * Only MAWB records should appear in the MAWB tab 
 * Currency and bank are mandatory before saving 
 * Prevent invalid or duplicate invoice creation 
 * System displays success confirmation 

 **14. Linking & Traceability** 

 Each invoice must be linked to: 

 * File Reference 
 * MAWB 
 * Customer 

 **Non-Functional Requirements** 

 * Reuse existing invoice engine from Ocean module 
 * No regression to Ocean MBL invoicing 
 * Maintain performance for search and invoice creation 
 * Ensure proper PDF rendering 

 **Acceptance Criteria** 

  1. User can access invoice module via AIR tab 
  2. User clicks Create Air Invoice to initiate process 
  3. MAWB selection supports filters (File Ref, MAWB, Cargo Type, Date Range) 
  4. MAWB search results display correct Air shipment data 
  5. User can expand MAWB row to view invoiceable details 
  6. User can create invoice from selected MAWB 
  7. Invoice detail screen shows Air-specific shipment summary 
  8. Invoice charges are displayed correctly 
  9. User can process individual invoices or all invoices 
 10. Save Invoice modal enforces Currency and Bank selection 
 11. User can save as Draft, Proforma, or Standard 
 12. Generated invoice appears in AIR invoice list 
 13. Entity Type is displayed as MAWB 
 14. Invoice list columns match UI design 
 15. User can download/preview invoice 
 16. Invoice is linked to MAWB and source charges 
 17. No regression to Ocean invoice functionality 

 **Dependencies** 

 * Existing Invoice Module 
 * Air shipment (MAWB) data 
 * MAWB Charges exist 
 * Bank & currency configuration 
 * Existing Invoice PDF design

Back