Module Ultimateline EN

From Dolibarr ERP CRM Wiki
Jump to navigation Jump to search

Summary

Information

Module name UltimateLine
Editor / Editeur Logo atoonet.jpg
Download or buy page / Page achat ou téléchargement External module - www.dolistore.com
Status / Statut / Estado Stable
Prerequisites / Prérequis Dolibarr 25.0, PHP 8.2

Dolibarr min version: See on Dolistore    Dolibarr max version: See on Dolistore

Last update date / Date mise à jour fiche / Fecha última actualización 2026-10-3
Note / Nota ⬆ Back to summary

Features

UltimateLine automatically adds a final line (eco-contribution, extended warranty, fixed fees, discount...) right under a product or service line, in proposals, orders and invoices. The final line is a service of the catalogue, calculated as a percentage of the parent line amount or as a fixed amount per unit. A single product can trigger several final lines.

Example: an "Extended warranty" service at 5% and a "WEEE eco-contribution" service at €3.50 per unit, linked to a window sold 2 × €389.00, add under the window a line of €38.90 and a line of €7.00.

Behavior in documents

  • The final line is inserted automatically right under its parent product line, with a quantity of 1 and the VAT rate of the service.
  • It is recalculated when the quantity or the price of the parent line changes, and deleted with it.
  • In the interface, the final line is indented and visually grouped with its parent line.
  • In the PDF of the UltimatePDF models, the final line is printed with a "└" icon that shows it belongs to the parent line, and one Including [service name]: [amount excl. tax] line per service is added under the Total excl. tax.
  • With the Dolibarr standard models (cyan, eratosthene, sponge...), an Including: box under the totals shows the total of each final line service, in the language of the document.

Compatibility with the Milestone module

UltimateLine is compatible with the Milestone module, which organizes document lines into milestones. When a product line belongs to a milestone:

  • in the interface, the final line is displayed inside the milestone block, right after its parent product line, before the milestone subtotal;
  • the amount of the final line is included in the milestone subtotal;
  • in the PDF, the final line keeps the "└" icon (not the milestone child icon);
  • the proposal → order, proposal → invoice and order → invoice conversions keep the link between the final line and its parent product line.

Prerequisites

  • Dolibarr 25.x;
  • PHP 8.2 or later (tested up to PHP 8.5);
  • Services and Invoices modules, enabled automatically with UltimateLine.

For Dolibarr 18 to 24, use version 24.0 of the module.

⬆ Back to summary

⚙️ Installation procedure

⚙️ Installation from the interface

  1. Go to Home → Setup → Modules/Applications, tab Deploy/install external app/module.
  2. Choose the file module_ultimateline-25.0.0.zip and click Upload file.

⚙️ Manual installation

  1. Download the module archive file (.zip).
  2. Unzip the file: unzip module_ultimateline-25.0.0.zip -d /tmp/ultimateline_zip
  3. Copy the module folder: cp -r /tmp/ultimateline_zip/htdocs/ultimateline /path/to/dolibarr/htdocs/custom/
  4. Check that the module is located in htdocs/custom/ultimateline.
  5. The module is now available and can be enabled from Dolibarr.

Upgrade from a previous version: replace the ultimateline folder, then disable and enable the module again. Final line services and their associations are kept.

⬆ Back to summary

Configuration

Logged in with an administrator account, go to Home → Setup → Modules/Applications. The module is listed in the AtooNet family: click the activation button, then the cogwheel at the end of the line to open the module setup page.

First create, in the Products/Services module, the service(s) that will be used as final lines (for example "WEEE eco-contribution"). Their VAT rate is used on the final lines.

The setup page has four tabs: Final line services setup, User guide, About and Changelog.

Getting started guide

"Welcome to UltimateLine!" getting started guide

On first opening, the Welcome to UltimateLine! window presents the three setup steps (create a final line service, associate products to the service, read the user guide) and ticks those already done. The Do not show this guide again link hides it for good.

Define a service as a final line

Final line services setup tab

In the Define a service as a final line block:

  1. Select a service to use as a final line service: choose one of the services created before.
  2. Associated with products/services as: choose the calculation type:
    • Rate on the price (in percentage): the final line is a percentage of the amount excl. tax of the parent line;
    • Fixed amount added to the price: the final line is this amount multiplied by the quantity of the parent line.
  3. Value to apply: enter the percentage or the amount.
  4. Click Assign.

Associate products to the service

Final line service setup and linked products

In the Selection of a final line service block, choose the service in Select a final line service and click Display.

The Final line service setup panel shows the reference, the Service label, the Service type and the Service value, then two lists:

  • Linked products (left): the products and services that already trigger this final line;
  • Available products (right): the products and services that can be added.

Select products in a list (or use Select all / Deselect all), move them with the ← and → arrows, then click Apply to save.

Under the lists, Delete selected associations only removes the ticked products from the linked products list.

Delete a final line service

Confirmation of the deletion of a final line service

The Delete service button opens a Dolibarr confirmation box. Once confirmed, the final line service and all its product associations are deleted; the service itself remains in the catalogue.

To watch an online training on YouTube: https://www.youtube.com/watch?v=OBwRoyuBrPk

⬆ Back to summary

Usage

Final lines added under each product of a proposal
  • When a product line is added or modified, the matching final lines are created or recalculated automatically.
  • When a product line is deleted, its final lines are deleted with it.
  • Free lines (without a catalogue product) do not trigger any final line.
  • Conversions: when a proposal is converted into an order, a proposal into an invoice or an order into an invoice, the lines are copied as they are and stay linked to their product line, without being added a second time.
  • With the Milestone module: final lines stay inside their milestone block after conversion, and their amount is included in the milestone subtotal.
PDF (ultimate_propal model): final lines and "Including" lines under the Total excl. tax

⬆ Back to summary

What's new in version 25.0.0

Compatibility

  • Requires Dolibarr 25 and PHP 8.2, tested up to PHP 8.5. The update check reads versionmodules/ultimateline/v25/ultimateline.txt.

Fixes

  • The Including: box under the totals of the standard PDF models was no longer printed: it finds the final lines again, groups them by service, uses the language and currency of the document and is no longer printed twice with the UltimatePDF and UltimatePDFLight models.
  • Deleting a service asks for confirmation in a Dolibarr dialog box, protected by a security token.
  • Setup page: browser tab title, module stylesheet, "Service ref." label and search text of the product lists translated.

Translations and documentation

  • Interface, user guide and wiki page in French, English, German, Spanish and Italian, with new screenshots.
  • Embedded Markdown library removed: Dolibarr itself displays the guide and the changelog.
  • Automated tests (PHPUnit, PHPStan) and lighter DoliStore package.

Previous versions

  • 24.0.1 (not published, included in 25.0.0): CSRF token on the admin forms, User guide and Changelog tabs.
  • 24.0.0: version compatible with Dolibarr 24.
  • Versions 18 to 23: see the ChangeLog.md file shipped with the module.

FAQ

No final line is added

Check that the product is in the Linked products of the final line service, and that the line uses a catalogue product: free lines are ignored.

The amount of the final line looks wrong

Check the calculation type (percentage or fixed amount) and the value shown in the Final line service setup panel. A fixed amount is multiplied by the quantity of the parent line.

The associations are not saved

Click Apply after moving products from one list to the other.

Are the "Including" amounts shown twice on the PDF?

No. The UltimatePDF and UltimatePDFLight models print their own "Including ..." lines under the Total excl. tax; the UltimateLine Including: box is only added with the Dolibarr standard models.

Does the module change the Dolibarr core?

No. UltimateLine works with triggers and hooks, without modifying the Dolibarr files.

Other languages