Invoice Policy Sale Order Line - Service

Invoice policy for services (Prepaid, Timesheet, Milestones, Manual)

(0 reviews)
Sales

$80.0

One-time payment
Community Enterprise

Invoice Policy Sale Order Line – Service

Granular line-level invoice policy control for Fixed Price, Timesheets, Milestones, and Manual billing.

App Overview

Introduction

This custom Odoo module enhances the native sales workflow by allowing users to define the Invoice Policy at the Sale Order Line level β€” specifically for Service products.

By default, Odoo sets the service invoicing policy globally on the Product template. This module provides granular, line-level control, empowering sales teams to mix different billing methods for services directly on each quotation or sales order line, ensuring maximum flexibility for complex service contracts.

Key Features

βš™

Line-Level Flexibility

Introduces a Service Invoice Policy dropdown (service_invoice_policy) directly on sale order lines, decoupling invoice logic from the global product setup.

πŸ”„

4 Comprehensive Service Workflows

Fully supports Prepaid/Fixed Price, Based on Timesheets, Based on Milestones, and Based on Delivered Quantity (Manual) β€” all configurable per line.

βœ†

Smart Auto-Population

When a service product is added to an order line, the policy is automatically inherited from the product template and pre-filled, preserving native Odoo behavior until changed.

πŸ‘

Intelligent UI Visibility

The Service Invoice Policy field is placed right before the Quantity column in the quotation view and intelligently auto-hides for physical goods, keeping the interface uncluttered.

πŸ”’

State Protection

The policy field locks and becomes strictly read-only once the quotation is confirmed into a Sales Order, protecting data integrity across connected projects and timesheets.

🏁

Automated Milestone Generation

When a line is set to Based on Milestones, the system automatically creates the required project.milestone (100% quantity) upon order confirmation and links it to the order line and tasks.

πŸ”—

Native Integration

Deeply integrates with sale_timesheet and sale_project to ensure accurate computation of qty_delivered, qty_to_invoice, invoice_status, and amount_to_invoice without breaking Odoo’s core logic.

Configuration Steps

No additional configuration is required after installation. The module is ready to use immediately on new quotations and sales orders.

1

Automatic Policy Assignment

When a Service product is added to a Sale Order Line, the Service Invoice Policy field is automatically populated from the product template. Users can manually override the policy on any line before order confirmation to accommodate project-specific billing requirements.

2

Data Integrity Protection

Once the Sales Order is confirmed, the Service Invoice Policy field becomes read-only. This prevents accidental changes that could affect related projects, tasks, milestones, timesheets, deliveries, and accounting records.

3

Milestone Automation

When a service line is configured with the Based on Milestones policy, the module automatically creates a project milestone during order confirmation if none exists and links it to the related project, task, and sales order line.

4

Native Timesheet Integration

Selecting Based on Timesheets automatically routes delivered quantity calculations through Odoo's native timesheet engine, ensuring invoicing remains synchronized with approved timesheet entries.

Frequently Asked Questions

Yes. You can have Line 1 invoiced as Prepaid, Line 2 based on Timesheets, and Line 3 tied to Milestones β€” all within the same Sales Order.

Yes. When a service line is configured with the Based on Milestones policy and the quotation is confirmed, the module checks for existing milestones. If none are found, a milestone is automatically created and linked to the related project, task, and sales order line.

The module automatically updates the underlying delivered quantity calculation method. When a line is set to Based on Timesheets, Odoo uses approved timesheet entries to calculate delivered quantities, matching the standard product-level behavior.

This module is designed exclusively for Service products. To keep the interface clean and avoid unnecessary options, the field remains hidden for Storable and Consumable products. A separate module is available for managing invoice policies on physical goods.

No. Once the Sales Order is confirmed, the Service Invoice Policy field becomes read-only. This ensures data integrity across related projects, tasks, milestones, timesheets, deliveries, and accounting records.

Technical Details

Dependencies

β€’ Sales (sale_management)
β€’ Discuss (mail)
β€’ Invoicing (account)
β€’ Project (project)
β€’ Employees (hr)


License

OPL-1

Need Assistance?

βœ‰

Email Support

contact@gritxi-tech.com

Any Questions?

Inquiry

Have questions about this app?

Fill out the form below and our team will get back to you with more information.

Customer Reviews

Share your experience with this module.

Write a Review
Latest Reviews

No reviews yet. Be the first to share your thoughts!