Compare commits

..

388 Commits

Author SHA1 Message Date
Jonathan bdaf736eef [IMP] on_premise: update version number in source install 2024-04-03 10:35:33 +02:00
jero-odoo 83d105c067 [ADD] CRM: Merge Leads and Opps
closes odoo/documentation#8428

Signed-off-by: Jessica Rogers (jero) <jero@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>
2024-04-02 19:48:42 +00:00
Antoine Vandevenne (anv) 79289bf99b [IMP] supported_versions: release saas-17.2
closes odoo/documentation#8497

X-original-commit: a906478bc7
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2024-04-02 18:18:00 +00:00
John Holton (hojo) ee2cfe2bb5 [ADD] Manufacturing: Shop Floor time tracking
closes odoo/documentation#8432

Signed-off-by: Samuel Lieber (sali) <sali@odoo.com>
2024-04-02 18:17:56 +00:00
XPL 490eb9a865 [ADD] database management: odoo mobile apps
task-3821019

closes odoo/documentation#8489

X-original-commit: 9fd199ff27
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
2024-04-02 15:40:30 +00:00
KC (ksc) f019e3b18f [IMP] email marketing: update essentials doc
closes odoo/documentation#7521

Signed-off-by: Samuel Lieber (sali) <sali@odoo.com>
2024-04-01 18:48:54 +00:00
Sam Lieber (sali) 31bfb0c693 [IMP] marketing automation: audience targeting
closes odoo/documentation#8018

Signed-off-by: Samuel Lieber (sali) <sali@odoo.com>
Co-authored-by: ksc-odoo <73958186+ksc-odoo@users.noreply.github.com>
2024-04-01 17:16:47 +00:00
Odoo Translation Bot 069fa84987 [I18N] Update translation terms from Transifex 2024-03-31 00:41:59 +01:00
jero-odoo a4cdf38bd6 [ADD] Live Chat: Reports
closes odoo/documentation#8310

Signed-off-by: Samuel Lieber (sali) <sali@odoo.com>
Co-authored-by: larm-odoo <121518652+larm-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>
2024-03-29 21:34:55 +00:00
KC (ksc) cc8c576936 [FIX] subscriptions: updated and corrected mistake regarding eLearning connection
closes odoo/documentation#8293

Signed-off-by: Samuel Lieber (sali) <sali@odoo.com>
2024-03-29 21:34:55 +00:00
MaxKeilOdoo 9ff60ea1d7 [ADD] email marketing: lost leads email doc
closes odoo/documentation#7623

Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
Co-authored-by: StraubCreative <zst@odoo.com>
Co-authored-by: tiku-odoo <tiku@odoo.com>
Co-authored-by: ksc-odoo <ksc@odoo.com>
Co-authored-by: samueljlieber <sali@odoo.com>
2024-03-29 21:34:54 +00:00
jero-odoo c54584a3f0 [IMP] Livechat: chatbots 17.0
closes odoo/documentation#8306

Signed-off-by: Samuel Lieber (sali) <sali@odoo.com>
Co-authored-by: larm-odoo <121518652+larm-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-03-29 20:00:54 +00:00
John Holton (hojo) ee735a813f [MOV] Manufacturing: Restructure scope
closes odoo/documentation#8382

Signed-off-by: Samuel Lieber (sali) <sali@odoo.com>
2024-03-29 18:09:39 +00:00
Felicious 6bd2a67549 [IMP] inventory: invoice shipping
closes odoo/documentation#8376

X-original-commit: 2733aac1fc
Signed-off-by: Samuel Lieber (sali) <sali@odoo.com>
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
Co-authored-by: Zachary Straub <zst@odoo.com>
2024-03-29 16:19:50 +00:00
Sam Lieber (sali) 878da9318e [IMP] l10n_ec/accounting: ats report
closes odoo/documentation#8370

X-original-commit: 6ebc4d7b19
Signed-off-by: Roberto Palacios (rps) <rps@odoo.com>
Signed-off-by: Samuel Lieber (sali) <sali@odoo.com>
2024-03-29 14:27:28 +00:00
rps-odoo 094924d5ff [IMP] accounting/l10n_ar: liquidity product direct sales
Link to GDrive images folder: https://drive.google.com/drive/folders/1qWtbGewR3LxDKs21QpMEPhCKEovVyoKx?usp=drive_link

closes odoo/documentation#8009

Signed-off-by: Samuel Lieber (sali) <sali@odoo.com>
Co-authored-by: XPL <xpl@odoo.com>
2024-03-29 14:27:26 +00:00
XPL 7e30d6f7da [IMP] website: domain names CNAME records
Clarify that it is required to create a redirection from the naked domain to the
www. subdomain

closes odoo/documentation#8441

X-original-commit: 363d0a582f
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
2024-03-29 12:38:12 +00:00
Melanie Nguyen (meng) e3eae6ac88 [IMP] crm: update webpage visits
closes odoo/documentation#7578

Signed-off-by: Samuel Lieber (sali) <sali@odoo.com>
2024-03-28 23:14:54 +00:00
tiku-odoo 192281038d [IMP] general: iot windows iot update process
closes odoo/documentation#8424

X-original-commit: e30c87800d
Signed-off-by: Samuel Lieber (sali) <sali@odoo.com>
Signed-off-by: Timothy Kukulka (tiku) <tiku@odoo.com>
2024-03-28 21:37:36 +00:00
“ralo-odoo” 56cf586061 [IMP] localizations: Philippines (SLSP and 2550Q)
Added additonal sections for SLSP and 2550Q tax report as these were updated for 17.0

closes odoo/documentation#8145

Signed-off-by: Jonathan Castillo (jcs) <jcs@odoo.com>
2024-03-28 18:06:43 +00:00
Lara Martini (larm) b5bfc45f09 [IMP] recruitment: job positions new images and options
closes odoo/documentation#7949

Signed-off-by: Samuel Lieber (sali) <sali@odoo.com>
2024-03-28 16:04:44 +00:00
Lara Martini (larm) f16d89dbc7 [IMP] time off: updating images and directions
closes odoo/documentation#8021

Signed-off-by: Samuel Lieber (sali) <sali@odoo.com>
2024-03-28 14:16:44 +00:00
Yaroslav Soroko (yaso) 656064ea1c [ADD] Pricer tags section added to PoS/pricing
task-3603496

This PR adds the documentation needed to use Point Of Sale
with Pricer electronic price tags.

Related PRs:
https://github.com/odoo/enterprise/pull/50368

task-3603496

closes odoo/documentation#6539

Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
2024-03-28 12:19:04 +00:00
jero-odoo 36ca933672 [IMP] Livechat: basics 17.0
closes odoo/documentation#8275

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: ksc-odoo <73958186+ksc-odoo@users.noreply.github.com>
Co-authored-by: Sam Lieber (sali) <36018073+samueljlieber@users.noreply.github.com>
2024-03-27 20:47:39 +00:00
tiku-odoo 92b3166167 [IMP] general: users access rights rewrite
closes odoo/documentation#8399

X-original-commit: ae061c9041
Signed-off-by: Samuel Lieber (sali) <sali@odoo.com>
Signed-off-by: Timothy Kukulka (tiku) <tiku@odoo.com>
2024-03-27 17:45:02 +00:00
tiku-odoo 880f1cc01d [ADD] general: integrations google translate
closes odoo/documentation#8202

Signed-off-by: Samuel Lieber (sali) <sali@odoo.com>
2024-03-27 17:44:56 +00:00
Syed Sarmad Sabih 0fbf9995f0 Update deploy.rst
Fix typo db_filter to the correct usage dbfilter

closes odoo/documentation#8389

Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
2024-03-27 14:09:51 +00:00
tiku-odoo 97f5c6f02a [IMP] essenials: import export version 17 updates
closes odoo/documentation#8364

Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2024-03-27 01:31:43 +00:00
John Holton (hojo) 51a70769ca [ADD] MRP: Unbuild orders
closes odoo/documentation#8264

Signed-off-by: Samuel Lieber (sali) <sali@odoo.com>
2024-03-26 20:53:46 +00:00
masi-odoo ffcdc7f3ea [IMP] accounting/l10n_cl: electronic purchase invoice
Google Drive image folder: https://drive.google.com/drive/folders/12OaeDvzn-u5Nf_AjhIzrWaZWEb7smlTL?usp=drive_link

closes odoo/documentation#8265

X-original-commit: 39910d1e7b
Signed-off-by: Marco Antonio Iribe Sepulveda (masi) <masi@odoo.com>
Signed-off-by: Samuel Lieber (sali) <sali@odoo.com>
2024-03-26 13:35:53 +00:00
Tiffany Chang (tic) b65460db47 [I18N] *: export latest terms + add missing resources
This commit does 2 things:

- exports the latest terms to be translated
- adds missing pot files + adds them to be translated on transifex
  (essentials, hr, and studio)

Notes:
- hr (source) was already in v16, but was missing from v15 and v17,
  hence the commits being slightly different
- latest pot files of `contributing`, `developer`, and `legal` were
  purposely left off this PR because they are either not translated
  or not translated via Transifex, so these pot files serve no purpose

closes odoo/documentation#8363

X-original-commit: 977a649fae
Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
Signed-off-by: Tiffany Chang (tic) <tic@odoo.com>
2024-03-25 17:50:08 +00:00
Felicious fdda9ff30a [IMP] inventory: remove rescheduling
closes odoo/documentation#8287

X-original-commit: 8ad53481d1
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
Co-authored-by: brse-odoo <brse@odoo.com>
2024-03-25 17:50:03 +00:00
Odoo Translation Bot 90606a0d56 [I18N] Update translation terms from Transifex 2024-03-24 00:41:05 +01:00
Jess Rogers (jero) c63dda1e5f [ADD] crm: quality leads report doc
closes odoo/documentation#7966

Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
Co-authored-by: ksc-odoo <73958186+ksc-odoo@users.noreply.github.com>
Co-authored-by: Zachary Straub <zst@odoo.com>
Co-authored-by: Zachary Straub <zst@odoo.com>
Co-authored-by: Antoine Vandevenne (anv) <anv@odoo.com>
2024-03-22 21:45:16 +00:00
Lara Martini (larm) e4057858a1 [IMP] payroll: updating new reporting for 17
closes odoo/documentation#7806

Signed-off-by: Samuel Lieber (sali) <sali@odoo.com>
2024-03-22 21:45:15 +00:00
João Alves 2c613fdfc4 Update location of Outlook Calendar setting
closes odoo/documentation#8254

Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2024-03-22 20:01:23 +00:00
tiku-odoo 2e99e9b57e [IMP] essentials: import export rewrite
closes odoo/documentation#8314

X-original-commit: c635baa0a2
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
Signed-off-by: Timothy Kukulka (tiku) <tiku@odoo.com>
2024-03-22 14:48:01 +00:00
Rémy Voet (ryv) 7353d7b2cc [IMP] orm: add 'any' and 'not any' operators
- Add descriptions of the 'any' and 'not any' operators
- Simplify the example for searching partners
- Add an example using the 'any' operator for the sale.order model

closes odoo/documentation#8195

Closes: #7620
Signed-off-by: Rémy Voet (ryv) <ryv@odoo.com>
2024-03-22 11:20:06 +00:00
Jess Rogers (jero) 4a28f69400 [ADD] crm: expected revenue report doc
closes odoo/documentation#7980

Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
Co-authored-by: ksc-odoo <73958186+ksc-odoo@users.noreply.github.com>
Co-authored-by: Zachary Straub <zst@odoo.com>
2024-03-22 04:33:40 +00:00
tiku-odoo c2a84d65f7 [IMP] iot: flash card update section
closes odoo/documentation#8301

X-original-commit: 1f89b5f4b2
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
Signed-off-by: Timothy Kukulka (tiku) <tiku@odoo.com>
2024-03-22 03:11:44 +00:00
Mohamed Alkobrosli dfb88db7b6 [FW][FIX] dev/assets: typo
the "py" letter should be "by" to make the syntax correct and understood.

closes odoo/documentation#8296

Forward-port-of: odoo/documentation#8276
Signed-off-by: Victor Feyens (vfe) <vfe@odoo.com>
2024-03-22 01:30:24 +00:00
Brandon Seltenrich (BRSE) 3d82c7671c [ADD] inventory: add before date res doc
closes odoo/documentation#7925

Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2024-03-22 01:30:23 +00:00
Brandon Seltenrich (BRSE) 9a5074848c [IMP] purchase: update blanket orders doc
closes odoo/documentation#8201

Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2024-03-22 01:30:22 +00:00
John Holton (hojo) e0e97ea763 [ADD] Maintenance: Maintenance requests
closes odoo/documentation#8139

Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2024-03-22 01:30:21 +00:00
KC (ksc) 3e4463c978 [IMP] email marketing: updated unsubscription/blacklist doc for 17
closes odoo/documentation#7809

Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2024-03-22 01:30:20 +00:00
Lara Martini (larm) 735097850c [IMP] payroll: updating payslips info and pics for 17
closes odoo/documentation#7740

Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2024-03-22 01:30:19 +00:00
KC (ksc) d8494b2c4b [ADD] subscriptions: add scheduled actions doc
closes odoo/documentation#7663

Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2024-03-22 01:30:19 +00:00
tiku-odoo f4bcdc815e [IMP] email comms: feedback loop edit
closes odoo/documentation#8280

X-original-commit: 2fad56f841
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
Signed-off-by: Timothy Kukulka (tiku) <tiku@odoo.com>
2024-03-21 23:03:01 +00:00
Martin Trigaux (mat) e655f90e62 [I18N] conf: add more language codes
closes odoo/documentation#8244

X-original-commit: 88fa5d6e0a
Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
2024-03-21 23:02:56 +00:00
Paolo Gatti (pgi) d7595e5eb8 [IMP] finance/fiscal_localizations: Internal Reverse Charge
Many updates are due because of all the changes that have happened in
the last version. Internal Reverse Charge section has been added. The
configuration section has been reordered and information no longer valid
(like invoices being automatically sent) are removed. The flow is
described in a little more detail.

closes odoo/documentation#8054

Signed-off-by: Paolo Gatti (pgi) <pgi@odoo.com>
2024-03-21 23:02:53 +00:00
Tom Aarab (toaa) 0b6bef6516 [IMP] accounting: add extra taxes
Extra taxes (ecotax, luxury, etc) are currently missing from doc

taskid-3794931

closes odoo/documentation#8076

Signed-off-by: Jonathan Castillo (jcs) <jcs@odoo.com>
2024-03-21 21:30:40 +00:00
Jonathan Castillo (jcs) 3a18276d4a [FIX] website: anchors in analytics hyperlinks
Custom anchors can be used as hyperlinks to target a specific
heading on the page. However, the google analytics one didn't
work well because of the capital letters used.

closes odoo/documentation#8224

Signed-off-by: Jonathan Castillo (jcs) <jcs@odoo.com>
2024-03-21 18:35:49 +00:00
tiku-odoo bb9cb27935 [IMP] hosting: add admonition block on subscription
closes odoo/documentation#8252

X-original-commit: 9df807a532
Signed-off-by: Timothy Kukulka (tiku) <tiku@odoo.com>
2024-03-20 19:56:46 +00:00
tiku-odoo 148eaedfa9 [IMP] developer: external api add admonition block
closes odoo/documentation#8232

X-original-commit: d6f5e74971
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
Signed-off-by: Timothy Kukulka (tiku) <tiku@odoo.com>
2024-03-20 18:29:27 +00:00
tiku-odoo a9d4fbbd5a [REM] voip: onsip scrub per onsip
closes odoo/documentation#8231

X-original-commit: 7b728a22f4
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
Signed-off-by: Timothy Kukulka (tiku) <tiku@odoo.com>
2024-03-20 18:29:26 +00:00
Xavier (XPL) 7cacdf626b [FIX] website: domain names
closes odoo/documentation#8223

X-original-commit: b7ffab804b
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
2024-03-20 17:11:45 +00:00
Ray Carnes b07ea8d014 [IMP] upgrade: ready to upgrade image
Screenshot taken from Odoo 16 database with the option to upgrade to Odoo 17

closes odoo/documentation#8212

Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
2024-03-20 17:11:43 +00:00
Donatienne (dopi) 158a1dee79 [ADD] Website: Structure blocks
task-3733822

closes odoo/documentation#7954

Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
2024-03-20 17:11:41 +00:00
Felicious bfcb1fa443 [ADD]inventory: product type
closes odoo/documentation#8091

Signed-off-by: Felicia Kuan (feku) <feku@odoo.com>
Co-authored-by: brse-odoo <brse@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>
2024-03-20 13:52:18 +00:00
Colu 6355b52f87 [IMP] database management: update on-premise page
task-3627193

closes odoo/documentation#8179

X-original-commit: 739309b258
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
2024-03-19 11:14:07 +00:00
Zachary Straub (ZST) d43cc3e466 [FIX] crm: unattended leads example
closes odoo/documentation#8200

Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2024-03-18 19:04:01 +00:00
Felicious 281d3976da [DEL] remove usage; contains packages + packagings
closes odoo/documentation#8169

X-original-commit: 8deb666761
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
Signed-off-by: Felicia Kuan (feku) <feku@odoo.com>
2024-03-18 19:03:59 +00:00
glovebx 02a47a607d [FIX] dev/view_architectures: domain attribute of search view fields
The domain in the `field` component cannot accept user-provided values or access self variables.
This commit removes the misleading sentence about it from the documentation.

closes odoo/documentation#8193

Signed-off-by: Victor Feyens (vfe) <vfe@odoo.com>
2024-03-18 11:47:42 +00:00
Martin Trigaux (mat) 36ab5e74c3 [FIX] conf: don't use None in language switcher
In a lang is not present in languages_names, the menu was displaying None

X-original-commit: 8b40d49

add Swedish

closes odoo/documentation#8159

X-original-commit: 8e647c342a
Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
2024-03-18 08:45:40 +00:00
Odoo Translation Bot 33712a339f [I18N] Update translation terms from Transifex 2024-03-17 00:41:16 +01:00
Brandon Seltenrich (BRSE) 5a8691d249 [ADD] inventory: add manual res doc
closes odoo/documentation#7886

Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2024-03-15 22:10:36 +00:00
Brandon Seltenrich (BRSE) 20865bfaea [IMP} barcode: update default nomenclature doc
closes odoo/documentation#8044

Signed-off-by: Brandon Seltenrich (brse) <brse@odoo.com>
2024-03-15 22:10:35 +00:00
Brandon Seltenrich (BRSE) 4255e514a9 [ADD] inventory: add res at confirmation doc
closes odoo/documentation#7876

Signed-off-by: Brandon Seltenrich (brse) <brse@odoo.com>
2024-03-15 17:29:51 +00:00
Antoine Vandevenne (anv) 632add350d [FIX] tutorials/discover_js_framework: clarify instructions
closes odoo/documentation#8065

Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2024-03-15 17:29:49 +00:00
Ricardo Gomes Rodrigues d36e0b095c [IMP] l10n: update/clarify CodaBox documentation
This commit:
- clarifies that the connection must be done by the Accounting Firm that
  has valid CodaBox Connect credentials
- updates the general configuration part following changes in
  https://github.com/odoo/enterprise/pull/58426
- adds a tip for multi-currencies bank statements

task-id 3795251

closes odoo/documentation#8134

Signed-off-by: Jonathan Castillo (jcs) <jcs@odoo.com>
2024-03-14 11:12:30 +00:00
Stephan Wilson 946a55b029 [IMP] accounting: wrong line break in customer_invoices
Removed line break

closes odoo/documentation#8136

X-original-commit: 00b934c9d3
Signed-off-by: Jonathan Castillo (jcs) <jcs@odoo.com>
2024-03-14 09:27:14 +00:00
Samuel Degueldre e259853486 [IMP] web: create how-to for using Owl components in the frontend
closes odoo/documentation#8129

Signed-off-by: Samuel Degueldre (sad) <sad@odoo.com>
2024-03-14 08:06:23 +00:00
Olivier Dony fd8b628b0e [FIX] legal: update license info for v17
closes odoo/documentation#8144

Signed-off-by: Olivier Dony (odo) <odo@odoo.com>
2024-03-14 01:22:45 +00:00
Lara Martini (larm) bcd3747156 [IMP] fleet: updating new config changes
closes odoo/documentation#8069

Signed-off-by: Lara Martini (larm) <larm@odoo.com>
2024-03-13 21:09:51 +00:00
Lara Martini (larm) 1f1f574615 [IMP] attendances: fixed typo and added details section
closes odoo/documentation#8068

Signed-off-by: Lara Martini (larm) <larm@odoo.com>
2024-03-13 21:09:50 +00:00
vladstroia 89c63cb952 [ADD] point_of_sale: customer display doc page
task-3226201

There was previously no docs for the customer display feature in pos.
In this commit we add a docs page for it

closes odoo/documentation#8122

X-original-commit: 28bfdbc97a
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
Signed-off-by: Loredana Perazzo (lrpz) <lrpz@odoo.com>
2024-03-13 12:28:19 +00:00
Marion (masp) 2da5c1664f [ADD] Website/Configuration: Google Search Console
closes odoo/documentation#8117

Taskid: 3696023
X-original-commit: bf8491feda
Signed-off-by: Audrey Vandromme (auva) <auva@odoo.com>
Signed-off-by: Marion Spindler (masp) <masp@odoo.com>
2024-03-13 09:14:12 +00:00
Jess Rogers (jero) 25f95ce12d [ADD] crm: unattended leads report doc
closes odoo/documentation#7965

Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
Co-authored-by: ksc-odoo <73958186+ksc-odoo@users.noreply.github.com>
Co-authored-by: Zachary Straub <zst@odoo.com>
2024-03-13 02:26:49 +00:00
tiku-odoo 300345957a [IMP] misc: email comms alias admonition block odoo 17
closes odoo/documentation#8097

Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2024-03-12 21:35:07 +00:00
Jonathan Castillo (jcs) ffaa9ec7a8 [FIX] redirections: wrong rule for supported versions
closes odoo/documentation#8112

X-original-commit: 0c392041ab
Signed-off-by: Jonathan Castillo (jcs) <jcs@odoo.com>
2024-03-12 16:59:09 +00:00
KC (ksc) 60d55082ce [IMP] email marketing: updated mailing lists for 17
closes odoo/documentation#7661

Signed-off-by: Kevin Scannell (ksc) <ksc@odoo.com>
2024-03-12 00:17:42 +00:00
Jess Rogers (jero) d8b4b1d60f [IMP] helpdesk: track and bill time
closes odoo/documentation#7986

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>
2024-03-11 20:41:08 +00:00
Jonathan Castillo (jcs) 10cd2a061b [MOV] documentation structure reorganization
This commit aims to improve the documentation's navigability by
redefining some categories' purposes and titles.

There is a redirection rule for each documentation page moved.
This ensures that users won't have a 404 error message.

task-3217827

closes odoo/documentation#8061

Signed-off-by: Jonathan Castillo (jcs) <jcs@odoo.com>
2024-03-11 15:03:04 +00:00
Odoo Translation Bot 41b3bd3bc9 [I18N] Update translation terms from Transifex 2024-03-10 00:41:26 +01:00
tiku-odoo 9be4c889e3 [IMP] misc: email comm add allowed alias sys parameter
closes odoo/documentation#8088

X-original-commit: 256c96b56f
Signed-off-by: Timothy Kukulka (tiku) <tiku@odoo.com>
2024-03-08 22:55:44 +00:00
Brandon Seltenrich (BRSE) dc5136cc45 [ADD] barcode: add troubleshooting doc
closes odoo/documentation#7983

Signed-off-by: Brandon Seltenrich (brse) <brse@odoo.com>
2024-03-08 22:55:42 +00:00
Brandon Seltenrich (BRSE) 2d0505c0bd [ADD] inventory: add reservation methods docs
closes odoo/documentation#7709

Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2024-03-08 22:55:41 +00:00
tiku-odoo 22b294400f [IMP] iot: ts scale exception
closes odoo/documentation#8083

X-original-commit: 8a89c4311c
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
Signed-off-by: Timothy Kukulka (tiku) <tiku@odoo.com>
2024-03-08 21:22:01 +00:00
Martin Trigaux (mat) ef3e57c994 [I18N] *: export 15.0 translations
closes odoo/documentation#8074

X-original-commit: 794eafff52
Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
2024-03-08 14:30:58 +00:00
Felicious 04f9ea14cd [IMP] inventory: putaway rules
closes odoo/documentation#8049

X-original-commit: 43f2ecd375
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
Signed-off-by: Felicia Kuan (feku) <feku@odoo.com>
Co-authored-by: brse-odoo <brse@odoo.com>
2024-03-07 23:41:56 +00:00
Brandon Seltenrich (BRSE) 4742f77ef9 [IMP] barcode: update hardware setup doc
closes odoo/documentation#7947

Signed-off-by: Brandon Seltenrich (brse) <brse@odoo.com>
2024-03-07 22:11:44 +00:00
Felicious df01a6edf4 [ADD] inventory: packaging
closes odoo/documentation#8028

X-original-commit: a8659727e3
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
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>
2024-03-07 02:52:49 +00:00
Julien Castiaux d3f17c6609 [FIX] deploy: enable HSTS also for websocket
Fine tunning of 6a2725e604

closes odoo/documentation#8015

X-original-commit: c00571d724
Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
Signed-off-by: Julien Castiaux (juc) <juc@odoo.com>
2024-03-06 14:30:43 +00:00
Claire Bretton (clbr) a54e626075 [IMP] getting_started: use odoo/tutorials repository + runbot
We now use the odoo/tutorials to make the technical onboarding.
- Change the current documentation accordingly.
- Add a section for employees only so that they use odoo-dev/tutorials
as shared fork. It's closer to our way to work so we think it's better
to make them use to it as fast as possible.
- Add some explanations about runbot.

`odoo/technical-training-sandbox` will no longer be used and can be considered deprecated.

closes odoo/documentation#8041

X-original-commit: e60affa6fe
Signed-off-by: Claire Bretton (clbr) <clbr@odoo.com>
2024-03-06 12:46:16 +00:00
Jess Rogers (jero) 069ee16ee1 [IMP] helpdesk: update closing tickets
closes odoo/documentation#7888

Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
Co-authored-by: larm-odoo <121518652+larm-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-03-06 00:01:15 +00:00
Jess Rogers (jero) df48788817 [IMP] helpdesk: update helpcenter doc
closes odoo/documentation#7710

Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
Co-authored-by: larm-odoo <121518652+larm-odoo@users.noreply.github.com>
Co-authored-by: larm-odoo <121518652+larm-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>
Co-authored-by: Sam Lieber (sali) <36018073+samueljlieber@users.noreply.github.com>
2024-03-06 00:01:14 +00:00
Jess Rogers (jero) dc0dfea959 [IMP] helpdesk: after sales updates
closes odoo/documentation#7796

Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
Co-authored-by: larm-odoo <121518652+larm-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-03-05 22:33:50 +00:00
Felicious 1c2897c54d [IMP] inventory: gme's comments on packages
closes odoo/documentation#8000

X-original-commit: 4f15ba1eea
Signed-off-by: Felicia Kuan (feku) <feku@odoo.com>
Co-authored-by: hojo-odoo <123424465+hojo-odoo@users.noreply.github.com>
Co-authored-by: brse-odoo <brse@odoo.com>
Co-authored-by: ksc-odoo <73958186+ksc-odoo@users.noreply.github.com>
2024-03-05 16:48:21 +00:00
Felicious f87f12c53a [ADD] inventory: package use and type
closes odoo/documentation#7991

X-original-commit: 03a871a88b
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-03-04 22:35:40 +00:00
masi-odoo a7f87a913a [IMP] accounting/l10n_ar: ecommerce electronic invoicing
Improving l10n_ar documentation adding eCommerce feature

closes odoo/documentation#7792

Signed-off-by: Audrey Vandromme (auva) <auva@odoo.com>
Co-authored-by: Jess Rogers <104637850+jero-odoo@users.noreply.github.com>
2024-03-04 15:15:50 +00:00
Demesmaeker 77b0cc21ee [FIX] amazon_connector: change to more complete links
closes odoo/documentation#7941

X-original-commit: eb41f30593
Signed-off-by: Morgane Demesmaeker <edm@odoo.com>
2024-03-04 13:26:29 +00:00
Odoo Translation Bot 41c33f1165 [I18N] Update translation terms from Transifex 2024-03-03 00:40:43 +01:00
Marion (masp) 6d923e4729 [ADD] integration: geolocation
task-3694395

closes odoo/documentation#7976

X-original-commit: 22b75fd6de
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
2024-03-01 19:45:58 +00:00
Ali Alfie (alal) 59dcc0e921 [IMP] fiscal_localizations: HMRC format improved
Before, when entering the company's VAT, the user had to leave out the 'GB' prefix. This is no longer needed after odoo/enterprise/pull/57570

