Discover powerful Dolibarr extensions designed to automate your business processes

Viticulture Management turns Dolibarr into a complete business solution for wine estates, vineyards, cooperative wineries and grower groups. It covers the whole grape production cycle, from land and plant material to the delivery of graded grape lots, including field operations, plant protection, ripening monitoring, harvest, traceability, cost accounting and reporting.
The module is built entirely on native Dolibarr architecture. No core file is modified. Third parties, products, stock, projects and documents remain those of your ERP, and vineyard data attaches to them.
· Replace the spreadsheets that scatter parcel, treatment and harvest records.
· Keep a phytosanitary register that stands up to a certification audit.
· Enforce the pre-harvest interval before a parcel is picked.
· Know the real cost of production per hectare, per vine, per kilogram and per hectolitre.
· Turn ripening measurements into a documented picking decision.
· Trace any grape lot back to the vine that produced it, and forward to the customer.
|
Role |
What the module gives them |
|
Estate director |
Consolidated dashboard, campaign economics, budget variance |
|
Vineyard manager |
Operation planning, pruning and canopy progress, team productivity |
|
Agronomist |
Soil and leaf analyses, phenology, ripening curves, harvest forecast |
|
Plant health officer |
Pest observations, treatment register, pre-harvest interval control |
|
Irrigation officer |
Water resources, sectors, water rounds, consumption and cost |
|
Quality manager |
Quality checks, certifications, audits, non-conformities, traceability |
|
Field worker |
Mobile field entry, QR code scanning, day tasks |
|
Management controller |
Analytical costs, margin per parcel and per grape variety |
Estates carry legal identity, linked third party, address, region, GPS position, altitude, total, planted and productive area, appellation, production mode, dominant soil, average rainfall and certifications. Sites split an estate into vineyard blocks, cellar, reception dock, workshop and nursery.
· Three distinct areas: total, planted and productive
· All yields are computed against the productive area
· GPS coordinates feed the vineyard map
Parcels carry forty-four agronomic attributes across four families: land (cadastre, area, GPS, altitude, slope, aspect), soil (type, depth, drainage, pH, salinity, organic matter, active limestone, water holding capacity), planting (variety, rootstock, clone, planting year, density, spacings, number of rows and vines) and management (training system, trellising, irrigation, target yield, appellation, status).
· Twelve parcel statuses, from preparation to grubbing up
· Missing vine count explains the gap between potential and actual yield
· Blocks, rows and individually tracked vines refine the hierarchy
The variety reference describes each cultivar through twenty-three attributes: type (wine, table, dried), berry colour, origin, precocity, budbreak, bloom, veraison and ripening periods, average yield, cluster weight, berry size, average sugar and acidity, disease susceptibility, drought tolerance, water requirement and recommended pruning.
· Phenological periods anchor the operation calendar
· Disease susceptibility drives the protection programme
· Fourteen varieties supplied in the demonstration dataset
Rootstocks document conferred vigour and tolerance to limestone, drought and salinity, plus variety affinity. Clones record nursery, characteristics, yield and quality level, vigour, year of introduction and certification.
· Rootstock choice starts from the active limestone content of the soil
· Plant lots carry the plant passport and the certificate number
· Plantings record the establishment rate
A campaign runs from the autumn pruning to the following vintage, not over the calendar year: any other split would cut a production cycle in half. It carries objectives, budget, area, target yield, forecast and actual production, planned and actual costs, revenue and margin.
· Eight statuses, from draft to closed
· All operations, treatments, water rounds and harvests attach to a campaign
· Closing a campaign freezes its economic result for year-on-year comparison
Thirty-two operation types cover the whole calendar, from soil preparation to staff training. Each operation carries its parcel, planned and actual dates, owner, team, subcontractor, equipment, duration, progress and planned versus actual cost.
· Status derives from the planned date: an overdue task raises an alert
· Actual cost feeds analytical accounting automatically
· Filters by parcel, team, type and status prepare a day of work
Pruning has a dedicated object because it is the first labour cost of an estate. Nine types are available: single and double Guyot, Royat cordon, bush vine, short and long pruning, mechanical pre-pruning, sanitary and formation pruning. Each operation records vines pruned, buds retained, team, duration, labour and total cost, hence cost per vine, plus cane tonnage and its use.
· Buds retained is the first lever on yield
· Cost per vine compares in-house teams and subcontractors
· Progress is followed as a percentage of parcels on the dashboard
Nine green operations: disbudding, suckering, shoot positioning, topping, leaf removal, cluster thinning, green harvest, lateral removal and tying. Each records its objective, so the decision is documented when the vintage is later analysed.
· Removed quantity is recorded to assess the effect on yield
· Leaf removal on the west side exposes to sunburn
· Green harvest is traced as a deliberate loss
Three levels: water resource (nine types, with capacity, flow, quality, salinity, annual quota and cost per cubic metre), irrigation sector (emitters, unit flow, nominal flow, pump power) and water round (planned versus actual volume, soil moisture before and after, energy, water and energy cost).
· The planned versus actual gap reveals leaks and blocked emitters
· Consumption per hectare and per hectolitre produced is available in reporting
· A sector left dry for too long raises an alert
Fertilization plans set nitrogen, phosphorus and potassium units per parcel and per campaign. Each actual application records product, supplier, batch number, recommended and applied dose, area, application method, operator, equipment and weather conditions.
· Nine fertilizer families, six application methods
· The recommended versus applied gap is followed in reporting
· Consumption per parcel feeds the cost per hectare
Twenty vine pests and diseases are documented, from downy and powdery mildew to esca, flavescence dorée, grape berry moth and abiotic disorders. Observations record severity, spread, percentage of vines affected, phenological stage, weather, GPS position, recommendation and urgency.
· Five observation statuses, from open to closed
· Intervention thresholds are documented on each pest record
· Parcels at risk can be coloured on the map
Each treatment records product, active substance, marketing authorisation number, supplier, batch, expiry date, target, dose per hectare, spray volume, area, method, equipment, operator, date, time, temperature, humidity, wind speed and cost, plus the re-entry interval in hours and the pre-harvest interval in days.
· The end of the pre-harvest interval is computed automatically
· A harvest planned too early is flagged as non compliant
· The register exports to CSV, Excel, Word and PDF
Twelve vine growth stages with their BBCH code, from winter dormancy to leaf fall, observed per parcel with the percentage of progress, temperature and observer.
· Comparing stage dates between campaigns measures how early or late a vintage is
· Stage and disease pressure together drive the protection decision
Daily records of minimum, maximum and mean temperature, humidity, rainfall, wind, radiation, reference evapotranspiration and soil moisture, plus three risk levels: frost, hail and disease.
· The record source is traced: manual, weather station, online service, sensor
· A high frost risk raises an immediate alert
· Ready to receive an external feed through the REST API
Each sampling measures two hundred berries: mean berry weight, degrees Brix, sugar, potential alcohol, total acidity, pH, malic and tartaric acid, phenolic ripeness, sanitary status, colour index and firmness.
· Weekly sampling from veraison to harvest builds the ripening curves
· The module flags parcels that reached the configured Brix threshold
· It never decides for the grower: sanitary status and tasting remain decisive
The forecast rests on a simple agronomic identity: productive vines, times clusters per vine, times mean cluster weight, less expected losses. Each term is stored separately, which makes the forecast auditable.
· A minimum and maximum estimate frames the figure
· A manual correction requires a documented reason
· The forecast versus actual chart measures forecasting quality year on year
Each harvest operation records parcel, variety, planned and actual date, start and end time, harvest mode, team or subcontractor, equipment, vines and rows, gross, net and lost quantity, quality grade, degrees Brix, grape temperature, containers, carrier, destination and costs split into labour, equipment and transport.
· Five harvest modes, including night harvest and successive picking
· Grape temperature at reception is a decisive quality criterion
· Every harvest generates an identified grape lot
The lot is the traceability unit. It carries a unique code, a QR code, its campaign, harvest, parcel, variety, quantities, quality grade, analytical parameters, sanitary status, pre-harvest interval end date, destination, storage location, customer, price per kilogram, value and certifications.
· Twelve lot statuses, from created to closed
· Available quantity updates as reservations and deliveries occur
· The QR code opens the traceability sheet directly
Quality checks apply at five stages: in the vineyard, at harvest, at reception, in storage and at shipping. Sample size, berry weight, Brix, acidity, pH, colour, firmness, berry size, homogeneity, rot, defects, foreign matter, temperature and residue compliance are recorded.
· Seven quality grades, from premium to waste
· Accepted and rejected quantities feed the acceptance rate
· A failed check can downgrade the lot and open a non-conformity
The traceability sheet walks the chain both ways: upstream from lot to harvest, parcel, estate, variety, rootstock and clone; through every operation, treatment, irrigation, fertilization, analysis and quality check of the campaign; and downstream to transfers, orders, deliveries and the end customer.
· A treatment whose pre-harvest interval overruns the picking date is flagged
· The sheet prints and exports to PDF with the lot QR code
· This is the document to present at a certification audit
Fourteen input families, from plants and fertilizers to trellis posts, wires, packaging, fuel, spare parts and personal protective equipment. Each input carries its alert threshold, batch number, expiry date, organic approval, pre-harvest and re-entry interval. Stock movements trace purchases, consumption, inventories, transfers, returns and disposals.
· Below-threshold stock and near-expiry batches raise alerts
· Consumption is attributable to a parcel and to an operation
· Integrates with the native Dolibarr stock module
Twenty-three families of vineyard machinery, from straddle tractor and grape harvester to trimmer, leaf remover, intra-row weeder and pre-pruner, with status, hour meter, odometer, fuel type, consumption and next maintenance date.
· Six equipment statuses, including breakdown and retired
· Fuel and energy consumption is imputable to parcels and operations
Preventive, corrective, regulatory, conditional, calibration and annual overhaul, with technician, supplier, duration, downtime, failure description, diagnosis, parts, costs and next due date.
· Overdue maintenance raises an alert
· Downtime feeds equipment availability reporting
Workers across sixteen roles and six contract types, teams, and timesheets recording hours, overtime, quantity done, productivity, hourly rate and labour cost.
· Productivity compares in-house teams with subcontractors
· Labour cost flows into the analytical cost of each operation
· Field entry lets workers record their own time on site
Twenty-three cost families, from plant material to overheads, imputed to a campaign, a parcel and optionally a block and an operation. Four unit costs are computed: per hectare, per vine, per kilogram and per hectolitre.
· Cost per hectolitre compares directly with the selling price
· Budgets are tracked per campaign and per family, with committed and actual amounts
· An exceeded budget raises an alert
Customers link to Dolibarr third parties and state required quality grade, expected certifications, payment terms and incoterm. Contracts cover eight types including grape sale, cooperative delivery, farm lease and sharecropping. Orders and deliveries attach lots to customers.
· Contracted versus delivered volume is compared continuously
· Native Dolibarr commercial objects remain usable in parallel
Twelve certification schemes including organic farming, High Environmental Value, GlobalG.A.P., Terra Vitis, protected designation and geographical indication, with audits, findings, non-conformities and corrective action plans.
· Certificates approaching expiry raise an alert
· Non-conformities follow a seven-step workflow to closure
Twenty detection rules recomputed by a daily scheduled job: overdue pruning, treatment or irrigation, weather risk, plant health risk, critical disease, low stock, expiring input, pre-harvest interval breach, harvest due, parcel ready to pick, maintenance due, certificate expiry, non-compliant analysis, budget overrun, yield below forecast, open task, rejected lot, unavailable equipment and contract due.
· Four criticality levels, with counters by type
· The daily job is idempotent: it never duplicates an alert
· An alert set to ignored is not resurrected
A dedicated command centre with a status banner, seven indicator zones, the twelve-stage production cycle, the alert panel and ten charts.
· Harvest indicators are computed on the last closed vintage and labelled as such
· Every monetary indicator is rounded; every rate is formatted to the locale
· Monthly charts cover twelve months, not just the current one
Vineyard map locating estates, parcels and water resources, with dynamic colouring by variety, status, yield, plant health, ripeness, risk, production mode or area.
· Legend follows the active colouring
· Clicking a parcel opens a summary card
· No external map service is contacted
A responsive page designed for a phone at the vineyard: QR code scanning, day tasks, and five short forms for timesheet, plant health observation, phenological stage, ripening check and irrigation.
· Each form appears only if the user holds the matching write permission
· Every submission is protected by a security token
Nineteen reports covering land, plant material, campaigns, field operations, pruning, plant health, irrigation, fertilization, weather and phenology, ripening, harvest, lots, workforce, equipment, stock, sales, profitability, budgets and quality.
· Filters by campaign, estate, parcel, variety, period and status
· Four export formats: CSV, Excel, Word and PDF
· Accents are preserved in every export format
The module ships in French, English, Spanish, Italian and German, with 1 757 translated keys. No visible text is hard coded in PHP or JavaScript. Every key is module-prefixed and re-asserted at runtime, so wording from another installed module can never overwrite the vineyard vocabulary.
A single click installs a complete fictitious wine estate: two estates, ten parcels, one hundred and twenty rows, two hundred and forty individually tracked vines, fourteen varieties, eight rootstocks, ten clones, two campaigns, and the whole set of operations, treatments, ripening checks, harvests, lots, costs and alerts. A second click removes it, touching only the rows technically marked as demonstration data.
· Ten granular permission groups, thirty-three rights, least privilege enforceable in practice.
· CSRF tokens on every write action; delete and administration rights off by default.
· All input escaped; no SQL built from unfiltered user input; sort fields whitelisted.
· Multi-entity aware: every query is scoped to the current entity.
· No hard-coded key, no plain-text password, no request to any external service.
Authenticated REST endpoints expose estates, parcels, blocks, rows, vines, varieties, campaigns, operations, plant health observations, treatments, ripening checks, harvests, lots, indicators, alerts and traceability. Authentication and permissions follow the native Dolibarr API model.
|
Native module |
Integration |
|
Third parties |
Estates, suppliers, carriers and customers link to Dolibarr companies |
|
Products |
Inputs link to product records; grape lots can be turned into products |
|
Stock |
Input stock and movements complement the native warehouse module |
|
Projects |
Campaigns and operations can be attached to a project |
|
Documents |
Titles, plans, analyses, certificates and reports use the native DMS |
|
Contracts, orders, invoices |
Grape sales flow into the native commercial chain |
|
Scheduled jobs |
Daily alert computation runs through the native cron |
|
REST API |
Module endpoints published through the native API module |
Deploy module_viticulture-1.0.zip from Setup, Modules, Deploy external module, or copy the viticulture folder into htdocs/custom. Enable the module under Agriculture and Production. Activation creates fifty-four tables and their indexes, thirty-three permissions, eighty menu entries, the configuration constants and the demonstration dataset, without a single PHP or SQL error.
|
File |
Content |
|
module_viticulture-1.0.zip |
The installable module |
|
Manuel_Formation_..._FR.pdf |
Illustrated French training manual |
|
Viticulture_Management_..._EN.docx |
This document |
|
Screenshots/ |
High resolution screenshots of every screen |
|
README_FR.md / README_EN.md |
Presentation and quick start |
|
INSTALL.md |
Installation, update, uninstallation, troubleshooting |
|
DATABASE_SCHEMA.md |
Fifty-four tables, relations and controlled vocabularies |
|
API_DOCUMENTATION.md |
REST endpoints, authentication and examples |
|
PERIMETRE_V1_V2.md |
Delivered scope and roadmap |
|
KNOWN_LIMITATIONS.md |
Known limits and workarounds |
|
TEST_REPORT.md |
Tests performed and measured results |
|
CHANGELOG.md |
Version history |
|
LICENSE.txt |
GNU General Public License v3 |
Viticulture Management is a management and decision-support tool. It replaces neither agronomic diagnosis, nor the prescription of a plant protection treatment, nor oenological advice. The thresholds, doses and risk periods contained in the demonstration dataset are fictitious and illustrative; they are not a technical recommendation. Compliance with plant protection regulations, including marketing authorisations, pre-harvest and re-entry intervals and register keeping, remains the responsibility of the grower.
Module developed by DoliResources — www.doliresources.com