Compare commits

...

499 Commits

Author SHA1 Message Date
Jess Rogers (jero) 5e2ac0e694 [IMP] helpdesk: update receiving tickets
Co-authored-by: larm-odoo <121518652+larm-odoo@users.noreply.github.com>

Co-authored-by: Timothy Kukulka <91896312+tiku-odoo@users.noreply.github.com>

Co-authored-by: Timothy Kukulka <91896312+tiku-odoo@users.noreply.github.com>

Co-authored-by: ksc-odoo <73958186+ksc-odoo@users.noreply.github.com>

Co-authored-by: ksc-odoo <73958186+ksc-odoo@users.noreply.github.com>

Co-authored-by: Sam Lieber (sali) <36018073+samueljlieber@users.noreply.github.com>
2024-02-13 11:59:44 -05:00
Antoine Vandevenne (anv) 00771d68bd [IMP] supported_versions: release saas-17.1
closes odoo/documentation#7706

X-original-commit: e116579c99
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2024-02-12 22:26:17 +00:00
Donatienne (dopi) 83ca0c26ff [IMP] Website Analytics: adding Google Tag Manager documentation
taskid-3650278

closes odoo/documentation#7693

X-original-commit: 1799e47028
Signed-off-by: Audrey Vandromme (auva) <auva@odoo.com>
Signed-off-by: Donatienne Pirlot (dopi) <dopi@odoo.com>
2024-02-12 08:31:08 +00:00
Odoo Translation Bot e0010641ac [I18N] Update translation terms from Transifex 2024-02-11 00:40:46 +01:00
Sam Lieber (sali) 2198e60c5e [REF] marketing automation: move getting started
closes odoo/documentation#7658

Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2024-02-09 15:47:16 +00:00
“Audrey d4d62b6967 [IMP] payment_providers/stripe: improve structure and add Enable Apple Pay button
task-3697828

closes odoo/documentation#7682

X-original-commit: 1bc080ed36
Signed-off-by: Audrey Vandromme (auva) <auva@odoo.com>
2024-02-09 13:44:07 +00:00
Jess Rogers (jero) 48bfcc6d93 [IMP] helpdesk: getting started doc updates
closes odoo/documentation#7486

Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
Co-authored-by: larm-odoo <121518652+larm-odoo@users.noreply.github.com>
Co-authored-by: Timothy Kukulka <91896312+tiku-odoo@users.noreply.github.com>
Co-authored-by: Timothy Kukulka <91896312+tiku-odoo@users.noreply.github.com>
Co-authored-by: ksc-odoo <73958186+ksc-odoo@users.noreply.github.com>
Co-authored-by: ksc-odoo <73958186+ksc-odoo@users.noreply.github.com>
Co-authored-by: Sam Lieber (sali) <36018073+samueljlieber@users.noreply.github.com>
2024-02-09 04:13:52 +00:00
tiku-odoo 5eb6fc8cbc [IMP] Misc VoIP Version 17 Specific Changes
closes odoo/documentation#7669

Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2024-02-09 02:36:56 +00:00
Donatienne (dopi) af0853ec77 [IMP] Website: updating seo documentation
taskid-3499195

closes odoo/documentation#7646

X-original-commit: 5f6dfc7880
Signed-off-by: Audrey Vandromme (auva) <auva@odoo.com>
Signed-off-by: Donatienne Pirlot (dopi) <dopi@odoo.com>
2024-02-08 10:57:00 +00:00
John Holton (hojo) 9265f644ad [ADD] Quality: Control points doc
closes odoo/documentation#7633

X-original-commit: 1bf87a0db9
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2024-02-06 23:14:56 +00:00
tiku-odoo 1da9a538c2 [ADD] Misc: VoIP Axivox Dial Plan Edits
closes odoo/documentation#7655

X-original-commit: 5ea7d3aa16
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
Signed-off-by: Timothy Kukulka (tiku) <tiku@odoo.com>
2024-02-06 21:44:35 +00:00
John Holton (hojo) 91201d199a [IMP] MRP: Backorders Shop Floor workflow
closes odoo/documentation#7566

X-original-commit: de2a4e2db7
Signed-off-by: John Holton (hojo) <hojo@odoo.com>
2024-02-05 23:51:12 +00:00
John Holton (hojo) c612a4e1fa [IMP] Quality: Quality checks Shop Floor
closes odoo/documentation#7565

X-original-commit: 0806969e0d
Signed-off-by: John Holton (hojo) <hojo@odoo.com>
2024-02-05 23:51:11 +00:00
John Holton (hojo) caffe57110 [IMP] Quality: Measure check Shop Floor
closes odoo/documentation#7564

X-original-commit: 5b47c396ca
Signed-off-by: John Holton (hojo) <hojo@odoo.com>
2024-02-05 23:51:10 +00:00
John Holton (hojo) 7cf18082ad [IMP] Quality: Pass - Fail check Shop Floor
closes odoo/documentation#7560

X-original-commit: 30d2a5efd1
Signed-off-by: John Holton (hojo) <hojo@odoo.com>
2024-02-05 23:51:09 +00:00
Loredana Perazzo deecd2ae21 [IMP] POS: path to configure payment terminals
task-3684488

closes odoo/documentation#7606

X-original-commit: d16864d586
Signed-off-by: Loredana Perazzo (lrpz) <lrpz@odoo.com>
2024-02-05 11:00:14 +00:00
KC (ksc) f07ce400b0 [IMP] subscriptions: update automation rules doc for 17
closes odoo/documentation#7338

Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2024-02-04 04:08:52 +00:00
Lara Martini (larm) 23b5138038 [ADD] Frontdesk: new documentation for new app
closes odoo/documentation#7237

Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
Co-authored-by: Jess Rogers <104637850+jero-odoo@users.noreply.github.com>
2024-02-04 04:08:51 +00:00
Brandon Seltenrich (BRSE) 18fd3f00e4 [ADD] purchase: add new temp rr doc
closes odoo/documentation#7576

Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2024-02-04 02:51:23 +00:00
Odoo Translation Bot a8d88ed33e [I18N] Update translation terms from Transifex 2024-02-04 00:40:44 +01:00
“Audrey 281137ccfb [IMP] Studio: add a data table using the report editor
task-3698568

closes odoo/documentation#7558

Signed-off-by: Audrey Vandromme (auva) <auva@odoo.com>
2024-02-02 12:41:58 +00:00
Felicious 81509af376 [REF] inventory: move removal strats into own folder
closes odoo/documentation#7530

Signed-off-by: Felicia Kuan (feku) <feku@odoo.com>
Co-authored-by: Jonathan <jcs@odoo.com>
2024-02-02 01:47:47 +00:00
tiku-odoo 8b76aedf88 [IMP] Productivity IoT Windows Add Admonition Block
closes odoo/documentation#7613

X-original-commit: c1ba4c61ae
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2024-02-01 21:01:45 +00:00
tiku-odoo cffbd073fb [IMP] Misc Auth LDAP Typo Edits
closes odoo/documentation#7588

X-original-commit: 03678233c5
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
Signed-off-by: Timothy Kukulka (tiku) <tiku@odoo.com>
2024-01-31 06:59:11 +00:00
Donatienne (dopi) 5400f76019 [IMP] accounting: reconciliation models update
task-3377307

closes odoo/documentation#7512

X-original-commit: e5a19771c1
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
Signed-off-by: Donatienne Pirlot (dopi) <dopi@odoo.com>
2024-01-30 15:15:09 +00:00
John Holton (hojo) a5803c0a57 [IMP] Quality: Take a Picture check Shop Floor
closes odoo/documentation#7563

X-original-commit: 93b47e7896
Signed-off-by: John Holton (hojo) <hojo@odoo.com>
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2024-01-30 12:19:55 +00:00
John Holton (hojo) 72a7fa97e0 [IMP] Quality: Instructions check Shop Floor
closes odoo/documentation#7555

X-original-commit: 58365b78c4
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
Co-authored-by: Felicious <feku@odoo.com>
Co-authored-by: ksc-odoo <ksc@odoo.com>
Co-authored-by: StraubCreative <zst@odoo.com>
2024-01-30 08:24:50 +00:00
Lara Martini (larm) 9331fce764 [ADD] Time Off: new documentation needed
closes odoo/documentation#7535

X-original-commit: a838df1660
Signed-off-by: Samuel Lieber (sali) <sali@odoo.com>
2024-01-29 20:22:46 +00:00
Odoo Translation Bot 2abc1ceb54 [I18N] Update translation terms from Transifex 2024-01-28 00:40:50 +01:00
Augusto Perez c330f4d72e [ADD] Upgrade documentation: Upgrade scripts and Util package
closes odoo/documentation#7548

X-original-commit: 16a209c750
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2024-01-26 10:35:04 +00:00
John Holton (hojo) e8576b7a04 [IMP] MRP: Update Manufacturing step docs for Shop Floor
closes odoo/documentation#7498

X-original-commit: 71a9b4efac
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2024-01-26 07:48:50 +00:00
MaxKeilOdoo 07333c0061 [IMP] misc: IAP grammar updates and new image
closes odoo/documentation#7427

Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
Co-authored-by: larm-odoo <121518652+larm-odoo@users.noreply.github.com>
Co-authored-by: tiku-odoo <tiku@odoo.com>
Co-authored-by: ksc-odoo <73958186+ksc-odoo@users.noreply.github.com>
Co-authored-by: StraubCreative <zst@odoo.com>
2024-01-26 01:17:56 +00:00
Donatienne (dopi) 05370926ff [IMP] elearning: set prerequisite courses
taskid-3433600

closes odoo/documentation#7540

X-original-commit: 2d4a3cc883
Signed-off-by: Audrey Vandromme (auva) <auva@odoo.com>
Signed-off-by: Donatienne Pirlot (dopi) <dopi@odoo.com>
2024-01-25 15:24:59 +00:00
“Audrey 67894e33f6 [IMP] payment_providers: payment methods + restructure doc page
task-3570280

closes odoo/documentation#7414

Signed-off-by: Audrey Vandromme (auva) <auva@odoo.com>
2024-01-24 10:44:37 +00:00
“Audrey 2118084f11 [IMP] Studio: new report editor
task-3553091

closes odoo/documentation#7516

X-original-commit: cf389c1c3e
Signed-off-by: Audrey Vandromme (auva) <auva@odoo.com>
2024-01-24 09:12:45 +00:00
Julien Alardot (jual) cbe72a69bb [FIX] reference/user_interface: filter element name is mandatory
The filter element attribute 'name' is now required since
odoo/odoo/commit/4ddc3231

closes odoo/documentation#7510

Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2024-01-24 00:16:51 +00:00
Loredana Perazzo e6c1f703ab [IMP] pos: note about products loading
task-3095675

closes odoo/documentation#7507

X-original-commit: 5ec37fbb7f
Signed-off-by: Audrey Vandromme (auva) <auva@odoo.com>
Signed-off-by: Loredana Perazzo (lrpz) <lrpz@odoo.com>
2024-01-24 00:16:46 +00:00
tiku-odoo 484cf203a9 [IMP] IoT Printer doc edits
closes odoo/documentation#7494

X-original-commit: bfe57fdbdd
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2024-01-23 05:56:24 +00:00
tiku-odoo 474d0b7b94 [IMP]Productivity WhatsApp Enterprise Edit
closes odoo/documentation#7483

Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2024-01-23 05:56:23 +00:00
tiku-odoo df637c5746 [RMV]Sales: remove snyc menu line ebay connector
closes odoo/documentation#7469

X-original-commit: 9db684fe86
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
Signed-off-by: Timothy Kukulka (tiku) <tiku@odoo.com>
2024-01-23 04:41:42 +00:00
Loredana Perazzo 539435d14d [ADD] POS: page to setup and use product combos
Task-3604850

closes odoo/documentation#7341

Signed-off-by: Loredana Perazzo (lrpz) <lrpz@odoo.com>
2024-01-22 19:01:00 +00:00
nni-odoo 05637af163 [ADD] payment_providers: Xendit
Documentation for Xendit payment provider

taskid-2946329

closes odoo/documentation#6045

Signed-off-by: Nigel Nicholas (nni) <nni@odoo.com>
2024-01-22 00:56:38 +00:00
Odoo Translation Bot 5689bc1039 [I18N] Update translation terms from Transifex 2024-01-21 00:40:53 +01:00
Martin Trigaux (mat) aecf49d6c8 [I18N] *: export 16.0 translations
closes odoo/documentation#7452

X-original-commit: 3917094efd
Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
2024-01-20 07:12:53 +00:00
tiku-odoo a787a2652f [IMP] Microsoft Azure Email Phrasing update
closes odoo/documentation#7460

X-original-commit: d902bbbc19
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
Signed-off-by: Timothy Kukulka (tiku) <tiku@odoo.com>
2024-01-20 05:31:55 +00:00
tiku-odoo e5586b3180 [RMV]VOIP:Scrub Asterisk Docs
closes odoo/documentation#7443

X-original-commit: 055e332ef3
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
Signed-off-by: Timothy Kukulka (tiku) <tiku@odoo.com>
2024-01-20 02:43:02 +00:00
Antoine Vandevenne (anv) 439c4521ad [IMP] reference/user_interface: reformat and clarify views reference
In particular, the following changes are made:
- Use the `class` and `attribute` admonitions along with custom
  attributes to define classes, views' root attributes, views'
  components, and attribute values. This allows re-using the responsive
  design that was made for reference lists, and getting rid of the
  previous implementation that relied on class attributes, which were not
  intended for this usage and reduce readability while hindering further
  contributions due to a lack of flexibility (no admonitions,
  sub-attributes...)
- Use definition lists to define view types to allow for clearer and
  longer descriptions.
- Rewrite and restructure the explanations when there is a lack clarity.
- Extract duplicated content to included RST files.
- Display SVG images into dedicated admonitions.
- Fix RST and English mistakes.
- Rename `view_architecture` to `view_architectures`, as it lists all
  existing architectures and doesn't describe "the architecture of a
  view".
- Replace underscores with hyphens in image file names to improve SEO.

task-3458320

closes odoo/documentation#5237

Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2024-01-19 15:21:43 +00:00
KC (ksc) 6a7bc2d449 [IMP] subscriptions: update renewals doc
closes odoo/documentation#7239

Signed-off-by: Kevin Scannell (ksc) <ksc@odoo.com>
2024-01-18 03:48:01 +00:00
Brandon Seltenrich (BRSE) 03ace4206c [IMP] barcode: update adjustments doc
closes odoo/documentation#7422

X-original-commit: a7af9a59ff
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2024-01-17 05:12:21 +00:00
Felicious bc6c92d786 [ADD] inventory: least packages removal strategy
closes odoo/documentation#7296

Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
Co-authored-by: ksc-odoo <73958186+ksc-odoo@users.noreply.github.com>
Co-authored-by: hojo-odoo <123424465+hojo-odoo@users.noreply.github.com>
2024-01-17 01:35:41 +00:00
Christophe Monniez 6391349a6d [FIX] requirements: fix sphinxcontrib versions
It seems that the latest version if sphinx contrib libs needs sphinx 5.0.

closes odoo/documentation#7411

X-original-commit: 38bd71fa13
Signed-off-by: Christophe Monniez (moc) <moc@odoo.com>
2024-01-16 16:42:07 +00:00
Ricardo Gomes Rodrigues eded294b05 [IMP] l10n: Codabox for Belgium
Add Codabox Belgium documentation following the introduction of the
module introduced in https://github.com/odoo/enterprise/pull/47607

task-id 3592955

closes odoo/documentation#6425

Signed-off-by: Ricardo Gomes Rodrigues (rigr) <rigr@odoo.com>
2024-01-16 09:55:19 +00:00
Olivier Dony 856a60cd24 [IMP] conf: special case alt lang links for legal terms
Legal terms live under specific URL as their translations are not
managed in the same manner.

Layout is like this:
  /terms/enterprise.html (EN)
  /terms/i18n/enterprise_fr.html (FR)

This commit adapts the generation of alternative languages links for each
"legal terms page", so that it targets the correct i18n link, or goes
back to the canonical EN one, depending on the target language.

closes odoo/documentation#7382

closes odoo/documentation#7384

closes odoo/documentation#7387

Signed-off-by: Olivier Dony (odo) <odo@odoo.com>
2024-01-15 22:53:37 +01:00
Olivier Dony 05be4c72db [CHG] legal: make Spanish partnership contract official
Removed the "not legally binding" warning, as Odoo now has official
establishments in countries when Spanish contracts are mandatory and
need to be binding. More careful reviews of the Spanish translations
will be necessary from now on.

Part-of: odoo/documentation#7387
2024-01-15 22:53:37 +01:00
Olivier Dony fb48206c21 [IMP] legal: update spanish Enterprise contract to v10a
Including spellchecking and proper emphasis of some important terms, and
the disambiguation of "Extra Covered Modules" and "Bug"

Removed the "not legally binding" warning, as Odoo now has official
establishments in countries when Spanish contracts are mandatory and
need to be binding. More careful reviews of the Spanish translations
will be necessary from now on.

Part-of: odoo/documentation#7387
2024-01-15 22:53:37 +01:00
aliya 47300c10bf [IMP] accounting: peppol
In 17.0 we have introduced some additional features in Peppol:
- switching between the demo mode/test mode/live
- better UI that allows fetch peppol message status, new documents, etc from the accounting dashboard
- peppol ready filter to filter customer invoices that are ready to be sent via peppol

part of:
task-3614809

closes odoo/documentation#7304

Signed-off-by: Audrey Vandromme (auva) <auva@odoo.com>
2024-01-15 16:07:46 +00:00
Jonathan Castillo (jcs) 403c616602 [FIX] redirects: redirection loop on install.rst
closes odoo/documentation#7391

X-original-commit: f4bad01680
Signed-off-by: Jonathan Castillo (jcs) <jcs@odoo.com>
2024-01-15 14:48:42 +00:00
Donatienne (dopi) 6f81a3b076 [MOV] geo ip installation: move page to install
Page moved from Websites to Install section

taskid-3512515

X-original-commit: a9004e844f
Part-of: odoo/documentation#7391
2024-01-15 14:48:42 +00:00
“Chiara 9223318b05 [IMP] accounting: internal transfers
taskid-3663508

closes odoo/documentation#7208

Signed-off-by: Tom Aarab (toaa) <toaa@odoo.com>
2024-01-15 13:18:32 +00:00
Donatienne (dopi) 7e45e144a6 [IMP] Website: menus
Update screenshots to reflect V17

closes odoo/documentation#7200

Signed-off-by: Donatienne Pirlot (dopi) <dopi@odoo.com>
2024-01-15 13:18:31 +00:00
KC (ksc) 998addbdb2 [IMP] sales: amazon connector features doc for 16
closes odoo/documentation#7379

X-original-commit: a43a65992e
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2024-01-14 20:58:47 +00:00
KC (ksc) f751e9548a [IMP] sales: updated amazon order management
closes odoo/documentation#7378

Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2024-01-14 03:12:06 +00:00
Odoo Translation Bot 9aa0b714ef [I18N] Update translation terms from Transifex 2024-01-14 00:40:37 +01:00
Felicious fd598899c2 [ADD] inventory: lifo removal strategy
closes odoo/documentation#7293

Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
Co-authored-by: ksc-odoo <73958186+ksc-odoo@users.noreply.github.com>
Co-authored-by: hojo-odoo <123424465+hojo-odoo@users.noreply.github.com>
2024-01-13 18:42:06 +00:00
Felicious a926fbf998 [ADD] inventory: closest locations removal strat
closes odoo/documentation#7295

Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
Co-authored-by: ksc-odoo <73958186+ksc-odoo@users.noreply.github.com>
Co-authored-by: hojo-odoo <123424465+hojo-odoo@users.noreply.github.com>
2024-01-13 02:05:12 +00:00
Felicious 8ebfc5cd2a [ADD] inventory: fefo removal
closes odoo/documentation#7294

Signed-off-by: Felicia Kuan (feku) <feku@odoo.com>
Co-authored-by: hojo-odoo <123424465+hojo-odoo@users.noreply.github.com>
Co-authored-by: ksc-odoo <73958186+ksc-odoo@users.noreply.github.com>
Co-authored-by: Zachary Straub <zst@odoo.com>
2024-01-12 23:08:27 +00:00
Sam Lieber (sali) 75734d8c6d [FIX] l10n_cl: Chile typo corrections
closes odoo/documentation#7362

X-original-commit: 505547264e
Signed-off-by: Jonathan Castillo (jcs) <jcs@odoo.com>
Signed-off-by: Marco Antonio Iribe Sepulveda (masi) <masi@odoo.com>
2024-01-12 20:16:00 +00:00
Marion (masp) 8f8e65640a [ADD] website: address autocomplete configuration
Task-3618264

closes odoo/documentation#7313

X-original-commit: ca160e4e1a
Signed-off-by: Marion Spindler (masp) <masp@odoo.com>
2024-01-12 12:50:32 +00:00
Felicious 5f416e028f [ADD] inventory: fifo removal strategy
closes odoo/documentation#7289

Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
Co-authored-by: ksc-odoo <73958186+ksc-odoo@users.noreply.github.com>
Co-authored-by: hojo-odoo <123424465+hojo-odoo@users.noreply.github.com>
2024-01-12 11:18:01 +00:00
Tom Aarab (toaa) 3099ce8e0b [REM] accounting: multiple payments
Removing redundant page (see task)

See PR https://github.com/odoo/documentation/pull/6645

taskid-3466400

closes odoo/documentation#7349

X-original-commit: 2ef7150ebf
Signed-off-by: Tom Aarab (toaa) <toaa@odoo.com>
2024-01-12 09:53:59 +00:00
Joren Van Onder 968177ade5 [IMP] accounting: direct customers to official fork of Taxcloud modules
Also improve wording a bit.

closes odoo/documentation#7340

Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
Co-authored-by: Renee Carano <rca@odoo.com>
Co-authored-by: Zachary Straub <zst@odoo.com>
2024-01-11 23:35:02 +00:00
Nathan Marotte (nama) 9776aa010c [ADD] Upgrade documentation: How-to-guide for developers
closes odoo/documentation#7335

X-original-commit: 44f4683519
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2024-01-11 08:46:59 +00:00
masi-odoo bb99bd6bf6 [IMP] payment_provider/mercado pago: content updates
This commit will add important clarifications to use and test the Mercado Pago payment provider and add visual documentation similar to other provider's documentation

closes odoo/documentation#7325

X-original-commit: 1596413d4b
Signed-off-by: Audrey Vandromme (auva) <auva@odoo.com>
Signed-off-by: Marco Antonio Iribe Sepulveda (masi) <masi@odoo.com>
Co-authored-by: samueljlieber <sali@odoo.com>
2024-01-10 22:45:59 +00:00
Tom Aarab (toaa) 82f68ea5fc [IMP] localization: spain missing reports
Missing tax reports for

15 & 16: 347 & 349
17: 347, 349, & 390

taskid-3673259

closes odoo/documentation#7319

X-original-commit: fecb587e78
Signed-off-by: Tom Aarab (toaa) <toaa@odoo.com>
2024-01-10 10:28:14 +00:00
Felicious 9c417efadc [IMP] inventory: split removal strategy doc
closes odoo/documentation#7223

Signed-off-by: Samuel Lieber (sali) <sali@odoo.com>
Co-authored-by: hojo-odoo <123424465+hojo-odoo@users.noreply.github.com>
Co-authored-by: Zachary Straub <zst@odoo.com>
2024-01-10 05:04:29 +00:00
Tom Aarab (toaa) 6b963f8f7d [IMP] accounting: Incoterms
Updated the Incoterms page to add "location" field and fixed typos

taskid-3619104

closes odoo/documentation#7243

X-original-commit: 30f5433366
Signed-off-by: Tom Aarab (toaa) <toaa@odoo.com>
2024-01-09 20:51:48 +00:00
Tom Aarab (toaa) 9e777948c1 [IMP] accounting: checks
Cleared up some confusion about path menu and feature

Forward to master

taskid-3644544

closes odoo/documentation#7291

X-original-commit: c438e5a3aa
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
Signed-off-by: Tom Aarab (toaa) <toaa@odoo.com>
2024-01-09 06:28:02 +00:00
Tom Aarab (toaa) 73fc5e9be4 [IMP] accounting: taxes
Updated the tax documentation for 16.4 onwards. Forward to master.

taskid-3621461

closes odoo/documentation#7283

X-original-commit: 7983e8d72d
Signed-off-by: Tom Aarab (toaa) <toaa@odoo.com>
2024-01-09 06:28:00 +00:00
Donatienne (dopi) 01883d07c1 [ADD] blogs: documentation
task-3492925

closes odoo/documentation#7281

X-original-commit: 4bc2742413
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
Signed-off-by: Jonathan Castillo (jcs) <jcs@odoo.com>
2024-01-09 06:27:59 +00:00
Tom Aarab (toaa) 8557dbf8c2 [IMP] accounting: payments doc update
Updated the payments doc page.

Forward to master.

16.3 -> Change reconciliation section

taskid-3610834

closes odoo/documentation#7271

X-original-commit: 9c1efe5b20
Signed-off-by: Tom Aarab (toaa) <toaa@odoo.com>
2024-01-09 06:27:56 +00:00
Odoo Translation Bot 313a22ba60 [I18N] Update translation terms from Transifex 2024-01-07 00:40:52 +01:00
Julien Castiaux c847bdc4dd [FIX] developer/reference/cli: log on stderr
Odoo is actually logging on sys.stderr and not sys.stdout[^1][^2][^3].

Remove passage about the workflows, the workflows were an OpenERP
feature removed almost a decade ago in odoo/odoo@98cb4719db.

Fixes: #7210

[^1]: https://github.com/odoo/odoo/blob/b3b9b2b49ef90d30bcce1e27a4ba0b24f888170c/odoo/netsvc.py#L156
[^2]: https://github.com/odoo/odoo/blob/b3b9b2b49ef90d30bcce1e27a4ba0b24f888170c/odoo/netsvc.py#L198
[^3]: https://docs.python.org/3/library/logging.handlers.html#logging.StreamHandler

closes odoo/documentation#7272

X-original-commit: c55e8f251a
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
Signed-off-by: Julien Castiaux (juc) <juc@odoo.com>
2024-01-05 03:24:45 +00:00
Donatienne (dopi) 054801995e [IMP] sign: tags, signing orders, reminders, expiration dates
task-3609727

New features are available in v17:
Modify tags on signed documents.
Send automatic email reminders to people who have yet to sign a document after a set delay.
Signing order available as soon as you have more than one signer
Setting expiration dates on signature requests.

closes odoo/documentation#6947

Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
2024-01-04 19:58:15 +00:00
Tom Aarab (toaa) 7d5afdda56 [FIX] Project: broken URL
One of the link is broken

taskid-3658558

closes odoo/documentation#7249

X-original-commit: 0311faee2f
Signed-off-by: Jonathan Castillo (jcs) <jcs@odoo.com>
Signed-off-by: Tom Aarab (toaa) <toaa@odoo.com>
2024-01-04 13:54:51 +00:00
Tom Aarab (toaa) cace3cc370 [IMP] accounting: batch payments
Updated screenshots from 16.3 onwards. Forward to master.

taskid-3615592

closes odoo/documentation#7241

X-original-commit: 22012bbf3e
Signed-off-by: Tom Aarab (toaa) <toaa@odoo.com>
2024-01-04 12:02:09 +00:00
Tom Aarab (toaa) 0178034f89 [IMP] accounting: bank sync
Changed a note that was confusing to end users. Forward to 16.3

16.3 & 16.4 --> Fetch Account/Reconnect

17.0 --> Reconnect

taskid-3619168

closes odoo/documentation#7233

X-original-commit: 3e1cf88a8c
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
Signed-off-by: Tom Aarab (toaa) <toaa@odoo.com>
2024-01-04 12:02:05 +00:00
Donatienne (dopi) a1eaf3af64 [IMP] to-do: create a new to-do with ctrl k shortcut
taskid-3501306

closes odoo/documentation#7202

Signed-off-by: Jonathan Castillo (jcs) <jcs@odoo.com>
2024-01-04 12:02:00 +00:00
Lara Martini (larm) f499de92ab [ADD] fleet: add a new vehicle
closes odoo/documentation#7221

X-original-commit: 7a5d891206
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
Co-authored-by: jero-odoo <104637850+jero-odoo@users.noreply.github.com>
2024-01-03 16:59:20 +00:00
Brandon Seltenrich (BRSE) a56255286a [IMP] inventory: update differences doc
closes odoo/documentation#7215

X-original-commit: 81d201efc4
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
Signed-off-by: Brandon Seltenrich (brse) <brse@odoo.com>
2024-01-03 16:59:19 +00:00
“Chiara cc03963248 [IMP] accounting: withholding tax
taskid-3615963

closes odoo/documentation#6709

Signed-off-by: Chiara Prattico (chpr) <chpr@odoo.com>
2024-01-03 16:59:03 +00:00
YStorm5 f62c7f83c5 [FIX] developer/tutorials/getting_started: swap headers
I think these two header got mix up.

closes odoo/documentation#7199

Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2024-01-03 09:17:54 +00:00
ezoer 9e740e90d1 [FIX] developer/user_interface: fix typo in 'attribute'
closes odoo/documentation#7190

Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2024-01-03 09:17:51 +00:00
Odoo Translation Bot 66959cf6ee [I18N] Update translation terms from Transifex 2023-12-31 00:40:52 +01:00
KC (ksc) edb41d8c51 [IMP] sales: updated quotation template for 17
closes odoo/documentation#7101

Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-12-28 23:43:25 +00:00
KC (ksc) 648cc25775 [IMP] subscriptions: updated upsell sub doc
closes odoo/documentation#6802

Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-12-28 23:43:24 +00:00
Lara Martini (larm) bdcd01f798 [IMP] Inventory: making targeted edits for 16
closes odoo/documentation#7188

X-original-commit: 04401626e5
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-12-27 23:57:18 +00:00
Lara Martini (larm) 2a46a816bc [ADD] Fleet: new services doc
closes odoo/documentation#7182

X-original-commit: abb6130914
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-12-27 23:57:17 +00:00
Brandon Seltenrich (BRSE) e0ab490d57 [IMP] mrp: update variants doc
closes odoo/documentation#7174

X-original-commit: f3a2865dea
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
Signed-off-by: Brandon Seltenrich (brse) <brse@odoo.com>
2023-12-27 13:47:04 +00:00
Lara Martini (larm) d0fc3e23f7 [ADD] Referrals: new doc explaining all of referrals
closes odoo/documentation#7165

X-original-commit: f2b550ab78
Signed-off-by: Samuel Lieber (sali) <sali@odoo.com>
2023-12-26 20:37:11 +00:00
Brandon Seltenrich (BRSE) ab5a5e0997 [IMP] barcode: update barcode operations doc
closes odoo/documentation#7164

X-original-commit: 30fd7112af
Signed-off-by: Brandon Seltenrich (brse) <brse@odoo.com>
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-12-26 20:37:10 +00:00
Brandon Seltenrich (BRSE) a969aaf498 [IMP] barcode: update transfers scratch doc
closes odoo/documentation#7152

X-original-commit: df58ae965c
Signed-off-by: Brandon Seltenrich (brse) <brse@odoo.com>
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-12-26 19:09:45 +00:00
Prakash Prajapati (ppr) 5be62e15e2 [IMP] payment_providers: activate on-demand (Recurring payments) feature for Razorpay
task-3495914

closes https://github.com/odoo/documentation/pull/6732

closes odoo/documentation#6732

Related: odoo/odoo#143525
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2023-12-24 07:01:15 +00:00
Odoo Translation Bot 2e0df8e810 [I18N] Update translation terms from Transifex 2023-12-24 00:41:04 +01:00
aliya fc363ad00f [IMP] accounting: peppol
task-3613395

closes odoo/documentation#7139

X-original-commit: d88148f3f6
Signed-off-by: Jonathan Castillo (jcs) <jcs@odoo.com>
2023-12-22 21:37:42 +00:00
Lara Martini (larm) 336801a842 [IMP] Recruitmet: updating images and text for 16 version
closes odoo/documentation#7130

X-original-commit: 55600e428d
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-12-22 20:09:01 +00:00
Lara Martini (larm) b7ce6cf74e [IMP] payroll: made targeted edits for 16
closes odoo/documentation#7129

X-original-commit: ec18f20bf5
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-12-22 20:09:00 +00:00
Lara Martini (larm) 0387e3f518 [IMP] employees: larm made targeted edits for 16 and updated pics
closes odoo/documentation#7128

X-original-commit: 5413bd1c5d
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-12-22 20:08:59 +00:00
KC (ksc) d81d63945b [IMP] sales: updated product_images doc about Google API
closes odoo/documentation#7111

X-original-commit: 8167182ae9
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-12-22 20:08:58 +00:00
KC (ksc) 1df1c46ff1 [IMP] sales: updated import products doc for 16
closes odoo/documentation#7110

X-original-commit: ca1554271b
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-12-22 20:08:57 +00:00
Lara Martini (larm) c219ff72c2 [ADD] fleet: new configurations doc
closes odoo/documentation#7096

X-original-commit: 52a2a795a1
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
Co-authored-by: Sam Lieber (sali) <36018073+samueljlieber@users.noreply.github.com>
2023-12-22 20:08:56 +00:00
Ricardo Gomes Rodrigues 6d6e82a158 [IMP] accounting: Deferred revenues and expenses
Update Deferred Revenues and Expenses documentation
following the changes in https://github.com/odoo/enterprise/pull/40902

task-id 3478356

closes odoo/documentation#7142

Signed-off-by: Audrey Vandromme (auva) <auva@odoo.com>
Signed-off-by: Ricardo Gomes Rodrigues (rigr) <rigr@odoo.com>
2023-12-22 18:42:25 +00:00
Nicolas Viseur (vin) 2bffc3d457 [IMP] l10n_au: update documentation
Provides an up-to-date documentation for the Australian localization
(Odoo 17) with all the new and upcoming features in this version.

closes odoo/documentation#6733

Signed-off-by: Jonathan Castillo (jcs) <jcs@odoo.com>
2023-12-22 09:25:40 +00:00
Lara Martini (larm) 3e450bafa6 [IMP] Recruitment: adding new hiring flow doc
closes odoo/documentation#7097

X-original-commit: 6704ff51de
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-12-22 01:22:16 +00:00
tiku-odoo 16fb06757a [IMP] Market Connectors: eBay Marketplace edits
closes odoo/documentation#7081

X-original-commit: 2048c588c4
Signed-off-by: Timothy Kukulka (tiku) <tiku@odoo.com>
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-12-22 01:22:15 +00:00
Jess Rogers (jero) 3411cdb2ae [IMP] crm: update convert leads
closes odoo/documentation#7067

X-original-commit: 88a0b155e5
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
Co-authored-by: ksc-odoo <73958186+ksc-odoo@users.noreply.github.com>
Co-authored-by: hojo-odoo <123424465+hojo-odoo@users.noreply.github.com>
Co-authored-by: Sam Lieber (sali) <36018073+samueljlieber@users.noreply.github.com>
2023-12-22 01:22:14 +00:00
Lara Martini (larm) 6b9ba7f9ed [ADD] Attendances: new documentation needed for flow and configurations
updated section about managers for better flow

closes odoo/documentation#6497

Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
Co-authored-by: jero-odoo <104637850+jero-odoo@users.noreply.github.com>
Co-authored-by: jero-odoo <104637850+jero-odoo@users.noreply.github.com>
2023-12-22 01:22:13 +00:00
KC (ksc) 230461a3e8 [IMP] rental: total update of the doc for the rental app
closes odoo/documentation#6780

Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-12-21 18:36:47 +00:00
Martin Trigaux a4f0e6b9b8 [I18N] *: export saas-16.1 translations
closes odoo/documentation#7072

X-original-commit: 2d4fb6f390
Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
2023-12-21 17:24:59 +00:00
tiku-odoo 4fac976025 [IMP] Misc: Portal User Change Login Initial Commit
closes odoo/documentation#7058

X-original-commit: d423038270
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-12-21 08:00:00 +00:00
KC (ksc) bdc6660120 [IMP] marketing automation: updated testing_running campaign doc for Odoo 16
closes odoo/documentation#7038

X-original-commit: 76fc90dde7
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-12-21 07:59:59 +00:00
KC (ksc) c2c3b912ed [IMP] marketing automation: updated workflow activities for 16
closes odoo/documentation#7027

X-original-commit: 6968e362da
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-12-21 07:59:59 +00:00
tiku-odoo eba685e7d9 [IMP] Productivity: Discuss Getting Started
closes odoo/documentation#7048

X-original-commit: cdd5dbead5
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-12-21 06:49:48 +00:00
KC (ksc) 4ef21b06cd [IMP] marketing automation: update understanding_metrics for 16
closes odoo/documentation#7037

X-original-commit: 70050340fe
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-12-21 06:49:47 +00:00
MaxKeilOdoo 554193a14b [IMP] sales: update win loss report documentation for Odoo 17
closes odoo/documentation#6746

Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
Co-authored-by: Felicia Kuan <feku@odoo.com>
Co-authored-by: jero-odoo <104637850+jero-odoo@users.noreply.github.com>
Co-authored-by: ksc-odoo <73958186+ksc-odoo@users.noreply.github.com>
Co-authored-by: Zachary Straub <zst@odoo.com>
2023-12-21 03:51:39 +00:00
KC (ksc) 6dbaeeb29b [IMP] sales: updated variants doc for v16
closes odoo/documentation#7019

X-original-commit: c2c835c2d6
Signed-off-by: Kevin Scannell (ksc) <ksc@odoo.com>
2023-12-20 23:58:34 +00:00
KC (ksc) cba598cac8 [IMP] social marketing: updated essentials for Odoo 16
closes odoo/documentation#7018

X-original-commit: bddbe0fd45
Signed-off-by: Kevin Scannell (ksc) <ksc@odoo.com>
2023-12-20 23:58:33 +00:00
Valentino f23dcb7d35 [IMP] l10n_br: include electronic invoicing flow
With the addition of l10n_br_edi and l10n_br_edi_sale to the previous modules, now electronic invoices for goods can be created from Odoo.

This PR includes the necessary information to use these new modules - configuration and workflows.

closes odoo/documentation#6877

Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-12-20 22:33:32 +00:00
KC (ksc) e4fd701fd2 made all of BRSE's edits
closes odoo/documentation#7008

X-original-commit: a728ac22dd
Signed-off-by: Kevin Scannell (ksc) <ksc@odoo.com>
2023-12-20 20:28:39 +00:00
Jess Rogers (jero) 5a298f09eb [IMP] crm: create new quotation
closes odoo/documentation#6683

Signed-off-by: Jessica Rogers (jero) <jero@odoo.com>
Co-authored-by: ksc-odoo <73958186+ksc-odoo@users.noreply.github.com>
Co-authored-by: Zachary Straub <zst@odoo.com>
2023-12-20 15:21:32 +00:00
Lara Martini (larm) 5995f3dcce [IMP] Inventory: updated for v16
closes odoo/documentation#6999

X-original-commit: 1c00f06816
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-12-20 06:11:40 +00:00
Lara Martini (larm) 2025434058 [ADD] Payroll: adding new reporting doc
closes odoo/documentation#6993

X-original-commit: fcba53839f
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-12-20 00:28:40 +00:00
Felicious 2cfaf34d9b [FIX] barcode: typo in example
closes odoo/documentation#6976

X-original-commit: 72f93a84ea
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-12-19 20:24:02 +00:00
Julien Castiaux da20d2f5f8 [FIX] deploy: set Content-Security-Policy on static
The Content-Security-Policy[^1] http header was only set on the response
generated by controllers but it was missing from the `/<module>/static/`
route.

It is not strictly necessary to set that header on the responses comming
from that routes as it is not possible to add new static files or edit
existing ones via the interface (not even as admin). Only the developers
and system administrator can access those files.

It is also worth mentionning that using the Odoo internal web server to
deliver static files is suboptimal. Outside of a dev environment, those
files will typically be delivered via a web server[^2] and sysadmins
should configure their web server to set the CSP header on static images.

[^1]: https://developer.mozilla.org/en-US/docs/Web/HTTP/CSP
[^2]: https://www.odoo.com/documentation/master/administration/install/deploy.html#serving-static-files-and-attachments

closes odoo/documentation#6953

X-original-commit: f3f44fe5f2
Related: odoo/odoo#146591
Signed-off-by: Julien Castiaux (juc) <juc@odoo.com>
2023-12-18 23:32:00 +00:00
Julien Castiaux 882a34c2bd [FIX] deploy: nginx forwarded-host with tcp port
Install nginx using the nginx configuration found in the documentation
and changes the `listen` port to 8080. Start Odoo in `--proxy-mode`.

    listen 8080;
    server_name mycompany.odoo.com;
    proxy_set_header X-Forwarded-Host $host;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Proto $scheme;
    proxy_set_header X-Real-IP $remote_addr;
    location / {
            proxy_pass http://127.0.0.1:8069;
    }

Inside your browser, access "http://mycompany.odoo.com:8080" you are
wrongly redirected to "http://mycompany.odoo.com:80".

Odoo uses the `X-Forwarded-Host` http header value to generate new URls,
in this configuration `$host` only contains the domain (=hostname using
the urllib terminology) instead of the domain+port (=netloc). The
variable that contains both the domain and the port is actually
`$http_host`.

closes odoo/documentation#6943

Closes: odoo/odoo#64643
X-original-commit: 09c42c5896
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
Signed-off-by: Julien Castiaux (juc) <juc@odoo.com>
2023-12-18 23:31:59 +00:00
Géry Debongnie 3d4a275196 [IMP] Rework the JavaScript tutorials
This commit rework the entire JavaScript tutorial series with the
following improvements:

-   Each chapter is now designed to be independent, allowing learners to
    follow any chapter without the necessity of completing previous ones.
-   Each chapter has been transformed into a standalone module, enabling
    learners to create small projects from scratch within each chapter.
-   The screenshots/text/code have been updated for Odoo 17.

Currently we have 5 chapters:
- Discover Chapter 1 - Owl Components: This chapter allows to learn the
  Owl framework in the `awesome_owl` module.
- Discover Chapter 2 - Build a dashboard: This chapter allows to grasp
  the basic of the web framework by building a dashboard in the
  `awesome_dashboard` module.
- Master Chapter 1 - Build a clicker game: This chapter allows to grasp
  the web framework by building a clicker game in the `awesome_clicker`
  module.
- Master Chapter 2 - Create a gallery view: This chapter allows to learn
  how to create a new view type. The new view is a gallery of records
  pictures. It can be done in the `awesome_gallery` module.
- Master Chapter 3 - Customize a kanban view: This chapter allows to
  learn to customize a kanban view by implementing a list of customer in
  the side of a kanban view. This can be done in the `awesome_kanban`
  module.

The chapter on creating and customizing fields is deleted for now and
will be completely rewritten in a near future.
The chapter on testing is deleted, how-to guides will be written to
cover this subject.

The solutions for all exercises has been done for v17, the goal by
merging the new tutorial is to have this new branch structure in
`odoo/tutorials`:
- 16.0
- 16.0-solutions
- 17.0
- 17.0-discover-js-framework-solutions
- 17.0-master-odoo-web-framework-solutions
-   master <-- default branch, starting point for all addons
-   master-discover-js-framework-solutions
-   master-master-odoo-web-framework-solutions

closes odoo/documentation#6876

Task-id: 3623595
Signed-off-by: Géry Debongnie <ged@odoo.com>
2023-12-18 23:31:55 +00:00
KC (ksc) 066c662509 [IMP] sales: updated entire invoicing based on milestones doc
closes odoo/documentation#6967

X-original-commit: d615bc0f6d
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-12-17 19:03:20 +00:00
KC (ksc) 613420f55e [IMP] sales: updated Amazon Connector setup doc for 16
closes odoo/documentation#6961

X-original-commit: 5233e05676
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
Co-authored-by: dalaOdoo <dala@odoo.com>
Co-authored-by: Demesmaeker <edm@odoo.com>
Co-authored-by: meng-odoo <meng@odoo.com>
Co-authored-by: brse-odoo <brse@odoo.com>
Co-authored-by: StraubCreative <zst@odoo.com>
2023-12-17 00:27:47 +00:00
Odoo Translation Bot ea2145960b [I18N] Update translation terms from Transifex 2023-12-17 00:40:42 +01:00
Brandon Seltenrich (BRSE) 8b6e7a0323 [FIX] barcode: fix default delay number
closes odoo/documentation#6959

X-original-commit: 18aad6d5f2
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-12-16 21:36:18 +00:00
masi-odoo 74d5918ff3 [IMP] l10n_cl: Electronic Invoicing eCommerce and POS
Adding the new functionality for V17 which let's the end client to decide the electronic document to be generated for their eCommerce purchase.

Photo folder: https://drive.google.com/drive/folders/17zrIsuhZ2IAWX6X30IJ1HdFF0531gB3_

closes odoo/documentation#6408

Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-12-15 01:35:55 +00:00
Tom Aarab (toaa) b9a40d117e fw port
closes odoo/documentation#6915

Signed-off-by: Tom Aarab (toaa) <toaa@odoo.com>
2023-12-14 17:57:01 +00:00
Lara Martini (larm) a08970722b [ADD] Payroll: adding detailed payslips doc
closes odoo/documentation#6929

X-original-commit: 9486fe5b62
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
Co-authored-by: meng-odoo <101904966+meng-odoo@users.noreply.github.com>
Co-authored-by: ksc-odoo <ksc@odoo.com>
Co-authored-by: samueljlieber <sali@odoo.com>
Co-authored-by: StraubCreative <zst@odoo.com>
2023-12-14 02:36:40 +00:00
Sam Lieber (sali) feeb8dc18f [IMP] accounting/l10n_mx: additional context
closes odoo/documentation#6894

X-original-commit: 9e7518ff69
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
Signed-off-by: Samuel Lieber (sali) <sali@odoo.com>
Co-authored-by: feav-odoo <feav@odoo.com>
Co-authored-by: toaa-odoo <toaa@odoo.com>
Co-authored-by: larm-odoo <121518652+larm-odoo@users.noreply.github.com>
2023-12-13 17:11:52 +00:00
Maximilien (malb) 97e3173c7c [FIX] accounting: cheat sheet reconcile
Before this commit, when doing the reconciliation of the table present in the
cheat sheet, the second reconciliation was wrong because the "Invoice 1" should
be reconciled with the twos partials payment. This Pr correct that by changing
the find parameter to target the partials also.

closes odoo/documentation#6902

Task: 3633468
X-original-commit: 053fb768e6
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
Signed-off-by: Maximilien La Barre (malb) <malb@odoo.com>
2023-12-13 10:20:45 +00:00
John Holton (hojo) ae77baa7f3 [REF] Inventory: Restructure Inventory scope
closes odoo/documentation#6882

X-original-commit: 59791c252b
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-12-11 21:56:06 +00:00
KC (ksc) fbd85e82ba [IMP] sales: reinvoice expenses to customers
closes odoo/documentation#6825

X-original-commit: a4a9335dd1
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-12-11 20:33:20 +00:00
KC (ksc) e0921f7b6e [IMP] subscriptions: products fix misleading info
closes odoo/documentation#6817

X-original-commit: ff2cabf621
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-12-11 20:33:19 +00:00
Odoo Translation Bot b35f9305c9 [I18N] Update translation terms from Transifex 2023-12-10 00:40:50 +01:00
KC (ksc) 1d61839374 [IMP] sales: updated returns doc for v16
closes odoo/documentation#6866

X-original-commit: 4e85ef01e8
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-12-08 00:08:59 +00:00
KC (ksc) 567b22f30c [IMP] sales: updated pro-forma invoice doc for 16
closes odoo/documentation#6865

X-original-commit: bbbb00e752
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-12-08 00:08:58 +00:00
KC (ksc) f3a4770775 [IMP] sales: updated down payment doc for 16
closes odoo/documentation#6864

X-original-commit: 9fc9c2f52d
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-12-08 00:08:57 +00:00
KC (ksc) 77f1a1fc12 [IMP] sales: update get signature to validate for 16
closes odoo/documentation#6863

X-original-commit: e1bed7ee7c
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-12-08 00:08:56 +00:00
KC (ksc) b9ba63fde0 [IMP] sales: updated optional_products for 16
closes odoo/documentation#6862

X-original-commit: 22d41dc2f3
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-12-08 00:08:55 +00:00
KC (ksc) ed6f2aba4d [IMP] sales: online signature confirmation doc
closes odoo/documentation#6861

X-original-commit: e6a6b9b453
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-12-08 00:08:54 +00:00
KC (ksc) a6d3a8d497 [IMP] sales: fully updated currencies doc
closes odoo/documentation#6860

X-original-commit: 039dba0780
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-12-08 00:08:53 +00:00
KC (ksc) b6964f128e [IMP] sales: updated time_materials for v16
closes odoo/documentation#6859

X-original-commit: 1e2a29338e
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-12-08 00:08:52 +00:00
KC (ksc) d0761052da [ADD] sales: recommend Adobe software, as suggested by JCS
closes odoo/documentation#6752

Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-12-08 00:08:49 +00:00
Ken Geis 54f32b3df6 [FIX] developer/mixins: fix typo in XMLID
closes odoo/documentation#6801

Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2023-12-07 10:08:03 +00:00
KC (ksc) 1cffbdfa5b [IMP] sales: update orders and variants for 16
closes odoo/documentation#6809

X-original-commit: af7c7afa34
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-12-07 02:23:56 +00:00
Zachary Straub (ZST) 675eaa8068 [IMP] sales: update quote_template for 16
closes odoo/documentation#6786

X-original-commit: f9013a6309
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-12-07 00:33:54 +00:00
Julien Castiaux 2d749c3134 [FIX] administration/install: wkhtmltopdf 0.12.6
Official packages for wkhtmltopdf 0.12.5 are no more released since the
release of wkhtmltopdf 0.12.6 in 2020. Debian 10 "Buster" and Ubuntu
20.04 "Focal" were the last system for which 0.12.5 was built[^1].
Installing 0.12.5 on a Ubuntu 22.04 "Jammy" (using the Focal package)
fails for outdated dependencies.

Official packages for wkhtmltopdf 0.12.6 are published on another
repository[^2] than 0.12.5 used to, it includes packages for 0.12.6 for
both Debian 11 "Bullseye" and Ubuntu 22.04 "Jammy". Version 0.12.6.1-r3
is compatible out-of-the-box with Odoo and has been used by runbot to
test all 16.x, 17.x and master branches for the past month.

This work makes it official that [wkhtmltopdf 0.12.6.1-r3] must be used
for Odoo 16.0 and onward.

[^1]: https://github.com/wkhtmltopdf/wkhtmltopdf/releases/tag/0.12.5
[^2]: https://github.com/wkhtmltopdf/packaging/releases
[wkhtmltopdf 0.12.6.1-r3]: https://github.com/wkhtmltopdf/packaging/releases/tag/0.12.6.1-3

closes odoo/documentation#6799

X-original-commit: e5d77ee285
Signed-off-by: Julien Castiaux (juc) <juc@odoo.com>
2023-12-06 17:27:45 +00:00
“Chiara c605694f0b [IMP] accounting: followup screenshot
taskid-3614885

closes odoo/documentation#6793

X-original-commit: 27a307cb0c
Signed-off-by: Chiara Prattico (chpr) <chpr@odoo.com>
2023-12-06 12:42:25 +00:00
william-andre bf87dbeccb [FIX] install: do not create superuser for postgres
The preferred/safe way of running Odoo is with a standard user, with
only the right to create a database.
See https://github.com/odoo/odoo/commit/b6b73551dbbb3079f043920f21554b945fa4870e

closes odoo/documentation#6768

X-original-commit: df8114e591
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
Signed-off-by: William André (wan) <wan@odoo.com>
2023-12-06 08:20:12 +00:00
Donatienne (dopi) 68fcd62330 [IMP] Website: Unsplash documentation updated
task-3498880

closes odoo/documentation#6767

X-original-commit: 88f546f2a9
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
2023-12-06 08:20:11 +00:00
Jess Rogers (jero) 2b0059937a [IMP] crm: update plan activities
closes odoo/documentation#6776

X-original-commit: e4aee350b8
Signed-off-by: Samuel Lieber (sali) <sali@odoo.com>
Co-authored-by: Timothy Kukulka <91896312+tiku-odoo@users.noreply.github.com>
Co-authored-by: ksc-odoo <73958186+ksc-odoo@users.noreply.github.com>
Co-authored-by: Sam Lieber (sali) <36018073+samueljlieber@users.noreply.github.com>
Co-authored-by: Zachary Straub <zst@odoo.com>
2023-12-05 22:40:47 +00:00
Loredana Perazzo e24c83a0a1 [IMP] pos: remove duplicate of set customer and update sections accordingly
task-3366190

closes odoo/documentation#6667

X-original-commit: 4118cb9bf9
Signed-off-by: Loredana Perazzo (lrpz) <lrpz@odoo.com>
2023-12-04 11:58:14 +00:00
Julien Castiaux e28bed32d0 [IMP] developer/reference/cli: --proxy-mode
Many customers struggle with their web server configuration, notably
regarding the `--proxy-mode` option and the way `X-Forwarded-*` HTTP
request headers are interpreted within Odoo.

The `--proxy-mode` section has been updated to cover the most common
misunderstandings and to give guidances on how to setup a web server.

Odoo always only takes the last entry of the `X-Forwarded-*` request
header because there are situations where it is not possible to
determine which last n-th entry to use. Employees might access their
odoo database via the internal network: connecting directly to nginx,
while customers might access the database via an additional proxy such
as cloudflare. The real IP of employees would be the last inside the
`X-Forwarded-For` chain, while the real IP of customers would be the
*second* last entry inside the chain. It would be incorrect to always
take the same nth last entry inside the chain. The cloudflare's own IP
address must be discarded from the chain. Web servers usually feature
a way to ignore trusted IP from the chain, a way so that the real IP
of the user is always the last entry inside the chain. Odoo relies on
such feature to be active and configured.

Prior discussions about `X-Forwarded-For`:
* odoo/odoo#104947
* odoo/odoo#118629
* odoo/odoo#139536

All `X-Forwarded-*` headers are ignored in case the `X-Forwarded-Host`
header is missing (even with `--proxy-mode`). System admin might be
tempted to not set this header and to set `Host` instead, this is
broken as this a user-agent would be able to spoof `X-Forwarded-Host`
and Odoo would use that instead of the correct `Host`.

Prior discussions about `X-Forwarded-Host`:
* odoo/odoo#63277
* odoo/odoo#70117

closes odoo/documentation#6743

X-original-commit: 3d91c57b57
Signed-off-by: Julien Castiaux (juc) <juc@odoo.com>
2023-12-03 08:26:32 +00:00
Odoo Translation Bot 533f7f884c [I18N] Update translation terms from Transifex 2023-12-03 00:41:06 +01:00
Tom Aarab (toaa) b188381b70 [IMP] accounting: checks
Update screenshots for 16.4 and up. Forward to master.

taskid-3614814

closes odoo/documentation#6710

X-original-commit: 639a56fc5c
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
Signed-off-by: Tom Aarab (toaa) <toaa@odoo.com>
2023-12-01 18:14:14 +00:00
Martin Trigaux 8ba87a67ce [I18N] *: export 17.0 translations
closes odoo/documentation#6727

Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
2023-11-30 19:55:12 +00:00
Martin Trigaux 1a44524ab5 [FIX] applications: fix typo
Part-of: odoo/documentation#6727
2023-11-30 19:55:12 +00:00
Marion (masp) 8ecbd48796 [FIX] Website: pages.rst menu bug
fixes bug introduced with https://github.com/odoo/documentation/pull/5307

closes odoo/documentation#6720

X-original-commit: 53cc4aacb5
Signed-off-by: Jonathan Castillo (jcs) <jcs@odoo.com>
2023-11-30 18:37:59 +00:00
John Holton (hojo) 51b98a71d4 [ADD] Quality: Take a Picture Check
closes odoo/documentation#6715

X-original-commit: 2e605c9ec8
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-11-30 17:30:23 +00:00
“Audrey 61cad6cd0d [ADD] website: mail groups
task-2845181

closes odoo/documentation#6705

X-original-commit: 25bc655cfa
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
Signed-off-by: Audrey Vandromme (auva) <auva@odoo.com>
2023-11-30 10:13:21 +00:00
Raphael Collet 2662fa5437 [IMP] core: add SQL wrapper
This completes https://github.com/odoo/odoo/pull/134677.

closes odoo/documentation#6674

Signed-off-by: Raphael Collet <rco@odoo.com>
2023-11-30 07:37:10 +00:00
Marion (masp) ebc80297af [IMP] Contributing: typo seealso admonition
closes odoo/documentation#6642

X-original-commit: 70d5a55909
Signed-off-by: Marion Spindler (masp) <masp@odoo.com>
2023-11-30 07:37:06 +00:00
Felicious b44913931d [IMP] barcode: add zebra scanner section
add more figures

closes odoo/documentation#6601

X-original-commit: 56cda37610
Signed-off-by: Felicia Kuan (feku) <feku@odoo.com>
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
Co-authored-by: hojo-odoo <123424465+hojo-odoo@users.noreply.github.com>
Co-authored-by: ksc-odoo <73958186+ksc-odoo@users.noreply.github.com>
Co-authored-by: Zachary Straub <zst@odoo.com>
2023-11-28 21:21:01 +00:00
Sam Lieber (sali) be835f7493 [IMP] accounting/l10n_co: additional context
closes odoo/documentation#6690

X-original-commit: 6045a60dd5
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
Signed-off-by: Samuel Lieber (sali) <sali@odoo.com>
Co-authored-by: dade-odoo <87431108+dade-odoo@users.noreply.github.com>
Co-authored-by: larm-odoo <121518652+larm-odoo@users.noreply.github.com>
2023-11-28 17:28:48 +00:00
Jess Rogers (jero) 11076c8cdd [IMP] crm: update manage lost opps
closes odoo/documentation#6681

X-original-commit: 21f0ad60f8
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
Co-authored-by: ksc-odoo <73958186+ksc-odoo@users.noreply.github.com>
Co-authored-by: brse-odoo <brse@odoo.com>
Co-authored-by: Sam Lieber (sali) <36018073+samueljlieber@users.noreply.github.com>
2023-11-28 17:28:47 +00:00
Donatienne (dopi) 23b88dbff5 [IMP] documents: new features
task-3433587

closes odoo/documentation#6672

X-original-commit: 2ba79f54a5
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
2023-11-28 00:31:04 +00:00
Samuel Degueldre 8e3008f06a [FIX] developer: remove confusing section about starting services
When writing the documentation page for standalone Owl apps, it was
originally required to create the env and start the services manually,
and then mount the application by giving it a bunch of configuration
parameters. During review, it was noted that this was error prone and
confusing, and as such a corresponding PR added a helper to mount the
application without needing to do much by hand. While the code was
adapted in the documentation that was merged, the text still referred to
starting the services and creating the environment which is no longer
necessary.

This commit removes references to those things, and because the
resulting section is very small and not very interesting it has been
merged into the previous section.

closes odoo/documentation#6669

Signed-off-by: Samuel Degueldre (sad) <sad@odoo.com>
2023-11-27 21:39:19 +00:00
Donatienne (dopi) d337b38433 [IMP] sign: update for 16.0
task-3433578

closes odoo/documentation#6661

X-original-commit: 71446b0668
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
2023-11-27 09:51:07 +00:00
Xavier (XPL) c9affa54a8 [IMP] reporting: improve grammar and remove image centering
closes odoo/documentation#6653

X-original-commit: 3ead6e0f99
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
2023-11-25 04:36:03 +00:00
“Chiara 1860805474 [IMP] accounting: branch management in main page
taskid-3609491

closes odoo/documentation#6646

X-original-commit: eafe834cf4
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
2023-11-25 04:36:02 +00:00
“Chiara 8025fdd915 [IMP] accounting: peppol changes
taskid-3450738

closes odoo/documentation#6634

X-original-commit: 4728e6db23
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
2023-11-24 11:17:02 +00:00
Xavier (XPL) ae08218516 [IMP] outlook: remove note about multi-user sync spam
task-3575806

closes odoo/documentation#6625

X-original-commit: b4302e4023
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
2023-11-24 08:52:34 +00:00
Xavier (XPL) 25a7492e74 [FIX] accounting: update link to getting started video tutorial
task-3608613

closes odoo/documentation#6614

X-original-commit: c0653112a1
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
2023-11-24 08:52:33 +00:00
Claire Bretton (clbr) 32517aa638 [FIX] getting_started: remove useless lambda
The lambda function here is useless and makes newdooers think
they need to use it everytime.
`default=fields.Date.add(fields.Date.today(), months=3))`
should do the trick, no lambda involved.

closes odoo/documentation#6631

X-original-commit: 620508fb29
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
Signed-off-by: Claire Bretton (clbr) <clbr@odoo.com>
2023-11-24 06:53:31 +00:00
Claire Bretton (clbr) e8106a55c4 [FIX] getting_started: invalid addons-path
The "../technical-training-sandbox" is added too early in the path since
its still empty, and results into an "invalid addons-path" error.

X-original-commit: 8707609b38
Part-of: odoo/documentation#6631
2023-11-24 06:53:31 +00:00
Felicious 05da049af4 [ADD] inventory: cluster picking
closes odoo/documentation#6591

X-original-commit: 32900efbb9
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
Co-authored-by: hojo-odoo <123424465+hojo-odoo@users.noreply.github.com>
Co-authored-by: ksc-odoo <73958186+ksc-odoo@users.noreply.github.com>
Co-authored-by: meng-odoo <101904966+meng-odoo@users.noreply.github.com>
2023-11-24 06:53:30 +00:00
Xavier (XPL) 4d48d1dfa6 [IMP] paypal: add note about supported currencies
task-3608056

closes odoo/documentation#6571

X-original-commit: 5f1881a88a
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
2023-11-23 08:52:05 +00:00
Felicious 3da8280f33 [IMP] inventory: update delivery methods from 12 to 16
closes odoo/documentation#6602

X-original-commit: 4e2b634a50
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
Co-authored-by: hojo-odoo <123424465+hojo-odoo@users.noreply.github.com>
Co-authored-by: Zachary Straub <zst@odoo.com>
2023-11-23 07:40:03 +00:00
KC (ksc) ccf0b02713 [IMP] sales: updated deadline doc for 16
closes odoo/documentation#6584

X-original-commit: 75c24e7e88
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-11-23 07:40:03 +00:00
John Holton (hojo) 37e10a53d9 [ADD] Quality: Measure quality check
closes odoo/documentation#6578

X-original-commit: 78713f1637
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-11-23 07:40:02 +00:00
Xavier (XPL) b50ca9703a [IMP] upgrade: add note on bank synch neutralization
task-3605690

closes odoo/documentation#6562

X-original-commit: dc48273e7e
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
2023-11-22 18:12:41 +00:00
Donatienne (dopi) 01d5b97ee0 [IMP] website: use plausible.io servers and account
This addition explains how to create and connect an existing plausible.io account in Odoo.

task-3540753

closes odoo/documentation#6545

X-original-commit: cd11937f43
Signed-off-by: Jonathan Castillo (jcs) <jcs@odoo.com>
2023-11-22 07:43:09 +00:00
John Holton (hojo) ff6f914a09 [ADD] Quality: Pass - Fail quality checks
closes odoo/documentation#6551

X-original-commit: 1a11e3c35c
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-11-22 04:35:20 +00:00
Jess Rogers (jero) 2459ad79b9 [REM] crm: google spreadsheet integration
closes odoo/documentation#6537

X-original-commit: a11fa7e5b2
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
Signed-off-by: Jessica Rogers (jero) <jero@odoo.com>
2023-11-22 00:46:20 +00:00
Jonathan Castillo (jcs) 386a3a9e10 [IMP] sales: add link to OQT - PDF quote video
This commit adds a seealso section in the intro of the PDF quote builder
doc, with a link to the related Odoo Quick Tips video.

closes odoo/documentation#6534

Signed-off-by: Jonathan Castillo (jcs) <jcs@odoo.com>
2023-11-22 00:46:15 +00:00
Xavier (XPL) 4fff23c50e [FIX] payroll: add missing show-content metadata
Without the :show-content: metadata markup, it is not possible to open the
page by navigating from the toctree.

closes odoo/documentation#6531

X-original-commit: 16e339a7a3
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
2023-11-21 23:24:02 +00:00
Samuel Degueldre 1fc36ffa82 [IMP] developer: document how to create standalone owl apps
Since we've introduced Owl, developers want more and more to create
standalone Owl applications outside of the webclient. This commit
introduces a How-to for doing just that.

task-3580007

closes odoo/documentation#6493

Related: odoo/odoo#142498
Signed-off-by: Samuel Degueldre (sad) <sad@odoo.com>
2023-11-21 20:06:45 +00:00
Rémy Voet (ryv) 01625aa661 [FIX] performance: change example with the new _read_group
closes odoo/documentation#6459

Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2023-11-21 14:33:44 +00:00
Mathieu (mano) 80aa3b74dc [IMP] odoo_theme: toctrees-l1,l2 design improvement
Issue 1:
========
The toctrees in the documentation are visually inconsistent because of
the content. Sometimes we have titles that are also links and visually
collides with the rest of the toc making it hard to read. This applies
to toctree-l1 and toctree-l2.

Fix 1:
========
When we have a link and title toctree-l2 in a list containing other
nested toc, we apply another styling displaying it with the same color
as a title, but with an icon and hover behavior indicating that it is a
link. (This commit also changes the direction of the i-link icon to make
it standard).

Issue 2:
========
When we have only have toctree-l1 links without nested toc the toctree
is uselessly taking a lot of space.

Fix: 2
========

In these scenario we add a class to the toctree wrapper to replace the
toctree-l1 style with a toctree-l2.

task-3138525
task-3138563

part of

task-3059178

closes odoo/documentation#6511

X-original-commit: c62bf21987
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2023-11-21 12:56:56 +00:00
Rémi Rahir (rar) 9be2b43adb [FIX] dev/reference: Fix external reference
The tour utils were red and moved in Odoo (odoo/odoo#107618).

closes odoo/documentation#6514

X-original-commit: 1746c57ff4
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
Signed-off-by: Rémi Rahir (rar) <rar@odoo.com>
2023-11-20 11:13:29 +00:00
Felicious e946be6abd [IMP] barcode: split docs + hone in on language
closes odoo/documentation#6519

X-original-commit: 9081e45aab
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
Co-authored-by: Sam Lieber (sali) <36018073+samueljlieber@users.noreply.github.com>
Co-authored-by: brse-odoo <brse@odoo.com>
Co-authored-by: Zachary Straub <zst@odoo.com>
2023-11-20 01:14:04 +00:00
oco-odoo a70677317a [IMP] accounting: new tag selector for custom reports
https://github.com/odoo/enterprise/commit/0c0cf8ebc943a8dc2d9bdd952dc7b5c2dabbd60a
added a new way to select accounts in the account_codes engine. This
commit adds some explanation in the doc on how to use this new syntax.

closes odoo/documentation#6507

X-original-commit: 1a32165180
Signed-off-by: Jonathan Castillo (jcs) <jcs@odoo.com>
2023-11-20 01:14:02 +00:00
John Holton (hojo) d7218a2d75 [ADD] MRP: Three-step manufacturing
closes odoo/documentation#5163

closes odoo/documentation#6489

X-original-commit: 5689f7cf22
Signed-off-by: John Holton (hojo) <hojo@odoo.com>
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-11-20 01:13:56 +00:00
John Holton (hojo) 507c4a07e1 [ADD] MRP: One-step manufacturing
closes odoo/documentation#6469

X-original-commit: 9c0982371a
Signed-off-by: John Holton (hojo) <hojo@odoo.com>
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-11-16 01:20:31 +00:00
Felicious f92a81d051 [IMP] inventory: expand on accounting and math
closes odoo/documentation#6481

X-original-commit: 9761eb44dc
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
Co-authored-by: toaa <104567387+toaa-odoo@users.noreply.github.com>
Co-authored-by: meng-odoo <101904966+meng-odoo@users.noreply.github.com>
2023-11-15 23:51:15 +00:00
tiku-odoo e5ee15e20d [IMP] Productivity: Outlook Plugin edits
closes odoo/documentation#6482

X-original-commit: 71aabb2618
Signed-off-by: Timothy Kukulka (tiku) <tiku@odoo.com>
2023-11-15 21:07:21 +00:00
Rémy Voet (ryv) 5070f160ed [IMP] orm: update changelog
closes odoo/documentation#6464

X-original-commit: f1960a250c
Signed-off-by: Rémy Voet (ryv) <ryv@odoo.com>
2023-11-15 12:34:28 +00:00
Yaroslav Soroko (yaso) 52b86aab37 [IMP] Pos: iot six module part added to the six doc
This PR adds the documentation for a new Pos IoT Six module which will
soon replace the old Six module.

task-3555605

closes odoo/documentation#6439

X-original-commit: bc98b8c491
Signed-off-by: Yaroslav Soroko (yaso) <yaso@odoo.com>
Co-authored-by: Yaroslav Soroko (yaso) <yaso@odoo.com>
Co-authored-by: Loredana Perazzo <lrpz@odoo.com>
2023-11-14 16:35:03 +00:00
John Holton (hojo) ae1ad46925 [ADD] Quality: Instructions quality check
closes odoo/documentation#6453

X-original-commit: f0b895fdb2
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-11-14 03:13:49 +00:00
Felicious ee93bc9d9d [IMP] inventory: fwport removal strategy
closes odoo/documentation#6448

X-original-commit: ba34f754ce
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-11-14 03:13:48 +00:00
Sam Lieber (sali) 0336359c57 [IMP] tests: make review UX and resource files
closes odoo/documentation#6433

X-original-commit: 25e204adcd
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
Signed-off-by: Samuel Lieber (sali) <sali@odoo.com>
Co-authored-by: Antoine Vandevenne (anv) <anv@odoo.com>
2023-11-13 19:03:36 +00:00
John Holton (hojo) 5d840a56d7 [ADD] MRP: Two-step manufacturing
closes odoo/documentation#6401

X-original-commit: 0241c9dd05
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-11-13 19:03:31 +00:00
John Holton (hojo) b09c1e045e [ADD] Inventory: Use locations to manage inventory
closes odoo/documentation#6422

X-original-commit: 889e95037d
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-11-11 18:47:20 +00:00
KC (ksc) f938a012ad [IMP] sales: complete rewrite for pricing doc
closes odoo/documentation#6414

X-original-commit: a113d83fea
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-11-11 18:47:19 +00:00
Loredana Perazzo 787ec0f787 [IMP] pos: add warning to not buy a terminal from amazon
closes odoo/documentation#6390

Taskid: 3284737
X-original-commit: f0495a9bc9
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
2023-11-09 12:27:47 +00:00
John Holton (hojo) 7cb346fbb1 [ADD] MRP: Work order dependencies
closes odoo/documentation#6379

X-original-commit: a1e7445ae3
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-11-09 03:52:53 +00:00
Felicious 5e579431e1 [IMP] inventory: rewrite lead times, add images
closes odoo/documentation#6359

X-original-commit: 3d5badcc82
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
Co-authored-by: brse-odoo <brse@odoo.com>
Co-authored-by: ksc-odoo <73958186+ksc-odoo@users.noreply.github.com>
2023-11-09 03:52:53 +00:00
John Holton (hojo) 1a353a6b91 [ADD] Inventory: Add Scrap inventory
closes odoo/documentation#6374

X-original-commit: 0e6576cc3d
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-11-09 02:52:28 +00:00
Sam Lieber (sali) 17885d893e [FW][ADD] MRP: Shop Floor Overview
closes odoo/documentation#6334

X-original-commit: cd88165
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
Co-authored-by: hojo-odoo <hojo@odoo.com>
2023-11-09 01:24:00 +00:00
Martin Trigaux f13d8b52fc [I18N] *: export 17.0 translations
closes odoo/documentation#6352

Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
2023-11-08 10:05:16 +00:00
tiku-odoo 7f69acd5aa [ADD] IoT: OPC-UA Protocol
closes odoo/documentation#6350

X-original-commit: 4d2a3101ad
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-11-08 10:05:15 +00:00
John Holton (hojo) 66414a765e [ADD] MRP: Add Split and merge manufacturing orders
closes odoo/documentation#6340

X-original-commit: 83873dbd71
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-11-08 10:05:14 +00:00
Louis Baudoux 1c0678a99a [IMP] iap: move from first-person to second-person writing
For some reason, the first-person was used throughout the IAP
documentation, and quite inconsistently.
As the rest of the documentation is using second-person writing, IAP
should be no exception.

closes odoo/documentation#6327

X-original-commit: df474342ba
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
Signed-off-by: Louis Baudoux (lba) <lba@odoo.com>
2023-11-08 05:31:15 +00:00
Louis Baudoux b237af1ba8 [IMP] iap: remove documentation related to IAP services creation
It has been decided to remove the possibility for our users to create
their own IAP services.
This decision was motivated by the fact that, in the 5 years of
existence of IAP, very few non-Odoo services have been created and
actively used by our customers.

X-original-commit: 282f041ed1
Part-of: odoo/documentation#6327
2023-11-08 05:31:15 +00:00
KC (ksc) 03cf50013a [IMP] sales: minor adjustment to dynamic text portion of PDF builder
closes odoo/documentation#6322

Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-11-08 05:31:13 +00:00
Nathan Marotte (nama) 9ab09aa0a5 [IMP] upgrade: overhaul upgrade doc
closes odoo/documentation#6320

X-original-commit: 41aebc3b05
Signed-off-by: Nathan Marotte (nama) <nama@odoo.com>
2023-11-08 04:09:48 +00:00
Antoine Vandevenne (anv) 255b3b2651 [IMP] supported_versions: release 17.0
closes odoo/documentation#6313

X-original-commit: 2c805d9813
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2023-11-08 04:09:45 +00:00
Felicious 07bb9ec349 [ADD] PLM: ECO approvals doc
closes odoo/documentation#6303

X-original-commit: 907e1ba854
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
Co-authored-by: hojo-odoo <123424465+hojo-odoo@users.noreply.github.com>
Co-authored-by: ksc-odoo <73958186+ksc-odoo@users.noreply.github.com>
Co-authored-by: Zachary Straub (zst) <zst@odoo.com>
2023-11-07 02:24:49 +00:00
Sam Lieber (sali) 717b45bf56 [IMP] l10n: Chile new features
closes odoo/documentation#6256

X-original-commit: eff8e9d915
Signed-off-by: Samuel Lieber (sali) <sali@odoo.com>
Co-authored-by: masi-odoo <masi@odoo.com>
Co-authored-by: StraubCreative <zst@odoo.com>
Co-authored-by: larm-odoo <121518652+larm-odoo@users.noreply.github.com>
Co-authored-by: Felicia Kuan <feku@odoo.com>
2023-11-05 18:35:53 +00:00
Felicious 60490b0a7d [ADD] PLM: version control
closes odoo/documentation#6293

Author:    Felicious <feku@odoo.com>
X-original-commit: 6a5c340a26
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-11-04 16:38:55 +00:00
Louis Baudoux 6ce9a014a7 [IMP] extract_api: document the new API version
We have introduced a second version of the Extract API that adds the IAP
account token to the `get_result` and `validate` routes.

There are also other changes in this commit:
 - The deprecated stuff has been removed as it's been deprecated for a
   while and won't be supported anymore in the future.
 - The `status` table of the `get_result` route has been added as it was
   missing for some reason.
 - The documentation regarding the `/validate` routes have been removed
   for security reasons.

closes odoo/documentation#6282

X-original-commit: a8c6272899
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
Signed-off-by: Louis Baudoux (lba) <lba@odoo.com>
2023-11-04 06:43:07 +00:00
Jess Rogers (jero) c4f0e9c11c [IMP] live chat: update ratings doc
closes odoo/documentation#6263

X-original-commit: 7a307320c3
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
Signed-off-by: Jessica Rogers (jero) <jero@odoo.com>
Co-authored-by: larm-odoo <121518652+larm-odoo@users.noreply.github.com>
2023-11-04 00:38:27 +00:00
KC (ksc) 4fdfda7ddb [ADD] sales: adding pdf quote builder doc for 16/17
closes odoo/documentation#6029

Author:    KC (ksc) <ksc@odoo.com>
Date:      Thu Oct 5 11:29:37 2023 -0700
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
Co-authored-by: meng-odoo <meng@odoo.com>
Co-authored-by: Felicious <feku@odoo.com>
Co-authored-by: Demesmaeker <edm@odoo.com>
Co-authored-by: dalaOdoo <dala@odoo.com>
Co-authored-by: StraubCreative <zst@odoo.com>
2023-11-04 00:38:16 +00:00
Felicious 765d8935d4 [ADD] PLM: engineering change order
closes odoo/documentation#6272

X-original-commit: fc9bbb7d22
Signed-off-by: Felicia Kuan (feku) <feku@odoo.com>
Co-authored-by: hojo-odoo <123424465+hojo-odoo@users.noreply.github.com>
Co-authored-by: Sho Ketchum <96748231+odoo-shke@users.noreply.github.com>
Co-authored-by: ksc-odoo <73958186+ksc-odoo@users.noreply.github.com>
Co-authored-by: Zachary Straub <zst@odoo.com>
2023-11-02 18:23:13 +00:00
Rémy Voet (ryv) 6cb55a5cce [FIX] developer: fix bad documentation of --unaccent
In the CLI, `--unaccent` try to enable PostgreSQL unaccent extention
when odoo is responsible to create new database(s).

closes odoo/documentation#6244

X-original-commit: 1639d22efd
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
Signed-off-by: Rémy Voet (ryv) <ryv@odoo.com>
2023-10-31 07:11:43 +00:00
Martin Trigaux fd7d95f707 [IMP] *: export translations
closes odoo/documentation#6248

X-original-commit: bb4210cdbd
Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
2023-10-30 09:01:02 +00:00
Tom Aarab (toaa) ffe569a625 [IMP] accounting: reconciliation
Updated screenshots and typos for 16.3

Forward to 16.4:
- Change: Dashboard links are improved, and audit features can be found
  in the journal items view.

closes odoo/documentation#6233

X-original-commit: a31bcec3ba
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
2023-10-27 21:36:43 +00:00
Tom Aarab (toaa) 077b7a577f [IMP] silverfin: API key
Added a note to make it clearer that for fiduciaries, a single API key
is valid for all databases linked to the user.

taskid-3570700

closes odoo/documentation#6230

X-original-commit: 323d3563c9
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
Signed-off-by: Tom Aarab (toaa) <toaa@odoo.com>
2023-10-27 16:09:42 +00:00
Christophe Monniez 9d94d155fd [REL] 17.0 2023-10-26 19:39:29 +00:00
Sven Fuehr 38532cb046 [ADD] finance/fiscal_localization: Austria (i.e. SAF-T export)
This commit adds the (currently missing) documentation for the
Austrian fiscal localization.

It i.e. includes information about the new SAF-T export for Austria.

closes odoo/documentation#5859

Related: odoo/odoo#135485
Related: odoo/enterprise#47405
Signed-off-by: Sven Führ (svfu) <svfu@odoo.com>
2023-10-26 12:10:13 +00:00
Martin Trigaux ff23483846 [FIX] developer: adapt markup documentation
On how to combine Markup and translations
Note that this does not work before 17.0

closes odoo/documentation#6189

Related: odoo/odoo#139316
Related: odoo/enterprise#49379
Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
2023-10-24 21:10:00 +00:00
Mathieu Duckerts-Antoine ae05fe478d [FIX] search panel: fix bad indentation
closes odoo/documentation#6204

X-original-commit: 82055c1f15
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2023-10-24 13:55:29 +00:00
lman-odoo 93dc1e87bd [FIX] Localization-Peru: duplicated words
closes odoo/documentation#6200

X-original-commit: 4abe6da354
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
2023-10-24 07:14:47 +00:00
Lara Martini (larm) f56b59d952 [IMP] employees: making targeted edits for v15 and updating images
closes odoo/documentation#6187

X-original-commit: a819e91c7b
Signed-off-by: Samuel Lieber (sali) <sali@odoo.com>
2023-10-20 16:20:46 +00:00
tiku-odoo 35ed4e9f7b [IMP] Maintain/Productivity: Azure Name Change
closes odoo/documentation#6180

X-original-commit: b65dd60b25
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-10-19 04:31:57 +00:00
lman-odoo d0fada27d6 [FIX] partner_autocomplete: fix a typo
closes odoo/documentation#6178

X-original-commit: e24e708a14
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-10-19 04:31:56 +00:00
Lara Martini (larm) 664fc9db53 [ADD] payroll: adding new work entries doc
closes odoo/documentation#6147

X-original-commit: d349cf7bb1
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-10-19 04:31:54 +00:00
“Audrey 99503b59ba [FIX] Studio: New button in Reports
closes odoo/documentation#6166

X-original-commit: f9db244a85
Signed-off-by: Audrey Vandromme (auva) <auva@odoo.com>
2023-10-18 16:52:04 +00:00
Loredana Perazzo 9d4333e29f [IMP] pos: update content of the pricelists page
task-3005170

closes odoo/documentation#6161

X-original-commit: 5086943de0
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
Signed-off-by: Loredana Perazzo (lrpz) <lrpz@odoo.com>
2023-10-18 12:05:24 +00:00
Louis Baudoux 13fe8cb8cc [IMP] iap: document account deactivation
A new way to disable IAP accounts has been introduced recently.

This feature is mostly used in neutralization scripts to prevent
customers from accidentaly consuming their credits on their
staging/testing databases.

Documenting it will help users re-enable their accounts if they still
wish to use it in a testing environment.

closes odoo/documentation#6139

X-original-commit: fa604a95b0
Signed-off-by: Louis Baudoux (lba) <lba@odoo.com>
2023-10-17 08:53:17 +00:00
Lara Martini (larm) 9f04099859 [ADD] Recruitment: add new job position
Co-authored by: hojo-odoo <hojo@odoo.com>
Co-authored by: StraubCreative <zst@odoo.com>

closes odoo/documentation#6155

X-original-commit: 8e7fd152ac
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-10-17 06:25:13 +00:00
Stan (stgu) cbcfb4b36f [IMP] howtos/translations: text & tips
Remove parenthesis around a term that's fairly straightforward to
understand and later used as a title Add a much-needed point.

closes odoo/documentation#6126

X-original-commit: 6f3ed657fc
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
Signed-off-by: Stanislas Gueniffey (stgu) <stgu@odoo.com>
2023-10-17 01:48:10 +00:00
Xavier (XPL) c0abb05561 [IMP] l10n: clarify which BE FDM is supported
task-3552761

closes odoo/documentation#6131

X-original-commit: d2124b9e68
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
2023-10-16 13:11:14 +00:00
Donatienne (dopi) 3c6ee6de79 [ADD] to-do: create main page
task-3193463

closes odoo/documentation#6119

X-original-commit: 1381f9d391
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
2023-10-12 17:20:45 +00:00
Martin Trigaux 23d4f4b901 [IMP] administration: add instructions to enable HSTS
closes odoo/documentation#6086

X-original-commit: 6a2725e604
Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
2023-10-12 16:12:12 +00:00
Michael (mcm) 82fdeb62b5 [IMP] calendar view: update attributes
This commit renames the calendar attribute "quick_add" to "quick_create"
and adds the attribute "quick_create_view_id".

closes odoo/documentation#6105

Signed-off-by: Victor Feyens (vfe) <vfe@odoo.com>
2023-10-12 09:49:47 +00:00
Jolien 5e3df90dcb [FIX] SMS-MARKETING: Fix typo on SMS essentials page
closes odoo/documentation#6093

X-original-commit: 221464545f
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-10-12 06:01:44 +00:00
Jolien d3f393c229 [FIX] EMAIL TEMPLATES: fix typo
closes odoo/documentation#6103

X-original-commit: a5272c2845
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-10-12 01:17:50 +00:00
Jolien 11dc95e4a2 [FIX] events: fix some typos on Essentials page
closes odoo/documentation#6102

X-original-commit: ab05778363
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-10-12 01:17:50 +00:00
Lara Martini (larm) c01a53557c [ADD] payroll: adding new contract doc
closes odoo/documentation#6113

X-original-commit: d1ce712814
Signed-off-by: Lara Martini (larm) <larm@odoo.com>
2023-10-11 18:03:36 +00:00
John Holton (hojo) 046c7726a0 [ADD] Manufacturing: Configure product for manufacturing
closes odoo/documentation#6058

X-original-commit: c254c6fa05
Signed-off-by: John Holton (hojo) <hojo@odoo.com>
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-10-11 05:51:45 +00:00
Martin Trigaux 1e9f3ce240 [I18N] *: export translations
closes odoo/documentation#6081

X-original-commit: a2bbd060ed
Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
2023-10-10 09:42:18 +00:00
Loan (LSE) 7435b5ec7b [IMP] iot: esc-pos ESC * support documentation
Documentation regarding the fix:
https://github.com/odoo/odoo/pull/126689

opw-3351084,3341907

Authored by: lse-odoo <lse@odoo.com>
Co-authored by: tiku-odoo <tiku@odoo.com>
Co-authored by: Felicious <feku@odoo.com>
Co-authored by: jero-odoo <jero@odoo.com>

closes odoo/documentation#6065

X-original-commit: 974c59f0c7
Signed-off-by: StraubCreative <zst@odoo.com>
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-10-07 19:13:53 +00:00
Christophe Monniez 4f531cf1f1 [IMP] install: bump minimal python version to 3.10
closes odoo/documentation#5940

Related: odoo/odoo#136904
Signed-off-by: Olivier Dony (odo) <odo@odoo.com>
2023-10-06 21:11:53 +00:00
John Holton (hojo) 5e1fa0c599 [ADD] Quality: Quality checks
closes odoo/documentation#5999

X-original-commit: 7a6c0a9247
Signed-off-by: John Holton (hojo) <hojo@odoo.com>
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-10-06 19:59:45 +00:00
XPL 32aeb4ae18 [FIX] localization: kenya typo
closes odoo/documentation#6028

X-original-commit: f7c04b1e35
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
2023-10-06 13:09:00 +00:00
jopa-odoo be0eb00c4b [FIX] helpdesk: remove type on receiving tickets page
closes odoo/documentation#6023

X-original-commit: 590fc79726
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
2023-10-06 13:08:59 +00:00
bve-odoo 4fb64b841c [FIX] azure_oauth: configuration mail server Outlook.
Results of seeing a lot of wrong and missing configuration
on consultancy project for Outlook accounts.

The Multi outgoing mail server is harder to maintain than having
a unique mail server with an Odoo db correctly configured.

Insisting on the mail.default.from (ICP) and the From Filtering
parameters that NEEDS TO BE set up.

task-3512379

[FIX] Maintain: Azure_oauth: configuration mail server Outlook

Co-author-by: tiku-odoo <tiku@odoo.com>
Co-author-by: jqu-odoo <jqu@odoo.com>

Results of seeing a lot of wrong and missing configuration
on consultancy project for Outlook accounts.

The Multi outgoing mail server is harder to maintain than having
a unique mail server with an Odoo db correctly configured.

Insisting on the mail.default.from (ICP) and the From Filtering
parameters that NEEDS TO BE set up.

task-3512379

closes odoo/documentation#6036

X-original-commit: 41b9ba6383
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-10-06 07:12:18 +00:00
Marianna cima 6a49983170 [FIX] marketing automation: correction of a typo in the description of an image
closes odoo/documentation#6022

X-original-commit: 38e00b7c45
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-10-06 07:12:10 +00:00
Larissa 4dbdb44235 [FIX] maintain/bugfix updates: fix typo
closes odoo/documentation#6013

X-original-commit: caf2e69d1f
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
2023-10-06 06:14:11 +00:00
Louis Baudoux f74a99bdf1 [FIX] extract_api: remove bill_reference from expense fields
The bill reference is no longer detected since a few months because it
had poor results and wasn't very useful.

closes odoo/documentation#6012

X-original-commit: cade61dd56
Signed-off-by: Louis Baudoux (lba) <lba@odoo.com>
2023-10-06 06:14:10 +00:00
Louis Baudoux b5c77e129c [REM] extract_api: remove documentation of get_result_batch
For security reasons, we had to drop the support of those routes.

X-original-commit: 24c7b2506e
Part-of: odoo/documentation#6012
2023-10-06 06:14:10 +00:00
Anita (anko) bb82dd3ce8 [IMP] payment_providers: remove IPN section from PayPal
Removing IPN mentions from the documentation.

Community PR: https://github.com/odoo/odoo/pull/104974

closes odoo/documentation#5993

X-original-commit: 3db442acbb
Signed-off-by: Jonathan Castillo (jcs) <jcs@odoo.com>
2023-10-04 20:52:47 +00:00
Donatienne (dopi) e8febc9656 [IMP] accounting: bank reconciliation documentation updated
task-3237825

closes odoo/documentation#5983

X-original-commit: 1d14941e41
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
Signed-off-by: Jonathan Castillo (jcs) <jcs@odoo.com>
Co-authored-by: Dallas Dean <dade@odoo.com>
2023-10-04 19:40:24 +00:00
tiku-odoo 928d3e44c6 [REM] Accounting: Scrub Taxcloud
closes odoo/documentation#5976

Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-10-04 19:40:21 +00:00
Felicious 33de4dc808 [IMP] inventory: update batch picking screenshots
closes odoo/documentation#5989

X-original-commit: 9b0f902c4e
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
Co-authored-by: brse-odoo <brse@odoo.com>
Co-authored-by: ksc-odoo <73958186+ksc-odoo@users.noreply.github.com>
2023-10-04 00:03:41 +00:00
Demesmaeker 85abcb2624 [IMP] quote_template: changes Quotation Builder to PDF Quote Builder
task-3249142

closes odoo/documentation#5863

Related: odoo/upgrade#5168
Related: odoo/odoo#133773
Signed-off-by: Victor Feyens (vfe) <vfe@odoo.com>
2023-10-03 19:19:55 +00:00
John Holton (hojo) 51a1623f69 [REF] Inventory and MRP: Update TOC tree
closes odoo/documentation#5961

X-original-commit: 7b67d69abd
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-10-02 18:47:44 +00:00
tiku-odoo 175a138eac [IMP] Misc: Email Template 16
closes odoo/documentation#5966

X-original-commit: ca2feb8dd4
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-10-02 15:38:13 +00:00
Tom Aarab (toaa) c086cf7ca8 [IMP] accounting: bank sync
Updated the section on dates

task-id:3519559

closes odoo/documentation#5956

X-original-commit: 65a2bbacf2
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
Signed-off-by: Tom Aarab (toaa) <toaa@odoo.com>
2023-10-02 06:54:40 +00:00
John Holton (hojo) cbc4fea84c [ADD] MRP: Manufacturing backorders
closes odoo/documentation#5974

X-original-commit: cfc40f8cd1
Signed-off-by: John Holton (hojo) <hojo@odoo.com>
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-10-01 05:34:44 +00:00
Loredana Perazzo d3e4c9f68b [IMP] POS: add info for iOS devices
task-3388561

closes odoo/documentation#5951

X-original-commit: 895d30cceb
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
2023-09-29 13:11:57 +00:00
Julien Castiaux 90c86e6462 [IMP] deploy: reword multi-thread/process section
Many users don't start odoo-bin in --workers (multi-processing) mode but
instead leave the default configuration which use the development/demo
multi-threaded server, even in production.

This commit rewords the section about the difference between the
built-in servers and highlight the many advantages of the
multi-processing on. It repeats that information when it comes to
running a dedicated cron server, that it should use the multi-processing
server instead of the default multi-threading one.

closes odoo/documentation#5934

Fixes: odoo/odoo#88984
Closes: odoo/odoo#128571
X-original-commit: 8e9ae99423
Signed-off-by: Jonathan Castillo (jcs) <jcs@odoo.com>
Signed-off-by: Julien Castiaux (juc) <juc@odoo.com>
2023-09-28 01:51:26 +00:00
rps-odoo 9b94ffd27a [IMP] l10n: add video link for ecuador + fix other latam links
This commit:
- adds the link for the Ecuatorian localization app tour
- changes the other latam app tour links as the short links embedded the
  `es_ES` language string in the URL, which should be avoided

closes odoo/documentation#5929

X-original-commit: 923839f2cf
Signed-off-by: Jonathan Castillo (jcs) <jcs@odoo.com>
2023-09-28 01:51:22 +00:00
Brandon Seltenrich (BRSE) b20fe31b45 [IMP] inventory: update cycle counts
closes odoo/documentation#5924

X-original-commit: 06a225587b
Signed-off-by: Brandon Seltenrich (brse) <brse@odoo.com>
2023-09-27 18:56:18 +00:00
Jonathan Castillo (jcs) 8339c00773 [FIX] legal: broken links to the support page
task-3513581

closes odoo/documentation#5917

X-original-commit: 8253b6fdee
Signed-off-by: Olivier Dony (odo) <odo@odoo.com>
Signed-off-by: Jonathan Castillo (jcs) <jcs@odoo.com>
2023-09-26 05:57:40 +00:00
dispread 1a26e5ae52 [FW][FIX] developer/tutorials: wrong kanban view example
Pretty sure the previous wasnt the intended result as it would show the "this is new" in a new kanban card. This just groups it with the property it belongs to.

closes odoo/documentation#5907

Forward-port-of: odoo/documentation#5899
Signed-off-by: Victor Feyens (vfe) <vfe@odoo.com>
2023-09-25 13:09:11 +00:00
Antoine Vandevenne (anv) 13feb8018d [IMP] developer/reference/payment: add docstrings for payment_method
task-2882677

closes odoo/documentation#5717

Related: odoo/upgrade#5103
Related: odoo/odoo#120446
Related: odoo/enterprise#40666
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2023-09-22 13:32:51 +00:00
tong-odoo 78a4b3015c [IMP] accounting: update thailand localisations for PromptPay
Impacted Version:

- 17.0 and above

This commit improve below features:

- PromptPay QR code documentation

task-3506522

closes odoo/documentation#5862

Signed-off-by: Jonathan Castillo (jcs) <jcs@odoo.com>
2023-09-22 08:49:15 +00:00
tiku-odoo 36ffe3ba82 [ADD] productivity: whatsapp configuration doc
Dev PR https://github.com/odoo/enterprise/pull/45601#pullrequestreview-1608996613
Task [3495962](https://www.odoo.com/web#cids=3&model=project.task&view_type=form&id=3495962)

closes odoo/documentation#5890

X-original-commit: d4af79185e
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
Co-authored-by: larm-odoo <larm@odoo.com>
Co-authored-by: jero-odoo <jero@odoo.com>
Co-authored-by: StraubCreative <zst@odoo.com>
Co-authored-by: samueljlieber <sali@odoo.com>
Co-authored-by: fpodoo <fp@odoo.com>
2023-09-22 05:08:57 +00:00
Sam Lieber (sali) 1ac84b73b1 [IMP] l10n: CO content updates
closes odoo/documentation#5883

X-original-commit: 429e52bdf9
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
Signed-off-by: Samuel Lieber (sali) <sali@odoo.com>
2023-09-19 18:55:45 +00:00
tiku-odoo 975ef6511b [IMP] Discuss Team Comms Add Chatter Info
closes odoo/documentation#5819

X-original-commit: 21c4917a70
Signed-off-by: Timothy Kukulka (tiku) <tiku@odoo.com>
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-09-16 17:42:39 +00:00
Sam Lieber (sali) e0e356dbb6 [IMP] accounting: l10n_mx content updates
closes odoo/documentation#5872

X-original-commit: 7e12726c32
Signed-off-by: Samuel Lieber (sali) <sali@odoo.com>
2023-09-15 19:14:29 +00:00
Martin Trigaux 2d8fc74e64 [I18N] *: export source terms
closes odoo/documentation#5858

X-original-commit: 896c251123
Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
2023-09-14 17:08:01 +00:00
Romeo Fragomeli 5d9f8c5a7d [IMP] developer reference: update act_url action doc
This commit, reword the doc about `ir.actions.act_url` and add also the
new `download` value for the `target`.

closes odoo/documentation#5822

Related: odoo/odoo#134436
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2023-09-13 15:34:35 +00:00
fdardenne b1ece27040 [IMP] Views howtos: add details on how to use a view in arch
closes odoo/documentation#5780

X-original-commit: c1c04f90a8
Signed-off-by: Florent Dardenne (dafl) <dafl@odoo.com>
2023-09-13 09:39:01 +00:00
Olivier Dony babd571b8b [ADD] legal: update terms of sales for monthly subs, add ES,DE
closes odoo/documentation#5851

X-original-commit: 76570c1e9d
Signed-off-by: Olivier Dony (odo) <odo@odoo.com>
2023-09-13 04:37:10 +00:00
Olivier Dony 68102b5ddf [ADD] Add LICENSE and COPYRIGHT
closes odoo/documentation#5850

X-original-commit: a8be832f47
Signed-off-by: Olivier Dony (odo) <odo@odoo.com>
2023-09-13 04:37:09 +00:00
Martin Trigaux bde909aa17 [IMP] install: clarify Windows is not recommended for prod
It has always been the case informally but write it in the doc.

closes odoo/documentation#5835

X-original-commit: 80e1065dff
Signed-off-by: Olivier Dony (odo) <odo@odoo.com>
2023-09-13 04:37:08 +00:00
Loredana Perazzo 2c0c08cd3e [IMP] l11n: Odoo 16 is now certified to use the blackbox
task-3495357

closes odoo/documentation#5811

X-original-commit: 87b4f1817e
Signed-off-by: Jonathan Castillo (jcs) <jcs@odoo.com>
2023-09-11 22:41:18 +00:00
Leloup Loïc (lole) f18162fe2a [IMP] cli: add unit to memory options
The documentation is unclear about the unit used for the --limit-memory-soft
and --limit-memory-hard options of odoo-bin.  The unit used is bytes, but
it isn't mentioned and the default unit is shown in mebibytes, causing
confusion.

closes odoo/documentation#5794

X-original-commit: 9fadc3355d
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2023-09-11 10:29:04 +00:00
Xavier Morel 2e595b52b4 [IMP] developer reference: update t-debug doc
The value of `t-debug` is now optional, and leaving it out means the
directive just invokes the `breakpoint` builtin, which was added in
3.7 and is configurable via an envvar or a hook callable.

closes odoo/documentation#5800

Related: odoo/odoo#134842
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2023-09-11 10:29:03 +00:00
KC (ksc) 38b50bb081 [IMP] sales: updated RST formatting for quote template doc
closes odoo/documentation#5799

X-original-commit: e689c98a05
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-09-09 04:42:56 +00:00
“Audrey 6a777942cc [IMP] payment_provider/mercado pago: Add missing step for production credentials
task-3498727

closes odoo/documentation#5785

X-original-commit: fe7f72bf63
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2023-09-08 15:26:12 +00:00
“Audrey c677de3666 [IMP] website: Google Analytics
task-2790245

- Update existing Google Analytics doc for GA4
- Merge GA and Plausible into one Analytics page
- Review Plausible.io instructions to adopt same style as GA instructions

closes odoo/documentation#5768

X-original-commit: d538ed070e
Signed-off-by: Audrey Vandromme (auva) <auva@odoo.com>
2023-09-08 08:30:00 +00:00
Jonathan Castillo (jcs) ecb7b9257d [ADD] WhatsApp: basic description of the app
- adds basic content for Odoo WhatsApp app
- adds a redirect rule for non-existent links in the app
  see https://github.com/odoo/enterprise/pull/45601#pullrequestreview-1608996613

task-3425722

closes odoo/documentation#5730

X-original-commit: bf1c08c447
Related: odoo/enterprise#46942
Related: odoo/odoo#134377
Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
2023-09-07 11:46:08 +00:00
Sam Lieber (sali) 85c6389e08 [IMP] accounting/l10n: add tour and smartclass links
closes odoo/documentation#5758

X-original-commit: 88c2aacbf5
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-09-06 18:25:43 +00:00
baro-odoo 21d6283682 [FIX] odoo.sh: typo in branches.rst
closes odoo/documentation#5753

X-original-commit: cbbd5a5ee9
Signed-off-by: Jonathan Castillo (jcs) <jcs@odoo.com>
2023-09-06 16:19:53 +00:00
Xavier (XPL) dde981c685 [IMP] maintain: refresh the change hosting solution page
This PR updates the page's content as it is a bit dated in some places
(see task) and takes into consideration the latest rst guidelines.

task-3434787

closes odoo/documentation#5745

X-original-commit: 8e41b58834
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
2023-09-06 14:42:22 +00:00
Tom Aarab (toaa) d6e2f157f7 [ADD] website: menus page
taskid-3414667

closes odoo/documentation#5737

X-original-commit: 0433155eab
Signed-off-by: Audrey Vandromme (auva) <auva@odoo.com>
Co-authored-by: Toaa <toaa@odoo.com>
Co-authored-by: Auva <auva@odoo.com>
2023-09-06 13:25:39 +00:00
Augusto Perez d3625e5c84 [ADD] upgrade/on_premise: Add filestore explanation
Added a note explaining that the filestores from the upgraded database
and the production database have to be merged for on-premise upgrade,
on both the testing and the production phases

closes odoo/documentation#5729

X-original-commit: 28cacd3b98
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
2023-09-06 05:53:47 +00:00
Tom Aarab (toaa) d04cba1952 [FIX] Stripe: screenshot update
Updated an outdated screenshot from V14 to V15

Forward to master.

taskid-3467638

closes odoo/documentation#5720

X-original-commit: 3324366190
Signed-off-by: Tom Aarab (toaa) <toaa@odoo.com>
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
2023-09-05 14:44:12 +00:00
Odoo's Mergebot 1c072f0ac2 [FW][FIX] developer/tutorials/discover_js_framework: fix broken "domain.js" link
The link pointing to domain.js file was broken.
The xml id on the line before that is also broken but it will be fixed with PR#5699.

closes odoo/documentation#5709

Forward-port-of: odoo/documentation#5702
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
Co-authored-by: Armin FalDiS <armin.fallah96@gmail.com>
Co-authored-by: Armin FalDiS <fara@odoo.com>
2023-09-04 09:19:17 +00:00
Nur Muhammad Naufaldo f14f829caf [FIX] inventory: fix typo
closes odoo/documentation#5686

X-original-commit: cae0edcc83
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-09-04 04:41:45 +00:00
Zachary Straub (ZST) 5ce59fd84b [FIX] voip: update broken links, light markup cleaning
closes odoo/documentation#5697

X-original-commit: 2fff805029
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-08-31 06:16:06 +00:00
Andrea Tasselli 2f9645c1a6 [FW][FIX] developer/tutorials/discover_js_framework: add missing this
closes odoo/documentation#5687

Forward-port-of: odoo/documentation#5677
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2023-08-31 06:16:02 +00:00
Donatienne Pirlot ac834e3919 [ADD] forum: create the forum documentation
This PR adds a page describing how to create, use and moderate a forum.
It creates references in the elearning page as karma features are shared.
It removes redundant information from the helpdesk/overview/help_center
page and links back to the more detailed forum page.

task-3283274

closes odoo/documentation#5676

X-original-commit: c60ec48c9d
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
2023-08-29 14:09:49 +00:00
Pierre Rousseau be064dff98 [IMP] list: add open_form_view to list attributes
Task-id 3063425

closes odoo/documentation#5671

Signed-off-by: Victor Feyens (vfe) <vfe@odoo.com>
2023-08-29 11:10:54 +00:00
arsi a57cabaa9f [FIX] localizations: guide to tax report to re-connect to HMRC
In the multi-company HMRC submission section, the documentation mentions
that you can connect to HMRC from the user form, after having reset the
credentials.
This is not true, you have to go back to the tax report and click the
"Connect to HMRC" button.

opw-3449939

closes odoo/documentation#5670

X-original-commit: 39c0515208
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
Signed-off-by: Arnaud Sibille (arsi) <arsi@odoo.com>
2023-08-29 07:48:14 +00:00
Tom Aarab (toaa) f3c364225c [FIX] PayPal: documentation dead link fix
Fixed a dead URL

taskid-3454286

closes odoo/documentation#5619

X-original-commit: f74e9568c0
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
Signed-off-by: Tom Aarab (toaa) <toaa@odoo.com>
2023-08-28 11:24:38 +00:00
“Audrey 727d749f0c [IMP] payment_providers/buckaroo: review doc page structure and fix small mistake
task-3382228

closes odoo/documentation#5651

X-original-commit: 4a42a9c327
Signed-off-by: Audrey Vandromme (auva) <auva@odoo.com>
2023-08-28 09:34:02 +00:00
KC (ksc) 16092f080b [IMP] fixed duplicate content in the Group By section
closes odoo/documentation#5661

X-original-commit: 575f6040a0
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-08-26 01:00:06 +02:00
“tap-odoo”~ 2495478757 [ADD] Thailand localisation Documentation
- Added Thailand localisation documentation as it not exist before.
Features were pushed to Odoo 16 already

closes odoo/documentation#5642

X-original-commit: 0151054619
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
2023-08-25 13:59:10 +02:00
“Audrey 867f6afd9d [FIX] ecommerce: broken link to cross-selling and upselling doc
task-3416686

closes odoo/documentation#5624

X-original-commit: b9cb5ffa1c
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
2023-08-25 10:59:43 +02:00
tiku-odoo 4e394b77fb [IMP] Discuss Team Communication edits
closes odoo/documentation#5639

X-original-commit: b6a3be322c
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-08-25 06:15:50 +02:00
Brandon Seltenrich (BRSE) 05349c6a0b [FIX] mrp: fix kits note
closes odoo/documentation#5631

X-original-commit: a02022e2fd
Signed-off-by: Samuel Lieber (sali) <sali@odoo.com>
Signed-off-by: Brandon Seltenrich (brse) <brse@odoo.com>
2023-08-24 23:40:17 +02:00
Antoine (anso) d978b07184 [FIX] odoo_theme: fix logo colors
Before this commit, the Odoo logos used in the documentation were
using the old purple color.

This commit updates all these old logos with the latest version that
can be found on the Odoo brand-asset page

https://www.odoo.com/page/brand-assets

task-3328677

closes odoo/documentation#5604

X-original-commit: 4bec9a6e09
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2023-08-24 20:58:55 +02:00
Loredana Perazzo d2d1da3312 [FIX] pos: typo in note (stripe)
task-3472802

closes odoo/documentation#5589

X-original-commit: ac53c6f12e
Signed-off-by: Jonathan Castillo (jcs) <jcs@odoo.com>
2023-08-23 18:55:26 +02:00
Jonathan Castillo (jcs) 0c882df05f [REM] support: what_can_i_expect
This page used to be hosted as an "orphan" page in the documentation
repository. It now is displayed on the support form page at
www.odoo.com/help making this page redundant. This commit deletes that
page and a redirection pointing to the support form has been set.

task-3027584

closes odoo/documentation#5582

X-original-commit: fd2c0b8010
Signed-off-by: Jonathan Castillo (jcs) <jcs@odoo.com>
2023-08-23 14:44:14 +02:00
Erwin Zoer 21d9fcbdca Update stock_warehouses.rst
closes odoo/documentation#5565

Spelling: whe > the on line 168
X-original-commit: 7eb22a3737
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-08-22 02:44:31 +02:00
Felicious 3446234270 [ADD] barcode: GS1 nomenclature
closes odoo/documentation#5572

X-original-commit: 3b2c2376c0
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
Signed-off-by: Felicia Kuan (feku) <feku@odoo.com>
Co-authored-by: meng-odoo <101904966+meng-odoo@users.noreply.github.com>
Co-authored-by: Sam Lieber (sali) <36018073+samueljlieber@users.noreply.github.com>
2023-08-22 01:17:20 +02:00
Antoine Dupuis (andu) 0642f0601f [ADD] l10n_ro_saft: Romanian D.406 monthly/quarterly declaration doc
Since January 1, 2023, Romanian businesses are required to report their
accounting data on a monthly/quarterly basis, in the D.406 declaration.

This is an XML following the SAF-T 2.0 standard, with Romanian-specific
customizations. The new module l10n_ro_saft lets you generate this
declaration from the General Ledger report.

Here's some documentation about how to use this new module! Yay!

closes odoo/documentation#5532

Task-id: 3172198
X-original-commit: 42ef43f8c4
Related: odoo/enterprise#45939
Related: odoo/odoo#132269
Signed-off-by: Antoine Dupuis (andu) <andu@odoo.com>
2023-08-21 19:57:06 +02:00
Xavier (XPL) 692fe78bd1 [FIX] install: fix reference and redirect
closes odoo/documentation#5552

X-original-commit: 2b9ffdb240
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
2023-08-19 21:05:40 +02:00
Antoine Vandevenne (anv) a5d10930d6 [REM] payment_providers: remove mentions of extra fees
task-3358581

closes odoo/documentation#5517

Related: odoo/odoo#132104
Related: odoo/upgrade#5053
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2023-08-19 09:07:03 +02:00
Xavier (XPL) ea53f06197 [REF] install: move intro to main install page and split by install type
This PR moves the introduction about the different installation methods and editions found on the
install/install.rst page directly under the main install/ page. It creates three pages, one per
installation method documented on the install/install.rst page (Docker being documented on
docker.com and maintained by us), and moves the related content there. In addition, it fixes various
typos/grammar issues and improves the content according to the documentation guidelines. Various
references and links across the documentation had to be fixed accordingly.

task-3459070

closes odoo/documentation#5543

X-original-commit: 91c28fd433
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
2023-08-19 07:58:45 +02:00
Martin Trigaux 3953d827a3 [I18N] *: export translations
closes odoo/documentation#5536

X-original-commit: b27ca9b36a
Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
2023-08-18 12:18:11 +02:00
Gorash 83c2012f95 [IMP] reference: rewrite and move views documentation to user_interface/
The documentation of the views is redone in order to be up to date and
has allowed a better visualization of the task on the modifiers.

task-2495504

closes odoo/documentation#3523

Related: odoo/odoo#104741
Related: odoo/enterprise#35255
Related: odoo/upgrade#4884
Signed-off-by: Julien Castiaux (juc) <juc@odoo.com>
2023-08-18 09:49:36 +02:00
KC (ksc) 58b82b93d5 [IMP] sales: updated different addresses doc for RST
closes odoo/documentation#5531

X-original-commit: e4ebe9f277
Signed-off-by: Samuel Lieber (sali) <sali@odoo.com>
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-08-18 02:06:54 +02:00
Antoine Vandevenne (anv) 0e97376921 [FIX] tutorials/getting_started: fix typos in example model name
Commit f36c612d13 changed the model name
in Chapter 4 without updating the other occurences.

closes odoo/documentation#5516

X-original-commit: b6f923d111
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2023-08-17 18:43:18 +02:00
ksc-odoo ccc9bc4bc5 [IMP] Sales - Update optional_products.rst
closes odoo/documentation#5423

X-original-commit: 4d95afe86c
Signed-off-by: Kevin Scannell (ksc) <ksc@odoo.com>
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-08-16 23:47:39 +02:00
Jonathan d2f8292f44 [IMP] email com: update daily limit
The current default daily limit for one-app free
is 20 mails only. This commit updates the value.

closes odoo/documentation#5515

X-original-commit: c0ca09cdde
Signed-off-by: Jonathan Castillo (jcs) <jcs@odoo.com>
2023-08-16 19:05:07 +02:00
Sam Lieber (sali) f4e72f3254 [ADD] accounting: l10n_br avalara implementation
closes odoo/documentation#5465

X-original-commit: 4081ec3f17
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
Signed-off-by: Samuel Lieber (sali) <sali@odoo.com>
2023-08-16 10:24:26 +02:00
masi-odoo 93fa7d70e1 [IMP] accounting/loca: AR add check management section
closes odoo/documentation#5494

X-original-commit: 98d0d59188
Signed-off-by: Samuel Lieber (sali) <sali@odoo.com>
2023-08-14 19:29:02 +02:00
Sam Lieber (sali) 327b7ce0cb [REF] l10n: PoC doc restructure for CO
closes odoo/documentation#5480

X-original-commit: e52d8f172f
Signed-off-by: Jonathan Castillo (jcs) <jcs@odoo.com>
2023-08-12 08:39:59 +02:00
imanie383 f4e7830a92 [FW][FIX] reference/owl_components: fix typo
Making edits for Owl Components Doc : [Link](https://www.odoo.com/documentation/16.0/developer/reference/frontend/owl_components.html#example-multi-level-dropdown-nested)

![image](https://github.com/odoo/documentation/assets/35231827/b2dd4b87-941c-4241-b0f5-e91ca69b3633)

closes odoo/documentation#5475

Forward-port-of: odoo/documentation#5459
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2023-08-11 22:50:14 +02:00
Samuel Degueldre eb63fd7629 [IMP] remove references to owl template tagging
In odoo/odoo#130467 the necessity to tag owl templates with an owl="1"
attribute has been removed, update the docs to reflect that.

closes odoo/documentation#5460

Signed-off-by: Victor Feyens (vfe) <vfe@odoo.com>
2023-08-11 19:34:53 +02:00
Lara Martini (larm) 532f9d1af5 [IMP] Inventory: updating second person and images, add clarity
feku-review-add-headings-and-extra-reference

closes odoo/documentation#5455

X-original-commit: 6cb2ed8abc
Signed-off-by: Felicia Kuan (feku) <feku@odoo.com>
Co-authored-by: ksc-odoo <73958186+ksc-odoo@users.noreply.github.com>
Co-authored-by: Sam Lieber (sali) <36018073+samueljlieber@users.noreply.github.com>
Co-authored-by: Zachary Straub <zst@odoo.com>
2023-08-10 10:39:34 +02:00
tiku-odoo 7fbc4a2928 [IMP] Misc Oauth Azure Clarification
closes odoo/documentation#5447

X-original-commit: b41d69ae82
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-08-10 10:39:26 +02:00
Victor Feyens b9c7cd2ee8 [ADD] tests: image compression and resource file name checkers
task-2801043

closes odoo/documentation#4870

closes odoo/documentation#5436

X-original-commit: fa90e27c4e
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
Co-authored-by: Antoine Vandevenne (anv) <anv@odoo.com>
2023-08-10 10:39:09 +02:00
Lara Martini (larm) 744b1cdfd2 [MOV] Payroll: moved configuration doc to main payroll so there is less clicking for users
closes odoo/documentation#5433

X-original-commit: 4fd1f56b33
Signed-off-by: Lara Martini (larm) <larm@odoo.com>
2023-08-10 07:19:03 +02:00
Brandon Seltenrich (BRSE) c24f32c770 [IMP] inventory: update inventory adjustments
closes odoo/documentation#5422

X-original-commit: 3da457a501
Signed-off-by: Brandon Seltenrich (brse) <brse@odoo.com>
2023-08-10 02:39:52 +02:00
John Holton (hojo) 9b9587b882 [ADD] MRP: Add Scrap during manufacturing
closes odoo/documentation#5382

X-original-commit: 72ba26414b
Signed-off-by: John Holton (hojo) <hojo@odoo.com>
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-08-10 02:39:48 +02:00
Sam Lieber (sali) 58b538c2b1 [IMP] marketing: RST upgrades for metrics doc
closes odoo/documentation#5406

X-original-commit: 6f02a0af04
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
Signed-off-by: Kevin Scannell (ksc) <ksc@odoo.com>
2023-08-09 04:23:16 +02:00
ksc-odoo 6731fb0320 [IMP] Sales - updated Deadline.rst (v14)
closes odoo/documentation#5405

X-original-commit: 5f2725160d
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
Signed-off-by: Kevin Scannell (ksc) <ksc@odoo.com>
2023-08-09 04:23:12 +02:00
Sam Lieber (sali) 35b7b811bd [ADD] email marketing: essentials, mailing lists, unsubscriptions
closes odoo/documentation#5390

X-original-commit: 56a291831a
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-08-09 04:23:08 +02:00
Xavier (XPL) 89868401ac [IMP] sales: correct amazon invoicing and payment registration info
task-2203035

closes odoo/documentation#5381

X-original-commit: bd50b39abf
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
2023-08-09 04:23:01 +02:00
Sam Lieber (sali) e70cec1c05 [IMP] test/rst_style, Makefile: add optional review checkers
task-2801043

closes odoo/documentation#5358

X-original-commit: 8eec0e7634
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2023-08-09 03:08:11 +02:00
KC (ksc) 7aa3301314 [IMP] sales: invoicing policy doc for RST reasons
closes odoo/documentation#5346

X-original-commit: acc2c7994a
Signed-off-by: Kevin Scannell (ksc) <ksc@odoo.com>
2023-08-07 22:26:08 +02:00
Xavier (XPL) d0b913de03 [IMP] maintain: change info about domain names approval time
Original commit: 4fd1b73013
Original PR: https://github.com/odoo/documentation/pull/5272

closes odoo/documentation#5340

X-original-commit: 45a2d970b7
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
2023-08-07 20:59:09 +02:00
“ralo-odoo” c9ab125c7a [ADD] localization: philippines-l10n_ph
Adding Philippines localization documentation from PR #5179

closes odoo/documentation#5332

X-original-commit: 465e7e70c4
Signed-off-by: Dallas Dean (dade) <dade@odoo.com>
2023-08-07 19:58:26 +02:00
Antoine Vandevenne (anv) fa4cfcd042 [IMP] supported_versions: release saas-16.4
This commit also moves all versions from 8.0 to 12.0 from the table to
the "older versions" section.

closes odoo/documentation#5327

X-original-commit: 6225ef9e32
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2023-08-07 19:58:22 +02:00
Jonathan 1a6b8a4132 [FIX] iot: broken link in troubleshooting.rst
closes odoo/documentation#5319

X-original-commit: 020200abbe
Signed-off-by: Jonathan Castillo (jcs) <jcs@odoo.com>
2023-08-07 19:58:11 +02:00
Tom Aarab (toaa) 0f3024cc69 [IMP] website: "pages" page
Adding a documentation on "pages" within the already existing "page"
toctree

task-3383323

closes odoo/documentation#5309

X-original-commit: e40b568cc5
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
Co-authored-by: Toaa <toaa@odoo.com>
Co-authored-by: Auva <auva@odoo.com>
2023-08-07 18:37:36 +02:00
KC (ksc) 133b350a30 [IMP] sales: updated get siganture for validation doc for RST formatting
closes odoo/documentation#5303

X-original-commit: 6c38992016
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-08-06 20:27:12 +02:00
Lara Martini (larm) 88f7a66f4d [ADD] Payroll: adding new configuration doc
closes odoo/documentation#5295

X-original-commit: 8a88ec1dd0
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-08-05 05:50:56 +02:00
Lara Martini (larm) 60a7381f84 [IMP] Inventory: updated text for 16 and fixed rst errors
closes odoo/documentation#5287

X-original-commit: 5a2e7b0512
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-08-05 05:50:53 +02:00
Sam Lieber (sali) af572a01c3 [IMP] marketing: RST format upgrades for marketing automation v14
closes odoo/documentation#5282

X-original-commit: b5bde9186e
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-08-05 04:19:00 +02:00
Martin Trigaux 7f62e44002 [IMP] developer: document new parameter
closes odoo/documentation#5273

X-original-commit: bf5c888446
Related: odoo/odoo#130883
Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
2023-08-04 16:35:01 +02:00
Tom Aarab (toaa) 1021f85a3f [IMP] accounting/credit and debit notes
Forward to master.

Change 16.3 onwards (screenshots)

Improved the doc and added some info on debit notes (was missing).

taskid-3439169

closes odoo/documentation#5270

X-original-commit: 898b08a70e
Signed-off-by: Tom Aarab (toaa) <toaa@odoo.com>
2023-08-04 13:42:15 +02:00
“Dallas” 18db702655 [IMP] accounting: move cash discount tax reduction to payment term
task-3211595

closes odoo/documentation#5260

X-original-commit: ceda988a29
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
Signed-off-by: Dallas Dean (dade) <dade@odoo.com>
2023-08-04 09:43:27 +02:00
Michael (mcm) 775e80ed92 [IMP] web: update documentation of patch function
This commit updates the documentation of the patch function
with the changes done in https://github.com/odoo/odoo/pull/125716.

closes odoo/documentation#5017

Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2023-08-03 16:07:00 +02:00
Jonathan Castillo (jcs) dad4a47c9a [IMP] localization: BE disallowed expenses automatically installed
linked to https://github.com/odoo/enterprise/pull/43676

task-3398625

closes odoo/documentation#5023

Related: odoo/enterprise#43676
Signed-off-by: Jonathan Castillo (jcs) <jcs@odoo.com>
2023-08-03 10:42:52 +02:00
tiku-odoo 7e29da60b9 [IMP] Misc: Oauth Azure
closes odoo/documentation#5041

closes odoo/documentation#5255

X-original-commit: 66b2a3d50e
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
Co-authored-by: Zachary Straub <zst@odoo.com>
2023-08-03 00:33:44 +02:00
John Holton (hojo) 8edb63948c [IMP] Inventory: Update Multi-package shipments doc
closes odoo/documentation#5246

X-original-commit: 7df2d749a8
Signed-off-by: John Holton (hojo) <hojo@odoo.com>
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-08-02 11:16:53 +02:00
“Chiara 76c781226d [ADD] l10n: saudi arabia e-invoicing
task-3422500

closes odoo/documentation#5233

X-original-commit: 24ff6624bb
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
2023-07-28 23:16:34 +02:00
Martin Trigaux fd4065b3c6 [I18N] *: export translations
closes odoo/documentation#5223

X-original-commit: 013da823cc
Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
2023-07-28 10:33:22 +02:00
Xavier (XPL) b755d0330e [IMP] payments: update ACH section content to match 16.0
closes odoo/documentation#5216

X-original-commit: 992fc9f4d6
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
2023-07-27 03:50:48 +02:00
Xavier (XPL) b5dbf4779a [IMP] accounting: year-end closing
task-2823858

closes odoo/documentation#5211

X-original-commit: 8c03442791
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
2023-07-26 16:11:49 +02:00
Victor Feyens db05d69be6 [IMP] accounting: new behavior of the sepa provider
Sepa mandates are not automatically confirmed anymore,
customers have to make one successful bank transfer
matching the expected payment details to confirm
their mandate.

See https://github.com/odoo/odoo/commit/fd2fb212c50952ca5a8e162ba5d82ce433cd5989
See https://github.com/odoo/enterprise/commit/9b729b157b6978e10fbbed45052226f150e5559f

closes odoo/documentation#5201

X-original-commit: bc1cf93455
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2023-07-26 13:22:07 +02:00
Donatienne Pirlot c795231f1c [ADD] elearning: creating a new elearning doc page
To add updated information related to the elearning app

closes odoo/documentation#5155

Id: 3251391
X-original-commit: 2e9c99c941
Signed-off-by: Donatienne Pirlot (dopi) <dopi@odoo.com>
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
2023-07-26 08:08:02 +02:00
Xavier (XPL) 5114140efe [IMP] payments: add section about ACH payments
task-3303591

closes odoo/documentation#5198

X-original-commit: 0155844ef5
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
2023-07-25 21:22:56 +02:00
Levi Siuzdak (sile) dd7ab18b9e [IMP] developer: add notes on entity references & fix illegal XML
Using `<` inside XML elements will result in a parsing error,
an entity reference should be used instead: `&lt;`.

closes odoo/documentation#5184

X-original-commit: a7743d513b
Signed-off-by: Levi Siuzdak (sile) <sile@odoo.com>
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2023-07-24 23:04:05 +02:00
Tom Aarab (toaa) 32cb0d8244 [IMP] accounting: multicurrency
Changed the "bank statement" section to "bank transactions"

taskid-3433653

closes odoo/documentation#5171

X-original-commit: 4b142c2a70
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
Signed-off-by: Tom Aarab (toaa) <toaa@odoo.com>
2023-07-20 15:45:03 +02:00
“Dallas” 80b4cd05d3 [IMP] accounting: update payment terms
task-3211595

closes odoo/documentation#5175

X-original-commit: 26c4c01889
Signed-off-by: Dallas Dean (dade) <dade@odoo.com>
2023-07-20 14:23:33 +02:00
tong-odoo 421e760581 [ADD] accounting: add Vietnam localisations
Impacted Version:

- 16.4 and above

This commit improve below features:

- Vietnam accounting documentation
- Vietnamese QR banking code documentation

task-3344654

closes odoo/documentation#5043

Related: odoo/odoo#127689
Signed-off-by: Tommy Ng (tong) <tong@odoo.com>
2023-07-20 06:40:45 +02:00
Valentin Chevalier 3bd570ae64 [IMP] Stripe: update doc to match the new flow
Stripe now implements a direct flow instead a redirect.

This commit focuses on updating the documentation to match the changes.

task-3322020

closes odoo/documentation#4719

Related: odoo/upgrade#4748
Related: odoo/enterprise#42196
Related: odoo/odoo#123573
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2023-07-19 13:13:04 +02:00
Xavier (XPL) 3e199d9825 [IMP] general: add screenshot of stacked line chart in reporting
task-3375264

closes odoo/documentation#5156

X-original-commit: 5ee932e14b
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
2023-07-19 10:24:02 +02:00
Demesmaeker ca475f8ad5 [IMP] sale_amazon: support stock synchronization from Odoo
task-2864098

closes odoo/documentation#4773

Related: odoo/enterprise#40720
Related: odoo/upgrade#4810
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2023-07-18 19:27:41 +02:00
Louis Wicket ae0c4d809d [FIX] incoterms: fix typo: DPA → DAP
closes odoo/documentation#5146

X-original-commit: 1227c9cf79
Signed-off-by: Louis Wicket (wil) <wil@odoo.com>
2023-07-18 18:18:23 +02:00
chyde-clearwater 3758cd5899 [IMP] tutorials/getting_started: disambiguate example model name
I removed the dot notation in the  "_name" variable for the example
model. AKA, "test.model" is now named "test_model".

Dot notation implies a data structure relationship between a <model> and
it's parent (or class etc) <test> (like test.model() or Test.model).
There is no relationship like this between a <test> and <model> - it's
just one thing: a <test model>.

The seeming "benefit" of the ORM translating dots to underscores doesn't
justify this naming convention.  Yes, I know it's a string, but still,
this seems confusing for newbies and adds unnecessary complexity (why
name the same thing differently in different places?)

closes odoo/documentation#5141

X-original-commit: f36c612d13
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2023-07-18 13:07:47 +02:00
Henrique Dias 9514d7df55 [FW][ADD] rpc: Go examples
Examples rely on `kolo/xmlrpc` as well as on the standard library package `log` to panic on error, matching snippets in other languages (which tend to raise exceptions).

As with other languages, only the RPC interaction is spelled out.

closes odoo/documentation#5129

Forward-port-of: odoo/documentation#5064
Signed-off-by: Xavier Morel (xmo) <xmo@odoo.com>
2023-07-15 12:00:28 +02:00
John Holton (hojo) f704ee9cc1 [DEL] MRP: Delete Alternative Work Centers 16.0
closes odoo/documentation#5123

X-original-commit: a67a69beae
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-07-15 12:00:01 +02:00
Martin Trigaux 0031e37c63 [FIX] developer: document changes of message_post API
closes odoo/documentation#5119

X-original-commit: 8bf2d026b7
Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
2023-07-15 10:54:41 +02:00
Lara Martini (larm) 89b550252a [IMP] Inventory: update for 16
closes odoo/documentation#5104

X-original-commit: 29db8bf1e6
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-07-13 20:37:30 +02:00
Jess Rogers (jero) 27d8dc2acd [IMP] live chat: add note for 16.3 command changes
closes odoo/documentation#5103

X-original-commit: a187b7cde4
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-07-13 20:37:27 +02:00
Loredana Perazzo 4367502c08 [IMP] pos: move part of the intro into generate tab
task-3372676

closes odoo/documentation#5115

X-original-commit: d5466bea0d
Signed-off-by: Loredana Perazzo (lrpz) <lrpz@odoo.com>
2023-07-13 19:28:23 +02:00
Marc Durepos 9988d0b214 [FIX] Remove reference to assets_qweb in assets.rst
Reflects the fact that assets_qweb bundle is no longer used in 16.0

closes odoo/documentation#5109

X-original-commit: c85031b3fc
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2023-07-13 19:28:18 +02:00
Odoo's Mergebot 665bf423ec [FW][FIX] install: remove duplicate note
The notes displayed before and after the tabs under the Git paragraph in `install.rst` were identical, except for one sentence. Added the sentence to the post-tabs note and removed the pre-tabs one.

closes odoo/documentation#5092

Forward-port-of: odoo/documentation#5087
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
2023-07-13 08:28:26 +02:00
Aymen Sellami 8bf5772a97 Remove duplicate note
The notes displayed before and after the tabs under the Git paragraph in install.rst were identical, except for one sentence. Added the sentence to the post-tabs note and removed the pre-tabs one.

X-original-commit: 481a867a05
Part-of: odoo/documentation#5092
2023-07-13 08:28:25 +02:00
Leonardo Pavan Rocha 6462ed0112 [IMP] web: merge quick_add with quick_create_form_view id in views
https://github.com/odoo/odoo/pull/114827 added a new attribute
quick_create_form_view_id to the calendar view that would allow showing a form
view when clicking on quick_create. This attribute was only used in calendar,
however it could be useful for other modules as well. It was decided to merge
this new attribute with the quick_add attribute, as they are related. Now, the
quick_add attribute accepts either a boolean or a form view id. This commit
changes the documentation of this attribute.

task-3286969

closes odoo/documentation#4707

Related: odoo/odoo#122923
Signed-off-by: Arnaud Joset (arj) <arj@odoo.com>
2023-07-12 20:33:53 +02:00
Xavier (XPL) 1c2ce72416 [IMP] payments: clarify authorize.net statement import steps
task-2382237

closes odoo/documentation#5077

X-original-commit: 22d45407c4
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
2023-07-11 04:52:41 +02:00
Martin Trigaux fb681d1305 [I18N] *: export translations
closes odoo/documentation#5069

X-original-commit: 921b483e2e
Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
2023-07-10 16:59:30 +02:00
Tom Aarab (toaa) e005fa9896 [IMP] authorize.net statement import
taskid-2382237

closes odoo/documentation#5063

X-original-commit: ca38752795
Signed-off-by: Tom Aarab (toaa) <toaa@odoo.com>
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
2023-07-07 17:58:09 +02:00
Antoine Vandevenne (anv) 7d70725925 [FIX] odoo_theme/switchers: fallback to the original target URL
Attempting to switch from one version to another when navigating
<old_version>/applications/hr/employees.html led to the user being
redirected to /applications/documentation/<new_version>/hr/employees.html
because `hr` was interpreted as a version string, and thus the generated
target URLs of the version switcher were all wrong.

This commit ensures the redirection now falls back onto the original
target URL when all the generated ones point to a 404.

closes odoo/documentation#5059

X-original-commit: c81a91db9c
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2023-07-07 17:58:06 +02:00
Zuzanna Luczynska 4590a4c25a [ADD] project: recurring tasks, FW port edit 16.2
closes odoo/documentation#5049

Id: 3255317
X-original-commit: c2d174fb4e
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
2023-07-07 17:57:52 +02:00
tong-odoo 057a1c11d2 [FIX] accounting: AU rebrands Keypay to Employment Hero
task-3250954

closes odoo/documentation#5035

X-original-commit: d252a96747
Related: odoo/enterprise#43735
Signed-off-by: Jonathan Castillo (jcs) <jcs@odoo.com>
Signed-off-by: Tommy Ng (tong) <tong@odoo.com>
2023-07-06 19:46:32 +02:00
Xavier (XPL) 7d01392c9a [IMP] accounting: l10n chile deliver guides warning
task-3410367

closes odoo/documentation#5030

X-original-commit: b729d05e57
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
2023-07-05 15:58:34 +02:00
Julien Mougenot 35aae86dbd [IMP] web: Owl DateTimePicker
This commit introduces a date picker OWL component meant to handle the
following use-cases:
- date picker
- date & time picker
- date range picker
- date & time range picker

Basically, this component is the union of the two previous third-party
libraries handling these cases: TempusDominus and DateRangePicker.

New components introduced:

* The main addition of this commit is the `DateTimePicker` itself which
handles the display and interactions of the calendar and time pickers.
> see @web/core/datetime/datetime_picker

* The picker can then be coupled to an input using the
`useDateTimePicker` hook. The purpose of this hook is to handle events
on a given input element and syncronize its value to a date picker it
will spawn in a popover.
> see @web/core/datetime/datetime_hook

* Lastly, a simple `DateTimeInput` component will render an input and
call the hook mentioned above to handle it. This component is
effectively replacing the previous DatePicker and DateTimePicker
components (note that it does not handle range values).
> see @web/core/datetime/datetime_input

Another noticeable change of this commit is the definition of daterange
fields in views:

- Previously, the arch would have to define both fields
and bind them via their options, while also adding an arrow between
inputs or other forms of connection.

- In the new implementation, only the start date field must be declared,
and a date range can be spawned by providing an `end_date_field` in its
options.

Example:
```xml
<field
    name="start_datetime"
    widget="daterange"
    options="{'end_date_field': 'end_datetime'}"
/>
```

warning Added limitations:

- this new way of declaring date ranges means that templates have been
revised to declare one field tag instead of two. This means that list
views using date ranges have lost the ability to be sorted on their end
date fields.

> Justification: the current use cases have been reviewed and it has
been decided that it was not needed to sort on the end date on the
affected list views.

> Workaround: drop the date range and declare both fields as simple date
pickers (i.e. without the end_date_field option).

- all modifiers applied to a field using a date range will be copied and
applied to the end date field. There is no way to define modifiers
specific to one field or the other.

> Justification: there was no use case where one of the two fields
needed specific modifiers.

> Workaround: same as the previous point: split the range into 2 simple
date picker fields.

Additional notes:

- the widget="daterange" is not mandatory in form views, but is required
in list views because only fields with explicit widgets will not be
rendered as simple <span> elements. The date range feature will be
available as soon as an end_date_field is specified.

- as the end date field is not explicitly defined in the view anymore,
any modifier depending on it need to have it defined as invisible
somewhere in the arch.

Task ID: 3121497

closes odoo/documentation#5013

Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
Signed-off-by: Julien Mougenot (jum) <jum@odoo.com>
2023-07-04 12:47:02 +02:00
Julien Mougenot a9c82ebb94 [REF] web: update JS fields documentation
This commit updates the documentation of JS fields:

- style and notation have been adapted to keep in line with the current
documentation writing guidelines;

- some outdated bits have been updated or removed (this is rather a
correction of misleading information than a proper update as no new
information has been added).

Part-of: odoo/documentation#5013
2023-07-04 12:47:01 +02:00
Brandon Seltenrich (BRSE) 453284ba8e [IMP] purchase: update manage vendor bills
closes odoo/documentation#5012

X-original-commit: 688220bb51
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
Signed-off-by: Brandon Seltenrich (brse) <brse@odoo.com>
2023-07-04 07:55:31 +02:00
Xavier 42115759bc [IMP] maintain: odoo online database management
task-2995394

closes odoo/documentation#5006

X-original-commit: c6e6401e36
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
2023-07-04 07:55:29 +02:00
tong-odoo 94a6a0b204 [IMP] localization: AU rebrands Keypay to Employment Hero
task-3250954

closes odoo/documentation#4998

X-original-commit: 35fc637ed4
Signed-off-by: Jonathan Castillo (jcs) <jcs@odoo.com>
2023-07-04 07:55:26 +02:00
AMZIL Ayoub f51b991fd4 [DOC] cleanup of pec server documentation
PEC Server is removed from 16 (onwards)

closes odoo/documentation#4991

X-original-commit: f3e3490ba4
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
2023-07-04 00:51:48 +02:00
John Holton (hojo) c76f97777a [ADD] Inventory: Add Replenish on order (MTO)
closes odoo/documentation#4984

X-original-commit: d9ece7b353
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-07-01 19:13:00 +02:00
John Holton (hojo) e80d7ae220 [ADD] Inventory: Add reordering rules
closes odoo/documentation#4977

X-original-commit: eb347c2681
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-07-01 19:12:57 +02:00
John Holton (hojo) f27df8f077 [ADD] MRP: Work center time off
closes odoo/documentation#4970

X-original-commit: 18a9b88a11
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-07-01 19:12:55 +02:00
Jess Rogers (jero) 06d5e0b096 [ADD] livechat: added chatbot doc
closes odoo/documentation#4969

X-original-commit: 729881c7b1
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-07-01 18:05:18 +02:00
Lara Martini (larm) 137e58719b [IMP] Inventory: updated images and removed edit and save directions
closes odoo/documentation#4959

X-original-commit: 710c373354
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-07-01 04:44:58 +02:00
John Holton (hojo) 9cac3b3d1a [IMP] Administration: Rewrite Upgrade Odoo SaaS
closes odoo/documentation#4951

X-original-commit: 45b1a62782
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
2023-06-30 10:42:11 +02:00
Tom Aarab (toaa) 7dfd6421db [IMP] accounting: checks
task-2979887

closes odoo/documentation#4942

X-original-commit: 5b78ee96af
Signed-off-by: Tom Aarab (toaa) <toaa@odoo.com>
2023-06-29 11:59:51 +02:00
Xavier b0a042b928 [FIX] accounting: remove fullscreen property from tutorial link
task-3389168

closes odoo/documentation#4936

X-original-commit: 88da0a9256
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
2023-06-28 19:08:51 +02:00
Jess Rogers (jero) facb3f184e [IMP] livechat: update commands and canned responses
closes odoo/documentation#4931

X-original-commit: e8aaefd283
Signed-off-by: Jessica Rogers (jero) <jero@odoo.com>
2023-06-28 17:41:59 +02:00
Rémy Voet (ryv) 13544bca17 [IMP] orm: name_get into display_name
odoo/odoo#122085
odoo/enterprise#42599
odoo/upgrade#4780

closes odoo/documentation#4639

Signed-off-by: Rémy Voet (ryv) <ryv@odoo.com>
2023-06-28 17:41:15 +02:00
Xavier 9e54525d61 [ADD] website: reCAPTCHA
task-3336129

closes odoo/documentation#4920

X-original-commit: 329f6dd8d5
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
2023-06-27 22:40:15 +02:00
Timothy Kukulka (tiku) 1ed317ebd7 [IMP] IoT: edits to all IoT docs
closes odoo/documentation#4927

X-original-commit: e7457c992b
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-06-27 21:27:56 +02:00
Benoit Socias 0df9068892 [FIX] howto/rdtraining: ch.13 adapt reference to salesperson field
In chapter 13 the `property_ids` field is defined as the inverse of a
`user_id` field. But in chapter 8 when the salesperson field is added,
no such name is given to it.

This commit adapts the description to reference the general concept of
the field used to link to the salesperson instead of an actual field
identifier.

task-3381757

closes odoo/documentation#4913

X-original-commit: 3a131c829a
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2023-06-27 13:44:38 +02:00
Benoit Socias 2161dd5acf [IMP] developer/views: add optional attribute for fields of list views
The attributes of fields of list views do not mention the `optional`
attribute while it is used by chapter 12 of the R&D Training.

This commit describes this `optional` attribute.

task-3380953

closes odoo/documentation#4912

X-original-commit: 5a446f5c59
Signed-off-by: Benoit Socias (bso) <bso@odoo.com>
2023-06-27 13:44:35 +02:00
KC (ksc) 9989131931 [IMP] sales: updated down payment doc for RST and image reasons
closes odoo/documentation#4897

X-original-commit: 802dc467de
Signed-off-by: Kevin Scannell (ksc) <ksc@odoo.com>
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-06-27 01:34:51 +02:00
Brandon Seltenrich (BRSE) f1d048fdff [IMP] inventory: update expiration dates doc
closes odoo/documentation#4890

X-original-commit: 49029eda37
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
Signed-off-by: Brandon Seltenrich (brse) <brse@odoo.com>
2023-06-26 23:23:09 +02:00
Jess Rogers (jero) 5cfd1623ae [IMP] live chat:update getting started doc
closes odoo/documentation#4883

X-original-commit: c24f4b237e
Signed-off-by: Jessica Rogers (jero) <jero@odoo.com>
2023-06-26 23:23:01 +02:00
Lara Martini (larm) 432d9bb10b [ADD] Employees: anning a new employee
closes odoo/documentation#4858

X-original-commit: 547ad6fca5
Signed-off-by: Lara Martini (larm) <larm@odoo.com>
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-06-26 21:09:52 +02:00
Donatienne Pirlot 1be31fda81 [ADD] localization: belgian accounting
closes odoo/documentation#4842

Id: 3143421
X-original-commit: 4d477a598f
Signed-off-by: Jonathan Castillo (jcs) <jcs@odoo.com>
2023-06-26 20:01:07 +02:00
Lara Martini (larm) 4d61833e46 [IMP] inventory: update strategies second person and images
closes odoo/documentation#4869

X-original-commit: 6201ee8760
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-06-24 04:41:55 +02:00
Jess Rogers (jero) 46d85d4f00 [IMP] helpdesk: update help center documentation
closes odoo/documentation#4875

X-original-commit: bafe824f38
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-06-24 01:03:01 +02:00
Xavier 5720cd2802 [ADD] Spreadsheet: templates
task-3235170

closes odoo/documentation#4863

X-original-commit: 1853f226e7
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
Co-authored-by: Xavier <xpl@odoo.com>
Co-authored-by: Loredana <lrpz@odoo.com>
2023-06-23 10:27:55 +02:00
“Audrey 9fc59e3237 [IMP] Payment providers - Stripe: Add missing webhook events
task-3373642

closes odoo/documentation#4780

X-original-commit: c04399c0b3
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
Signed-off-by: Audrey Vandromme (auva) <auva@odoo.com>
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
2023-06-23 09:20:53 +02:00
Lara Martini (larm) 5b04581623 [IMP] Expenses: updating for new 16 design
closes odoo/documentation#4850

X-original-commit: 0433e84a0c
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-06-22 03:20:29 +02:00
Felicious 5c82ba7762 [IMP] inventory: adjust manual val for v.16
closes odoo/documentation#4846

X-original-commit: 4c750d1bb7
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
Co-authored-by: ksc-odoo <73958186+ksc-odoo@users.noreply.github.com>
Co-authored-by: Sam Lieber (sali) <36018073+samueljlieber@users.noreply.github.com>
Co-authored-by: Zachary Straub <zst@odoo.com>
2023-06-22 02:02:47 +02:00
Jonathan b7316e2e2e [IMP] accounting: add tutorials links to chart of accounts
closes odoo/documentation#4836

X-original-commit: a85e064ffc
Signed-off-by: Jonathan Castillo (jcs) <jcs@odoo.com>
2023-06-21 22:40:59 +02:00
Jonathan 4e61b3585e [FIX] discuss: broken link in ice_servers.rst
closes odoo/documentation#4827

X-original-commit: 8efbe3ef84
Signed-off-by: Jonathan Castillo (jcs) <jcs@odoo.com>
2023-06-21 20:10:34 +02:00
Lara Martini (larm) 11401af3dd [IMP] Inventory: Updating for 16.0 no save button
closes odoo/documentation#4814

X-original-commit: e074580ffb
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-06-21 20:10:20 +02:00
Loredana Perazzo 3d0a19f329 [IMP] pos: write content on the Payment Terminals page
task-3358474

closes odoo/documentation#4798

X-original-commit: 2a5a45d6a4
Signed-off-by: Jonathan Castillo (jcs) <jcs@odoo.com>
Signed-off-by: Loredana Perazzo (lrpz) <lrpz@odoo.com>
2023-06-21 13:46:03 +02:00
Martin Trigaux 89bccb44ff [I18N] *: export 16.0 source terms
closes odoo/documentation#4801

X-original-commit: ad7b636275
Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
2023-06-20 22:03:07 +02:00
Christophe Monniez 899ee1c4c1 [FIX] deploy: reference the config parameter
The deploy documentation is assuming that `/etc/odoo.conf` is the
default config file, which is not the case.

With this commit, the configuration file references the cli
documentation.

closes odoo/documentation#4808

X-original-commit: 8aed7988ba
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
Signed-off-by: Christophe Monniez (moc) <moc@odoo.com>
2023-06-20 18:02:00 +02:00
Christophe Monniez ab4cfb431f [IMP] maintain: switch to enterprise windows
* Update the title as `Upgrade Community to Enterprise` is confusing.
* Update 9.0 screenshots to more recent ones
* As the windows installer uses a real python interpreter, the install
  command is updated accordingly.

X-original-commit: f03b4ca649
Part-of: odoo/documentation#4808
2023-06-20 18:01:59 +02:00
Antoine Vandevenne (anv) 9f65cba6dc [FIX] legal: fix broken PDF link
Apply the fix of e6aa5dd0 to `terms_of_sale.rst` and
`terms_of_sale_fr.rst` that were forgotten.

closes odoo/documentation#4791

X-original-commit: 8cffb57dae
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2023-06-20 00:24:01 +02:00
“Dallas” 3b50c7a565 [MOV] accounting: update/move customer addresses to accounting
task-3304975

closes odoo/documentation#4778

X-original-commit: cf5a3276c9
Signed-off-by: Castillo Jonathan (jcs) <jcs@odoo.com>
2023-06-16 23:01:31 +02:00
Xavier 4af52da507 [IMP] accounting/sales: default terms and conditions + quotation templates
task-3304938

closes odoo/documentation#4766

X-original-commit: 7ddbeb9223
Signed-off-by: Platteau Xavier (xpl) <xpl@odoo.com>
2023-06-16 12:19:00 +02:00
Tom Aarab (toaa) a7bb89ce47 [IMP] payment providers: PayPal
taskid-3184602.

16.0 -> Change extra fees category to :ref: main page payment provider
16.2 -> Remove Odoo credentials section
        Remove PDT identity token
        Remove merchant ID note
        Remove test mode section on environment test

Took the opportunity to redo the whole page.

closes odoo/documentation#4735

X-original-commit: ede03aa87b
Signed-off-by: Tom Aarab (toaa) <toaa@odoo.com>
2023-06-16 10:52:45 +02:00
KC (ksc) 532b6be429 [IMP] sales: updated pro-forma invoice doc
closes odoo/documentation#4762

X-original-commit: 3e4e8acfed
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-06-16 01:40:21 +02:00
Sam Lieber (sali) 80e8576263 [IMP] marketing: workflow_activities.rst - Format fixes
closes odoo/documentation#4754

X-original-commit: a09ca7bd0f
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-06-16 01:40:13 +02:00
Sam Lieber (sali) 75fd5255eb [IMP] marketing: testing_running.rst format fixes
closes odoo/documentation#4755

X-original-commit: 4b327417b0
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-06-16 00:30:01 +02:00
Sam Lieber (sali) 070ffa86c0 [IMP] Update rst for target_audiences.rst (v14)
closes odoo/documentation#4741

X-original-commit: 89c1c1b357
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-06-15 19:59:31 +02:00
tong-odoo 7b5ce24bba [IMP] accounting: update Hong Kong FPS content
Impacted versions:

- saas-16.4 or above

tast-3130633

closes odoo/documentation#4565

Related: odoo/odoo#122802
Related: odoo/upgrade#4727
Signed-off-by: Castillo Jonathan (jcs) <jcs@odoo.com>
2023-06-15 17:36:11 +02:00
tong-odoo 05a09da86a [ADD] accounting: add Singapore localisations
Impacted versions:

- saas-16.4 or above

This commit improve below features:

- Singapore accounting documentation
- PayNow QR code documentation

task-3130633

Part-of: odoo/documentation#4565
2023-06-15 17:36:11 +02:00
“Audrey d0ca9fbafe [FIX] Adyen: Fix live/test URLs
closes odoo/documentation#4729

X-original-commit: 1f2f11c42b
Signed-off-by: Castillo Jonathan (jcs) <jcs@odoo.com>
Signed-off-by: auva-odoo <auva@odoo.com>
2023-06-15 09:05:22 +02:00
“Audrey c7713b218f [IMP] Website: Multiple websites
task-3190493

closes odoo/documentation#4715

X-original-commit: 1042ba86fb
Signed-off-by: auva-odoo <auva@odoo.com>
Signed-off-by: Castillo Jonathan (jcs) <jcs@odoo.com>
2023-06-13 12:49:43 +02:00
Tom Aarab (toaa) 978bebf93c [IMP] accounting: OSS report
Added a section on where to find OSS reports and how to export them

task-3305037

closes odoo/documentation#4716

X-original-commit: 0494082a55
Signed-off-by: Castillo Jonathan (jcs) <jcs@odoo.com>
Signed-off-by: Tom Aarab (toaa) <toaa@odoo.com>
2023-06-13 08:44:23 +02:00
Loredana Perazzo 388003e6f1 [IMP] pos: update the register customers section
task-3357882

closes odoo/documentation#4706

X-original-commit: ee4b279e7c
Signed-off-by: Castillo Jonathan (jcs) <jcs@odoo.com>
Signed-off-by: Perazzo Loredana (lrpz) <lrpz@odoo.com>
2023-06-12 12:41:57 +02:00
Tom Aarab (toaa) 7a41103958 [IMP] accounting: follow-up reports
task-3316301.

closes odoo/documentation#4700

X-original-commit: 256ddb30ab
Signed-off-by: Castillo Jonathan (jcs) <jcs@odoo.com>
Signed-off-by: Tom Aarab (toaa) <toaa@odoo.com>
2023-06-12 12:41:29 +02:00
Morfosys 63a9962742 [IMP] l10n: update links in mexico.rst
Update the link for Smarter Web to the appropriate landing page for
Odoo.

closes odoo/documentation#4690

X-original-commit: 7510b4bb23
Signed-off-by: Castillo Jonathan (jcs) <jcs@odoo.com>
2023-06-09 13:50:20 +02:00
Benjamin Hanquin 414bae03ec [IMP] odoo.sh: settings collaborators access matrix
Add the Upgrade submenu, Fix the Settings submenu to User only in
staging branches and improve the style in order to be similar to
supported versions matrix
(https://www.odoo.com/documentation/16.0/administration/maintain/supported_versions.html)

closes odoo/documentation#4689

X-original-commit: 98207740d5
Signed-off-by: Castillo Jonathan (jcs) <jcs@odoo.com>
2023-06-09 13:50:17 +02:00
Lara Martini (larm) bbd5b4da50 [IMP] Expenses: updaitng out of date information and images
closes odoo/documentation#4553

closes odoo/documentation#4669

X-original-commit: 01f40f24ba
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-06-09 02:32:43 +02:00
Xavier-Do 2954463d6e [FIX] werkzeug version
https://werkzeug.palletsprojects.com/en/1.0.x/objects.inv now returns a
404.
2023-06-09 01:07:49 +02:00
“Audrey 18280ab5da [IMP] Adyen: Update directions for setting the URLs
task-3338125

closes odoo/documentation#4661

X-original-commit: 35d355f624
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
Signed-off-by: auva-odoo <auva@odoo.com>
2023-06-08 14:32:37 +02:00
Loredana Perazzo 1fb6059a90 [IMP] pos: update multi employees management
task-3005118

closes odoo/documentation#4657

X-original-commit: e3665393c3
Signed-off-by: Perazzo Loredana (lrpz) <lrpz@odoo.com>
2023-06-08 09:10:07 +02:00
Brandon Seltenrich (BRSE) ae506cb484 [FIX] inventory: fix two step doc
closes odoo/documentation#4652

X-original-commit: c9dcbf6d01
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
Signed-off-by: Brandon Seltenrich (brse) <brse@odoo.com>
2023-06-07 23:26:04 +02:00
“Dallas” 10683c03c7 [IMP] accounting: update VIES VAT number validation
task-3329992

closes odoo/documentation#4641

X-original-commit: d472c646a8
Signed-off-by: Dallas Dean (dade) <dade@odoo.com>
2023-06-07 18:01:19 +02:00
luvi 898b0280db [IMP] web: add documentation for Core components
This commit adds some documentation for features recently added to SelectMenu
and TagsList components during the saas-16.3 development. A screenshot has
been provided to the advances use case of the SelectMenu, with a customization
of the bottom area of the dropdown, to create display a button allowing the
creation of items.

closes odoo/documentation#4631

X-original-commit: 0aad6eafda
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
Signed-off-by: Luca Vitali <luvi@odoo.com>
2023-06-06 14:48:43 +02:00
Antoine Vandevenne (anv) 369aa4a662 [IMP] supported_versions: release saas-16.3
"September" didn't fit in the current table, so this commit also
replaces the previous implementation of the table by a `list-table`
directive... The real reason is that it was long due to ease future
updates of the table.

closes odoo/documentation#4629

X-original-commit: 3d1293757a
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2023-06-06 10:30:08 +02:00
Julien Castiaux 8459cf4db8 [FIX] install: minimal python version is 3.8
See odoo/odoo@44d60e3

closes odoo/documentation#4621

X-original-commit: 38e6d5d368
Signed-off-by: Julien Castiaux (juc) <juc@odoo.com>
2023-06-05 23:59:09 +02:00
Martin Trigaux 885bf17e4c [I18N] *: export saas-16.1 source terms
closes odoo/documentation#4619

X-original-commit: cedd35f653
Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
2023-06-05 14:50:16 +02:00
Tom Aarab (toaa) 844c2ef62e [IMP] accounting: OSS note removal
Removal of a note in 16 that only applies to versions below it.

task-3305037

closes odoo/documentation#4614

X-original-commit: adee414578
Signed-off-by: Castillo Jonathan (jcs) <jcs@odoo.com>
2023-06-02 22:29:33 +02:00
Tom Aarab (toaa) f2ce4374aa [ADD] accounting: incoterms
Seperating Incoterms section from "Intrastat" doc to make it a stand
alone documentation.

task-3305222

closes odoo/documentation#4613

X-original-commit: 971543266a
Signed-off-by: Castillo Jonathan (jcs) <jcs@odoo.com>
2023-06-02 22:29:31 +02:00
tiku-odoo 670f8bb76c [NEW]IoT- Windows IoT doc
closes odoo/documentation#4599

X-original-commit: f449011c39
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-06-02 00:35:55 +02:00
Brandon Seltenrich (BRSE) a4461a7ee4 [FIX] inventory: fix sn doc typos
closes odoo/documentation#4595

X-original-commit: 17b53be028
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
Signed-off-by: Brandon Seltenrich (brse) <brse@odoo.com>
2023-06-01 20:17:13 +02:00
Brandon Seltenrich (BRSE) c30ecfb20d [FIX] inventory: fix note in inv val config
closes odoo/documentation#4594

X-original-commit: 5a55437adc
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
Signed-off-by: Brandon Seltenrich (brse) <brse@odoo.com>
2023-06-01 20:17:10 +02:00
Jess Rogers (jero) 1eb2037c30 [IMP] helpdesk: combine and update invoice time docs
closes odoo/documentation#4579

X-original-commit: b7efbb61b1
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
Signed-off-by: Jessica Rogers (jero) <jero@odoo.com>
2023-06-01 17:55:15 +02:00
“Audrey e3a28d6cf1 [IMP] payment providers: Wire Transfer
task-3301001

closes odoo/documentation#4571

X-original-commit: 882b4b852b
Signed-off-by: Castillo Jonathan (jcs) <jcs@odoo.com>
Signed-off-by: auva-odoo <auva@odoo.com>
2023-05-31 14:23:26 +02:00
Loredana Perazzo e99891c7b7 [ADD] k7e: how to manage articles (add, del, move, structure, share).
Task-3049957

closes odoo/documentation#4557

X-original-commit: 163d653468
Signed-off-by: Perazzo Loredana (lrpz) <lrpz@odoo.com>
Signed-off-by: Castillo Jonathan (jcs) <jcs@odoo.com>
2023-05-30 10:31:52 +02:00
Olivier Dony ac0e703863 [FIX] legal: fix link to pt_BR PDF version 2023-05-26 20:04:54 +02:00
oco-odoo 21b604e0db [IMP] accounting: subformulas for aggregation engine in custom reports
https://github.com/odoo/enterprise/commit/f39862263c7e2332468a69736589a35d66d87b16
introduced two new subformulas for aggregations, but they were still
missing in the doc.

closes odoo/documentation#4562

X-original-commit: de095cc4ad
Signed-off-by: Castillo Jonathan (jcs) <jcs@odoo.com>
2023-05-26 17:29:32 +02:00
“Dallas” 4566a8ec30 [IMP] accounting: update epc qr code
task-3336175

closes odoo/documentation#4545

X-original-commit: fd23308e93
Signed-off-by: Castillo Jonathan (jcs) <jcs@odoo.com>
Signed-off-by: Dean Dallas (dade) <dade@odoo.com>
2023-05-26 16:15:51 +02:00
Olivier Dony 57e2f90924 [FIX] legal: add pt_BR translation of OEEL
Courtesy of LANA :)

closes odoo/documentation#4552

X-original-commit: a718922b0c
Signed-off-by: Olivier Dony (odo) <odo@odoo.com>
2023-05-26 11:40:39 +02:00
Olivier Dony d7324b6950 [FIX] legal: rename pt_BR + build PDF version
X-original-commit: 0df79a70e0
Part-of: odoo/documentation#4552
2023-05-26 11:40:39 +02:00
jopa-odoo c2cfc63466 [ADD] Legal: Portuguese (Brasil) translation of Odoo Enterprise Agreement
X-original-commit: 966bade927
Part-of: odoo/documentation#4552
2023-05-26 11:40:39 +02:00
“Chiara 3894c41631 [IMP] accounting: fiscal position update
task-3272939

closes odoo/documentation#4532

X-original-commit: 440c18ca01
Signed-off-by: Platteau Xavier (xpl) <xpl@odoo.com>
Signed-off-by: chiaraprattico <chpr@odoo.com>
2023-05-25 12:23:36 +02:00
Gauthier Wala (gawa) 99c1636974 [IMP] accounting: default taxes in taxes.rst
Since https://github.com/odoo/odoo/pull/115222, a new line on an invoice
won't have the default sales tax put on by default. If there are no
taxes on the product, the account or from predictive, the tax will stay
empty. Its use has been restricted back to the tax put on new products.
It is still used in Accounting Firms mode, as we don't want people
to have to input the product when quick encoding.

task-3045026

closes odoo/documentation#4533

X-original-commit: 768c2b231b
Signed-off-by: Castillo Jonathan (jcs) <jcs@odoo.com>
2023-05-25 01:08:42 +02:00
Brandon Seltenrich (BRSE) 2a11aa8a82 [IMP] inventory: fix and update lots
closes odoo/documentation#4528

X-original-commit: 5bc3b94b61
Signed-off-by: Brandon Seltenrich (brse) <brse@odoo.com>
2023-05-24 18:17:46 +02:00
“Dallas” 76b013bbe3 [IMP] contributing: change gui abbreviation to lower case
closes odoo/documentation#4514

X-original-commit: 20972dc033
Signed-off-by: Dean Dallas (dade) <dade@odoo.com>
2023-05-24 15:45:29 +02:00
“Chiara 9783721529 [IMP] accounting: improve accounting concept
task-2846856

closes odoo/documentation#4520

X-original-commit: 4fc24468e4
Signed-off-by: Platteau Xavier (xpl) <xpl@odoo.com>
Signed-off-by: chiaraprattico <chpr@odoo.com>
2023-05-24 08:39:37 +02:00
Tom Aarab (toaa) e7dad58064 [ADD] Sales: loyalty and discount programs
closes odoo/documentation#4474

X-original-commit: 04f67c0b3f
Signed-off-by: Melanie Nguyen (meng) <meng@odoo.com>
2023-05-23 16:31:55 +02:00
Tom Aarab (toaa) 93b9d802e7 [ADD] accounting: VAT units
task-2557013

16.0: Line 36 = "Create" --> "New"

closes odoo/documentation#4503

X-original-commit: 214ce3075c
Signed-off-by: Aarab Tom (toaa) <toaa@odoo.com>
2023-05-23 14:52:19 +02:00
tiku-odoo a01bd25041 [IMP]Misc:SysParm-edits-email-doc
closes odoo/documentation#4494

X-original-commit: 9267ce21a5
Signed-off-by: Timothy Kukulka (tiku) <tiku@odoo.com>
2023-05-22 23:18:24 +02:00
Melanie Nguyen (meng) 9fcd175e58 [IMP] subscriptions: update subscription plans
closes odoo/documentation#4490

X-original-commit: 71024deb7b
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2023-05-22 22:10:44 +02:00
3402 changed files with 2519665 additions and 297731 deletions
+108 -49
View File
@@ -1,63 +1,122 @@
[main]
host = https://www.transifex.com
[o:odoo:p:odoo-16-doc:r:administration]
file_filter = locale/<lang>/LC_MESSAGES/administration.po
source_file = locale/sources/administration.pot
source_lang = en
[o:odoo:p:odoo-17-doc:r:administration]
file_filter = locale/<lang>/LC_MESSAGES/administration.po
source_file = locale/sources/administration.pot
type = POT
minimum_perc = 0
resource_name = administration
replace_edited_strings = false
keep_translations = false
source_lang = en
[o:odoo:p:odoo-16-doc:r:applications]
file_filter = locale/<lang>/LC_MESSAGES/applications.po
source_file = locale/sources/applications.pot
source_lang = en
[o:odoo:p:odoo-17-doc:r:applications]
file_filter = locale/<lang>/LC_MESSAGES/applications.po
source_file = locale/sources/applications.pot
type = POT
minimum_perc = 0
resource_name = applications
replace_edited_strings = false
keep_translations = false
source_lang = en
[o:odoo:p:odoo-16-doc:r:finance]
file_filter = locale/<lang>/LC_MESSAGES/finance.po
source_file = locale/sources/finance.pot
source_lang = en
[o:odoo:p:odoo-17-doc:r:finance]
file_filter = locale/<lang>/LC_MESSAGES/finance.po
source_file = locale/sources/finance.pot
type = POT
minimum_perc = 0
resource_name = finance
replace_edited_strings = false
keep_translations = false
source_lang = en
[o:odoo:p:odoo-16-doc:r:general]
file_filter = locale/<lang>/LC_MESSAGES/general.po
source_file = locale/sources/general.pot
source_lang = en
[o:odoo:p:odoo-17-doc:r:general]
file_filter = locale/<lang>/LC_MESSAGES/general.po
source_file = locale/sources/general.pot
type = POT
minimum_perc = 0
resource_name = general
replace_edited_strings = false
keep_translations = false
source_lang = en
[o:odoo:p:odoo-16-doc:r:index]
file_filter = locale/<lang>/LC_MESSAGES/index.po
source_file = locale/sources/index.pot
source_lang = en
[o:odoo:p:odoo-17-doc:r:index]
file_filter = locale/<lang>/LC_MESSAGES/index.po
source_file = locale/sources/index.pot
type = POT
minimum_perc = 0
resource_name = index
replace_edited_strings = false
keep_translations = false
source_lang = en
[o:odoo:p:odoo-16-doc:r:inventory_and_mrp]
file_filter = locale/<lang>/LC_MESSAGES/inventory_and_mrp.po
source_file = locale/sources/inventory_and_mrp.pot
source_lang = en
[o:odoo:p:odoo-17-doc:r:inventory_and_mrp]
file_filter = locale/<lang>/LC_MESSAGES/inventory_and_mrp.po
source_file = locale/sources/inventory_and_mrp.pot
type = POT
minimum_perc = 0
resource_name = inventory_and_mrp
replace_edited_strings = false
keep_translations = false
source_lang = en
[o:odoo:p:odoo-16-doc:r:marketing]
file_filter = locale/<lang>/LC_MESSAGES/marketing.po
source_file = locale/sources/marketing.pot
source_lang = en
[o:odoo:p:odoo-17-doc:r:marketing]
file_filter = locale/<lang>/LC_MESSAGES/marketing.po
source_file = locale/sources/marketing.pot
type = POT
minimum_perc = 0
resource_name = marketing
replace_edited_strings = false
keep_translations = false
source_lang = en
[o:odoo:p:odoo-16-doc:r:productivity]
file_filter = locale/<lang>/LC_MESSAGES/productivity.po
source_file = locale/sources/productivity.pot
source_lang = en
[o:odoo:p:odoo-17-doc:r:productivity]
file_filter = locale/<lang>/LC_MESSAGES/productivity.po
source_file = locale/sources/productivity.pot
type = POT
minimum_perc = 0
resource_name = productivity
replace_edited_strings = false
keep_translations = false
source_lang = en
[o:odoo:p:odoo-16-doc:r:sales]
file_filter = locale/<lang>/LC_MESSAGES/sales.po
source_file = locale/sources/sales.pot
source_lang = en
[o:odoo:p:odoo-17-doc:r:sales]
file_filter = locale/<lang>/LC_MESSAGES/sales.po
source_file = locale/sources/sales.pot
type = POT
minimum_perc = 0
resource_name = sales
replace_edited_strings = false
keep_translations = false
source_lang = en
[o:odoo:p:odoo-16-doc:r:services]
file_filter = locale/<lang>/LC_MESSAGES/services.po
source_file = locale/sources/services.pot
source_lang = en
[o:odoo:p:odoo-17-doc:r:services]
file_filter = locale/<lang>/LC_MESSAGES/services.po
source_file = locale/sources/services.pot
type = POT
minimum_perc = 0
resource_name = services
replace_edited_strings = false
keep_translations = false
source_lang = en
[o:odoo:p:odoo-16-doc:r:user_settings]
file_filter = locale/<lang>/LC_MESSAGES/settings.po
source_file = locale/sources/settings.pot
source_lang = en
[o:odoo:p:odoo-16-doc:r:websites]
file_filter = locale/<lang>/LC_MESSAGES/websites.po
source_file = locale/sources/websites.pot
source_lang = en
[o:odoo:p:odoo-17-doc:r:user_settings]
file_filter = locale/<lang>/LC_MESSAGES/settings.po
source_file = locale/sources/settings.pot
type = POT
minimum_perc = 0
resource_name = settings
replace_edited_strings = false
keep_translations = false
source_lang = en
[o:odoo:p:odoo-17-doc:r:websites]
file_filter = locale/<lang>/LC_MESSAGES/websites.po
source_file = locale/sources/websites.pot
type = POT
minimum_perc = 0
resource_name = websites
replace_edited_strings = false
keep_translations = false
source_lang = en
+13
View File
@@ -0,0 +1,13 @@
Most of the files are
Copyright (c) 2004-2023 Odoo S.A.
Some files may also contain contributions from third
parties. In this case the original copyright of
the contributions can be traced through the
history of the source version control system.
When that is not the case, the files contain a prominent
notice stating the original copyright and applicable
license, or come with their own dedicated COPYRIGHT
and/or LICENSE file.
+428
View File
@@ -0,0 +1,428 @@
Attribution-ShareAlike 4.0 International
=======================================================================
Creative Commons Corporation ("Creative Commons") is not a law firm and
does not provide legal services or legal advice. Distribution of
Creative Commons public licenses does not create a lawyer-client or
other relationship. Creative Commons makes its licenses and related
information available on an "as-is" basis. Creative Commons gives no
warranties regarding its licenses, any material licensed under their
terms and conditions, or any related information. Creative Commons
disclaims all liability for damages resulting from their use to the
fullest extent possible.
Using Creative Commons Public Licenses
Creative Commons public licenses provide a standard set of terms and
conditions that creators and other rights holders may use to share
original works of authorship and other material subject to copyright
and certain other rights specified in the public license below. The
following considerations are for informational purposes only, are not
exhaustive, and do not form part of our licenses.
Considerations for licensors: Our public licenses are
intended for use by those authorized to give the public
permission to use material in ways otherwise restricted by
copyright and certain other rights. Our licenses are
irrevocable. Licensors should read and understand the terms
and conditions of the license they choose before applying it.
Licensors should also secure all rights necessary before
applying our licenses so that the public can reuse the
material as expected. Licensors should clearly mark any
material not subject to the license. This includes other CC-
licensed material, or material used under an exception or
limitation to copyright. More considerations for licensors:
wiki.creativecommons.org/Considerations_for_licensors
Considerations for the public: By using one of our public
licenses, a licensor grants the public permission to use the
licensed material under specified terms and conditions. If
the licensor's permission is not necessary for any reason--for
example, because of any applicable exception or limitation to
copyright--then that use is not regulated by the license. Our
licenses grant only permissions under copyright and certain
other rights that a licensor has authority to grant. Use of
the licensed material may still be restricted for other
reasons, including because others have copyright or other
rights in the material. A licensor may make special requests,
such as asking that all changes be marked or described.
Although not required by our licenses, you are encouraged to
respect those requests where reasonable. More considerations
for the public:
wiki.creativecommons.org/Considerations_for_licensees
=======================================================================
Creative Commons Attribution-ShareAlike 4.0 International Public
License
By exercising the Licensed Rights (defined below), You accept and agree
to be bound by the terms and conditions of this Creative Commons
Attribution-ShareAlike 4.0 International Public License ("Public
License"). To the extent this Public License may be interpreted as a
contract, You are granted the Licensed Rights in consideration of Your
acceptance of these terms and conditions, and the Licensor grants You
such rights in consideration of benefits the Licensor receives from
making the Licensed Material available under these terms and
conditions.
Section 1 -- Definitions.
a. Adapted Material means material subject to Copyright and Similar
Rights that is derived from or based upon the Licensed Material
and in which the Licensed Material is translated, altered,
arranged, transformed, or otherwise modified in a manner requiring
permission under the Copyright and Similar Rights held by the
Licensor. For purposes of this Public License, where the Licensed
Material is a musical work, performance, or sound recording,
Adapted Material is always produced where the Licensed Material is
synched in timed relation with a moving image.
b. Adapter's License means the license You apply to Your Copyright
and Similar Rights in Your contributions to Adapted Material in
accordance with the terms and conditions of this Public License.
c. BY-SA Compatible License means a license listed at
creativecommons.org/compatiblelicenses, approved by Creative
Commons as essentially the equivalent of this Public License.
d. Copyright and Similar Rights means copyright and/or similar rights
closely related to copyright including, without limitation,
performance, broadcast, sound recording, and Sui Generis Database
Rights, without regard to how the rights are labeled or
categorized. For purposes of this Public License, the rights
specified in Section 2(b)(1)-(2) are not Copyright and Similar
Rights.
e. Effective Technological Measures means those measures that, in the
absence of proper authority, may not be circumvented under laws
fulfilling obligations under Article 11 of the WIPO Copyright
Treaty adopted on December 20, 1996, and/or similar international
agreements.
f. Exceptions and Limitations means fair use, fair dealing, and/or
any other exception or limitation to Copyright and Similar Rights
that applies to Your use of the Licensed Material.
g. License Elements means the license attributes listed in the name
of a Creative Commons Public License. The License Elements of this
Public License are Attribution and ShareAlike.
h. Licensed Material means the artistic or literary work, database,
or other material to which the Licensor applied this Public
License.
i. Licensed Rights means the rights granted to You subject to the
terms and conditions of this Public License, which are limited to
all Copyright and Similar Rights that apply to Your use of the
Licensed Material and that the Licensor has authority to license.
j. Licensor means the individual(s) or entity(ies) granting rights
under this Public License.
k. Share means to provide material to the public by any means or
process that requires permission under the Licensed Rights, such
as reproduction, public display, public performance, distribution,
dissemination, communication, or importation, and to make material
available to the public including in ways that members of the
public may access the material from a place and at a time
individually chosen by them.
l. Sui Generis Database Rights means rights other than copyright
resulting from Directive 96/9/EC of the European Parliament and of
the Council of 11 March 1996 on the legal protection of databases,
as amended and/or succeeded, as well as other essentially
equivalent rights anywhere in the world.
m. You means the individual or entity exercising the Licensed Rights
under this Public License. Your has a corresponding meaning.
Section 2 -- Scope.
a. License grant.
1. Subject to the terms and conditions of this Public License,
the Licensor hereby grants You a worldwide, royalty-free,
non-sublicensable, non-exclusive, irrevocable license to
exercise the Licensed Rights in the Licensed Material to:
a. reproduce and Share the Licensed Material, in whole or
in part; and
b. produce, reproduce, and Share Adapted Material.
2. Exceptions and Limitations. For the avoidance of doubt, where
Exceptions and Limitations apply to Your use, this Public
License does not apply, and You do not need to comply with
its terms and conditions.
3. Term. The term of this Public License is specified in Section
6(a).
4. Media and formats; technical modifications allowed. The
Licensor authorizes You to exercise the Licensed Rights in
all media and formats whether now known or hereafter created,
and to make technical modifications necessary to do so. The
Licensor waives and/or agrees not to assert any right or
authority to forbid You from making technical modifications
necessary to exercise the Licensed Rights, including
technical modifications necessary to circumvent Effective
Technological Measures. For purposes of this Public License,
simply making modifications authorized by this Section 2(a)
(4) never produces Adapted Material.
5. Downstream recipients.
a. Offer from the Licensor -- Licensed Material. Every
recipient of the Licensed Material automatically
receives an offer from the Licensor to exercise the
Licensed Rights under the terms and conditions of this
Public License.
b. Additional offer from the Licensor -- Adapted Material.
Every recipient of Adapted Material from You
automatically receives an offer from the Licensor to
exercise the Licensed Rights in the Adapted Material
under the conditions of the Adapter's License You apply.
c. No downstream restrictions. You may not offer or impose
any additional or different terms or conditions on, or
apply any Effective Technological Measures to, the
Licensed Material if doing so restricts exercise of the
Licensed Rights by any recipient of the Licensed
Material.
6. No endorsement. Nothing in this Public License constitutes or
may be construed as permission to assert or imply that You
are, or that Your use of the Licensed Material is, connected
with, or sponsored, endorsed, or granted official status by,
the Licensor or others designated to receive attribution as
provided in Section 3(a)(1)(A)(i).
b. Other rights.
1. Moral rights, such as the right of integrity, are not
licensed under this Public License, nor are publicity,
privacy, and/or other similar personality rights; however, to
the extent possible, the Licensor waives and/or agrees not to
assert any such rights held by the Licensor to the limited
extent necessary to allow You to exercise the Licensed
Rights, but not otherwise.
2. Patent and trademark rights are not licensed under this
Public License.
3. To the extent possible, the Licensor waives any right to
collect royalties from You for the exercise of the Licensed
Rights, whether directly or through a collecting society
under any voluntary or waivable statutory or compulsory
licensing scheme. In all other cases the Licensor expressly
reserves any right to collect such royalties.
Section 3 -- License Conditions.
Your exercise of the Licensed Rights is expressly made subject to the
following conditions.
a. Attribution.
1. If You Share the Licensed Material (including in modified
form), You must:
a. retain the following if it is supplied by the Licensor
with the Licensed Material:
i. identification of the creator(s) of the Licensed
Material and any others designated to receive
attribution, in any reasonable manner requested by
the Licensor (including by pseudonym if
designated);
ii. a copyright notice;
iii. a notice that refers to this Public License;
iv. a notice that refers to the disclaimer of
warranties;
v. a URI or hyperlink to the Licensed Material to the
extent reasonably practicable;
b. indicate if You modified the Licensed Material and
retain an indication of any previous modifications; and
c. indicate the Licensed Material is licensed under this
Public License, and include the text of, or the URI or
hyperlink to, this Public License.
2. You may satisfy the conditions in Section 3(a)(1) in any
reasonable manner based on the medium, means, and context in
which You Share the Licensed Material. For example, it may be
reasonable to satisfy the conditions by providing a URI or
hyperlink to a resource that includes the required
information.
3. If requested by the Licensor, You must remove any of the
information required by Section 3(a)(1)(A) to the extent
reasonably practicable.
b. ShareAlike.
In addition to the conditions in Section 3(a), if You Share
Adapted Material You produce, the following conditions also apply.
1. The Adapter's License You apply must be a Creative Commons
license with the same License Elements, this version or
later, or a BY-SA Compatible License.
2. You must include the text of, or the URI or hyperlink to, the
Adapter's License You apply. You may satisfy this condition
in any reasonable manner based on the medium, means, and
context in which You Share Adapted Material.
3. You may not offer or impose any additional or different terms
or conditions on, or apply any Effective Technological
Measures to, Adapted Material that restrict exercise of the
rights granted under the Adapter's License You apply.
Section 4 -- Sui Generis Database Rights.
Where the Licensed Rights include Sui Generis Database Rights that
apply to Your use of the Licensed Material:
a. for the avoidance of doubt, Section 2(a)(1) grants You the right
to extract, reuse, reproduce, and Share all or a substantial
portion of the contents of the database;
b. if You include all or a substantial portion of the database
contents in a database in which You have Sui Generis Database
Rights, then the database in which You have Sui Generis Database
Rights (but not its individual contents) is Adapted Material,
including for purposes of Section 3(b); and
c. You must comply with the conditions in Section 3(a) if You Share
all or a substantial portion of the contents of the database.
For the avoidance of doubt, this Section 4 supplements and does not
replace Your obligations under this Public License where the Licensed
Rights include other Copyright and Similar Rights.
Section 5 -- Disclaimer of Warranties and Limitation of Liability.
a. UNLESS OTHERWISE SEPARATELY UNDERTAKEN BY THE LICENSOR, TO THE
EXTENT POSSIBLE, THE LICENSOR OFFERS THE LICENSED MATERIAL AS-IS
AND AS-AVAILABLE, AND MAKES NO REPRESENTATIONS OR WARRANTIES OF
ANY KIND CONCERNING THE LICENSED MATERIAL, WHETHER EXPRESS,
IMPLIED, STATUTORY, OR OTHER. THIS INCLUDES, WITHOUT LIMITATION,
WARRANTIES OF TITLE, MERCHANTABILITY, FITNESS FOR A PARTICULAR
PURPOSE, NON-INFRINGEMENT, ABSENCE OF LATENT OR OTHER DEFECTS,
ACCURACY, OR THE PRESENCE OR ABSENCE OF ERRORS, WHETHER OR NOT
KNOWN OR DISCOVERABLE. WHERE DISCLAIMERS OF WARRANTIES ARE NOT
ALLOWED IN FULL OR IN PART, THIS DISCLAIMER MAY NOT APPLY TO YOU.
b. TO THE EXTENT POSSIBLE, IN NO EVENT WILL THE LICENSOR BE LIABLE
TO YOU ON ANY LEGAL THEORY (INCLUDING, WITHOUT LIMITATION,
NEGLIGENCE) OR OTHERWISE FOR ANY DIRECT, SPECIAL, INDIRECT,
INCIDENTAL, CONSEQUENTIAL, PUNITIVE, EXEMPLARY, OR OTHER LOSSES,
COSTS, EXPENSES, OR DAMAGES ARISING OUT OF THIS PUBLIC LICENSE OR
USE OF THE LICENSED MATERIAL, EVEN IF THE LICENSOR HAS BEEN
ADVISED OF THE POSSIBILITY OF SUCH LOSSES, COSTS, EXPENSES, OR
DAMAGES. WHERE A LIMITATION OF LIABILITY IS NOT ALLOWED IN FULL OR
IN PART, THIS LIMITATION MAY NOT APPLY TO YOU.
c. The disclaimer of warranties and limitation of liability provided
above shall be interpreted in a manner that, to the extent
possible, most closely approximates an absolute disclaimer and
waiver of all liability.
Section 6 -- Term and Termination.
a. This Public License applies for the term of the Copyright and
Similar Rights licensed here. However, if You fail to comply with
this Public License, then Your rights under this Public License
terminate automatically.
b. Where Your right to use the Licensed Material has terminated under
Section 6(a), it reinstates:
1. automatically as of the date the violation is cured, provided
it is cured within 30 days of Your discovery of the
violation; or
2. upon express reinstatement by the Licensor.
For the avoidance of doubt, this Section 6(b) does not affect any
right the Licensor may have to seek remedies for Your violations
of this Public License.
c. For the avoidance of doubt, the Licensor may also offer the
Licensed Material under separate terms or conditions or stop
distributing the Licensed Material at any time; however, doing so
will not terminate this Public License.
d. Sections 1, 5, 6, 7, and 8 survive termination of this Public
License.
Section 7 -- Other Terms and Conditions.
a. The Licensor shall not be bound by any additional or different
terms or conditions communicated by You unless expressly agreed.
b. Any arrangements, understandings, or agreements regarding the
Licensed Material not stated herein are separate from and
independent of the terms and conditions of this Public License.
Section 8 -- Interpretation.
a. For the avoidance of doubt, this Public License does not, and
shall not be interpreted to, reduce, limit, restrict, or impose
conditions on any use of the Licensed Material that could lawfully
be made without permission under this Public License.
b. To the extent possible, if any provision of this Public License is
deemed unenforceable, it shall be automatically reformed to the
minimum extent necessary to make it enforceable. If the provision
cannot be reformed, it shall be severed from this Public License
without affecting the enforceability of the remaining terms and
conditions.
c. No term or condition of this Public License will be waived and no
failure to comply consented to unless expressly agreed to by the
Licensor.
d. Nothing in this Public License constitutes or may be interpreted
as a limitation upon, or waiver of, any privileges and immunities
that apply to the Licensor or You, including from the legal
processes of any jurisdiction or authority.
=======================================================================
Creative Commons is not a party to its public
licenses. Notwithstanding, Creative Commons may elect to apply one of
its public licenses to material it publishes and in those instances
will be considered the “Licensor.” The text of the Creative Commons
public licenses is dedicated to the public domain under the CC0 Public
Domain Dedication. Except for the limited purpose of indicating that
material is shared under a Creative Commons public license or as
otherwise permitted by the Creative Commons policies published at
creativecommons.org/policies, Creative Commons does not authorize the
use of the trademark "Creative Commons" or any other trademark or logo
of Creative Commons without its prior written consent including,
without limitation, in connection with any unauthorized modifications
to any of its public licenses or any other arrangements,
understandings, or agreements concerning use of licensed material. For
the avoidance of doubt, this paragraph does not form part of the
public licenses.
Creative Commons may be contacted at creativecommons.org.
+12 -2
View File
@@ -26,7 +26,7 @@ SOURCE_DIR = content
HTML_BUILD_DIR = $(BUILD_DIR)/html
ifdef VERSIONS
HTML_BUILD_DIR := $(HTML_BUILD_DIR)/master
HTML_BUILD_DIR := $(HTML_BUILD_DIR)/17.0
endif
ifneq ($(CURRENT_LANG),en)
HTML_BUILD_DIR := $(HTML_BUILD_DIR)/$(CURRENT_LANG)
@@ -84,5 +84,15 @@ static: $(HTML_BUILD_DIR)/_static/style.css
cp -r extensions/odoo_theme/static/* $(HTML_BUILD_DIR)/_static/
cp -r static/* $(HTML_BUILD_DIR)/_static/
# Called by runbot for the ci/documentation_guideline check.
test:
@python tests/main.py $(SOURCE_DIR)/administration $(SOURCE_DIR)/applications $(SOURCE_DIR)/contributing $(SOURCE_DIR)/developer $(SOURCE_DIR)/services redirects
@python tests/main.py $(SOURCE_DIR)/administration $(SOURCE_DIR)/applications $(SOURCE_DIR)/contributing $(SOURCE_DIR)/developer redirects
# Similar as `test`, but called only manually by content reviewers to trigger extra checks.
review:
@read -p "Enter relative content path: " path; read -p "Enter max line length (default: 100): " line_length; \
if [ -z "$$path" ]; then echo "Error: Path cannot be empty"; exit 1; fi; \
if echo $$path | grep -q 'content/'; then path=`echo $$path | sed 's|content/||'`; fi; \
if [ -z "$$line_length" ]; then line_length=100; fi; \
export REVIEW=1; \
python tests/main.py --max-line-length=$$line_length $(SOURCE_DIR)/$$path
+30 -4
View File
@@ -22,7 +22,7 @@ copyright = 'Odoo S.A.'
# `version` is the version info for the project being documented, acts as replacement for |version|,
# also used in various other places throughout the built documents.
# `release` is the full version, including alpha/beta/rc tags. Acts as replacement for |release|.
version = release = 'master'
version = release = '17.0'
# `current_branch` is the technical name of the current branch.
# E.g., saas-15.4 -> saas-15.4; 12.0 -> 12.0, master -> master (*).
@@ -195,7 +195,7 @@ todo_include_todos = False
intersphinx_mapping = {
'pillow': ('https://pillow.readthedocs.io/en/stable/', None),
'python': ('https://docs.python.org/3/', None),
'werkzeug': ('https://werkzeug.palletsprojects.com/en/1.0.x/', None),
'werkzeug': ('https://werkzeug.palletsprojects.com/en/2.3.x/', None),
}
github_user = 'odoo'
@@ -213,13 +213,16 @@ sphinx.transforms.i18n.docname_to_domain = (
# is populated. If a version is passed to `versions` but is not listed here, it will not be shown.
versions_names = {
'master': "Master",
'saas-17.1': "Odoo Online",
'17.0': "Odoo 17",
'saas-16.4': "Odoo Online",
'saas-16.3': "Odoo Online",
'saas-16.2': "Odoo Online",
'saas-16.1': "Odoo Online",
'16.0': "Odoo 16",
'saas-15.2': "Odoo Online",
'15.0': "Odoo 15",
'14.0': "Odoo 14",
'13.0': "Odoo 13",
}
# The language names that should be shown in the language switcher, if the config option `languages`
@@ -312,18 +315,25 @@ latex_documents = [
('legal/terms/i18n/enterprise_tex_de', 'odoo_enterprise_agreement_de.tex',
'Odoo Enterprise Subscription Agreement (DE)', '', 'howto'),
('legal/terms/i18n/terms_of_sale_de', 'terms_of_sale_de.tex',
'Allgemeine Verkaufsbedingungen Odoo', '', 'howto'),
('legal/terms/i18n/enterprise_tex_es', 'odoo_enterprise_agreement_es.tex',
'Odoo Enterprise Subscription Agreement (ES)', '', 'howto'),
('legal/terms/i18n/partnership_tex_es',
'odoo_partnership_agreement_es.tex', 'Odoo Partnership Agreement (ES)', '', 'howto'),
('legal/terms/i18n/terms_of_sale_es', 'terms_of_sale_es.tex',
'Términos Generales de Venta Odoo', '', 'howto'),
('legal/terms/i18n/enterprise_tex_pt_BR', 'odoo_enterprise_agreement_pt_BR.tex',
'Odoo Enterprise Subscription Agreement (PT)', '', 'howto'),
]
# List of languages that have legal translations (excluding EN). The keys must be in
# `languages_names`. These translations will have a link to their versions of the legal
# contracts, instead of the default EN one. The main legal documents are not part of the
# translations since they have legal meaning.
legal_translations = ['de', 'es', 'fr', 'nl']
legal_translations = ['de', 'es', 'fr', 'nl', 'pt_BR']
# The name of an image file (relative to this directory) to place at the top of the title page.
latex_logo = 'static/img/odoo_logo.png'
@@ -469,8 +479,24 @@ def _generate_alternate_urls(app, pagename, templatename, context, doctree):
_version = _version or app.config.version
_lang = _lang or app.config.language or 'en'
_canonical_page = f'{pagename}.html'
# legal translations have different URLs schemes as they are not managed on transifex
# e.g. FR translation of /terms/enterprise => /fr/terms/enterprise_fr
if pagename.startswith('legal/terms/'):
if _lang in legal_translations and not pagename.endswith(f"_{_lang}"):
# remove language code for current translation, set target one
_page = re.sub("_[a-z]{2}$", "", pagename)
if 'terms/i18n' not in _page:
_page = _page.replace("/terms/", "/terms/i18n/")
_canonical_page = f'{_page}_{_lang}.html'
elif _lang == 'en' and pagename.endswith(tuple(f"_{l}" for l in legal_translations)):
# remove language code for current translation, link to original EN one
_page = re.sub("_[a-z]{2}$", "", pagename)
_canonical_page = f'{_page.replace("/i18n/", "/")}.html'
if app.config.is_remote_build:
_canonical_page = _canonical_page.replace('index.html', '')
return f'{_root}' \
f'{f"/{_version}" if app.config.versions else ""}' \
f'{f"/{_lang}" if _lang != "en" else ""}' \
+42 -6
View File
@@ -1,14 +1,50 @@
:nosearch:
:show-content:
=======
Install
=======
.. If you add content on this page, remove the redirect rule 'install -> install/install'
Depending on the intended use case, there are multiple ways to install Odoo - or not install it at
all.
- :doc:`Online <install/online>` is the easiest way to use Odoo in production or to try it.
- :doc:`Packaged installers <install/packages>` are suitable for testing Odoo and developing
modules. They can be used for long-term production with additional deployment and maintenance
work.
- :doc:`Source install <install/source>` provides greater flexibility, as it allows, for example,
running multiple Odoo versions on the same system. It is adequate to develop modules and can be
used as a base for production deployment.
- A `Docker <https://hub.docker.com/_/odoo/>`_ base image is available for development or
deployment.
.. _install/editions:
Editions
========
There are two different editions.
**Odoo Community** is the free and open-source version of the software, licensed under the `GNU
LGPLv3 <https://github.com/odoo/odoo/blob/master/LICENSE>`_. It is the core upon which Odoo
Enterprise is built.
**Odoo Enterprise** is the shared source version of the software, giving access to more
functionalities, including functional support, upgrades, and hosting. `Pricing
<https://www.odoo.com/pricing-plan>`_ starts from one app free.
.. tip::
:doc:`Switch from Community to Enterprise <maintain/enterprise>` at any time (except for the
source install).
.. toctree::
install/install
install/deploy
install/cdn
install/email_gateway
install/online
install/packages
install/source
install/deploy
install/cdn
install/email_gateway
install/geo_ip
+144 -93
View File
@@ -3,7 +3,7 @@ System configuration
====================
This document describes basic steps to set up Odoo in production or on an
internet-facing server. It follows :ref:`installation <setup/install>`, and is
internet-facing server. It follows :doc:`installation <../install>`, and is
not generally necessary for a development systems that is not exposed on the
internet.
@@ -43,7 +43,7 @@ Configuration samples
* Show only databases with names beginning with 'mycompany'
in ``/etc/odoo.conf`` set:
in :ref:`the configuration file <reference/cmdline/config_file>` set:
.. code-block:: ini
@@ -55,7 +55,7 @@ in ``/etc/odoo.conf`` set:
was sent to ``www.mycompany.com`` or ``mycompany.co.uk``, but not
for ``www2.mycompany.com`` or ``helpdesk.mycompany.com``.
in ``/etc/odoo.conf`` set:
in :ref:`the configuration file <reference/cmdline/config_file>` set:
.. code-block:: ini
@@ -123,7 +123,7 @@ Out of the box, Odoo connects to a local postgres over UNIX socket via port
<reference/cmdline/server/database>` when your Postgres deployment is not
local and/or does not use the installation defaults.
The :ref:`packaged installers <setup/install/packaged>` will automatically
The :doc:`packaged installers <packages>` will automatically
create a new user (``odoo``) and set it as the database user.
* The database management screens are protected by the ``admin_passwd``
@@ -150,7 +150,7 @@ Configuration sample
* with 'pwd' as a password
* filtering only db with a name beginning with 'mycompany'
in ``/etc/odoo.conf`` set:
in :ref:`the configuration file <reference/cmdline/config_file>` set:
.. code-block:: ini
@@ -179,21 +179,31 @@ or 'verify-full'
Builtin server
==============
Odoo includes built-in HTTP servers, using either multithreading or
multiprocessing.
Odoo includes built-in HTTP, cron, and live-chat servers, using either multi-threading or
multi-processing.
For production use, it is recommended to use the multiprocessing server as it
increases stability, makes somewhat better use of computing resources and can
be better monitored and resource-restricted.
The **multi-threaded** server is a simpler server primarily used for development, demonstrations,
and its compatibility with various operating systems (including Windows). A new thread is spawned
for every new HTTP request, even for long-lived connections such as websocket. Extra daemonic cron
threads are spawned too. Due to a Python limitation (GIL), it doesn't make the best use of the
hardware.
* Multiprocessing is enabled by configuring :option:`a non-zero number of
worker processes <odoo-bin --workers>`, the number of workers should be based
on the number of cores in the machine (possibly with some room for cron
workers depending on how much cron work is predicted)
* Worker limits can be configured based on the hardware configuration to avoid
resources exhaustion
The multi-threaded server is the default server, also for docker containers. It is selected by
leaving the :option:`--workers <odoo-bin --workers>` option out or setting it to ``0``.
.. warning:: multiprocessing mode currently isn't available on Windows
The **multi-processing** server is a full-blown server primarily used for production. It is not
liable to the same Python limitation (GIL) on resource usage and hence makes the best use of the
hardware. A pool of workers is created upon server startup. New HTTP requests are queued by the OS
until there are workers ready to process them. An extra event-driven HTTP worker for the live chat
is spawned on an alternative port. Extra cron workers are spawned too. A configurable process
reaper monitors resource usage and can kill/restart failed workers.
The multi-processing server is opt-in. It is selected by setting the :option:`--workers
<odoo-bin --workers>` option to a non-null integer.
.. note::
Because it is highly customized for Linux servers, the multi-processing server is not available
on Windows.
Worker number calculation
-------------------------
@@ -214,18 +224,12 @@ Needed RAM = #worker * ( (light_worker_ratio * light_worker_ram_estimation) + (h
LiveChat
--------
In multiprocessing, a dedicated LiveChat worker is automatically started and
listening on :option:`the gevent port <odoo-bin --gevent-port>` but
the client will not connect to it.
Instead you must have a proxy redirecting requests whose URL starts with
``/websocket/`` to the gevent port. Other request should be proxied to
the :option:`normal HTTP port <odoo-bin --http-port>`
To achieve such a thing, you'll need to deploy a reverse proxy in front of Odoo,
like nginx or apache. When doing so, you'll need to forward some more http Headers
to Odoo, and activate the proxy_mode in Odoo configuration to have Odoo read those
headers.
In multi-processing, a dedicated LiveChat worker is automatically started and listens on
the :option:`--gevent-port <odoo-bin --gevent-port>`. By default, the HTTP requests will keep
accessing the normal HTTP workers instead of the LiveChat one. You must deploy a proxy in front of
Odoo and redirect incoming requests whose path starts with ``/websocket/`` to the LiveChat worker.
You must also start Odoo in :option:`--proxy-mode <odoo-bin --proxy-mode>` so it uses the real
client headers (such as hostname, scheme, and IP) instead of the proxy ones.
Configuration sample
--------------------
@@ -238,7 +242,7 @@ Configuration sample
* We'll use 8 workers + 1 for cron. We'll also use a monitoring system to measure cpu load, and check if it's between 7 and 7.5 .
* RAM = 9 * ((0.8*150) + (0.2*1024)) ~= 3Go RAM for Odoo
in ``/etc/odoo.conf``:
in :ref:`the configuration file <reference/cmdline/config_file>`:
.. code-block:: ini
@@ -273,7 +277,7 @@ Configuration sample
* Redirect http requests to https
* Proxy requests to odoo
in ``/etc/odoo.conf`` set:
in :ref:`the configuration file <reference/cmdline/config_file>` set:
.. code-block:: ini
@@ -326,7 +330,7 @@ in ``/etc/nginx/sites-enabled/odoo.conf`` set:
proxy_pass http://odoochat;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $connection_upgrade;
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Host $http_host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Real-IP $remote_addr;
@@ -335,12 +339,17 @@ in ``/etc/nginx/sites-enabled/odoo.conf`` set:
# Redirect requests to odoo backend server
location / {
# Add Headers for odoo proxy mode
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Host $http_host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Real-IP $remote_addr;
proxy_redirect off;
proxy_pass http://odoo;
# Enable HSTS
add_header Strict-Transport-Security "max-age=31536000; includeSubDomains";
# requires nginx 1.19.8
proxy_cookie_flags session_id samesite=lax secure;
}
# common gzip
@@ -348,6 +357,31 @@ in ``/etc/nginx/sites-enabled/odoo.conf`` set:
gzip on;
}
HTTPS Hardening
---------------
Add the `Strict-Transport-Security` header to all requests, in order to prevent
browsers from ever sending a plain HTTP request to this domain. You will need
to maintain a working HTTPS service with a valid certificate on this domain at
all times, otherwise your users will see security alerts or be entirely unable
to access it.
Force HTTPS connections during a year for every visitor in NGINX with the line:
.. code-block:: nginx
add_header Strict-Transport-Security "max-age=31536000; includeSubDomains";
Additional configuration can be defined for the `session_id` cookie. The `Secure`
flag can be added to ensure it is never transmitted over HTTP and `SameSite=Lax`
to prevent authenticated `CSRF`_.
.. code-block:: nginx
# requires nginx 1.19.8
proxy_cookie_flags session_id samesite=lax secure;
Odoo as a WSGI Application
==========================
@@ -364,38 +398,30 @@ of workers anymore it can not setup cron or livechat workers
Cron Workers
------------
To run cron jobs for an Odoo deployment as a WSGI application requires
Starting one of the built-in Odoo servers next to the WSGI server is required to process cron jobs.
That server must be configured to only process crons and not HTTP requests using the
:option:`--no-http <odoo-bin --no-http>` cli option or the ``http_enable = False`` configuration
file setting.
* A classical Odoo (run via ``odoo-bin``)
* Connected to the database in which cron jobs have to be run (via
:option:`odoo-bin -d`)
* Which should not be exposed to the network. To ensure cron runners are not
network-accessible, it is possible to disable the built-in HTTP server
entirely with :option:`odoo-bin --no-http` or setting ``http_enable = False``
in the configuration file
On Linux-like systems, using the multi-processing server over the multi-threading one is recommended
to benefit from better hardware usage and increased stability, i.e., using
the :option:`--workers=-1 <odoo-bin --workers>` and :option:`--max-cron-threads=n
<odoo-bin --max-cron-threads>` cli options.
LiveChat
--------
The second problematic subsystem for WSGI deployments is the LiveChat: where
most HTTP connections are relatively short and quickly free up their worker
process for the next request, LiveChat require a long-lived connection for
each client in order to implement near-real-time notifications.
Using a gevent-compatible WSGI server is required for the correct operation of the live chat
feature. That server should be able to handle many simultaneous long-lived connections but doesn't
need a lot of processing power. All requests whose path starts with ``/websocket/`` should be
directed to that server. A regular (thread/process-based) WSGI server should be used for all other
requests.
This is in conflict with the process-based worker model, as it will tie
up worker processes and prevent new users from accessing the system. However,
those long-lived connections do very little and mostly stay parked waiting for
notifications.
The solutions to support livechat/motifications in a WSGI application are:
* Deploy a threaded version of Odoo (instead of a process-based preforking
one) and redirect only requests to URLs starting with ``/websocket/`` to
that Odoo, this is the simplest and the websocket URL can double up as the cron
instance.
* Deploy an evented Odoo via ``odoo-gevent`` and proxy requests starting
with ``/websocket/`` to
:option:`the gevent port <odoo-bin --gevent-port>`.
The Odoo cron server can also be used to serve the live chat requests. Just drop
the :option:`--no-http <odoo-bin --no-http>` cli option from the cron server and make sure requests
whose path starts with ``/websocket/`` are directed to this server, either on
the :option:`--http-port <odoo-bin --http-port>` (multi-threading server) or on
the :option:`--gevent-port <odoo-bin --gevent-port>` (multi-processing server).
.. _deploy/streaming:
@@ -413,51 +439,71 @@ Odoo static files are located in each module's :file:`static/` folder, so static
by intercepting all requests to :samp:`/{MODULE}/static/{FILE}`, and looking up the right module
(and file) in the various addons paths.
.. example::
Say Odoo has been installed via the **debian packages** for Community and Enterprise and the
:option:`--addons-path <odoo-bin --addons-path>` is ``'/usr/lib/python3/dist-packages/odoo/addons'``.
It is recommended to set the ``Content-Security-Policy: default-src 'none'`` header on all images
delivered by the web server. It is not strictly necessary as users cannot modify/inject content
inside of modules' :file:`static/` folder and existing images are final (they do not fetch new
resources by themselves). However, it is good practice.
Using the above NGINX (https) configuration, the following location block should be added to
serve static files via NGINX.
Using the above NGINX (https) configuration, the following ``map`` and ``location`` blocks should be
added to serve static files via NGINX.
.. code-block:: nginx
.. code-block:: nginx
location @odoo {
# copy-paste the content of the / location block
}
map $sent_http_content_type $content_type_csp {
default "";
~image/ "default-src 'none'";
}
# Serve static files right away
location ~ ^/[^/]+/static/.+$ {
root /usr/lib/python3/dist-packages/odoo/addons;
try_files $uri @odoo;
expires 24h;
}
server {
# the rest of the configuration
location @odoo {
# copy-paste the content of the / location block
}
# Serve static files right away
location ~ ^/[^/]+/static/.+$ {
# root and try_files both depend on your addons paths
root ...;
try_files ... @odoo;
expires 24h;
add_header Content-Security-Policy $content_type_csp;
}
}
The actual ``root`` and ``try_files`` directives are dependant on your installation, specifically on
your :option:`--addons-path <odoo-bin --addons-path>`.
.. example::
Say Odoo has been installed via the **source**. The two git repositories for Community and
Enterprise have been cloned in :file:`/opt/odoo/community` and :file:`/opt/odoo/enterprise`
respectively and the :option:`--addons-path <odoo-bin --addons-path>` is
``'/opt/odoo/community/odoo/addons,/opt/odoo/community/addons,/opt/odoo/enterprise'``.
Using the above NGINX (https) configuration, the following location block should be added to
serve static files via NGINX.
.. tabs::
.. code-block:: nginx
.. group-tab:: Debian package
location @odoo {
# copy-paste the content of the / location block
}
Say Odoo has been installed via the **debian packages** for Community and Enterprise, and
that the :option:`--addons-path <odoo-bin --addons-path>` is
``'/usr/lib/python3/dist-packages/odoo/addons'``.
# Serve static files right away
location ~ ^/[^/]+/static/.+$ {
root /opt/odoo;
try_files /community/odoo/addons$uri /community/addons$uri /enterprise$uri @odoo;
expires 24h;
}
The ``root`` and ``try_files`` should be:
.. warning::
The actual NGINX configuration you need is highly dependent on your own installation. The two
above snippets only highlight two possible configurations and may not be used as-is.
.. code-block:: nginx
root /usr/lib/python3/dist-packages/odoo/addons;
try_files $uri @odoo;
.. group-tab:: Git sources
Say Odoo has been installed via the **sources**, that both the Community and Enterprise git
repositories were cloned in :file:`/opt/odoo/community` and :file:`/opt/odoo/enterprise`
respectively, and that the :option:`--addons-path <odoo-bin --addons-path>` is
``'/opt/odoo/community/odoo/addons,/opt/odoo/community/addons,/opt/odoo/enterprise'``.
The ``root`` and ``try_files`` should be:
.. code-block:: nginx
root /opt/odoo;
try_files /community/odoo/addons$uri /community/addons$uri /enterprise$uri @odoo;
Serving attachments
-------------------
@@ -602,6 +648,10 @@ security-related topics:
- Setup daily backups of your databases and filestore data, and copy them to a remote
archiving server that is not accessible from the server itself.
- Deploying Odoo on Linux is strongly recommended over Windows. Should you choose nevertheless
to deploy on a Windows platform, a thorough security hardening review of the server should be
conducted and is outside of the scope of this guide.
.. _login_brute_force:
@@ -727,6 +777,7 @@ Here are the supported browsers:
environment than over the internet.
.. _regular expression: https://docs.python.org/3/library/re.html
.. _CSRF: https://en.wikipedia.org/wiki/Cross-site_request_forgery
.. _ARP spoofing: https://en.wikipedia.org/wiki/ARP_spoofing
.. _Nginx termination example:
https://nginx.com/resources/admin-guide/nginx-ssl-termination/
+63
View File
@@ -0,0 +1,63 @@
======
Geo IP
======
.. note::
This documentation only applies to On-premise databases.
Installation
============
#. Download both the GeoLite2 City and Country
`databases <https://dev.maxmind.com/geoip/geoip2/geolite2/>`_. You should end up with two files
called :file:`GeoLite2-City.mmdb` and :file:`GeoLite2-Country.mmdb`.
#. Move the files to the folder :file:`/usr/share/GeoIP/`.
.. code-block:: bash
mv ~/Downloads/GeoLite2-City.mmdb /usr/share/GeoIP/
mv ~/Downloads/GeoLite2-Country.mmdb /usr/share/GeoIP/
#. Restart the server
.. note::
If you don't want to locate the geoip database in :file:`/usr/share/GeoIP/`, use the
:option:`--geoip-city-db <odoo-bin --geoip-city-db>` and
:option:`--geoip-country-db <odoo-bin --geoip-country-db>` options of the Odoo command line
interface. These options take the absolute path to the GeoIP database file and use it as the
GeoIP database. For example:
.. code-block:: bash
./odoo-bin --geoip-city-db= ~/Downloads/GeoLite2-City.mmdb
.. seealso::
- :doc:`CLI documentation </developer/reference/cli>`.
Test GeoIP geolocation in your Odoo website
===========================================
Edit a web page to include some geo-ip information such as the country name of the current
request IP address. To do so:
#. Go to your website. Open the web page that you want to test ``GeoIP``.
#. Choose :menuselection:`Customize --> HTML/CSS/JS Editor`.
#. Add the following piece of XML in the page :
.. code-block:: xml
<h1 class="text-center" t-esc="request.geoip.country.name or 'geoip failure'"/>
#. Save and refresh the page.
Geo-ip is working if you read your country name displayed in bold in the middle of the page.
In case you read "**geoip failure**" instead then the geolocalization failed. The common causes are:
#. The browsing IP address is the localhost (``127.0.0.1``) or a local area network one. If you
don't know, you can access your website using mobile data.
#. You are using a reverse-proxy (apache, nginx) in front of Odoo but didn't start Odoo with the
proxy-mode enabled. See :option:`proxy mode <odoo-bin --proxy-mode>`.
#. The GeoIP database is corrupt, missing or unaccessible. In such case a warning was logged in the
server logs.
-752
View File
@@ -1,752 +0,0 @@
.. _setup/install:
===============
Installing Odoo
===============
There are multiple ways to install Odoo, or not install it at all, depending
on the intended use case.
This documents attempts to describe most of the installation options.
:ref:`setup/install/online`
The easiest way to use Odoo in production or to try it.
:ref:`setup/install/packaged`
Suitable for testing Odoo, developing modules and can be used for
long-term production use with additional deployment and maintenance work.
:ref:`setup/install/source`
Provides greater flexibility: e.g. allow multiple running Odoo versions on
the same system. Good for developing modules, can be used as base for
production deployment.
:ref:`setup/install/docker`
If you usually use docker_ for development or deployment, an official
docker_ base image is available.
.. _setup/install/editions:
Editions
========
There are two different Editions_ of Odoo: the Community and Enterprise versions.
Using the Enterprise version is possible on `Odoo Online`_ and accessing the code is
restricted to Enterprise customers and partners. The Community version is freely
available to anyone.
If you already use the Community version and wish to upgrade to Enterprise, please
refer to :ref:`setup/enterprise` (except for :ref:`setup/install/source`).
.. _setup/install/online:
Online
======
Demo
----
To simply get a quick idea of Odoo, demo_ instances are available. They are
shared instances which only live for a few hours, and can be used to browse
around and try things out with no commitment.
Demo_ instances require no local installation, just a web browser.
Odoo Online
-----------
Trivial to start with, fully managed and migrated by Odoo S.A., `Odoo Online`_
provides private instances and starts out free. It can be used to discover and
test Odoo and do non-code customizations (i.e. incompatible with custom modules
or the Odoo Apps Store) without having to install it locally.
Can be used for both testing Odoo and long-term production use.
Like demo_ instances, `Odoo Online`_ instances require no local installation, a web
browser is sufficient.
.. _setup/install/packaged:
Packaged installers
===================
Odoo provides packaged installers for Windows, deb-based distributions
(Debian, Ubuntu, …) and RPM-based distributions (Fedora, CentOS, RHEL, …) for
both the Community and Enterprise versions.
These packages automatically set up all dependencies (for the Community version),
but may be difficult to keep up-to-date.
Official Community packages with all relevant dependency requirements are
available on our nightly_ server. Both Community and Enterprise packages can
be downloaded from our download_ page (you must to be logged in as a paying
customer or partner to download the Enterprise packages).
Windows
-------
#. Download the installer from our nightly_ server (Community only) or the Windows installer from
the download_ page (any edition).
#. Execute the downloaded file.
.. warning::
| On Windows 8 and later you may see a warning titled "Windows protected your PC".
| Click on **More Info** and then on **Run anyway**.
#. Accept the UAC_ prompt.
#. Go through the various installation steps.
Odoo will automatically be started at the end of the installation.
Linux
-----
Prepare
~~~~~~~
.. tabs::
.. group-tab:: Debian/Ubuntu
Odoo needs a `PostgreSQL`_ server to run properly. The default configuration for
the Odoo 'deb' package is to use the PostgreSQL server on the same host as your
Odoo instance. Execute the following command in order to install the PostgreSQL server:
.. code-block:: console
$ sudo apt install postgresql -y
.. group-tab:: Fedora
Odoo needs a `PostgreSQL`_ server to run properly. Make sure that the `sudo` command is
available and well configured and, only then, execute the following command in order to
install the PostgreSQL server:
.. code-block:: console
$ sudo dnf install -y postgresql-server
$ sudo postgresql-setup --initdb --unit postgresql
$ sudo systemctl enable postgresql
$ sudo systemctl start postgresql
.. warning::
`wkhtmltopdf` is not installed through **pip** and must be installed manually in version `0.12.5
<the wkhtmltopdf download page_>`_ for it to support headers and footers. See our `wiki
<https://github.com/odoo/odoo/wiki/Wkhtmltopdf>`_ for more details on the various versions.
Repository
~~~~~~~~~~
.. tabs::
.. group-tab:: Debian/Ubuntu
Odoo S.A. provides a repository that can be used with Debian and Ubuntu distributions. It can
be used to install *Odoo Community Edition* by executing the following commands:
.. code-block:: console
$ wget -q -O - https://nightly.odoo.com/odoo.key | sudo gpg --dearmor -o /usr/share/keyrings/odoo-archive-keyring.gpg
$ echo 'deb [signed-by=/usr/share/keyrings/odoo-archive-keyring.gpg] https://nightly.odoo.com/{CURRENT_MAJOR_BRANCH}/nightly/deb/ ./' | sudo tee /etc/apt/sources.list.d/odoo.list
$ sudo apt-get update && sudo apt-get install odoo
You can then use the usual `apt-get upgrade` command to keep your installation up-to-date.
.. group-tab:: Fedora
Odoo S.A. provides a repository that can be used with the Fedora distributions. It can be used
to install *Odoo Community Edition* by executing the following commands:
.. code-block:: console
$ sudo dnf config-manager --add-repo=https://nightly.odoo.com/{CURRENT_MAJOR_BRANCH}/nightly/rpm/odoo.repo
$ sudo dnf install -y odoo
$ sudo systemctl enable odoo
$ sudo systemctl start odoo
.. note::
At this moment, there is no nightly repository for the Enterprise Edition.
Distribution package
~~~~~~~~~~~~~~~~~~~~
.. tabs::
.. group-tab:: Debian/Ubuntu
Instead of using the repository as described above, the 'deb' packages for both the
*Community* and *Enterprise* editions can be downloaded from the `official download page
<download_>`_.
.. note::
Odoo {CURRENT_MAJOR_VERSION} 'deb' package currently supports `Debian 11 (Bullseye)`_,
`Ubuntu 22.04 (Jammy)`_ or above.
Next, execute the following commands **as root**:
.. code-block:: console
# dpkg -i <path_to_installation_package> # this probably fails with missing dependencies
# apt-get install -f # should install the missing dependencies
# dpkg -i <path_to_installation_package>
This will install Odoo as a service, create the necessary PostgreSQL_ user
and automatically start the server.
.. warning::
- The `python3-xlwt` Debian package does not exists in Debian Buster nor Ubuntu 18.04. This
python module is needed to export into xls format.
If you need the feature, you can install it manually with:
.. code-block:: console
$ sudo pip3 install xlwt
- The `num2words` python package does not exists in Debian Buster nor Ubuntu 18.04. Textual
amounts will not be rendered by Odoo and this could cause problems with the `l10n_mx_edi`
module.
If you need this feature, you can install manually with:
.. code-block:: console
$ sudo pip3 install num2words
.. group-tab:: Fedora
Instead of using the repository as described above, the 'rpm' packages for both the
*Community* and *Enterprise* editions can be downloaded from the `official download page
<download_>`_.
.. note::
Odoo {CURRENT_MAJOR_VERSION} 'rpm' package supports Fedora 36.
Once downloaded, the package can be installed using the 'dnf' package manager:
.. code-block:: console
$ sudo dnf localinstall odoo_{CURRENT_MAJOR_BRANCH}.latest.noarch.rpm
$ sudo systemctl enable odoo
$ sudo systemctl start odoo
.. _setup/install/source:
Source install
==============
The source "installation" is really about not installing Odoo, and running it directly from source
instead.
It can be more convenient for module developers as the Odoo source is more easily accessible than
using packaged installation.
It also makes starting and stopping Odoo more flexible and explicit than the services set up by the
packaged installations, and allows overriding settings using
:ref:`command-line parameters <reference/cmdline>` without needing to edit a configuration file.
Finally it provides greater control over the system's set up, and allows to more easily keep
(and run) multiple versions of Odoo side-by-side.
Fetch the sources
-----------------
There are two ways to obtain the source code of Odoo: as a zip **archive** or through **git**.
Archive
~~~~~~~
Community Edition:
* `Official download page <download_>`_
* `GitHub repository <community-repository_>`_
* `Nightly server <nightly_>`_
Enterprise Edition:
* `Official download page <download_>`_
* `GitHub repository <enterprise-repository_>`_
.. _setup/install/source/git:
Git
~~~
The following requires `Git <git_>`_ to be installed on your machine and that you have basic
knowledge of Git commands. To clone a Git repository, you must choose between cloning with HTTPS or
SSH. If you do not know the difference between the two, the best option is most likely HTTPS. If you
are following the :doc:`Getting started </developer/tutorials/getting_started>` developer tutorial,
or plan on contributing to Odoo source code, choose SSH.
.. note::
**The Enterprise Git repository does not contain the full Odoo source code**. It is only a
collection of extra add-ons. The main server code is in the Community version. Running the
Enterprise version actually means running the server from the Community version with the
addons-path option set to the folder with the Enterprise version. You need to clone both the
Community and Enterprise repository to have a working Odoo Enterprise installation. See
:ref:`setup/install/editions` to get access to the Enterprise repository.
.. tabs::
.. group-tab:: Windows
.. tabs::
.. tab:: Clone with HTTPS
.. code-block:: doscon
C:\> git clone https://github.com/odoo/odoo.git
C:\> git clone https://github.com/odoo/enterprise.git
.. tab:: Clone with SSH
.. code-block:: doscon
C:\> git clone git@github.com:odoo/odoo.git
C:\> git clone git@github.com:odoo/enterprise.git
.. group-tab:: Linux
.. tabs::
.. tab:: Clone with HTTPS
.. code-block:: console
$ git clone https://github.com/odoo/odoo.git
$ git clone https://github.com/odoo/enterprise.git
.. tab:: Clone with SSH
.. code-block:: console
$ git clone git@github.com:odoo/odoo.git
$ git clone git@github.com:odoo/enterprise.git
.. group-tab:: Mac OS
.. tabs::
.. tab:: Clone with HTTPS
.. code-block:: console
$ git clone https://github.com/odoo/odoo.git
$ git clone https://github.com/odoo/enterprise.git
.. tab:: Clone with SSH
.. code-block:: console
$ git clone git@github.com:odoo/odoo.git
$ git clone git@github.com:odoo/enterprise.git
.. note::
**The Enterprise git repository does not contain the full Odoo source code**. It is only a
collection of extra add-ons. The main server code is in the Community version. Running the
Enterprise version actually means running the server from the Community version with the
addons-path option set to the folder with the Enterprise version. You need to clone both the
Community and Enterprise repository to have a working Odoo Enterprise installation.
.. _setup/install/source/prepare:
Prepare
-------
Python
~~~~~~
.. tabs::
.. group-tab:: Windows
Odoo requires Python 3.7 or later to run. Visit `Python's download page <https://www.python.org/downloads/windows/>`_
to download and install the latest version of Python 3 on your machine.
During installation, check **Add Python 3 to PATH**, then click **Customize Installation** and make
sure that **pip** is checked.
.. note::
If Python 3 is already installed, make sure that the version is 3.7 or above, as previous
versions are not compatible with Odoo.
.. code-block:: doscon
C:\> python --version
Verify also that pip_ is installed for this version.
.. code-block:: doscon
C:\> pip --version
.. group-tab:: Linux
Odoo requires Python 3.7 or later to run. Use your package manager to download and install Python 3
on your machine if it is not already done.
.. note::
If Python 3 is already installed, make sure that the version is 3.7 or above, as previous
versions are not compatible with Odoo.
.. code-block:: console
$ python3 --version
Verify also that pip_ is installed for this version.
.. code-block:: console
$ pip3 --version
.. group-tab:: Mac OS
Odoo requires Python 3.7 or later to run. Use your preferred package manager (homebrew_, macports_)
to download and install Python 3 on your machine if it is not already done.
.. note::
If Python 3 is already installed, make sure that the version is 3.7 or above, as previous
versions are not compatible with Odoo.
.. code-block:: console
$ python3 --version
Verify also that pip_ is installed for this version.
.. code-block:: console
$ pip3 --version
PostgreSQL
~~~~~~~~~~
.. tabs::
.. group-tab:: Windows
Odoo uses PostgreSQL as database management system. `Download and install PostgreSQL
<https://www.postgresql.org/download/windows/>`_ (supported version: 12.0 and later).
By default, the only user is `postgres` but Odoo forbids connecting as `postgres`, so you need
to create a new PostgreSQL user:
#. Add PostgreSQL's `bin` directory (by default:
:file:`C:\\Program Files\\PostgreSQL\\<version>\\bin`) to your `PATH`.
#. Create a postgres user with a password using the pg admin gui:
1. Open **pgAdmin**.
2. Double-click the server to create a connection.
3. Select :menuselection:`Object --> Create --> Login/Group Role`.
4. Enter the username in the **Role Name** field (e.g. `odoo`).
5. Open the **Definition** tab and enter the password (e.g. `odoo`), then click **Save**.
6. Open the **Privileges** tab and switch **Can login?** to `Yes` and **Create database?**
to `Yes`.
.. group-tab:: Linux
Odoo uses PostgreSQL as database management system. Use your package manager to download and
install PostgreSQL (supported version: 12.0 and later).
It can be achieved by executing the following:
.. code-block:: console
$ sudo apt install postgresql postgresql-client
By default, the only user is `postgres` but Odoo forbids connecting as `postgres`, so you need
to create a new PostgreSQL user:
.. code-block:: console
$ sudo -u postgres createuser -s $USER
$ createdb $USER
.. note::
Because your PostgreSQL user has the same name as your Unix login, you will be able to
connect to the database without password.
.. group-tab:: Mac OS
Odoo uses PostgreSQL as database management system. Use `postgres.app
<https://postgresapp.com>`_ to download and install PostgreSQL (supported version: 12.0 and
later).
.. tip::
To make the command line tools bundled with `postgres.app` available, make sure to setup your
`$PATH` variable by following the `Postgres.app CLI Tools Instructions
<https://postgresapp.com/documentation/cli-tools.html>`_.
By default, the only user is `postgres` but Odoo forbids connecting as `postgres`, so you need
to create a new PostgreSQL user:
.. code-block:: console
$ sudo -u postgres createuser -s $USER
$ createdb $USER
.. note::
Because your PostgreSQL user has the same name as your Unix login, you will be able to
connect to the database without password.
.. _install/dependencies:
Dependencies
~~~~~~~~~~~~
.. tabs::
.. group-tab:: Windows
Before installing the dependencies, you must download and install the `Build Tools for Visual
Studio <https://visualstudio.microsoft.com/downloads/#build-tools-for-visual-studio-2019>`_.
When prompted, select **C++ build tools** in the **Workloads** tab and install them.
Odoo dependencies are listed in the `requirements.txt` file located at the root of the Odoo
community directory.
.. tip::
It can be preferable to not mix python modules packages between different instances of Odoo
or with your system. You can use virtualenv_ to create isolated Python environments.
Navigate to the path of your Odoo Community installation (`CommunityPath`) and run **pip** on
the requirements file in a terminal **with Administrator privileges**:
.. code-block:: doscon
C:\> cd \CommunityPath
C:\> pip install setuptools wheel
C:\> pip install -r requirements.txt
For languages with right-to-left interface (such as Arabic or Hebrew), the package `rtlcss`
is needed:
#. Download and install `nodejs <https://nodejs.org/en/download/>`_.
#. Install `rtlcss`:
.. code-block:: doscon
C:\> npm install -g rtlcss
#. Edit the System Environment's variable `PATH` to add the folder where `rtlcss.cmd` is
located (typically: :file:`C:\\Users\\<user>\\AppData\\Roaming\\npm\\`).
.. group-tab:: Linux
Using your **distribution packages** is the preferred way of installing dependencies.
Alternatively, you can install the python dependencies with **pip**.
.. tabs::
.. tab:: Debian/Ubuntu
For Debian-based systems, the packages are listed in the `debian/control
<{GITHUB_PATH}/debian/control>`_ file of the Odoo sources.
On Debian/Ubuntu, the following commands should install the required packages:
.. code-block:: console
$ cd /CommunityPath
$ sed -n -e '/^Depends:/,/^Pre/ s/ python3-\(.*\),/python3-\1/p' debian/control | sudo xargs apt-get install -y
.. tab:: Install with pip
As some of the python packages need a compilation step, they require system libraries to
be installed.
On Debian/Ubuntu-based systems, the following command should install these required
libraries:
.. code-block:: console
$ sudo apt install python3-pip libldap2-dev libpq-dev libsasl2-dev
Odoo dependencies are listed in the :file:`requirements.txt` file located at the root of
the Odoo community directory.
.. note::
| The python packages in :file:`requirements.txt` are based on their stable/LTS
Debian/Ubuntu corresponding version at the moment of the Odoo release.
| E.g., for Odoo 15.0, the `python3-babel` package version is 2.8.0 in Debian
Bullseye and 2.6.0 in Ubuntu Focal. The lowest version is then chosen in the
:file:`requirements.txt`.
.. tip::
It can be preferable to not mix python modules packages between different instances
of Odoo or with your system. You can use virtualenv_ to create isolated Python
environments.
Navigate to the path of your Odoo Community installation (:file:`CommunityPath`) and run
**pip** on the requirements file to install the requirements for the current user.
.. code-block:: console
$ cd /CommunityPath
$ pip install -r requirements.txt
For languages with right-to-left interface (such as Arabic or Hebrew), the package `rtlcss` is
needed:
#. Download and install **nodejs** and **npm** with your package manager.
#. Install `rtlcss`:
.. code-block:: console
$ sudo npm install -g rtlcss
.. group-tab:: Mac OS
Odoo dependencies are listed in the `requirements.txt` file located at the root of the Odoo
community directory.
.. tip::
It can be preferable to not mix python modules packages between different instances of Odoo
or with your system. You can use virtualenv_ to create isolated Python environments.
Navigate to the path of your Odoo Community installation (`CommunityPath`) and run **pip** on
the requirements file:
.. code-block:: console
$ cd /CommunityPath
$ pip3 install setuptools wheel
$ pip3 install -r requirements.txt
.. warning::
Non-Python dependencies need to be installed with a package manager:
#. Download and install the **Command Line Tools**:
.. code-block:: console
$ xcode-select --install
#. Download and install the package manager of your choice (homebrew_, macports_).
#. Install non-python dependencies.
For languages with right-to-left interface (such as Arabic or Hebrew), the package `rtlcss` is
needed:
#. Download and install **nodejs** with your preferred package manager (homebrew_, macports_).
#. Install `rtlcss`:
.. code-block:: console
$ sudo npm install -g rtlcss
.. important::
`wkhtmltopdf` is not installed through **pip** and must be installed manually in version `0.12.5
<the wkhtmltopdf download page_>`_ for it to support headers and footers. See our `wiki
<https://github.com/odoo/odoo/wiki/Wkhtmltopdf>`_ for more details on the various versions.
.. _setup/install/source/running_odoo:
Running Odoo
------------
Once all dependencies are set up, Odoo can be launched by running `odoo-bin`, the
command-line interface of the server. It is located at the root of the Odoo Community directory.
To configure the server, you can either specify :ref:`command-line arguments
<reference/cmdline/server>` or a :ref:`configuration file <reference/cmdline/config>`.
.. tip::
For the Enterprise edition, you must add the path to the `enterprise` addons to the `addons-path`
argument. Note that it must come before the other paths in `addons-path` for addons to be loaded
correctly.
Common necessary configurations are:
- PostgreSQL user and password.
- Custom addon paths beyond the defaults, to load your own modules.
A typical way to run the server would be:
.. tabs::
.. group-tab:: Windows
.. code-block:: doscon
C:\> cd CommunityPath/
C:\> python odoo-bin -r dbuser -w dbpassword --addons-path=addons -d mydb
Where `CommunityPath` is the path of the Odoo Community installation, `dbuser` is the
PostgreSQL login, `dbpassword` is the PostgreSQL password, and `mydb` is the name of the
PostgreSQL database.
.. group-tab:: Linux
.. code-block:: console
$ cd /CommunityPath
$ python3 odoo-bin --addons-path=addons -d mydb
Where `CommunityPath` is the path of the Odoo Community installation, and `mydb` is the name
of the PostgreSQL database.
.. group-tab:: Mac OS
.. code-block:: console
$ cd /CommunityPath
$ python3 odoo-bin --addons-path=addons -d mydb
Where `CommunityPath` is the path of the Odoo Community installation, and `mydb` is the name
of the PostgreSQL database.
After the server has started (the INFO log `odoo.modules.loading: Modules loaded.` is printed), open
http://localhost:8069 in your web browser and log in with the base administrator account: Use
`admin` for the :guilabel:`Email` and, again, `admin` for the :guilabel:`Password`. That's it, you
just logged into your own Odoo database!
.. tip::
- From there, you can create and manage new :doc:`users
</applications/general/users/manage_users>`.
- The user account you use to log into Odoo's web interface differs from the :option:`--db_user
<odoo-bin -r>` CLI argument.
.. seealso::
:doc:`The exhaustive list of CLI arguments for odoo-bin </developer/reference/cli>`.
.. _setup/install/docker:
Docker
======
The full documentation on how to use Odoo with Docker can be found on the
official Odoo `docker image <https://hub.docker.com/_/odoo/>`_ page.
.. _Debian 11 (Bullseye): https://www.debian.org/releases/bullseye/
.. _demo: https://demo.odoo.com
.. _docker: https://www.docker.com
.. _download: https://www.odoo.com/page/download
.. _Ubuntu 22.04 (Jammy): https://releases.ubuntu.com/22.04/
.. _EPEL: https://fedoraproject.org/wiki/EPEL
.. _PostgreSQL: https://www.postgresql.org
.. _the official installer:
.. _install pip:
https://pip.pypa.io/en/latest/installing.html#install-pip
.. _Quilt: https://en.wikipedia.org/wiki/Quilt_(software)
.. _Odoo Online: https://www.odoo.com/page/start
.. _the wkhtmltopdf download page: https://github.com/wkhtmltopdf/wkhtmltopdf/releases/tag/0.12.5
.. _UAC: https://en.wikipedia.org/wiki/User_Account_Control
.. _wkhtmltopdf: https://wkhtmltopdf.org
.. _pip: https://pip.pypa.io
.. _macports: https://www.macports.org
.. _homebrew: https://brew.sh
.. _wheels: https://wheel.readthedocs.org/en/latest/
.. _virtualenv: https://pypi.python.org/pypi/virtualenv
.. _virtualenvwrapper: https://virtualenvwrapper.readthedocs.io/en/latest/
.. _pywin32: https://sourceforge.net/projects/pywin32/files/pywin32/
.. _community-repository: https://github.com/odoo/odoo
.. _enterprise-repository: https://github.com/odoo/enterprise
.. _Editions: https://www.odoo.com/pricing#pricing_table_features
.. _nightly: https://nightly.odoo.com/
.. _extra: https://nightly.odoo.com/extra/
+21
View File
@@ -0,0 +1,21 @@
======
Online
======
Online instances are accessed using any web browser and do not require a local installation.
Demo
----
To quickly try out Odoo, shared `demo <https://demo.odoo.com>`_ instances are available. No
registration is required, but each instance only lives for a few hours.
Odoo Online
-----------
`Odoo Online <https://www.odoo.com/trial>`_ provides private instances which are fully managed and
hosted by Odoo. It can be used for long-term production or to test Odoo thoroughly, including
customizations that don't require code.
.. note::
Odoo Online is incompatible with custom modules or the Odoo App Store.
+167
View File
@@ -0,0 +1,167 @@
===================
Packaged installers
===================
Odoo provides packaged installers for Debian-based Linux distributions (Debian, Ubuntu, etc.),
RPM-based Linux distributions (Fedora, CentOS, RHEL, etc.), and Windows for the Community and
Enterprise editions.
Official **Community** nightly packages with all relevant dependency requirements are available on
the `nightly server <https://nightly.odoo.com>`_.
.. note::
Nightly packages may be difficult to keep up to date.
Official **Community** and **Enterprise** packages can be downloaded from the `Odoo download page
<https://www.odoo.com/page/download>`_.
.. note::
It is required to be logged in as a paying customer or partner to download the Enterprise
packages.
.. _install/packages/linux:
Linux
=====
Prepare
-------
Odoo needs a `PostgreSQL <https://www.postgresql.org/>`_ server to run properly.
.. tabs::
.. group-tab:: Debian/Ubuntu
The default configuration for the Odoo 'deb' package is to use the PostgreSQL server on the
same host as the Odoo instance. Execute the following command to install the PostgreSQL
server:
.. code-block:: console
$ sudo apt install postgresql -y
.. group-tab:: Fedora
Make sure that the `sudo` command is available and well configured and, only then, execute the
following command to install the PostgreSQL server:
.. code-block:: console
$ sudo dnf install -y postgresql-server
$ sudo postgresql-setup --initdb --unit postgresql
$ sudo systemctl enable postgresql
$ sudo systemctl start postgresql
.. warning::
`wkhtmltopdf` is not installed through **pip** and must be installed manually in `version 0.12.6
<https://github.com/wkhtmltopdf/packaging/releases/tag/0.12.6.1-3>`_ for it to support headers
and footers. Check out the `wkhtmltopdf wiki <https://github.com/odoo/odoo/wiki/Wkhtmltopdf>`_
for more details on the various versions.
Repository
----------
Odoo S.A. provides a repository that can be used to install the **Community** edition by executing
the following commands:
.. tabs::
.. group-tab:: Debian/Ubuntu
.. code-block:: console
$ wget -q -O - https://nightly.odoo.com/odoo.key | sudo gpg --dearmor -o /usr/share/keyrings/odoo-archive-keyring.gpg
$ echo 'deb [signed-by=/usr/share/keyrings/odoo-archive-keyring.gpg] https://nightly.odoo.com/{CURRENT_MAJOR_BRANCH}/nightly/deb/ ./' | sudo tee /etc/apt/sources.list.d/odoo.list
$ sudo apt-get update && sudo apt-get install odoo
Use the usual `apt-get upgrade` command to keep the installation up-to-date.
.. group-tab:: Fedora
.. code-block:: console
$ sudo dnf config-manager --add-repo=https://nightly.odoo.com/{CURRENT_MAJOR_BRANCH}/nightly/rpm/odoo.repo
$ sudo dnf install -y odoo
$ sudo systemctl enable odoo
$ sudo systemctl start odoo
.. note::
Currently, there is no nightly repository for the Enterprise edition.
Distribution package
--------------------
Instead of using the repository, packages for both the **Community** and **Enterprise** editions can
be downloaded from the `Odoo download page <https://www.odoo.com/page/download>`_.
.. tabs::
.. group-tab:: Debian/Ubuntu
.. note::
Odoo {CURRENT_MAJOR_VERSION} 'deb' package currently supports `Debian Buster
<https://www.debian.org/releases/buster/>`_ and `Ubuntu 18.04
<https://releases.ubuntu.com/18.04>`_ or above.
Once downloaded, execute the following commands **as root** to install Odoo as a service,
create the necessary PostgreSQL user, and automatically start the server:
.. code-block:: console
# dpkg -i <path_to_installation_package> # this probably fails with missing dependencies
# apt-get install -f # should install the missing dependencies
# dpkg -i <path_to_installation_package>
.. warning::
- The `python3-xlwt` Debian package, needed to export into the XLS format, does not exist
in Debian Buster nor Ubuntu 18.04. If needed, install it manually with the following:
.. code-block:: console
$ sudo pip3 install xlwt
- The `num2words` Python package - needed to render textual amounts - does not exist in
Debian Buster nor Ubuntu 18.04, which could cause problems with the `l10n_mx_edi` module.
If needed, install it manually with the following:
.. code-block:: console
$ sudo pip3 install num2words
.. group-tab:: Fedora
.. note::
Odoo {CURRENT_MAJOR_VERSION} 'rpm' package supports Fedora 36.
Once downloaded, the package can be installed using the 'dnf' package manager:
.. code-block:: console
$ sudo dnf localinstall odoo_{CURRENT_MAJOR_BRANCH}.latest.noarch.rpm
$ sudo systemctl enable odoo
$ sudo systemctl start odoo
.. _install/packages/windows:
Windows
=======
.. warning::
Windows packaging is offered for the convenience of testing or running single-user local
instances but production deployment is discouraged due to a number of limitations and risks
associated with deploying Odoo on a Windows platform.
#. Download the installer from the `nightly server <https://nightly.odoo.com>`_ (Community only) or
the Windows installer from the `Odoo download page <https://www.odoo.com/page/download>`_ (any
edition.
#. Execute the downloaded file.
.. warning::
On Windows 8 and later, a warning titled *Windows protected your PC* may be displayed. Click
**More Info** and then **Run anyway** to proceed.
#. Accept the `UAC <https://en.wikipedia.org/wiki/User_Account_Control>`_ prompt.
#. Go through the installation steps.
Odoo launches automatically at the end of the installation.
+487
View File
@@ -0,0 +1,487 @@
======
Source
======
The source 'installation' is not about installing Odoo but running it directly from the source
instead.
Using the Odoo source can be more convenient for module developers as it is more easily accessible
than using packaged installers.
It makes starting and stopping Odoo more flexible and explicit than the services set up by the
packaged installers. Also, it allows overriding settings using :ref:`command-line parameters
<reference/cmdline>` without needing to edit a configuration file.
Finally, it provides greater control over the system's setup and allows to more easily keep (and
run) multiple versions of Odoo side-by-side.
Fetch the sources
-----------------
There are two ways to obtain the source code of Odoo: as a ZIP **archive** or through **Git**.
Archive
~~~~~~~
Community edition:
- `Odoo download page <https://www.odoo.com/page/download>`_
- `GitHub Community repository <https://github.com/odoo/odoo>`_
- `Nightly server <https://nightly.odoo.com>`_
Enterprise edition:
- `Odoo download page <https://www.odoo.com/page/download>`_
- `GitHub Enterprise repository <https://github.com/odoo/enterprise>`_
.. _install/source/git:
Git
~~~
.. note::
It is required to have `Git <https://git-scm.com/>`_ installed, and it is recommended to have a
basic knowledge of Git commands to proceed.
To clone a Git repository, choose between cloning with HTTPS or SSH. In most cases, the best option
is HTTPS. However, choose SSH to contribute to Odoo source code or when following the :doc:`Getting
Started developer tutorial </developer/tutorials/getting_started>`.
.. tabs::
.. group-tab:: Linux
.. tabs::
.. tab:: Clone with HTTPS
.. code-block:: console
$ git clone https://github.com/odoo/odoo.git
$ git clone https://github.com/odoo/enterprise.git
.. tab:: Clone with SSH
.. code-block:: console
$ git clone git@github.com:odoo/odoo.git
$ git clone git@github.com:odoo/enterprise.git
.. group-tab:: Windows
.. tabs::
.. tab:: Clone with HTTPS
.. code-block:: doscon
C:\> git clone https://github.com/odoo/odoo.git
C:\> git clone https://github.com/odoo/enterprise.git
.. tab:: Clone with SSH
.. code-block:: doscon
C:\> git clone git@github.com:odoo/odoo.git
C:\> git clone git@github.com:odoo/enterprise.git
.. group-tab:: Mac OS
.. tabs::
.. tab:: Clone with HTTPS
.. code-block:: console
$ git clone https://github.com/odoo/odoo.git
$ git clone https://github.com/odoo/enterprise.git
.. tab:: Clone with SSH
.. code-block:: console
$ git clone git@github.com:odoo/odoo.git
$ git clone git@github.com:odoo/enterprise.git
.. note::
**The Enterprise git repository does not contain the full Odoo source code**. It is only a
collection of extra add-ons. The main server code is in the Community edition. Running the
Enterprise version means running the server from the Community version with the `addons-path`
option set to the folder with the Enterprise edition. It is required to clone both the Community
and Enterprise repositories to have a working Odoo Enterprise installation.
.. _install/source/prepare:
Prepare
-------
Python
~~~~~~
Odoo requires **Python 3.10** or later to run.
.. versionchanged:: 17
Minimum requirement updated from Python 3.7 to Python 3.10.
.. tabs::
.. group-tab:: Linux
Use a package manager to download and install Python 3 if needed.
.. group-tab:: Windows
`Download the latest version of Python 3 <https://www.python.org/downloads/windows/>`_ and
install it.
During installation, check **Add Python 3 to PATH**, then click **Customize Installation** and
make sure that **pip** is checked.
.. group-tab:: Mac OS
Use a package manager (`Homebrew <https://brew.sh/>`_, `MacPorts <https://www.macports.org>`_)
to download and install Python 3 if needed.
.. note::
If Python 3 is already installed, make sure that the version is 3.7 or above, as previous
versions are not compatible with Odoo.
.. tabs::
.. group-tab:: Linux
.. code-block:: console
$ python3 --version
.. group-tab:: Windows
.. code-block:: doscon
C:\> python --version
.. group-tab:: Mac OS
.. code-block:: console
$ python3 --version
Verify that `pip <https://pip.pypa.io>`_ is also installed for this version.
.. tabs::
.. group-tab:: Linux
.. code-block:: console
$ pip3 --version
.. group-tab:: Windows
.. code-block:: doscon
C:\> pip --version
.. group-tab:: Mac OS
.. code-block:: console
$ pip3 --version
PostgreSQL
~~~~~~~~~~
Odoo uses PostgreSQL as its database management system.
.. tabs::
.. group-tab:: Linux
Use a package manager to download and install PostgreSQL (supported versions: 12.0 or above).
It can be achieved by executing the following:
.. code-block:: console
$ sudo apt install postgresql postgresql-client
.. group-tab:: Windows
`Download PostgreSQL <https://www.postgresql.org/download/windows>`_ (supported versions: 12.0
or above) and install it.
.. group-tab:: Mac OS
Use `Postgres.app <https://postgresapp.com>`_ to download and install PostgreSQL (supported
version: 12.0 or above).
.. tip::
To make the command line tools bundled with Postgres.app available, make sure to set up the
`$PATH` variable by following the `Postgres.app CLI tools instructions
<https://postgresapp.com/documentation/cli-tools.html>`_.
By default, the only user is `postgres`. As Odoo forbids connecting as `postgres`, create a new
PostgreSQL user.
.. tabs::
.. group-tab:: Linux
.. code-block:: console
$ sudo -u postgres createuser -d -R -S $USER
$ createdb $USER
.. note::
Because the PostgreSQL user has the same name as the Unix login, it is possible to connect
to the database without a password.
.. group-tab:: Windows
#. Add PostgreSQL's `bin` directory (by default:
:file:`C:\\Program Files\\PostgreSQL\\<version>\\bin`) to the `PATH`.
#. Create a postgres user with a password using the pg admin gui:
#. Open **pgAdmin**.
#. Double-click the server to create a connection.
#. Select :menuselection:`Object --> Create --> Login/Group Role`.
#. Enter the username in the **Role Name** field (e.g., `odoo`).
#. Open the **Definition** tab, enter a password (e.g., `odoo`), and click **Save**.
#. Open the **Privileges** tab and switch **Can login?** to `Yes` and **Create database?**
to `Yes`.
.. group-tab:: Mac OS
.. code-block:: console
$ sudo -u postgres createuser -d -R -S $USER
$ createdb $USER
.. note::
Because the PostgreSQL user has the same name as the Unix login, it is possible to connect
to the database without a password.
.. _install/dependencies:
Dependencies
~~~~~~~~~~~~
.. tabs::
.. group-tab:: Linux
Using **distribution packages** is the preferred way of installing dependencies.
Alternatively, install the Python dependencies with **pip**.
.. tabs::
.. tab:: Debian/Ubuntu
For Debian-based systems, the packages are listed in the `debian/control
<{GITHUB_PATH}/debian/control>`_ file of the Odoo sources.
On Debian/Ubuntu, the following commands should install the required packages:
.. code-block:: console
$ cd /CommunityPath
$ sed -n -e '/^Depends:/,/^Pre/ s/ python3-\(.*\),/python3-\1/p' debian/control | sudo xargs apt-get install -y
.. tab:: Install with pip
As some of the Python packages need a compilation step, they require system libraries to
be installed.
On Debian/Ubuntu, the following command should install these required libraries:
.. code-block:: console
$ sudo apt install python3-pip libldap2-dev libpq-dev libsasl2-dev
Odoo dependencies are listed in the :file:`requirements.txt` file located at the root of
the Odoo Community directory.
.. note::
The Python packages in :file:`requirements.txt` are based on their stable/LTS
Debian/Ubuntu corresponding version at the moment of the Odoo release. For example,
for Odoo 15.0, the `python3-babel` package version is 2.8.0 in Debian Bullseye and
2.6.0 in Ubuntu Focal. The lowest version is then chosen in the
:file:`requirements.txt`.
.. tip::
It can be preferable not to mix Python module packages between different instances of
Odoo or with the system. However, it is possible to use `virtualenv
<https://pypi.org/project/virtualenv/>`_ to create isolated Python environments.
Navigate to the path of the Odoo Community installation (:file:`CommunityPath`) and run
**pip** on the requirements file to install the requirements for the current user.
.. code-block:: console
$ cd /CommunityPath
$ pip install -r requirements.txt
.. group-tab:: Windows
Before installing the dependencies, download and install the `Build Tools for Visual
Studio <https://visualstudio.microsoft.com/downloads/>`_. Select **C++ build tools** in the
**Workloads** tab and install them when prompted.
Odoo dependencies are listed in the `requirements.txt` file located at the root of the Odoo
Community directory.
.. tip::
It can be preferable not to mix Python module packages between different instances of
Odoo or with the system. However, it is possible to use `virtualenv
<https://pypi.org/project/virtualenv/>`_ to create isolated Python environments.
Navigate to the path of the Odoo Community installation (`CommunityPath`) and run **pip** on
the requirements file in a terminal **with Administrator privileges**:
.. code-block:: doscon
C:\> cd \CommunityPath
C:\> pip install setuptools wheel
C:\> pip install -r requirements.txt
.. group-tab:: Mac OS
Odoo dependencies are listed in the `requirements.txt` file located at the root of the Odoo
Community directory.
.. tip::
It can be preferable not to mix Python module packages between different instances of
Odoo or with the system. However, it is possible to use `virtualenv
<https://pypi.org/project/virtualenv/>`_ to create isolated Python environments.
Navigate to the path of the Odoo Community installation (`CommunityPath`) and run **pip** on
the requirements file:
.. code-block:: console
$ cd /CommunityPath
$ pip3 install setuptools wheel
$ pip3 install -r requirements.txt
.. warning::
Non-Python dependencies must be installed with a package manager (`Homebrew
<https://brew.sh/>`_, `MacPorts <https://www.macports.org>`_).
#. Download and install the **Command Line Tools**:
.. code-block:: console
$ xcode-select --install
#. Use the package manager to install non-Python dependencies.
.. note::
For languages using a **right-to-left interface** (such as Arabic or Hebrew), the `rtlcss`
package is required.
.. tabs::
.. group-tab:: Linux
#. Download and install **nodejs** and **npm** with a package manager.
#. Install `rtlcss`:
.. code-block:: console
$ sudo npm install -g rtlcss
.. group-tab:: Windows
#. Download and install `nodejs <https://nodejs.org/en/download>`_.
#. Install `rtlcss`:
.. code-block:: doscon
C:\> npm install -g rtlcss
#. Edit the system environment's variable `PATH` to add the folder where `rtlcss.cmd` is
located (typically: :file:`C:\\Users\\<user>\\AppData\\Roaming\\npm\\`).
.. group-tab:: Mac OS
#. Download and install **nodejs** with a package manager (`Homebrew <https://brew.sh/>`_,
`MacPorts <https://www.macports.org>`_).
#. Install `rtlcss`:
.. code-block:: console
$ sudo npm install -g rtlcss
.. warning::
`wkhtmltopdf` is not installed through **pip** and must be installed manually in `version 0.12.6
<https://github.com/wkhtmltopdf/packaging/releases/tag/0.12.6.1-3>`_ for it to support headers
and footers. Check out the `wkhtmltopdf wiki <https://github.com/odoo/odoo/wiki/Wkhtmltopdf>`_
for more details on the various versions.
.. _install/source/running_odoo:
Running Odoo
------------
Once all dependencies are set up, Odoo can be launched by running `odoo-bin`, the command-line
interface of the server. It is located at the root of the Odoo Community directory.
To configure the server, either specify :ref:`command-line arguments <reference/cmdline/server>` or
a :ref:`configuration file <reference/cmdline/config>`.
.. tip::
For the Enterprise edition, add the path to the `enterprise` add-ons to the `addons-path`
argument. Note that it must come before the other paths in `addons-path` for add-ons to be loaded
correctly.
Common necessary configurations are:
- PostgreSQL user and password.
- Custom addon paths beyond the defaults to load custom modules.
A typical way to run the server would be:
.. tabs::
.. group-tab:: Linux
.. code-block:: console
$ cd /CommunityPath
$ python3 odoo-bin --addons-path=addons -d mydb
Where `CommunityPath` is the path of the Odoo Community installation, and `mydb` is the name
of the PostgreSQL database.
.. group-tab:: Windows
.. code-block:: doscon
C:\> cd CommunityPath/
C:\> python odoo-bin -r dbuser -w dbpassword --addons-path=addons -d mydb
Where `CommunityPath` is the path of the Odoo Community installation, `dbuser` is the
PostgreSQL login, `dbpassword` is the PostgreSQL password, and `mydb` is the name of the
PostgreSQL database.
.. group-tab:: Mac OS
.. code-block:: console
$ cd /CommunityPath
$ python3 odoo-bin --addons-path=addons -d mydb
Where `CommunityPath` is the path of the Odoo Community installation, and `mydb` is the name
of the PostgreSQL database.
After the server has started (the INFO log `odoo.modules.loading: Modules loaded.` is printed), open
http://localhost:8069 in a web browser and log into the Odoo database with the base administrator
account: use `admin` as the email and, again, `admin` as the password.
.. tip::
- From there, create and manage new :doc:`users <../../applications/general/users/manage_users>`.
- The user account used to log into Odoo's web interface differs from the :option:`--db_user
<odoo-bin -r>` CLI argument.
.. seealso::
:doc:`The list of CLI arguments for odoo-bin </developer/reference/cli>`
+90 -17
View File
@@ -25,13 +25,13 @@ To get started, go to `Microsoft's Azure Portal <https://portal.azure.com/>`_. L
:guilabel:`Microsoft Outlook Office 365` account if there is one, otherwise log in with the
personal :guilabel:`Microsoft account`. A user with administrative access to the Azure Settings
will need to connect and perform the following configuration. Next, navigate to the section
labeled :guilabel:`Manage Azure Active Directory`.
labeled :guilabel:`Manage Microsoft Entra ID` (formally *Azure Active Directory*).
Now, click on :guilabel:`Add (+)`, located in the top menu, and then select :guilabel:`App
registration`. On the :guilabel:`Register an application` screen, rename the :guilabel:`Name` to
`Odoo` or something recognizable. Under the :guilabel:`Supported account types` section select
:guilabel:`Accounts in any organizational directory (Any Azure AD directory - Multitenant) and
personal Microsoft accounts (e.g. Skype, Xbox)`.
:guilabel:`Accounts in any organizational directory (Any Microsoft Entra ID directory - Multitenant)
and personal Microsoft accounts (e.g. Skype, Xbox)`.
Under the :guilabel:`Redirect URL` section, select :guilabel:`Web` as the platform, and then input
`https://<odoo base url>/microsoft_outlook/confirm` in the :guilabel:`URL` field. The Odoo base URL
@@ -52,7 +52,7 @@ able to read (IMAP) and send (SMTP) emails in the Microsoft 365 setup. First, cl
Add a Permission` button and select :guilabel:`Microsoft Graph` under :guilabel:`Commonly Used
Microsoft APIs`. After, select the :guilabel:`Delegated Permissions` option.
In the search bar, search for the following :guilabel:`Deregulated permissions` and click
In the search bar, search for the following :guilabel:`Delegated permissions` and click
:guilabel:`Add permissions` for each one:
- :guilabel:`SMTP.Send`
@@ -188,23 +188,96 @@ configuration automatically loads the :guilabel:`token` in Odoo, and a tag stati
Finally, click :guilabel:`Test Connection`. A confirmation message should appear. The Odoo database
can now send safe, secure emails through Microsoft Outlook using OAuth authentication.
Multiple user configuration
~~~~~~~~~~~~~~~~~~~~~~~~~~~
.. _azure_oauth/notifications:
Each user should have a separate server set up. The :guilabel:`from-filter` should be set so that
only the user's email is sent from that server. In other words, only a user with an email address
that matches the set :guilabel:`from-filter` is able to use this server.
Configuration with a single outgoing mail server
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
After setting the :guilabel:`from-filter`, set up a fallback email account to allow for the sending
of :guilabel:`notifications`. The fallback email must be configured as a :guilabel:`general
transactional server`. The :guilabel:`mail.default.from` system parameter must be set to the
:guilabel:`username` of the general transactional server account. For more information see
:ref:`Use a default email address <email_communication/default>`.
Configuring a single outgoing server is the simplest configuration available for Microsoft Azure
and it doesn't require extensive access rights for the users in the database.
A generic email address would be used to send emails for all users within the database. For example
it could be structured with a `notifications` alias (`notifications@example.com`) or `contact` alias
(`contact@example.com`). This address must be set as the :guilabel:`FROM Filtering` on the server.
This address must also match the `{mail.default.from}@{mail.catchall.domain}` key combination in the
system parameters.
.. seealso::
For more information on the from filter visit: :ref:`email_communication/default`.
.. note::
The :guilabel:`System Parameters` can be accessed by activating
:doc:`../../applications/general/developer_mode` in the :menuselection:`Settings --> Technical
--> Parameters --> System Parameters` menu.
The :guilabel:`System Parameters` can be accessed by activating :ref:`developer-mode` in the
:menuselection:`Settings --> Technical --> Parameters --> System Parameters` menu.
When using this configuration, every email that is sent from the database will use the address of
the configured `notification` mailbox. However it should be noted that the name of the sender will
appear but their email address will change:
.. image:: azure_oauth/from-name-remain.png
:align: center
:alt: Name from real sender with static email.
.. example::
Single outgoing mail server configuration:
- Outgoing mail server **username** (login) = `notifications@example.com`
- Outgoing mail server :guilabel:`FROM Filtering` = `notifications@example.com`
- `mail.catchall.domain` in system parameters = `example.com`
- `mail.default.from` in system parameters = `notifications`
User-specific (multiple user) configuration
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In addition to a generic email server, individual email servers can be set up for users in a
database. These email addresses must be set as the :guilabel:`FROM Filtering` on each individual
server for this configuration to work.
This configuration is the more difficult of the two Microsoft Azure configurations, in that it
requires all users configured with email servers to have access rights to settings in order to
establish a connection to the email server.
Setup
*****
Each user should have a separate email server set up. The :guilabel:`FROM Filtering` should be set
so that only the user's email is sent from that server. In other words, only a user with an email
address that matches the set :guilabel:`FROM Filtering` is able to use this server.
.. seealso::
For more information on the from filter visit: :ref:`email_communication/default`.
A :ref:`fallback server <azure_oauth/notifications>` must be setup to allow for the sending of
:guilabel:`notifications`. The :guilabel:`FROM Filtering` for this server should have the value of
the `{mail.default.from}@{mail.catchall.domain}`.
.. note::
The :guilabel:`System Parameters` can be accessed by activating :ref:`developer-mode` in the
:menuselection:`Settings --> Technical --> Parameters --> System Parameters` menu.
.. important::
The configuration for this transactional email server can work alongside an outgoing mass-mailing
email server. The :guilabel:`FROM Filtering` for the mass-mailing email server can remain empty,
but it's require to be added in the settings of the *Email Marketing* application.
.. seealso::
For more information on setting the mass-mailing email server visit
:ref:`email_communication/mass_mails`.
.. example::
Multiple user outgoing mail server configuration:
- User #1 mailbox
- Outgoing mail server #1 **username** (login) = `john@example.com`
- Outgoing mail server #1 :guilabel:`FROM Filtering` = `john@example.com`
- User #2 mailbox
- Outgoing mail server #2 **username** (login) = `jane@example.com`
- Outgoing mail server #2 :guilabel:`FROM Filtering` = `jane@example.com`
- Notifications mailbox
- Outgoing mail server #3 **username** (login) = `notifications@example.com`
- Outgoing mail server #3 :guilabel:`FROM Filtering` = `notifications@example.com`
- System Parameters
- `mail.catchall.domain` in system parameters = `example.com`
- `mail.default.from` in system parameters = `notifications`
Configure incoming email server
-------------------------------
Binary file not shown.

After

Width:  |  Height:  |  Size: 2.8 KiB

@@ -115,7 +115,7 @@ name with your website <domain-name/website-map>`.
.. note::
- Free domain names are also available for free Odoo Online databases (if you installed one app
only, for example). In this case, Odoo reviews your request and your website to avoid abuse.
This process may take up to three days.
This process can take several days due to the success of the offer.
- This is not available for Odoo.sh databases yet.
.. _domain-name/odoo-manage:
@@ -1,9 +1,9 @@
.. _setup/enterprise:
===============================
Upgrade Community to Enterprise
===============================
===================================
Switch from Community to Enterprise
===================================
Depending on your current installation, there are multiple ways to upgrade
your community version.
@@ -61,7 +61,7 @@ have your own favourite. You may need to adapt sections to your usual workflow.
* Shutdown your server
* Backup your community database
* Update the ``--addons-path`` parameter of your launch command (see :ref:`setup/install/source`)
* Update the ``--addons-path`` parameter of your launch command (see :doc:`../install/source`)
* Install the web_enterprise module by using
.. code-block:: console
@@ -98,7 +98,7 @@ On Windows
.. code-block:: console
$ odoo.exe -d <database_name> -i web_enterprise --stop-after-init
$ ..\python\python.exe odoo-bin -d <database_name> -i web_enterprise --stop-after-init
* No need to manually launch the server, the service is running.
You should be able to connect to your Odoo Enterprise instance using your usual
Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 27 KiB

After

Width:  |  Height:  |  Size: 39 KiB

@@ -1,87 +1,111 @@
.. _db_management/hosting_changes:
=======================
Change hosting solution
=======================
You may want to move your Odoo database from one hosting solution to another.
Depending on the platforms, you have to do it by yourself or contact our support team first.
The instructions to change the hosting type of a database depend on the current solution used and to
which solution the database should be moved.
From on-premises to Odoo Online
===============================
Transferring an on-premise database
===================================
1. Create a :ref:`duplicate <duplicate_premise>` of your database: in this duplicate, uninstall all the **non-standard apps**.
2. Grab a "dump with filestore" of your database by using the Database Manager.
3. **If you have time constraints, contact us earlier to schedule the transfer.**
4. `Create a support ticket <https://www.odoo.com/help>`_ and attach the dump (if the file is too large, use any file transfer service and attach the link to your ticket). Also include your subscription number and the URL you want to use for your database (e.g.: my-company.odoo.com).
5. We will make sure your database is compatible and upload it to our cloud. In case of technical issues, we will get in touch with you.
6. It's done!
To Odoo Online
--------------
.. important::
- Odoo Online is not compatible with **non-standard apps**.
- The database you are moving to Odoo Online must be in a :doc:`supported version
<supported_versions>`.
- Odoo Online is *not* compatible with **non-standard apps**.
- The database's current version must be :doc:`supported <supported_versions>`.
From on-premises to Odoo.sh
===========================
#. Create a :ref:`duplicate <duplicate_premise>` of the database.
#. In this duplicate, uninstall all **non-standard apps**.
#. Use the database manager to grab a *dump with filestore*.
#. `Submit a support ticket <https://www.odoo.com/help>`_ including the following:
1. Follow the :ref:`Import your database section of the Odoo.sh documentation <odoo_sh_import_your_database>`.
2. ...and voilà!
- your **subscription number**,
- the **URL** you want to use for the database (e.g., `company.odoo.com`), and
- the **dump** as an attachment or as a link to the file (required for 60 MB+ files).
From Odoo Online to on-premises
===============================
1. Log into `your Odoo Online user portal <https://accounts.odoo.com/my/databases/manage>`_ and look for the version number of your database.
2. If your database does not run a :ref:`major version <supported_versions>` of Odoo, you cannot host it on-premises yet, you have to upgrade it first to a new major version. (*e.g.: If your database runs Odoo 12.3 which is not a major version, you have to upgrade it first to Odoo 13.0 or 14.0.*)
3. Download a backup of your database by clicking on the "Gear" icon next to your database name then :menuselection:`Download` (if the download fails due to your backup file being too large, contact `our support <https://www.odoo.com/help>`_)
4. Restore it from the database manager on your local server.
From Odoo Online to Odoo.sh
===========================
1. Log into `your Odoo Online user portal <https://accounts.odoo.com/my/databases/manage>`_ and look for the version number of your database.
2. If your database does not run a :ref:`major version <supported_versions>` of Odoo, you cannot host it on Odoo.sh yet, you have to upgrade it first to a new major version. (*e.g.: If your database runs Odoo 12.3 which is not a major version, you have to upgrade it first to Odoo 13.0 or 14.0.*)
3. Download a backup of your database by clicking on the "Gear" icon next to your database name then :menuselection:`Download` (if the download fails due to your backup file being too large, contact `our support <https://www.odoo.com/help>`_)
4. Follow the :ref:`Import your database section of the Odoo.sh documentation <odoo_sh_import_your_database>`.
From Odoo.sh to Odoo Online
===========================
#. Uninstall all the **non-standard apps**.
#. `Create a support ticket <https://www.odoo.com/help>`_ and include the following:
- Your subscription number
- The URL you want to use for your database (e.g., `example.odoo.com`)
- Which branch you want to migrate
- In which region you want to be hosted:
- Americas
- Europe
- Asia
- Which user(s) will be the administrator(s)
- When (and in which timezone) you want the database to be up and running
#. We will make sure your database is compatible and upload it to our cloud. In case of technical
issues, we will get in touch with you.
#. All done!
.. important::
- Odoo Online is not compatible with **non-standard apps**.
- Make sure to uninstall all the **non-standard apps** in a staging build before doing it in your
production build.
#. Odoo then makes sure the database is compatible before putting it online. In case of technical
issues during the process, Odoo might contact you.
.. note::
- Make sure you select the **region** that is closest to your users to reduce latency.
- The future **administrator(s)** must have an odoo.com account.
- The specific **date and time** at which you want the database to be up and running are mainly
helpful to organize the switch from the odoo.sh server to the Odoo Online servers.
If you have time constraints, `submit a support ticket <https://www.odoo.com/help>`_ as soon as
possible to schedule the transfer.
To Odoo.sh
----------
Follow the instructions found in :ref:`the Import your database section
<odoo_sh_import_your_database>` of the Odoo.sh *Create your project* documentation.
Transferring an Odoo Online database
====================================
.. important::
Odoo Online's :ref:`intermediary versions <supported_versions>` cannot be hosted on-premise as
that type of hosting does not support those versions. Therefore, if the database to transfer
is running an intermediary version, it must be upgraded first to the next :ref:`major version
<supported_versions>`, waiting for its release if necessary.
.. example::
Transferring an online database running on Odoo 16.3 would require first upgrading it to Odoo
17.0.
.. tip::
Click the gear icon (:guilabel:`⚙`) next to the database name on the `Odoo Online database
manager <https://www.odoo.com/my/databases/>`_ to display its version number.
To on-premise
-------------
#. Sign in to `the Odoo Online database manager <https://www.odoo.com/my/databases/>`_ and click the
gear icon (:guilabel:`⚙`) next to the database name to :guilabel:`Download` a backup. If the
download fails due to the file being too large, `contact Odoo support
<https://www.odoo.com/help>`_.
#. Restore the database from the database manager on your local server using the backup.
To Odoo.sh
----------
#. Sign in to `the Odoo Online database manager <https://www.odoo.com/my/databases/>`_ and click the
gear icon (:guilabel:`⚙`) next to the database name to :guilabel:`Download` a backup. If the
download fails due to the file being too large, `contact Odoo support
<https://www.odoo.com/help>`_.
#. Follow the instructions found in :ref:`the Import your database section
<odoo_sh_import_your_database>` of the Odoo.sh *Create your project* documentation.
Transferring an Odoo.sh database
================================
To Odoo Online
--------------
.. important::
Odoo Online is *not* compatible with **non-standard apps**.
#. Uninstall all **non-standard apps** in a staging build before doing it in the production build.
#. `Create a support ticket <https://www.odoo.com/help>`_ including the following:
- your **subscription number**,
- the **URL** you want to use for the database (e.g., `company.odoo.com`),
- which **branch** should be migrated,
- in which **region** you want the database to be hosted (Americas, Europe, or Asia),
- which user(s) will be the **administrator(s)**, and
- **when** (and in which timezone) you want the database to be up and running.
#. Odoo then makes sure the database is compatible before putting it online. In case of technical
issues during the process, Odoo might contact you.
.. note::
- If you have time constraints, `submit a support ticket <https://www.odoo.com/help>`_ as soon as
possible to schedule the transfer.
- Select the **region** closest to most of your users to reduce latency.
- Future **administrator(s)** must have an Odoo.com account.
- The **date and time** you want the database to be up and running are helpful to organize the
switch from the Odoo.sh server to the Odoo Online servers.
- Databases are **not reachable** during their migration.
- **If you have time constraints, contact us earlier to schedule the transfer**.
From Odoo.sh to on-premises
===========================
To on-premise
-------------
1. Grab a :ref:`backup of your Odoo.sh production database <odoo_sh_branches_backups>`.
2. Restore it from the database manager on your local server.
#. Download a :ref:`backup of your Odoo.sh production database <odoo_sh_branches_backups>`.
#. Restore the database from the database manager on your local server using the backup.
+43 -67
View File
@@ -2,25 +2,15 @@
Odoo Online database management
===============================
To manage a database, sign in to https://www.odoo.com and access the `database management page
<https://www.odoo.com/my/databases>`_ by clicking on the user icon, then on
:guilabel:`My Databases`.
To manage a database, go to the `database manager <https://www.odoo.com/my/databases>`_ and sign in
as the database administrator.
.. image:: odoo_online/my-databases.png
:align: center
:alt: Clicking on the user icon opens a drop-down menu. "My databases" button is highlighted.
All the main database management options are available by clicking the database name, except the
upgrade option, which can be accessed by clicking the **arrow in a circle** icon next to the
database name. It is only displayed if an upgrade is available.
.. note::
Make sure to connect as the administrator of the database that changes will be made on.
.. image:: odoo_online/dropdown-menu.png
:align: right
:alt: Clicking on the gear icon opens the drop-down menu.
Open the drop-down menu next to the database that changes will be made on by clicking on the gear
icon.
Several actions are available:
.. image:: odoo_online/database-manager.png
:alt: Accessing the database management options
- :ref:`odoo_online/upgrade`
- :ref:`odoo_online/duplicate`
@@ -37,39 +27,24 @@ Several actions are available:
Upgrade
=======
If the database is *not* on the latest **Online version**, the administrator should receive an
invitation to :doc:`upgrade <../upgrade>` the database. A :guilabel:`Rolling Release`` button on the
database's main screen proposes an upgrade to the latest version (e.g., 14.0 to 16.1).
.. important::
- | **If the Odoo database's version is lower than the latest major release:**
| The database must be upgraded within two months. After these two months, an automatic
upgrade is initiated.
- | **If the Odoo database's version is equal to or higher than the latest major release:**
| Disregard the invitation to upgrade as the database probably wouldn't benefit from new
features every two months.
.. note::
Versions that are not supported anymore become deprecated and need to be updated to avoid
security issues. Odoo recommends that the company initiate the upgrade, as this method allows for
the company to request a test upgrade of the database to check for any discrepancies.
Trigger a database upgrade.
.. seealso::
- :doc:`../upgrade`
- :doc:`supported_versions`
For more information about the upgrade process, check out the :ref:`Odoo Online upgrade
documentation <upgrade/request-test-database>`.
.. _odoo_online/duplicate:
Duplicate
=========
This allows to make an exact copy of the database to be able to perform testing without compromising
the daily operations.
Create an exact copy of the database, which can be used to perform testing without compromising
daily operations.
.. important::
- By checking :guilabel:`For testing purposes`, all external communication (emails, payments,
delivery orders, etc.) are disabled by default on the duplicated database.
- Duplicate databases expire automatically after 15 days.
- By checking :guilabel:`For testing purposes`, all external actions (emails, payments, delivery
orders, etc.) are disabled by default on the duplicated database.
- Duplicated databases expire automatically after 15 days.
.. _odoo_online/rename:
@@ -83,28 +58,31 @@ Rename the database and its URL.
Download
========
Instantly download a ZIP file with a backup of the database.
Download a ZIP file containing a backup of the database.
.. note::
Databases are backed up daily according to the `Odoo Cloud SLA
Databases are backed up daily as per the `Odoo Cloud Hosting SLA
<https://www.odoo.com/cloud-sla>`_.
.. _odoo_online/domains:
Domains
=======
Domain names
============
Configure custom domains to access the database via another URL.
Use a custom :doc:`domain name <domain_names>` to access the database via another URL.
.. seealso::
- :doc:`domain_names`
.. tip::
You can :ref:`register a domain name for free <domain-name/odoo-register>`.
.. _odoo_online/tags:
Tags
====
Add tags to sort your databases out. You can search the tags in the search bar.
Add tags to easily identify and sort your databases.
.. tip::
You can search for tags in the search bar.
.. _odoo_online/delete:
@@ -114,44 +92,42 @@ Delete
Delete a database instantly.
.. danger::
Deleting a database means that all data is permanently lost. The deletion is instant and for all
users. It is recommended to create a backup of the database before deleting it.
Deleting a database means that all data is permanently lost. The deletion is instant and applies
to all users. It is recommended to create a backup of the database before deleting it.
Carefully read the warning message that pops up and proceed only if the implications of deleting a
database are fully understood:
Carefully read the warning message and only proceed if the implications of deleting a database are
fully understood.
.. image:: odoo_online/delete.png
:align: center
:alt: A warning message is prompted before deleting a database.
:alt: The warning message displayed before deleting a database
.. note::
- Only an administrator can delete a database.
- The database name is immediately available for a new database.
- It is not possible to delete a database if it is expired or linked to a subscription. If
needed, please get in touch with `Odoo Support <https://www.odoo.com/help>`_.
- The database name is immediately made available to anyone.
- Deleting a database if it has expired or is linked to a subscription is impossible. In that
case, contact `Odoo Support <https://www.odoo.com/help>`_.
.. _odoo_online/contact-support:
Contact Support
===============
Contact us
==========
Access the Odoo `support page <https://www.odoo.com/help>`_ with your database's details already
Access the `Odoo.com support page <https://www.odoo.com/help>`_ with the database's details already
pre-filled.
.. _odoo_online/users:
Invite / Remove Users
Invite / remove users
=====================
To invite users, fill out the email address of the new user and click on :guilabel:`Invite`. To add
multiple users, click on :guilabel:`Add more users`.
To invite users, fill out the new user's email address and click :guilabel:`Invite`. To add multiple
users, click :guilabel:`Add more users`.
.. image:: odoo_online/invite-users.png
:align: center
:alt: Clicking on "Add more users" adds additional email fields.
:alt: Inviting a user on a database
To remove users, select the users to remove and click on :guilabel:`Remove`.
To remove users, select them and click :guilabel:`Remove`.
.. seealso::
- :doc:`/applications/general/users/manage_users`
- :doc:`/applications/general/users/delete_account`
- :doc:`/applications/general/users/odoo_account`
Binary file not shown.

After

Width:  |  Height:  |  Size: 2.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.6 KiB

@@ -1,3 +1,4 @@
:hide-page-toc:
.. _supported_versions:
@@ -16,56 +17,100 @@ Odoo provides support and bug fixing **for the 3 last major versions** of Odoo.
- Online versions are *not* released for Odoo.sh and On-Premise installations.
- Online versions are listed below as *SaaS*.
What's the support status of my Odoo?
=====================================
This matrix shows the support status of every version.
**Major releases are in bold type.**
+-----------------+-------------+----------+-------------+----------------+------------------------+
| | Odoo Online | Odoo.sh | On-Premise | Release date | End of support |
+=================+=============+==========+=============+================+========================+
| Odoo saas~16.2 | |green| | N/A | N/A | March 2023 | June 2023 (planned) |
+-----------------+-------------+----------+-------------+----------------+------------------------+
| Odoo saas~16.1 | |green| | N/A | N/A | February 2023 | April 2023 |
+-----------------+-------------+----------+-------------+----------------+------------------------+
| **Odoo 16.0** | |green| | |green| | |green| | October 2022 | October 2025 (planned) |
+-----------------+-------------+----------+-------------+----------------+------------------------+
| Odoo saas~15.2 | |red| | N/A | N/A | March 2022 | January 2023 |
+-----------------+-------------+----------+-------------+----------------+------------------------+
| Odoo saas~15.1 | |red| | N/A | N/A | February 2022 | July 2022 |
+-----------------+-------------+----------+-------------+----------------+------------------------+
| **Odoo 15.0** | |green| | |green| | |green| | October 2021 | October 2024 (planned) |
+-----------------+-------------+----------+-------------+----------------+------------------------+
| **Odoo 14.0** | |green| | |green| | |green| | October 2020 | October 2023 (planned) |
+-----------------+-------------+----------+-------------+----------------+------------------------+
| **Odoo 13.0** | |red| | |red| | |red| | October 2019 | October 2022 |
+-----------------+-------------+----------+-------------+----------------+------------------------+
| Odoo saas~12.3 | |red| | N/A | N/A | August 2019 | |
+-----------------+-------------+----------+-------------+----------------+------------------------+
| **Odoo 12.0** | |red| | |red| | |red| | October 2018 | October 2021 |
+-----------------+-------------+----------+-------------+----------------+------------------------+
| Odoo saas~11.3 | |red| | N/A | N/A | April 2018 | |
+-----------------+-------------+----------+-------------+----------------+------------------------+
| **Odoo 11.0** | |red| | |red| | |red| | October 2017 | October 2020 |
+-----------------+-------------+----------+-------------+----------------+------------------------+
| Odoo 10.saas~15 | |red| | N/A | N/A | March 2017 | |
+-----------------+-------------+----------+-------------+----------------+------------------------+
| Odoo 10.saas~14 | |red| | N/A | N/A | January 2017 | |
+-----------------+-------------+----------+-------------+----------------+------------------------+
| **Odoo 10.0** | |red| | |red| | |red| | October 2016 | October 2019 |
+-----------------+-------------+----------+-------------+----------------+------------------------+
| Odoo 9.saas~11 | |red| | N/A | N/A | May 2016 | |
+-----------------+-------------+----------+-------------+----------------+------------------------+
| **Odoo 9.0** | |red| | N/A | |red| | October 2015 | October 2018 |
+-----------------+-------------+----------+-------------+----------------+------------------------+
| Odoo 8.saas~6 | |red| | N/A | N/A | February 2015 | |
+-----------------+-------------+----------+-------------+----------------+------------------------+
| **Odoo 8.0** | |red| | N/A | |red| | September 2014 | October 2017 |
+-----------------+-------------+----------+-------------+----------------+------------------------+
.. list-table::
:header-rows: 1
:widths: auto
.. note::
* -
- Odoo Online
- Odoo.sh
- On-Premise
- Release date
- End of support
* - Odoo saas~17.1
- |green|
- N/A
- N/A
- January 2024
-
* - **Odoo 17.0**
- |green|
- |green|
- |green|
- November 2023
- October 2026 (planned)
* - Odoo saas~16.4
- |green|
- N/A
- N/A
- August 2023
-
* - Odoo saas~16.3
- |red|
- N/A
- N/A
- June 2023
-
* - Odoo saas~16.2
- |red|
- N/A
- N/A
- March 2023
-
* - Odoo saas~16.1
- |red|
- N/A
- N/A
- February 2023
-
* - **Odoo 16.0**
- |green|
- |green|
- |green|
- October 2022
- November 2025 (planned)
* - Odoo saas~15.2
- |red|
- N/A
- N/A
- March 2022
- January 2023
* - Odoo saas~15.1
- |red|
- N/A
- N/A
- February 2022
- July 2022
* - **Odoo 15.0**
- |green|
- |green|
- |green|
- October 2021
- November 2024 (planned)
* - **Odoo 14.0**
- |red|
- |red|
- |red|
- October 2020
- November 2023
* - **Odoo 13.0**
- |red|
- |red|
- |red|
- October 2019
- October 2022
* - Older versions
- |red|
- |red|
- |red|
- Before 2019
- Before 2022
.. admonition:: Legend
|green| Supported version
@@ -73,7 +118,9 @@ This matrix shows the support status of every version.
N/A Never released for this platform
🏁 Future version, not released yet
.. important::
Even though we don't support older versions, you can always `upgrade from any version
<https://upgrade.odoo.com/>`_.
.. |green| raw:: html
@@ -82,12 +129,3 @@ This matrix shows the support status of every version.
.. |red| raw:: html
<span class="text-danger" style="font-size: 32px; line-height: 0.5">●</span>
I run an older version of Odoo/OpenERP/TinyERP
==============================================
OpenERP 7.0, 6.1, 6.0 and 5.0 is not supported anymore, on any platform.
TinyERP 4.0, 3.0, 2.0 and 1.0 is not supported anymore, on any platform.
Even though we don't support older versions, you can always `upgrade from any version <https://upgrade.odoo.com/>`_.
+2 -2
View File
@@ -46,7 +46,7 @@ Updating Odoo is accomplished by simply reinstalling the latest version of your
Edition on top of your current installation. This will preserve your data without any alteration,
as long as you do not uninstall PostgreSQL (the database engine that comes with Odoo).
The main reference for updating is logically our :ref:`installation guide <setup/install>`,
The main reference for updating is logically our :doc:`installation guide <../install>`,
which explains the common installation methods.
Updating is also most appropriately accomplished by the person who deployed Odoo initially,
@@ -110,7 +110,7 @@ to replace the installation directory with a newer version. First download the l
from Odoo.com. They are updated daily and include the latest security fixes (see step #1)
After downloading the package, extract it to a temporary location on your server.
You will get a folder labelled with the version of the source code, for example "odoo-13.0+e.20190719",
You will get a folder labeled with the version of the source code, for example "odoo-13.0+e.20190719",
that contains a folder "odoo.egg-info" and the actual source code folder named "odoo" (for Odoo 10
and later) or "openerp" for older versions.
You can ignore the odoo.egg-info folder. Locate the folder where your current installation is deployed,
@@ -99,7 +99,7 @@ disable the tests or allow specific tests to be run with custom tags in the :ref
<odoosh-gettingstarted-branches-tabs-settings>`.
Similar to staging branches, the emails are not sent but are intercepted by a mailcatcher and
scheduled actions are not triggered as often is the database is not in use.
scheduled actions are not triggered as long as the database is not in use.
The databases created for development branches are meant to live around three days.
After that, they can be automatically garbage collected to make room for new databases without prior notice.
@@ -295,7 +295,7 @@ Upgrade
Available for production and staging branches for valid projects.
.. seealso::
:doc:`Upgrade - Odoo.sh <../../upgrade/odoo_sh>`
:doc:`Upgrade documentation <../../upgrade>`
.. _odoosh-gettingstarted-branches-tabs-settings:
@@ -85,7 +85,7 @@ From the Odoo.sh editor, in a terminal:
$ odoo-bin scaffold my_module ~/src/user/
Or, from your computer, if you have an :ref:`installation of Odoo <setup/install/source>`:
Or, from your computer, if you have an :doc:`installation of Odoo <../../install/source>`:
.. code-block:: bash
@@ -45,41 +45,101 @@ these databases if they have one, using their regular credentials.
In addition, they cannot use the webshell nor have access to the server logs.
+---------------------+-----------------+-----------+-----------+
| | | User | Admin |
+=====================+=================+===========+===========+
|Development | History | X | X |
+---------------------+-----------------+-----------+-----------+
| | 1-click connect | X | X |
+---------------------+-----------------+-----------+-----------+
| | Logs | X | X |
+---------------------+-----------------+-----------+-----------+
| | Shell/SSH | X | X |
+---------------------+-----------------+-----------+-----------+
| | Mails | X | X |
+---------------------+-----------------+-----------+-----------+
| | Settings | X | X |
+---------------------+-----------------+-----------+-----------+
|Production & Staging | History | X | X |
+---------------------+-----------------+-----------+-----------+
| | 1-click connect | | X |
+---------------------+-----------------+-----------+-----------+
| | Logs | | X |
+---------------------+-----------------+-----------+-----------+
| | Shell/SSH | | X |
+---------------------+-----------------+-----------+-----------+
| | Mails | | X |
+---------------------+-----------------+-----------+-----------+
| | Monitoring | | X |
+---------------------+-----------------+-----------+-----------+
| | Backups | | X |
+---------------------+-----------------+-----------+-----------+
| | Settings | X | X |
+---------------------+-----------------+-----------+-----------+
|Status | | X | X |
+---------------------+-----------------+-----------+-----------+
|Settings | | | X |
+---------------------+-----------------+-----------+-----------+
.. list-table::
:header-rows: 1
:widths: auto
* -
-
- User
- Admin
* - Development
- History
- |green|
- |green|
* -
- 1-click connect
- |green|
- |green|
* -
- Logs
- |green|
- |green|
* -
- Shell/SSH
- |green|
- |green|
* -
- Mails
- |green|
- |green|
* -
- Upgrade
- |green|
- |green|
* -
- Settings
- |green|
- |green|
* - Production & Staging
- History
- |green|
- |green|
* -
- 1-click connect
-
- |green|
* -
- Logs
-
- |green|
* -
- Shell/SSH
-
- |green|
* -
- Mails
-
- |green|
* -
- Monitoring
-
- |green|
* -
- Backups
-
- |green|
* -
- Upgrade
-
- |green|
* -
- Settings
- |green|\*
- |green|
* - Status
-
- |green|
- |green|
* - Settings
-
-
- |green|
.. note::
\* Only in staging branches
.. |green| raw:: html
<span class="text-success" style="font-size: 32px; line-height: 0.5">●</span>
.. |orange| raw:: html
<span class="text-warning" style="font-size: 32px; line-height: 0.5">●</span>
.. |red| raw:: html
<span class="text-danger" style="font-size: 32px; line-height: 0.5">●</span>
Public Access
=============
+339 -196
View File
@@ -1,226 +1,372 @@
:show-content:
.. |assistance-contact| replace::
If you need Odoo assistance on this matter, please get in touch with your Odoo Account Manager or
our `Sales department`_.
.. _Sales department: mailto:sales@odoo.com
=======
Upgrade
=======
.. toctree::
:titlesonly:
.. _administration/upgrade:
upgrade/odoo_online
upgrade/odoo_sh
upgrade/on_premise
upgrade/faq
An upgrade is the process of moving your database from an older version to a newer :doc:`supported
version <maintain/supported_versions>` (e.g., Odoo 14.0 to Odoo 16.0). Frequently upgrading is
essential as each version comes with new and improved features, bug fixes, and security patches.
An upgrade is switching to a newer version of Odoo (e.g., Odoo 14.0 to Odoo 15.0).
.. _upgrade_faq/rolling_release:
.. spoiler:: Automatic upgrades: Odoo Online's Rolling Release process
The Rolling Release process allows Odoo Online customers to upgrade their database directly from
a message prompt sent to the database administrator as soon as a new version is released. The
invitation to upgrade is only sent if no issues are detected during the automatic tests.
.. image:: upgrade/rr-upgrade-message.png
:alt: The upgrade message prompt on the top right of the database
It is strongly recommended to manually :ref:`test the upgrade first <upgrade/test_your_db>`.
Clicking :guilabel:`I want to test first` redirects to `the database manager
<https://www.odoo.com/my/databases/>`_, where it is possible to request an upgraded test database
and check it for any discrepancies.
It is **not** recommended to click :guilabel:`Upgrade Now` without testing first, as it
immediately triggers the live production database upgrade.
If the Rolling Release process detects an issue with the upgrade, it will be deactivated until
the issue is resolved.
An upgrade does not cover:
* Changing :ref:`editions <upgrade-faq/editions-change>` (i.e., Community to Enterprise edition)
* Switching :ref:`hosting type <upgrade-faq/hosting-types-switch>` (i.e., On-Premise to Odoo Online
or Odoo.sh)
* Migration from another ERP to Odoo
- Downgrading to a previous version of Odoo
- :doc:`Switching editions <maintain/enterprise>` (e.g., from Community to Enterprise)
- :doc:`Changing hosting type </administration/maintain/hosting_changes>` (e.g., from on-premise
to Odoo Online)
- Migrating from another ERP to Odoo
.. note:: |assistance-contact|
.. warning::
If your database contains custom modules, it cannot be upgraded until a version of your custom
modules is available for the target version of Odoo. For customers maintaining their own custom
modules, we recommend to parallelize the process by :ref:`requesting an upgraded database
<upgrade/request-test-database>` while also :doc:`upgrading the source code of your custom
modules </developer/howtos/upgrade_custom_db>`.
.. seealso::
- :ref:`upgrade/sla`
.. _upgrade/process-workflow:
Upgrading in a nutshell
-----------------------
Process workflow
================
#. Request an upgraded test database (see :ref:`obtaining an upgraded test database
<upgrade/request-test-database>`).
The upgrade process in a nutshell:
#. If applicable, upgrade the source code of your custom module to be compatible with the new
version of Odoo (see :doc:`/developer/howtos/upgrade_custom_db`).
#. You create a test upgrade request.
#. Odoo processes the request automatically by running the database through an upgrade script, which
takes between 20 and 120 minutes.
#. Odoo delivers a test database.
#. You test your database for possible discrepancies (see :ref:`upgrade/test-guidance`).
#. If there are any discrepancies, you report them to the Upgrade support team via the help portal
(see :ref:`upgrade/test-assistance`).
#. We fix the issues and send you a new test database.
#. Once you have completed the testing and are happy with the result, you decide on a date and time
when you stop users from accessing Odoo, freeze all data entries, and create an upgrade request
for the production upgrade.
#. Odoo delivers the production database through the automated process.
#. You restore it in your Production environment a few short hours later and continue working on the
newly upgraded database (this is done automatically on Odoo Online).
#. Thoroughly test the upgraded database (see :ref:`testing the new version of the database
<upgrade/test_your_db>`).
.. seealso::
- :doc:`Upgrade process for Odoo Online <upgrade/odoo_online>`
- :doc:`Upgrade process for Odoo.sh <upgrade/odoo_sh>`
- :doc:`Upgrade process for On-Premise <upgrade/on_premise>`
#. Report any issue encountered during the testing to Odoo via the `support page
<https://odoo.com/help?stage=migration>`__.
.. _upgrade/testing-phase:
#. Once all issues are resolved and you are confident that the upgraded database can be used as
your main database without any issues, plan the upgrade of your production database.
Testing
=======
#. Request the upgrade for the production database, rendering it unavailable for the time it takes
to complete the process (see :ref:`upgrading the production database <upgrade/upgrade-prod>`).
This phase allows you to review an upgraded version of your database without affecting your
production database in any way. We suggest that you run the test upgrade process at least once, but
you can do it as many times as you need (one at a time).
#. Report any issue encountered during the upgrade to Odoo via the `support page
<https://odoo.com/help?stage=post_upgrade>`__.
Once you receive your upgraded test database, check that all data, processes, and functionality are
still correct and working as expected.
.. _upgrade/request-test-database:
If you do find discrepancies, :ref:`report your issues <upgrade/test-assistance>` and :ref:`request
a new test database <upgrade/test-db-request>` when the reported issues are fixed in the upgrade
script.
If you do not find any discrepancies, you can move on to the upgrade of your production database.
.. important::
A test database is only intended for testing and remains completely unrelated to your present or
future production database. Any data you add, or changes you make, will not be reflected in your
upgraded production database.
.. note::
Test databases are neutered and features are disabled to prevent them from having an impact on
the production database:
#. The serial number of the database is modified (to prevent it from sending information as if it
was the production database).
#. The :ref:`base URL of the database <domain-name/web-base-url>` is reset to
``http://localhost:8069`` and the email domain to ``localhost``.
#. Scheduled actions are disabled (the calendar synchronization, the bank statement
synchronization, the planned automated actions, the fetching of incoming mail servers, etc.).
#. Outgoing mail servers are disabled by archiving the existing ones and adding a
fake/non-working one.
#. Payment providers and delivery carriers are reset to test environment.
#. Accounting localization Electronic Data Interchange (EDI) services are disabled.
#. A system parameter is set to tell the database has been neutered.
.. _upgrade/test-db-request:
Request a test database
=======================
Follow the instructions available per hosting type on the `website form
<https://upgrade.odoo.com>`_ and select *Testing* purpose.
.. image:: upgrade/test-purpose.png
:align: center
:alt: Selection of the "Testing" purpose in the upgrade form on Odoo
.. _upgrade/test-guidance:
Test guidance
=============
Every business and organization has its own operational needs and has to test its specific Odoo
database individually. We recommend you look at `the test scenario
<https://docs.google.com/document/d/1ypNs7JKPOsjNbKpdiKFH7Al6g6whZ9jr7f7duAQ5E1w/>`_ for further
information.
.. todo:: change link "test scenario" once the related doc is published
.. _upgrade/test-assistance:
Assistance
----------
If you encounter an issue in the **test database**, please get in touch with Odoo Upgrade Support
via the `Odoo Support page <https://www.odoo.com/help>`_.
Under the *Ticket Description* section, select *An issue related to my upgrade* ticket type.
.. image:: upgrade/test-assistance.png
:align: center
:alt: Selection of "An issue related to my upgrade" as Ticket Type in the support form on Odoo
.. warning::
If you choose another *Ticket Description* type, the request will be redirected to another
team. This will slow down the processing and response time.
Please provide as much detail as you can (i.e., videos and screenshots to illustrate your issue).
This will avoid clarifying questions and speed up the resolution process significantly.
.. note::
* The purpose of the test phase is not to correct existing data or configurations in your
database.
* |assistance-contact|
.. _upgrade/steps-production:
The production launch
=====================
The production upgrade request is when you decide to upgrade your current database with all your
production data (invoices, VAT returns, inventories, current orders) to a new version of your
choice.
After your :ref:`tests <upgrade/testing-phase>` are completed to your satisfaction, submit the
request to upgrade your production database via our `website form <https://upgrade.odoo.com>`_.
Select *Production* purpose.
.. important::
Going into production without first testing may lead to:
- business interruptions (e.g., no longer having the possibility to validate an action)
- poor customer experiences (e.g., an eCommerce website that does not work correctly)
.. _upgrade/production-assistance:
Assistance
----------
If you encounter issues or problems in the **production database**, please get in touch with **Odoo
Support**:
#. Connect to our `Odoo Support page <https://www.odoo.com/help>`_.
#. Under the *Ticket Description* section, select the appropriate type related to your issue but
**do not select** the option *An issue related to my upgrade*.
.. note::
After upgrading to production, the support will be provided by the Support team instead of the
Upgrade team.
#. Please provide as much detail as you can (i.e., videos and screenshots to illustrate your issue).
This will avoid clarifying questions and speed up the resolution process significantly.
.. warning::
If you choose *An issue related to my upgrade* as ticket type, the request will be redirected
to another team than the support one and will slow down the processing and response time.
.. _upgrade/assistance:
Help
====
.. _upgrade/contact:
Contact our upgrade service support
Obtaining an upgraded test database
-----------------------------------
Should you have any more questions about the upgrade, do not hesitate to send a message to `Odoo
Upgrade Team <mailto:upgrade@odoo.com>`_. We will be happy to answer it as soon as possible.
The `Upgrade page <https://upgrade.odoo.com/>`_ is the main platform for requesting an upgraded
database. However, depending on the hosting type, you can upgrade from the command line
(on-premise), the `Odoo Online database manager <https://odoo.com/my/databases>`_, or your `Odoo.sh
project <https://odoo.sh/project>`_.
.. _upgrade/supported-versions:
.. note::
The Upgrade platform follows the same `Privacy Policy <https://www.odoo.com/privacy>`_ as the
other Odoo.com services. Visit the `General Data Protection Regulation page
<https://www.odoo.com/gdpr>`_ to learn more about how Odoo handles your data and privacy.
Supported versions
------------------
.. tabs::
Please note that Odoo provides support and bug fixing only for the three last major versions of
Odoo.
.. group-tab:: Odoo Online
This is a factor to take into consideration before upgrading. If you are on an older version, we
suggest you to prefer the most recent version to benefit from longer support (before having to
upgrade again).
Odoo Online databases can be manually upgraded via the `database manager
<https://odoo.com/my/databases>`_.
The database manager displays all databases associated with the user's account. Databases
not on the most recent version of Odoo display an arrow in a circle icon next to their name,
indicating that they can be upgraded.
.. image:: upgrade/databases-page.png
:alt: The database manager with an upgrade button next to the name of a database.
Click the **arrow in a circle** icon to start the upgrade process. In the popup, fill in:
- The **version** of Odoo you want to upgrade to, usually the latest version
- The **email** address that should receive the link to the upgraded database
- The :guilabel:`Purpose` of the upgrade, which is automatically set to :guilabel:`Test` for
your first upgrade request
.. image:: upgrade/upgrade-popup.png
:alt: The "Upgrade your database" popup.
The :guilabel:`Upgrade in progress` tag is displayed next to the database name until
completion. Once the process succeeds, an email containing a link to the upgraded test
database is sent to the address provided. The database can also be accessed from the database
manager by clicking the dropdown arrow before the database name.
.. image:: upgrade/access-upgraded-db.png
:alt: Clicking the menu arrow displays the upgraded test database.
.. group-tab:: Odoo.sh
Odoo.sh is integrated with the upgrade platform to simplify the upgrade process.
.. image:: upgrade/odoo-sh-staging.png
:alt: Odoo.sh project and tabs
The **latest production daily automatic backup** is then sent to the `upgrade platform
<https://upgrade.odoo.com>`_.
Once the upgrade platform is done upgrading the backup and uploading it on the branch, it is
put in a **special mode**: each time a **commit is pushed** on the branch, a **restore
operation** of the upgraded backup and an **update of all the custom modules** occur. This
allows you to test your custom modules on a pristine copy of the upgraded database. The log
file of the upgrade process can be found in your newly upgraded staging build by going to
:file:`~/logs/upgrade.log`.
.. important::
In databases where custom modules are installed, their source code must be up-to-date with
the target version of Odoo before the upgrade can be performed. If there are none, the
"update on commit" mode is skipped, the upgraded database is built as soon as it is
transferred from the upgrade platform, and the upgrade mode is exited.
Check out the :doc:`/developer/howtos/upgrade_custom_db` page for more information.
.. group-tab:: On-premise
The standard upgrade process can be initiated by entering the following command line on the
machine where the database is hosted:
.. code-block:: console
$ python <(curl -s https://upgrade.odoo.com/upgrade) test -d <your db name> -t <target version>
The following command can be used to display the general help and the main commands:
.. code-block:: console
$ python <(curl -s https://upgrade.odoo.com/upgrade) --help
An upgraded test database can also be requested via the `Upgrade page
<https://upgrade.odoo.com/>`_.
.. important::
In databases where custom modules are installed, their source code must be up-to-date with
the target version of Odoo before the upgrade can be performed. Check out the
:doc:`/developer/howtos/upgrade_custom_db` page for more information.
.. note::
- For security reasons, only the person who submitted the upgrade request can download it.
- For storage reasons, the database's copy is submitted without a filestore to the upgrade
server. Therefore, the upgraded database does not contain the production filestore.
- Before restoring the upgraded database, its filestore must be merged with the production
filestore to be able to perform tests in the same conditions as it would be in the new
version.
- The upgraded database contains:
- A `dump.sql` file containing the upgraded database
- A `filestore` folder containing files extracted from in-database records into
attachments (if there are any) and new standard Odoo files from the targeted Odoo
version (e.g., new images, icons, payment provider's logos, etc.).
This is the folder that should be merged with the production filestore
in order to get the full upgraded filestore.
.. note::
You can request multiple test databases if you wish to test an upgrade more than once.
.. _upgrade/upgrade_report:
.. note::
When an upgrade request is completed, an upgrade report is attached to the successful upgrade
email, and it becomes available in the Discuss app for users who are part of the "Administration
/ Settings" group. This report provides important information about the changes introduced by
the new version.
.. _upgrade/test_your_db:
Testing the new version of the database
---------------------------------------
It is essential to spend some time testing the upgraded test database to ensure that you are not
stuck in your day-to-day activities by a change in views, behavior, or an error message once the
upgrade goes live.
.. note::
Test databases are neutralized, and some features are disabled to prevent them from impacting the
production database:
#. Scheduled actions are disabled.
#. Outgoing mail servers are disabled by archiving the existing ones and adding a fake one.
#. Payment providers and delivery carriers are reset to the test environment.
#. Bank synchronization is disabled. Should you want to test the synchronization, contact your
bank synchronization provider to get sandbox credentials.
Testing as many of your business flows as possible is strongly recommended to ensure they are
working correctly and to get more familiar with the new version.
.. admonition:: Basic test checklist
- Are there views that are deactivated in your test database but active in your production
database?
- Are your usual views still displayed correctly?
- Are your reports (invoice, sales order, etc.) correctly generated?
- Are your website pages working correctly?
- Are you able to create and modify records? (sales orders, invoices, purchases, users, contacts,
companies, etc.)
- Are there any issues with your mail templates?
- Are there any issues with saved translations?
- Are your search filters still present?
- Can you export your data?
.. spoiler:: Example of end-to-end testing
- Checking a random product in your product catalog and comparing its test and production data to
verify everything is the same (product category, selling price, cost price, vendor, accounts,
routes, etc.).
- Buying this product (Purchase app).
- Confirming the reception of this product (Inventory app).
- Checking if the route to receive this product is the same in your production database
(Inventory app).
- Selling this product (Sales app) to a random customer.
- Opening your customer database (Contacts app), selecting a customer (or company), and checking
its data.
- Shipping this product (Inventory app).
- Checking if the route to ship this product is the same as in your production database
(Inventory app).
- Validating a customer invoice (Invoicing or Accounting app).
- Crediting the invoice (issuing a credit note) and checking if it behaves as in your production
database.
- Checking your reports' results (Accounting app).
- Randomly checking your taxes, currencies, bank accounts, and fiscal year (Accounting app).
- Making an online order (Website apps) from the product selection in your shop until the
checkout process and checking if everything behaves as in your production database.
This list is **not** exhaustive. Extend the example to your other apps based on your use of Odoo.
If you face an issue while testing your upgraded test database, you can request the assistance of
Odoo via the `support page <https://odoo.com/help?stage=migration>`__ by selecting the option
related to testing the upgrade. In any case, it is essential to report any
problem encountered during the testing to fix it before upgrading your production database.
You might encounter significant differences with standard views, features, fields, and models during
testing. Those changes cannot be reverted on a case-by-case basis. However, if a change introduced
by a new version breaks a customization, it is the responsibility of the maintainer of your custom
module to make it compatible with the new version of Odoo.
.. tip::
Do not forget to test:
- Integrations with external software (EDI, APIs, etc.)
- Workflows between different apps (online sales with eCommerce, converting a lead all the way to
a sales order, delivery of products, etc.)
- Data exports
- Automated actions
- Server actions in the action menu on form views, as well as by selecting multiple records on
list views
.. _upgrade/upgrade-prod:
Upgrading the production database
---------------------------------
Once the :ref:`tests <upgrade/test_your_db>` are completed and you are confident that the upgraded
database can be used as your main database without any issues, it is time to plan the go-live day. It
can be planned in coordination with Odoo's upgrade support analysts, reachable via the `support page
<https://odoo.com/help>`__.
Your production database will be unavailable during its upgrade. Therefore, we recommend planning
the upgrade at a time when the use of the database is minimal.
As the standard upgrade scripts and your database are constantly evolving, it is also recommended
to frequently request another upgraded test database to ensure that the upgrade process is
still successful, especially if it takes a long time to finish. **Fully rehearsing the upgrade
process the day before upgrading the production database is also recommended.**
.. important::
- Going into production without first testing may lead to:
- Users failing to adjust to the changes and new features
- Business interruptions (e.g., no longer having the possibility to validate an action)
- Poor customer experience (e.g., an eCommerce website that does not work correctly)
The process of upgrading a production database is similar to upgrading a test database with a few
exceptions.
.. tabs::
.. group-tab:: Odoo Online
The process is similar to :ref:`obtaining an upgraded test database
<upgrade/request-test-database>`, except for the purpose option, which must be set to
:guilabel:`Production` instead of :guilabel:`Test`.
.. warning::
Once the upgrade is requested, the database will be unavailable until the upgrade is
finished. Once the process is completed, it is impossible to revert to the previous
version.
.. group-tab:: Odoo.sh
The process is similar to :ref:`obtaining an upgraded test database
<upgrade/request-test-database>` on the :guilabel:`Production` branch.
.. image:: upgrade/odoo-sh-prod.png
:alt: View from the upgrade tab
The process is **triggered as soon as a new commit is made** on the branch. This
allows the upgrade process to be synchronized with the deployment of the custom modules'
upgraded source code.
If there are no custom modules, the upgrade process is triggered immediately.
.. important::
The database is unavailable throughout the process. If anything goes wrong, the platform
automatically reverts the upgrade, as it would be for a regular update. In case of success,
a backup of the database before the upgrade is created.
The update of your custom modules must be successful to complete the entire upgrade process.
Make sure the status of your staging upgrade is :guilabel:`successful` before trying it in
production. More information on how to upgrade your custom modules can be found on
:doc:`/developer/howtos/upgrade_custom_db`.
.. group-tab:: On-premise
The command to upgrade a database to production is similar to the one of upgrading a test
database except for the argument `test`, which must be replaced by `production`:
.. code-block:: console
$ python <(curl -s https://upgrade.odoo.com/upgrade) production -d <your db name> -t <target version>
An upgraded production database can also be requested via the `Upgrade page
<https://upgrade.odoo.com/>`_.
Once the database is uploaded, any modification to your production database will **not** be
present on your upgraded database. This is why we recommend not using it during the upgrade
process.
.. important::
When requesting an upgraded database for production purposes, the copy is submitted without
a filestore. Therefore, the upgraded database filestore must be merged with the production
filestore before deploying the new version.
In case of an issue with your production database, you can request the assistance of Odoo via the
`support page <https://odoo.com/help?stage=post_upgrade>`__ by selecting the option related to
the upgrade in production.
.. seealso::
:doc:`maintain/supported_versions`
.. _upgrade/sla:
Service-level agreement (SLA)
=============================
-----------------------------
With Odoo Enterprise, upgrading a database to the most recent version of Odoo is **free**, including
any support required to rectify potential discrepancies in the upgraded database.
@@ -230,7 +376,7 @@ Information about the upgrade services included in the Enterprise Licence is ava
upgrade services you can expect.
Upgrade services covered by the SLA
-----------------------------------
===================================
Databases hosted on Odoo's cloud platforms (Odoo Online and Odoo.sh) or self-hosted (On-Premise) can
benefit from upgrade services at all times for:
@@ -245,7 +391,7 @@ Upgrade services are limited to the technical conversion and adaptation of a dat
modules and data) to make it compatible with the version targeted by the upgrade.
Upgrade services not covered by the SLA
---------------------------------------
=======================================
The following upgrade-related services are **not** included:
@@ -256,9 +402,6 @@ The following upgrade-related services are **not** included:
<studio/automated-actions/action>`; and
- **training** on using the upgraded version's features and workflows.
.. note:: |assistance-contact|
.. seealso::
- :doc:`Upgrade FAQ <upgrade/faq>`
- :doc:`Odoo.sh documentation <odoo_sh>`
- :doc:`Supported Odoo versions <maintain/supported_versions>`
Binary file not shown.

After

Width:  |  Height:  |  Size: 2.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.6 KiB

-228
View File
@@ -1,228 +0,0 @@
.. |assistance-contact| replace::
If you need Odoo assistance on this matter, please get in touch with your Odoo Account Manager or
our `Sales department`_.
.. _Sales department: mailto:sales@odoo.com
===
FAQ
===
.. _upgrade-faq/why:
Why upgrade
===========
* You benefit from the latest features of the :ref:`new major version
<upgrade-faq/release-notes>` released by Odoo.
* If you are in an :ref:`unsupported version <upgrade/supported-versions>`, you get a new version
with support.
.. _upgrade-faq/when:
When to upgrade
===============
Whenever you want. You can make your upgrade request as soon as a new version is released or when
your version turns unsupported, and you still wish to enjoy support.
.. _upgrade-faq/availability:
Availability of the new version
===============================
As soon as Odoo announces the release of a new major version, you can create a test upgrade request
to try the latest version. Please note that at this point, the upgrade scripts will only have been
tested with demo data. Please report any issue you might encounter while testing via the `Odoo
Support page <https://www.odoo.com/help>`_ and make sure to be happy with your test version before
requesting the upgrade of your database in production.
.. _upgrade-faq/duration:
Duration of the upgrade
=======================
It is impossible to give time estimates for every upgrade request.
In general, the "smaller" the database, the quickest the upgrade request is completed. A single-user
database that uses only CRM will be processed faster than a multi-company, multi-user database that
uses Accounting, Sales, Purchase, and Manufacturing.
You can expect the time it takes for the platform to upgrade the test database to be similar to the
production upgrade.
.. _upgrade-faq/project:
Duration of the upgrade project
-------------------------------
It depends on the user involvement (the time spent on testing, reporting problems, etc.) and the
issues encountered that might need to be addressed by our technical team.
So, in a nutshell, what can impact your upgrade lead time?
* Source & targeted versions
* Installed apps
* Volume of data
* Amount of customization (models, fields, methods, workflows, reports, website, etc.)
* Installation of new apps or configuration changes after the start of the test phase
* User commitment
.. _upgrade-faq/custom-modules:
Upgrade of the custom modules
=============================
As stated in our :doc:`/legal/terms/enterprise`, section :ref:`charges_standard`, this optional
service is subject to additional fees.
Depending on your situation, the custom code could be upgraded by our services, by one of our
partners, or you can do it yourself.
.. note:: |assistance-contact|
.. _upgrade-faq/upgrade-or-migration:
Upgrade or Migration
====================
An upgrade is switching to a newer version of Odoo, while a migration reflects the change of
:ref:`editions <upgrade-faq/editions-change>` or change of :ref:`hosting type
<upgrade-faq/hosting-types-switch>`.
.. note:: |assistance-contact|
.. _upgrade-faq/editions-change:
Editions change (from Community to Enterprise)
==============================================
The upgrade always returns an Enterprise edition of Odoo, whether the database you sent was a
community or enterprise edition. It is required to have an enterprise subscription to upgrade.
.. note::
If you need assistance on this matter, please contact us via the `Odoo Support page
<https://www.odoo.com/help>`_.
.. seealso::
- `Editions <https://www.odoo.com/page/editions>`_
.. _upgrade-faq/hosting-types-switch:
Switching the hosting types (On-premise vs. Odoo Online vs. Odoo.sh)
====================================================================
An upgrade does not cover a change of `Hosting types <https://www.odoo.com/page/hosting-types>`_.
Open the following link to get :doc:`more information about how to change your hosting type
<../maintain/hosting_changes>`.
.. note:: |assistance-contact|
.. _upgrade-faq/upgrade-report:
The Upgrade Report
==================
When an upgrade request completes successfully (test or production), you receive an email
notification about it that includes an 'Upgrade Report'. This report is also sent to you via the
Discuss app. It contains valuable information regarding changes that occurred during the upgrade.
While it serves as a guide to possible issues to look out for, it is not an exhaustive list. It
remains imperative that you test the upgraded database thoroughly and report any discrepancies you
might find, before you decide to upgrade your production database.
.. _upgrade-faq/custom-views:
Custom views
============
During the upgrade, some custom views might get disabled for technical reasons. Therefore they might
have to be fixed after the upgrade. The :ref:`Upgrade Report <upgrade-faq/upgrade-report>` that is
generated after the upgrade is available in the Discuss app, and lists all the custom views that
might be impacted by this.
.. _upgrade-faq/release-notes:
Release Notes by version
========================
Open our `Release Note <https://www.odoo.com/page/release-notes>`_ page to get a summary of the new
features and improvements made in each version.
How long is my test available for
=================================
An Odoo Online test database is available for one month by default. We can extend this trial period
upon request. For Odoo.sh or on-premise, there is no restriction.
How many tests to perform before upgrading to production?
=========================================================
As many as needed. When you are comfortable with the database, run a last test upgrade 48 hours
before requesting your production upgrade and test your workflows one last time.
How to/Where to report upgrade issues?
======================================
If you encounter issues during the upgrade process, please contact the Odoo Support through the
`Odoo Support page <https://www.odoo.com/help>`_.
- To report an issue discovered during the testing phase, please select **An issue related to my
upgrade (test phase)**.
- To report an issue discovered post-upgrade, please select **An issue related to my upgrade
(production)**.
Upgrading to production
=======================
Once you have completed testing and are happy with the result, you decide on a date and time when
you stop users from accessing Odoo, freeze all data entries, and create an upgrade request for the
production upgrade.
How is my data handled in the Upgrade Platform?
===============================================
The Odoo Upgrade platform uses the same Privacy Policy as the rest of Odoo.com services.
Your data is hosted on servers that follow our security guidelines, namely:
- SSL - All web connections to client instances are protected with 256-bit SSL encryption
(HTTPS with a 2048-bit modulus SSL certificate), and running behind Grade A SSL stacks. All our
certificate chains are using SHA-2 already.
- Safe System - Our servers are running recent Linux distribution with up-to-date security patches,
with firewall and intrusion countermeasures (not disclosed for obvious reasons).
Servers are located at the same locations as our Cloud providers with the following services:
- Restricted perimeter, physically accessed by authorized data center employees only
- Physical access control with security badges or biometrical security
- Security cameras monitoring the data center locations 24/7
- Security personnel on-site 24/7
The uploaded and migrated databases uploaded to the Upgrade platform are kept for up to 3 months and
are permanently deleted following that period.
You can learn more about privacy and data handling at Odoo by visiting our `General Data Protection
Regulation page <https://www.odoo.com/gdpr>`_.
Rolling Release (applicable to Odoo Online databases)
=====================================================
This feature allows customers to upgrade their database directly from a message prompt sent to the
database administrator as soon as the new version is released. Odoo first tests the upgrade to the
next version. The rolling release upgrade option is displayed if the automated tests are successful.
The message offers two options:
#. To 'Upgrade Now', which immediately triggers the upgrade of your live production database.
#. To take you to your `database manager <https://www.odoo.com/my/databases/>`_ where you can
`request an upgraded test database <https://upgrade.odoo.com/#online/>`_ and check the upgraded
test database for any discrepancies.
When you choose to proceed with the production upgrade directly, make sure all users have saved
their work and are logged out. The upgrade takes approximately 15 minutes. During this time your
database is unreachable. If you notice any problem after the upgrade, please report it via the `Odoo
Support page <https://www.odoo.com/help>`_.
.. note::
If you are using the Website or Studio app, we recommend you always do a test upgrade before
upgrading your production instance.
Binary file not shown.

After

Width:  |  Height:  |  Size: 35 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

@@ -1,30 +0,0 @@
===========
Odoo Online
===========
Requesting a test upgrade
=========================
#. Go to your `database manager <https://www.odoo.com/my/databases/>`_
#. Click on your profile icon and select *My Databases*.
.. image:: odoo_online/accessing-my-databases.png
:alt: Selecting My Databases under my profile
#. Click on the up arrow button next to your main database name to proceed to the test upgrade.
.. image:: odoo_online/upgrade-option.png
:alt: Selecting the action settings icon
#. In the pop-up message that appears, select the target version and then :guilabel:`Test` as
purpose.
.. note::
The :guilabel:`Production` purpose doesn't appear if you didn't test your upgraded database at
least once.
#. This triggers the automated upgrade process. A confirmation email is then sent to you with the
the link to the upgraded database or to provide information if the upgrade failed.
.. note::
You can also see and access your test database from your *My Databases* page.
Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.1 KiB

-132
View File
@@ -1,132 +0,0 @@
=======
Odoo.sh
=======
.. _upgrade/odoo_sh/overview:
Overview
========
Odoo.sh is integrated with the upgrade platform to make the upgrade process easier.
.. note::
The :guilabel:`Upgrade` tab is available in the branches view. It is only available for valid
projects with a valid production build.
.. image:: odoo_sh/odoo-sh-menu.png
:align: center
:alt: Click on the upgrade menu
The suggested upgrade steps on Odoo.sh are:
#. On a :guilabel:`Development` branch, upgrade your custom modules to keep them compatible with the
new version and thoroughly **test them**.
#. Switch that branch to the :guilabel:`Staging` branch, **upgrade** the last daily production
backup and **test it**. Write upgrade scripts if necessary.
#. Trigger the production upgrade from your :guilabel:`Production` branch and sit tight.
.. seealso::
- :doc:`../../administration/upgrade`
- :doc:`Upgrade FAQ <../upgrade/faq>`
- :doc:`Introduction to Odoo.sh <../odoo_sh/overview/introduction>`
.. _upgrade/odoo_sh/custom-modules:
Upgrade your custom modules
===========================
The first step is to upgrade your custom modules to keep them compatible with the new version. Fork
your :guilabel:`Production` branch in the :guilabel:`Development` stage, then go to the settings of
your :guilabel:`Development` branch and select the Odoo version you target. If needed, modify your
code to be compatible with the new version. Make sure to **test** your features are still working
correctly.
.. note::
Depending on your contract, the upgrade of your custom modules can be done by yourself, by your
Partner or by Odoo (if you hold a subscription including maintenance of customizations).
.. _upgrade/odoo_sh/testing-phase:
Upgrade your database on a staging branch
=========================================
Take the upgraded development branch and drag & drop it to :guilabel:`Staging`.
Go to the :guilabel:`Upgrade` tab and select the :guilabel:`target version`. Then, click on
:guilabel:`Test Upgrade`.
.. image:: odoo_sh/odoo-sh-staging.png
:align: center
:alt: Odoo.sh project and tabs
The **latest production daily automatic backup** is sent to the
`upgrade platform <https://www.upgrade.odoo.com>`_ to start the upgrade test process.
.. note::
You can follow the upgrade process by going to the :guilabel:`Upgrade` menu of your
:guilabel:`Production` branch.
When the upgraded backup is ready on the `upgrade platform <https://www.upgrade.odoo.com>`_, it is
automatically downloaded back to your project.
The branch is now in a **special mode**: each time a **commit is pushed** on the branch, a
**restore operation** of the upgraded backup occurs, and an **update of all the custom modules**
happens. This allows you to quickly iterate on your custom modules upgrade scripts. The log file of
the upgrade process can be found at :file:`~/logs/upgrade.log` in your newly upgraded staging build.
.. note::
- The **special upgrade mode** is automatically closed after 30 days.
- It may happen that custom modules are no longer needed after an upgrade. Custom modules in the
upgraded database are set to be updated. If the modules are missing in the code, the update
fails, thus failing the whole process. An empty module with a manifest and possibly some custom
upgrade script are necessary to clean up the database. The complete removal of the module has
to be handled afterwards.
Functionally test your upgraded database
========================================
Now that the test upgraded database is available on your staging branch, **thoroughly test it** and
make sure everything runs as it's supposed to. Once you are satisfied with the result, you are ready
to upgrade your production database.
Production upgrade
==================
Once you are happy with your testing, you can start the process on the :guilabel:`Production`
branch.
On your :guilabel:`Production` branch, go to the :guilabel:`Upgrade` tab, select the
:guilabel:`targeted version` and click on the :guilabel:`start Upgrade` button.
.. image:: odoo_sh/odoo-sh-prod.png
:align: center
:alt: View from the upgrade tab
The actual process is **triggered as soon as you push a new commit** in your branch. Make sure you
are pushing code that is compatible with the new version. For example by merging the code from your
upgraded staging branch.
.. note::
You can see the progress of the upgrade by going to the :guilabel:`Upgrade` tab of the main
branch.
.. image:: odoo_sh/odoo-sh-progress.png
:align: center
:alt: View showing the progress of the upgrade
.. important::
Your database is unavailable throughout the process.
.. note::
If anything goes wrong, the platform automatically reverts the upgrade, the same as it would be
for a regular update. In case of success, a backup is always made.
The update of your custom modules must be successful to complete the entire upgrade process. Make
sure the status of your staging upgrade is :guilabel:`successful` before trying it in production.
.. note::
It may happen that custom modules are no longer needed after an upgrade. Custom modules in the
upgraded database are set to be updated. If the modules are missing in the code, the update
fails, thus failing the whole process. An empty module with a manifest and possibly some custom
upgrade script are necessary to clean up the database. The complete removal of the module has to
be handled afterwards.
Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 42 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 69 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 31 KiB

@@ -1,59 +0,0 @@
==========
On-Premise
==========
Test upgrade request
====================
There are two ways to create your upgrade request.
Upgrade request via command line
--------------------------------
For technically-advanced users and partners, the upgrade process can be initiated via the following
command line on the server where the database is hosted:
:command:`python <(curl -s https://upgrade.odoo.com/upgrade) test -d <your db name> -t
<target version>`
The above command creates the database dump, sends it to the upgrade platform, and initiates the
automated upgrade process. During the upgrade, you can follow the live logs on your screen.
Once the upgrade process is completed successfully, the upgraded database is restored onto the
server (as a duplicate test database).
Upgrade request via the Odoo Upgrade Portal
-------------------------------------------
#. Download a recent copy of your database and select the option :guilabel:`pg_dump custom format
(without filestore)`.
#. Upload this dump file at https://upgrade.odoo.com and select *Testing* as the aim.
Odoo performs the automated upgrade process. Once it is completed, you receive an email with a
link to download the upgrade database dump file.
#. Import the upgraded database into your on-premise environment and manually test all processes and
workflows.
.. note::
- For security reasons, only the person who submitted the upgrade request is able to download it.
- Any problem found during testing should be reported via the `helpdesk
<https://odoo.com/help>`_.
Upgrade your production database
================================
Once you have completed the testing successfully, you can proceed to upgrade your live database in
production. Download your upgraded database from the link in the email and import it onto your live
environment.
Custom modules (if applicable)
==============================
The upgrade of a database that contains custom modules is a two-step process.
#. The standard upgrade is done when your upgrade request is completed.
#. Your custom modules also need to be upgraded to keep them compatible with the new version.
Depending on your contract, the upgrade of your custom modules can be done
#. by yourself.
#. by your Partner.
#. by Odoo (if you hold a subscription to 'Maintenance of Customizations').
Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

+173 -125
View File
@@ -55,137 +55,185 @@ accounts, smart matching suggestions, etc.
Double-entry bookkeeping
========================
Odoo automatically creates all the behind-the-scenes journal entries
for each of your accounting transactions: customer invoices, point of
sale order, expenses, inventory moves, etc.
Odoo automatically creates all the underlying journal entries for all accounting transactions (e.g.,
customer invoices, vendor bills, point-of-sales orders, expenses, inventory valuations, etc.).
Odoo uses the rules of double-entry bookkeeping system: all journal
entries are automatically balanced (sum of debits = sum of credits).
Odoo uses the double-entry bookkeeping system, whereby every entry needs a corresponding and
opposite counterpart in a different account, with one account debited and the other credited.
It ensures that all transactions are recorded accurately and consistently and that the accounts
always balance.
.. seealso::
- :doc:`Understand Odoo's accounting transactions per document
<accounting/get_started/cheat_sheet>`
:doc:`Accounting Cheat Sheet <accounting/get_started/cheat_sheet>`
Accrual and Cash Basis Methods
==============================
Odoo supports both accrual and cash basis reporting. This allows you to
report income / expense at the time transactions occur (i.e., accrual basis), or when
payment is made or received (i.e., cash basis).
Multi-companies
===============
Odoo allows one to manage several companies within the same database. Each
company has its own chart of accounts and rules. You can get
consolidation reports following your consolidation rules.
Users can access several companies but always work in one company at a
time.
Multi-currencies
================
Every transaction is recorded in the default currency of the
company. For transactions occurring in another currency, Odoo stores
both the value in the currency of the company and the value in the
currency of the transaction. Odoo can generate currencies gains and
losses after the reconciliation of the journal items.
Currency rates are updated once a day using a yahoo.com online
web-service.
International Standards
=======================
Odoo accounting supports more than 50 countries. The Odoo core
accounting implements accounting standards that are common to all
countries. Specific modules exist per country for the
specificities of the country like the chart of accounts, taxes, or
bank interfaces.
In particular, Odoo's core accounting engine supports:
* Anglo-Saxon Accounting (U.S., U.K.,, and other English-speaking
countries including Ireland, Canada, Australia, and New Zealand)
where costs of good sold are reported when products are
sold/delivered.
* European accounting where expenses are accounted at the supplier
bill.
Odoo has modules to comply with IFRS rules.
Accounts Receivable and Payable
===============================
By default, Odoo uses a single account for all account
receivable entries and one for all accounts payable entries. You can
create separate accounts per customers/suppliers, but you don't need
to.
As transactions are associated to customers or suppliers, you get
reports to perform analysis per customer/supplier such as the customer
statement, revenues per customers, aged receivable/payables, ...
Wide range of financial reports
===============================
In Odoo, you can generate financial reports in real time. Odoo's
reports range from basic accounting reports to advanced management
reports. Odoo's reports include:
* Performance reports (such as Profit and Loss, Budget Variance)
* Position reports (such as Balance Sheet, Aged Payables, Aged
Receivables)
* Cash reports (such as Bank Summary)
* Detail reports (such as Trial Balance and General Ledger)
* Management reports (such as Budgets, Executive Summary)
Odoo's report engine allows you to customize your own report based on
your own formulae.
Import bank feeds automatically
===============================
Bank reconciliation is a process that matches your bank statement
lines, as supplied by the bank, to your accounting transactions in the
general ledger. Odoo makes bank reconciliation easy by frequently
importing bank statement lines from your bank directly into your Odoo
account. This means you can have a daily view of your cashflow without
having to log into your online banking or wait for your paper bank
statements.
Odoo speeds up bank reconciliation by matching most of your imported
bank statement lines to your accounting transactions. Odoo also
remembers how you've treated other bank statement lines and provides
suggested general ledger transactions.
Calculate the tax you owe your tax authority
============================================
Odoo totals all your accounting transactions for your tax period and
uses these totals to calculate your tax obligation. You can then check
your sales tax by running Odoo's Tax Report.
Inventory Valuation
===================
Odoo support both periodic (manual) and perpetual (automated)
inventory valuations. The available methods are standard price,
average price, LIFO (for countries allowing it) and FIFO.
.. seealso::
- :doc:`View impact of the valuation method on your transactions
</applications/inventory_and_mrp/inventory/management/reporting/inventory_valuation_config>`
Easy retained earnings
Accrual and cash basis
======================
Retained earnings are the portion of income retained by your
business. Odoo automatically calculates your current year earnings in
real time so no year-end journal or rollover is required. This is
calculated by reporting the profit and loss balance to your balance
sheet report automatically.
Both accrual and cash basis accounting are supported in Odoo. This allows reporting income and
expense either when the transaction occurs (accrual basis) or when the payment is made or received
(cash basis).
.. seealso::
:doc:`Cash basis <accounting/taxes/cash_basis>`
Multi-company
=============
Several companies can be managed within the same database. Each company has its :doc:`chart of
accounts <accounting/get_started/chart_of_accounts>`, which is also useful to generate consolidation
reports. Users can access several companies but can only work on a single company's accounting at a
time.
Multi-currency environment
==========================
A :doc:`multi-currency <accounting/get_started/multi_currency>` environment with an automated
exchange rate to ease international transactions is available in Odoo. Every transaction is recorded
in the company's default currency; for transactions occurring in another currency, Odoo stores both
the value in the company's currency and the transactions' currency value. Odoo generates currency
gains and losses after reconciling the journal items.
.. seealso::
:doc:`Manage a bank in a foreign currency <accounting/bank/foreign_currency>`
Branch management
=================
Multiple branches can be managed thanks to multi-company hierarchies. This allows to post journal
entries on each branch as well as setting up a common lock date managed by the main company.
International standards
=======================
Odoo Accounting supports more than 70 countries. It provides the central standards and mechanisms
common to all nations, and thanks to country-specific modules, local requirements are fulfilled.
Fiscal positions exist to address regional specificities like the chart of accounts, taxes, or any
other requirements.
.. seealso::
:doc:`Fiscal localization packages <fiscal_localizations>`
Accounts receivable and payable
===============================
By default, there is a single account for the account receivable entries and one for the account
payable entries. As transactions are linked to your **contacts**, you can run a report per customer,
vendor, or supplier.
The **Partner Ledger** report displays the balance of your customers and suppliers. It is available
by going to :menuselection:`Accounting --> Reporting --> Partner Ledger`.
Reporting
=========
The following financial :doc:`reports <accounting/reporting>` are available and updated in
real-time:
+-----------------------------------------------+
| Financial reports |
+============+==================================+
| Statement | Balance sheet |
| +----------------------------------+
| | Profit and loss |
| +----------------------------------+
| | Cash flow statement |
| +----------------------------------+
| | Tax report |
| +----------------------------------+
| | ES sales list |
+------------+----------------------------------+
| Audit | General ledger |
| +----------------------------------+
| | Trial balance |
| +----------------------------------+
| | Journal report |
| +----------------------------------+
| | Intrastat report |
| +----------------------------------+
| | Check register |
+------------+----------------------------------+
| Partner | Partner ledger |
| +----------------------------------+
| | Aged receivable |
| +----------------------------------+
| | Aged payable |
+------------+----------------------------------+
| Management | Invoice analysis |
| +----------------------------------+
| | Unrealized currency gains/losses |
| +----------------------------------+
| | Depreciation schedule |
| +----------------------------------+
| | Disallowed expenses |
| +----------------------------------+
| | Budget analysis |
| +----------------------------------+
| | Product margins |
| +----------------------------------+
| | 1099 report |
+------------+----------------------------------+
.. tip::
:doc:`Create and customize reports <accounting/reporting/customize>` with Odoo's report engine.
Tax report
----------
Odoo computes all accounting transactions for the specific tax period and uses these totals to
calculate the tax obligation.
.. important::
Once the tax report has been generated for a period, Odoo locks it and prevents the creation of
new journal entries involving VAT. Any correction to customer invoices or vendor bills has to
be recorded in the next period.
.. note::
Depending on the country's localization, an XML version of the tax report can be generated to be
uploaded to the VAT platform of the relevant taxation authority.
Bank synchronization
====================
The bank synchronization system directly connects with your bank institution to automatically
import all transactions into your database. It gives an overview of your cash flow without logging
into an online banking system or waiting for paper bank statements.
.. seealso::
:doc:`Bank synchronization <accounting/bank/bank_synchronization>`
Inventory valuation
===================
Both periodic (manual) and perpetual (automated) inventory valuations are supported in Odoo. The
available methods are standard price, average price, :abbr:`LIFO (Last-In, First-Out)` and
:abbr:`FIFO (First-In, First-Out).`
.. seealso::
:doc:`../inventory_and_mrp/inventory/warehouses_storage/inventory_valuation/inventory_valuation_config`
Retained earnings
=================
Retained earnings are the portion of income retained by a business. Odoo calculates current year
earnings in real-time, so no year-end journal or rollover is required. The profit
and loss balance is automatically reported on the balance sheet report.
.. seealso::
:doc:`Accounting Cheat Sheet <accounting/get_started/cheat_sheet>`
.. _fiduciaries:
Fiduciaries
===========
The :guilabel:`Accounting Firms` mode can be activated by going to :menuselection:`Accounting -->
Configuration --> Settings --> Accounting Firms mode`. When enabled:
- The document's sequence becomes editable on all documents;
- The :guilabel:`Total (tax incl.)` field appears to speed up and control the encoding by automating
line creation with the right account and tax;
- :guilabel:`Invoice Date` and :guilabel:`Bill Date` are pre-filled when encoding a transaction.
- A :guilabel:`Quick encoding` option is available for customer invoices and vendor bills.
.. toctree::
:titlesonly:
@@ -85,6 +85,8 @@ You can edit the accounting information and bank account number according to you
- :doc:`get_started/multi_currency`
- :doc:`bank/transactions`
.. _bank_accounts/suspense:
Suspense account
----------------
@@ -51,19 +51,20 @@ Now you can search for your bank institution. Select it and follow the steps to
web browser doesn't block pop-ups and that your ad-blocker is disabled.
.. important::
When choosing the date for the first bank statement synchronization, pick the date when you
start recording accounting transaction on your Odoo accounting database. For example, if you
import your closing balance in Odoo on the 31/12/2022 and you start recording accounting
transactions on the 01/01/2023, your synchronization date should be 01/01/2023.
When setting up the bank statement synchronization, Odoo automatically starts recording the
accounting transactions from the last transactions date +1 day (if the last transaction day is
31/12/2022, the recording starts on 01/01/2023). If the journal contains no transaction, Odoo
retrieves transactions as far back as possible. You can limit how far back Odoo retrieves
transactions by opening the Accounting app, going to :menuselection:`Accounting --> Lock Dates`,
and setting a date in the :guilabel:`Journal Entries Lock Date` field.
You must provide a phone number during your first synchronization to secure your account. We ask for
such information because we don't want your data falling into the wrong hands. Therefore, if we
detect suspicious activities on your account, we block all requests coming from your account, and
you need to reactivate it using that phone number.
The third-party provider may request more information in order to connect with your
bank institution.
This information is not stored on Odoo's servers.
The third-party provider may request more information in order to connect with your bank
institution. This information is not stored on Odoo's servers.
By default, transactions fetched from an online source are grouped inside the same statement, and
one bank statement is created per month. You can change the bank statement creation periodicity
@@ -106,9 +107,9 @@ If your connection with the proxy is disconnected, you can reconnect with the pr
:guilabel:`Fetch Account` button.
.. note::
This disconnection can be caused by the Odoo support. In this case, please contact the `support
<https://www.odoo.com/help>`_ directly with your client id or the reference of the error listed
in the chatter.
If you are unable to reconnect using the :guilabel:`Reconnect` button, please contact the
`support <https://www.odoo.com/help>`_ directly with your client id or the reference of the error
listed in the chatter.
.. _MigrationOnlineSync:
@@ -2,94 +2,139 @@
Bank reconciliation
===================
Overview
========
**Bank reconciliation** is the process of matching your :doc:`bank transactions <transactions>` with
your business records, such as :doc:`customer invoices <../customer_invoices>`, :doc:`vendor bills
<../vendor_bills>`, and :doc:`payments <../payments>`. Not only is this compulsory for most
businesses, but it also offers several benefits, such as reduced risk of errors in financial
reports, detection of fraudulent activities, and improved cash flow management.
Matching your bank statements with your accounting records can be a tedious task. You need to find the corresponding invoices, compare the amounts and partners' details with those in the bank statement. These steps can take a lot of time. Luckily, with Odoo you can very easily match your invoices or any other payment document with your bank statements.
Two options of the reconciliation process exist in Odoo.
1. We can directly specify the payment on the invoice
2. We can reconcile open invoices with bank statements
Configuration
=============
No special configuration is necessary to record invoices. All we need
to do is to install the accounting app.
.. image:: reconciliation/use01.png
Use cases
=========
Case 1: Payments registration
-----------------------------
We received the proof of payment of our invoice in the amount of 2100 euros issued to
Smith & Co.
We start at our issued Invoice of 2100 euros for Smith & Co. Because the
sold product is a service we demand an immediate payment. Our accountant
only handles bank statements at the end of week, so we have to mark
this invoice as paid immediately in order to indicate that we can start rendering services to our
customer.
Our customer send us a payment confirmation. We can thus register a
payment and mark the invoice as paid.
.. image:: reconciliation/use02.png
By clicking on **register payment,** we are telling Odoo that our
customer has paid the Invoice. We thus have to specify the amount and the
payment method.
.. image:: reconciliation/use03.png
Now we can always find the payment details in the Invoice by clicking on the
:menuselection:`Info --> Open Payment`.
.. image:: reconciliation/use04.png
The invoice has been paid and **the reconciliation has been done
automatically.**
Case 2: Bank statements reconciliations
---------------------------------------
We start at our issued Invoice of 3000 euros for Smith & Co. Let's also
assume that other Invoices are open for different customers.
.. image:: reconciliation/use05.png
We receive our bank statement and find that not only the invoice issued to Smith & Co has
been paid, but the one to Buzz of 92 euros as well.
**Import** or **Create** the bank statements. Please refer to the
documents from the Bank Feeds section.
.. image:: reconciliation/use06.png
On the dashboard, click on **Reconcile # Items**
.. image:: reconciliation/use07.png
If everything was right (correct partner name, right amount) odoo will
do the reconciliations **automatically**.
.. image:: reconciliation/use08.png
If some issues are found, you will need to take **manual actions**.
For example, if the partner is missing from your bank statement, just
fill it in :
.. image:: reconciliation/use09.png
If the payment is done with a down payment, just check if it is all
right and validate all related payments :
.. image:: reconciliation/use10.png
Thanks to the bank :doc:`reconciliation models <reconciliation_models>`, Odoo pre-selects the
matching entries automatically.
.. seealso::
:doc:`bank_synchronization`
- `Odoo Tutorials: Bank reconciliation
<https://www.odoo.com/slides/slide/bank-reconciliation-2724>`_
- :doc:`bank_synchronization`
- :doc:`transactions`
Bank reconciliation view
========================
To access a bank journal's **reconciliation view**, go to your :guilabel:`Accounting Dashboard` and
either:
- click the journal name (e.g., :guilabel:`Bank`) to display all transactions, including those
previously reconciled or
- click the :guilabel:`Reconcile items` button to display all transactions Odoo pre-selected for
reconciliation. You can remove the :guilabel:`Not Matched` filter from the search bar to include
previously reconciled transactions.
.. image:: reconciliation/bank-card.png
:alt: Reaching the bank reconciliation tool from your accounting dashboard
The bank reconciliation view is structured into three distinct sections: transactions, counterpart
entries, and resulting entry.
.. image:: reconciliation/user-interface.png
:alt: The user interface of the reconciliation view of a bank journal.
Transactions
The transactions section on the left shows all bank transactions, with the newest displayed
first. Click a transaction to select it.
Counterpart entries
The counterpart entries section on the bottom right displays the options to match the selected
bank transaction. Multiple tabs are available, including
:ref:`reconciliation/existing-entries`, :ref:`reconciliation/batch-payments`,
:ref:`reconciliation/manual-operations`, and :guilabel:`Discuss`, which contains the chatter for
the selected bank transaction.
Resulting entry
The resulting entry section on the top right displays the selected bank transaction matched with
the counterpart entries and includes any remaining debits or credits. In this section, you can
validate the reconciliation or mark it as :guilabel:`To Check`. Any :ref:`reconciliation model
buttons <reconciliation/button>` are also available in the resulting entry section.
Reconcile transactions
======================
Transactions can be matched automatically with the use of :doc:`reconciliation models
<reconciliation_models>`, or they can be matched with :ref:`existing entries
<reconciliation/existing-entries>`, :ref:`batch payments <reconciliation/batch-payments>`,
:ref:`manual operations <reconciliation/manual-operations>`, and :ref:`reconciliation model buttons
<reconciliation/button>`.
#. Select a transaction among unmatched bank transactions.
#. Define the counterpart. There are several options for defining a counterpart, including
:ref:`matching existing entries <reconciliation/existing-entries>`, :ref:`manual operations
<reconciliation/manual-operations>`, :ref:`batch payments <reconciliation/batch-payments>`, and
:ref:`reconciliation model buttons <reconciliation/button>`.
#. If the resulting entry is not fully balanced, balance it by adding another existing counterpart
entry or writing it off with a :ref:`manual operation <reconciliation/manual-operations>`.
#. Click the :guilabel:`Validate` button to confirm the reconciliation and move to the next
transaction.
.. tip::
If you are not sure how to reconcile a particular transaction and would like to deal with it
later, use the :guilabel:`To Check` button instead. All transactions marked as :guilabel:`To
Check` can be displayed using the :guilabel:`To Check` filter.
.. note::
Bank transactions are posted on the **journal's suspense account** until reconciliation. At this
point, reconciliation modifies the transaction journal entry by replacing the bank suspense
account with the corresponding receivable, payable, or outstanding account.
.. _reconciliation/existing-entries:
Match existing entries
----------------------
This tab contains matching entries Odoo automatically pre-selects according to the reconciliation
models. The entry order is based on :doc:`reconciliation models <reconciliation_models>`, with
suggested entries appearing first.
.. tip::
The search bar within the :guilabel:`Match Existing Entries` tab allows you to search for
specific journal items.
.. _reconciliation/batch-payments:
Batch payments
--------------
`Batch payments <payments/batch-payments>`_ allow you to group different payments to ease
reconciliation. Use the :guilabel:`Batch Payments` tab to find batch payments for customers and
vendors. Similarly to the :guilabel:`Match Existing Entries` tab, the :guilabel:`Batch Payments` tab
has a search bar that allows you to search for specific batch payments.
.. _reconciliation/manual-operations:
Manual operations
-----------------
If there is not an existing entry to match the selected transaction, you may instead wish to
reconcile the transaction manually by choosing the correct account and amount. Then, complete any
of the relevant optional fields.
.. tip::
You can use the :guilabel:`fully paid` option to reconcile a payment, even in cases where only a
partial payment is received. A new line appears in the resulting entry section to reflect the
open balance registered on the Account Receivable by default. You can choose another
account by clicking on the new line in the resulting entry section and selecting the
:guilabel:`Account` to record the open balance.
.. note::
Lines are silently reconciled unless a write-off entry is required, which launches a
reconciliation wizard.
.. image:: reconciliation/fully-paid.png
:alt: Click on fully paid to manually set an invoice as entirely paid.
.. _reconciliation/button:
Reconciliation model buttons
----------------------------
Use a :doc:`reconciliation model <reconciliation_models>` button for manual operations that are
frequently used. These custom buttons allow you to quickly reconcile bank transactions manually and
can also be used in combination with existing entries.
Binary file not shown.

After

Width:  |  Height:  |  Size: 7.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 67 KiB

@@ -1,129 +1,123 @@
=====================
Reconciliation Models
Reconciliation models
=====================
Once the bank statements are correctly imported, it is essential to *reconcile* the records properly
and ensure all *Journal Entries* are balanced and in agreement. To ease and speed up the
reconciliation process, you can configure **Reconciliation Models**, which are particularly useful
with recurrent entries such as bank fees.
Reconciliation models are used to automate the :doc:`bank reconciliation <reconciliation>` process,
which is especially handy when dealing with recurring entries like bank fees. Reconciliation models
can also be helpful in handling :doc:`cash discounts <../customer_invoices/cash_discounts>`.
.. todo:: Add a link to the Reconciliation process in the paragraph above, once the doc will have
been updated.
.. note::
Reconciliation Models are also useful to handle *Cash Discounts*. Please refer to
:doc:`this documentation <../customer_invoices/cash_discounts>` for more
information.
.. _reconciliation_models_types:
Types of Reconciliation Models
==============================
There are three types of Reconciliation Models:
#. :ref:`Write-off Button <reconciliation_models_button>`
#. :ref:`Suggestion of counterpart values <reconciliation_models_suggestion>`
#. :ref:`Match existing invoices/bills <reconciliation_models_match>`
.. _reconciliation_models_button:
Manually create a write-off on clicked button
---------------------------------------------
When you are reconciling an entry with an *Open Balance*, you can use the buttons available under
the *Manual Operations* tab to pre-fill all the values automatically, before validating the
reconciliation. Each button is a different Reconciliation Model.
.. image:: reconciliation_models/reconciliation_models_button.png
:align: center
:alt: Example of a Reconciliation Model with a write-off button in Odoo Accounting
.. _reconciliation_models_suggestion:
Suggest counterpart values
--------------------------
This type of Reconciliation Model suggests immediately counterpart values that only need to be
validated. This automation is based on a set of rules defined in the reconciliation model.
.. image:: reconciliation_models/reconciliation_models_suggestion.png
:align: center
:alt: Example of a Reconciliation Model that suggests counterpart values in Odoo Accounting
.. _reconciliation_models_match:
Match existing invoices/bills
-----------------------------
This type of Reconciliation Model automatically selects the right Customer Invoice or Vendor Bill
that matches the payment. All that is left to do is to validate the entry. This automation is based
on a set of rules defined in the reconciliation model.
.. image:: reconciliation_models/reconciliation_models_match.png
:align: center
:alt: Example of a Reconciliation Model that matches existing invoices and bills automatically
in Odoo Accounting
Configuration
=============
To manage or create new **Reconciliation Models**, go to :menuselection:`Accounting -->
Reconciliation --> Reconciliation Models`. Alternatively, you can also open this menu from the
Accounting Overview, by going to your Bank Journal card, clicking on the three little dots, and then
on *Reconciliation Models*.
.. image:: reconciliation_models/reconciliation_models_overview.png
:align: center
:alt: Open the Reconciliation Model menu from the overview dashboard in Odoo Accounting
.. important::
The first entry, named *Invoices Matching Rule*, is the one responsible for the current matching
of invoices and bills. Therefore, it is advised to leave it at the top of the list and not to
delete it.
Open the model you want to modify, or click on *Create* to create a new one, then fill out the form.
Type
----
See :ref:`above <reconciliation_models_types>` for an explanation about the different types of
Reconciliation Models.
.. note::
If the *Documents* application is installed on your database, an additional **Activity type**
field appears when *To check* is ticked. Selecting the value *Reconciliation request* implies
that, whenever you use this model, a *Request Document* window pops up to request a document from
a user.
Conditions on Bank Statement Line
---------------------------------
Define here all the conditions that are required for a Reconciliation Model to be applied.
.. important::
If a record matches with several Reconciliation Models, the first one in the *sequence* of models
will be applied. The sequence is simply the order of the models in the *list view*. They can be
rearranged by dragging-and-dropping the handle next to the name.
.. image:: reconciliation_models/reconciliation_models_conditions.png
:align: center
:alt: Conditions for the Reconciliation Model to be applied in Odoo Accounting
Counterpart Values
------------------
This section comprises the values that are applied by the Reconciliation Model.
If the value to reconcile needs to be written-off in two separate accounts, click on *Add a second
line*.
.. image:: reconciliation_models/reconciliation_models_counterparts.png
:align: center
:alt: Counterparts values of a Reconciliation Model in Odoo Accounting
Each model is created based on a :ref:`model type <models/type>` and :guilabel:`bank transaction
conditions`.
.. seealso::
- :doc:`reconciliation`
- :doc:`bank_synchronization`
- :doc:`../customer_invoices/cash_discounts`
- `Odoo Tutorials: Reconciliation models <https://www.odoo.com/slides/slide/reconciliation-models-1841?fullscreen=1>`_
.. _models/type:
Reconciliation model types
==========================
The reconciliation models are available by going to :menuselection:`Accounting --> Configuration
--> Banks: Reconciliation Models`. For each reconciliation model, a :guilabel:`Type` must be set.
Three types of models exist:
- :guilabel:`Button to generate counterpart entry`: a button is created in the resulting entry
section of the bank reconciliation view. If clicked, this button generates a counterpart entry to
reconcile with the active transaction based on the rules set in the model. The rules specified in
the model determine the counterpart entry's account(s), amount(s), label(s), and analytic
distribution;
- :guilabel:`Rule to suggest counterpart entry`: used for recurring transactions to match the
transaction to a new entry based on conditions that must match the information on the transaction;
- :guilabel:`Rule to match invoices/bills`: used for recurring transactions to match the transaction
to existing invoices, bills, or payments based on conditions that must match the information on
the transaction.
Default reconciliation models
=============================
In Odoo, different models are available by default depending on the company's fiscal localization.
These can be updated if needed. Users can also create their own reconciliation models by clicking
:guilabel:`New`.
.. important::
If a record matches with several reconciliation models, the first one in the *sequence* of models
is applied. You can rearrange the order by dragging and dropping the handle next to the name.
.. image:: reconciliation_models/list-view.png
:alt: Rearrange the sequence of models in the list view.
Invoices/Bills perfect match
----------------------------
This model should be at the top of the *sequence* of models, as it enables Odoo to suggest matching
existing invoices or bills with a bank transaction based on set conditions.
.. image:: reconciliation_models/invoices-bills-perfect-match.png
:alt: Set rules to trigger the reconciliation.
Odoo automatically reconciles the payment when the :guilabel:`Auto-validate` option is selected, and
the model conditions are perfectly met. In this case, it expects to find on the bank statement's
line the invoice/payment's reference (as :guilabel:`Label` is selected) and the partner's name
(as :guilabel:`Partner is set` is selected) to suggest the correct counterpart entry and reconcile
the payment automatically.
Invoices/Bills partial match if underpaid
-----------------------------------------
This model suggests a customer invoice or vendor bill that partially matches the payment when the
amount received is slightly lower than the invoice amount, for example in the case of
**cash discounts**. The difference is reconciled with the account indicated in the
:guilabel:`counterpart entries` tab.
The reconciliation model :guilabel:`Type` is :guilabel:`Rule to match invoices/bills`, and the
:guilabel:`Payment tolerance` should be set.
.. image:: reconciliation_models/partial-match.png
:alt: Set rules to trigger the reconciliation.
.. note::
The :guilabel:`Payment tolerance` is only applicable to lower payments. It is disregarded when an
overpayment is received.
.. seealso::
:doc:`../customer_invoices/cash_discounts`
Line with bank fees
-------------------
This model suggests a counterpart entry according to the rules set in the model. In this case, the
reconciliation model :guilabel:`Type` is :guilabel:`Rule to suggest counterpart entry`, and the
:guilabel:`Label` can be used for example, to identify the information referring to the
:guilabel:`Bank fees` in the label of the transaction.
.. image:: reconciliation_models/bank-fees.png
:alt: Set rules to trigger the reconciliation.
.. note::
`Regular expressions <https://regexone.com/>`_, often abbreviated as **Regex**, can be used in
Odoo in various ways to search, validate, and manipulate data within the system. Regex can be
powerful but also complex, so it's essential to use it judiciously and with a good understanding
of the patterns you're working with.
To use regular expressions in your reconciliation models, set the :guilabel:`Transaction Type`
to :guilabel:`Match Regex` and add your expression. Odoo automatically retrieves the
transactions that match your Regex expression and the conditions specified in your model.
.. image:: reconciliation_models/regex.png
:alt: Using Regex in Odoo
Partner mapping
===============
Partner mapping allows you to establish rules for automatically matching transactions to the correct
partner account, saving time and reducing the risk of errors that can occur during manual
reconciliation. For example, you can create a partner mapping rule for incoming payments with
specific reference numbers or keywords in the transaction description. When an incoming payment
meets these criteria, Odoo automatically maps it to the corresponding customer's account.
To create a partner mapping rule, go to the :guilabel:`Partner Mapping` tab and enter the
:guilabel:`Find Text in Label`, :guilabel:`Find Text in Notes`, and :guilabel:`Partner`.
.. image:: reconciliation_models/partner-mapping.png
:alt: defining partner mapping
Binary file not shown.

After

Width:  |  Height:  |  Size: 19 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 19 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 26 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.9 KiB

@@ -188,6 +188,8 @@ you will see the follow-up message and all overdue invoices.
.. image:: customer_invoices/invoice12.png
.. _customer-invoices/aging-report:
Customer aging report:
~~~~~~~~~~~~~~~~~~~~~~
@@ -228,7 +230,9 @@ the material has been shipped to the customer.
:titlesonly:
customer_invoices/overview
customer_invoices/customer_addresses
customer_invoices/payment_terms
customer_invoices/terms_conditions
customer_invoices/cash_discounts
customer_invoices/credit_notes
customer_invoices/cash_rounding
@@ -236,3 +240,4 @@ the material has been shipped to the customer.
customer_invoices/electronic_invoicing
customer_invoices/snailmail
customer_invoices/epc_qr_code
customer_invoices/incoterms
@@ -5,7 +5,7 @@ Cash discounts and tax reduction
**Cash discounts** are reductions in the amount a customer must pay for goods or services offered as
an incentive for paying their invoice promptly. These discounts are typically a percentage of the
total invoice amount and are applied if the customer pays within a specified time. Cash discounts
can help the company maintain a steady cash flow.
can help a company maintain a steady cash flow.
.. example::
You issue a €100 invoice on the 1st of January. The full payment is due within 30 days, and you
@@ -17,15 +17,46 @@ can help the company maintain a steady cash flow.
A :ref:`tax reduction <cash-discounts/tax-reductions>` can also be applied depending on the country
or region.
.. seealso::
- :doc:`payment_terms`
- :doc:`../payments`
.. _cash-discounts/configuration:
Configuration
=============
To grant cash discounts to customers, you must first set up the :ref:`type of tax reduction
<cash-discounts/tax-reductions>`, verify the :ref:`gain and loss accounts
<cash-discounts/gain-loss-accounts>`, and configure new :ref:`payment terms
<cash-discounts/payment-terms>`.
To grant cash discounts to customers, you must first verify the :ref:`gain and loss accounts
<cash-discounts/gain-loss-accounts>`. Then, configure :ref:`payment terms
<cash-discounts/payment-terms>` and add a cash discount by checking the :guilabel:`Early Discount`
checkbox and filling in the discount percentage, discount days, and :ref:`tax
reduction <cash-discounts/tax-reductions>` fields.
.. _cash-discounts/gain-loss-accounts:
Cash discount gain/loss accounts
--------------------------------
With a cash discount, the amount you earn depends on whether the customer benefits from the cash
discount or not. This inevitably leads to gains and losses, which are recorded on default accounts.
To modify these accounts, go to :menuselection:`Accounting --> Configuration --> Settings`, and, in
the :guilabel:`Default Accounts` section, select the accounts you want to use for the
:guilabel:`Cash Discount Gain account` and :guilabel:`Cash Discount Loss account`.
.. _cash-discounts/payment-terms:
Payment terms
-------------
Cash discounts are defined on :doc:`payment terms <payment_terms>`. Configure them to your liking by
going to :menuselection:`Accounting --> Configuration --> Payment Terms`, and make sure to fill out
the discount percentage, discount days, and :ref:`tax reduction <cash-discounts/tax-reductions>`
fields.
.. image:: cash_discounts/payment-terms.png
:alt: Configuration of payment terms named "2/7 Net 30". The field "Description on Invoices"
reads: "Payment terms: 30 Days, 2% Early Payment Discount under 7 days".
.. _cash-discounts/tax-reductions:
@@ -33,24 +64,24 @@ Tax reductions
--------------
Depending on the country or region, the base amount used to compute the tax can vary, which can lead
to a **tax reduction**.
to a **tax reduction**. Since tax reductions are set on individual payment terms, each term can use
a specific tax reduction.
To configure how the tax reduction is applied, go to :menuselection:`Accounting --> Configuration
--> Settings`, and in the :guilabel:`Taxes` section, in the :guilabel:`Cash Discount Tax Reduction`
feature, select one of the three following options:
To configure how the tax reduction is applied, go to a payment term with the :guilabel:`Early
Discount` checkbox enabled, and select one of the three following options:
Always (upon invoice)
The tax is always reduced. The base amount used to compute the tax is the discounted amount,
whether the customer benefits from the discount or not.
- Always (upon invoice)
The tax is always reduced. The base amount used to compute the tax is the discounted amount,
whether the customer benefits from the discount or not.
On early payment
The tax is reduced only if the customer pays early. The base amount used to compute the tax is the
same as the sale: if the customer benefits from the reduction, then the tax is reduced. This means
that, depending on the customer, the tax amount can vary after the invoice is issued.
- On early payment
The tax is reduced only if the customer pays early. The base amount used to compute the tax is the
same as the sale: if the customer benefits from the reduction, then the tax is reduced. This means
that, depending on the customer, the tax amount can vary after the invoice is issued.
Never
The tax is never reduced. The base amount used to compute the tax is the full amount, whether the
customer benefits from the discount or not.
- Never
The tax is never reduced. The base amount used to compute the tax is the full amount, whether the
customer benefits from the discount or not.
.. example::
@@ -70,10 +101,10 @@ Never
- Computation
* - 8th of January
- €118.58
- (€98 + (21% of €98))
- €98 + (21% of €98)
* - 31st of January
- €120.58
- (€100 + (21% of €98))
- €100 + (21% of €98)
.. tab:: On early payment
@@ -85,10 +116,10 @@ Never
- Computation
* - 8th of January
- €118.58
- (€98 + (21% of €98))
- €98 + (21% of €98)
* - 31st of January
- €121.00
- (€100 + (21% of €100))
- €100 + (21% of €100)
.. tab:: Never
@@ -100,10 +131,10 @@ Never
- Computation
* - 8th of January
- €119.00
- (€98 + (21% of €100))
- €98 + (21% of €100)
* - 31st of January
- €121.00
- (€100 + (21% of €100))
- €100 + (21% of €100)
.. note::
- :ref:`Tax grids <tax-returns/tax-grids>`, which are used for the tax report, are correctly
@@ -112,41 +143,12 @@ Never
- The **type of cash discount tax reduction** may be correctly pre-configured, depending on your
:ref:`fiscal localization package <fiscal_localizations/packages>`.
.. _cash-discounts/gain-loss-accounts:
Cash discount gain/loss accounts
--------------------------------
With a cash discount, the amount you earn depends on whether the customer benefits from the cash
discount or not. This inevitably leads to gains and losses, which are recorded on default accounts.
To modify these accounts, go to :menuselection:`Accounting --> Configuration --> Settings`, and in
the :guilabel:`Default Accounts` section, select the accounts you want to use for the
:guilabel:`Cash Discount Gain account` and :guilabel:`Cash Discount Loss account`.
.. _cash-discounts/payment-terms:
Payment terms
-------------
Cash discounts are defined on :doc:`payment terms <payment_terms>`. Configure them to your liking by
going to :menuselection:`Accounting --> Configuration --> Payment Terms`, and make sure to fill out
the fields :guilabel:`Discount %` and :guilabel:`Discount Days`.
.. image:: cash_discounts/payment-terms.png
:align: center
:alt: Configuration of payment terms named "2/7 Net 30". The field "Description on Invoices"
reads: "Payment terms: 30 Days, 2% Early Payment Discount under 7 days".
.. seealso::
:doc:`payment_terms`
.. _cash-discounts/customer-invoice:
Apply a cash discount to a customer invoice
===========================================
Apply a cash discount to a customer invoice by selecting the :ref:`payment terms you created
On a customer invoice, apply a cash discount by selecting the :ref:`payment terms you created
<cash-discounts/payment-terms>`. Odoo automatically computes the correct amounts, tax amounts, due
dates, and accounting records.
@@ -154,26 +156,23 @@ Under the :guilabel:`Journal Items` tab, you can display the discount details by
"toggle" button and adding the :guilabel:`Discount Date` and :guilabel:`Discount Amount` columns.
.. image:: cash_discounts/invoice-journal-entry.png
:align: center
:alt: An invoice of €100.00 with "2/7 Net 30" selected as payment terms. The "Journal Items" tab
is open, and the "Discount Date" and "Discount Amount" columns are displayed.
The discount amount and due date are also displayed on the generated invoice sent to the customer.
The discount amount and due date are also displayed on the generated invoice report sent to the
customer if the :guilabel:`Show installment dates` option is checked on the payment terms.
.. image:: cash_discounts/invoice-print.png
:align: center
:alt: An invoice of €100.00 with the following text added to the terms and conditions: "30 Days,
2% Early Payment Discount under 7 days. 118.58 € due if paid before 01/08/2023."
:alt: An invoice of €100.00 with the following text added to the terms and conditions: "30
Days, 2% Early Payment Discount under 7 days. 118.58 € due if paid before 01/08/2023."
Payment reconciliation
----------------------
When you record a payment or reconcile your bank statements, Odoo takes the customer payment's date
into account to define if they can benefit from the cash discount or not.
When you record a :doc:`payment <../payments>` or :doc:`reconcile your bank transactions
<../bank/reconciliation>`, Odoo takes the customer payment's date into account to determine if the
customer can benefit from the cash discount or not.
.. note::
If your customer pays the discount amount *after* the discount date, you can always decide
whether to mark the invoice as fully paid with a write-off or as partially paid.
.. seealso::
:doc:`../payments`
If your customer pays the discount amount *after* the discount date, you can always decide to
mark the invoice as fully paid with a write-off or as partially paid.
Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

After

Width:  |  Height:  |  Size: 16 KiB

@@ -2,102 +2,121 @@
Credit notes and refunds
========================
A **credit note**, or **credit memo**, is a document issued
to a customer that notifies them that they have been credited
a certain amount.
A **credit/debit note**, or **credit/debit memo**, is a document issued to a customer that notifies
them that they have been *credited/debited* a certain amount.
There are several reasons that can lead to a credit note, such as:
* a mistake in the invoice
* a return of the goods, or a rejection of the services
* the goods delivered are damaged
Several use cases can lead to a credit note, such as:
- a mistake in the invoice
- a return of the goods, or a rejection of the services
- the goods delivered are damaged
Debit notes are less common but are most frequently used to track debts owed by customers or to
vendors because of modifications to confirmed customer invoices or vendor bills.
.. note::
Issuing a credit note is the only legal way to cancel,
refund or modify a validated invoice. Dont forget to
*register the payment* afterward if you need to send money
back to your customer.
Issuing a credit/debit note is the only legal way to cancel, refund, or modify a validated
invoice. Do not forget to **register the payment** afterward if you need to send money back to
your customer and/or validate the
:doc:`return </applications/sales/sales/products_prices/returns>` if a storable product is
returned.
Issue a Credit Note
.. _accounting/issue-credit-note:
Issue a credit note
===================
You can create a credit note from scratch by going to
:menuselection:`Accounting --> Customers --> Credit Notes`,
and by clicking on *Create*. Filling the Credit Notes form
works the same way as the Invoices form.
You can create a credit note from scratch by going to :menuselection:`Accounting --> Customers -->
Credit Notes`, and by clicking on :guilabel:`Create`. Filling out a credit note form works the same
way as an invoice form.
However, most of the time, credit notes are generated directly
from the invoices they are related to.
To do so, open the *Customer Invoice*, and click on *Add Credit Note*.
.. image:: credit_notes/credit_notes01.png
:align: center
However, most of the time, credit notes are generated directly from the related invoices. To do so,
go to :menuselection:`Accounting --> Customers --> Invoices`, open the related **customer invoice**,
and click on :guilabel:`Credit Note`.
You can choose between three options:
- Partial Refund
- Full Refund
- Full refund and new draft invoice
- :guilabel:`Partial Refund`
- :guilabel:`Full Refund`
- :guilabel:`Full refund and new draft invoice`
.. note::
Credit Notes numbers start with “R” and are followed by the
number of the document they are related to (e.g., RINV/2019/0004).
A credit note sequence starts with `R` and is followed by the number of the related document
(e.g., RINV/2019/0004 is related to the invoice INV/2019/0004).
Partial Refund
Partial refund
--------------
Odoo creates a draft credit note already prefilled with all the
necessary information from the original invoice.
This is the option to choose to do a partial refund, or if you
want to modify any detail on the credit note.
When selecting the :guilabel:`Partial Refund` option, Odoo creates a draft credit note already
prefilled with all the necessary information from the original invoice. This is the option to choose
if you wish to do a partial refund or if you want to modify any detail of the credit note.
.. note::
This is the only option available for invoices that are already marked as *Paid*.
This is the only option for invoices marked as *in payment* or *paid*.
Full Refund
Full refund
-----------
Odoo creates a credit note, automatically validates it, and
reconciles the original invoice with it.
When selecting the :guilabel:`Full Refund` option, Odoo creates a credit note, automatically
validates it, and reconciles it with the related invoice.
.. image:: credit_notes/credit_notes02.png
:align: center
:alt: Full refund credit note.
This is the option to choose to do a full refund or cancel
a validated invoice.
This is the option to choose for a full refund or to **cancel** a *validated* invoice.
Full refund and new draft invoice
---------------------------------
Odoo creates a credit note, automatically validates it, reconciles
the original invoice with it, and open a new draft invoice
When selecting the :guilabel:`Full refund and new draft invoice` option, Odoo creates a credit note,
automatically validates it, reconciles it with the related invoice, and opens a new draft invoice
prefilled with the same details from the original invoice.
This is the option to choose to modify the content of a validated invoice.
This is the option to **modify** the content of a *validated* invoice.
Record a Vendor Refund
.. _accounting/issue-debit-note:
Issue a debit note
==================
You can create a debit note from scratch by going to :menuselection:`Accounting --> Customers -->
Invoices` or by clicking on the related invoice you wish to issue a debit note for. On the invoice
form view, click :guilabel:`Cog icon (⚙) --> Debit Note`, fill in the information, and click
:guilabel:`Create Debit Note`.
Record a vendor refund
======================
**Vendor Refunds** are recorded the same way you would do with invoices credit notes:
**Vendor refunds** are recorded the same way as credit notes:
You can either create a credit note from scratch by going
to :menuselection:`Accounting --> Vendors --> Refund`, and
by clicking on *Create*, or by opening the validated *Vendor Bill*,
and clicking on *Add Credit Note*.
You can either create a credit note from scratch by going to :menuselection:`Accounting --> Vendors
--> Refund`, and by clicking on :guilabel:`Create`; or by opening the related **vendor bill**, and
clicking on :guilabel:`Credit Note`.
Journal Entries
Record a debit note
===================
**Debit notes** from vendors are recorded in a similar way to how they are issued to customers:
Go to :menuselection:`Accounting --> Vendors --> Bills`, open the related bill you wish to record a
debit note for, and click :guilabel:`Cog icon (⚙) --> Debit Note`. Fill in the information, and click
:guilabel:`Create Debit Note`.
Journal entries
===============
Issuing a credit note from an invoice creates a **reverse entry**
that zeroes out the journal items generated by the original invoice.
Issuing a credit/debit note from an invoice/bill creates a **reverse entry** that zeroes out the
journal items generated by the original invoice.
Here is an example of an invoices journal entry:
.. image:: credit_notes/credit_notes03.png
:align: center
.. example::
The journal invoice of an entry:
And here is the credit notes journal entry generated to reverse
the original invoice above:
.. image:: credit_notes/credit_notes03.png
:alt: Invoice journal entry.
.. image:: credit_notes/credit_notes04.png
:align: center
And here is the credit notes journal entry generated to reverse
the original invoice above:
.. image:: credit_notes/credit_notes04.png
:alt: Credit note journal entry reverses the invoice journal entry.
Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.8 KiB

@@ -0,0 +1,39 @@
==============================
Delivery and invoice addresses
==============================
Companies often have multiple locations, and it is common that a customer invoice should be sent to
one address and the delivery should be sent to another. Odoo's **Customer Addresses** feature is
designed to handle this scenario by making it easy to specify which address to use for each case.
.. seealso::
:doc:`overview`
Configuration
=============
To specify a sales order's invoice and delivery addresses, first go to :menuselection:`Accounting
--> Configuration --> Settings`. In the :guilabel:`Customer Invoices` section, enable
:guilabel:`Customer Addresses` and click :guilabel:`Save`.
On quotations and sales orders, there are now fields for :guilabel:`Invoice Address` and
:guilabel:`Delivery Address`. If the customer has an invoice or delivery address listed on their
contact record, the corresponding field will use that address by default, but any contact's address
can be used instead.
Invoice and deliver to different addresses
==========================================
Delivery orders and their delivery slip reports use the address set as the :guilabel:`Delivery
Address` on the sales order. By default, invoice reports show both the shipping address and the
invoice address to assure the customer that the delivery is going to the correct location.
Emails also go to different addresses. The quotation and sales order are sent to the main contact's
email, as usual, but the invoice is sent to the email of the address set as the
:guilabel:`Invoice Address` on the sales order.
.. note::
- Reports, such as the delivery slip and invoice report, can be :doc:`customized using Studio
</applications/productivity/studio/pdf_reports>`.
- If :doc:`Send by Post <snailmail>` is checked when you click :guilabel:`Send & Print`, the
invoice will be mailed to the invoice address.
@@ -2,194 +2,175 @@
Deferred revenues
=================
**Deferred revenues**, or **unearned revenue**, are payments made in advance by customers for
products yet to deliver or services yet to render.
**Deferred revenues**, or **unearned revenues**, are invoices addressed to customers
for goods yet to be delivered or services yet to be rendered.
Such payments are a **liability** for the company that receives them since it still owes its
customers these products or services. The company cannot report them on the current **Profit and
Loss statement**, or *Income Statement*, since the payments will be effectively earned in the future.
The company cannot report them on the current **profit and loss statement**, or *income statement*,
since the goods and services will be effectively delivered/rendered in the future.
These future revenues must be deferred on the company's balance sheet until the moment in time they
can be **recognized**, at once or over a defined period, on the Profit and Loss statement.
These future revenues must be deferred on the company's balance sheet among the current liabilities
until they can be **recognized**, at once or over a defined period, on the profit and loss
statement.
For example, let's say we sell a five-year extended warranty for $ 350. We already receive the money
now but haven't earned it yet. Therefore, we post this new income in a deferred revenue account and
decide to recognize it on a yearly basis. Each year, for the next 5 years, $ 70 will be recognized
as revenue.
For example, let's say a business sells a software license of $1200 for 1 year. They immediately
invoice it to the customer but can't consider it earned yet, as the future months of licensing have
not yet been delivered. Therefore, they post this new revenue in a deferred revenue account and
recognize it on a monthly basis. Each month, for the next 12 months, $100 will be recognized as
revenue.
Odoo Accounting handles deferred revenues by spreading them in multiple entries that are
automatically created in *draft mode* and then posted periodically.
Odoo Accounting handles deferred revenues by spreading them in multiple entries that are posted
periodically.
.. note::
The server checks once a day if an entry must be posted. It might then take up to 24 hours before
you see a change from *draft* to *posted*.
you see a change from :guilabel:`Draft` to :guilabel:`Posted`.
Prerequisites
Configuration
=============
Such transactions must be posted on a **Deferred Revenue Account** rather than on the default income
account.
Make sure the default settings are correctly configured for your business. To do so, go to
:menuselection:`Accounting --> Configuration --> Settings`. The following options are available:
Configure a Deferred Revenue Account
------------------------------------
Journal
The deferral entries are posted in this journal.
Deferred Expense Account
Expenses are deferred on this Current Asset account until they are recognized.
Deferred Revenue Account
Revenues are deferred on this Current Liability account until they are recognized.
Generate Entries
By default, Odoo :ref:`automatically generates <customer_invoices/deferred/generate_on_validation>`
the deferral entries when you post a customer invoice. However, you can also choose to
:ref:`generate them manually <customer_invoices/deferred/generate_manually>` by selecting the
:guilabel:`Manually & Grouped` option instead.
Amount Computation
Suppose an invoice of $1200 must be deferred over 12 months. The :guilabel:`Equal per month`
computation accounts for $100 each month, while the :guilabel:`Based on days` computation
accounts for different amounts depending on the number of days in each month.
To configure your account in the **Chart of Accounts**, go to :menuselection:`Accounting -->
Configuration --> Chart of Accounts`, click on *Create*, and fill out the form.
.. _customer_invoices/deferred/generate_on_validation:
.. image:: deferred_revenues/deferred_revenues01.png
:align: center
:alt: Configuration of a Deferred Revenue Account in Odoo Accounting
Generate deferral entries on validation
=======================================
.. tip::
Make sure the :guilabel:`Start Date` and :guilabel:`End Date` fields are visible in the
:guilabel:`Invoice Lines` tab. In most cases, the :guilabel:`Start Date` should be in the same
month as the :guilabel:`Invoice Date`.
For each line of the invoice that should be deferred, specify the start and end dates of the
deferral period.
If the :guilabel:`Generate Entries` field in the **Settings** is set to :guilabel:`On invoice/bill
validation`, Odoo automatically generates the deferral entries when the invoice is validated. Click
the :guilabel:`Deferred Entries` smart button to see them.
One entry, dated on the same day as the invoice, moves the invoice amounts from the income account
to the deferred account. The other entries are deferral entries which, month after month, move
the invoice amounts from the deferred account to the income account to recognize the revenue.
.. example::
You can defer a January invoice of $1200 over 12 months by specifying a start date of 01/01/2023
and an end date of 12/31/2023. At the end of August, $800 is recognized as an income,
whereas $400 remains on the deferred account.
Reporting
=========
The deferred revenue report computes an overview of the necessary deferral entries for each account.
To access it, go to :menuselection:`Accounting --> Reporting --> Deferred Revenue`.
To view the journal items of each account, click on the account name and then :guilabel:`Journal
Items`.
.. image:: deferred_revenues/deferred_revenue_report.png
:alt: Deferred revenue report
.. note::
This account's type must be either *Current Liabilities* or *Non-current Liabilities*
Only invoices whose accounting date is before the end of the period of the report
are taken into account.
Post an income to the right account
-----------------------------------
.. _customer_invoices/deferred/generate_manually:
Select the account on a draft invoice
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Generate grouped deferral entries manually
==========================================
On a draft invoice, select the right account for all the products of which the incomes must be
deferred.
If you have a lot of deferred revenues and wish to reduce the number of journal entries created, you
can generate deferral entries manually. To do so, set the :guilabel:`Generate Entries` field in the
**Settings** to :guilabel:`Manually & Grouped`. Odoo then aggregates the deferred amounts in a
single entry.
.. image:: deferred_revenues/deferred_revenues02.png
:align: center
:alt: Selection of a Deferred Revenue Account on a draft invoice in Odoo Accounting
At the end of each month, go to :menuselection:`Accounting --> Reporting --> Deferred Revenue` and
click the :guilabel:`Generate Entries` button. This generates two deferral entries:
Choose a different Income Account for specific products
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- One dated at the end of the month which aggregates, for each account, all the deferred amounts
of that month. This means that a part of the deferred revenue is recognized at the end of that
period.
- The reversal of this created entry, dated on the following day (i.e., the first day of the
next month) to cancel the previous entry.
Start editing the product, go to the *Accounting* tab, select the right **Income Account**, and
save.
.. example::
There are two invoices:
.. image:: deferred_revenues/deferred_revenues03.png
:align: center
:alt: Change of the Income Account for a product in Odoo
- Invoice A: $1200 to be deferred from 01/01/2023 to 12/31/2023
- Invoice B: $600 to be deferred from 01/01/2023 to 12/31/2023
.. tip::
It is possible to automate the creation of revenue entries for these products (see:
`Automate the Deferred Revenues`_).
In January
At the end of January, after clicking the :guilabel:`Generate Entries` button, there are the
following entries:
Change the account of a posted journal item
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- Entry 1 dated on the 31st January:
To do so, open your Sales Journal by going to
:menuselection:`Accounting --> Accounting --> Sales`, select the journal item you
want to modify, click on the account, and select the right one.
- Line 1: Expense account -1200 -600 = **-1800** (cancelling the total of both invoices)
- Line 2: Expense account 100 + 50 = **150** (recognizing 1/12 of invoice A and invoice B)
- Line 3: Deferred account 1800 - 150 = **1650** (amount that has yet to be deferred later
on)
.. image:: deferred_revenues/deferred_revenues04.png
:align: center
:alt: Modification of a posted journal item's account in Odoo Accounting
- Entry 2 dated on the 1st February, the reversal of the previous entry:
Deferred Revenues entries
=========================
- Line 1: Expense account **1800**
- Line 2: Deferred account **-150**
- Line 3: Expense account **-1650**
Create a new entry
------------------
In February
At the end of February, after clicking the :guilabel:`Generate Entries` button, there are the
following entries:
A **Deferred Revenues entry** automatically generates all journal entries in *draft mode*. They are
then posted one by one at the right time until the full amount of the income is recognized.
- Entry 1 dated on the 28th February:
To create a new entry, go to :menuselection:`Accounting --> Accounting --> Deferred Revenues`, click
on *Create*, and fill out the form.
- Line 1: Expense account -1200 -600 = **-1800** (cancelling the total of both invoices)
- Line 2: Expense account 200 + 100 = **300** (recognizing 2/12 of invoice A and invoice B)
- Line 3: Deferred account 1800 - 300 = **1500** (amount that has yet to be deferred later
on)
Click on **select related purchases** to link an existing journal item to this new entry. Some
fields are then automatically filled out, and the journal item is now listed under the **Related
Sales** tab.
- Entry 2 dated on the 1st March, the reversal of the previous entry.
.. image:: deferred_revenues/deferred_revenues05.png
:align: center
:alt: Deferred Revenue entry in Odoo Accounting
From March to October
The same computation is done for each month until October.
Once done, you can click on *Compute Revenue* (next to the *Confirm* button) to generate all the
values of the **Revenue Board**. This board shows you all the entries that Odoo will post to
recognize your revenue, and at which date.
In November
At the end of November, after clicking the :guilabel:`Generate Entries` button, there are the
following entries:
.. image:: deferred_revenues/deferred_revenues06.png
:align: center
:alt: Revenue Board in Odoo Accounting
- Entry 1 dated on the 30th November:
What does "Prorata Temporis" mean?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- Line 1: Expense account -1200 -600 = **-1800** (cancelling the total of both invoices)
- Line 2: Expense account 1100 + 550 = **1650** (recognizing 11/12 of invoice A and invoice
B)
- Line 3: Deferred account 1800 - 1650 = **150** (amount that has yet to be deferred later
on)
The **Prorata Temporis** feature is useful to recognize your revenue the most accurately possible.
- Entry 2 dated on the 1st December, the reversal of the previous entry.
With this feature, the first entry on the Revenue Board is computed based on the time left between
the *Prorata Date* and the *First Recognition Date* rather than the default amount of time between
recognitions.
In December
There is no need to generate entries in December. Indeed, if we do the computation for
December, we have an amount of 0 to be deferred.
For example, the Revenue Board above has its first revenue with an amount of $ 4.22 rather than
$ 70.00. Consequently, the last entry is also lower and has an amount of $ 65.78.
In total
If we aggregate everything, we would have:
Deferred Entry from the Sales Journal
-------------------------------------
- invoice A and invoice B
- two entries (one for the deferral and one for the reversal) for each month from January to
November
You can create a deferred entry from a specific journal item in your **Sales Journal**.
To do so, open your Sales Journal by going to
:menuselection:`Accounting --> Accounting --> Sales`, and select the journal item you want to defer.
Make sure that it is posted in the right account (see:
`Change the account of a posted journal item`_).
Then, click on *Action*, select **Create Deferred Entry**, and fill out the form the same way you
would do to `create a new entry`_.
.. image:: deferred_revenues/deferred_revenues07.png
:align: center
:alt: Create Deferred Entry from a journal item in Odoo Accounting
Deferred Revenue Models
=======================
You can create **Deferred Revenue Models** to create your Deferred Revenue entries faster.
To create a model, go to :menuselection:`Accounting --> Configuration --> Deferred Revenue Models`,
click on *Create*, and fill out the form the same way you would do to create a new entry.
.. tip::
You can also convert a *confirmed Deferred Revenue entry* into a model by
opening it from :menuselection:`Accounting --> Accounting --> Deferred
Revenues` and then, by clicking on the button *Save Model*.
Apply a Deferred Revenue Model to a new entry
---------------------------------------------
When you create a new Deferred Revenue entry, fill out the **Deferred Revenue Account** with the
right recognition account.
New buttons with all the models linked to that account appear at the top of the form. Clicking on a
model button fills out the form according to that model.
.. image:: deferred_revenues/deferred_revenues08.png
:align: center
:alt: Deferred Revenue model button in Odoo Accounting
.. _deferred-revenues-automation:
Automate the Deferred Revenues
==============================
When you create or edit an account of which the type is either *Current Liabilities* or *Non-current
Liabilities*, you can configure it to defer the revenues that are credited on it automatically.
You have three choices for the **Automate Deferred Revenue** field:
#. **No:** this is the default value. Nothing happens.
#. **Create in draft:** whenever a transaction is posted on the account, a draft *Deferred Revenues
entry* is created, but not validated. You must first fill out the form in
:menuselection:`Accounting --> Accounting --> Deferred Revenues`.
#. **Create and validate:** you must also select a Deferred Revenue Model (see:
`Deferred Revenue Models`_). Whenever a transaction is posted on the account, a *Deferred
Revenues entry* is created and immediately validated.
.. image:: deferred_revenues/deferred_revenues09.png
:align: center
:alt: Automate Deferred Revenue on an account in Odoo Accounting
.. tip::
You can, for example, select this account as the default **Income Account** of a product to fully
automate its sale. (see: `Choose a different Income Account for specific products`_).
.. seealso::
* :doc:`../get_started/chart_of_accounts`
* `Odoo Academy: Deferred Revenues (Recognition) <https://www.odoo.com/r/EWO>`_
Therefore, at the end of December, invoices A and B are fully recognized as income
only once in spite of all the created entries thanks to the reversal mechanism.
Binary file not shown.

After

Width:  |  Height:  |  Size: 6.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 27 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.4 KiB

@@ -72,33 +72,6 @@ You can define a specific e-invoicing format for each customer. To do so, go to
.. image:: electronic_invoicing/customer-form.png
:alt: Select an EDI format for a specific customer
Peppol formats
--------------
Use the fields :guilabel:`Peppol e-address (EAS)` and :guilabel:`Peppol Endpoint` to identify the
recipient in the Peppol Network.
.. seealso::
`Peppol BIS Billing 3.0 - Electronic Address Scheme (EAS) code list
<https://docs.peppol.eu/poacc/billing/3.0/codelist/eas/>`_
.. example::
.. list-table::
:header-rows: 1
* - Partner's country
- Peppol e-address (EAS)
- Peppol Endpoint
* - Luxembourg
- 9938 - Luxemburg VAT number
- a valid Luxemburgish VAT number
* - Netherlands
- 0190 - Dutch Originator's Identification Number
- a valid OIN number
* - Belgium
- 9925 - Belgium VAT number
- a valid Belgian VAT number
National electronic invoicing
-----------------------------
@@ -121,3 +94,184 @@ e-invoicing option to generate and attach the e-invoice file.
.. image:: electronic_invoicing/send-window.png
:alt: The Peppol option is checked and an e-invoicing XML file is attached to the email.
Peppol
======
The `Peppol <https://peppol.org/about/>`_ network ensures the exchange of documents and information
between enterprises and governmental authorities. It is primarily used for electronic invoicing, and
its access points (connectors to the Peppol network) allow enterprises to exchange electronic
documents.
Odoo is an **access point** and an :abbr:`SMP (Service Metadata Publisher)`, enabling electronic
invoicing transactions without the need to send invoices and bills by email or post.
If not done yet, :ref:`install <general/install>` the :guilabel:`Peppol` module (`account_peppol`).
.. important::
- Peppol registration is **free** and available in Odoo Community
- You can send **Customer Invoices** and **Credit Notes** and receive **Vendor Bills** and
**Refunds** via Peppol.
- You can send in one of the following supported document formats: **BIS Billing 3.0, XRechnung
CIUS, NLCIUS**.
- | The following **countries** are eligible for **Peppol registration in Odoo**:
| Andorra, Albania, Austria, Bosnia and Herzegovina, Belgium, Bulgaria, Switzerland, Cyprus,
Czech Republic, Germany, Denmark, Estonia, Spain, Finland, France, United Kingdom, Greece,
Croatia, Hungary, Ireland, Iceland, Italy, Liechtenstein, Lithuania, Luxembourg, Latvia,
Monaco, Montenegro, North Macedonia, Malta, Netherlands, Norway, Poland, Portugal, Romania,
Serbia, Sweden, Slovenia, Slovakia, San Marino, Turkey, Holy See (Vatican City State)
Registration
------------
Go to :menuselection:`Accounting --> Configuration --> Settings`. If you do not have the
Peppol module installed, first tick the :guilabel:`Enable PEPPOL` checkbox and then **manually
save**.
.. image:: electronic_invoicing/peppol-install.png
:alt: Peppol module installation
Fill in the following information:
- :guilabel:`Peppol EAS`. This is the Peppol Electronic Address Scheme and usually depends on your
company's country. Odoo often prefills this with the most commonly used EAS code in your country.
For example, the preferred EAS code for most companies in Belgium is 0208.
- :guilabel:`Peppol Endpoint`. This is usually a Company Registry number or a VAT number.
- :guilabel:`Phone Number`, including the country code (e.g., `+32` in Belgium)
- :guilabel:`Primary contact email`
.. seealso::
- `Peppol EAS - European Commision <https://ec.europa.eu/digital-building-blocks/wikis/display/DIGITAL/Code+lists/>`_
- `Peppol Endpoint - OpenPeppol eDEC Code Lists <https://docs.peppol.eu/edelivery/codelists/>`_
(open the "Participant Identifier Schemes" as HTML page)
If you are migrating from another access point, insert the :guilabel:`Migration key` from the
previous provider.
.. image:: electronic_invoicing/peppol-settings.png
:alt: Configuration for peppol
Finally, click :guilabel:`Validate registration`. If you want to explore or demo Peppol, you can
choose to register in :guilabel:`Demo` mode. Otherwise, select :guilabel:`Live`.
.. image:: electronic_invoicing/peppol-demo-mode.png
:alt: Peppol demo mode selection
.. note::
When testing Peppol, the system parameter `account_peppol.edi.mode` can be changed to `test`.
Then, a radio button appears with the option to register on the test server.
.. image:: electronic_invoicing/peppol-system-parameter.png
:alt: Peppol test mode parameter
.. image:: electronic_invoicing/peppol-test-mode-settings.png
:alt: Peppol test mode selection
Now, you can request a verification code to be sent to you by clicking :guilabel:`Verify phone
number`.
.. image:: electronic_invoicing/peppol-registration-verify.png
:alt: phone validation request verification
A text message containing a code is sent to the phone number provided to finalize the verification
process.
.. image:: electronic_invoicing/phone-registration.png
:alt: phone validation
Once you enter the code and click :guilabel:`Confirm`, you can see that your registration is pending
activation. From this point onwards, the default journal for receiving Vendor Bills can be set.
.. image:: electronic_invoicing/peppol-registration-pending.png
:alt: pending application
It should be automatically activated within a day.
.. tip::
It is also possible to manually trigger the cron that checks the registration status by going to
:menuselection:`Settings --> Technical --> Scheduled Actions --> PEPPOL\: update participant
status`.
Your application status should be updated soon after you are registered on the Peppol network.
.. image:: electronic_invoicing/peppol-registration-active.png
:alt: active application
All invoices and vendor bills can now be sent directly using the Peppol network.
Contact verification
--------------------
Before sending an invoice to a contact using the Peppol network, it is necessary to verify that they
are also registered as a Peppol participant.
To do so, go to :menuselection:`Accounting --> Customers --> Customers` and open the customer's
form. Then go to :menuselection:`Accounting tab --> Electronic Invoicing`, select the correct
format, and make sure their :guilabel:`Peppol EAS code` and the :guilabel:`Endpoint` are filled in.
Then, click :guilabel:`Verify`. If the contact exists on the network, their Peppol endpoint validity
is set to Valid.
.. image:: electronic_invoicing/peppol-contact-verify.png
:alt: verify contact registration
.. important::
While Odoo prefills both the EAS code and the Endpoint number based on the information available
for a contact, it is better to confirm these details directly with the contact.
It is possible to verify the Peppol participant status of several customers at once.
To do so, go to :menuselection:`Accounting --> Customers --> Customers` and switch to the list view.
Select the customers you want to verify and then click :menuselection:`Actions --> Verify Peppol`.
Send invoices
-------------
Once ready to send an invoice via the Peppol network, simply click :guilabel:`Send & Print` on the
invoice form. To queue multiple invoices, select them in the list view and click
:menuselection:`Actions --> Send & Print`; they will be sent in a batch later on. Both
:guilabel:`BIS Billing 3.0` and :guilabel:`Send via PEPPOL` checkboxes need to be ticked.
.. image:: electronic_invoicing/peppol-send-print.png
:alt: Send peppol invoice
Posted invoices that can be sent via Peppol are marked as :guilabel:`Peppol Ready`.
To display them, use the :guilabel:`Peppol Ready` filter or access the Accounting dashboard and
click :guilabel:`Peppol ready invoices` on the corresponding sales journal.
.. image:: electronic_invoicing/peppol-ready-invoices.png
:alt: Filter Peppol ready invoices
Once the invoices are sent via Peppol, the status is changed to :guilabel:`Processing`. The
status is changed to `Done` after they have been successfully delivered to the contact's Access
Point.
.. image:: electronic_invoicing/peppol-message-processing.png
:alt: Peppol message status
.. tip::
By default, the Peppol status column is hidden on the Invoices list view. You can choose to have
it displayed by selecting it from the optional columns, accessible from the top right corner of
the Invoices list view.
A cron runs regularly to check the status of these invoices. It is possible to check the status
before the cron runs by clicking :guilabel:`Fetch Peppol invoice status` in the corresponding
sales journal on the Accounting dashboard.
.. image:: electronic_invoicing/peppol-fetch-message-status.png
:alt: Fetch invoice Peppol status
Receive vendor bills
--------------------
Once a day, a cron checks whether any new documents have been sent to you via the Peppol network.
These documents are imported, and the corresponding vendor bills are created automatically as
drafts.
.. image:: electronic_invoicing/peppol-receive-bills.png
:alt: peppol receive bills
If you want to retrieve incoming Peppol documents before the cron runs, you can do so from the
Accounting dashboard on the main Peppol purchase journal that you set up in the settings. Just click
:guilabel:`Fetch from Peppol`.
.. image:: electronic_invoicing/peppol-fetch-bills.png
:alt: Fetch bills from Peppol
Binary file not shown.

Before

Width:  |  Height:  |  Size: 11 KiB

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.6 KiB

Some files were not shown because too many files have changed in this diff Show More