task-3765235

closes odoo/documentation#7961

X-original-commit: 61c86a1a8e
Signed-off-by: Jonathan Castillo (jcs) <jcs@odoo.com>
2024-03-01 13:48:26 +00:00
Felicious 3875f79b5c [IMP] inventory: combine uom and usage into one doc
closes odoo/documentation#7904

X-original-commit: 6f8118fba6
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
Signed-off-by: Felicia Kuan (feku) <feku@odoo.com>
Co-authored-by: brse-odoo <brse@odoo.com>
Co-authored-by: ksc-odoo <73958186+ksc-odoo@users.noreply.github.com>
Co-authored-by: Zachary Straub <zst@odoo.com>
2024-03-01 07:29:37 +00:00
tiku-odoo befe1d0c8d [IMP] misc: voip onsip version 17 changes
closes odoo/documentation#7895

Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2024-02-29 19:00:42 +00:00
Felicious f65dbd4c15 [IMP] inventory: add visibility days section
closes odoo/documentation#7915

X-original-commit: 187d41bc02
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
Signed-off-by: Felicia Kuan (feku) <feku@odoo.com>
Co-authored-by: brse-odoo <brse@odoo.com>
Co-authored-by: ksc-odoo <73958186+ksc-odoo@users.noreply.github.com>
2024-02-28 21:21:03 +00:00
Felicious 40015002bd [IMP] inventory: direct carrier contract
closes odoo/documentation#7911

X-original-commit: 786a9086e9
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
Signed-off-by: Felicia Kuan (feku) <feku@odoo.com>
2024-02-28 21:21:02 +00:00
Marion (masp) 2383ecff09 [ADD] administration: neutralized database
closes odoo/documentation#7922

Task: 3572950
X-original-commit: 65960a2726
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
Signed-off-by: Marion Spindler (masp) <masp@odoo.com>
2024-02-28 19:49:16 +00:00
Sam Lieber (sali) d266d142a8 [IMP] marketing automation: overview content
closes odoo/documentation#7711

Signed-off-by: Samuel Lieber (sali) <sali@odoo.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>
2024-02-28 19:49:04 +00:00
Brandon Seltenrich (BRSE) f8c1f3538d [IMP] barcode: update zebra instructions
closes odoo/documentation#7580

Signed-off-by: Brandon Seltenrich (brse) <brse@odoo.com>
2024-02-28 19:49:02 +00:00
Donatienne (dopi) 757f750358 [ADD] website: building blocks
task-3693628

closes odoo/documentation#7800

Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
2024-02-28 14:00:02 +00:00
Nicolas Viseur (vin) f61b571960 [ADD] Starshipit as a delivery provider
Starshipit is the leading provider of integrated
and automated fulfilment solutions for online businesses
integrating with the main carriers used in Australia and
New Zealand, such as Australia Post, DHL, Aramex, CouriersPlease and more

Task ID # 3041982

closes odoo/documentation#7798

Related: odoo/enterprise#47569
Related: odoo/odoo#135839
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
2024-02-27 17:40:49 +00:00
John Holton (hojo) 6349f5a13e [ADD] Quality: Quality alerts doc
closes odoo/documentation#7821

X-original-commit: 8dd98b1314
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
Signed-off-by: John Holton (hojo) <hojo@odoo.com>
2024-02-27 16:16:04 +00:00
Donatienne (dopi) 76b234ba3a [IMP] maintain: domain names
task-3595179

closes odoo/documentation#7883

X-original-commit: 9d3948daaf
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
2024-02-27 09:35:48 +00:00
Sam Lieber (sali) c1f4f1fb57 [IMP] accounting/l10n_pe: delivery guide 2.0 peru
closes odoo/documentation#7849

X-original-commit: 81de2a5bbe
Signed-off-by: Jonathan Castillo (jcs) <jcs@odoo.com>
2024-02-26 21:22:55 +00:00
Tom Aarab (toaa) b2bad17b19 [IMP] localization/spain
Updated the Spain localization page

taskid-3736761

closes odoo/documentation#7685

Signed-off-by: Audrey Vandromme (auva) <auva@odoo.com>
2024-02-26 21:22:48 +00:00
Lara Martini (larm) 1ad921a1d1 [ADD] appraisals: new documentation
closes odoo/documentation#7487

Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2024-02-26 21:22:47 +00:00
Odoo Translation Bot 8291dc0379 [I18N] Update translation terms from Transifex 2024-02-25 00:40:32 +01:00
tiku-odoo 1534cf4e19 [IMP] sales: mrkt conn ebay exception
closes odoo/documentation#7866

X-original-commit: 97203c4027
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
Signed-off-by: Timothy Kukulka (tiku) <tiku@odoo.com>
2024-02-23 22:41:47 +00:00
Lara Martini (larm) 3dc21be0a7 [IMP] payroll: update work entries, add menu
closes odoo/documentation#7551

Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2024-02-23 22:41:46 +00:00
Lara Martini (larm) 9cbc9e3610 [IMP] Employees: updating new employee doc for version 17
closes odoo/documentation#7429

Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2024-02-23 22:41:45 +00:00
Lara Martini (larm) 269d602af0 [IMP] Payroll: updating ocnfiguration doc for 17
closes odoo/documentation#7337

Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2024-02-23 22:41:44 +00:00
tiku-odoo 0bde5db3bc [IMP] misc: voip onsip edits
closes odoo/documentation#7854

X-original-commit: 0a133687dd
Signed-off-by: Timothy Kukulka (tiku) <tiku@odoo.com>
2024-02-23 18:10:39 +00:00
Ricardo Gomes Rodrigues ac9eb58b7a [IMP] l10n: update CodaBox documentation
This commit renames the "Fetch CODA's"
and "Fetch SODA's" texts in "Fetch from CodaBox"
to match the new text in the Entreprise branch.

closes odoo/documentation#7840

Signed-off-by: Audrey Vandromme (auva) <auva@odoo.com>
2024-02-23 16:43:33 +00:00
tiku-odoo 3229ee3210 [IMP] iot: windows iot worldline exception
closes odoo/documentation#7837

X-original-commit: 4dc8875b42
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
Signed-off-by: Timothy Kukulka (tiku) <tiku@odoo.com>
2024-02-23 16:43:31 +00:00
tiku-odoo 21362bea09 [IMP] iot: troubleshooting add barcode exception
closes odoo/documentation#7830

X-original-commit: 056242b831
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
Signed-off-by: Timothy Kukulka (tiku) <tiku@odoo.com>
2024-02-23 15:13:58 +00:00
Xavier (XPL) 3867472761 [IMP] install: enterprise packaged installers note
task-3536177

closes odoo/documentation#7817

X-original-commit: 62e08e0c1f
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
2024-02-23 15:13:55 +00:00
Donatienne (dopi) b3fc71894a [ADD] Website: adding link to the themes documentation
taskid-3685215

closes odoo/documentation#7799

Signed-off-by: Jonathan Castillo (jcs) <jcs@odoo.com>
2024-02-22 11:14:56 +00:00
Loredana Perazzo 3fada867de [IMP] pos: update the whole page
task-3005131

closes odoo/documentation#6718

Signed-off-by: Loredana Perazzo (lrpz) <lrpz@odoo.com>
2024-02-22 11:14:51 +00:00
Loredana Perazzo 75fa2c64b3 [ADD] POS: configure and use the ship later feature
task-3095674

closes odoo/documentation#7785

X-original-commit: a12f7925ca
Signed-off-by: Loredana Perazzo (lrpz) <lrpz@odoo.com>
2024-02-21 09:41:23 +00:00
Donatienne (dopi) af5ac872e7 [ADD] Website: website themes page creation
taskid-3685215

closes odoo/documentation#7592

Signed-off-by: Audrey Vandromme (auva) <auva@odoo.com>
2024-02-20 14:57:24 +00:00
Tarek berkane dc3bdd3824 [FW][FIX] tutorials/getting_started: typo in 'estate'
closes odoo/documentation#7782

Forward-port-of: odoo/documentation#7772
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2024-02-19 17:53:16 +00:00
Odoo Translation Bot ce85e620f1 [I18N] Update translation terms from Transifex 2024-02-18 00:40:29 +01:00
Jess Rogers (jero) 00faf01516 [IMP] helpdesk: update sla doc
closes odoo/documentation#7552

Signed-off-by: Jessica Rogers (jero) <jero@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: 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>
Co-authored-by: Zachary Straub <zst@odoo.com>
2024-02-17 01:59:39 +00:00
Felicious dcf55ac08a [IMP] inventory: sell stock virtual warehouse
closes odoo/documentation#7758

X-original-commit: 98994fbbaa
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>
2024-02-17 00:26:00 +00:00
KC (ksc) b0009b8e10 [IMP] subscriptions: corrected error about recurring products tip
closes odoo/documentation#7748

Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2024-02-17 00:25:59 +00:00
KC (ksc) b154ed017f [IMP] subscriptions: update close subs doc for 17
closes odoo/documentation#7327

Signed-off-by: Kevin Scannell (ksc) <ksc@odoo.com>
2024-02-17 00:25:53 +00:00
Zuzanna Luczynska 54f7faa593 [ADD] planning: new page planning basics
New doc concerning planning basics, e.g. creating roles, first shitfs,
configuration, etc.

taskid-3648638

closes odoo/documentation#7591

Signed-off-by: Audrey Vandromme (auva) <auva@odoo.com>
2024-02-16 16:45:45 +00:00
Ricardo Gomes Rodrigues 2a00746f71 [IMP] l10n: update CodaBox documentation
This commit updates the documentation of CodaBox:
- new connection process
- new revocation process
- modified potential errors

closes odoo/documentation#7683

Related: odoo/enterprise#55858
Signed-off-by: Ricardo Gomes Rodrigues (rigr) <rigr@odoo.com>
2024-02-16 13:51:51 +00:00
Dylan Kiss (dyki) ee1ef85417 [IMP] accounting: deferred detail change
Update the documentation for Deferred Revenues and Expenses following
the changes in https://github.com/odoo/enterprise/pull/56052

task-3725621

closes odoo/documentation#7729

X-original-commit: 1f730d050f
Related: odoo/enterprise#56554
Signed-off-by: Dylan Kiss (dyki) <dyki@odoo.com>
2024-02-14 18:32:11 +00:00
John Holton (hojo) 9f21404579 [IMP] MRP: Scrap during manufacturing
closes odoo/documentation#7712

X-original-commit: b498eb2cb9
Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2024-02-14 03:46:57 +00:00
Jess Rogers (jero) 212da24684 [IMP] helpdesk: update receiving tickets
closes odoo/documentation#7579

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-14 03:46:56 +00:00
Luucwa ca71dfa66a Update send_quotes.rst
Removed "see also" links that lead nowhere

closes odoo/documentation#7599

Signed-off-by: Zachary Straub (zst) <zst@odoo.com>
2024-02-14 02:16:55 +00:00
Sam Lieber (sali) 715bd20ac1 [FIX] odoo_theme: add bottom margin to inner lists
closes odoo/documentation#7727

X-original-commit: 1200df1ec8
Signed-off-by: Samuel Lieber (sali) <sali@odoo.com>
2024-02-13 19:14:54 +00:00
KC (ksc) 7576501508 [IMP] subscriptions: updated reports doc for 17
closes odoo/documentation#7365

