Discover powerful Dolibarr extensions designed to automate your business processes

Orchard Management turns Dolibarr into a complete business solution for fruit-growing operations. It allows a farm, a fruit estate, a cooperative, an agricultural company or a producer group to run every activity — from land registry and orchard agronomy through to invoicing and profitability analysis — without depending on a second management system.
The module manages citrus, olive, apple, pear, peach, nectarine, apricot, plum, cherry, almond, walnut, pistachio, avocado, mango, pomegranate, fig, date and banana orchards, plus any further species the user configures.
Scope of the tool
Orchard Management is a management and decision-support tool. It replaces neither agronomic diagnosis, nor the opinion of an agronomist, nor the prescription of a plant protection treatment, nor the official product-use instructions, nor laboratory analyses, nor regulatory and sanitary decisions. Sensitive technical decisions remain the responsibility of qualified professionals.
|
Item |
Value |
|
Business objects |
59 fully managed object types |
|
Database tables |
59 tables, all entity-scoped and indexed |
|
Permissions |
33 granular rights across 10 business domains |
|
Menu entries |
86 entries in a two-level tree |
|
Languages |
French, English, Spanish, Italian, German (1426 keys each) |
|
Controlled vocabularies |
86 domains, 636 translated codes |
|
Reports |
17 cross-object reports with CSV, Excel and PDF export |
|
REST API routes |
9 route families including CRUD, dashboard and traceability |
|
Demonstration dataset |
About 5100 rows across all 59 tables |
· Master the land base — know every farm, site, parcel, block, orchard, row and tree, with area, soil, exposure, altitude, irrigation system and GPS position.
· Run the agricultural campaign — plan, budget, execute and close a full production cycle, tracking phenological stages from dormancy to leaf fall.
· Control the technical itinerary — record every operation — pruning, thinning, weeding, trellising, pollination — with its team, equipment, duration and cost.
· Secure plant health — log observations, treatments and pre-harvest intervals, and prevent a lot from being harvested before its interval has elapsed.
· Optimise water and inputs — measure consumption and cost per orchard, per hectare and per campaign.
· Forecast and measure the harvest — compare revisable forecasts against actual yields per tree, per hectare, per orchard and per variety.
· Guarantee traceability — reconstruct the full chain in both directions, from the plant supplier to the invoiced customer.
· Know the real cost — consolidate every cost family down to a cost price per kilogram and a margin per orchard.
· Sustain certification — manage schemes, audits, non-conformities, corrective actions and customer complaints.
|
Domain |
Coverage |
|
Land |
Farms, sites, parcels, blocks, interactive mapping |
|
Orchards |
Orchards, rows, individual trees, QR identification |
|
Plant material |
Species, varieties, rootstocks, pollinizers |
|
Planting |
Projects, plant lots, plantings, establishment checks, replacements |
|
Campaigns |
Agricultural campaigns, seasons, phenological observations |
|
Crop operations |
Farm tasks, pruning, thinning, hives and pollination |
|
Workforce |
Workers, teams, timesheets, mobile field entry |
|
Irrigation |
Water sources, sectors, programs, irrigation events, consumption |
|
Fertilization |
Plans, applications, fertigation, soil/water/leaf analyses |
|
Plant health |
Pests, observations, treatments, traps, biological control |
|
Inputs |
Input catalogue, stock movements, lots, expiry, thresholds |
|
Equipment |
Machines, maintenance, breakdowns, fuel and energy |
|
Harvest |
Forecasts, harvests, harvest lots, yields, losses |
|
Packing |
Ten-stage packing workflow, cold rooms, packaging, labelling |
|
Sales |
Customers, contracts, orders, stock reservations, deliveries |
|
Quality |
Quality checks, certifications, audits, non-conformities, complaints |
|
Costing |
Cost entries by family and nature, margins, profitability |
Permissions follow the principle of least privilege. Ten business domains each carry read, write and delete rights, complemented by reporting, demonstration data management and administration — 33 permissions in total. Read and write are granted by default so the module is usable immediately; delete, demo management and administration are off by default.
|
Permission domain |
Typical roles |
|
land |
Farm director, agronomist, crop manager, site manager |
|
crop |
Crop manager, team leader, agronomist |
|
water |
Irrigation technician, fertilization manager |
|
health |
Plant protection technician, agronomist |
|
hr |
Team leader, HR officer, site manager |
|
asset |
Mechanic, maintenance manager, store keeper |
|
harvest |
Harvest manager, packing manager, cold room manager |
|
sales |
Sales manager, billing officer |
|
quality |
Quality manager, auditor |
|
cost |
Management, accountant |
|
report |
Management, auditor, read-only user |
|
admin |
Administrator |
The Orchard Operations and Fruit Production Command Center is the module home page. Its palette follows the trade: leaf and deep green, earth brown, irrigation blue, bloom yellow, harvest orange, alert red, analytics violet and environmental turquoise.
A ten-step strip follows the fruit from planting to sale: Planting, Growth, Pruning, Bloom, Fruit set, Sizing, Ripening, Harvest, Packing, Sale. Each step shows its live figure.
Every orchard is drawn as a plot whose width follows its share of the area and whose colour follows its species group. Young and declining orchards are dimmed, so the map carries state as well as geometry. Every plot links to its orchard card, and the legend lists only the groups actually present.
About fifty tiles across seven zones: land and orchards, crop operations, water and fertilization, plant protection, harvest and packing, commercialization, costs and profitability.
Economic indicators are measured over the running agricultural campaign, not the civil year. A campaign runs from autumn to autumn, so a calendar window would cut a single production cycle in half and report a heavy loss every spring. The same window is shared with the REST API so the two surfaces can never disagree.
Twelve operational alert tiles link straight to the underlying records, and twelve charts cover monthly harvest, water consumption, operations, treatments, labour hours, revenue, area by species, quality mix, yield by orchard, costs by category, losses by reason and observed phenological stages.
A farm record carries its reference, name, legal name, address, GPS position, total and planted area, farm type, production mode, manager, water sources, cold rooms, certifications and notes, and links to a Dolibarr third party. Sites classify the physical locations: production, packing station, storage, nursery, workshop and offices.
A parcel carries its cadastral code, area, GPS position, geographic shape, soil type and depth, slope, exposure, altitude, water source, irrigation system, cropping history and status. Statuses: available, being prepared, planted, productive, being renewed, fallow, unavailable, archived. A dedicated mapping page lists every parcel with its coordinates.
An orchard links a parcel to a species, a main variety, a rootstock and a pollinizer variety. It records the planting year, area, tree count, density, row and tree spacing, training system, irrigation system, production mode, year of entry into production, target yield, manager and status. The status is derived from the planting year, so a three-year-old orchard can never be reported as full bearing.
Management runs at six levels: farm, parcel, orchard, block, row, tree. Individual tree management is a configuration switch, so very large operations can work by row or by block instead. A tree record carries its code and QR code, orchard, row, position, species, variety, rootstock, planting date, source plant lot, recorded vigour and productivity, last yield and status: planted, growing, productive, weak, diseased, damaged, dead, grubbed up, replaced.
Three configurable reference tables. Species carry the latin name, botanical family, group, cycle, bloom and harvest periods, reference yield, juvenile period and whether a pollinizer is needed. Varieties carry origin, maturity class, mean fruit weight, self-fertility, pollinizer flag and commercial use. Rootstocks carry vigour class, soil, drought and limestone tolerance and recommended density.
A planting project moves through draft, study, validated, ground preparation, planting, establishment check and finished. Plant lots record the supplier, species, variety, rootstock, reception date, quantities received, used and lost, plant age, plant passport number, declared sanitary grade and unit cost.
A planting records the project, orchard, plant lot, date, planned and actual tree count, density, team, equipment, work hours, cost and losses. Establishment checks record trees checked, established, weak and dead, the resulting establishment rate and the number to replace. Both sides of the rate describe the same inspected population.
Replacement, grubbing up, top grafting and stand thinning, each with its reason (mortality, disease, pest, frost, weather, insufficient yield, ageing, variety change, mechanical damage), tree count, new plant lot, residue destination and cost.
A campaign carries its season year, start and end dates, target, forecast and actual volumes, budget, actual cost, revenue, manager and status: draft, planned, validated, running, suspended, finished, closed, cancelled.
Eleven configurable stages: dormancy, bud break, leaf development, flower buds, bloom, petal fall, fruit set, fruit growth, ripening, harvest, leaf fall. Each observation records the orchard, campaign, variety, date, stage, estimated percentage, BBCH code, observer and comment.
Nineteen configurable operation types covering soil preparation, planting, pruning, thinning, weeding, tillage, mulching, row maintenance, trellising, staking, irrigation repair, fertilization, treatment, trap setting, pollination, harvest, cleaning and residue shredding. Each operation records its campaign, orchard, parcel, planned and actual dates, team, equipment, area, tree count, duration, labour and input cost, and status: planned, assigned, in progress, done, late, cancelled.
Formative, fruiting, renewal, sanitary, sucker removal, topping and mechanical pruning, with the tool used (hand, electric, pneumatic shears, chainsaw, pole saw, platform, mechanical bar), trees and rows treated, duration, wood removed and residue destination.
Manual fruit, manual flower, mechanical, chemical and mixed thinning, with the target fruit count per tree and the share of fruit removed.
Hive placements record the beekeeper, hive count, installation and removal dates, location, hive strength, contract reference and cost. The module records and costs the placement; it issues no mandatory agronomic recommendation.
Permanent staff, seasonal and daily workers, contractors and apprentices, with job role, skills, hire date, hourly rate, team and status. Teams carry their type, leader, member count, hourly cost and speciality.
A mobile-first page lets a supervisor pick the worker, orchard and task, then record duration, trees done and quantity achieved. The labour cost is computed from the worker's own hourly rate, falling back to the farm average, and the team is inherited from the worker so workforce reporting groups correctly.
Water sources cover wells, boreholes, basins, canals, river intakes, collective networks, rainwater harvesting and recycled water, each with capacity, flow, depth, quality, cost per cubic metre, annual quota and consumption. Sectors describe the delivery system, emitter count and flow, nominal flow and pump power. Programs plan frequency, duration and dose per phenological stage. Each irrigation event records volume, energy, operator, water and energy cost and any incident.
Volume and cost are tracked by farm, parcel, orchard, source and campaign, with incidents and declared losses, and charted month by month over a rolling year.
Fertilization plans set the product, method, planned quantity, number of applications, window and cost. Applications record the product and lot, date, method, area, tree count, quantity, dose per hectare, operator, equipment and cost. Six methods are supported, including fertigation and foliar application.
Analyses record the type, parcel, orchard, sampling and result dates, laboratory, sample reference, pH, organic matter, nitrogen, phosphorus, potassium, calcium, conductivity, the laboratory comment and a separate agronomist note. The module stores and presents results; it never interprets them automatically.
A pest reference table covers insects, mites, fungal, bacterial and viral diseases, nematodes, weeds, rodents and physiological disorders, with latin name, target species, symptoms, risk period, severity class and known beneficial. Observations record the organism, date, observer, recorded intensity, share of trees affected, number checked, zone, proposed action and status. The recorded intensity and the affected share are consistent with each other.
A treatment records the orchard, campaign, product and lot, target pest, date and time, treatment family, declared active substance, dose, spray volume, area, tree count, operator, equipment, recorded temperature and wind speed, pre-harvest interval and its computed end date, cost and status. The module displays the configured information and alerts; it never prescribes a treatment automatically.
Traps record their type, location, installation date, last check, last and cumulative catches, action threshold and status; a trap that has reached its threshold is flagged on the dashboard. Biological control operations record the method — beneficial release, mating disruption, mass trapping, biopesticide, habitat management, manual removal, protective netting — with the beneficial used, quantity released, area, recorded efficacy and cost.
Each treatment carries its interval in days and the resulting end date. Running intervals are counted on the dashboard, listed in the alert centre and shown on the lot in the traceability chain. A configuration switch blocks harvesting administratively while the interval is running. This is an administrative control only: the agronomic decision remains the responsibility of a qualified professional.
Thirteen input families: plants and rootstocks, fertilizers, amendments, plant protection products, biocontrol products, beneficials, traps, stakes and ties, mulch, packaging, consumables, fuel and spare parts. Each input records its supplier, declared active substance, approval number, unit, price, stock, minimum stock, location, default pre-harvest interval and organic approval, and links to a Dolibarr product.
Stock movements cover purchase receipts, consumption, inventory adjustments, warehouse transfers, supplier returns and scrapping, with lot number, expiry date, supplier, orchard, unit price, total value and location. Inputs below their minimum stock and lots approaching expiry raise dashboard alerts.
Suppliers of plants, fertilizers, plant protection products, equipment, packaging, spare parts, analyses and transport are managed as Dolibarr third parties, so the native price requests, purchase orders, receptions, supplier invoices and payments apply unchanged.
Fifteen equipment families from tractors and sprayers to graders, packing lines, refrigeration units and forklifts. Each record carries brand, model, serial number, commissioning date, hour meter, odometer, fuel type, purchase cost, failure count, downtime, next maintenance date and status.
Preventive, corrective, overhaul, calibration, regulatory inspection and breakdown repair, each with planned and actual dates, provider, technician, parts and labour cost, downtime and hour meter. Maintenance due within fifteen days raises an alert.
Fuel and energy entries cover diesel, off-road diesel, petrol, electricity, gas, solar and lubricants, with quantity, unit price, total, supplier, hour meter, odometer and operator.
A forecast records the campaign, orchard, species, variety, date, revision number, productive tree count, estimated yield per tree, forecast quantity, planned window, expected grade and size, destination and manager. Several successive revisions are kept, and the reporting compares forecast against actual.
A harvest records the campaign, farm, orchard, species, variety, date, team, gross, net and lost quantities, container count and type, duration, recorded maturity index, quality grade, size, yield per tree, destination and costs.
Yields are computed per tree, per hectare, per orchard, per variety, per campaign and per team, and compared against the forecast to expose the gap.
Each lot carries a unique code, its harvest, campaign, orchard, species, variety, date, total, available and reserved quantities, quality grade, size, the pre-harvest interval check, cold room, storage date, customer and status. The status follows the elapsed time, so an old lot is never still 'just created'.
Losses are recorded by stage — orchard, harvest, transport, storage, packing, delivery — and by reason, with quantity, value and destination. The recorded reason is always compatible with the stage it occurred at.
A ten-stage workflow: reception, incoming control, sorting, washing, grading, packing, labelling, palletizing, cold storage entry and shipping. Each operation records the source lot, incoming, conforming and rejected quantities, size, grade, packaging, package and pallet counts, team, duration and cost.
Cold rooms cover normal cold, controlled and dynamic atmosphere, pre-cooling, ripening and ambient storage, with capacity, used capacity, target and last temperature, target humidity, cell count, daily energy cost and status. Rooms approaching saturation raise an alert. Equipment state and measurement conformity are shown on separate visual channels, so a perfectly compliant temperature is never coloured as an alert merely because its room is under maintenance.
Quality checks record the lot, stage, sample size, mean weight, size, firmness, Brix, acidity, colour index, defect share, resulting grade, conformity and controller. Six commercial grades are available, from Extra class to reject. No automatic unvalidated interpretation is performed.
Ten packaging types across six materials, with net weight, units per pallet, supplier, unit price, stock and recyclability. Five label models — tree, row, trap, harvest lot and pallet — are produced on screen and as a printable three-column PDF sheet with barcodes, carrying product, species, variety, grade, size, weight, lot, harvest and packing dates, farm and origin.
The traceability page reconstructs the full chain: plant supplier, plant lot, farm, parcel, orchard, campaign, related operations (tasks, irrigation, fertilization, treatments with their pre-harvest intervals, quality checks, packing), then harvest lot, cold room, reservation, delivery, customer and order. The same chain is available through the REST API.
Eleven customer types from wholesaler and purchasing centre to exporter, processor, cooperative, restaurant, hotel and public catering, each with market channel, required certifications and grade, payment terms and annual volume. Campaign contracts fix the species, variety, window, volume, price per kilogram, grade, size and incoterm, and track the volume delivered.
Orders carry the customer, contract, campaign, dates, species, variety, grade, size, packaging, quantity, price and amount, and link to the native Dolibarr order. Reservations hold a specific lot for an order and prevent over-reservation. Deliveries record the lot, quantity, packages and pallets, carrier, vehicle, transport temperature, destination, transport cost and status.
Billing runs through the native Dolibarr chain: quotations, sales orders, shipments, customer invoices, payments, banks, cash and accounting. Billing per order, per delivery, grouped, per contract or on actual weight is therefore supported natively, together with down payments, partial payments, credit notes and unpaid follow-up.
Twenty-three cost families covering plant material, ground preparation, planting, irrigation and water, energy, fertilization, plant protection, labour, pruning, thinning, pollination, equipment and depreciation, fuel, maintenance, harvest, internal transport, cold storage, packing, packaging, losses, customer freight, certification and overheads. Each entry carries its nature: direct, indirect, fixed, variable, investment or depreciation.
Revenue, total cost, gross margin, margin rate, cost price per kilogram, revenue and margin per orchard and per hectare. Revenue is attributed to an orchard through the physical chain delivery → lot → orchard, so no order is ever counted more than once.
Ten schemes: organic farming, GlobalG.A.P., GRASP, HACCP, IFS Food, BRCGS, designation of origin, geographical indication, high environmental value and internal standards. Each certification records the body, scope, obtention and expiry dates, certificate number, annual cost, finding count and status; expiring certifications raise an alert with a configurable notice period.
Audits record the type, date, auditor, scope, score, major and minor findings and result. Non-conformities follow a six-stage workflow from open to closed, with process, severity, description, immediate action, root cause, corrective action, owner, due date and closing date. Customer complaints record the reason, quantity, claim and credit amounts, analysis, answer, owner and status.
Seventeen reports — orchards, tree population, farm operations, irrigation, fertilization, plant health, workforce, equipment, harvest, forecast versus actual, losses, packing, sales, costs, profitability, quality and inventory — each with a period filter, summary tiles, a chart, a totalled table and CSV, Excel and PDF export.
The reporting set supports harvest forecasting, yield evolution, orchard and variety performance, performance by age, labour requirements, water consumption, input requirements, shortage and expiry risk, disease frequency, treatment cost, losses, team performance, sales seasonality, profitability by orchard, species and variety, renewal needs and maintenance needs. These analyses remain decision support.
Twelve operational alerts: late operations, running pre-harvest intervals, open plant health observations, traps at action threshold, inputs below minimum stock, input lots close to expiry, equipment out of service, maintenance due, cold rooms close to full, expiring certifications, open non-conformities and late deliveries. They are surfaced on the dashboard, in a dedicated alert centre with the underlying rows, through the REST API and through a daily cron job.
Third parties, contacts, products and services, users and groups, sales orders, quotations, shipments, customer invoices, payments, banks, suppliers, purchase orders, receptions, supplier invoices, projects, tasks, agenda, document management, boxes, cron and the REST API layer. Declared dependencies are the Third Parties and Products modules. The Dolibarr core is never modified.
Base URL /api/index.php/orchardmanagement/ with DOLAPIKEY authentication. Routes: objects, records/{type}, records/{type}/{id} for GET, POST, PUT and DELETE, dashboard, alerts and traceability/{id}. Pagination, sorting and filtering are whitelisted against the live schema. Errors are structured: 401 unauthenticated, 403 insufficient rights, 404 unknown type or record, 400 unknown filter column, 500 database error.
Escaped SQL throughout, CSRF protection through the Dolibarr token mechanism, output escaping on every user-controlled value, granular permission checks on every page and API route, closed vocabulary inputs validated server-side, and entity scoping on every query for multi-entity installations.
The configuration page offers Populate the demonstration data and Clear the demonstration data. A complete fictitious farm is generated across all 59 tables — about 5100 rows, every one flagged as fictitious. The purge runs in a transaction, cascades to user-created children of demo records, removes the native third parties and products it created, and never touches real data.
Unzip module_orchardmanagement-1.0.zip into htdocs/custom/, enable Gestion Arboriculture in Home ▸ Setup ▸ Modules, then configure the module. Activation creates the tables, permissions, menus and constants and seeds the demonstration dataset. On upgrade the schema self-heals: columns added by a later version are created automatically.
|
Deliverable |
Description |
|
module_orchardmanagement-1.0.zip |
The installable module, containing the orchardmanagement/ folder |
|
screenshots/ |
86 screenshots at 3200 x 1980 covering every screen |
|
Orchard_Management_User_Training_Manual_FR.pdf |
Illustrated French user and training manual |
|
Orchard_Management_Complete_Features_EN.docx |
This English functional documentation |
|
Orchard_Management_Technical_Documentation_EN.md |
English technical documentation |
The module was installed and activated on a live Dolibarr 17.0.3 instance running PHP 8.1 and MariaDB 12.3, alongside more than a hundred other modules.
|
Check |
Result |
|
Activation |
init() returned 1; 33/33 permissions; 59/59 tables; 86 menu entries |
|
Empty tables |
None — every one of the 59 tables holds demonstration rows |
|
Language collisions |
0 colliding keys against the installed modules |
|
HTTP smoke test |
149/149 pages correct |
|
Detail pages |
59/59 correct |
|
Purge and re-seed |
Idempotent; no residual rows, no duplication |
|
REST API |
401 on invalid and missing key, 404 unknown type, 400 bad filter, write persisted |
|
Languages |
All five render their own wording end to end |
|
Demo realism |
Yield 17.2 t/ha, cost 0.59 EUR/kg, margin 33.6 pct, establishment 95.7 pct |
Copyright © DoliResources — www.doliresources.com