-
Notifications
You must be signed in to change notification settings - Fork 2
Design: Special Projects
The Special Projects module supports complex, multi-modal logistics engagements that require rigorous planning, coordination of diverse job types, special handling, equipment management, detailed costing, and flexible delivery and billing reporting. Unlike standard order flows (Transport Order → Transport Job, Warehouse Order → Warehouse Job), special projects are typically:
- Scoping-driven — pre-booking activities (ocular inspection, road inspection, technical consultations) with costs tracked and charged only when the project is booked
- One-off or custom engagements
- Multi-modal (transport + warehousing + air/sea freight + customs)
- Activity-driven with explicit planning and execution phases
- Resource-intensive (staff, equipment, third-party vendors)
- Require special handling (temperature, hazardous, oversized, etc.)
- Multi-delivery with phased or staged delivery reports
- Multi-billing with multiple invoices or billing milestones
| Goal | Description |
|---|---|
| Rigorous planning | Define activities, milestones, dependencies, and timelines before execution |
| Resource management | Allocate personnel, equipment (in-house vs outsourced), and third-party services |
| Job orchestration | Create and link jobs across Transport, Warehousing, Air Freight, Sea Freight, Customs |
| Special handling | Capture temperature, hazmat, fragile, oversized, and other handling requirements |
| Equipment tracking | Manage special handling equipment (cranes, forklifts, reefer units, etc.) |
| Project costing | Aggregate project-level costs and margins |
| Individual job costing | Cost each job (Transport Job, Warehouse Job, Air Shipment, etc.) separately |
| Multiple delivery reports | Support multiple delivery milestones, proof of delivery, and delivery reports |
| Multiple billings | Support multiple invoices, milestones, or billing schedules per project |
| Monitoring | Visibility into project status, progress, and alerts |
| Project scoping | Pre-booking activities (ocular inspection, road inspection, technical consultations) with costs tracked but charged only when project is booked |
| Resource and product requests | Formal requests for resources, products, equipment; product requests integrate with logistics orders/bookings with project reference |
| ERPNext Projects integration | ERPNext Project auto-created on Special Project insert; use for task management, costing, billing |
- Special Project (DocType) — master document for a special project
- Activity planning — activities, milestones, resources, dependencies
- Integration with Transport Job, Warehouse Job, Air Shipment, Sea Shipment, Declaration
- Special handling — temperature, hazmat, dimensions, handling instructions
- Equipment — in-house and outsourced equipment
- Project costing — roll-up and variance tracking
- Individual job costing — per-job cost and revenue
- Delivery reports — multiple delivery milestones and reports
- Multiple billings — multiple Sales Invoices, billing milestones, or schedules
- Project scoping — ocular inspection, road inspection, technical consultations; costs incurred but not charged until project is booked
- Requests — for resources, products, equipment; product requests integrated with Transport Order, Air Booking, Sea Booking, Inbound Order, Release Order, Transfer Order, etc., with project reference
- Project link — project (Link to Project) on orders, bookings, jobs, and Sales Invoice for unified project visibility
- ERPNext Projects integration — ERPNext Project auto-created on Special Project insert; links for tasks, costing, billing
- External project management tools (e.g. MS Project) integration
- Advanced resource scheduling (Gantt charts, resource levelling)
- Real-time asset tracking (GPS/GNSS for equipment)
Purpose: Central document for a special project. All activities, jobs, resources, equipment, costs, deliveries, and billings are linked to this project.
| Field | Type | Description |
|---|---|---|
| naming_series | Select | e.g. SP-.#####
|
| project | Link | Project (ERPNext) — auto-created on insert; links to ERPNext Project for task management, costing, billing (read-only; set by system) |
| project_name | Data | Short name or title |
| customer | Link | Customer |
| sales_quote | Link | Optional link to Sales Quote |
| status | Select | Draft, Scoping, Booked, Planning, Approved, In Progress, On Hold, Completed, Cancelled |
| priority | Select | Low, Normal, High, Urgent |
| start_date | Date | Project start |
| end_date | Date | Project end |
| planned_start | Date | Planned start |
| planned_end | Date | Planned end |
| description | Small Text | Project description |
| special_handling_instructions | Long Text | Overall special handling notes |
| internal_notes | Long Text | Internal notes |
Child tables:
- Scoping Activities — Special Project Scoping Activity (pre-booking; costs charged when project is booked)
- Activities — Special Project Activity
- Resources — Special Project Resource
- Products — Special Project Product
- Equipment — Special Project Equipment
- Jobs — Special Project Job (links to Transport Job, Warehouse Job, Air Shipment, Sea Shipment, Declaration)
- Deliveries — Special Project Delivery
- Billings — Special Project Billing
Related (via link): Special Project Request — requests are linked via special_project; show in "Requests" tab or Related list.
ERPNext Project: An ERPNext Project record is automatically created when a Special Project is inserted. The project field is set by the system and links to this created Project. Use Link Project only to attach an existing Project (e.g. if auto-creation was skipped or for migration).
Purpose: Define pre-booking scoping activities—ocular inspection, road inspection, technical consultations—that incur costs during the scoping phase. These costs are tracked but not charged to the project until the project is booked. Once the project status moves to Booked (or Approved/ later phases), scoping costs become chargeable and flow into project costing.
| Field | Type | Description |
|---|---|---|
| scoping_type | Select | Ocular Inspection, Road Inspection, Technical Consultation |
| activity_date | Date | Date the activity was performed |
| description | Small Text | Description of the activity |
| location | Data | Location or site (e.g. for road inspection route) |
| assigned_to | Link | User |
| cost | Currency | Cost incurred |
| currency | Link | Currency |
| charged_to_project | Check | Set when project is booked; indicates cost has been charged to project |
| charged_date | Date | Date when cost was charged to project (set on booking) |
| status | Select | Planned, In Progress, Completed, Cancelled |
| notes | Small Text | Notes |
Behaviour:
- During Scoping status: costs are recorded but
charged_to_projectremains unchecked. - When project status changes to Booked (or Approved): action Charge Scoping Costs sets
charged_to_project= 1 andcharged_date= today for all completed scoping activities; their costs then flow into project costing. - Scoping costs can optionally be included in the first billing milestone when the project is booked.
Purpose: Formal request for resources, products, equipment, or other items needed for the project. Requests can be created from a Special Project and fulfilled by creating or linking to logistics orders/bookings (for products) or by allocation (for resources/equipment).
| Field | Type | Description |
|---|---|---|
| naming_series | Select | e.g. SPR-.#####
|
| special_project | Link | Special Project (required) |
| request_date | Date | Date of request |
| required_by | Date | Required by date |
| requested_by | Link | User |
| status | Select | Draft, Submitted, Approved, Partially Fulfilled, Fulfilled, Cancelled |
| priority | Select | Low, Normal, High, Urgent |
| description | Small Text | Overall description |
| notes | Long Text | Notes |
Child tables:
- Resource Requests — Special Project Resource Request
- Product Requests — Special Project Product Request (integrated with orders/bookings)
- Equipment Requests — Special Project Equipment Request
Purpose: Request for personnel, third-party services, or generic resources.
| Field | Type | Description |
|---|---|---|
| resource_type | Select | Personnel, Third Party, Other |
| resource_role | Data | Role or description (e.g. "Driver", "Crane Operator") |
| quantity | Float | Quantity requested |
| uom | Link | UOM (e.g. Nos, Hours) |
| required_from | Datetime | Required from |
| required_to | Datetime | Required to |
| allocation_status | Select | Pending, Allocated, Partially Allocated, Cancelled |
| resource | Link | Special Project Resource (when allocated; links to project resource) |
| notes | Small Text | Notes |
Purpose: Request for products/items. Integrated with logistics orders and bookings. When fulfilled, creates or links to Transport Order, Air Booking, Sea Booking, Inbound Order, Release Order, Transfer Order, etc. Each order/booking carries special_project reference.
| Field | Type | Description |
|---|---|---|
| item | Link | Item |
| quantity | Float | Quantity requested |
| uom | Link | UOM |
| description | Small Text | Description |
| weight | Float | Weight (if applicable) |
| volume | Float | Volume (if applicable) |
| fulfillment_type | Select | Inbound, Release, Transport, Air Freight, Sea Freight, Transfer, VAS |
| reference_doctype | Link | DocType (populated when fulfilled: Inbound Order, Release Order, Transport Order, Air Booking, Sea Booking, Transfer Order, VAS Order) |
| reference_doc | Dynamic Link | The order/booking document (options = reference_doctype) |
| fulfillment_status | Select | Pending, Ordered, Partially Fulfilled, Fulfilled, Cancelled |
| notes | Small Text | Notes |
Behaviour:
- Create Inbound Order from Request — creates Inbound Order with items from product requests where fulfillment_type = Inbound; sets project on Inbound Order
- Create Release Order from Request — creates Release Order with items; sets project on Release Order
- Create Transport Order from Request — creates Transport Order with packages; sets project on Transport Order
- Create Air Booking from Request — creates Air Booking with packages; sets project on Air Booking
- Create Sea Booking from Request — creates Sea Booking with packages; sets project on Sea Booking
- Create Transfer Order from Request — creates Transfer Order with items; sets project on Transfer Order
- Link Existing Order — link an existing order/booking to the request; sets project on that document
Integration: All logistics orders/bookings must have project (Link to Project) to reference the project. When created from Special Project Request, project is set from Special Project.project.
Purpose: Request for special handling equipment (in-house or outsourced).
| Field | Type | Description |
|---|---|---|
| equipment_type | Link | Special Handling Equipment Type |
| quantity | Float | Quantity requested |
| required_from | Datetime | Required from |
| required_to | Datetime | Required to |
| allocation_status | Select | Pending, Allocated, Partially Allocated, Cancelled |
| equipment | Link | Special Project Equipment (when allocated; links to project equipment) |
| notes | Small Text | Notes |
Purpose: Define activities for rigorous planning. Each activity has a sequence, dependencies, assigned resources, and timeline.
| Field | Type | Description |
|---|---|---|
| activity_order | Int | Sequence (1, 2, 3, …) |
| activity_name | Data | Short name |
| activity_type | Select | e.g. Transport, Warehousing, Air Freight, Sea Freight, Customs, Special Handling, Documentation, Other |
| description | Small Text | Description |
| status | Select | Not Started, In Progress, Completed, On Hold, Cancelled |
| planned_start | Datetime | Planned start |
| planned_end | Datetime | Planned end |
| actual_start | Datetime | Actual start |
| actual_end | Datetime | Actual end |
| depends_on | Link | Special Project Activity (optional; predecessor activity) |
| assigned_to | Link | User |
| resource | Link | Special Project Resource (optional resource) |
| job_type | Select | Transport Job, Warehouse Job, Air Shipment, Sea Shipment, Declaration, None |
| job | Dynamic Link | Link to the job (optional; populated when job created) |
| notes | Small Text | Notes |
Validation: depends_on must reference an activity with lower activity_order (or same parent).
Purpose: Define resources needed (personnel, equipment, third-party services).
| Field | Type | Description |
|---|---|---|
| resource_type | Select | Personnel, Equipment, Third Party, Other |
| resource_name | Link | Dynamic Link (Employee, Equipment, Supplier, etc.) |
| resource_role | Data | Role or description (e.g. "Project Manager", "Driver") |
| quantity | Float | Quantity (e.g. 2 drivers, 1 crane) |
| uom | Link | UOM |
| planned_hours | Float | Planned hours |
| actual_hours | Float | Actual hours |
| in_house | Check | In-house or outsourced |
| supplier | Link | Supplier (if outsourced) |
| cost_per_unit | Currency | Cost per unit |
| currency | Link | Currency |
| notes | Small Text | Notes |
Purpose: Define products or items involved in the project.
| Field | Type | Description |
|---|---|---|
| item | Link | Item |
| quantity | Float | Quantity |
| uom | Link | UOM |
| description | Small Text | Description |
| weight | Float | Weight |
| weight_uom | Link | UOM |
| volume | Float | Volume |
| volume_uom | Link | UOM |
| special_handling | Link | Special Handling Type (optional) |
| temperature_min | Float | Temperature range (if applicable) |
| temperature_max | Float | Temperature range (if applicable) |
| hazmat_class | Data | Hazard class (if applicable) |
| notes | Small Text | Notes |
Purpose: Define types of special handling (temperature, hazmat, oversized, fragile, etc.).
| Field | Type | Description |
|---|---|---|
| handling_type | Data | e.g. Temperature Controlled, Hazardous, Oversized, Fragile, High Value |
| description | Small Text | Description |
| requires_equipment | Check | Whether special equipment is required |
| requires_certification | Check | Whether certification is required |
| default_instructions | Long Text | Default handling instructions |
Purpose: Define special handling equipment needed for the project (in-house or outsourced).
| Field | Type | Description |
|---|---|---|
| equipment_type | Link | Equipment Type (e.g. Crane, Forklift, Reefer Unit, Cold Chain) |
| equipment | Link | Equipment (optional; specific asset if in-house) |
| in_house | Check | In-house or outsourced |
| supplier | Link | Supplier (if outsourced) |
| quantity | Float | Quantity |
| planned_start | Datetime | Planned start |
| planned_end | Datetime | Planned end |
| actual_start | Datetime | Actual start |
| actual_end | Datetime | Actual end |
| cost_per_unit | Currency | Cost per unit |
| currency | Link | Currency |
| notes | Small Text | Notes |
Purpose: Define types of special handling equipment.
| Field | Type | Description |
|---|---|---|
| equipment_type | Data | e.g. Crane, Forklift, Reefer Unit, Cold Chain Container, Hazmat Handler |
| description | Small Text | Description |
| in_house_available | Check | Whether company has in-house equipment |
Purpose: Link jobs from Transport, Warehousing, Air Freight, Sea Freight, and Customs to the project.
| Field | Type | Description |
|---|---|---|
| job_type | Select | Transport Job, Warehouse Job, Air Shipment, Sea Shipment, Declaration |
| job | Dynamic Link | Link to the job (options = job_type) |
| activity | Link | Special Project Activity (optional; links to activity) |
| sequence | Int | Sort order |
| planned_cost | Currency | Planned cost |
| actual_cost | Currency | Planned cost (read-only; calculated from job charges) |
| planned_revenue | Currency | Planned revenue |
| actual_revenue | Currency | Actual revenue (read-only; from Sales Invoice) |
| notes | Small Text | Notes |
Validation: job must be a valid document of type job_type.
Purpose: Define multiple delivery milestones and reports.
| Field | Type | Description |
|---|---|---|
| sequence | Int | Delivery sequence |
| delivery_date | Date | Delivery date |
| delivery_type | Select | Full, Partial, Milestone, Proof of Delivery |
| description | Small Text | Description |
| status | Select | Pending, Scheduled, Completed, Delayed |
| items_delivered | Long Text | Summary of items delivered |
| delivery_report | Attach | Attached delivery report |
| delivery_location | Link | Address or Location |
| proof_of_delivery | Link | Link to POD (if applicable) |
| notes | Small Text | Notes |
Purpose: Define multiple billing milestones or invoices.
| Field | Type | Description |
|---|---|---|
| sequence | Int | Billing sequence |
| bill_type | Select | Milestone, Interim, Final, Ad-hoc |
| milestone_description | Small Text | Description |
| planned_amount | Currency | Planned amount |
| currency | Link | Currency |
| status | Select | Pending, Invoiced, Paid |
| sales_invoice | Link | Sales Invoice (when created) |
| invoice_date | Date | Invoice date |
| notes | Small Text | Notes |
The Special Project can have:
- Special handling instructions (Long Text) — overall instructions
-
Products table — each product can have
special_handling,temperature_min/max,hazmat_class
Jobs (Transport Job, Warehouse Job, Air Shipment, Sea Shipment) already support or can be extended:
- Transport Job — temperature, load type, special instructions
- Warehouse Job — storage type, temperature, handling requirements
- Air Shipment / Sea Shipment — temperature, handling codes, special cargo
Special Projects should propagate special handling from project products to linked jobs when jobs are created or updated.
- Equipment Type — Crane, Forklift, Reefer Unit, Cold Chain, Hazmat Handler
- Equipment — in-house asset or outsourced supplier
- Planned vs actual usage (start/end dates)
| Component | Source | Description |
|---|---|---|
| Scoping costs | Special Project Scoping Activity | Ocular inspection, road inspection, technical consultations (only when charged_to_project = 1, i.e. after project is booked) |
| Resource costs | Special Project Resource | Personnel, equipment, third-party |
| Equipment costs | Special Project Equipment | Special handling equipment |
| Job costs | Special Project Job → job charges | Sum of charges from linked jobs |
| Other costs | Optional: Special Project Cost | Ad-hoc costs (e.g. permits, documentation) |
Total Project Cost = sum(scoping costs where charged) + sum(resource costs) + sum(equipment costs) + sum(job costs) + other costs
Scoping cost behaviour: During the Scoping phase, scoping costs are tracked but excluded from project costing. When the project is Booked, the action Charge Scoping Costs marks completed scoping activities as charged; their costs then flow into project costing.
Each linked job (Transport Job, Warehouse Job, Air Shipment, Sea Shipment, Declaration) has its own charges table. The Special Project Job child table holds:
- planned_cost — user-entered
- actual_cost — fetched from job charges (sum of cost amounts)
- planned_revenue — user-entered
- actual_revenue — from Sales Invoice linked to the job
Job Margin = actual_revenue - actual_cost
- Delivery sequence — 1, 2, 3, …
- Delivery type — Full, Partial, Milestone, Proof of Delivery
- Status — Pending, Scheduled, Completed, Delayed
- Attachments — delivery report, proof of delivery
- Transport Job — can have Proof of Delivery per leg
- Special Project Delivery — can link to POD if applicable
- Billing sequence — 1, 2, 3, …
- Bill type — Milestone, Interim, Final, Ad-hoc
- Planned amount — planned invoice amount
- Status — Pending, Invoiced, Paid
- Sales Invoice — link when invoice is created
- Action: Create Sales Invoice from Special Project Billing
- Filter: only billings with status = Pending
- Can create one Sales Invoice per billing row, or batch create from multiple rows
- Link to Sales Invoice via
sales_invoicefield - Update status to Invoiced
- When creating Sales Invoice from project billing, charges can be allocated from:
- Linked jobs’ charges
- Or manual entry
- Design choice: Billing row can specify which jobs/charges to include (e.g. “Job 1 + Job 2 + 50% of Job 3”) or use a simpler allocation (e.g. equal split, or proportional by job cost).
- Status — overall project status
- Progress — % activities completed, % jobs completed
- Cost vs budget — planned vs actual costs
- Revenue vs planned — planned vs actual revenue
- Delivery milestones — % delivered
- Billing milestones — % billed
- Activities overdue — planned_end < today and status != Completed
- Deliveries delayed — delivery status = Delayed
- Cost overrun — actual cost > planned cost
- Resource allocation — resources assigned but not allocated to activities
- Unfulfilled requests — requests with pending or partially fulfilled items
Draft → Scoping → Booked → Planning → Approved → In Progress → Completed
↓ ↓ ↓ ↓
Cancelled Cancelled On Hold On Hold
↓ ↓
Cancelled Cancelled
Scoping phase: Project is in pre-booking assessment. Ocular inspection, road inspection, and technical consultations are performed; costs are recorded but not charged to the project.
Booked: Project is confirmed. Charge Scoping Costs action marks scoping activities as charged; their costs flow into project costing and can be included in billing.
| Action | Description |
|---|---|
| Add Scoping Activity | Add ocular inspection, road inspection, or technical consultation; record cost |
| Charge Scoping Costs | When project is booked: mark all completed scoping activities as charged; costs flow into project costing |
| Create Request | Create Special Project Request (resources, products, equipment) linked to project |
| Link Project | Link existing ERPNext Project to Special Project (fallback when auto-creation is skipped or for migration) |
| Create Inbound/Release/Transport/Air/Sea Order from Request | Create logistics order/booking from product requests; sets project on order |
| Link Existing Order | Link existing order/booking to request and set project |
| Create Activity | Add activity to planning |
| Create Job from Activity | Create Transport Job, Warehouse Job, Air Shipment, Sea Shipment, or Declaration from activity and link to project |
| Link Existing Job | Link an existing job to the project |
| Create Delivery Report | Add delivery milestone |
| Create Billing Milestone | Add billing milestone |
| Create Sales Invoice | Create Sales Invoice from billing row; sets project on Sales Invoice for ERPNext integration |
| Refresh Costs | Recalculate actual costs from linked jobs |
| Refresh Revenue | Recalculate actual revenue from Sales Invoices |
The project (Link to Project) field is used for unified project visibility across logistics and ERPNext. It is not limited to orders/bookings; it applies to:
| Document Type | project (Link) | Notes |
|---|---|---|
| Orders & Bookings | Transport Order, Air Booking, Sea Booking, Inbound Order, Release Order, Transfer Order, VAS Order | Set when creating from Special Project Request |
| Jobs | Transport Job, Warehouse Job, Air Shipment, Sea Shipment, Declaration | Set when creating from Special Project Activity or linking |
| Sales Invoice | Sales Invoice | Already exists in ERPNext; set when creating from Special Project Billing |
When creating from Special Project, project is set from Special Project.project (the linked ERPNext Project).
Approach: When a Special Project is created, an ERPNext Project is automatically created and linked. Special Project adds logistics-specific features; ERPNext Project provides task management, costing, and billing.
| ERPNext Project | Special Project |
|---|---|
| Task management (Tasks, dependencies) | Scoping activities, logistics activities |
| Timesheets (time tracking) | Resource/equipment allocation |
| % completion (Task Completion, Task Weight, etc.) | Activity progress |
| Costing (Timesheet cost, Purchase Cost, Expense Claim, Consumed Material) | Job costs, scoping costs, resource costs |
| Billing (Sales Order, Sales Invoice) | Multiple delivery reports, multiple billings |
| Customer, Sales Order | Customer, Sales Quote |
Special Project.project = Link to ERPNext Project. Auto-created on insert: When a Special Project is inserted, the system automatically creates an ERPNext Project and sets project. The Project is populated with: project_name (from Special Project.project_name), customer, expected_start_date, expected_end_date, status (mapped from Special Project status).
- All logistics docs (orders, bookings, jobs) set
projectfrom Special Project.project - Sales Invoice created from Special Project Billing sets
project(ERPNext already supports this) - Project shows: Total Costing, Total Billed, Gross Margin, Tasks, Timesheets
Implementation: on_insert or after_insert hook on Special Project creates Project and updates Special Project.project.
- project (Link to Project) — set from Special Project when linked
- Special Project Job — when job is linked, Transport Job Charges feed into project costing
- project (Link to Project) — set from Special Project when linked
- Special Project Job — Warehouse Job Charges feed into project costing
- project (Link to Project) — set from Special Project when linked
- Special Project Job — Air/Sea Shipment Charges feed into project costing
- project (Link to Project) — set from Special Project when linked
- Special Project Job — Declaration charges feed into project costing
Product requests integrate with logistics orders/bookings. Each must have project (Link to Project) to reference the project:
| Document | project | Use Case |
|---|---|---|
| Transport Order | Link | Product request → Create Transport Order from Request |
| Air Booking | Link | Product request → Create Air Booking from Request |
| Sea Booking | Link | Product request → Create Sea Booking from Request |
| Inbound Order | Link | Product request → Create Inbound Order from Request |
| Release Order | Link | Product request → Create Release Order from Request |
| Transfer Order | Link | Product request → Create Transfer Order from Request |
| VAS Order | Link | Product request → Create VAS Order from Request |
When creating an order/booking from a product request, the system sets project on the created document (from Special Project.project). Link Existing Order sets project on an existing document.
- project (Link to Project) — already exists in ERPNext; no change required
- When creating Sales Invoice from Special Project Billing, set
projectfrom Special Project.project - Enables project-wise billing report, Total Billed Amount on Project
- Special Project (Link) — optional link from Special Project to Sales Quote
- Create-from Quote — optional: create Special Project from Sales Quote (with multi-modal lines)
Special Project
├── Special Project Scoping Activity (child) — Ocular Inspection, Road Inspection, Technical Consultation
├── Special Project Activity (child)
│ └── depends_on → Special Project Activity
├── Special Project Resource (child)
├── Special Project Product (child)
├── Special Project Equipment (child)
├── Special Project Job (child)
│ ├── job_type: Transport Job | Warehouse Job | Air Shipment | Sea Shipment | Declaration
│ └── job: Dynamic Link
│
├── Special Project Delivery (child)
└── Special Project Billing (child)
└── sales_invoice → Sales Invoice
Special Project (has project → Project)
└── project: Link to ERPNext Project (task management, costing, billing)
Special Project Request (standalone; special_project → Special Project)
├── Special Project Resource Request (child)
├── Special Project Product Request (child) — reference_doctype, reference_doc → orders/bookings
└── Special Project Equipment Request (child)
Documents with project (Link to Project):
Orders/Bookings: Transport Order, Air Booking, Sea Booking, Inbound Order, Release Order, Transfer Order, VAS Order
Jobs: Transport Job, Warehouse Job, Air Shipment, Sea Shipment, Declaration
Sales Invoice: (already has project in ERPNext)
Master Doctypes:
- Special Handling Type
- Special Handling Equipment Type
- Special Project (DocType)
- Special Project Scoping Activity (child) — ocular inspection, road inspection, technical consultations; charge on booking
- Special Project Request (DocType) — resources, products, equipment
- Special Project Resource Request, Product Request, Equipment Request (child tables)
- Add project (Link to Project) to Transport Order, Air Booking, Sea Booking, Inbound Order, Release Order, Transfer Order, VAS Order, Transport Job, Warehouse Job, Air Shipment, Sea Shipment, Declaration (Sales Invoice already has project)
- Create Order from Request actions (Inbound, Release, Transport, Air, Sea, Transfer)
- Special Project Activity (child)
- Special Project Resource (child)
- Special Project Product (child)
- Special Project Job (child)
- Special Project Delivery (child)
- Special Project Billing (child)
- Special Handling Type (master)
- Auto-create ERPNext Project on Special Project insert; propagate project when creating orders/jobs/invoices
- Project costing summary (roll-up from jobs)
- Special Project Equipment (child)
- Special Handling Equipment Type (master)
- Special handling propagation to jobs
- Equipment in-house vs outsourced tracking
- Activity dependencies
- Gantt or timeline view (optional)
- Project dashboard
- Alerts for overdue activities, cost overrun
- Create Sales Invoice from Billing (set project from Special Project.project)
- Multiple delivery reports
- Proof of Delivery integration
| Report | Description |
|---|---|
| Special Project Status | List of projects with status, progress, costs |
| Special Project Cost Summary | Project-level cost breakdown |
| Special Project Job Costing | Per-job cost and revenue for projects |
| Special Project Delivery Status | Delivery milestones and status |
| Special Project Billing Status | Billing milestones and status |
| Special Project Request Status | Requests by project, fulfillment status |
The Special Projects module provides:
- Project scoping — ocular inspection, road inspection, technical consultations; costs tracked during scoping and charged when project is booked
- Requests for resources, products, equipment — formal request workflow; product requests integrate with Transport Order, Air Booking, Sea Booking, Inbound Order, Release Order, Transfer Order, VAS Order (each with project reference)
- Project link — project (Link to Project) on orders, bookings, jobs, and Sales Invoice; ERPNext Projects integration — Special Project links to ERPNext Project for task management, costing, billing
- Rigorous planning via activities, milestones, dependencies, and resources
- Resource and equipment management (in-house and outsourced)
- Orchestration of jobs across Transport, Warehousing, Air Freight, Sea Freight, Customs
- Special handling for temperature, hazmat, oversized, fragile, etc.
- Equipment for special handling (cranes, forklifts, reefer units)
- Project costing and individual job costing
- Multiple delivery reports and milestones
- Multiple billings with Sales Invoice creation
- Monitoring via dashboard and alerts
The design aligns with existing logistics app patterns (child tables, Link to jobs, charges tables) and integrates with Transport Job, Warehouse Job, Air Shipment, Sea Shipment, and Declaration.
Getting Started
- Getting Started
- Recent Platform Updates
- CargoNext v1 — Release Notes
- CargoNext v1 — Astraea Press Release
- Document Management
- Milestone Tracking
- Customer Portal
Setup and Settings
- Logistics Settings
- Credit Management
- Default Details and Relationships
- Sea Freight Settings
- Air Freight Settings
- Transport Settings
- Warehouse Settings
- Customs Settings
Sea Freight
- Sea Freight Module
- Sea Booking
- Sea Shipment
- Sea Consolidation
- Master Bill
- Shipper
- Consignee
- Container Type
- Container Management
Air Freight
Transport
- Transport Module
- Transport Order
- Transport Job
- Transport Consolidation
- Transport Leg
- Transport Plan
- Run Sheet
- Proof of Delivery
- Transport Template
- Load Type
- Transport Order — Inter-module Field Copy
Customs
Warehousing
- Warehousing Module
- Inbound Order
- Release Order
- Transfer Order
- VAS Order
- Stocktake Order
- Warehouse Job
- Warehouse Contract
- Gate Pass
- Periodic Billing
- Storage Location
- Handling Unit Type
Pricing Center
- Sales Quote
- Sales Quote — Separate Billings and Internal Job
- Change Request
- Sales Quote – Calculation Method
Job Management
- Job Management Module
- Revenue Recognition Policy — Accounts, Dates, and Charges
- Proforma GL Entries
- WIP and Accrual Reversal on Invoicing
Sustainability
Intercompany
Special Projects
Pages
Features
Reports
Glossary