Signed-off-by: Kevin Scannell (ksc) <ksc@odoo.com>
2024-02-13 16:07:27 +00: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
3371 changed files with 3458127 additions and 693961 deletions
+15 -15
View File
@@ -1,7 +1,7 @@
[main]
host = https://www.transifex.com
[o:odoo:p:odoo-18-doc:r:administration]
[o:odoo:p:odoo-17-doc:r:administration]
file_filter = locale/<lang>/LC_MESSAGES/administration.po
source_file = locale/sources/administration.pot
type = POT
@@ -11,7 +11,7 @@ replace_edited_strings = false
keep_translations = false
source_lang = en
[o:odoo:p:odoo-18-doc:r:applications]
[o:odoo:p:odoo-17-doc:r:applications]
file_filter = locale/<lang>/LC_MESSAGES/applications.po
source_file = locale/sources/applications.pot
type = POT
@@ -21,7 +21,7 @@ replace_edited_strings = false
keep_translations = false
source_lang = en
[o:odoo:p:odoo-18-doc:r:essentials]
[o:odoo:p:odoo-17-doc:r:essentials]
file_filter = locale/<lang>/LC_MESSAGES/essentials.po
source_file = locale/sources/essentials.pot
type = POT
@@ -31,7 +31,7 @@ replace_edited_strings = false
keep_translations = false
source_lang = en
[o:odoo:p:odoo-18-doc:r:finance]
[o:odoo:p:odoo-17-doc:r:finance]
file_filter = locale/<lang>/LC_MESSAGES/finance.po
source_file = locale/sources/finance.pot
type = POT
@@ -41,7 +41,7 @@ replace_edited_strings = false
keep_translations = false
source_lang = en
[o:odoo:p:odoo-18-doc:r:general]
[o:odoo:p:odoo-17-doc:r:general]
file_filter = locale/<lang>/LC_MESSAGES/general.po
source_file = locale/sources/general.pot
type = POT
@@ -51,7 +51,7 @@ replace_edited_strings = false
keep_translations = false
source_lang = en
[o:odoo:p:odoo-18-doc:r:hr]
[o:odoo:p:odoo-17-doc:r:hr]
file_filter = locale/<lang>/LC_MESSAGES/hr.po
source_file = locale/sources/hr.pot
type = POT
@@ -61,7 +61,7 @@ replace_edited_strings = false
keep_translations = false
source_lang = en
[o:odoo:p:odoo-18-doc:r:index]
[o:odoo:p:odoo-17-doc:r:index]
file_filter = locale/<lang>/LC_MESSAGES/index.po
source_file = locale/sources/index.pot
type = POT
@@ -71,7 +71,7 @@ replace_edited_strings = false
keep_translations = false
source_lang = en
[o:odoo:p:odoo-18-doc:r:inventory_and_mrp]
[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
@@ -81,7 +81,7 @@ replace_edited_strings = false
keep_translations = false
source_lang = en
[o:odoo:p:odoo-18-doc:r:marketing]
[o:odoo:p:odoo-17-doc:r:marketing]
file_filter = locale/<lang>/LC_MESSAGES/marketing.po
source_file = locale/sources/marketing.pot
type = POT
@@ -91,7 +91,7 @@ replace_edited_strings = false
keep_translations = false
source_lang = en
[o:odoo:p:odoo-18-doc:r:productivity]
[o:odoo:p:odoo-17-doc:r:productivity]
file_filter = locale/<lang>/LC_MESSAGES/productivity.po
source_file = locale/sources/productivity.pot
type = POT
@@ -101,7 +101,7 @@ replace_edited_strings = false
keep_translations = false
source_lang = en
[o:odoo:p:odoo-18-doc:r:sales]
[o:odoo:p:odoo-17-doc:r:sales]
file_filter = locale/<lang>/LC_MESSAGES/sales.po
source_file = locale/sources/sales.pot
type = POT
@@ -111,7 +111,7 @@ replace_edited_strings = false
keep_translations = false
source_lang = en
[o:odoo:p:odoo-18-doc:r:services]
[o:odoo:p:odoo-17-doc:r:services]
file_filter = locale/<lang>/LC_MESSAGES/services.po
source_file = locale/sources/services.pot
type = POT
@@ -121,7 +121,7 @@ replace_edited_strings = false
keep_translations = false
source_lang = en
[o:odoo:p:odoo-18-doc:r:user_settings]
[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
@@ -131,7 +131,7 @@ replace_edited_strings = false
keep_translations = false
source_lang = en
[o:odoo:p:odoo-18-doc:r:studio]
[o:odoo:p:odoo-17-doc:r:studio]
file_filter = locale/<lang>/LC_MESSAGES/studio.po
source_file = locale/sources/studio.pot
type = POT
@@ -141,7 +141,7 @@ replace_edited_strings = false
keep_translations = false
source_lang = en
[o:odoo:p:odoo-18-doc:r:websites]
[o:odoo:p:odoo-17-doc:r:websites]
file_filter = locale/<lang>/LC_MESSAGES/websites.po
source_file = locale/sources/websites.pot
type = POT
+1 -2
View File
@@ -18,7 +18,6 @@ CONFIG_DIR = .
SPHINXOPTS = -D project_root=$(ROOT) -D canonical_version=$(CANONICAL_VERSION) \
-D versions=$(VERSIONS) -D languages=$(LANGUAGES) -D language=$(CURRENT_LANG) \
-D is_remote_build=$(IS_REMOTE_BUILD) \
-T \
-A google_analytics_key=$(GOOGLE_ANALYTICS_KEY) \
-A plausible_script=$(PLAUSIBLE_SCRIPT) \
-A plausible_domain=$(PLAUSIBLE_DOMAIN) \
@@ -27,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)
+2 -4
View File
@@ -9,7 +9,6 @@
- Python dependencies listed in the file `requirements.txt`.
- Make
- A local copy of the [odoo/odoo repository](https://github.com/odoo/odoo) (optional)
- A local copy of the [odoo/upgrade-util repository](https://github.com/odoo/upgrade-util) (optional)
### Instructions
@@ -19,9 +18,8 @@
3. See [this guide](https://www.odoo.com/documentation/latest/contributing/documentation.html)
for more detailed instructions.
Optional: place your local copy of the `odoo/odoo` and `odoo/upgrade-util` repositories in
the parent directory or in the root directory of the documentation to build the latter
with the documented Python docstrings.
Optional: place your local copy of the `odoo/odoo` repository in the parent directory or in the root
directory of the documentation to build the latter with the documented Python docstrings.
## Contribute to the documentation
+11 -36
View File
@@ -21,8 +21,8 @@ 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 a/b/rc tags. Acts as replacement for |release|.
version = release = 'master'
# `release` is the full version, including alpha/beta/rc tags. Acts as replacement for |release|.
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 (*).
@@ -116,7 +116,7 @@ else:
odoo.addons.__path__.append(str(odoo_dir) + '/addons')
from odoo import release as odoo_release # Don't collide with Sphinx's 'release' config option
odoo_version = '.'.join(str(s) for s in odoo_release.version_info[:2]).replace('~', '-') # Change saas~XX.Y to saas-XX.Y
odoo_version = 'master' if odoo_release.ALPHA in odoo_release.version_info else odoo_version
odoo_version = 'master' if 'alpha' in odoo_release.version else odoo_version
if release != odoo_version:
_logger.warning(
"Found Odoo sources in %(directory)s but with version '%(odoo_version)s' incompatible "
@@ -133,24 +133,6 @@ else:
)
odoo_dir_in_path = True
if odoo_dir_in_path:
upgrade_util_dir = next(filter(Path.exists, [Path('upgrade-util'), Path('../upgrade-util')]), None)
if not upgrade_util_dir:
_logger.warning(
"Could not find Upgrade Utils sources directory in `upgrade_util`.\n"
"The developer documentation will be built but autodoc directives will be skipped.\n"
"In order to fully build the 'Developer' documentation, clone the repository with "
"`git clone https://github.com/odoo/upgrade-util` or create a symbolic link."
)
odoo_dir_in_path = False
else:
_logger.info(
"Found Upgrade Util sources in %(directory)s",
{'directory': upgrade_util_dir.resolve()},
)
from odoo import upgrade
upgrade.__path__.append(str((upgrade_util_dir / 'src').resolve()))
# Mapping between odoo models related to master data and the declaration of the
# data. This is used to point users to available xml_ids when giving values for
# a field with the autodoc_field extension.
@@ -231,13 +213,17 @@ 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-18.1': "Odoo Online",
'18.0': "Odoo 18",
'saas-17.4': "Odoo Online",
'saas-17.2': "Odoo Online",
'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",
}
# The language names that should be shown in the language switcher, if the config option `languages`
@@ -246,19 +232,14 @@ languages_names = {
'de': 'DE',
'en': 'EN',
'es': 'ES',
'es_419': 'ES (LATAM)',
'fr': 'FR',
'id': 'ID',
'it': 'IT',
'ja': 'JA',
'ko': 'KR',
'ko': 'KO',
'nl': 'NL',
'pt_BR': 'PT',
'ro': 'RO',
'sv': 'SV',
'th': 'TH',
'uk': 'UA',
'vi': 'VI',
'zh_CN': 'ZH (CN)',
'zh_TW': 'ZH (TW)'
}
@@ -269,9 +250,6 @@ redirects_dir = 'redirects/'
sphinx_tabs_disable_tab_closing = True
sphinx_tabs_disable_css_loading = True
# Autodoc ordering
autodoc_member_order = 'bysource'
#=== Options for HTML output ===#
html_theme = 'odoo_theme'
@@ -392,9 +370,6 @@ def setup(app):
app.add_config_value('is_remote_build', None, 'env') # Whether the build is remotely deployed
app.add_config_value('source_read_replace_vals', {}, 'env')
app.connect('source-read', source_read_replace)
# TODO uncomment after moving to >= v7.2.5 to also substitute placeholders in included files.
# See https://github.com/sphinx-doc/sphinx/commit/ff1831
# app.connect('include-read', source_read_replace)
app.add_lexer('json', JsonLexer)
app.add_lexer('xml', XmlLexer)
+4 -4
View File
@@ -46,10 +46,10 @@ Transferring an Odoo Online database
====================================
.. important::
Odoo Online's :ref:`intermediary versions <supported_versions>` are not supported by Odoo.sh or
on-premise. 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.
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
+1 -1
View File
@@ -64,4 +64,4 @@ The Odoo mobile apps are available for download on the `Google Play Store
.. important::
The iOS app cannot be updated and will be deprecated at some point in the future.
While the store apps support multi-accounts, they are not compatible with SSO authentication.
While the store apps support multi-accounts, they are not compatible with SS0 authentication.
@@ -21,7 +21,7 @@ turned into a testing environment.
Deactivated features
====================
Here is a non-exhaustive list of the deactivated features:
Here is a non-exhaustive list of the deactivated parameters:
- all planned actions (e.g., automatic invoicing of subscriptions, mass mailing, etc.)
- outgoing emails
@@ -29,7 +29,6 @@ Here is a non-exhaustive list of the deactivated features:
- payment providers
- delivery methods
- :abbr:`IAP (In-App Purchase)` tokens
- website visibility (prevent search engines from indexing your site)
.. note::
**A red banner at the top of the screen is displayed on the neutralized database so that it can
-2
View File
@@ -30,8 +30,6 @@ confirmation for the account deletion.
To confirm the deletion, enter the :guilabel:`Password` and the :guilabel:`Login` for the account
being deleted. Then, click the :guilabel:`Delete Account` button to confirm the deletion.
.. _odoocom/change_password:
Odoo.com account password change
================================
+1 -3
View File
@@ -46,7 +46,7 @@ Trigger a database upgrade.
.. seealso::
For more information about the upgrade process, check out the :ref:`Odoo Online upgrade
documentation <upgrade-request-test>`.
documentation <upgrade/request-test-database>`.
.. _odoo_online/duplicate:
@@ -60,8 +60,6 @@ daily operations.
- 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.
- A maximum of five duplicates can be made per database. Under extraordinary circumstances,
contact `support <https://www.odoo.com/help>`_ to raise the limit.
.. _odoo_online/rename:
@@ -29,32 +29,3 @@ We advise that:
- Your scheduled actions should be
`idempotent <https://stackoverflow.com/a/1077421/3332416>`_: they must not
cause side-effects if they are started more often than expected.
.. _ip-address-change:
How can I automate tasks when an IP address change occurs?
----------------------------------------------------------
**Odoo.sh notifies project administrators of IP address changes.**
Additionally, when the IP address of a production instance changes, an HTTP `GET` request is made
to the path `/_odoo.sh/ip-change` with the new IP address included as a query string parameter
(`new`), along with the previous IP address as an additional parameter (`old`).
This mechanism allows custom actions to be applied in response to the IP address change
(e.g., sending an email, contacting a firewall API, configuring database objects, etc.)
For security reasons, the `/_odoo.sh/ip-change` route is accessible only internally by the platform
itself and returns a `403` response if accessed through any other means.
Here is a pseudo-implementation example:
.. code-block:: python
class IPChangeController(http.Controller):
@http.route('/_odoo.sh/ip-change', auth='public')
def ip_change(self, old=None, new=None):
_logger.info("IP address changed from %s to %s", old, new)
# Then perform whatever action required for your use case, e.g., update an
# ir.config_parameter, send an email, contact an external firewall service's API, ...
return 'ok'
@@ -402,9 +402,9 @@ we are considering the feature if there is enough demand.
In case the domain of your users email addresses use SPF (Sender Policy Framework) or DKIM
(DomainKeys Identified Mail), don't forget to authorize Odoo as a sending host in your domain name
settings to increase the deliverability of your outgoing emails. The configuration steps are
explained in the documentation about :ref:`SPF <email-domain-spf>` and :ref:`DKIM
<email-domain-dkim>`.
settings to increase the deliverability of your outgoing emails.
The configuration steps are explained in the documentation about :ref:`SPF
<email_communication/spf_compliant>` and :ref:`DKIM <email_communication/dkim_compliant>`.
.. Warning::
Forgetting to configure your SPF or DKIM to authorize Odoo as a sending host can lead to the
@@ -146,7 +146,7 @@ Manually
--------
If you want to create your module structure manually,
you can follow the :doc:`/developer/tutorials/server_framework_101` tutorial to understand
you can follow the :doc:`/developer/tutorials/getting_started` tutorial to understand
the structure of a module and the content of each file.
Push the development branch
@@ -33,17 +33,17 @@ Manage the Github users who can access your project.
.. image:: settings/interface-settings-collaborators.png
:align: center
There are three levels of users:
There are two levels of users:
- :guilabel:`Admin`: has access to all features of an Odoo.sh project.
* Admin: has access to all features of Odoo.sh.
* User: does not have access to the project settings nor to the production and staging databases.
- :guilabel:`Tester`: has access to the *Staging* and *Development* databases and their tooling.
This role is for users conducting User Acceptance Tests. Testers can work with copies of
production data but cannot access the production database through the Odoo.sh tooling.
The user group is meant for developers who can make modifications in your code but are not allowed
to access the production data. Users of this group cannot connect to the production and staging
databases using the *1-click connect* feature, but they can of course use their regular account on
these databases if they have one, using their regular credentials.
- :guilabel:`Developer`: has access only to the *Development* databases and their tooling. This
role is for developers who propose code modifications but are not allowed to access production
and staging databases through the Odoo.sh tooling.
In addition, they cannot use the webshell nor have access to the server logs.
.. list-table::
:header-rows: 1
@@ -51,145 +51,83 @@ There are three levels of users:
* -
-
- Developer
- Tester
- User
- Admin
* - Development
- History
- |green|
- |green|
- |green|
* -
- 1-click connect
- |green|
- |green|
- |green|
* -
- Logs
- |green|
- |green|
- |green|
* -
- Shell/SSH
- |green|
- |green|
- |green|
* -
- Mails
- |green|
- |green|
* -
- Upgrade
- |green|
- |green|
* -
- Settings
- |green|
- |green|
- |green|
* - Staging
* - Production & Staging
- History
- |green|
- |green|
- |green|
* -
- 1-click connect
-
- |green|
- |green|
* -
- Logs
-
- |green|
- |green|
* -
- Shell/SSH
-
- |green|
- |green|
* -
- Mails
-
- |green|
- |green|
* -
- Monitoring
-
- |green|
- |green|
* -
- Backups
-
-
- |green|
* -
- Upgrade
-
- |green|
- |green|
* -
- Settings
-
- |green|
- |green|
* - Production
- History
- |green|
- |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|
- |green|
* - Settings
-
-
-
- |green|
.. warning::
Those roles only apply to the usage of Odoo.sh. It is important to reflect the user roles
attribution within the repository on GitHub. Please refer to the GitHub documentation section on
`Managing a branch protection rule <https://docs.github.com/en/repositories/configuring-branches-and-merges-in-your-repository/managing-protected-branches/managing-a-branch-protection-rule>`_
for detailed guidance.
.. note::
\* Only in staging branches
.. |green| raw:: html
@@ -211,32 +149,15 @@ Allow public access to your development builds.
.. image:: settings/interface-settings-public.png
:align: center
If activated, this option exposes the Builds page publicly, allowing visitors to view logs of development builds.
If activated, this option exposes the Builds page publicly, allowing visitors to connect to your
development builds.
In addition, visitors have access to the logs, shell and mails of your development builds.
Production and staging builds are excluded, visitors can only see their status.
.. _odoosh-gettingstarted-settings-modules-installation:
GitHub commit statuses
======================
This option enables Odoo.sh to push commit statuses to your GitHub repository when a build is
created or updated. It requires a GitHub token with permissions to push commit statuses to the
repository. Refer to `GitHub's documentation on personal access tokens <https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/managing-your-personal-access-tokens>`_
for instructions to create yours.
.. note::
GitHub's **fine-grained personal tokens** have an expiration date and will be disabled if they
fail to update the commit status. You can replace the token at any time on Odoo.sh.
The commit statuses pushed to GitHub can have the following contexts:
- :guilabel:`ci/odoo.sh (dev)`: status of a development build
- :guilabel:`ci/odoo.sh (staging)`: status of a staging build
- :guilabel:`ci/odoo.sh (production)`: status of a production build
- :guilabel:`ci/odoo.sh (test_ci)`: testing the token from the Settings page will push a test
status on the last commit of your repository
Custom domains
==============
+8 -2
View File
@@ -61,8 +61,8 @@ To resolve the issue:
your **network and firewall settings** allow the Odoo server to open outgoing connections
towards:
- Odoo 18.0 and above: `services.odoo.com` on port `80`
- Odoo 17.0 and below: `services.openerp.com` on port `80`
- `services.odoo.com` on port `443` (or `80`)
- for older deployments, `services.openerp.com` on port `443` (or `80`)
These ports must be kept open even after registering a database, as the update notification runs
once a week.
@@ -85,6 +85,12 @@ To resolve the issue, either:
displayed in the message to validate the upsell quotation and pay for the extra users.
- :ref:`Deactivate users <users/deactivate>` and **reject** the upsell quotation.
.. important::
If you are on a monthly subscription plan, the database will automatically update to reflect the
added user(s). If you are on a yearly or multi-year plan, an expiration banner will appear in the
database. You can create the upsell quotation by clicking the banner to update the subscription
or `send a support ticket <https://www.odoo.com/help>`_ to resolve the issue.
Once your database has the correct number of users, the expiration message disappears automatically
after a few days, when the next verification occurs.
+1 -137
View File
@@ -740,143 +740,7 @@ It should be stored securely, and should be generated randomly e.g.
$ python3 -c 'import base64, os; print(base64.b64encode(os.urandom(24)))'
which generates a 32-character pseudorandom printable string.
Reset the master password
-------------------------
There may be instances where the master password is misplaced, or compromised, and needs to be
reset. The following process is for system administrators of an Odoo on-premise database detailing
how to manually reset and re-encrypt the master password.
.. seealso::
For more information about changing an Odoo.com account password, see this documentation:
:ref:`odoocom/change_password`.
When creating a new on-premise database, a random master password is generated. Odoo recommends
using this password to secure the database. This password is implemented by default, so there is a
secure master password for any Odoo on-premise deployment.
.. warning::
When creating an Odoo on-premise database the installation is accessible to anyone on the
internet, until this password is set to secure the database.
The master password is specified in the Odoo configuration file (`odoo.conf` or `odoorc` (hidden
file)). The Odoo master password is needed to modify, create, or delete a database through the
graphical user interface (GUI).
Locate configuration file
~~~~~~~~~~~~~~~~~~~~~~~~~
First, open the Odoo configuration file (`odoo.conf` or `odoorc` (hidden file)).
.. tabs::
.. tab:: Windows
The configuration file is located at: `c:\\ProgramFiles\\Odoo{VERSION}\\server\\odoo.conf`
.. tab:: Linux
Depending on how Odoo is installed on the Linux machine, the configuration file is located in
one of two different places:
- Package installation: `/etc/odoo.conf`
- Source installation: `~/.odoorc`
Change old password
~~~~~~~~~~~~~~~~~~~
Once the appropriate file has been opened, proceed to modify the old password in the configuration
file to a temporary password.
.. tabs::
.. group-tab:: Graphical user interface
After locating the configuration file, open it using a (:abbr:`GUI (graphical user
interface)`). This can be achieved by simply double clicking on the file. Then, the device
should have a default :abbr:`GUI (graphical user interface)` to open the file with.
Next, modify the master password line `admin_passwd = $pbkdf2-sha…` to `admin_passwd =
newpassword1234`, for example. This password can be anything, as long as it is saved
temporarily. Make sure to modify all characters after the `=`.
.. example::
The line appears like this:
`admin_passwd =
$pbkdf2-sh39dji295.59mptrfW.9z6HkA$w9j9AMVmKAP17OosCqDxDv2hjsvzlLpF8Rra8I7p/b573hji540mk/.3ek0lg%kvkol6k983mkf/40fjki79m`
The modified line appears like this: `admin_passwd = newpassword1234`
.. group-tab:: Command-line interface
Modify the master password line using the following Unix command detailed below.
Connect to the Odoo server's terminal via Secure Shell (SSH) protocol, and edit the
configuration file. To modify the configuration file, enter the following command:
:command:`sudo nano /etc/odoo.conf`
After opening the configuration file, modify the master password line `admin_passwd =
$pbkdf2-sha…` to `admin_passwd = newpassword1234`. This password can be anything, as long as
it is saved temporarily. Make sure to modify all characters after the `=`.
.. example::
The line appears like this:
`admin_passwd =
$pbkdf2-sh39dji295.59mptrfW.9z6HkA$w9j9AMVmKAP17OosCqDxDv2hjsvzlLpF8Rra8I7p/b573hji540mk/.3ek0lg%kvkol6k983mkf/40fjki79m`
The modified line appears like this: `admin_passwd = newpassword1234`
.. important::
It is essential that the password is changed to something else, rather than triggering a new
password reset by adding a semicolon `;` at the beginning of the line. This ensures the database
is secure throughout the entire password reset process.
Restart Odoo server
~~~~~~~~~~~~~~~~~~~
After setting the temporary password, a restart of the Odoo server is **required**.
.. tabs::
.. group-tab:: Graphical user interface
To restart the Odoo server, first, type `services` into the Windows :guilabel:`Search` bar.
Then, select the :guilabel:`Services` application, and scroll down to the :guilabel:`Odoo`
service.
Next, right click on :guilabel:`Odoo`, and select :guilabel:`Start` or :guilabel:`Restart`.
This action manually restarts the Odoo server.
.. group-tab:: Command-line interface
Restart the Odoo server by typing the command: :command:`sudo service odoo15 restart`
.. note::
Change the number after `odoo` to fit the specific version the server is running on.
Use web interface to re-encrypt password
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
First, navigate to `/web/database/manager` or `http://server_ip:port/web/database/manager` in a
browser.
.. note::
Replace `server_ip` with the IP address of the database. Replace `port` with the numbered port
the database is accessible from.
Next, click :guilabel:`Set Master Password`, and type in the previously-selected temporary password
into the :guilabel:`Master Password` field. Following this step, type in a :guilabel:`New Master
Password`. The :guilabel:`New Master Password` is hashed (or encrypted), once the
:guilabel:`Continue` button is clicked.
At this point, the password has been successfully reset, and a hashed version of the new password
now appears in the configuration file.
.. seealso::
For more information on Odoo database security, see this documentation:
:ref:`db_manager_security`.
which will generate a 32 characters pseudorandom printable string.
Supported Browsers
==================
@@ -33,6 +33,7 @@ In you alias config (:file:`/etc/aliases`):
- `Postfix aliases <http://www.postfix.org/aliases.5.html>`_
- `Postfix virtual <http://www.postfix.org/virtual.8.html>`_
For Exim
--------
@@ -46,5 +47,5 @@ For Exim
- `Exim <https://www.exim.org/docs.html>`_
.. tip::
If you do not have access/manage your email server, use :ref:`incoming mail servers
<email-inbound-custom-domain-incoming-server>`.
If you don't have access/manage your email server, use :ref:`inbound messages
<email_communication/inbound_messages>`.
@@ -132,7 +132,7 @@ be downloaded from the `Odoo download page <https://www.odoo.com/page/download>`
.. group-tab:: Fedora
.. note::
Odoo {CURRENT_MAJOR_VERSION} 'rpm' package supports Fedora 38.
Odoo {CURRENT_MAJOR_VERSION} 'rpm' package supports Fedora 36.
Once downloaded, the package can be installed using the 'dnf' package manager:
+6 -10
View File
@@ -45,7 +45,7 @@ Git
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/server_framework_101>`.
Started developer tutorial </developer/tutorials/getting_started>`.
.. tabs::
@@ -277,22 +277,18 @@ Dependencies
.. 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 odoo #CommunityPath
$ sudo ./setup/debinstall.sh
The `setup/debinstall.sh` script will parse the `debian/control
<{GITHUB_PATH}/debian/control>`_ file and install the found packages.
$ cd /CommunityPath
$ sed -n -e '/^Depends:/,/^Pre/ s/ python3-\(.*\),/python3-\1/p' debian/control | sudo xargs apt-get install -y
.. tab:: Install with pip
.. warning::
Using pip may lead to security issues and broken dependencies; only do this if you
know what you are doing.
As some of the Python packages need a compilation step, they require system libraries to
be installed.
+57 -27
View File
@@ -31,60 +31,90 @@ This matrix shows the support status of every version.
- On-Premise
- Release date
- End of support
* - Odoo SaaS 18.1
* - Odoo saas~17.2
- |green|
- N/A
- N/A
- January 2025
-
* - **Odoo 18.0**
- |green|
- |green|
- |green|
- October 2024
- October 2027 (planned)
* - Odoo SaaS 17.4
- |red|
- N/A
- N/A
- July 2024
- October 2024
* - Odoo SaaS 17.2
- |red|
- N/A
- N/A
- April 2024
- October 2024
-
* - 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
- October 2025 (planned)
- 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**
- |red|
- |red|
- |red|
- |green|
- |green|
- |green|
- October 2021
- October 2024
- 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 2020
- Before 2023
- Before 2019
- Before 2022
.. admonition:: Legend
+82 -114
View File
@@ -2,55 +2,33 @@
Upgrade
=======
An upgrade involves moving a database from an older version to a newer supported version (e.g., from
Odoo 16.0 to Odoo 18.0). Regular upgrades are crucial as each version offers new features, bug
fixes, and security patches. Using a :doc:`supported version <supported_versions>` is strongly
recommended. Each major version is supported for three years.
.. _administration/upgrade:
Depending on the hosting type and Odoo version used, a database upgrade can be **mandatory**.
An upgrade is the process of moving your database from an older version to a newer :doc:`supported
version <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.
.. tabs::
.. group-tab:: Odoo Online
- If a database is on a **major version** (e.g., 16.0, 17.0, 18.0), an upgrade is mandatory
every two years.
- If a database is on a **minor version** (e.g., 17.1, 17.2, 17.4), an upgrade is mandatory
a few weeks after the next version is released. Minor versions are usually released every
two months.
.. group-tab:: Odoo.sh
After the initial three years of support, you will have another two years to complete the
upgrade. You will be notified when an upgrade is required.
.. image:: upgrade/odoo-sh-message.png
:alt: The "unsupported version" popup on Odoo.sh.
.. group-tab:: On-premise
You can stay on the same version indefinitely, even if it is not recommended. Note that the
smaller the version gap, the easier the upgrade should be.
.. _upgrade_faq/rolling_release:
.. spoiler:: Automatic upgrades: Odoo Online's Rolling Release process
You will receive a notification in your database a few weeks before a mandatory upgrade will be
automatically carried out. You are in control of the process as long as the deadline is not
reached.
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
Concretely, Odoos Upgrade Team performs a silent test upgrade of every database that should be
upgraded. If the test is successful and lasts less than 20 minutes, you can directly trigger the
upgrade from the database. If the test fails, you can test an upgrade using the `database manager
<https://www.odoo.com/my/databases>`_.
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.
When you are invited to upgrade, it is strongly recommended to :ref:`request an upgraded test
database <upgrade-request-test>` first and spend time :ref:`testing <upgrade-testing>` it.
It is **not** recommended to click :guilabel:`Upgrade Now` without testing first, as it
immediately triggers the live production database upgrade.
An automatic upgrade to the next version will be triggered if no action is taken before the
specified due date.
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:
@@ -64,40 +42,43 @@ An upgrade does not cover:
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>` while also :doc:`upgrading the source code of your custom
<upgrade/request-test-database>` while also :doc:`upgrading the source code of your custom
modules </developer/howtos/upgrade_custom_db>`.
.. _upgrade-nutshell:
Upgrading in a nutshell
=======================
-----------------------
#. Request an upgraded test database (see :ref:`obtaining an upgraded test database
<upgrade-request-test>`).
<upgrade/request-test-database>`).
#. 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`).
#. Thoroughly test the upgraded database (see :ref:`testing the new version of the database
<upgrade-testing>`).
#. Report any issue encountered during the testing to Odoo by going to the `Support page and
selecting "An issue related to my future upgrade (I am testing an upgrade)"
<https://www.odoo.com/help?stage=migration>`_.
<upgrade/test_your_db>`).
#. Report any issue encountered during the testing to Odoo via the `support page
<https://odoo.com/help?stage=migration>`__.
#. 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.
#. 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-production>`).
#. Report any issue encountered during the upgrade to Odoo by going to the `Support page and
selecting "An issue related to my upgrade (production)"
<https://www.odoo.com/help?stage=post_upgrade>`_.
.. _upgrade-request-test:
#. 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>`).
#. Report any issue encountered during the upgrade to Odoo via the `support page
<https://odoo.com/help?stage=post_upgrade>`__.
.. _upgrade/request-test-database:
Obtaining an upgraded test database
===================================
-----------------------------------
The `Upgrade page <https://upgrade.odoo.com>`_ is the main platform for requesting an upgraded
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://www.odoo.com/my/databases>`_, or your
`Odoo.sh project <https://www.odoo.sh/project>`_.
(on-premise), the `Odoo Online database manager <https://odoo.com/my/databases>`_, or your `Odoo.sh
project <https://odoo.sh/project>`_.
.. note::
The Upgrade platform follows the same `Privacy Policy <https://www.odoo.com/privacy>`_ as the
@@ -109,7 +90,7 @@ database. However, depending on the hosting type, you can upgrade from the comma
.. group-tab:: Odoo Online
Odoo Online databases can be manually upgraded via the `database manager
<https://www.odoo.com/my/databases>`_.
<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,
@@ -143,7 +124,8 @@ database. However, depending on the hosting type, you can upgrade from the comma
.. 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.
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
@@ -169,21 +151,6 @@ database. However, depending on the hosting type, you can upgrade from the comma
$ python <(curl -s https://upgrade.odoo.com/upgrade) test -d <your db name> -t <target version>
.. note::
This command has some requirements on the environment it runs in:
- Some external commands that must be provided by the operating system, normally found in
any Linux distribution (including WSL). An error will be displayed if one or several of
them are missing.
- The system user that executes the command needs to be configured with access to the
database. Please refer to the PostgreSQL documentation of the `client environment
<https://www.postgresql.org/docs/current/libpq-envars.html>`_ or the `client password
file <https://www.postgresql.org/docs/current/libpq-pgpass.html>`_ for this requirement.
- The script needs to be able to reach one or multiple servers of the upgrade platform
both on TCP port 443 and to any random TCP port in the range between 32768 and 60999.
This can be in conflict with your restrictive firewall and may need an exception added
to the firewall configuration.
The following command can be used to display the general help and the main commands:
.. code-block:: console
@@ -191,7 +158,7 @@ database. However, depending on the hosting type, you can upgrade from the comma
$ 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>`_.
<https://upgrade.odoo.com/>`_.
.. important::
In databases where custom modules are installed, their source code must be up-to-date with
@@ -217,20 +184,22 @@ database. However, depending on the hosting type, you can upgrade from the comma
.. 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-testing:
.. _upgrade/test_your_db:
Testing the new version of the database
=======================================
---------------------------------------
It is essential to test 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.
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
@@ -285,10 +254,9 @@ working correctly and to get more familiar with the new version.
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 by going to the `Support page and selecting "An issue related to my future upgrade (I am
testing an upgrade)" <https://www.odoo.com/help?stage=migration>`_. In any case, it is essential to
report any problem encountered during the testing to fix it before upgrading your production
database.
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
@@ -306,38 +274,40 @@ module to make it compatible with the new version of Odoo.
- Server actions in the action menu on form views, as well as by selecting multiple records on
list views
.. _upgrade-production:
.. _upgrade/upgrade-prod:
Upgrading the production database
=================================
---------------------------------
Once the :ref:`tests <upgrade-testing>` 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.
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.**
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:
- 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)
- 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, but with a
few exceptions.
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>`, except for the purpose option, which must be set to
<upgrade/request-test-database>`, except for the purpose option, which must be set to
:guilabel:`Production` instead of :guilabel:`Test`.
.. warning::
@@ -347,8 +317,8 @@ few exceptions.
.. group-tab:: Odoo.sh
The process is similar to :ref:`obtaining an upgraded test database <upgrade-request-test>` on
the :guilabel:`Production` branch.
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
@@ -378,8 +348,7 @@ few exceptions.
$ 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>`_.
<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.
@@ -389,14 +358,15 @@ few exceptions.
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 by going
to the `Support page and selecting "An issue related to my upgrade (production)"
<https://www.odoo.com/help?stage=post_upgrade>`_.
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.
.. _upgrade-sla:
.. _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.
@@ -405,10 +375,8 @@ Information about the upgrade services included in the Enterprise Licence is ava
:ref:`Odoo Enterprise Subscription Agreement <upgrade>`. However, this section clarifies what
upgrade services you can expect.
.. _upgrade-sla-covered:
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:
@@ -422,16 +390,16 @@ benefit from upgrade services at all times for:
Upgrade services are limited to the technical conversion and adaptation of a database (standard
modules and data) to make it compatible with the version targeted by the upgrade.
.. _upgrade-sla-not-covered:
Upgrade services not covered by the SLA
---------------------------------------
=======================================
The following upgrade-related services are **not** included:
- the **cleaning** of pre-existing data and configurations while upgrading;
- the upgrade of **additional modules not covered by a maintenance contract** that are created
in-house or by third parties, including Odoo partners; and
- the upgrade of **custom modules created in-house or by third parties**, including Odoo partners;
- lines of **code added to standard modules**, i.e., customizations created outside the Studio app,
code entered manually, and :ref:`automated actions using Python code
<studio/automated-actions/action>`; and
- **training** on using the upgraded version's features and workflows.
.. seealso::
Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

After

Width:  |  Height:  |  Size: 22 KiB

-2
View File
@@ -7,7 +7,5 @@ Odoo essentials
essentials/activities
essentials/reporting
essentials/search
essentials/contacts
essentials/export_import_data
essentials/in_app_purchase
essentials/keyboard_shortcuts
+198 -304
View File
@@ -2,344 +2,238 @@
Activities
==========
.. |clock| replace:: :icon:`fa-clock-o` :guilabel:`(clock)` icon
*Activities* are follow-up tasks tied to a record in an Odoo database.
.. _activities/important:
The icon used to display activities varies, depending on the :ref:`activity type
<activities/types>`:
- :icon:`fa-clock-o` :guilabel:`(clock)` icon: the default activities icon.
- :icon:`fa-phone` :guilabel:`(phone)` icon: a phone call is scheduled.
- :icon:`fa-envelope` :guilabel:`(envelope)` icon: an email is scheduled.
- :icon:`fa-check` :guilabel:`(check)` icon: a "to-do" is scheduled.
- :icon:`fa-users` :guilabel:`(people)` icon: a meeting is scheduled.
- :icon:`fa-upload` :guilabel:`(upload)` icon: a document is scheduled to be uploaded.
- :icon:`fa-pencil-square-o` :guilabel:`(request signature)` icon: a signature request is scheduled.
*Activities* are follow-up tasks tied to a record in an Odoo database. Activities can be scheduled
on any page of the database that contains a chatter thread, kanban view, list view, or activities
view of an application.
Schedule activities
===================
Activities can be scheduled on any page of the database that contains a :ref:`chatter
<activities/chatter>` thread, :ref:`Kanban view <activities/kanban>`, :ref:`list view
<activities/list>`, or :ref:`activities view <activities/activity>` of an application.
.. _activities/chatter:
Chatter
-------
Activities can be created from the chatter on any record.
To schedule a new activity, click the :guilabel:`Activities` button, located at the top of the
chatter. In the :guilabel:`Schedule Activity` pop-up window that appears, :ref:`fill out the
Schedule Activity form <activities/form>`.
.. image:: activities/chatter.png
:align: center
:alt: New activity type form.
.. _activities/kanban:
Kanban view
-----------
Activities can also be created from the :icon:`oi-view-kanban` :guilabel:`(Kanban)` view.
To do so, click on the |clock| located at the bottom of an individual record.
Click :guilabel:`+ Schedule An Activity`, then proceed to :ref:`fill out the Schedule Activity form
<activities/form>`.
.. image:: activities/schedule-kanban-activity.png
:align: center
:alt: Kanban view of the CRM pipeline and the option to schedule an activity.
.. note::
If a record already has a scheduled activity, the |clock| is replaced by the icon that represents
the existing scheduled activity. Click on the activity type's icon to schedule another activity.
.. _activities/list:
List view
---------
Activities can also be created from a :icon:`oi-view-list` :guilabel:`(list)` view.
If the :guilabel:`Activities` column is hidden, reveal it using the :icon:`oi-settings-adjust`
:guilabel:`(settings adjust)` icon in the far-right of the top row.
Then, click on the |clock| for the record the activity is being added to, and click :guilabel:`+
Schedule an activity`. Proceed to :ref:`fill out the Schedule Activity form <activities/form>` that
appears.
.. note::
If a record already has a scheduled activity, the |clock| is replaced by the icon that represents
the existing scheduled activity. Click on the activity type's icon to schedule another activity.
.. image:: activities/schedule-list-activity.png
:align: center
:alt: List view of the CRM pipeline and the option to schedule an activity.
.. _activities/activity:
Activity view
-------------
Most applications in Odoo have an *Activity* view available. If available, a |clock| is visible in
the top-right corner of the main menu bar, amongst the other view option icons.
To open the activity view, click the |clock|.
.. image:: activities/activities.png
:align: center
:alt: Top-right menu with the Activities icon called out.
In this view, all the available activities are listed in the columns, while the horizontal entries
represent all the individual records.
Activities that appear green have a due date in the future, activities that appear orange are due
today, while activities appearing red are overdue.
Color bars in each column represent records for specific activity types, and display a number
indicating how many activities are scheduled for that type.
If multiple activity types are scheduled for a record, a number appears in the box, indicating the
total number of scheduled activities.
.. note::
Activity colors, and their relation to an activity's due date, are consistent throughout Odoo,
regardless of the activity type, or the view.
To schedule an activity for a record, hover over the corresponding field. Click the :icon:`fa-plus`
:guilabel:`(plus)` icon that appears, and then :ref:`fill out the Schedule Activity form
<activities/form>`.
.. image:: activities/activity-view.png
:align: center
:alt: Activity view of the CRM pipeline and the option to schedule an activity.
.. _activities/form:
Schedule Activity form
----------------------
Activities can be scheduled from many different places, such as from the :ref:`chatter
<activities/chatter>` of a record, or from one of multiple views in an application, when available:
the :ref:`Kanban view <activities/kanban>`, :ref:`list view <activities/list>`, or :ref:`activity
view <activities/activity>`.
Enter the following information on the form:
- :guilabel:`Activity Type`: select the type of activity from the drop-down menu. The default
options are: :guilabel:`Email`, :guilabel:`Call`, :guilabel:`Meeting`, or :guilabel:`To-Do`.
Depending on what other applications are installed, additional options may be available.
- :guilabel:`Summary`: enter a short title for the activity, such as `Discuss Proposal`.
- :guilabel:`Due Date`: using the calendar popover, select the activity's deadline.
- :guilabel:`Assigned to`: by default, the current user populates this field. To assign a different
user to the activity, select them from the drop-down menu.
- :guilabel:`Notes`: add any additional information for the activity in this field.
When the :guilabel:`Schedule Activity` pop-up window is completed, click one of the following
buttons:
- :guilabel:`Open Calendar`: opens the user's calendar to add and schedule the activity.
Click on the desired date and time for the activity, and a :guilabel:`New Event` pop-up window
appears. The summary from the *Schedule Activity* pop-up window populates the :guilabel:`Title`
field.
Enter the information in the :guilabel:`New Event` pop-up window, then click :guilabel:`Save &
Close` to schedule it. Once scheduled, the activity is added to the chatter under the
:guilabel:`Planned Activities` section.
.. important::
The :guilabel:`Open Calendar` button **only** appears if the :guilabel:`Activity Type` is set
to either :guilabel:`Call` or :guilabel:`Meeting`.
- :guilabel:`Schedule`: schedules the activity, and adds the activity to the chatter under
:guilabel:`Planned Activities`.
- :guilabel:`Schedule & Mark as Done`: adds the details of the activity to the chatter under
:guilabel:`Today`. The activity is not scheduled, and is automatically marked as done.
- :guilabel:`Done & Schedule Next`: adds the details of the activity to the chatter under
:guilabel:`Today`. The activity is not scheduled, is automatically marked as done, and a new
:guilabel:`Schedule Activity` pop-up window appears.
- :guilabel:`Cancel`: discards any changes made on the :guilabel:`Schedule Activity` pop-up window.
.. image:: activities/schedule-pop-up.png
:align: center
:alt: View of CRM leads and the option to schedule an activity.
.. _activities/all:
All scheduled activities
========================
To view a consolidated list of activities, organized by application, click the |clock| in the header
menu, located in the top-right corner.
If any activities are scheduled, the number of activities appear in a red bubble on the
|clock|.
All activities for each application are further divided into subsections, indicating where in the
application the activity is to be completed. Each sub-section lists the number of scheduled
activities that are :guilabel:`Late`, due :guilabel:`Today`, and scheduled in the
:guilabel:`Future`.
.. example::
In the *Time Off* application, one activity is scheduled to be done in the *All Time Off*
requests dashboard, and six activities are scheduled to be done in the *Allocations* dashboard.
These requests appear in two separate lists in the all activities drop-down menu: one labeled
`Time Off` and one labeled `Time Off Allocation`.
.. image:: activities/activities-menu.png
:align: center
:alt: The list of activities that is accessed from the main menu bar. Two entries for the Time
Off application are highlighted.
Request a document
------------------
The option to :guilabel:`Request a Document` is available at the bottom of the list of :ref:`all
scheduled activities <activities/all>`, the option to :guilabel:`Request a Document` appears. Click
:guilabel:`Request a Document`, and a :guilabel:`Request a file` pop-up window appears.
Enter the following information on the form:
- :guilabel:`Document Name`: enter a name for the document being requested.
- :guilabel:`Request To`: select the user the document is being requested from using the drop-down
menu.
- :guilabel:`Due Date In`: enter a numerical value indicating when the document is due. Next to
this field, a :guilabel:`Days` field is visible. Click :guilabel:`Days`, the default option, to
reveal a drop-down menu. Select the desired time-frame option from the list. The options are
:guilabel:`Days`, :guilabel:`Weeks`, or :guilabel:`Months`.
- :guilabel:`Workspace`: using the drop-down menu, select the specific :ref:`Workspace
<documents/workspaces>` the document is being uploaded to.
- :guilabel:`Tags`: select any desired tags from the drop-down menu. The available tags displayed
are based on the tags configured for the selected :guilabel:`Workspace`.
- :guilabel:`Message`: enter a message to clarify the document request in this field.
When all the fields are completed, click :guilabel:`Request` to send the document request.
.. image:: activities/request-doc.png
:align: center
:alt: The Request a file form, with all fields filled out to request a contract.
.. _activities/types:
Activity types
==============
To view the currently configured types of activities in the database, navigate to
:menuselection:`Settings app --> Discuss section --> Activities setting --> Activity Types`.
.. image:: activities/settings-activities-types.png
:align: center
:alt: Activity Types button in the Settings application under the Discuss section.
Doing so reveals the :guilabel:`Activity Types` page, where the existing activity types are found.
One way that activities are created is by clicking the :guilabel:`Schedule Activity` button, located
at the top of the *chatter* on any record. On the pop-up window that appears, select an
:guilabel:`Activity Type` from the drop-down menu.
.. tip::
Individual applications have a list of *Activity Types* dedicated to that application. For
example, to view and edit the activities available for the *CRM* application, go to
:menuselection:`CRM app --> Configuration --> Activity Types`.
.. image:: activities/activity-list.png
:align: center
:alt: The list of activity types already configured and available.
Enter a title for the activity in the :guilabel:`Summary` field, located in the :guilabel:`Schedule
Activity` pop-up window.
Edit activity types
-------------------
To assign the activity to a different user, select a name from the :guilabel:`Assigned to` drop-down
menu. Otherwise, the user creating the activity is automatically assigned.
To edit an existing :ref:`activity type <activities/types>`, click on the activity type, and the
activity type form loads.
Lastly, feel free to add any additional information in the optional :guilabel:`Log a note...` field.
Make any desired changes to the activity type form. The form automatically saves, but it can be
saved manually at any time by clicking the :guilabel:`Save Manually` option, represented by a
:icon:`fa-cloud-upload` :guilabel:`(cloud upload)` icon, located in the top-left corner of the page.
.. note::
The :guilabel:`Due Date` field on the :guilabel:`Schedule Activity` pop-up window auto-populates
based on the configuration settings for the selected :guilabel:`Activity Type`. However, this
date can be changed by selecting a day on the calendar in the :guilabel:`Due Date` field.
Create new activity types
-------------------------
Lastly, click one of the following buttons:
To create a new :ref:`activity type <activities/types>`, click :guilabel:`New` from the
:guilabel:`Activity Types` page, and a blank activity type form loads.
- :guilabel:`Schedule`: adds the activity to the chatter under :guilabel:`Planned activities`.
- :guilabel:`Mark as Done`: adds the details of the activity to the chatter under :guilabel:`Today`.
The activity is not scheduled, it is automatically marked as completed.
- :guilabel:`Done \& Schedule Next`: adds the task under :guilabel:`Today` marked as done, and
opens a new activity window.
- :guilabel:`Discard`: discards any changes made on the pop-up window.
Enter a :guilabel:`Name` for the activity type at the top of the form, then enter the following
information on the form.
.. image:: activities/schedule-pop-up.png
:alt: View of CRM leads and the option to schedule an activity.
Activity Settings section
~~~~~~~~~~~~~~~~~~~~~~~~~
.. note::
Depending on the activity type, the :guilabel:`Schedule` button may be replaced by a
:guilabel:`Save` button, or an :guilabel:`Open Calendar` button.
- :guilabel:`Action`: using the drop-down menu, select an action associated with this new activity
type. Some actions trigger specific behaviors after an activity is scheduled, such as:
Scheduled activities are added to the chatter for the record under :guilabel:`Planned activities`.
- :guilabel:`Upload Document`: if selected, a link to upload a document is automatically added to
the planned activity in the chatter.
- :guilabel:`Call` or :guilabel:`Meeting`: if selected, users have the option to open their
calendar to select a date and time for the activity.
- :guilabel:`Request Signature`: if selected, a link to open a signature request pop-up window is
automatically added to the planned activity in the chatter. This requires the Odoo *Sign*
application to be installed.
.. image:: activities/chatter-activities.png
:alt: View of CRM leads and the option to schedule an activity.
.. note::
Available activity types vary based on the installed applications in the database.
Activities can also be scheduled from the kanban, list, or activities view of an application.
- :guilabel:`Folder`: select a specific :ref:`workspace <documents/workspaces>` folder to save a
document to. This field **only** appears if :guilabel:`Upload Document` is selected for the
:guilabel:`Action`.
.. tabs::
Using the drop-down menu, select the :guilabel:`Folder` the document is saved to.
.. tab:: Kanban view
- :guilabel:`Default User`: select a user from the drop-down menu to automatically assign this
activity to the selected user when this activity type is scheduled. If this field is left blank,
the activity is assigned to the user who creates the activity.
- :guilabel:`Default Summary`: enter a note to include whenever this activity type is created.
Select a record on which to schedule an activity. Click on the :guilabel:`🕘 (clock)` icon,
then :guilabel:`Schedule An Activity`, and proceed to fill out the pop-up form.
.. note::
The information in the :guilabel:`Default User` and :guilabel:`Default Summary` fields are
included when an activity is created. However, they can be altered before the activity is
scheduled or saved.
.. image:: activities/schedule-kanban-activity.png
:alt: Kanban view of the CRM pipeline and the option to schedule an activity.
- :guilabel:`Keep Done`: tick this checkbox to keep activities that have been marked as `Done`
visible in the :ref:`activity view <activities/activity>`.
- :guilabel:`Default Note`: enter any notes to appear with the activity.
.. tab:: List view
Next Activity section
Select a record on which to schedule an activity. Click on the :guilabel:`🕘 (clock)` icon,
then :guilabel:`Schedule An Activity`. If the record already has an activity scheduled, the
clock icon may be replaced by a :guilabel:`📞 (phone)` or an :guilabel:`✉️ (envelope)` icon.
.. image:: activities/schedule-list-activity.png
:alt: List view of the CRM pipeline and the option to schedule an activity.
.. tab:: Activity view
To open the activity view for an application, select the :guilabel:`🕘 (clock)` icon from the
menu bar anywhere in the database. Select any application from the drop-down menu, and click
the :guilabel:`🕘 (clock)` icon for the desired app.
.. image:: activities/schedule-activity-view-menu.png
:alt: Activity menu drop down with focus on where to open activity view for CRM.
Select a record on which to schedule an activity. Move across the row to find the desired
activity type, then click the :guilabel:` (plus sign)`.
.. image:: activities/schedule-activity-view.png
:alt: Activity view of the CRM pipeline and the option to schedule an activity.
.. note::
Activity colors, and their relation to an activity's due date, is consistent throughout Odoo,
regardless of the activity type, or the view.
- Activities that appear in **green** indicate a due date sometime in the future.
- **Yellow** indicates that the activity's due date is today.
- **Red** indicates that the activity is overdue and the due date has passed.
For example, if an activity is created for a phone call, and the due date passes, the activity
appears with a red phone in list view, and a red clock on the kanban view.
View scheduled activities
=========================
To view scheduled activities, open either the :menuselection:`Sales app` or :menuselection:`CRM app`
and click the :guilabel:`🕘 (clock)` icon, located to the far-right side of the other view options.
Doing so opens the activities menu, showcasing all the scheduled activities for the user, by
default. To show all activities for every user, remove the :guilabel:`My Pipeline` filter from the
:guilabel:`Search...` bar.
To view a consolidated list of activities separated by the application where they were created, and
by deadline, click the :guilabel:`🕘 (clock)` icon on the header menu to see the activities for that
specific application in a drop-down menu.
The possibility to :guilabel:`Add new note` and :guilabel:`Request a Document` appear at the bottom
of this drop-down menu, when the :guilabel:`🕘 (clock)` icon on the header menu is clicked.
.. image:: activities/activities-menu.png
:alt: View of CRM leads page emphasizing the activities menu.
Configure activity types
========================
To configure the types of activities in the database, go to :menuselection:`Settings app --> Discuss
--> Activities --> Activity Types`.
.. image:: activities/settings-activities-types.png
:alt: View of the settings page emphasizing the menu activity types.
Doing so reveals the :guilabel:`Activity Types` page, where the existing activity types are found.
To edit an existing activity type, select it from the list, then click :guilabel:`Edit`. To create a
new activity type, click :guilabel:`Create`.
At the top of a blank activity type form, start by choosing a :guilabel:`Name` for the new activity
type.
.. image:: activities/new-activity-type.png
:alt: New activity type form.
Activity settings
-----------------
Action
~~~~~~
The *Action* field specifies the intent of the activity. Some actions trigger specific behaviors
after an activity is scheduled.
- If :guilabel:`Upload Document` is selected, a link to upload a document is added directly to the
planned activity in the chatter.
- If either :guilabel:`Phonecall` or :guilabel:`Meeting` are selected, users have the option to open
their calendar to schedule a time for this activity.
- If :guilabel:`Request Signature` is selected, a link is added to the planned activity in the
chatter that opens a signature request pop-up window.
.. note::
The actions available to select on an activity type vary, depending on the applications currently
installed in the database.
Default user
~~~~~~~~~~~~
To automatically assign this activity to a specific user when this activity type is scheduled,
choose a name from the :guilabel:`Default User` drop-down menu. If this field is left blank, the
activity is assigned to the user who creates the activity.
Default summary
~~~~~~~~~~~~~~~
To include notes whenever this activity type is created, enter them into the :guilabel:`Default
Summary` field.
.. note::
The information in the :guilabel:`Default User` and :guilabel:`Default Summary` fields are
included when an activity is created. However, they can be altered before the activity is
scheduled or saved.
Next activity
-------------
To automatically suggest, or trigger, a new activity after an activity has been marked complete, the
:guilabel:`Chaining Type` must be set.
Suggest next activity
~~~~~~~~~~~~~~~~~~~~~
It is possible to have another activity either suggested or triggered. To do so, configure the
:guilabel:`Next Activity` section.
In the :guilabel:`Chaining Type` field, select :guilabel:`Suggest Next Activity`. Upon doing so, the
field underneath changes to: :guilabel:`Suggest`. Click the :guilabel:`Suggest` field drop-down menu
to select any activities to recommend as follow-up tasks to this activity type.
- :guilabel:`Chaining Type`: select either :guilabel:`Suggest Next Activity` or :guilabel:`Trigger
Next Activity` from the drop-down menu. Depending on the selected option, either the
:guilabel:`Suggest` or :guilabel:`Trigger` field is displayed.
In the :guilabel:`Schedule` field, choose a default deadline for these activities. To do so,
configure a desired number of :guilabel:`Days`, :guilabel:`Weeks`, or :guilabel:`Months`. Then,
decide if it should occur :guilabel:`after completion date` or :guilabel:`after previous activity
deadline`.
.. note::
The :guilabel:`Chaining Type` field does **not** appear if :guilabel:`Upload Document` is
selected for the :guilabel:`Action`.
This :guilabel:`Schedule` field information can be altered before the activity is scheduled.
- :guilabel:`Suggest/Trigger`: depending on what is selected for the :guilabel:`Chaining Type`, this
field either displays :guilabel:`Suggest` or :guilabel:`Trigger`. Using the drop-down menu, select
the activity to recommend or schedule as a follow-up task to the activity type.
- :guilabel:`Schedule`: configure when the next activity is suggested or triggered.
When all configurations are complete, click :guilabel:`Save`.
First, enter a numerical value indicating when the activity is suggested or triggered.
.. image:: activities/schedule-recommended-activity.png
:alt: Schedule activity popup with emphasis on recommended activities.
Next to this field, a :guilabel:`Days` field is visible. Click :guilabel:`Days`, the default
option, to reveal a drop-down menu. Select the desired time-frame option from the list. The
options are :guilabel:`Days`, :guilabel:`Weeks`, or :guilabel:`Months`.
.. note::
If an activity has the :guilabel:`Chaining Type` set to :guilabel:`Suggest Next Activity`, and
has activities listed in the :guilabel:`Suggest` field, users are presented with recommendations
for activities as next steps.
Lastly, using the drop-down menu, select whether the activity is scheduled or triggered either
:guilabel:`after previous activity deadline` or :guilabel:`after completion date`.
Trigger next activity
~~~~~~~~~~~~~~~~~~~~~
.. image:: activities/new-activity.png
:align: center
:alt: A new Activity form with all the fields filled out.
Setting the :guilabel:`Chaining Type` to :guilabel:`Trigger Next Activity` immediately launches the
next activity once the previous one is completed.
If :guilabel:`Trigger Next Activity` is selected in the :guilabel:`Chaining Type` field, the field
beneath changes to: :guilabel:`Trigger`. From the :guilabel:`Trigger` field drop-down menu, select
the activity that should be launched once this activity is completed.
In the :guilabel:`Schedule` field, choose a default deadline for these activities. To do so,
configure a desired number of :guilabel:`Days`, :guilabel:`Weeks`, or :guilabel:`Months`. Then,
decide if it should occur :guilabel:`after completion date` or :guilabel:`after previous activity
deadline`.
This :guilabel:`Schedule` field information can be altered before the activity is scheduled.
When all configurations are complete, click :guilabel:`Save`.
.. image:: activities/triggered-activities.png
:alt: Schedule new activity popup with emphasis on Done and launch next button.
.. note::
When an activity has the :guilabel:`Chaining Type` set to :guilabel:`Trigger Next Activity`,
marking the activity as `Done` immediately launches the next activity listed in the
:guilabel:`Trigger` field.
.. seealso::
- :doc:`../productivity/discuss`
- :doc:`../productivity/discuss/team_communication`
- :doc:`../sales/crm/optimize/utilize_activities`
- :doc:`/applications/productivity/discuss`
- :doc:`/applications/productivity/discuss/team_communication`
Binary file not shown.

Before

Width:  |  Height:  |  Size: 26 KiB

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 30 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 21 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 21 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 32 KiB

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 26 KiB

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 26 KiB

After

Width:  |  Height:  |  Size: 9.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

@@ -1,263 +0,0 @@
:show-content:
========
Contacts
========
Contacts are created in the **Contacts** application for customers the company does business with
through Odoo. A contact is a repository of vital business information, facilitating communication
and business transactions.
Contact form
============
To create a new contact, navigate to the :menuselection:`Contacts app`, and click
:guilabel:`Create`. A new form appears where various contact information can be added.
Contact type
------------
Odoo allows for both :guilabel:`Individual` and :guilabel:`Company` contacts. Select either
:guilabel:`Individual` or :guilabel:`Company`, depending on the type of contact that is being added.
Name
----
First, fill in the name of the :guilabel:`Individual` or :guilabel:`Company`. This is how the name
appears throughout the database. This field is **mandatory**.
.. tip::
:guilabel:`Individual` contacts can have a :guilabel:`Company` contact linked to it. After
selecting :guilabel:`Individual`, a new :guilabel:`Company Name...` field appears below the
first name field.
Address
-------
Next, enter the :guilabel:`Address` of the :guilabel:`Company` or :guilabel:`Individual`.
.. tip::
If the :guilabel:`Individual` option is chosen, then the *type of address* can be chosen from a
drop-down menu. Options for this drop-down menu include: :guilabel:`Contact`, :guilabel:`Invoice
Address`, :guilabel:`Delivery Address`, :guilabel:`Other Address`, and :guilabel:`Private
Address`.
Additional fields
-----------------
Additional details are included on the initial form. The following fields are available:
- :guilabel:`VAT`: Value Added Tax number.
- :guilabel:`Citizen Identification`: citizen or government identification number (only available
on :guilabel:`Individual`).
- :guilabel:`Job Position`: list the job position of the :guilabel:`Individual` (only available on
:guilabel:`Individual`).
- :guilabel:`Phone`: list phone number (with country code). Make a call, send an SMS, or WhatsApp
message by hovering over the field on the saved form, and clicking the desired option.
- :guilabel:`Mobile`: list mobile phone number (with country code). Make a call, send an SMS, or
WhatsApp message by hovering over the field on the saved form, and clicking on the desired option.
- :guilabel:`Email`: enter the email address with the domain.
- :guilabel:`Website`: enter the full website address, starting with `http` or `https`.
- :guilabel:`Title`: select :guilabel:`Doctor`, :guilabel:`Madam`, :guilabel:`Miss`,
:guilabel:`Mister`, :guilabel:`Professor`, or create a new one directly from this field.
- :guilabel:`Tags`: enter preconfigured tags by typing them in the field, or clicking the drop-down
menu, and selecting one. To create a new one, type the new tag in the field, and click
:guilabel:`Create` from the resulting drop-down menu.
Contacts & Addresses tab
------------------------
At the bottom of the contact form are several tabs. On the :guilabel:`Contacts & Addresses` tab,
contacts can be added that are associated with a :guilabel:`Company` and related addresses. For
example, a specific contact person for the company can be listed here.
Multiple addresses can be added on both :guilabel:`Individual` and :guilabel:`Company` contacts. To
do so, click :guilabel:`Add` in the :guilabel:`Contacts & Addresses` tab. Doing so reveals a
:guilabel:`Create Contact` pop-up form, in which additional addresses can be configured.
.. image:: contacts/contact-form-add-address.png
:align: center
:alt: Add a contact/address to the contact form.
On the :guilabel:`Create Contact` pop-up form, start by clicking the default :guilabel:`Other
Address` field at the top to reveal a drop-down menu of address-related options.
Select any of the following options:
- :guilabel:`Contact`: adds another contact to the existing contact form.
- :guilabel:`Invoice Address`: adds a specific invoice address to the existing contact form.
- :guilabel:`Delivery Address`: adds a specific delivery address to the existing contact form.
- :guilabel:`Other Address`: adds an alternate address to the existing contact form.
- :guilabel:`Private Address`: adds a private address to the existing contact form.
.. image:: contacts/create-contact-window.png
:align: center
:alt: Create a new contact/address on a contact form.
Once an option is selected, enter the corresponding contact information that should be used for the
specified address type.
Add the :guilabel:`Contact Name`, :guilabel:`Address`, :guilabel:`Email`, along with the
:guilabel:`Phone` and/or :guilabel:`Mobile` numbers below.
Set the :guilabel:`Job Position`, which appears if the :guilabel:`Contact` address type has been
selected. This is similar to the :guilabel:`Individual` contact.
To add a note, click on the text field next to :guilabel:`Notes`, and write anything that is
applicable to the customer or contact.
Then, click :guilabel:`Save & Close` to save the address, and close the :guilabel:`Create Contact`
window. Or, click :guilabel:`Save & New` to save the address, and immediately input another one.
Sales & Purchase tab
--------------------
Next, is the :guilabel:`Sales & Purchases` tab, which only appears when the *Sales*, *Purchase*,
**or** *Point of Sale* applications are installed.
The :guilabel:`Fiscal Position` can be set on the :guilabel:`Sales & Purchases` tab. Select a
:guilabel:`Fiscal Position` from the drop-down menu.
Sales section
~~~~~~~~~~~~~
Under the :guilabel:`Sales` heading, a specific :guilabel:`Salesperson` can be assigned to a
contact. To do that, click the :guilabel:`Salesperson` drop-down field, and select one. Create a new
:guilabel:`Salesperson` by typing the user's name, and making the appropriate selection.
Certain :guilabel:`Payment Terms`, or a certain :guilabel:`Pricelist`, can also be set, if needed.
Click the drop-down menu next to :guilabel:`Payment Terms`, and change it to one of the preselected
:guilabel:`Payment Terms`, or :guilabel:`Create` a new one. Select the :guilabel:`Pricelist`
drop-down menu to choose the appropriate :guilabel:`Pricelist`.
Click into the :guilabel:`Delivery Method` field to select an option from the drop-down menu.
Point Of Sale section
~~~~~~~~~~~~~~~~~~~~~
Under the :guilabel:`Point Of Sale` heading, enter a :guilabel:`Barcode` that can be used to
identify the contact. Use the :guilabel:`Loyalty Points` field to track points the user won as part
of a *Loyalty Program*.
Purchase section
~~~~~~~~~~~~~~~~
Specify :guilabel:`Payment Terms`, :guilabel:`1099 Box` information, and a preferred
:guilabel:`Payment Method` here. A :guilabel:`Receipt Reminder` can be set here, as well.
Misc section
~~~~~~~~~~~~
Under the :guilabel:`Misc.` heading, use :guilabel:`Reference` field to add any additional
information for this contact. If this contact should only be accessible for one company in a
multi-company database, select it from the :guilabel:`Company` field drop-down list. Use the
:guilabel:`Website` drop-down menu to restrict the publishing of this contact to one website (if
working on a database with multiple websites). Select one or more :guilabel:`Website Tags` to assist
in filtering published customers on the `/customers` website page. Select an :guilabel:`Industry`
for this contact from the drop-down menu. Use the :guilabel:`SLA Policies` field to assign a
*Helpdesk* SLA policy to this contact.
Accounting tab
--------------
The :guilabel:`Accounting` tab appears when the *Accounting* application is installed. Here, a user
can add any related :guilabel:`Bank Accounts`, or set default :guilabel:`Accounting entries`.
Under the :guilabel:`Miscellaneous` heading, use the :guilabel:`LEI` field to enter a Legal Entity
Identifier, if necessary.
Internal Notes tab
------------------
Following the :guilabel:`Accounting` tab is the :guilabel:`Internal Notes` tab, where notes can be
left on this contact form, just like on the contact form noted above.
Partner Assignment tab
----------------------
Next is the :guilabel:`Partner Assignment` tab, which by default, includes a :guilabel:`Geolocation`
section, and other partner options, including :guilabel:`Partner Activation` and :guilabel:`Partner
Review` configurations. These are **only** present when the *Resellers* module is installed.
.. seealso::
Follow the :doc:`Resellers documentation <../sales/crm/track_leads/resellers>` for more
information on publishing partners on the website.
Membership tab
--------------
Finally, there is the :guilabel:`Membership` tab on contact forms, which can help users manage any
memberships that are being offered to this specific contact. It should be noted that this tab
**only** appears when the *Members* application is installed.
Activate membership
~~~~~~~~~~~~~~~~~~~
To activate a contact's membership, click :guilabel:`Buy Membership` in the :guilabel:`Membership`
tab of a contact form. On the pop-up window that appears, select a :guilabel:`Membership` from the
drop-down menu. Then, configure a :guilabel:`Member Price`. Click :guilabel:`Invoice Membership`
when both fields are filled in.
Alternatively, to offer a free membership, tick the :guilabel:`Free Member` checkbox, in the
:guilabel:`Membership` tab of a contact form.
.. seealso::
Follow the :doc:`Members documentation <../sales/members>` for more information on publishing
members on the website.
Smart buttons
=============
At the top of the contact form, there are some additional options available, known as *smart
buttons*.
Here, Odoo displays a variety of records, related to this contact, that were created on other apps.
Odoo integrates information from every single app, so there are many smart buttons.
.. example::
For example, there is an :guilabel:`Opportunities` smart button, where all the opportunities
related to this customer from the *CRM* app are accessible.
.. tip::
If the corresponding applications are installed, their related smart buttons appear
automatically on a contact form.
A user can see any :guilabel:`Meetings`, :guilabel:`Sales`, :guilabel:`POS Orders`,
:guilabel:`Subscriptions`, project :guilabel:`Tasks`, and the :guilabel:`More` smart button reveals
additional options, via a drop-down menu. A user can even quickly access :guilabel:`Purchases`,
:guilabel:`Helpdesk` tasks, :guilabel:`On-time Rate` for deliveries, :guilabel:`Invoiced`
information, :guilabel:`Vendor Bills`, and the :guilabel:`Partner Ledger` connected to this contact.
Deliveries, documents, loyalty cards, and direct debits are *also* linked to smart buttons, like
this, should there be any outstanding/on-file for this contact.
If the contact is a partner, the user can visit their partner page on the Odoo-built website by
clicking the :guilabel:`Go to Website` smart button.
Archive contacts
----------------
If a user decides they no longer want to have this contact active, the record can be archived. To do
that, go to the :icon:`fa-cog` :guilabel:`Action` menu at the top of the contact form, and click
:guilabel:`Archive`.
Then, click :guilabel:`OK` from the resulting :guilabel:`Confirmation` pop-up window.
With this contact successfully archived, as indicated by a banner at the top, they do not show up
in the main contacts page, but they can still be searched for with the :guilabel:`Archived` filter.
.. tip::
A contact can be *unarchived*, if the user decides to work with them again. To do that, just
click the :icon:`fa-cog` :guilabel:`Action` menu again at the top of the archived contact form,
and click :guilabel:`Unarchive`. Upon doing so, the :guilabel:`Archived` banner is removed, and
the contact is restored.
.. seealso::
- :doc:`Add different addresses in CRM <../sales/sales/send_quotations/different_addresses>`
- `Odoo's eLearning Contacts tutorial
<https://www.odoo.com/slides/slide/contacts-2527?fullscreen=1>`_
.. toctree::
:titlesonly:
contacts/merge
Binary file not shown.

Before

Width:  |  Height:  |  Size: 28 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

@@ -1,78 +0,0 @@
==============
Merge contacts
==============
Odoo's *Contacts* application allows user's to merge duplicate contacts, without losing any
information in the process. This keeps the database organized, and prevents contacts from being
contacted by more than one salesperson.
.. _contacts/merge-duplicate:
Merge duplicate contacts
========================
.. danger::
Merging is an irreversible action. Do **not** merge contacts unless absolutely certain they
should be combined.
Navigate to the :menuselection:`Contacts app`, and select the :icon:`oi-view-list`
:guilabel:`(list)` icon. Select two or more duplicate contacts from the list, and tick the checkbox
(on the far-left) for the contacts that should be merged. Then, click the :icon:`fa-cog`
:guilabel:`Actions` icon, and select :guilabel:`Merge` from the resulting drop-down menu.
.. image:: merge/merge-menu.png
:align: center
:alt: The merge contacts option in the Contacts application.
This opens the :guilabel:`Merge` pop-up window. From here, review the details of the contacts before
confirming they should be merged. If any contacts in the list should **not** be merged, click the
:icon:`fa-times` :guilabel:`(delete)` icon at the far right of the contact.
.. tip::
Click the individual contact to open the record for that contact, and view additional
information.
.. image:: merge/merge-window.png
:align: center
:alt: The merge pop-up window in the Contacts application.
Click the :guilabel:`Destination Contact` field, and select an option from the drop-down list. This
field defaults to the contact record that was created first in the system.
After confirming the information on the pop-up window, click :guilabel:`Merge Contacts`.
Deduplicate contacts
====================
After the merge is finished, a pop-up window appears confirming it is complete. This pop-up window
also contains a :guilabel:`Deduplicate the other Contacts` button. This feature searches for
duplicated records, based on selected criteria, and merges them automatically, or after manual
approval.
Click the :guilabel:`Deduplicate the other Contacts` button to open the :guilabel:`Deduplicate
Contacts` pop-up window.
Select one or more fields to be used in the search for duplicated records. Duplicated contacts can
be searched, based on the following criteria:
- :guilabel:`Email`
- :guilabel:`Name`
- :guilabel:`Is Company`
- :guilabel:`VAT`
- :guilabel:`Parent Company`
.. note::
If more than one field is selected, only records that have **all** fields in common are suggested
as duplicates.
If necessary, select criteria to be used to exclude potential duplicates from the search. Potential
duplicates can be excluded from the search, based on the following criteria:
- :guilabel:`A user associated to the contact`
- :guilabel:`Journal Items associated to the contact`
After confirming the search criteria, click either :guilabel:`Merge with Manual Check`,
:guilabel:`Merge Automatically`, or :guilabel:`Merge Automatically all process`.
If :guilabel:`Merge with Manual Check` is selected, complete the merge by following the :ref:`steps
above <contacts/merge-duplicate>`.
Binary file not shown.

Before

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 20 KiB

@@ -2,9 +2,6 @@
Export and import data
======================
.. |list| replace:: :icon:`oi-view-list` :guilabel:`(list)` icon
.. |actions| replace:: :icon:`fa-cog` :guilabel:`Actions`
In Odoo, it is sometimes necessary to export or import data for running reports, or for data
modification. This document covers the export and import of data into and out of Odoo.
@@ -23,24 +20,25 @@ can aid in reporting on activities, although, Odoo provides a precise and easy r
each available application.
With Odoo, the values can be exported from any field in any record. To do so, activate the list view
(|list|), on the items that need to be exported, then select the records that should be exported. To
select a record, tick the checkbox next to the corresponding record. Finally, click on |actions|,
then :guilabel:`Export`.
(:guilabel:`≣ (four horizontal lines)` icon), on the items that need to be exported, and then
select the records that should be exported. To select a record, tick the checkbox next to the
corresponding record. Finally, click on :guilabel:`⚙️ Action`, and then :guilabel:`Export`.
.. image:: export_import_data/list-view-export.png
:align: center
:alt: View of the different things to enable/click to export data.
When clicking on :guilabel:`Export`, an :guilabel:`Export Data` pop-over window appears, with
several options for the data to export:
.. image:: export_import_data/export-data-overview.png
:alt: Overview of options to consider when exporting data in Odoo.
:align: center
:alt: Overview of options to consider when exporting data in Odoo..
#. With the :guilabel:`I want to update data (import-compatable export)` option ticked, the system
only shows the fields that can be imported. This is helpful in the case where the :ref:`existing
records need to be updated <essentials/update-data>`. This works like a filter. Leaving the box
unticked, gives many more field options because it shows all the fields, not just the ones that
can be imported.
only shows the fields that can be imported. This is helpful in the case where the existing
records need to be updated. This works like a filter. Leaving the box unticked, gives many more
field options because it shows all the fields, not just the ones that can be imported.
#. When exporting, there is the option to export in two formats: `.csv` and `.xls`. With `.csv`,
items are separated by a comma, while `.xls` holds information about all the worksheets in a
file, including both content and formatting.
@@ -72,8 +70,7 @@ Import data into Odoo
=====================
Importing data into Odoo is extremely helpful during implementation, or in times where data needs to
be :ref:`updated in bulk <essentials/update-data>`. The following documentation covers how to import
data into an Odoo database.
be updated in bulk. The following documentation covers how to import data into an Odoo database.
.. warning::
Imports are permanent and **cannot** be undone. However, it is possible to use filters (`created
@@ -85,6 +82,7 @@ data into an Odoo database.
options: :guilabel:`Track history during import` and :guilabel:`Allow matching with subfields`.
.. image:: export_import_data/advanced-import.png
:align: center
:alt: Advanced import options when developer mode is activated.
If the model uses openchatter, the :guilabel:`Track history during import` option sets up
@@ -93,8 +91,6 @@ data into an Odoo database.
Should the :guilabel:`Allow matching with subfields` option be selected, then all subfields
within a field are used to match under the :guilabel:`Odoo Field` while importing.
.. _essentials/export_import_data/get-started:
Get started
-----------
@@ -102,32 +98,30 @@ Data can be imported on any Odoo business object using either Excel (`.xlsx`) or
(Comma-separated Values)` (`.csv`) formats. This includes: contacts, products, bank statements,
journal entries, and orders.
Open the view of the object to which the data should be imported/populated, click the :icon:`fa-cog`
(:guilabel:`gear`) icon and select :guilabel:`Import records`.
Open the view of the object to which the data should be imported/populated, and click on
:menuselection:`⚙️ (Action) --> Import records`.
.. image:: export_import_data/import-button.png
:align: center
:alt: Action menu revealed with the import records option highlighted.
Click :icon:`fa-download`:guilabel:`Import Template for Customers` at the center of the page to
download a :ref:`template <essentials/export_import_data/adapt-a-template>` and populate it with
the company's own data. Such templates can be imported in one click since the data mapping is
already preconfigured.
After clicking :guilabel:`Import records`, Odoo reveals a separate page with templates that can be
downloaded and populated with the company's own data. Such templates can be imported in one click,
since the data mapping is already done. To download a template click :guilabel:`Import Template for
Customers` at the center of the page.
To upload the downloaded template or your own file, follow the next steps:
.. important::
When importing a :abbr:`CSV (Comma-separated Values)` file, Odoo provides :guilabel:`Formatting`
options. These options do **not** appear when importing the proprietary Excel file type (`.xls`,
`.xlsx`).
#. Click :guilabel:`Upload Data File` and select the desired file.
#. Adjust the :guilabel:`Formatting` options as needed (for CSV files only).
#. Ensure all data in the :guilabel:`File Column` is correctly mapped to the appropriate
:guilabel:`Odoo Field` and free of errors.
#. (Optional) Click :guilabel:`Load Data File` to reload the same file or upload a different one.
#. Click :guilabel:`Test` to verify that the data is valid.
#. Click :guilabel:`Import`.
.. image:: export_import_data/formatting.png
:align: center
:alt: Formatting options presented when a CVS file is imported in Odoo.
.. note::
The :guilabel:`Formatting` options do **not** appear when importing the proprietary Excel file
type (i.e., `.xls` or `.xlsx`).
.. _essentials/export_import_data/adapt-a-template:
Make necessary adjustments to the *Formatting* options, and ensure all columns in the
:guilabel:`Odoo field` and :guilabel:`File Column` are free of errors. Finally, click
:guilabel:`Import` to import the data.
Adapt a template
----------------
@@ -145,6 +139,7 @@ Once the template is downloaded, proceed to follow these steps:
(ID) column.
.. image:: export_import_data/dragdown.gif
:align: center
:alt: An animation of the mouse dragging down the ID column, so each record has a unique ID.
.. note::
@@ -153,6 +148,7 @@ Once the template is downloaded, proceed to follow these steps:
Search the drop-down menu for the corresponding field.
.. image:: export_import_data/field_list.png
:align: center
:alt: Drop-down menu expanded in the initial import screen on Odoo.
Then, use this field's label in the import file to ensure future imports are successful.
@@ -162,9 +158,6 @@ Once the template is downloaded, proceed to follow these steps:
using the fields that should be imported. This way, if there is not a sample import template,
the names are accurate.
.. _essentials/external-id:
Import from another application
-------------------------------
@@ -173,8 +166,7 @@ from previous software to facilitate the transition to Odoo.
Setting an ID is not mandatory when importing, but it helps in many cases:
- :ref:`Update imports <essentials/update-data>`: import the same file several times without
creating duplicates.
- Update imports: import the same file several times without creating duplicates.
- :ref:`Import relation fields <export_import_data/relation-fields>`.
To recreate relationships between different records, the unique identifier from the original
@@ -184,7 +176,10 @@ When another record is imported that links to the first one, use **XXX/ID** (XXX
the original unique identifier. This record can also be found using its name.
.. warning::
It should be noted that conflicts occur if two (or more) records have the same *External ID*.
It should be noted that there will be a conflict if two or more records have the same name.
The :guilabel:`External ID` (ID) can also be used to update the original import, if modified data
needs to be re-imported later, therefore, it is a good practice to specify it whenever possible.
Field missing to map column
---------------------------
@@ -202,6 +197,7 @@ If this happens, check the :guilabel:`Show fields of relation fields (advanced)
complete list of fields becomes available for each column.
.. image:: export_import_data/field_list.png
:align: center
:alt: Searching for the field to match the tax column.
Change data import format
@@ -399,33 +395,6 @@ respective contacts:
- :download:`Customers and their respective contacts
<export_import_data/o2m_customers_contacts.csv>`
Import image files
------------------
To import image files along with the :ref:`uploaded <essentials/export_import_data/get-started>`
CSV or Excel file, follow the next steps:
#. Add the image file names to the relevant :guilabel:`Image` column in the data file.
#. :ref:`Upload the data file <essentials/export_import_data/get-started>` or reload it by
clicking :guilabel:`Load Data File`.
#. Click :guilabel:`Upload your files` under the :guilabel:`Files to import` section.
#. Select the relevant image files. The number of files selected appears next to the button.
#. Click :guilabel:`Test` to verify that all data is valid.
#. Click :guilabel:`Import`. During the import process, Odoo performs a file check to automatically
link the uploaded images to the imported data file. If there is no match, the data file is
imported without any image.
.. note::
- The :guilabel:`Files to import` section is enabled if your product template has an
:guilabel:`Image` column with all fields populated.
- The image file names in the data file must correspond to the uploaded image files.
- When importing a large number of images, you can specify the maximum batch size in megabytes
and set a delay to prevent the system from becoming overloaded. To do so, :doc:`enable the
developer mode <../general/developer_mode>` and fill in the :guilabel:`Max size per
batch` and the :guilabel:`Delay after each batch` fields in the :guilabel:`Files to import`
section. By default, the delay meets the RPC/API call limit defined in the `Odoo Cloud -
Acceptable Use Policy <https://www.odoo.com/acceptable-use>`_.
Import records several times
----------------------------
@@ -507,43 +476,3 @@ The two files produced are ready to be imported in Odoo without any modification
imported these two :abbr:`CSV (Comma-separated Values)` files, there are four contacts and three
companies (the first two contacts are linked to the first company). Keep in mind to first import
the companies, and then the people.
.. _essentials/update-data:
Update data in Odoo
===================
Existing data can be updated in bulk through a data import, as long as the :ref:`External ID
<essentials/external-id>` remains consistent.
Prepare data export
-------------------
To update data through an import, first navigate to the data to be updated, and select the |list| to
activate list view. On the far-left side of the list, tick the checkbox for any record to be
updated. Then, click |actions|, and select :icon:`fa-upload` :guilabel:`Export` from the drop-down
menu.
On the resulting :guilabel:`Export Data` pop-up window, tick the checkbox labeled, :guilabel:`I want
to update data (import-compatible export)`. This automatically includes the *External ID* in the
export. Additionally, it limits the :guilabel:`Fields to export` list to **only** include fields
that are able to be imported.
.. note::
The :guilabel:`External ID` field does **not** appear in the :guilabel:`Fields to export` list
unless it is manually added, but it is still included in the export. However, if the :guilabel:`I
want to update data (import-compatible export)` checkbox is ticked, it is included in the export.
Select the required fields to be included in the export using the :ref:`options <export-data>` on
the pop-up window, then click :guilabel:`Export`.
Import updated data
-------------------
After exporting, make any necessary changes to the data file. When the file is ready, it can be
:ref:`imported <import-data>` by following the same process as a normal data import.
.. danger::
When updating data, it is extremely important that the *External ID* remain consistent, as
this is how the system identifies a record. If an ID is altered, or removed, the system may add a
duplicate record, instead of updating the existing one.
@@ -1,6 +1,6 @@
======================
In-app purchases (IAP)
======================
=====================
In-app purchase (IAP)
=====================
.. |IAP| replace:: :abbr:`IAP (In-app purchases)`
@@ -22,9 +22,7 @@ the service in the app to activate it. However, each service requires its own pr
when they run out, users **must** :ref:`buy more <iap/buying_credits>` in order to keep using it.
.. note::
Enterprise Odoo users with a valid subscription get free credits to test IAP features before
deciding to purchase more credits for the database. This includes demo/training databases,
educational databases, and one-app-free databases.
Users with an Enterprise version of Odoo Online get free credits to test IAP features.
.. _in_app_purchase/portal:
@@ -33,7 +31,7 @@ IAP services
|IAP| services are provided by Odoo, as well as third-parties, and have a wide range of uses.
The following |IAP| services are offered by Odoo:
The following |IAP| services are provided by Odoo:
- :guilabel:`Documents Digitization`: digitizes scanned or PDF vendor bills, expenses, and resumes
with OCR and AI.
@@ -42,12 +40,9 @@ The following |IAP| services are offered by Odoo:
- :guilabel:`Lead Generation`: generates leads based on a set of criteria, and converts web visitors
into quality leads and opportunities.
- :guilabel:`Snailmail`: sends customer invoices and follow-up reports by post, worldwide.
- :guilabel:`Signer identification with itsme®️`: ask document signatories in Odoo *Sign* to provide
their identity using the *itsme®* identity platform, which is available in Belgium and the
Netherlands.
For more information on every service currently available (offered from developers other than Odoo),
visit the `Odoo IAP Catalog <https://iap.odoo.com/iap/all-in-app-services>`_.
For more information on every service currently available, visit the `Odoo IAP Catalog
<https://iap.odoo.com/iap/all-in-app-services>`_.
Use IAP services
----------------
@@ -58,7 +53,7 @@ settings. To use a service, simply interact with it wherever it appears in the d
.. example::
The following flow focuses on the *SMS* |IAP| service being used from a contact's record.
This can be done by clicking the :guilabel:`📱 SMS` icon within the database.
This can be done by clicking the :guilabel:`📱 (phone) SMS` icon within the database.
.. image:: in_app_purchase/sms-icon.png
:align: center
@@ -66,17 +61,16 @@ settings. To use a service, simply interact with it wherever it appears in the d
One way to utilize the *SMS* |IAP| service with Odoo is showcased in the following steps:
First, navigate to the :menuselection:`Contacts application`, and click on a contact with a
mobile phone number entered in either the :guilabel:`Phone` or :guilabel:`Mobile` field of the
contact form.
Next, find the :guilabel:`📱 SMS` icon that appears to the right of the :guilabel:`Phone` or
:guilabel:`Mobile` fields. Click the :guilabel:`📱 SMS` icon, and a :guilabel:`Send SMS Text
Message` pop-up window appears.
Type a message in the :guilabel:`Message` field of the pop-up window. Then, click the
:guilabel:`Send SMS` button. Odoo then sends the message, via SMS, to the contact, and logs what
was sent in the *chatter* of the contact's form.
#. Navigate to the :menuselection:`Contacts application`, and click on a contact with a mobile
phone number entered in either the :guilabel:`Phone` or :guilabel:`Mobile` field of the
contact form.
#. Hover the mouse over the :guilabel:`Phone` or :guilabel:`Mobile` field, and a :guilabel:`📱
(phone) SMS` icon appears to the right.
#. Click the :guilabel:`📱 (phone) SMS` icon, and a :guilabel:`Send SMS Text Message` pop-up
window appears.
#. Type a message in the :guilabel:`Message` field of the :guilabel:`Send SMS Text Message`
pop-up window. Then, click the :guilabel:`Send SMS` button. Odoo then sends the message, via
SMS, to the contact, and logs what was sent in the *chatter* of the contact's form.
Upon sending the SMS message, the prepaid credits for the *SMS* |IAP| service are automatically
deducted from the existing credits. If there are not enough credits to send the message, Odoo
@@ -86,10 +80,10 @@ settings. To use a service, simply interact with it wherever it appears in the d
For more information on how to use various |IAP| services, and for more in-depth instructions
related to SMS functionality in Odoo, review the documentation below:
- :doc:`Lead mining <../sales/crm/acquire_leads/lead_mining>`
- :doc:`Lead mining </applications/sales/crm/acquire_leads/lead_mining>`
- :doc:`Enrich your contacts base with Partner Autocomplete
<../sales/crm/optimize/partner_autocomplete>`
- :doc:`SMS Marketing <../marketing/sms_marketing>`
</applications/sales/crm/optimize/partner_autocomplete>`
- :doc:`SMS essentials </applications/marketing/sms_marketing/essentials/sms_essentials>`
.. _in_app_purchase/credits:
@@ -119,7 +113,7 @@ Credits are purchased in *Packs* from the `Odoo IAP Catalog
The number of credits consumed depends on the length of the SMS and the country of destination.
For more information, refer to the :doc:`SMS Pricing and FAQ
<../marketing/sms_marketing/pricing_and_faq>` documentation.
</applications/marketing/sms_marketing/pricing/pricing_and_faq>` documentation.
.. _iap/buying_credits:
@@ -130,10 +124,9 @@ If there are not enough credits to perform a task, the database automatically pr
of more credits.
Users can check the current balance of credits for each service, and manually purchase more credits,
by navigating to the :menuselection:`Settings app --> Contacts section`, and beneath the
:guilabel:`Odoo IAP` setting, click :guilabel:`View My Services`.
by navigating to the :menuselection:`Settings app --> Search IAP --> View My Services`.
Doing so reveals an :guilabel:`IAP Service` page, listing the various |IAP| services in the
Doing so reveals an :guilabel:`IAP Account` page, listing the various |IAP| services in the
database. From here, click an |IAP| service to open its :guilabel:`Account Information` page, where
additional credits can be purchased.
@@ -142,29 +135,32 @@ Manually buy credits
To manually buy credits in Odoo, follow these steps:
First, go to the :menuselection:`Settings application` and type `IAP` in the :guilabel:`Search...`
bar. Alternatively users can scroll down to the :guilabel:`Contacts` section. Under the
:guilabel:`Contacts` section, where it says :guilabel:`Odoo IAP`, click :guilabel:`View My
Services`.
#. Go to the :menuselection:`Settings application`.
#. Type `IAP` in the search bar.
#. Click :guilabel:`View My Services`.
.. image:: in_app_purchase/view-services.png
:align: center
:alt: The Settings app showing the Odoo IAP heading and View My Services button.
.. image:: in_app_purchase/view-services.png
:align: center
:alt: The Settings app showing the Odoo IAP heading and View My Services button.
Doing so reveals an :guilabel:`IAP Account` page, listing the various |IAP| services in the
database. From here, click an |IAP| service to open its :guilabel:`Account Information` page, where
additional credits can be purchased.
#. Doing so reveals an :guilabel:`IAP Account` page, listing the various |IAP| services in the
database. From here, click an |IAP| service to open its :guilabel:`Account Information` page,
where additional credits can be purchased.
#. On the :guilabel:`Account Information` page, click the :guilabel:`Buy Credit` button.
On the :guilabel:`Account Information` page, click the :guilabel:`Buy Credit` button. Doing so loads
a :guilabel:`Buy Credits for (IAP Account)` page in a new tab. From here, click :guilabel:`Buy` on
the desired pack of credits. Then, follow the prompts to enter payment details, and confirm the
order.
.. image:: in_app_purchase/account-info.png
:align: center
:alt: The Account Information page for an IAP service showing the Buy Credit button.
.. image:: in_app_purchase/buy-pack.png
:align: center
:alt: The SMS service page on IAP.Odoo.com with four packs of credits available for purchase.
#. Doing so loads a :guilabel:`Buy Credits for (IAP Account)` page in a new tab. From here, click
:guilabel:`Buy` on the desired pack of credits. Then, follow the prompts to enter payment
details, and confirm the order.
Once the transaction is complete, the credits are available for use in the database.
.. image:: in_app_purchase/buy-pack.png
:align: center
:alt: The SMS service page on IAP.Odoo.com with four packs of credits available for purchase.
#. Once the transaction is complete, the credits are available for use in the database.
.. _in_app_purchase/low-credits:
@@ -174,19 +170,23 @@ Low-credit notification
It is possible to be notified when credits are low, in order to avoid running out of credits, while
using an |IAP| service. To do that, follow this process:
Go to the :menuselection:`Settings application`, and type `IAP` in the :guilabel:`Search...` bar.
Under the :guilabel:`Contacts` section, where it says :guilabel:`Odoo IAP`, click :guilabel:`View My
Services`.
#. Go to the :menuselection:`Settings application`.
#. Type `IAP` in the search bar.
#. Click :guilabel:`View My Services`.
#. The available |IAP| accounts appear in a list view on the :guilabel:`IAP Account` page. From
here, click on the desired |IAP| account to view that service's :guilabel:`Account Information`
page.
#. On the :guilabel:`Account Information` page, tick the :guilabel:`Warn Me` box. Doing so reveals
two fields on the form: :guilabel:`Threshold` and :guilabel:`Warning Email`.
The available |IAP| accounts appear in a list view on the :guilabel:`IAP Account` page. From here,
click on the desired |IAP| account to view that service's :guilabel:`Account Information` page.
.. image:: in_app_purchase/low-credits.png
:align: center
:alt: Odoo will send an email alert when credits for this service fall below the threshold.
On the :guilabel:`Account Information` page, tick the :guilabel:`Warn Me` checkbox. Doing so reveals
two fields on the form: :guilabel:`Threshold` and :guilabel:`Warning Email`.
In the :guilabel:`Threshold` field, enter an amount of credits Odoo should use as the
minimum threshold for this service. In the :guilabel:`Warning Email` field, enter the email address
that receives the notification.
#. In the :guilabel:`Threshold` field, enter an amount of credits Odoo should use as the minimum
threshold for this service.
#. In the :guilabel:`Warning Email` field, enter the email address that should receive the
notification.
Odoo sends a low-credit alert to the :guilabel:`Warning Email` when the balance of credits falls
below the amount listed as the :guilabel:`Threshold`.
Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.7 KiB

After

Width:  |  Height:  |  Size: 8.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 36 KiB

After

Width:  |  Height:  |  Size: 35 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 73 KiB

After

Width:  |  Height:  |  Size: 28 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.4 KiB

After

Width:  |  Height:  |  Size: 3.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 19 KiB

After

Width:  |  Height:  |  Size: 57 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.1 KiB

After

Width:  |  Height:  |  Size: 9.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.9 KiB

After

Width:  |  Height:  |  Size: 12 KiB

@@ -1,86 +0,0 @@
==================
Keyboard shortcuts
==================
Users in Odoo can utilize several keyboard shortcuts to navigate through modules, execute actions,
and manage data.
.. tip::
Hold :kbd:`Ctrl` to view the keyboard shortcuts assigned to each element on the interface.
.. image:: keyboard_shortcuts/menu-shortcuts.png
:align: center
:alt: A selection of keyboard shortcuts in Odoo.
.. important::
Some keyboard shortcuts may not be available on different versions of Odoo or effective depending
on browsers, extensions, or other individual settings.
Keyboard shortcuts by operating system
======================================
Below is a list of some of the most commonly used keyboard shortcuts within Odoo, listed by
operating system.
.. list-table::
:header-rows: 1
:stub-columns: 1
* - Description
- Windows / Linux
- macOS
* - Previous breadcrumb
- :kbd:`Alt` + :kbd:`B`
- :kbd:`Ctrl` + :kbd:`B`
* - Create new record
- :kbd:`Alt` + :kbd:`C`
- :kbd:`Ctrl` + :kbd:`C`
* - Odoo Home Page
- :kbd:`Alt` + :kbd:`H`
- :kbd:`Ctrl` + :kbd:`H`
* - Discard changes
- :kbd:`Alt` + :kbd:`J`
- :kbd:`Ctrl` + :kbd:`J`
* - Save changes
- :kbd:`Alt` + :kbd:`S`
- :kbd:`Ctrl` + :kbd:`S`
* - Next page
- :kbd:`Alt` + :kbd:`N`
- :kbd:`Ctrl` + :kbd:`N`
* - Previous page
- :kbd:`Alt` + :kbd:`P`
- :kbd:`Ctrl` + :kbd:`P`
* - Search
- :kbd:`Alt` + :kbd:`Q`
- :kbd:`Ctrl` + :kbd:`Q`
* - Select menus
- :kbd:`Alt` + :kbd:`1-9`
- :kbd:`Ctrl` + :kbd:`1-9`
* - Create a new To-Do
- :kbd:`Alt` + :kbd:`Shift` + :kbd:`T`
- :kbd:`Ctrl` + :kbd:`Shift` + :kbd:`T`
* - Search a Knowledge article
- :kbd:`Alt` + :kbd:`F`
- :kbd:`Ctrl` + :kbd:`F`
* - Share a Knowledge article
- :kbd:`Alt` + :kbd:`Shift` + :kbd:`S`
- :kbd:`Ctrl` + :kbd:`Shift` + :kbd:`S`
* - Open command palette
- :kbd:`Ctrl` + :kbd:`K`
- :kbd:`Command` + :kbd:`K`
.. tip::
After opening the command palette, search using the following keyboard shortcuts:
- :kbd:`/`: search for menus, applications, and modules.
- :kbd:`@`: search for users.
- :kbd:`#`: search for **Discuss** channels.
- :kbd:`?`: search for **Knowledge** articles.
Enter a name (or term) in the search bar, or use the arrow keys to scroll through the available
options. Then, click :kbd:`Ctrl` + :kbd:`Enter` to open the selected app, module, or menu in a
new tab.
.. image:: keyboard_shortcuts/command-palete.png
:align: center
:alt: The command palette in Odoo, with the menu search option selected.
Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.7 KiB

+61 -244
View File
@@ -1,283 +1,100 @@
=================================
Search, filter, and group records
=================================
=========================
Search and filter records
=========================
Odoo allows for the searching, filtering, and grouping of records in a view to display only the most
relevant records. The search bar is located at the top of the view, start typing to :ref:`search for
values <search/values>`, or click the :guilabel:`🔽 (down arrow)` icon to access the :ref:`Filter
<search/filters>`, :ref:`Group By <search/group>`, and :ref:`Favorites <search/favorites>` drop-down
menus.
.. _search/values:
Search for values
=================
Use the search field to quickly look for specific values, and add them as a filter. Type the value
to search for, and select the desired option from the drop-down menu to apply the search filter.
.. example::
Instead of adding a :ref:`custom filter <search/custom-filters>` to select records where
*Mitchell Admin* is the salesperson on the *Sales Analysis* report (:menuselection:`Sales app -->
Reporting --> Sales`), search for `Mitch`, and click the :guilabel:`⏵ (right arrow)` next to
:guilabel:`Search Salesperson for: Mitch`, and select :guilabel:`Mitchell Admin`.
.. image:: search/search-values.png
:align: center
:alt: Searching for a specific value on the Sales Analysis report
.. note::
Using the search field is equivalent to using the *contains* operator when adding a :ref:`custom
filter <search/custom-filters>`. If a partial value is entered, and the desired field is directly
selected (without selecting the :guilabel:`⏵ (right arrow)`), *all* records containing the typed
characters for the selected field are included.
.. _search/filters:
Filters
=======
Filters are used to select records that meet specific criteria. The default selection of records is
specific to each view, but can be modified by selecting one (or several) :ref:`preconfigured filters
<search/preconfigured-filters>`, or by adding a :ref:`custom filter <search/custom-filters>`.
Odoo uses filters to include only the most relevant records depending on the purpose of the view you
are on. However, you can edit the default filter or search for specific values.
.. _search/preconfigured-filters:
Preconfigured filters
---------------------
=====================
Modify the default selection of records by clicking the :guilabel:`🔽 (down arrow)` icon from the
search bar, and selecting one (or several) *preconfigured filters* from the :guilabel:`Filters`
drop-down menu.
You can modify the default selection of records by clicking :guilabel:`Filters` and selecting one or
several **preconfigured filters**.
.. example::
On the *Sales Analysis* report (:menuselection:`Sales app --> Reporting --> Sales`), only records
that are at the *sales order* stage, with an *order date* within the last 365 days, are selected
by default.
To also include records at the *quotation* stage, select :guilabel:`Quotations` from the
:guilabel:`Filters`.
Furthermore, to *only* include sales order and quotation records from a specific year, like
2024, for example, first remove the existing `Order Date: Last 365 Days` filter, by clicking the
:guilabel:`❌ (remove)` icon, then select :menuselection:`Order Date --> 2024`.
On the Sales Analysis report, only records at the sales order stage are selected by default.
However, you could *also* include records at the quotation stage by selecting
:guilabel:`Quotations`. Furthermore, you could *only* include records from a specific year, for
example *2022*, by selecting :menuselection:`Order Date --> 2022`.
.. image:: search/preconfigured-filters.png
:align: center
:alt: Using preconfigured filters on the Sales Analysis report
.. note::
The preconfigured :guilabel:`Filters` are grouped, and each group is separated by a horizontal
line. Selecting preconfigured filters from the same group allows records to match *any* of the
applied conditions. However, selecting filters from different groups requires records to match
*all* of the applied conditions.
If you select preconfigured filters from the same group (i.e., that are *not* separated by an
horizontal line), the records can match *any* condition to be included. However, if you select
filters from different groups, the records have to match *all* condition to be included.
.. _search/custom-filters:
Custom filters
--------------
==============
If the :ref:`preconfigured filters <search/preconfigured-filters>` are not specific enough, add a
custom filter. To do so, click the :guilabel:`🔽 (down arrow)` icon in the search bar, then select
:menuselection:`Filters --> Add Custom Filter`.
The :guilabel:`Add Custom Filter` pop-up window displays the matching option, filter rule, and a
toggle to :guilabel:`Include archived` records.
.. image:: search/custom-filter.png
:align: center
:alt: The Add Custom Filter pop-up window.
The default matching configuration is to :guilabel:`Match any of the following rules`, indicating
that each filter rule is applied independently. To change the matching configuration to
:guilabel:`Match all of the following rules`, at least two filter rules must be added to the custom
filter.
- :guilabel:`Match all 🔽 of the following rules`: **all** of the filter rules must be met.
Logically, this is an *AND* (`&`) operation.
- :guilabel:`Match any 🔽 of the following rules`: **any** of the filter rules can be met.
Logically, this is an *OR* (`|`) operation.
By default, a single filter rule is added to the custom filter. The following describes the
structure of a filter rule:
#. The first inline field is the *field name* to filter by. Some fields have refined parameters that
are nested within another field. These fields have an :guilabel:`> (arrow)` icon beside them,
which can be selected to reveal the nested fields.
#. The second inline field is the conditional *operator* used to compare the field name to the
value. The :ref:`available conditional operators <reference/orm/domains>` are specific to the
field's data type.
#. The third inline field is the variable *value* of the field name. The value input may appear as a
drop-down menu, a text input, a number input, a date/time input, a boolean selector, or it may be
blank, depending on the operator used and the field's data type.
Three inline buttons are also available to the right of the rule's filter criteria:
#. :guilabel:` (plus sign)`: adds a new rule below the existing rule.
#. :guilabel:`(Add branch)`: adds a new group of rules below the existing rule, with the
:guilabel:`any` and :guilabel:`all` matching options available to define how each rule within
this branch is applied to the filter. If the matching option is set to the same as the parent
group, the fields are moved to join the parent group.
.. example::
If the matching option is set to :guilabel:`Match all 🔽 of the following rules`, and a new
branch is added with its matching option changed from :guilabel:`any 🔽 of` to :guilabel:`all
🔽 of`, the newly-added branch disappears, and its group of rules are moved to the parent
group.
#. :guilabel:`🗑️ (garbage can)`: deletes the node. If a branch node is deleted, all children of
that node are deleted, as well.
A new filter rule can be added to the custom filter by clicking the :guilabel:`New Rule` button.
Once the filter criteria are defined, click :guilabel:`Add` to add the custom filter to the view.
You can create custom filters using most fields present on the model by clicking
:menuselection:`Filters --> Add Custom Filter`, selecting a field, an operator, a value, and
clicking :guilabel:`Apply`.
.. example::
To target all leads and opportunities from the :menuselection:`CRM` app that are in the *Won*
stage, and have an expected revenue greater than $1,000, the following should be entered:
You could *only* include records from a single salesperson on the Sales Analysis report, for
example *Mitchell Admin*, by selecting :guilabel:`Salesperson` as the field, :guilabel:`is equal
to` as the operator, and typing `Mitchell Admin` as the value.
:guilabel:`Match all 🔽 (down arrow) of the following rules:`
#. :guilabel:`Stage` :guilabel:`is in` :guilabel:`Won`
#. :guilabel:`Expected Revenue` :guilabel:`>` `1,000`
#. :guilabel:`any 🔽 (down arrow)` :guilabel:`of:`
- :guilabel:`Type` :guilabel:`=` :guilabel:`Lead`
- :guilabel:`Type` :guilabel:`=` :guilabel:`Opportunity`
.. image:: search/custom-filter-example.png
.. image:: search/custom-filter.png
:align: center
:alt: Adding a custom filter to filter specific records in CRM.
:alt: Using a custom filter on the Sales Analysis report
.. tip::
Activate :ref:`developer-mode` to reveal each field's technical name and data type, as well as
the :guilabel:`# Code editor` text area below the filter rules, to view and edit the domain
manually.
.. note::
If the records should *only* match one of several conditions, click :guilabel:`Add a condition`
before applying a custom filter. If the records should match *all* conditions, add new custom
filters instead.
.. _search/values:
Search for values
=================
You can use the search field to quickly look for specific values and add them as a filter. Either
type the full value you are searching for and select the desired field, or type a part of the
value, click the dropdown button (:guilabel:`⏵`) before the chosen field, and select the exact
value you are looking for.
.. example::
Instead of adding a custom filter to select records where *Mitchell Admin* is the salesperson on
the Sales Analysis report, you could search for `Mitch`, click the dropdown button
(:guilabel:`⏵`) next to :guilabel:`Search Salesperson for: Mitch`, and select
:guilabel:`Mitchell Admin`.
.. image:: search/search-values.png
:align: center
:alt: Searching for a specific value on the Sales Analysis report
.. note::
Using the search field is equivalent to using the *contains* operator when adding a custom
filter. If you enter a partial value and directly select the desired field, *all* records
containing the characters you typed for the selected field will be included.
.. _search/group:
Group records
=============
The display of records in a view can be clustered together, according to one of the *preconfigured
groups*. To do so, click the :guilabel:`🔽 (down arrow)` icon in the search bar, then select one of
the :guilabel:`Group By` options from the drop-down menu.
You can click :guilabel:`Group By` below the search field to cluster records together according to
one of the **preconfigured groups**.
.. example::
To group the records by salesperson on the *Sales Analysis* report (:menuselection:`Sales app -->
Reporting --> Sales`), click the :guilabel:`Salesperson` option from the :guilabel:`Group By`
drop-down menu. The view changes to group the records by salesperson, without filtering out any
records.
You could group the records by salesperson on the Sales Analysis report by clicking
:guilabel:`Group By` and selecting :guilabel:`Salesperson`. No records are filtered out.
.. image:: search/group.png
:align: center
:alt: Grouping records on the Sales Analysis report
It is possible to *customize groups* by using a field present on the model. To do so, click
:menuselection:`Add Custom Group`, and select a field from the drop-down menu.
You can **customize groups** by using a wide selection of fields present on the model. To do so,
click :menuselection:`Group By --> Add Custom Group`, select a field, and click :guilabel:`Apply`.
.. note::
Several groups can be used at the same time. The first group that is selected is the main
cluster, the next one that is added further divides the main group's categories, and so on.
Furthermore, filters and groups can be used together to refine the view even more.
.. _search/comparison:
Comparison
==========
Certain reporting dashboards include a :guilabel:`Comparison` section in the drop-down menus of
their :guilabel:`Search...` bars. This includes the :doc:`Overall Equipment Effectiveness
<../inventory_and_mrp/manufacturing/reporting/oee>` report for the *Manufacturing* app, and the
:doc:`Purchase <../inventory_and_mrp/purchase/advanced/analyze>` report for the *Purchase* app,
among others.
The options in the :icon:`fa-adjust` :guilabel:`Comparison` section are used to compare data from
two different time periods. There are two comparison options to choose from: :guilabel:`(Time
Filter): Previous Period` and :guilabel:`(Time Filter): Previous Year`.
.. important::
For some reports, the :guilabel:`Comparison` section **only** appears in the
:guilabel:`Search...` bar drop-down menu if one (or more) time periods have been selected in the
:guilabel:`Filters` column. This is because, if no time period is specified, there is nothing to
compare.
Additionally, some reports only allow use of the :guilabel:`Comparison` feature when the
:icon:`fa-pie-chart` :guilabel:`(pie chart)` graph type, or the :icon:`oi-view-pivot`
:guilabel:`(pivot)` view, is selected. A :guilabel:`Comparison` option can be selected even if
another view is enabled, but doing so does **not** change the way data is displayed on the
report.
.. image:: search/comparison-section.png
:align: center
:alt: The Search... bar for the production analysis report.
To view data using one of the two comparisons, begin by selecting a time period in the
:guilabel:`Filters` column of the :guilabel:`Search...` bar drop-down menu. Then, select either
:guilabel:`(Time Filter): Previous Period` or :guilabel:`(Time Filter): Previous Year` in the
:guilabel:`Comparison` section.
With one of the :guilabel:`Comparison` options enabled, the report compares the data for the
selected period, with the data for the same unit of time (month, quarter, year), one period or year
prior. The way the data is displayed depends on the selected view:
- The :icon:`fa-bar-chart` :guilabel:`(bar chart)` shows two bars, side-by-side, for each unit of
time for the selected time period. The left bar represents the selected time period, while the
right bar represents the previous time period.
- The :icon:`fa-line-chart` :guilabel:`(line chart)` is displayed with two lines, one representing
the selected time period, and the other representing the previous time period.
- The :icon:`fa-pie-chart` :guilabel:`(pie chart)` appears as a large circle with a smaller circle
inside. The larger circle represents the selected time period, while the smaller circle represents
the previous time period.
- The :icon:`oi-view-pivot` :guilabel:`(pivot table)` is displayed with each column split into two
smaller columns. The right column represents the selected time period, while the left column
represents the previous time period.
.. example::
In the :guilabel:`Production Analysis` report of the :menuselection:`Manufacturing` app, data for
the second quarter of 2024 is compared to data for the second quarter of 2023. :guilabel:`Q2` is
selected in the :guilabel:`End Date` filter section of the :guilabel:`Search...` bar drop-down
menu. In the :guilabel:`Comparison` section, :guilabel:`End Date: Previous Year` is selected.
The current year is 2024, so the larger circle shows data for the second quarter (Q2) of 2024.
The smaller circle shows data for the second quarter (Q2) of 2023, which is the same time period,
but one *year* prior.
If :guilabel:`End Date: Previous Period` is selected instead, the smaller circle shows data for
the first quarter (Q1) of 2024, which is the same time period, but one *period* prior.
.. image:: search/comparison.png
:align: center
:alt: The comparison view of the Production Analysis report.
.. _search/favorites:
Favorites
=========
Favorites are a way to save a specific search for future use, or as the new default filter for the
view.
To save the current view as a favorite, click the :guilabel:`🔽 (down arrow)` icon in the search
bar, then select the :guilabel:`Save current search` drop-down menu to display the following
options:
- Filter name: name of the favorited search.
- :guilabel:`Default filter`: sets the favorited search as the default filter for the view.
- :guilabel:`Shared`: makes the favorited search available to all users. By default, the favorited
search is only available to the user who created it.
Once the options are set, click :guilabel:`Save` to save the favorited search.
.. image:: search/favorites.png
:align: center
:alt: Saving a favorite search on the Sales Analysis report
Saved favorites can be accessed by clicking the :guilabel:`🔽 (down arrow)` icon in the search bar,
then selecting the saved filter in the :guilabel:`Favorites` drop-down menu. To remove a saved
favorite, click the :guilabel:`🗑️ (garbage can)` icon next to the favorited search.
.. tip::
To view *all* favorited searches, first activate :ref:`developer-mode`, and navigate to
:menuselection:`Settings app --> Technical --> User Interface: User-defined Filters`. From here,
all favorited searches can be viewed, edited, archived, or deleted.
You can use several groups at the same time. The first group you select is the main cluster, the
next one you add further divides the main group's categories, and so on.
Binary file not shown.

Before

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 31 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 10 KiB

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 24 KiB

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.0 KiB

After

Width:  |  Height:  |  Size: 16 KiB

+1 -3
View File
@@ -76,8 +76,6 @@ expense either when the transaction occurs (accrual basis) or when the payment i
.. seealso::
:doc:`Cash basis <accounting/taxes/cash_basis>`
.. _accounting/multi-company:
Multi-company
=============
@@ -211,7 +209,7 @@ available methods are standard price, average price, :abbr:`LIFO (Last-In, First
:abbr:`FIFO (First-In, First-Out).`
.. seealso::
:doc:`../inventory_and_mrp/inventory/product_management/inventory_valuation/inventory_valuation_config`
:doc:`../inventory_and_mrp/inventory/warehouses_storage/inventory_valuation/inventory_valuation_config`
Retained earnings
=================
@@ -4,7 +4,7 @@
Bank and cash accounts
======================
You can manage as many bank or cash accounts as needed on your database. Configuring them correctly
You can manage as many bank or cash accounts as needed on your database. Configuring them well
allows you to have all your banking data up-to-date and ready for :doc:`reconciliation
<bank/reconciliation>` with your journal entries.
@@ -21,32 +21,29 @@ which include action buttons.
.. image:: bank/card.png
:alt: Bank journals are displayed on the Accounting Dashboard and contain action buttons
.. _accounting/bank/manage:
.. _bank_accounts/manage:
Manage bank and cash accounts
=============================
Manage your bank and cash accounts
==================================
Connect a bank for automatic synchronization
--------------------------------------------
Connect your bank for automatic synchronization
-----------------------------------------------
To connect your bank account to your database, go to :menuselection:`Accounting --> Configuration
--> Add a Bank Account`, select your bank in the list, click on :guilabel:`Connect`, and follow the
instructions.
--> Banks: Add a Bank Account`, select your bank in the list, click on :guilabel:`Connect`, and
follow the instructions.
.. seealso::
:doc:`bank/bank_synchronization`
.. _accounting/bank/create:
Create a bank account
---------------------
If your banking institution is not available in Odoo, or if you don't want to connect your bank
account to your database, you can configure your bank account manually.
To manually add a bank account, go to :menuselection:`Accounting --> Configuration --> Add a Bank
Account`, click on :guilabel:`Record transactions manually` (at the bottom right), fill out the bank
information, and click :guilabel:`Create`.
To manually add a bank account, go to :menuselection:`Accounting --> Configuration --> Banks:
Add a Bank Account`, click on :guilabel:`Create it` (at the bottom right), and fill out the form.
.. note::
- Odoo automatically detects the bank account type (e.g., IBAN) and enables some features
@@ -62,7 +59,7 @@ To create a new cash journal, go to :menuselection:`Accounting --> Configuration
Journals`, click on :guilabel:`Create` and select :guilabel:`Cash` in the :guilabel:`Type` field.
For more information on the accounting information fields, read the
:ref:`accounting/bank/configuration` section of this page.
:ref:`bank_accounts/configuration` section of this page.
.. note::
A default cash journal is available and can be used straight away. You can review it by going to
@@ -74,7 +71,7 @@ Edit an existing bank or cash journal
To edit an existing bank journal, go to :menuselection:`Accounting --> Configuration --> Accounting:
Journals` and select the journal you want to modify.
.. _accounting/bank/configuration:
.. _bank_accounts/configuration:
Configuration
=============
@@ -87,23 +84,14 @@ You can edit the accounting information and bank account number according to you
.. seealso::
- :doc:`get_started/multi_currency`
- :doc:`bank/transactions`
- `Bank configuration <https://www.youtube.com/watch?v=tVhhXw-VnGE>`_
.. _accounting/bank/suspense:
.. _bank_accounts/suspense:
Suspense account
----------------
Bank statement transactions are posted on the suspense account until they are reconciled. At any
moment, the suspense account's balance in the general ledger shows the balance of transactions that
have not yet been reconciled.
.. note::
When a bank transaction is reconciled, the journal entry is modified to replace the bank suspense
account with the account of the journal item it is reconciled with. This account is usually the
:ref:`outstanding receipts or payments account <accounting/bank/outstanding-accounts>` if
reconciling with a registered payment or the account receivable or payable if reconciling with
an invoice or bill directly.
Bank statement transactions are posted on the :guilabel:`Suspense Account` until the final
reconciliation allows finding the right account.
Profit and loss accounts
------------------------
@@ -115,7 +103,7 @@ register a loss when the ending balance of a cash register differs from what the
Currency
--------
You can edit the currency used to enter the transactions.
You can edit the currency used to enter the statements.
.. seealso::
:doc:`get_started/multi_currency`
@@ -124,7 +112,7 @@ Account number
--------------
If you need to **edit your bank account details**, click on the external link arrow next to your
:guilabel:`Account Number`. On the account page, click on the external link arrow next to your
:guilabel:`Account Number`. On the new page, click on the external link arrow next to your
:guilabel:`Bank` and update your bank information accordingly. These details are used when
registering payments.
@@ -134,13 +122,12 @@ registering payments.
Bank feeds
----------
:guilabel:`Bank Feeds` defines how the bank transactions are registered. Three options are
available:
:guilabel:`Bank Feeds` defines how the bank statements are registered. Three options are available:
- :guilabel:`Undefined yet`, which should be selected when you dont know yet if you will
synchronize your bank account with your database or not.
- :guilabel:`Import (CAMT, CODA, CSV, OFX, QIF)`, which should be selected if you want to import
your bank statements and transactions using a different format.
your bank statement using a different format.
- :guilabel:`Automated Bank Synchronization`, which should be selected if your bank is synchronized
with your database.
@@ -148,47 +135,53 @@ available:
- :doc:`bank/bank_synchronization`
- :doc:`bank/transactions`
.. _accounting/bank/outstanding-accounts:
.. _bank/outstanding-accounts:
Outstanding accounts
====================
By default, payments in Odoo do not create journal entries, but they can easily be configured to
create journal entries using **outstanding accounts**.
By default, payments are registered through transitory accounts named **outstanding accounts**,
before being recorded in your bank account.
- An **outstanding receipts account** is where incoming payments are posted until they are linked
with incoming bank transactions.
- An **outstanding payments account** is where outgoing payments are posted until they are linked
with outgoing bank transactions.
with a withdrawal from your bank statement.
- An **outstanding receipts account** is where incoming payments are posted until they are linked
with a deposit from your bank statement.
These accounts are usually of :ref:`type <chart-of-account/type>` :guilabel:`Current Assets` and
:guilabel:`Current Liabilities`.
Payments that are registered in Odoo are posted to the outstanding receipts and outstanding accounts
until they are reconciled. At any moment, the outstanding receipts account's balance in the general
ledger shows the balance of registered incoming payments that have not yet been reconciled, and the
outstanding payments account's balance in the general ledger shows the balance of registered
outgoing payments that have not yet been reconciled.
Bank and cash journal configuration
-----------------------------------
To configure payments to create journal entries, set outstanding accounts for the journal's payment
methods. This can be done for any journal with the :ref:`type <chart-of-account/type>`
:guilabel:`Bank` or :guilabel:`Cash`.
To configure the outstanding accounts for a journal's payment methods, first go to
:menuselection:`Accounting --> Configuration --> Journals` and select a bank or cash journal. In the
:guilabel:`Incoming Payments` and :guilabel:`Outgoing Payments` tabs, set :guilabel:`Outstanding
Receipts accounts` and :guilabel:`Outstanding Payments accounts` for each payment method that you
want to create journal entries.
These accounts should be of :ref:`type <chart-of-account/type>` :guilabel:`Current Assets`.
.. note::
- If the main bank account of the journal is added as an outstanding receipts account or
outstanding payments account, when a payment is registered, the invoice or bill's status is
directly set to :guilabel:`Paid`.
- If the outstanding receipts or outstanding payments account for a payment method is left blank,
registering a payment with that payment method will not create any journal entry.
The movement from an outstanding account to a bank account is done automatically when you
reconcile the bank account with a bank statement.
Default accounts configuration
------------------------------
The outstanding accounts are defined by default. If necessary, you can update them by going to
:menuselection:`Accounting --> Configuration --> Settings --> Default Accounts` and update your
:guilabel:`Outstanding Receipts Account` and :guilabel:`Outstanding Payments Account`.
Bank and cash journals configuration
------------------------------------
You can also set specific outstanding accounts for any journal with the :ref:`type
<chart-of-account/type>` :guilabel:`Bank` or :guilabel:`Cash`.
From your :guilabel:`Accounting Dashboard`, click on the menu selection ⋮ of the journal you want to
configure, and click on :guilabel:`Configuration`, then open the :guilabel:`Incoming/Outgoing
Payments` tab. To display the outstanding accounts column, click on the toggle button and check the
:guilabel:`Outstanding Receipts/Payments accounts`, then update the account.
.. image:: bank/toggle-button.png
:align: center
:alt: Select the toggle button and click on outstanding Accounts
.. note::
- If you do not specify an outstanding payments account or an outstanding receipts account for a
specific journal, Odoo uses the default outstanding accounts.
- If your main bank account is added as an outstanding receipts account or outstanding payments
account, when a payment is registered, the invoice or bill's status is directly set to
:guilabel:`Paid`.
.. toctree::
:titlesonly:
@@ -197,6 +190,5 @@ want to create journal entries.
bank/transactions
bank/reconciliation
bank/reconciliation_models
bank/internal_transfers
bank/foreign_currency
bank/loans
bank/cash_register
Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.4 KiB

After

Width:  |  Height:  |  Size: 7.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 25 KiB

After

Width:  |  Height:  |  Size: 20 KiB

@@ -11,7 +11,7 @@ To check if your bank is compatible with Odoo, go to `Odoo Accounting Features
<https://www.odoo.com/page/accounting-features>`_, and click on
:guilabel:`See list of supported institutions`.
Odoo supports more than 26,000 institutions around the world.
Odoo supports more than 25,000 institutions around the world.
To connect to the banks, Odoo uses multiple web-services:
@@ -42,7 +42,7 @@ First synchronization
---------------------
You can start synchronization either by going to the Accounting app and
:menuselection:`Accounting --> Configuration --> Add a Bank Account`.
:menuselection:`Accounting Dashboard --> Configuration --> Banks: Add a Bank Account`.
Now you can search for your bank institution. Select it and follow the steps to synchronize with it.
@@ -70,19 +70,19 @@ By default, transactions fetched from an online source are grouped inside the sa
one bank statement is created per month. You can change the bank statement creation periodicity
in your journal settings.
To view all your synchronizations, activate the :ref:`developer mode <developer-mode>` and go to
:menuselection:`Accounting --> Configuration --> Online Synchronization`.
You can find all your synchronizations by going to :menuselection:`Accounting Dashboard -->
Configuration --> Accounting: Online Synchronization`.
Synchronize manually
--------------------
After your first synchronization, the created journals are synchronized by default every 12 hours.
If you wish, you can synchronize them manually by clicking on the :guilabel:`Synchronize Now` button
on the dashboard.
If you wish, you can synchronize manually by clicking on the :guilabel:`Synchronize Now` button on
the dashboard.
Alternatively, activate the :ref:`developer mode <developer-mode>`, go to
:menuselection:`Accounting --> Configuration --> Online Synchronization`, select your institution,
and then click the :guilabel:`Fetch transactions` button.
Or you can go to :menuselection:`Accounting Dashboard --> Configuration -->
Accounting: Online Synchronization`, select your institution and then click on the
:guilabel:`fetch transactions` button.
.. important::
Some institutions do not allow transactions to be fetched automatically. For such institutions,
@@ -96,10 +96,9 @@ Issues
Synchronization in error
------------------------
To report a connection error to the `Odoo support <https://www.odoo.com/help>`_, activate the
:ref:`developer mode <developer-mode>`, go to :menuselection:`Accounting --> Configuration -->
Online Synchronization`, select the connection that failed, and copy the error description and the
reference.
To report a connection error to the `Odoo support <https://www.odoo.com/help>`_, go to
:menuselection:`Accounting Dashboard--> Configuration --> Accounting: Online Synchronization`,
select the connection that failed, and copy the error description and the reference.
Synchronization disconnected
----------------------------
@@ -129,14 +128,14 @@ Finally, make sure all your users refresh their Odoo page by pressing CTRL+F5.
.. Note::
- All previous synchronizations are disconnected during the installation and will not work
anymore. To view them, activate the :ref:`developer mode <developer-mode>` and go to
:menuselection:`Accounting --> Configuration --> Online Synchronization`). It is not possible
to resynchronize these connections; you have to make new ones.
- Do not uninstall the `account_online_sync` module, which is the previous module for online
- All previous synchronizations are disconnected during the installation and won't work anymore.
- You can find them directly in the synchronization menu
(:menuselection:`Accounting Dashboard --> Configuration -->
Accounting: Online Synchronization`). It is not possible to resynchronize these connections;
you have to make new ones.
- Do not uninstall `account_online_sync`, which is the previous module for online
synchronization. The new one overrides it.
- By default, the `account_online_synchronization` module is installed automatically with
Accounting.
- By default, `account_online_synchronization` is installed automatically with Accounting.
FAQ
===
@@ -146,11 +145,11 @@ The synchronization is not working in real-time. Is that normal?
The process is not intended to work in real-time as third party providers synchronize your accounts
at different intervals. To force the synchronization and fetch the statements, go to your
:guilabel:`Accounting Dashboard`, and click on the :guilabel:`Synchronize Now` button. Synchronize
and fetch transactions by activating the :ref:`developer mode <developer-mode>` and going to
:menuselection:`Accounting --> Configuration --> Online Synchronization`. Some providers only allow
one refresh per day, so it is possible that clicking on :guilabel:`Synchronize Now` does not get
your latest transactions if you already performed such action earlier in the day.
:guilabel:`Accounting Dashboard`, and click on the :guilabel:`Synchronize Now` button. You can also
synchronize and fetch transactions through :menuselection:`Accounting Dashboard -->
Configuration --> Accounting: Online Synchronization`. Some providers only allow one refresh per
day, so it is possible that clicking on :guilabel:`Synchronize Now` does not get your latest
transactions if you already performed such action earlier in the day.
A transaction can be visible on your bank account but not be fetched if it has the status
:guilabel:`Pending`. Only transactions with the :guilabel:`Posted` status will be retrieved. If the
@@ -159,9 +158,9 @@ transaction is not **Posted** yet, you will have to wait until the status change
Is the Online Bank Synchronization feature included in my contract?
-------------------------------------------------------------------
- **Community Edition**: No, this feature is not included in the Community Version.
- **Online Edition**: Yes, even if you benefit from the One App Free contract.
- **Enterprise Edition**: Yes, if you have a valid enterprise contract linked to your database.
- **Community Version**: No, this feature is not included in the Community Version.
- **Online Version**: Yes, even if you benefit from the One App Free contract.
- **Enterprise Version**: Yes, if you have a valid enterprise contract linked to your database.
Some banks have a status "Beta." What does this mean?
-----------------------------------------------------
@@ -187,9 +186,9 @@ Why don't I see any transactions?
---------------------------------
During your first synchronization, you selected the bank accounts you decided to synchronize with
Odoo. If you didn't synchronize any of your accounts, activate the :ref:`developer mode
<developer-mode>`, go to :menuselection:`Accounting --> Configuration --> Online Synchronization`,
and click the :guilabel:`Fetch Account` button on the connection.
Odoo. If you didn't synchronize any of your accounts, you can go to
:menuselection:`Accounting Dashboard --> Configuration --> Accounting: Online Synchronization` to
click on the :guilabel:`Fetch Account` button on the connection.
There may also be no new transactions.
@@ -199,9 +198,9 @@ database, please `submit a support ticket <https://www.odoo.com/help>`_.
How can I update my bank credentials?
-------------------------------------
To update your credentials, activate the :ref:`developer mode <developer-mode>` and go to
:menuselection:`Accounting --> Configuration --> Online Synchronization`. Open the connection you
want to update your credentials and click the :guilabel:`Update Credentials` button.
You can update your credentials by going to :menuselection:`Accounting Dashboard -->
Configuration --> Accounting: Online Synchronization`,open the connection you want to update your
credentials and click on the :guilabel:`Update Credentials` button.
.. toctree::
:titlesonly:
@@ -7,6 +7,7 @@ in one place. It offers non-intrusive connectivity to ASPSPs' official APIs acro
storing data.
.. image:: enablebanking/enablebanking.png
:align: center
:alt: Enable Banking logo
**Odoo** synchronizes directly with banks to get access to all bank transactions and automatically
@@ -29,6 +30,7 @@ Link bank accounts with Odoo
:guilabel:`Continue authentication`;
.. image:: enablebanking/enablebankingauth.png
:align: center
:alt: Enable Banking authentication page
#. Finally, you are redirected to your bank's login page.
@@ -6,11 +6,15 @@ Ponto
place and directly see all their transactions within one app. It is a third-party solution that is
continuously expanding the number of bank institutions that can be synchronized with Odoo.
.. image:: ponto/ponto-logo.png
:align: center
:alt: Logo of the Ponto brand
**Odoo** can synchronize directly with your bank to get all bank statements imported automatically
into your database.
Ponto is a paid third-party provider that can handle the synchronization between your bank accounts
and Odoo.
and Odoo. `Its pricing is 4€/month per account/integration <https://myponto.com/en#pricing>`_.
.. seealso::
- :doc:`../bank_synchronization`
@@ -27,29 +31,34 @@ Link your bank accounts with Ponto
#. Once you are logged in, create an *organization*.
.. image:: ponto/ponto-organization.png
:align: center
:alt: Fill out the form to add an organization in Ponto.
#. Go to :menuselection:`Accounts --> Live`, and click :guilabel:`Add account`. You might have to
add your **Billing Information** first.
#. | Go to :menuselection:`Accounts --> Live`, and click on *Add account*.
| You might have to add your **Billing Information** first.
#. Select your country, your bank institutions, give your consent to Ponto, and follow the steps
on-screen to link your bank account with your Ponto account.
.. image:: ponto/ponto-add-account.png
:align: center
:alt: Add bank accounts to your Ponto account.
#. Add all bank accounts you want to synchronize with your Odoo database and move to the next steps.
#. Make sure to add all bank accounts you want to synchronize with your Odoo database before moving
on to the next steps.
Link your Ponto account with your Odoo database
-----------------------------------------------
#. Go to :menuselection:`Accounting --> Configuration --> Add a Bank Account`.
#. Search for your institution and select it so you can verify that the third party provider is
Ponto.
#. Click :guilabel:`Connect` and follow the steps.
#. Select **all accounts** you want to access and synchronize in Odoo, even the ones coming from
other banking institutions.
#. Search your institution, make sure to select the right institution. By selecting the institution,
you can verify that the third party provider is Ponto.
#. Click on *Connect* and follow the steps.
#. At some point, you will have to authorize the accounts you want to access in Odoo. Please select
**all the accounts** you want to synchronize. Even the ones coming from other banking
institutions.
.. image:: ponto/ponto-select-accounts.png
:align: center
:alt: Selection of the accounts you wish to synchronize with Odoo.
#. Finish the flow.
@@ -61,26 +70,26 @@ Link your Ponto account with your Odoo database
Update your synchronization credentials
---------------------------------------
To update your Ponto credentials or modify the synchronization settings, activate the
:ref:`developer mode <developer-mode>`, go to :menuselection:`Accounting --> Configuration -->
Online Synchronization`, and select the institution from which you want to fetch the other
accounts. Click :guilabel:`Fetch Accounts` to start the flow.
You might have to update your Ponto credentials or modify the synchronization settings.
.. note::
During the update, select **all accounts** you want to synchronize, even the ones coming from
other banking institutions.
To do so, go to :menuselection:`Accounting --> Configuration --> Online Synchronization` and select
the institution you want to fetch the other accounts. Click on *Fetch Accounts* button to start the
flow.
During the update, select **all the accounts** you want to synchronize, even the ones coming
from other banking institutions.
Fetch new accounts
------------------
To add new online accounts to your connection, activate the :ref:`developer mode <developer-mode>`,
go to :menuselection:`Accounting --> Configuration --> Online Synchronization`, and select the
institution from which you want to fetch the other accounts. Click :guilabel:`Fetch Accounts` to
start the flow.
You might want to add new online accounts to your connection.
.. note::
Don't forget to keep authorization for existing accounts (for all institutions that you have
synchronized with Ponto).
To do so, go to :menuselection:`Accounting --> Configuration --> Online Synchronization` and select
the institution you want to fetch the other accounts. Click on *Fetch Accounts* button to start the
flow.
Don't forget to keep authorization for existing accounts (for all institutions that you
have synchronized with Ponto).
FAQ
===
@@ -93,7 +102,7 @@ You selected an institution from the list and did not authorize any accounts fro
I have an error about that my authorization has expired
-------------------------------------------------------
Every **6 months** (180 days) you must re-authorize the connection between your bank account
Every **3 months** (90 days) you must re-authorize the connection between your bank account
and Ponto. This must be done from the `Ponto website <https://myponto.com>`_. If you do not
do this, the synchronization will stop for these accounts.
Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

@@ -6,6 +6,11 @@ Salt Edge
from your bank accounts. It supports ~5000 institutions in more than 50
countries.
.. image:: saltedge/saltedge-logo.png
:align: center
:width: 50%
:alt: Salt Edge Logo
Odoo can synchronize directly with your bank to get all bank statements imported
automatically into your database.
@@ -29,17 +34,20 @@ Link your bank accounts with Odoo
account.
.. image:: saltedge/saltedge-contact-email.png
:align: center
:alt: Email address to provide to Salt Edge for the creation of your account.
#. After entering your email address, you are redirected to Salt Edge to continue
the synchronization process.
.. image:: saltedge/saltedge-login-page.png
:align: center
:alt: Salt Edge Login page.
#. Make sure you give your consent by checking the consent checkbox.
.. image:: saltedge/saltedge-give-consent.png
:align: center
:alt: Salt Edge give consent page.
#. Complete the synchronization by following the steps.
@@ -48,10 +56,11 @@ Link your bank accounts with Odoo
Update your credentials
-----------------------
To update your Salt Edge credentials or modify the synchronization settings, activate the
:ref:`developer mode <developer-mode>`, go to :menuselection:`Accounting --> Configuration -->
Online Synchronization`, and select the institution you want to update credentials. Click
:guilabel:`Update Credentials` to start the flow and follow the steps.
You might have to update your Salt Edge credentials or modify the synchronization settings.
To do so, go to :menuselection:`Accounting --> Configuration --> Online Synchronization` and
select the institution you want to update credentials. Click on the *Update Credentials* button
to start the flow and follow the steps.
Don't forget to check the consent checkbox. Otherwise, Odoo may not be able to access
your information.
@@ -59,14 +68,14 @@ your information.
Fetch new accounts
------------------
To add new online accounts to your connection, activate the :ref:`developer mode <developer-mode>`,
go to :menuselection:`Accounting --> Configuration --> Online Synchronization`, and select the
institution to fetch the new accounts. Click :guilabel:`Fetch Accounts` to start the flow and
follow the steps.
You might want to add new online accounts to your connection.
.. note::
Don't forget to check the consent checkbox. Otherwise, Odoo may not be able to access your
information.
To do so, go to :menuselection:`Accounting --> Configuration --> Online Synchronization` and
select the institution to fetch the new accounts. Click on the *Fetch Accounts* button
to start the flow and follow the steps.
Don't forget to check the consent checkbox. Otherwise, Odoo may not be able to access
your information.
FAQ
===
@@ -85,15 +94,15 @@ record.
I have an error saying that I have already synchronized this account
--------------------------------------------------------------------
You have probably already synchronized your bank account with Salt Edge, please check on your
`dashboard <https://www.saltedge.com/dashboard>`_ that you don't already have a connection with the
same credentials.
You have probably already synchronized your bank account with Salt Edge, please check on your `dashboard
<https://www.saltedge.com/dashboard>`_ that you don't already have a connection with the same
credentials.
If you already have a synchronization with the same credentials present on your Salt Edge
dashboard and this synchronization has not been created with Odoo, delete it and create it from your
Odoo database.
In case you already have a synchronization with the same credentials present on your Salt Edge
dashboard and this synchronization has not been created with Odoo, please delete it and create it
from your Odoo database.
If you already have a connection with the same credentials present on your Salt Edge dashboard
and this synchronization was created with Odoo, activate the :ref:`developer
mode <developer-mode>`, go to :menuselection:`Accounting --> Configuration --> Online
Synchronization`, and click :guilabel:`Update Credentials` to reactivate the connection.
In case you already have a connection with the same credentials present on your Salt Edge dashboard
and this synchronization was created with Odoo, you will normally be able to find it by going to
:menuselection:`Accounting --> Configuration --> Online Synchronization`. Please make sure to do an
*Update Credentials* to reactivate the connection.
Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.4 KiB

After

Width:  |  Height:  |  Size: 6.4 KiB

@@ -0,0 +1,56 @@
=============
Cash register
=============
The cash register is a journal to register receivings and payments transactions.
It calculates the total money in and out, computing the total balance.
Configuration
=============
.. image:: cash_register/journal.png
:align: center
1. Configure the Cash journal in :menuselection:`Accounting --> Configuration -->
Journals`.
2. In the tab Journal Entries, the Default Debit and Credit Account can be
configured as well as the currency of the journal
Usage
=====
How to register cash payments?
------------------------------
To register a cash payment specific to another customer, you should follow
these steps:
1. Go to :menuselection:`Accounting --> Dashboard --> Cash --> Register
Transactions`
2. Fill in the start and ending balance
3. Register the transactions, specifying the customers linked to the transaction
Put money in
------------
Put money in is used to placed your cash manually before starting your
transactions. From the Register Transactions window, go to :menuselection:`More
--> Put money in`
.. image:: cash_register/put-money-in.png
:align: center
Take money out
--------------
Take money out is used to collect/get yor your cash manually after
ending all your transactions. From the Register Transaction windows, go to :menuselection:`More
--> Take money out`
.. image:: cash_register/put-money-out.png
:align: center
The transactions will be added to the current cash payment registration.
Binary file not shown.

After

Width:  |  Height:  |  Size: 5.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.9 KiB

@@ -1,71 +0,0 @@
==================
Internal transfers
==================
Internal money transfers can be handled in Odoo. At least two bank or cash accounts are needed to
make internal transfers.
.. seealso::
:ref:`How to add an additional bank account <accounting/bank/create>`
Configuration
=============
An internal transfer account is automatically created on your database based on your company's
:doc:`localization <../../fiscal_localizations>` and depending on your countrys legislation. To
modify the default :guilabel:`Internal Transfer` account, go to :menuselection:`Accounting -->
Configuration --> Settings` and scroll down to the :guilabel:`Default Accounts` section.
Register an internal transfer from one bank to another
======================================================
When money is transferred from one bank or cash account to another, that amount appears as two
transactions on the corresponding journals, whether the transactions are created manually, via
import, or via :doc:`bank synchronization <bank_synchronization>`. When reconciling the transaction,
select the :guilabel:`Internal Transfers` :doc:`reconciliation model <reconciliation_models>`
button. This reconciliation model button writes the transaction off to the :guilabel:`Internal
Transfer` account.
.. tip::
Remember to reconcile the transaction for both the outgoing transaction on the journal that sends
the payment and the incoming transaction on the journal that receives the payment.
.. example::
Take, for example, a transfer of $1000 from Bank A to Bank B:
- Bank journal (Bank A)
.. list-table::
:header-rows: 1
:stub-columns: 1
* - **Account**
- **Debit**
- **Credit**
* - Bank A account
-
- $1,000
* - **Internal transfer account**
- **$1,000**
-
- Bank journal (Bank B)
.. list-table::
:header-rows: 1
:stub-columns: 1
* - **Account**
- **Debit**
- **Credit**
* - Bank B account
- $1,000
-
* - **Internal transfer account**
-
- **$1,000**
.. seealso::
:doc:`reconciliation`
:doc:`reconciliation_models`
@@ -1,70 +0,0 @@
================
Loans management
================
Odoo's loan management gives a comprehensive list of all loans undertaken by your company in order
to maintain a holistic and forecasted view of upcoming due dates (e.g., cash forecast). Set up
amortization schedules—or import them—and let Odoo automatically handle monthly interest and
principal adjustments so that your financial reports are always accurate with minimal effort.
Create a new loan
-----------------
Create a new loan by going to :menuselection:`Accounting --> Accounting --> Loans`. When creating a
new loan, there are three options for how to create amortization schedules:
- importing it from a supported file;
- calculating it from multiple input values (e.g., the :guilabel:`Amount Borrowed`, the
:guilabel:`Duration`, etc.) using the :guilabel:`Compute` button;
- manually filling in the lines of the schedule.
In each case, three different fields are required for each line of the amortization schedule: the
:guilabel:`Date`, the :guilabel:`Principal`, and the :guilabel:`Interest`.
The :guilabel:`Amount Borrowed`, :guilabel:`Interest`, and :guilabel:`Duration` fields will be red
if the sum of the lines does not match the total of the amortization schedule lines.
Loan entries mechanism
----------------------
When the amount borrowed is credited to a bank account, it should be transferred to a long-term
account (defined in the :guilabel:`Loan Settings` tab). Then, upon the validation of the loan, Odoo
creates the necessary journal entries so that there is always a holistic and forecasted view of
upcoming due dates. The entire process is completely automated with a long-term and short-term
principal reclassification mechanism.
For each line of the amortization schedule, Odoo creates the following entries:
A payment entry on the same date that
- debits the principal amount to the long-term account;
- debits the interest amount to the expense account;
- credits the payment amount to the short-term account: this is the amount that will be
withdrawn by the bank.
A reclassification entry on the same date that
- debits the sum of the principal amounts of the next 12 months to the long-term account;
- credits the sum of the principal amounts of the next 12 months to the short-term account.
A reversed entry of the reclassification entry on *the next day* that simply reverses the previous
one.
With this mechanism, month after month, the short-term account is always up to date with the
current short-term due amounts.
Closing a loan
--------------
By default, a loan will be closed whenever its last payment entry is posted. However, it can also
be manually closed (e.g., because it is being paid off early) by clicking on the :guilabel:`Close`
button. A wizard will appear asking from which date the loan should be closed. All draft entries
after this date will be deleted too.
A loan can also be cancelled. In that case, all entries will be deleted even if they were already
posted.
Loans Analysis Report
---------------------
By going to :menuselection:`Accounting --> Reporting --> Loans Analysis`, you can access a
report with a pivot view of your ongoing loans. By default, the report shows the principal,
interest, and total payment for each year for the loan duration.
@@ -27,19 +27,11 @@ Odoo supports multiple file formats to import transactions:
- Quicken Interchange Format (.QIF);
- Belgium: Coded Statement of Account (.CODA).
To import a file, go to the **Accounting Dashboard**, and in the :guilabel:`Bank` journal,
click on :guilabel:`Import File`.
To import a file, go to the :guilabel:`Accounting Dashboard`, and in the :guilabel:`Bank` journal,
click on :guilabel:`Import Transactions`.
.. tip::
Alternatively, you can also:
- click :guilabel:`⋮` on the :guilabel:`Bank` journal and select :guilabel:`Import file`;
- or access the transaction list by clicking :guilabel:`⋮` on the :guilabel:`Bank` journal and
selecting :guilabel:`Transactions`, then click the gear icon :guilabel:`(⚙)` and select
:guilabel:`Import records`.
.. image:: transactions/import-transactions.png
:alt: Import bank transactions from the bank journal
.. image:: transactions/import-transactions.png
:alt: Import bank transactions from the bank journal
Next, select the file and upload it.
Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

After

Width:  |  Height:  |  Size: 6.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 17 KiB

After

Width:  |  Height:  |  Size: 11 KiB

@@ -4,251 +4,225 @@
Customer invoices
=================
A customer invoice is a document issued by a company for products and/or services sold to a
customer. It records receivables as they are sent to customers. Customer invoices can include
amounts due for the goods and/or services provided, applicable sales taxes, shipping and handling
fees, and other charges.
Odoo supports multiple invoicing and payment workflows.
From Customer Invoice to Payments Collection
============================================
.. seealso::
:doc:`/applications/finance/accounting/customer_invoices/overview`
Odoo supports multiple invoicing and payment workflows, so you can
choose and use the ones that match your business needs. Whether you want
to accept a single payment for a single invoice, or process a payment
spanning multiple invoices and taking discounts for early payments, you
can do so efficiently and accurately.
From draft invoice to profit and loss report, the process involves several steps once the goods (or
services) have been ordered/shipped (or rendered) to a customer, depending on the invoicing policy:
From Draft Invoice to Profit and Loss
-------------------------------------
- :ref:`accounting/invoice/creation`
- :ref:`accounting/invoice/confirmation`
- :ref:`accounting/invoice/sending`
- :ref:`accounting/invoice/paymentandreconciliation`
- :ref:`accounting/invoice/followup`
- :ref:`accounting/invoice/reporting`
If we pick up at the end of a typical 'order to cash' scenario, after
the goods have been shipped, you will: issue an invoice; receive
payment; deposit that payment at the bank; make sure the Customer
Invoice is closed; follow up if Customers are late; and finally present
your Income on the Profit and Loss report and show the decrease in
Assets on the Balance Sheet report.
.. _accounting/invoice/creation:
Invoicing in most countries occurs when a contractual obligation is met.
If you ship a box to a customer, you have met the terms of the contract
and can bill them. If your supplier sends you a shipment, they have met
the terms of that contract and can bill you. Therefore, the terms of the
contract is fulfilled when the box moves to or from the truck. At this
point, Odoo supports the creation of what is called a Draft Invoice by
Warehouse staff.
Invoice creation
================
----------------
Draft invoices can be created directly from documents like sales orders or purchase orders or
manually from the :guilabel:`Customer Invoices` journal in the :guilabel:`Accounting Dashboard`.
Draft invoices can be manually generated from other documents such as
Sales Orders, Purchase Orders,etc. Although you can create a draft
invoice directly if you would like.
An invoice must include the required information to enable the customer to pay promptly for their
goods and services. Make sure the following fields are appropriately completed:
An invoice must be provided to the customer with the necessary
information in order for them to pay for the goods and services ordered
and delivered. It must also include other information needed to pay the
invoice in a timely and precise manner.
- :guilabel:`Customer`: When a customer is selected, Odoo automatically pulls information from the
customer record like the invoice address,
:doc:`preferred payment terms <customer_invoices/payment_terms>`,
:doc:`fiscal positions <taxes/fiscal_positions>`, receivable account, and more onto the invoice.
To change these values for this specific invoice, edit them directly on the invoice. To change
them for future invoices, change the values on the contact record.
- :guilabel:`Invoice Date`: If not set manually, this field is automatically set as the current date
upon confirmation.
- :guilabel:`Due Date` or :doc:`payment terms <customer_invoices/payment_terms>`: To specify when
the customer has to pay the invoice.
- :guilabel:`Journal`: Is automatically set and can be changed if needed.
- :doc:`Currency <get_started/multi_currency>`
- :guilabel:`Product`: Click :guilabel:`Add a line` to add a product.
- :guilabel:`Quantity`
- :guilabel:`Price`
- :doc:`Taxes <taxes>` (if applicable)
Draft invoices
--------------
.. tip::
To display the total amount of the invoice in words, go to :menuselection:`Accounting -->
Configuration --> Settings` and activate the :guilabel:`Total amount of invoice in letters`
option.
The system generates invoice which are initially set to the Draft state.
While these invoices remain unvalidated, they have no accounting impact within the system.
There is nothing to stop users from creating their own draft invoices.
The :guilabel:`Journal Items` tab displays the accounting entries created.
Additional invoice information such as the :guilabel:`Customer Reference`, :doc:`Fiscal Positions
<taxes/fiscal_positions>`, :doc:`Incoterms <customer_invoices/incoterms>`, and more can be added or
modified in the :guilabel:`Other Info` tab.
Let's create a customer invoice with following information:
.. note::
Odoo initially creates invoices in :guilabel:`Draft` status. Draft invoices have no accounting
impact until they are :ref:`confirmed <accounting/invoice/confirmation>`.
- Customer: Agrolait
- Product: iMac
- Quantity: 1
- Unit Price: 100
- Taxes: Tax 15%
.. seealso::
:doc:`/applications/sales/sales/invoicing/proforma`
.. image:: customer_invoices/invoice01.png
.. _accounting/invoice/confirmation:
.. image:: customer_invoices/invoice02.png
Invoice confirmation
====================
The document is composed of three parts:
Click :guilabel:`Confirm` when the document is completed. The document's status changes to
:guilabel:`Posted`, and a journal entry is generated based on the invoice configuration. On
confirmation, Odoo assigns each document a unique number from a defined
:ref:`sequence <accounting/invoice/sequence>`.
- the top of the invoice, with customer information,
- the main body of the invoice, with detailed invoice lines,
- the bottom of the page, with detail about the taxes, and the totals.
.. note::
- Once confirmed, an invoice can no longer be updated. Click :guilabel:`Reset to draft` if
changes are needed.
- If required, invoices and other journal entries can be locked once posted
using the :ref:`Secure posted entries with hash <data-inalterability/restricted>` feature.
Open or Pro-forma invoices
--------------------------
.. _accounting/invoice/sending:
An invoice will usually include the quantity and the price of goods
and/or services, the date, any parties involved, the unique invoice
number, and any tax information.
Invoice sending
===============
"Validate" the invoice when you are ready to approve it. The invoice
then moves from the Draft state to the Open state.
To send the invoice to the customer, click :guilabel:`Send & Print`. A :guilabel:`Configure your
document layout` pop-up window will appear if a :ref:`default invoice layout
<studio/pdf-reports/default-layout>` hasn't been customized. Then, select how to send this invoice
to the customer in the :guilabel:`Send` window.
When you have validated an invoice, Odoo gives it a unique number from a
defined, and modifiable, sequence.
To send and print multiple invoices, go to :menuselection:`Accounting --> Customers --> Invoices`
and select them. Then click the :icon:`fa-cog` :guilabel:`Actions` menu and select
:guilabel:`Send & Print`. A banner will appear on the selected invoices to indicate they are part of
an ongoing send and print batch. This helps prevent the process from being triggered manually again,
as it may take some time to complete for exceptionally large batches.
.. image:: customer_invoices/invoice03.png
.. _accounting/invoice/paymentandreconciliation:
Accounting entries corresponding to this invoice are automatically
generated when you validate the invoice. You can see the details by
clicking on the entry in the Journal Entry field in the "Other Info"
tab.
Payment and reconciliation
==========================
.. image:: customer_invoices/invoice04.png
In Odoo, an invoice is considered :guilabel:`Paid` when the associated accounting entry has been
reconciled with a corresponding bank transaction.
Send the invoice to customer
----------------------------
.. seealso::
- :doc:`payments`
- :doc:`bank/reconciliation`
After validating the customer invoice, you can directly send it to the
customer via the 'Send by email' functionality.
.. _accounting/invoice/followup:
.. image:: customer_invoices/invoice05.png
Payment follow-up
=================
A typical journal entry generated from a validated invoice will look
like as follows:
Odoo's :doc:`follow-up actions <payments/follow_up>` help companies follow up on customer invoices.
Different actions can be set up to remind customers to pay their outstanding invoices, depending on
how much the customer is overdue. These actions are bundled into follow-up levels that trigger when
an invoice is overdue by a certain number of days. If there are multiple overdue invoices for the
same customer, the actions are performed on the most overdue invoice.
+-----------------------+---------------+----------------+-------------+--------------+
| **Account** | **Partner** | **Due date** | **Debit** | **Credit** |
+=======================+===============+================+=============+==============+
| Accounts Receivable | Agrolait | 01/07/2015 | 115 | |
+-----------------------+---------------+----------------+-------------+--------------+
| Taxes | Agrolait | | | 15 |
+-----------------------+---------------+----------------+-------------+--------------+
| Sales | | | | 100 |
+-----------------------+---------------+----------------+-------------+--------------+
.. _accounting/invoice/sequence:
Payment
-------
Sequence
========
In Odoo, an invoice is considered to be paid when the associated
accounting entry has been reconciled with the payment entries. If there
has not been a reconciliation, the invoice will remain in the Open state
until you have entered the payment.
The sequence that Odoo assigns to each document is a unique number made up of a prefix and a number.
The prefix combines the journal code and the entry date and is used to group entries by period. The
number is unique for each period and is used to identify the entry. The default sequence on customer
invoices is INV/YYYY/number. In some specific cases,
:ref:`resequencing <accounting/invoice/resequencing>` invoices might be necessary.
A typical journal entry generated from a payment will look like as
follows:
.. _accounting/invoice/resequencing:
+-----------------------+---------------+----------------+-------------+--------------+
| **Account** | **Partner** | **Due date** | **Debit** | **Credit** |
+=======================+===============+================+=============+==============+
| Bank | Agrolait | | 115 | |
+-----------------------+---------------+----------------+-------------+--------------+
| Accounts Receivable | Agrolait | | | 115 |
+-----------------------+---------------+----------------+-------------+--------------+
Resequencing
------------
Receive a partial payment through the bank statement
----------------------------------------------------
Resequencing is not possible:
You can manually enter your bank statements in Odoo, or you can import
them in from a csv file or from several other predefined formats
according to your accounting localisation.
- When entries are before a lock date.
- When the sequence leads to a duplicate.
- When the :guilabel:`Invoice Date` doesn't match the date contained in the new sequence number,
e.g., if the sequence is changed to INV/2023/XXXXX for a document with an :guilabel:`Invoice Date`
of 2024.
Create a bank statement from the accounting dashboard with the related
journal and enter an amount of $100 .
To change the invoice sequence with the structure INV/YYYY/MM/number, add `/MM` with the number of
the month of the :guilabel:`Invoice date`. Odoo will recognize the "/" term as a month and update
the future invoice sequence appropriately with the month of the :guilabel:`Invoice date`. For
example, if the invoice date is January, change the sequence to `INV/2024/01/XXXXX`.
.. image:: customer_invoices/invoice06.png
In this case, if the :guilabel:`Invoice date` isn't aligned with the sequence number, a
:guilabel:`Validation Error` message appears.
Reconcile
---------
.. note::
Now let's reconcile!
- All sequence changes are logged in the chatter to keep the information.
- Sequence changes also affect the format of future invoices' sequences.
.. image:: customer_invoices/invoice07.png
.. _accounting/invoice/resequencing-one-invoice:
You can now go through every transaction and reconcile them or you can mass reconcile with instructions at the bottom.
Resequencing a single invoice
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
After reconciling the items in the sheet, the related invoice will now
display "You have outstanding payments for this customer. You can
reconcile them to pay this invoice. "
To resequence the last confirmed invoice, click :guilabel:`Reset to Draft`, then change the
sequence. The invoice now appears in red on the :guilabel:`Customer Invoices` list.
.. image:: customer_invoices/invoice08.png
.. _accounting/invoice/mass-resequencing:
.. image:: customer_invoices/invoice09.png
Mass-resequencing invoices
~~~~~~~~~~~~~~~~~~~~~~~~~~
Apply the payment. Below, you can see that the payment has been added to
the invoice.
It can be helpful to resequence multiple invoice numbers. For example, when importing invoices from
another invoicing or accounting system and the reference originates from the previous software,
continuity for the current year must be maintained without restarting from the beginning.
.. image:: customer_invoices/invoice10.png
.. note::
This feature is only available to users with administrator or advisor access.
Payment Followup
----------------
Follow these steps to resequence invoice numbers:
There's a growing trend of customers paying bills later and later.
Therefore, collectors must make every effort to collect money and
collect it faster.
#. Activate the :ref:`developer mode <developer-mode>`.
#. From the :guilabel:`Accounting Dashboard`, open the :guilabel:`Customer Invoices` journal.
#. Select the invoices that need a new sequence.
#. Click the :icon:`fa-cog` :guilabel:`Actions` menu and select :guilabel:`Resequence`.
#. In the :guilabel:`Ordering` field, choose to
Odoo will help you define your follow-up strategy. To remind customers
to pay their outstanding invoices, you can define different actions
depending on how severely overdue the customer is. These actions are
bundled into follow-up levels that are triggered when the due date of an
invoice has passed a certain number of days. If there are other overdue
invoices for the same customer, the actions of the most overdue invoice
will be executed.
- :guilabel:`Keep current order`: The order of the numbers remains the same.
- :guilabel:`Reorder by accounting date`: The number is reordered by accounting date.
#. Set the :guilabel:`First New Sequence`.
#. :guilabel:`Preview Modifications` and click :guilabel:`Confirm`.
By going to the customer record and diving into the "Overdue Payments"
you will see the follow-up message and all overdue invoices.
The first invoice using the new sequence appears in red in the :guilabel:`Customer Invoices` list.
.. image:: customer_invoices/invoice11.png
.. image:: customer_invoices/invoice-sequencing.png
:alt: Resequence options window
.. image:: customer_invoices/invoice12.png
.. _accounting/invoice/reporting:
.. _customer-invoices/aging-report:
Reporting
=========
Customer aging report:
~~~~~~~~~~~~~~~~~~~~~~
.. _accounting/invoice/partner-reports:
The customer aging report will be an additional key tool for the
collector to understand the customer credit issues, and to prioritize
their work.
Partner reports
Use the aging report to determine which customers are overdue and begin
your collection efforts.
.. image:: customer_invoices/invoice13.png
Profit and loss
---------------
.. _accounting/invoices/partner-ledger:
The Profit and Loss statement displays your revenue and expense details.
Ultimately, this gives you a clear image of your Net Profit and Loss. It
is sometimes referred to as the "Income Statement" or "Statement of
Revenues and Expenses."
Partner Ledger
~~~~~~~~~~~~~~
The :guilabel:`Partner Ledger` report shows the balance of customers and suppliers. To access it,
go to :menuselection:`Accounting --> Reporting --> Partner Ledger`.
.. _accounting/invoices/aging-report:
Aged Receivable
~~~~~~~~~~~~~~~
To review outstanding customer invoices and their related due dates, use the
:ref:`Aged Receivable <accounting/reporting/aged-receivable>` report. To access it, go to
:menuselection:`Accounting --> Reporting --> Aged Receivable`.
.. _accounting/invoices/aged-payable:
Aged Payable
~~~~~~~~~~~~
To review outstanding vendor bills and their related due dates, use the
:ref:`Aged Payable <accounting/reporting/aged-payable>` report. To access it, go to
:menuselection:`Accounting --> Reporting --> Aged Payable`.
.. _accounting/invoices/profit-and-loss:
Profit and Loss
---------------
The :ref:`Profit and Loss <accounting/reporting/profit-and-loss>` statement shows details of income
and expenses.
.. _accounting/invoices/balance-sheet:
.. image:: customer_invoices/invoice14.png
Balance sheet
-------------
The :ref:`Balance Sheet <accounting/reporting/balance-sheet>` summarizes the company's assets,
liabilities, and equity at a specific time.
The balance sheet summarizes your company's liabilities,
assets and equity at a specific moment in time.
.. image:: customer_invoices/invoice15.png
.. image:: customer_invoices/invoice16.png
For example, if you manage your inventory using the perpetual accounting
method, you should expect a decrease in account "Current Assets" once
the material has been shipped to the customer.
.. toctree::
:titlesonly:
@@ -18,13 +18,8 @@ To specify a sales order's invoice and delivery addresses, first go to :menusele
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
:ref:`contact record <sales/send_quotations/contact-form-config>`, the corresponding field uses that
address, by default, but any contact's address can be used instead.
.. seealso::
For more information, refer to the documentation on :ref:`Contact Form Configuration
<sales/send_quotations/contact-form-config>`.
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
==========================================
@@ -33,28 +33,19 @@ Make sure the default settings are correctly configured for your business. To do
Journal
The deferral entries are posted in this journal.
Deferred Revenue
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.
Based on
Suppose an invoice of $1200 must be deferred over 12 months.
- The :guilabel:`Months` option accounts for $100 each month prorated to the number of days in
that month (e.g., $50 for the first month if the :guilabel:`Start Date` is set to the 15th of
the month).
- The :guilabel:`Full Months` option considers each month started to be full (e.g., $100 for the
first month even if the :guilabel:`Start Date` is set to the 15th of the month); this means that
with the :guilabel:`Full Months` option, a full $100 is recognized in the first partial month,
eliminating the need for a 13th month to recognize any remainder as would be the case when using
the :guilabel:`Months` option.
- The :guilabel:`Days` option accounts for different amounts depending on the number of days in
each month (e.g., ~$102 for January and ~$92 for February).
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.
.. _customer_invoices/deferred/generate_on_validation:
@@ -64,8 +55,7 @@ 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`. Deferred revenue entries are posted from the invoice
date and are displayed in the report accordingly.
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.
@@ -13,33 +13,49 @@ some governments for fiscal control or to facilitate the administration.
Electronic invoicing of your documents such as customer invoices, credit notes or vendor bills is
one of the application of EDI.
Odoo supports e-invoicing in many countries. Refer to the country's page for more details:
Odoo supports, among others, the following formats.
- :doc:`Austria <electronic_invoicing/austria>`
- :doc:`Belgium <electronic_invoicing/belgium>`
- :doc:`Croatia <electronic_invoicing/croatia>`
- :doc:`Denmark <electronic_invoicing/denmark>`
- :doc:`Estonia <electronic_invoicing/estonia>`
- :doc:`Finland <electronic_invoicing/finland>`
- :doc:`France <electronic_invoicing/france>`
- :doc:`Germany <electronic_invoicing/germany>`
- :doc:`Hungary <electronic_invoicing/hungary>`
- :doc:`Ireland <electronic_invoicing/ireland>`
- :doc:`Italy <electronic_invoicing/italy>`
- :doc:`Latvia <electronic_invoicing/latvia>`
- :doc:`Lithuania <electronic_invoicing/lithuania>`
- :doc:`Luxembourg <electronic_invoicing/luxembourg>`
- :doc:`Netherlands <electronic_invoicing/netherlands>`
- :doc:`Norway <electronic_invoicing/norway>`
- :doc:`Poland <electronic_invoicing/poland>`
- :doc:`Portugal <electronic_invoicing/portugal>`
- :doc:`Romania <electronic_invoicing/romania>`
- :doc:`Slovenia <electronic_invoicing/slovenia>`
- :doc:`Spain <electronic_invoicing/spain>`
- :doc:`Spain - Basque Country <electronic_invoicing/basque_country>`
.. list-table::
:header-rows: 1
* - Format Name
- Applicability
* - Factur-X (CII)
- All customers
* - Peppol BIS Billing 3.0
- All customers
* - XRechnung (UBL)
- All customers
* - Fattura PA (IT)
- Italian companies
* - CFDI (4.0)
- Mexican companies
* - Peru UBL 2.1
- Peruvian companies
* - SII IVA Llevanza de libros registro (ES)
- Spanish companies
* - UBL 2.1 (Columbia)
- Colombian companies
* - Egyptian Tax Authority
- Egyptian companies
* - E-Invoice (IN)
- Indian companies
* - NLCIUS (Netherlands)
- Dutch companies
* - EHF 3.0
- Norwegian companies
* - SG BIS Billing 3.0
- Singaporean companies
* - A-NZ BIS Billing 3.0
- All customers
.. note::
- The **Factur-X (CII)** format enables validation checks on the invoice and generates PDF/A-3
compliant files.
- Every PDF generated by Odoo includes an integrated **Factur-X** XML file.
.. seealso::
:doc:`Fiscal localizations documentation <../../fiscal_localizations>`
:doc:`../../fiscal_localizations`
.. _e-invoicing/configuration:
@@ -96,8 +112,8 @@ If not done yet, :ref:`install <general/install>` the :guilabel:`Peppol` module
- 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 and receive in one of the following supported document formats:
**BIS Billing 3.0, XRechnung CIUS, NLCIUS**.
- 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,
@@ -110,102 +126,79 @@ 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**. Click :guilabel:`Start sending via Peppol` to open the registration form.
save**.
.. note::
This registration form also pops up if you choose to :guilabel:`Send & Print` an
invoice via Peppol without completing the registration process.
.. image:: electronic_invoicing/peppol-registration-settings.png
:alt: Peppol registration button
You can register either as a sender or a receiver. A sender can only send invoices and credit notes
on Odoo via Peppol, without ever registering as a Peppol participant on Odoo SMP. If you have an
existing Peppol registration elsewhere that you want to keep, but want to send invoices from your
Odoo database and receive other documents in another software, register as a **sender**.
.. tip::
- You can always register as a sender first and register to receive documents later.
- When registering, you can specify if you would also like to receive documents.
.. image:: electronic_invoicing/peppol-registration-wizard.png
:alt: Peppol registration form
.. image:: electronic_invoicing/peppol-install.png
:alt: Peppol module installation
Fill in the following information:
- Check the receiver box if you want to register on Odoo SMP. If you are migrating from another
service provider, insert the :guilabel:`Migration key` from the previous provider (the field
becomes visible after you tick the checkbox).
- :guilabel:`E-Address Scheme`: the Peppol Electronic Address Scheme usually depends on your
- :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:`Endpoint`: this is usually a Company Registry number or a VAT number.
- :guilabel:`Phone`: phone number including the country code (e.g., `+32` in Belgium).
- :guilabel:`Email`: this is the email Odoo can use to contact you regarding your Peppol
registration.
If you want to explore or demo Peppol, you can choose to register in :guilabel:`Demo` mode.
Otherwise, select :guilabel:`Live`.
.. tip::
- Selecting :guilabel:`Demo` simulates everything in Odoo. There is no sending, receiving, or
partner verification.
- For **advanced users only**, it is possible to run tests on Peppol's test network. The server
allows to register on Peppol and send/receive test invoices to/from other participants.
To do so, enable the :ref:`developer-mode`, open the **Settings** app, go to
:menuselection:`Technical --> System Parameters`, and search for `account_peppol.edi.mode`.
Click the parameter and change the :guilabel:`Value` to `test`. Go back to the Peppol setup
menu in the **Settings** app. The option :guilabel:`Test` is now available.
.. image:: electronic_invoicing/peppol-system-parameter.png
:alt: Peppol test mode parameter
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)
When set up, request a verification code to be sent to you by clicking :guilabel:`Send a
registration code by SMS`. A text message containing a code is sent to the phone number provided to
finalize the verification process.
If you are migrating from another access point, insert the :guilabel:`Migration key` from the
previous provider.
.. image:: electronic_invoicing/peppol-phone-verification.png
.. 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:`Register`, your Peppol participant status is updated.
If you chose to only send documents, then the status changes to :guilabel:`Can send but
not receive`.
If you opted to receive documents as well, the status changes to :guilabel:`Can send, pending
registration to receive`. In that case, it should be automatically activated within a day.
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.
Then, set the default journal for receiving vendor bills in the :guilabel:`Incoming Invoices
Journal`.
.. image:: electronic_invoicing/peppol-registration-pending.png
:alt: pending application
It should be automatically activated within a day.
.. tip::
To manually trigger the cron that checks the registration status, enable the
:ref:`developer-mode`, then go to :menuselection:`Settings --> Technical --> Scheduled Actions`,
and search for the :guilabel:`PEPPOL: update participant status` action.
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 receiver application status should be updated soon after you are registered on the Peppol
network.
Your application status should be updated soon after you are registered on the Peppol network.
.. image:: electronic_invoicing/peppol-receiver.png
:alt: receiver application
.. image:: electronic_invoicing/peppol-registration-active.png
:alt: active application
All invoices and vendor bills can now be sent directly using the Peppol network.
.. important::
To update the email that Odoo can use to contact you, modify the email and click
:guilabel:`Update contact details`.
Configure Peppol services
-------------------------
Once you are registered on Odoo SMP, the :guilabel:`Configure Peppol Services` button
becomes visible to allow you to enable or disable document formats that other participants
can send you via Peppol. By default, all document formats supported by Odoo are enabled (depending
on the installed modules).
Contact verification
--------------------
@@ -229,13 +222,6 @@ It is possible to verify the Peppol participant status of several customers at o
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`.
If the participant is registered on the Peppol network but cannot receive the format you selected
for them, the :guilabel:`Peppol endpoint validity` label changes to :guilabel:`Cannot
receive this format`.
.. image:: electronic_invoicing/peppol-participant-format.png
:alt: verify contact ubl format
Send invoices
-------------
@@ -1,52 +0,0 @@
:orphan:
====================================
Odoo electronic invoicing in Austria
====================================
Odoo Invoicing is your trusted partner for safe, efficient, and legally compliant e-invoicing
solutions tailored to Austria's regulatory standards, and compatible with the European `Peppol
<https://peppol.org/about/>`_ framework.
Legal framework for e-invoicing in Austria
==========================================
In Austria, businesses must adhere to e-invoicing laws that ensure secure, authentic, and storable
transactions. The main regulation governing e-invoicing requirements in Austria is the `Austrian VAT
Act (UStG) <https://www.ris.bka.gv.at/GeltendeFassung.wxe?Abfrage=Bundesnormen&Gesetzesnummer=10004873>`_
and its related e-invoicing standards for public procurement (`BGBI. I Nr. 32/2019 <https://360.lexisnexis.at/d/rechtsnorm-ris/32_bundesgesetz_mit_dem_das_beamten_dienstrechtsge/b_bgbl_2019_2019_I_32_46c550bf37>`_),
which aligns with `EU Directive 2014/55/EU <https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX%3A32014L0055>`_.
These laws mandate that all businesses engaged in :abbr:`B2G (business-to-government)` transactions
must use e-invoicing, and increasingly, e-invoicing is encouraged for B2B transactions to improve
tax compliance and transparency.
Compliance with Austrian e-invoicing regulations
================================================
Odoo Invoicing makes it easy for businesses to send, store, and ensure the integrity of their
invoices. Here is how Odoo ensures compliance:
- **Supported format**: Odoo supports standard e-invoice formats such as PDF with digital signatures
and XML in :abbr:`UBL (Universal Business Language)` format, which are fully compatible with
e-rechnung.gv.at, Austria's central electronic invoicing platform for public procurement
transactions. Any platform can be used if connected to the authentication services of the Federal
Service Portal (:abbr:`USP (Unternehmensserviceportal)`) e-rechnung.gv.at for e-invoicing
transmission.
- **Secure storage and retrieval**: In accordance with the Austrian requirement to store invoices
for a minimum of seven years, Odoo securely archives all invoices in a tamper-proof system,
ensuring that they can be easily retrieved during audits.
- **Automatic VAT calculation and reporting**: Odoo Invoicing helps businesses stay in line with
Austrian VAT requirements by automatically calculating and including VAT in invoices and ensuring
that each invoice follows the legal format for B2B and :abbr:`B2G (business-to-government)`
transactions.
.. seealso::
:doc:`Austria fiscal localization documentation <../../../fiscal_localizations/austria>`
.. admonition:: Disclaimer
This page provides an overview of Austrian e-invoicing laws and how Odoo Invoicing supports
compliance with the Austrian VAT Act (UStG) and related regulations. It does does not constitute
legal advice. We recommend consulting with a tax advisor or legal professional familiar with
Austrian e-invoicing regulations to ensure full compliance tailored to your specific business
requirements.
@@ -1,50 +0,0 @@
:orphan:
===============================================
Odoo electronic invoicing in the Basque Country
===============================================
Odoo Invoicing is your trusted partner for safe, efficient, and legally compliant e-invoicing
solutions tailored to meet Basque Country's regulatory standards.
Legal framework for e-invoicing in the Basque Country
=====================================================
In the Basque Country, electronic invoicing is governed by Spanish national legislation and regional
implementations, including the `Ley de Facturación Electrónica <https://www.facturae.gob.es/face/Paginas/FACE.aspx>`_
and compliance with `EU Directive 2014/55/EU <https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX%3A32014L0055>`_.
For :abbr:`B2G (business-to-government)` transactions, e-invoicing is mandatory, and suppliers must
submit e-invoices through the FACe platform or the regional system, e-Factura Euskadi, specifically
designed for the Basque Country. These platforms ensure the secure submission of invoices to public
administrations. While B2B e-invoicing is not yet mandatory, its use is growing, supported by the
implementation of the TicketBAI system, which is specific to the Basque Country and promotes tax
transparency.
Compliance with Basque e-invoicing regulations
==============================================
Odoo Invoicing is fully prepared to help businesses meet the Basque Country's e-invoicing
requirements while complying with broader Spanish and EU standards. Here is how Odoo ensures
compliance:
- **Supported formats**: Odoo supports formats such as Facturae XML, required for compliance with
the FACe and e-Factura Euskadi platforms. Additionally, Odoo integrates with the TicketBAI system,
ensuring all invoices meet the technical and legal standards for secure submission to tax
authorities. Odoo enables businesses to submit e-invoices seamlessly to the FACe platform for
national compliance and the e-Factura Euskadi system for regional public administration
transactions. Furthermore, Odoo supports compliance with the TicketBAI initiative, specific to the
Basque Country.
- **Secure storage and retrieval**: In accordance with regulations requiring invoices to be stored
for a minimum of 6 years, Odoo provides a secure, tamper-proof archive for all invoices, allowing
easy access for audits and tax reviews.
- **Automatic VAT calculation and reporting**: Odoo Invoicing automates VAT calculations, ensuring
invoices adhere to Basque Country VAT requirements for B2G and B2B transactions while facilitating
compliance with the SII (Immediate Supply of Information) system for real-time VAT reporting.
.. admonition:: Disclaimer
This page provides an overview of e-invoicing laws in the Basque Country and how Odoo Invoicing
supports compliance with the Ley de Facturación Electrónica, e-Factura Euskadi, TicketBAI system,
and FACe platform. It is not intended as legal advice. We recommend consulting with a tax advisor
or legal professional familiar with e-invoicing regulations in the Basque Country to ensure
compliance tailored to your specific business needs.
@@ -1,53 +0,0 @@
:orphan:
====================================
Odoo electronic invoicing in Belgium
====================================
Odoo Invoicing is your trusted partner for safe, efficient, and legally compliant e-invoicing
solutions tailored to Belgium's regulatory standards, and compatible with the European `Peppol
<https://peppol.org/about/>`_ framework.
Legal framework for e-invoicing in Belgium
==========================================
In Belgium, businesses must adhere to e-invoicing laws that ensure secure, authentic, and storable
transactions. The primary regulation governing e-invoicing requirements in Belgium is the `Belgian
VAT Code <https://finances.belgium.be/fr/sur_le_spf/r%C3%A9glementation/r%C3%A9glementation-2023/tva>`_
and its related `e-invoicing standards for public procurement <https://www.ejustice.just.fgov.be/cgi_loi/article.pl?language=fr&sum_date=&pd_search=2023-09-21&numac_search=2023045155&page=1&lg_txt=F&caller=list&2023045155=0&trier=promulgation&fr=f&nm_ecran=2023045155&choix1=et&choix2=et>`_,
which align with `EU Directive 2014/55/EU <https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX%3A32014L0055>`_.
These laws mandate that all businesses engaged in :abbr:`B2G (business-to-government)` transactions
must use e-invoicing via Mercurius, Belgium's official electronic invoicing platform for public
procurement transactions. Additionally, Belgium is part of the Peppol network, which provides a
standardized framework for cross-border e-invoicing across Europe. Increasingly, e-invoicing is also
encouraged for B2B transactions to enhance tax compliance and transparency.
Compliance with Belgian e-invoicing regulations
===============================================
Odoo Invoicing makes it easy for businesses to send, store, and ensure the integrity of their
invoices. Here is how Odoo ensures compliance:
- **Peppol-compliant formats**: Odoo supports the standardized XML (:abbr:`UBL (Universal Business
Language)`) format for Peppol, ensuring compliance with both Belgian and European e-invoicing
standards. This ensures your invoices meet the legal requirements for public procurement in
Belgium and other EU countries. Odoo enables businesses to send e-invoices directly to government
entities in compliance with Belgian regulations through Belgiums Mercurius platform for public
procurement.
- **Secure storage and retrieval**: In accordance with Belgian requirements to store invoices for a
minimum of seven years, Odoo securely archives all invoices in a tamper-proof system, ensuring
that they can be easily retrieved during audits.
- **Automatic VAT calculation and reporting**: Odoo Invoicing helps businesses comply with Belgian
VAT requirements by automatically calculating and including VAT in invoices and ensuring that each
invoice follows the legal format for B2B and :abbr:`B2G (business-to-government)` transactions.
.. seealso::
:doc:`Belgium fiscal localization documentation <../../../fiscal_localizations/belgium>`
.. admonition:: Disclaimer
This page provides an overview of Belgian e-invoicing laws and how Odoo Invoicing supports
compliance with the Belgian VAT Code, Peppol standards, and related regulations. It does not
constitute legal advice. We recommend consulting with a tax advisor or legal professional
familiar with Belgian e-invoicing regulations to ensure full compliance tailored to your specific
business requirements.
@@ -1,50 +0,0 @@
:orphan:
====================================
Odoo electronic invoicing in Croatia
====================================
Odoo Invoicing is our trusted partner for safe, efficient, and legally compliant e-invoicing
solutions tailored to Croatia's regulatory standards.
Legal framework for e-invoicing in Croatia
==========================================
In Croatia, businesses must comply with e-invoicing regulations to ensure secure, authentic, and
storable transactions. The main legal framework governing e-invoicing in Croatia is the
Fiscalization Act and its related requirements for public procurement, which are aligned with `EU
Directive 2014/55/EU <https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX%3A32014L0055>`_ on
e-invoicing in public procurement. Under these regulations, all businesses involved in :abbr:`B2G
(business-to-government)` transactions are required to use electronic invoicing via the :abbr:`CIS
(Central Invoice System)`, Croatias official platform for public sector e-invoicing. Croatia is
also part of the Peppol network, facilitating standardized cross-border e-invoicing within the
European Union. Furthermore, e-invoicing is increasingly encouraged for B2B transactions, promoting
greater transparency and tax compliance.
Compliance with Croatian e-invoicing regulations
================================================
Odoo Invoicing makes it easy for businesses to send, store, and ensure the integrity of their
invoices. Here is how Odoo ensures compliance:
- **Supported formats**: Odoo supports standard e-invoice formats, such as PDF with digital
signatures and XML in :abbr:`UBL (Universal Business Language)` format, which are fully compatible
with Croatia's :abbr:`CIS (Central Invoice System)` for public procurement transactions.
Additionally, Odoo enables transmission of e-invoices through any platform connected to the Peppol
network, as the *Servis eRačun za državu* reached via Peppol, ensuring compliance with both
Croatian and EU standards.
- **Secure storage and retrieval**: In accordance with Croatian regulations to store invoices for a
minimum of eleven years, Odoo securely archives all invoices in a tamper-proof system, ensuring
they can be easily retrieved during audits.
- **Automatic VAT calculation and reporting**: Odoo Invoicing helps businesses stay in line with
Croatian VAT requirements by automatically calculating and including VAT in invoices and ensuring
that each invoice follows the legal format for both B2B and :abbr:`B2G (business-to-government)`
transactions.
.. admonition:: Disclaimer
This page provides an overview of Croatian e-invoicing laws and how Odoo Invoicing supports
compliance with the Fiscalization Act, Peppol standards, and other relevant regulations. It does
not constitute legal adviceWe recommend consulting with a tax advisor or legal professional
familiar with Croatian e-invoicing regulations to ensure compliance tailored to your specific
business needs.
@@ -1,47 +0,0 @@
:orphan:
====================================
Odoo electronic invoicing in Denmark
====================================
Odoo Invoicing is your trusted partner for safe, efficient, and legally compliant e-invoicing
solutions tailored to Denmark's regulatory standards.
Legal framework for e-invoicing in Denmark
==========================================
In Denmark, e-invoicing is governed by `EU Directive 2014/55/EU <https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX%3A32014L0055>`_,
mandating the use of e-invoicing for :abbr:`B2G (business-to-government)` transactions. Danish
public sector entities require invoices to be submitted through NemHandel, the national e-invoicing
platform, using the OIOUBL format (a local version of :abbr:`UBL (Universal Business Language)` and
XML). Denmark is also a key member of the Peppol network, enabling streamlined, standardized, and
secure cross-border e-invoicing for transactions within the European Union. While e-invoicing is not
mandatory for B2B transactions, its adoption is growing as businesses seek greater efficiency and
compliance.
Compliance with Danish e-invoicing regulations
==============================================
Odoo Invoicing makes it easy for businesses to send, store, and ensure the integrity of their
invoices. Here is how Odoo ensures compliance:
- **Supported formats**: Odoo supports OIOUBL, which is required for public sector invoicing via
NemHandel. It also supports UBL XML for transactions through the Peppol network, ensuring
compatibility with Denmarks and Europes e-invoicing standards. Odoo enables businesses to send
e-invoices through NemHandel, directly to Danish public entities in the required format. For
international transactions, Odoo ensures compatibility with Peppol Access Points,
facilitating cross-border invoicing.
- **Secure storage and retrieval**: In line with Danish regulations, which require businesses to
store invoices for at least five years, Odoo securely archives all invoices in a tamper-proof
system, ensuring easy access for audits and compliance checks.
- **Automatic VAT calculation and reporting**: Odoo Invoicing automates VAT calculations and
ensures invoices are formatted to meet Denmarks legal requirements for B2G and B2B transactions,
helping businesses comply with local tax laws.
.. admonition:: Disclaimer
This page provides an overview of Danish e-invoicing laws and how Odoo Invoicing supports
compliance with NemHandel, OIOUBL standards, Peppol standards, and other relevant regulations. It
does not constitute legal advice. We recommend consulting with a tax advisor or legal
professional familiar with Danish e-invoicing regulations to ensure compliance tailored to your
specific business needs.
@@ -1,47 +0,0 @@
:orphan:
====================================
Odoo electronic invoicing in Estonia
====================================
Odoo Invoicing is your trusted partner for safe, efficient, and legally compliant e-invoicing
solutions tailored to Estonia's regulatory standards.
Legal framework for e-invoicing in Estonia
==========================================
In Estonia, businesses must comply with e-invoicing regulations to ensure secure, authentic, and
storable transactions. The main legal framework governing e-invoicing in Estonia is the `Accounting
Act <https://www.riigiteataja.ee/en/eli/ee/514052021001/consolide/current>`_ and its provisions
related to e-invoicing, which align with `EU Directive 2014/55/EU <https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX%3A32014L0055>`_
on e-invoicing in public procurement. Since 2019, :abbr:`B2G (business-to-government)` transactions
must use electronic invoices via Estonia's Rik's e-Invoicing System, the government's platform for
public sector e-invoicing. Estonia is also part of the Peppol network, which ensures standardized
cross-border e-invoicing across Europe. Additionally, the use of e-invoicing is encouraged for B2B
transactions, promoting better transparency, efficiency, and compliance with VAT requirements.
Compliance with Estonian e-invoicing regulations
================================================
Odoo Invoicing makes it easy for businesses to send, store, and ensure the integrity of their
invoices. Here is how Odoo ensures compliance:
- **Supported formats**: Odoo supports standard e-invoice formats, such as XML in :abbr:`UBL
(Universal Business Language)` format, which is fully compatible with Estonia's Riks e-Invoicing
System for public procurement transactions. Additionally, Odoo enables seamless transmission of
e-invoices through platforms connected to the Peppol network, ensuring compliance with Estonian
and EU e-invoicing standards.
- **Secure storage and retrival**: In accordance with Estonian regulations to store invoices for a
minimum of seven years, Odoo securely archives all invoices in a tamper-proof system, making them
easily retrievable during audits.
- **Automatic VAT calculation and reporting**: Odoo Invoicing automates VAT calculations and ensures
invoices are formatted to meet Denmarks legal requirements for :abbr:`B2G
(business-to-government)` and B2B transactions, helping businesses compliant with local tax laws.
.. admonition:: Disclaimer
This page provides an overview of Estonian e-invoicing laws and how Odoo Invoicing supports
compliance with the Accounting Act, Peppol standards, and other relevant regulations. It does not
constitute legal advice. We recommend consulting with a tax advisor or legal professional
familiar with Estonian e-invoicing regulations to ensure compliance tailored to your specific
business needs.
@@ -1,47 +0,0 @@
:orphan:
====================================
Odoo electronic invoicing in Finland
====================================
Odoo Invoicing is your trusted partner for safe, efficient, and legally compliant e-invoicing
solutions tailored to Finland's regulatory standards.
Legal framework for e-invoicing in Finland
==========================================
In Finland, businesses must comply with e-invoicing regulations to ensure secure, authentic, and
storable transactions. The primary legal framework governing e-invoicing is the `Act on Electronic
Invoicing (241/2019) <https://www.finlex.fi/fi/laki/alkup/2019/20190241#Pidp446241968>`_, which
aligns with `EU Directive 2014/55/EU <https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX%3A32014L0055>`_
on electronic invoicing in public procurement. Under Finnish law, all :abbr:`B2G
(business-to-government)` transactions require the use of electronic invoices via Apix Messaging or
other Peppol-connected platforms, Finlands standard for public sector e-invoicing. Finland is also
part of the Peppol network, ensuring interoperability and standardization for cross-border
e-invoicing within the EU. Additionally, e-invoicing is widely adopted for B2B transactions,
promoting efficient processes and improved tax compliance.
Compliance with Finnish e-invoicing regulations
===============================================
Odoo invoicing module makes it easy for businesses to adhere to Finland's e-invoicing regulations.
Here is how Odoo ensures compliance:
- **Supported formats**: Odoo supports the e-invoicing formats widely used in Finland, including
TEAPPSXML, Finvoice, and the standardized XML in :abbr:`UBL (Universal Business Language)` format
required for Peppol compliance. This ensures compatibility with Finnish platforms such as Handi
for public sector invoicing and eKuitti for enhanced receipt management and e-invoicing.
- **Secure storage and retrieval**: In accordance with Finnish regulations requiring businesses to
store invoices for a minimum of seven years, Odoo securely archives all invoices in a tamper-proof
system, allowing for easy retrieval during audits.
- **Automatic VAT calculation and reporting**: Odoo Invoicing ensures compliance with Finnish VAT
requirements by automatically calculating and including VAT in invoices and formatting them to
meet the legal standards for both B2B and :abbr:`B2G (business-to-government)` transactions.
.. admonition:: Disclaimer
This page provides an overview of Finnish e-invoicing laws and how Odoo Invoicing supports
compliance with the Act on Electronic Invoicing, Peppol standards, and other relevant
regulations. It is not intended as legal advice. We recommend consulting with a tax advisor or
legal professional familiar with Finnish e-invoicing regulations to ensure compliance tailored to
your specific business needs.
@@ -1,50 +0,0 @@
:orphan:
===================================
Odoo electronic invoicing in France
===================================
Odoo Invoicing is your trusted partner for safe, efficient, and legally compliant e-invoicing
solutions tailored to France's regulatory standards.
Legal framework for e-invoicing in France
=========================================
In France, electronic invoicing is regulated by the `Ordonnance n° 2019-359
<https://www.legifrance.gouv.fr/jorf/id/JORFTEXT000038410002>`_, which is aligned with `EU Directive
2014/55/EU <https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX%3A32014L0055>`_, and requires
mandatory :abbr:`B2G (business-to-government)` e-invoicing through the Chorus Pro platform. Starting
in 2024, B2B e-invoicing will be progressively implemented, becoming mandatory for all businesses by
2026. This reform aims to combat tax fraud, improve VAT collection, and enhance business
transparency. The Factur-X hybrid format (a combination of PDF and XML data) is widely used in
France, ensuring compliance with both local and European e-invoicing standards.
Compliance with French e-invoicing regulations
==============================================
Odoo Invoicing makes it easy for businesses to send, store, and ensure the integrity of their
invoices. Here is how Odoo ensures compliance:
- **Supported formats**: Odoo supports the Factur-X hybrid format (PDF with embedded XML) required
for compliance with French e-invoicing standards. It is also compatible with :abbr:`UBL (Universal
Business Language)` XML for transactions via the Peppol network, facilitating both local and
international invoicing. Odoo enables businesses, through Chorus Pro Frances official e-invoicing
platform, to submit compliant e-invoices directly to public authorities and soon to private sector
recipients as B2B e-invoicing becomes mandatory.
- **Secure storage and retrieval**: In compliance with French regulations, which require invoices to
be stored for a minimum of 10 years, Odoo securely archives all invoices in a tamper-proof system,
ensuring easy access for audits and inspections.
- **Automatic VAT calculation and reporting**: Odoo Invoicing automates VAT calculations, ensuring
invoices meet French VAT requirements and are formatted correctly for both B2G and B2B
transactions, supporting seamless compliance with evolving standards.
.. seealso::
:doc:`France fiscal localization documentation <../../../fiscal_localizations/france>`
.. admonition:: Disclaimer
This page provides an overview of French e-invoicing laws and how Odoo Invoicing supports
compliance with the Chorus Pro platform, Factur-X standard, Peppol network, and other relevant
regulations. It does not constitute legal advice. We recommend consulting with a tax advisor or
legal professional familiar with French e-invoicing regulations to ensure compliance tailored to
your specific business needs.

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