|
| 1 | +=== |
| 2 | +ESG |
| 3 | +=== |
| 4 | + |
| 5 | +The ESG (Environment, Social, and Governance) app helps you automate ESG data collection by |
| 6 | +integrating with apps like Accounting, Fleet, Payroll, and Employees. It pulls data from your |
| 7 | +operations to build your ESG reports, based on legal and sustainability reporting requirements, |
| 8 | +while giving you a real-time view of your emissions and other key ESG metrics. |
| 9 | + |
| 10 | +Carbon footprint |
| 11 | +================ |
| 12 | + |
| 13 | +The carbon footprint tool automates emissions tracking by collecting data from accounting records |
| 14 | +(purchases, expenses, etc.) and employee commuting activity, and supports manual inputs. Emissions |
| 15 | +are updated in real time, allowing for continuous monitoring and reporting. You can: |
| 16 | + |
| 17 | +- Track your daily environmental impact. |
| 18 | +- Evaluate the immediate effect of your reduction actions. |
| 19 | +- Prioritize targeted changes. |
| 20 | +- Continuously monitor and refine your sustainability strategy. |
| 21 | + |
| 22 | +.. admonition:: Emissions (kgCO₂e) formula |
| 23 | + |
| 24 | + `Activity data` × `Emission factor` |
| 25 | + |
| 26 | +Activity data sources |
| 27 | +--------------------- |
| 28 | + |
| 29 | +The following data sources are used: |
| 30 | + |
| 31 | +- :ref:`Accounting <esg/accounting>` |
| 32 | +- :ref:`Fleet <esg/fleet>` |
| 33 | +- :ref:`Manual inputs <esg/manual>` |
| 34 | + |
| 35 | +.. _esg/accounting: |
| 36 | + |
| 37 | +Accounting |
| 38 | +~~~~~~~~~~ |
| 39 | + |
| 40 | +Odoo collects activity data from journal entries posted to expense and asset accounts. These |
| 41 | +include: |
| 42 | + |
| 43 | +- Fixed assets |
| 44 | +- Expenses |
| 45 | +- Other expenses |
| 46 | +- Cost of revenue |
| 47 | + |
| 48 | +Only these account types are considered for carbon footprint calculations, in line with the *Bilan |
| 49 | +Carbone* methodology. |
| 50 | + |
| 51 | +.. _esg/fleet: |
| 52 | + |
| 53 | +Fleet |
| 54 | +~~~~~ |
| 55 | + |
| 56 | +Odoo calculates commuting emissions using data from the Fleet and Employees apps. |
| 57 | + |
| 58 | +.. admonition:: Employee commuting emissions formula |
| 59 | + |
| 60 | + `Days` × `Home-work distance` × `2` × (`Number of office days` / `7`) × `Vehicle model CO₂ |
| 61 | + emissions` |
| 62 | + |
| 63 | +To ensure accurate calculations: |
| 64 | + |
| 65 | +- Define the average number of days per week the employees commute to the office by going to |
| 66 | + :menuselection:`ESG --> Configuration --> Settings` and filling in the :guilabel:`Weekly Office |
| 67 | + Attendance`. |
| 68 | +- Set the emissions of each vehicle model by going to :menuselection:`Fleet --> Configuration --> |
| 69 | + Models`, selecting a model, and entering its :guilabel:`CO₂ Emissions`. |
| 70 | +- Set each employee's home-to-work distance by opening the :guilabel:`Employees` app, selecting an |
| 71 | + employee, and filling in the employee's :guilabel:`Home-Work Distance`. |
| 72 | + |
| 73 | +.. note:: |
| 74 | + The employee vehicle's :guilabel:`Start Date` and, if applicable, :guilabel:`End Date`, are used |
| 75 | + to calculate the emissions. Ensure they are set by opening the :guilabel:`Employees` app, |
| 76 | + selecting an employee, and clicking the :guilabel:`Cars` smart button. |
| 77 | + |
| 78 | +To access the employee commuting emissions pivot table, go to :menuselection:`ESG --> Collect --> |
| 79 | +Employee Commuting`. |
| 80 | + |
| 81 | +.. image:: esg/employee-commuting-pivot.png |
| 82 | + :alt: The employee commuting emissions pivot table |
| 83 | + |
| 84 | +To add the data to the emitted emissions, click :guilabel:`Add Emissions`, define the |
| 85 | +:guilabel:`Emissions Period` that should be covered, and click :guilabel:`Save`. |
| 86 | + |
| 87 | +.. _esg/manual: |
| 88 | + |
| 89 | +Manual input |
| 90 | +~~~~~~~~~~~~ |
| 91 | + |
| 92 | +You can manually enter emissions for activities that not tracked automatically (e.g., employee |
| 93 | +lunches, waste, etc.). To do so, go to :menuselection:`ESG --> Collect --> Emitted Emissions` and |
| 94 | +click :guilabel:`New`, then: |
| 95 | + |
| 96 | +- Name the activity. |
| 97 | +- Select a :guilabel:`Date`. |
| 98 | +- Select an :guilabel:`Emission factor`. |
| 99 | +- Enter a :guilabel:`Quantity`. |
| 100 | + |
| 101 | +Once saved, the entry appears under :menuselection:`ESG --> Collect --> Emitted Emissions` and is |
| 102 | +included in the carbon footprint report. |
| 103 | + |
| 104 | +Emission factors |
| 105 | +---------------- |
| 106 | + |
| 107 | +An emission factor is a coefficient that indicates the rate at which a specific activity emits |
| 108 | +greenhouse gases into the atmosphere. |
| 109 | + |
| 110 | +Source database |
| 111 | +~~~~~~~~~~~~~~~ |
| 112 | + |
| 113 | +Import the data from a certified emission factors database by going to :menuselection:`ESG --> |
| 114 | +Configuration --> Source Databases`. Click :guilabel:`Download` on the `ADEME |
| 115 | +<https://www.ademe.fr/en/our-missions/data>`_ database to import its emission factors and sources. |
| 116 | + |
| 117 | +Main components of an emission factor |
| 118 | +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
| 119 | + |
| 120 | +Source |
| 121 | +****** |
| 122 | + |
| 123 | +Each emission factor is assigned to a scope, following the GHG Protocol: |
| 124 | + |
| 125 | +- Scope 1 – Direct emissions (e.g., fuel burned on-site or in company vehicles) |
| 126 | +- Scope 2 – Indirect emissions from purchased energy (e.g., electricity or heat) |
| 127 | +- Scope 3 – All other indirect emissions across the value chain (e.g., purchased goods, travel, |
| 128 | + waste) |
| 129 | + |
| 130 | +Scopes can be structured hierarchically (parent-child) for more detailed categorization, such as |
| 131 | +"Scope 3: Others Indirect > Purchased Goods > Electronics". |
| 132 | + |
| 133 | +Uncertainty |
| 134 | +*********** |
| 135 | + |
| 136 | +Uncertainty represents the potential margin of error in an emission factor. It reflects how precise |
| 137 | +or reliable the factor is when estimating emissions for a given activity, based on the quality of |
| 138 | +data, assumptions used, and calculation methodology. |
| 139 | + |
| 140 | +It helps you assess the confidence level of the emissions data used in the reporting. |
| 141 | + |
| 142 | +Compute method |
| 143 | +************** |
| 144 | + |
| 145 | +The compute method determines whether emissions are calculated using physical quantities (e.g., kg, |
| 146 | +liters, units) or monetary values (e.g., € spent). In physical mode, the system uses the quantity |
| 147 | +from the transaction (e.g., 10 units × :abbr:`EF (emission factor)` per unit). In monetary mode, it |
| 148 | +uses the transaction amount (e.g., €500 × :abbr:`EF (emission factor)` per €). |
| 149 | + |
| 150 | +Gas emissions lines |
| 151 | +******************* |
| 152 | + |
| 153 | +Each emission factor can include multiple gas emission lines, representing the different greenhouse |
| 154 | +gases involved in the activity. The ESG app includes the six main gases from the Kyoto Protocol — |
| 155 | +CO₂, CH₄, N₂O, HFCs, PFCs, SF₆ — each with a predefined Global Warming Potential (GWP) used to |
| 156 | +convert them into a common unit: CO₂-equivalent (kgCO₂e). |
| 157 | + |
| 158 | +.. tip:: |
| 159 | + Add more specific gases by going to :menuselection:`ESG --> Configuration --> Gases`. |
| 160 | + |
| 161 | +Each gas line can be linked to an activity type such as production, transport, or use, allowing for |
| 162 | +detailed breakdowns in your emissions reporting. |
| 163 | + |
| 164 | +The final emission factor value is the sum of all these gases’ emissions converted into |
| 165 | +CO₂-equivalents. |
| 166 | + |
| 167 | +Assignation rules |
| 168 | +~~~~~~~~~~~~~~~~~ |
| 169 | + |
| 170 | +Assignation rules allow emission factors to be automatically applied to relevant activity data based |
| 171 | +on specific criteria: the product, partner, and/or account involved in the transaction. |
| 172 | + |
| 173 | +.. example:: |
| 174 | + You have assigned an emission factor to the *Zenith Pro Computer* product and later receive a |
| 175 | + vendor bill for 150 units; the system automatically applies the assigned emission factor, |
| 176 | + multiplying the emission factor's emissions (kgCO₂e) by 150. |
| 177 | + |
| 178 | +To define assignation rules on emissions factors, go to :menuselection:`ESG --> Configuration --> |
| 179 | +Emission Factors` and select an emission factor. Under the :guilabel:`Assignations` tab, click |
| 180 | +:guilabel:`Add a line`, and select a record for one or more of the following attributes: |
| 181 | +:guilabel:`Product`, :guilabel:`Partner`, and :guilabel:`Account`. |
| 182 | + |
| 183 | +All attributes have to match for the rule to be applied. |
| 184 | + |
| 185 | +.. important:: |
| 186 | + Ensure the unit of measure set next to the product's :guilabel:`Cost` matches the emission |
| 187 | + factor's :guilabel:`Unit of Measure`. |
| 188 | + |
| 189 | + .. image:: esg/product-unit-of-measure.png |
| 190 | + :alt: A product's unit of measure |
| 191 | + |
| 192 | + If the field is not displayed, go to :menuselection:`Accounting --> Configuration --> Settings` |
| 193 | + and enable the :guilabel:`Units of Measure & Packagings` option. |
| 194 | + |
| 195 | +.. tip:: |
| 196 | + Accounting journal entries with a missing emission factor can be found by clicking |
| 197 | + :guilabel:`Emissions to define` under the :guilabel:`Collect Emissions` card on the dashboard. |
| 198 | + |
| 199 | +Rules priority |
| 200 | +************** |
| 201 | + |
| 202 | +When multiple assignation rules match, Odoo prioritizes the most specific rule based on the |
| 203 | +following criteria: |
| 204 | + |
| 205 | +#. Attribute specificity: Odoo first evaluates rules by the most precise attribute, following this |
| 206 | + priority hierarchy (from most to least specific): |
| 207 | + |
| 208 | + #. Product |
| 209 | + #. Partner |
| 210 | + #. Account |
| 211 | + |
| 212 | +#. Attribute count: if multiple rules share the same level of attribute specificity, Odoo then |
| 213 | + considers the number of attributes in the rule. The rule with more attributes defined will take |
| 214 | + priority. |
| 215 | + |
| 216 | +.. example:: |
| 217 | + **Example 1** |
| 218 | + |
| 219 | + *Emission factor #1 assignation rule* |
| 220 | + |
| 221 | + .. list-table:: |
| 222 | + :header-rows: 1 |
| 223 | + |
| 224 | + * - Account |
| 225 | + - Partner |
| 226 | + - Product |
| 227 | + * - *Any Account* |
| 228 | + - *Any Partner* |
| 229 | + - **Zenith Pro Computer** |
| 230 | + |
| 231 | + *Emission factor #2 assignation rule* |
| 232 | + |
| 233 | + .. list-table:: |
| 234 | + :header-rows: 1 |
| 235 | + |
| 236 | + * - Account |
| 237 | + - Partner |
| 238 | + - Product |
| 239 | + * - *Any Account* |
| 240 | + - **Digital Den** |
| 241 | + - *Any Product* |
| 242 | + |
| 243 | + Given the assignation rules above, all products purchased from **Digital Den** will be assigned |
| 244 | + emission factor **#2**, except the **Zenith Pro Computer** product, which will be assigned |
| 245 | + emission factor **#1**. |
| 246 | + |
| 247 | + |
| 248 | + **Example 2** |
| 249 | + |
| 250 | + *Emission factor #1 assignation rule* |
| 251 | + |
| 252 | + .. list-table:: |
| 253 | + :header-rows: 1 |
| 254 | + |
| 255 | + * - Account |
| 256 | + - Partner |
| 257 | + - Product |
| 258 | + * - *Any Account* |
| 259 | + - *Any Partner* |
| 260 | + - **Zenith Pro Computer** |
| 261 | + |
| 262 | + *Emission factor #2 assignation rule* |
| 263 | + |
| 264 | + .. list-table:: |
| 265 | + :header-rows: 1 |
| 266 | + |
| 267 | + * - Account |
| 268 | + - Partner |
| 269 | + - Product |
| 270 | + * - *Any Account* |
| 271 | + - **Digital Den** |
| 272 | + - **Zenith Pro Computer** |
| 273 | + |
| 274 | + Given the assignation rules above, any purchased **Zenith Pro Computer** will be assigned |
| 275 | + emission factor **#1**, except if purchased from the **Digital Den**, which will be assigned |
| 276 | + emission factor **#2**. |
| 277 | + |
| 278 | +Apply retroactively |
| 279 | +******************* |
| 280 | + |
| 281 | +Once your emission factors are configured with assignation rules, you can also apply them |
| 282 | +retroactively to past activity data. |
| 283 | + |
| 284 | +To do so, go to :menuselection:`ESG --> Configuration --> Emission Factors`, select an emission |
| 285 | +factor, and click :guilabel:`Assign`. Select an :guilabel:`Application Period`, and, if desired, |
| 286 | +enable the :guilabel:`Replace existing assignations` option. |
| 287 | + |
| 288 | +.. tip:: |
| 289 | + Apply emission factors in bulk by selecting multiple emission factors in :icon:`oi-view-list` |
| 290 | + list view and clicking :icon:`fa-cog` (:guilabel:`Actions`) :menuselection:`--> Assign Emission |
| 291 | + Factors`. |
| 292 | + |
| 293 | +Sex parity and pay gap |
| 294 | +====================== |
| 295 | + |
| 296 | +Sex parity tracks the distribution of sexes across the workforce, such as comparing women and |
| 297 | +men in technical vs. administrative roles, permanent vs. temporary contracts, different office |
| 298 | +locations, or management vs. non-management positions. |
| 299 | + |
| 300 | +These insights, based on employee data, are essential for CSRD reporting under ESRS S1 and will also |
| 301 | +support future VSME standards. |
| 302 | + |
| 303 | +To view a company's sex parity and pay gap measures, set the sex of each employee by opening the |
| 304 | +:guilabel:`Employees` app and selecting an employee. Under the :guilabel:`Private Information` tab, |
| 305 | +select the employee's :guilabel:`Gender`. |
| 306 | + |
| 307 | +The pay gap is calculated using the wages set on the employees' Payroll contracts for the same jobs. |
| 308 | + |
| 309 | +.. admonition:: Pay gap formula |
| 310 | + |
| 311 | + ((`Average male salary` – `Average female salary`) / `Average male salary`) × `100` |
| 312 | + |
| 313 | +Access the measures by clicking :menuselection:`ESG --> Measure --> Sex Parity / Pay Gap`. |
| 314 | + |
| 315 | +.. tip:: |
| 316 | + Use the different :ref:`Group By <search/group>` options to break down the data by |
| 317 | + :guilabel:`Leadership Level`, :guilabel:`Department`, :guilabel:`Job Position`, |
| 318 | + :guilabel:`Contract Type`, or :guilabel:`Country`. |
| 319 | + |
| 320 | + .. image:: esg/sex-graph-group-by.png |
| 321 | + :alt: The sex parity graph filtering options |
| 322 | + |
| 323 | +Initiatives |
| 324 | +=========== |
| 325 | + |
| 326 | +Go to :menuselection:`ESG --> Act --> Initiatives` to access all the :doc:`Project |
| 327 | +<../services/project>` features, and start taking action on your impact. You can estimate CO₂ |
| 328 | +savings for each task, track progress, and assign team members with deadlines. |
| 329 | + |
| 330 | +.. note:: |
| 331 | + Estimated CO₂ reductions do not immediately lower your carbon footprint. The real impact shows |
| 332 | + only when these reductions are reflected in your operations. |
0 commit comments