Compare commits
68 Commits
master-mes
...
saas-16.2-
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
0f87005057 |
[IMP] accounting: send and print workflow in electronic_invoicing
From saas-16.2, the choice of the format can be made from the partner form view (for the formats present in `account_edi_ubl_cii` only). And the attachment are generated during the Send & Print flow. PR to select the EDI format based on the partner: https://github.com/odoo/odoo/pull/115934 PR refactoring the Send & Print flow: https://github.com/odoo/odoo/pull/111857 |
||
|
|
5ce77e9fc7 |
[IMP] fiscal localizations: configuration
task-3277592 closes odoo/documentation#4194 Signed-off-by: Castillo Jonathan (jcs) <jcs@odoo.com> |
||
|
|
837854a404 |
[FW][FIX] howtos/company: fix typos
closes odoo/documentation#4181 Forward-port-of: odoo/documentation#4147 Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com> |
||
|
|
b828d1852e |
[MOV] field service: improve the structure and merge docs
Currently, there are two pages about onsite interventions in two
separate categories. This task aims to merge both pages into a single
one and remove the useless categories.
task-3275322
closes odoo/documentation#4191
X-original-commit:
|
||
|
|
47f5cdb9c1 |
[ADD] fiscal localizations: Indian GST service
In this commit, I have added documentation for GST return filing.
I have explained how to register on GST Portal, configure it in odoo,
and enable GST API Access on GST Portal. I have also explained different
GSTR Report.
task-3272960
closes odoo/documentation#4171
X-original-commit:
|
||
|
|
1f509cb2de |
[IMP] odoo_theme: fix menu links
When searching for a word, if that word happens to be in the menu, the
`display-flex` on the `a` would remove the space around the word because
a `span class=highlight` gets added around it.
Fixed by changing `display-flex` on the `a` to display-block (but
keeping it for `.o_toc_entry_wrapper`)
closes odoo/documentation#4184
X-original-commit:
|
||
|
|
2baadb8075 |
[IMP] accounting/electronic_invoicing: add SG einvoicing format
Since commit |
||
|
|
14d36e7bbf |
[FW][FIX] developer/web_services: fix typo
closes odoo/documentation#4159 Forward-port-of: odoo/documentation#4146 Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com> |
||
|
|
5b696e0290 |
[IMP] accounting/electronic_invoicing: remove useless section
In previous versions (from 14.0 to saas-15.4), `account_edi_ubl_cii` was
not auto-installed. From 16.0, it is. Thus, we no longer need the
section advising to install this module.
Manifest in saas-15.4:
https://github.com/odoo/odoo/blob/saas-15.4/addons/account_edi_ubl_cii/__manifest__.py
Manifest in 16.0:
https://github.com/odoo/odoo/blob/16.0/addons/account_edi_ubl_cii/__manifest__.py
closes odoo/documentation#4162
X-original-commit:
|
||
|
|
ca48b40e03 |
[I18N] *: export source terms
closes odoo/documentation#4149
X-original-commit:
|
||
|
|
cb8794b39e |
[IMP] inventory: update owned_stock
closes odoo/documentation#4142
X-original-commit:
|
||
|
|
c2848ab56c |
[IMP] iot: add documentation regarding HTTPS certificate
Also include details/troubleshoot/solutions for redundant
support issues:
- Error code details for HTTPS certificate generation
(see: https://github.com/odoo/odoo/pull/114993 )
- DNS issue with HTTPS domain
OPW-3227004
closes odoo/documentation#4136
X-original-commit:
|
||
|
|
bee4b04ca3 |
[IMP] odoo_theme: design improvements
Revamp of the side menu;
Round all borders for consistency with the buttons;
Improve .sig-* and .o_code elements;
Improve sphinx-tabs hover effect;
task-3046383
closes odoo/documentation#4113
X-original-commit:
|
||
|
|
5e421c692f |
[IMP] odoo_theme: general cleanup
A general reorganization of the code was needed for more clarity.
The different markup styles have been grouped together under a common
"chapter", comments have been rewritten and example pages have been
added for context.
Some levels have been removed Where there were too many for no reason.
By removing one level of styles (e.g.: `#wrap`) we avoid needing to
force overrides or adding `!important` to our code.
⌙ e.g.: before commit 9ef86cd93d8c6fc0fd96b437f629237e7a562c6e,
`.o_spoilers .accordion-body >:first-child` was being involuntarily
overridden.
task-3046383
X-original-commit:
|
||
|
|
9c362035e8 |
[IMP] odoo_theme: tweak the HTML structure of TOC entries
task-3046383
X-original-commit:
|
||
|
|
267b9ec0dd |
[IMP] extensions/custom_admonitions: tweak the HTML structure of dfn
The structure of the `dfn` role is changed from its default
`<em class="dfn">text</em>` to
`<span class="dfn"><span>text</span></span>` to ease the styling.
task-3046383
X-original-commit:
|
||
|
|
36d80ebb78 |
[MOV] calendar: "Calendar" app from "Misc" to "Productivity"
To improve the structure of the documentation, the "Miscellaneous"
section should be limited as much as possible.
This commit:
- renames "Calendars" into "Calendar" (as the app name)
- moves the app from the "Miscellaneous" section to the "Productivity"
section
- fixes the wrong file structure to follow the toc
(e.g. general/calendars/outlook/outlook_calendar -> productivity/calendar/outlook)
task-3217827
closes odoo/documentation#4126
X-original-commit:
|
||
|
|
008b79eae2 |
[MOV] live chat: structure
task-3269837
closes odoo/documentation#4127
X-original-commit:
|
||
|
|
b142e491c2 |
[MOV] website: structure
As a first step to update the doc - at last! - we first need to update
its structure.
task-3269837
X-original-commit:
|
||
|
|
6f9d25e7c7 |
[l10n_mx] Update exempt tax configuration.
In Mexico there are two 0% taxes, 0% VAT and 0% exempt VAT. This change
makes the tip clearer so users do not confuse both taxes. Forward to
master.
closes odoo/documentation#4119
X-original-commit:
|
||
|
|
5750d65b87 |
[IMP] helpdesk: update ticket closing
closes odoo/documentation#4103
X-original-commit:
|
||
|
|
669db77321 |
[ADD] tests: image size checker
closes odoo/documentation#4099
X-original-commit:
|
||
|
|
44e2d701a3 |
[IMP] purchase: update bill control policies doc
closes odoo/documentation#4093
X-original-commit:
|
||
|
|
29529e82ca |
[ADD] Quality: add Create quality alerts
closes odoo/documentation#4089
X-original-commit:
|
||
|
|
2d3a7eb4f3 |
[IMP] Inventory: Update dropshipping
closes odoo/documentation#4081
X-original-commit:
|
||
|
|
e168ffdb1c |
[IMP] subscriptions: overhaul of the basic docs
This commit improves the structure of the Subscription doc and updates
its content (recurring products, subscription plans, sales flow)
task-3222232
closes odoo/documentation#4068
X-original-commit:
|
||
|
|
a191e8aa61 |
[ADD] ecommerce: performance monitoring
Adding a doc page on performance monitoring and analysis for eCommerce
websites
closes odoo/documentation#4017
Taskid: 3246984
X-original-commit:
|
||
|
|
1f392fada5 |
[IMP] purchase: update reordering rules config doc
closes odoo/documentation#4075
X-original-commit:
|
||
|
|
af315347d4 |
[IMP] helpdesk: updated sla policies
closes odoo/documentation#4067
X-original-commit:
|
||
|
|
67d2bb2cb4 |
[IMP] accounting: update batch payments
closes odoo/documentation#4057
X-original-commit:
|
||
|
|
cfa01812a6 |
[IMP] Inventory: Update inter-warehouse replenishment
closes odoo/documentation#4045
X-original-commit:
|
||
|
|
adb41ceb9d |
[ADD] sms marketing: added essentials/getting started docs
closes odoo/documentation#4050
X-original-commit:
|
||
|
|
c2e30ab23e |
[IMP] accounting: bank statements in the transactions page
task-3264491
closes odoo/documentation#4040
X-original-commit:
|
||
|
|
41ae9d60ca |
[FIX] crm: replace old lead scoring content with predictive lead scoring
closes odoo/documentation#4029
X-original-commit:
|
||
|
|
ccbf124be9 |
[REF] developer: rewrite sql view as a howto
SQL view was formerly part of the dashboard tutorial which is now
obsolete. Since creating a SQL view as a tutorial does not make sense
anymore, it has been converted into a simple howto.
closes odoo/documentation#4034
Task: 3226581
X-original-commit:
|
||
|
|
b742c44f09 |
[REM] developer: remove references to web_dashboard view
Since odoo/enterprise#31641 the dashboard view no longer exists since it
is now replaced with spreadsheet_dashboard, therefore we remove it from
the backend Views documentation.
Task: 3226581
X-original-commit:
|
||
|
|
0440f5c5cd |
[IMP] create JavaScript howtos
The JavaScript cheatsheet is outdated, we therefore remove it and
replace it by multiple howtos:
- Create a view from scratch
- Extending an existing view
- Create a field from scratch
- Extend an existing field
- Create a client action
There is other subjects to introduce as the web framework is big. Other
future contributions will cover them.
closes odoo/documentation#4018
X-original-commit:
|
||
|
|
4124cf56d4 |
[IMP] payment_providers/flutterwave: recommend ticking all checkboxes
task-3254461
closes odoo/documentation#4022
X-original-commit:
|
||
|
|
fbda858d40 |
[ADD] pos: how to add/modify customer notes from POS UI
Task ID: 2622090
closes odoo/documentation#4012
X-original-commit:
|
||
|
|
c91ea3d251 |
[ADD] accounting: enablebanking
task-3232701
closes odoo/documentation#4001
X-original-commit:
|
||
|
|
9878b58a04 |
[MOV] accounting: structure of bank sync docs
X-original-commit:
|
||
|
|
fdea740edc |
[ADD] field service: default warehouse
task-2948598
closes odoo/documentation#3998
X-original-commit:
|
||
|
|
a8deaf9594 |
[IMP] tutorials: add warning about mutable global variables
The whole concept of multi-tenancy is not really approached within the
tutorial.
This commit adds a warning about never using mutable global variables
within odoo to seed the idea in the reader's mind.
task-3059110
closes odoo/documentation#3990
X-original-commit:
|
||
|
|
4914c45d88 |
[IMP] Website: review website translation page
task-3255779
closes odoo/documentation#3977
X-original-commit:
|
||
|
|
6757b2691b |
[IMP]: add manual valuation section
Add images and manual valuation
add ref tag and retitle doc to sentence case
Remove trailing whitespaces
update explanation
closes odoo/documentation#3983
X-original-commit:
|
||
|
|
11b2c5250b |
[IMP] Adyen: additional minimum requirements for users
Adding requirements for users to use Adyen. Forward to master.
closes odoo/documentation#3962
Taskid: 3159712
X-original-commit:
|
||
|
|
d6acaf70c1 |
[IMP] ePoS: vulgarise the SSL ePos issue
SSL/HTTPS topic is complicated for most of
Odoo customers as it is quite technical.
This PR should help them guide them to better
understand the issue and how to fix it themselves.
Support can't be provided to each device, browsers and OS.
But we did add some guides regarding the more
"popular" ones and some "keyword" to search
online for the others.
closes odoo/documentation#3924
X-original-commit:
|
||
|
|
ec40c817da |
[ADD] attendances: hr and attendances categories + hardware page
Task ID: 3251124
closes odoo/documentation#3959
X-original-commit:
|
||
|
|
69248346db |
[IMP] pos: update fiscal positions page
Task ID: 2862506
closes odoo/documentation#3927
X-original-commit:
|
||
|
|
c69cb37be3 |
[IMP] mail plugins: add instructions to gmail plugin
closes odoo/documentation#3946
X-original-commit:
|
||
|
|
19288088f9 |
[IMP] sales: menuselection fix
Fixed a menuselection error and deleted instances of second-person pov
Closes task 3116083
closes odoo/documentation#3941
X-original-commit:
|
||
|
|
24f4348a46 |
[IMP] General: Oauth seemore additions
closes odoo/documentation#3936
X-original-commit:
|
||
|
|
dc2a988173 |
[IMP] supported_version: release saas-16.2
closes odoo/documentation#3908
X-original-commit:
|
||
|
|
9fb4c01b19 |
[FIX] inventory: fix BoM typo
closes odoo/documentation#3912
X-original-commit:
|
||
|
|
7effc12f02 |
[IMP] coding_guidelines: fix python code indents
A few python code blocks on the coding guidelines are indented twice
(8 spaces instead of 4), which is not correct.
closes odoo/documentation#3905
X-original-commit:
|
||
|
|
0d6466fbbf |
[IMP] accounting: bank transactions
task-3204835
closes odoo/documentation#3896
X-original-commit:
|
||
|
|
9651908b73 |
[IMP] helpdesk: updated ticketing channels setup
closes odoo/documentation#3879
X-original-commit:
|
||
|
|
5c89a56634 |
[IMP] Support: Update What can I expect
closes odoo/documentation#3885
X-original-commit:
|
||
|
|
7c4efb6fa9 |
[IMP] pos: and update kitchen printing
Task ID: 3235139
closes odoo/documentation#3874
X-original-commit:
|
||
|
|
7c8b8269eb |
[IMP] helpdesk: updated teams and stages setup content
closes odoo/documentation#3869
X-original-commit:
|
||
|
|
ccd282023a |
[IMP] inventory: fix sendcloud doc
closes odoo/documentation#3870
X-original-commit:
|
||
|
|
19b4797d37 |
[FIX] legal: fix some broken links (pdfs, translations)
1) PDF files are generated and stored at the root of the CURRENT_BRANCH
directory. The links to those files are generated at different levels of
the doctree, which makes it impossible to use a relative path.
For example the same "Enterprise Agreement" doc in EN is published on:
- /16.0/legal/terms/enterprise.html
- /16.0/fr/legal/terms/enterprise.html
As a workaround, use absolute links for the PDFs. They won't work
locally for now. Can be improved later, as long as we don't break
those links located in various depths of the troctree.
2) The legal constracts aren't translated in all availables languages
(yet), so those links are 404s now. Introduced a conf.py variable
`legal_translations` with the list of languages where translated
contracts are indeed available, and falling back to the EN version
otherwise. Some languages don't have *all* the contracts translated, so
some 404 may remain temporarily.
Forward-port of
|
||
|
|
6def5713d3 |
[ADD] eCommerce: customer interaction
Adding a page on customer interaction and adding redirects. Forward to
master.
closes odoo/documentation#3861
Taskid: 3224716
X-original-commit:
|
||
|
|
cc997535b2 |
[IMP] pos: take the half-up out of the last note
Task ID: 3184227
closes odoo/documentation#3856
X-original-commit:
|
||
|
|
cb06fb7687 |
[ADD] developer: add _get_available_tokens
Introduced with this commit:
|
||
|
|
a18fe9a25b |
[FIX] dev/tuto: grammar mistake in 02_setup
task-3238089
closes odoo/documentation#3848
X-original-commit:
|
||
|
|
3f0a7cd34e |
[IMP] supported_versions: flag saas-16.1 as supported
closes odoo/documentation#3840
X-original-commit:
|
||
|
|
aeed9418b4 | [REL] saas-16.2 |
2
Makefile
|
|
@@ -26,7 +26,7 @@ SOURCE_DIR = content
|
|||
|
||||
HTML_BUILD_DIR = $(BUILD_DIR)/html
|
||||
ifdef VERSIONS
|
||||
HTML_BUILD_DIR := $(HTML_BUILD_DIR)/master
|
||||
HTML_BUILD_DIR := $(HTML_BUILD_DIR)/saas-16.2
|
||||
endif
|
||||
ifneq ($(CURRENT_LANG),en)
|
||||
HTML_BUILD_DIR := $(HTML_BUILD_DIR)/$(CURRENT_LANG)
|
||||
|
|
|
|||
2
conf.py
|
|
@@ -22,7 +22,7 @@ copyright = 'Odoo S.A.'
|
|||
# `version` is the version info for the project being documented, acts as replacement for |version|,
|
||||
# also used in various other places throughout the built documents.
|
||||
# `release` is the full version, including alpha/beta/rc tags. Acts as replacement for |release|.
|
||||
version = release = 'master'
|
||||
version = release = 'saas-16.2'
|
||||
|
||||
# `current_branch` is the technical name of the current branch.
|
||||
# E.g., saas-15.4 -> saas-15.4; 12.0 -> 12.0, master -> master (*).
|
||||
|
|
|
|||
|
|
@@ -13,7 +13,7 @@ personal email address or an address created by a custom domain.
|
|||
|
||||
.. seealso::
|
||||
- :doc:`/applications/general/auth/azure`
|
||||
- :doc:`/applications/general/calendars/outlook/outlook_calendar`
|
||||
- :doc:`/applications/productivity/calendar/outlook`
|
||||
|
||||
Setup in Microsoft Azure Portal
|
||||
===============================
|
||||
|
|
|
|||
|
|
@@ -71,7 +71,7 @@ way to verify the ownership of your domain name is by adding a DNS record. You c
|
|||
other providers.
|
||||
|
||||
.. seealso::
|
||||
- :doc:`/applications/websites/website/optimize/seo`
|
||||
- :doc:`/applications/websites/website/pages/seo`
|
||||
- `Google Search Console Help - Verify your site ownership <https://support.google.com/webmasters/answer/9008080>`_
|
||||
- `Bing Webmaster Tools - Add and Verify site <https://www.bing.com/webmasters/help/add-and-verify-site-12184f8b>`_
|
||||
|
||||
|
|
|
|||
|
|
@@ -13,7 +13,7 @@ email address or an address created by a custom domain.
|
|||
|
||||
.. seealso::
|
||||
- :doc:`/applications/general/auth/google`
|
||||
- :doc:`/applications/general/calendars/google/google_calendar_credentials`
|
||||
- :doc:`/applications/productivity/calendar/google`
|
||||
|
||||
Setup in Google
|
||||
===============
|
||||
|
|
|
|||
|
|
@@ -8,10 +8,13 @@ and reconciling them with the ones recorded in your accounting.
|
|||
:doc:`Bank synchronization <bank_synchronization>` automates the process. However, if you do not
|
||||
want to use it or if your bank is not yet supported, other options exist:
|
||||
|
||||
- :ref:`Import bank transactions <import-statements>` delivered by your bank;
|
||||
- :ref:`Register bank transactions <register-transactions>` manually.
|
||||
- :ref:`Import bank transactions <transactions/import>` delivered by your bank;
|
||||
- :ref:`Register bank transactions <transactions/register>` manually.
|
||||
|
||||
.. _import-statements:
|
||||
.. note::
|
||||
:ref:`Grouping transactions by statement <transactions/statements>` is optional.
|
||||
|
||||
.. _transactions/import:
|
||||
|
||||
Import transactions
|
||||
===================
|
||||
|
|
@@ -28,15 +31,17 @@ To import a file, go to the :guilabel:`Accounting Dashboard`, and in the :guilab
|
|||
click on :guilabel:`Import Transactions`.
|
||||
|
||||
.. image:: transactions/import-transactions.png
|
||||
:align: center
|
||||
:alt: Import bank transactions from bank journal
|
||||
:alt: Import bank transactions from the bank journal
|
||||
|
||||
Next, select the file and upload it.
|
||||
|
||||
After setting the necessary formatting options and mapping the needed columns, you can run a
|
||||
:guilabel:`Test` and :guilabel:`Import` your bank transactions.
|
||||
After setting the necessary formatting options and mapping the file columns with their related Odoo
|
||||
fields, you can run a :guilabel:`Test` and :guilabel:`Import` your bank transactions.
|
||||
|
||||
.. _register-transactions:
|
||||
.. seealso::
|
||||
:doc:`/applications/general/export_import_data`
|
||||
|
||||
.. _transactions/register:
|
||||
|
||||
Register bank transactions manually
|
||||
===================================
|
||||
|
|
@@ -44,3 +49,46 @@ Register bank transactions manually
|
|||
You can also record your bank transactions manually. To do so, go to :guilabel:`Accounting
|
||||
Dashboard`, click on the :guilabel:`Bank` journal, and then on :guilabel:`New`. Make sure to fill
|
||||
out the :guilabel:`Partner` and :guilabel:`Label` fields to ease the reconciliation process.
|
||||
|
||||
.. _transactions/statements:
|
||||
|
||||
Statements
|
||||
==========
|
||||
|
||||
A **bank statement** is a document provided by a bank or financial institution that lists the
|
||||
transactions that have occurred in a particular bank account over a specified period of time.
|
||||
|
||||
In Odoo Accounting, it is optional to group transactions by their related statement, but depending
|
||||
on your business flow, you may want to record them for control purposes.
|
||||
|
||||
.. important::
|
||||
If you want to compare the ending balances of your bank statements with the ending balances of
|
||||
your financial records, *don't forget to create an opening transaction* to record the bank
|
||||
account balance as of the date you begin synchronizing or importing transactions. This is
|
||||
necessary to ensure the accuracy of your accounting.
|
||||
|
||||
To access a list of statements, go to your :guilabel:`Accounting Dashboard`, click on the vertical
|
||||
ellipsis (:guilabel:`⋮`) button next to the bank or cash journal you want to check, then on
|
||||
:guilabel:`Statements`
|
||||
|
||||
Statement creation from the kanban view
|
||||
---------------------------------------
|
||||
|
||||
Open the bank reconciliation view by clicking on the name of the bank journal, and identify the
|
||||
transaction corresponding to the last transaction of your bank statement. Click on the
|
||||
:guilabel:`STATEMENT` button when hovering on the upper separator line.
|
||||
|
||||
.. image:: transactions/statements-kanban.png
|
||||
:alt: A "STATEMENT" button is visible when hovering on the line separating two transactions.
|
||||
|
||||
Fill out the statement's details and save. The newly created statement includes the previous
|
||||
transactions following the last statement.
|
||||
|
||||
Statement creation from the list view
|
||||
-------------------------------------
|
||||
|
||||
Open the list of transactions by clicking on the name of the bank journal and switching to the list
|
||||
view. Select all the transactions corresponding to the bank statement, and, in the
|
||||
:guilabel:`Statement` column, select an existing statement or create a new one by typing its
|
||||
reference, clicking on :guilabel:`Create and edit...`, filling out the statement's details, and
|
||||
saving.
|
||||
|
|
|
|||
|
After Width: | Height: | Size: 11 KiB |
|
|
@@ -20,88 +20,104 @@ Odoo supports, among others, the following formats.
|
|||
|
||||
* - Format Name
|
||||
- Applicability
|
||||
* - Factur-X (PDF/A-3)
|
||||
- For French and German companies
|
||||
* - Peppol BIS Billing 3.0 (UBL)
|
||||
- For companies whose countries are part of the `EAS list
|
||||
<https://docs.peppol.eu/poacc/billing/3.0/codelist/eas/>`_
|
||||
* - E-FFF
|
||||
- For Belgian companies
|
||||
* - Factur-X (CII)
|
||||
- All customers
|
||||
* - Peppol BIS Billing 3.0
|
||||
- All customers
|
||||
* - XRechnung (UBL)
|
||||
- For German companies
|
||||
- All customers
|
||||
* - Fattura PA (IT)
|
||||
- For Italian companies
|
||||
- Italian companies
|
||||
* - CFDI (4.0)
|
||||
- For Mexican companies
|
||||
- Mexican companies
|
||||
* - Peru UBL 2.1
|
||||
- For Peruvian companies
|
||||
- Peruvian companies
|
||||
* - SII IVA Llevanza de libros registro (ES)
|
||||
- For Spanish companies
|
||||
- Spanish companies
|
||||
* - UBL 2.1 (Columbia)
|
||||
- For Colombian companies
|
||||
- Colombian companies
|
||||
* - Egyptian Tax Authority
|
||||
- For Egyptian companies
|
||||
- Egyptian companies
|
||||
* - E-Invoice (IN)
|
||||
- For Indian companies
|
||||
- Indian companies
|
||||
* - NLCIUS (Netherlands)
|
||||
- For Dutch companies
|
||||
- Dutch companies
|
||||
* - EHF 3.0
|
||||
- For Norwegian companies
|
||||
- Norwegian companies
|
||||
* - SG BIS Billing 3.0
|
||||
- Singaporean companies
|
||||
* - A-NZ BIS Billing 3.0
|
||||
- For Australian/New Zealand companies
|
||||
- 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::
|
||||
:ref:`fiscal_localizations/packages`
|
||||
:doc:`../../../fiscal_localizations`
|
||||
|
||||
.. _e-invoicing/configuration:
|
||||
|
||||
Configuration
|
||||
=============
|
||||
|
||||
Go to :menuselection:`Accounting --> Configuration --> Journals --> Customer Invoices --> Advanced
|
||||
Settings --> Electronic Invoicing` and enable the formats you need for this journal.
|
||||
By default, the format available in the :ref:`send window <e-invoicing/generation>` depends on your
|
||||
customer's country.
|
||||
|
||||
.. image:: electronic_invoicing/formats.png
|
||||
:align: center
|
||||
:alt: Select the EDI format you need
|
||||
You can define a specific e-invoicing format for each customer. To do so, go to
|
||||
:menuselection:`Accounting --> Customers --> Customers`, open the customer form, go to the
|
||||
:guilabel:`Accounting` tab and select the appropriate format.
|
||||
|
||||
Once an electronic invoicing format is enabled, XML documents are generated when clicking on
|
||||
:guilabel:`Confirm` in documents such as invoices, credit notes, etc. These documents are either
|
||||
visible in the attachment section, or embedded in the PDF.
|
||||
.. image:: electronic_invoicing/customer-form.png
|
||||
:alt: Select an EDI format for a specific customer
|
||||
|
||||
.. note::
|
||||
- For E-FFF, the xml file only appears after having generated the PDF (:guilabel:`Print` or
|
||||
:guilabel:`Send & Print` button), since the PDF needs to be embedded inside the xml.
|
||||
- Every PDF generated from Odoo contains a :guilabel:`Factur-X` XML file (for interoperability purpose).
|
||||
For German and French companies, the option :guilabel:`Factur-X (PDF/A-3)` in addition enables
|
||||
validation checks on the invoice and generates a PDF/A-3 compliant file, required by plaftorms like Chorus Pro.
|
||||
- The formats available depend on the country registered in your company's :guilabel:`General
|
||||
Information`.
|
||||
- Odoo supports the **Peppol BIS Billing 3.0** format that can be used via existing access
|
||||
points.
|
||||
Peppol formats
|
||||
--------------
|
||||
|
||||
Add new formats to a database created before July 2022
|
||||
------------------------------------------------------
|
||||
Use the fields :guilabel:`Peppol e-address (EAS)` and :guilabel:`Peppol Endpoint` to identify the
|
||||
recipient in the Peppol Network.
|
||||
|
||||
If your database was created before July 2022 and you wish to use one of the formats available from
|
||||
July 2022, you have to :ref:`install <general/install>` the module :guilabel:`Import/Export
|
||||
electronic invoices with UBL/CII` (module’s technical name: `account_edi_ubl_cii`) and your
|
||||
country-specific module.
|
||||
.. seealso::
|
||||
`Peppol BIS Billing 3.0 - Electronic Address Scheme (EAS) code list
|
||||
<https://docs.peppol.eu/poacc/billing/3.0/codelist/eas/>`_
|
||||
|
||||
.. example::
|
||||
If you want to use the Belgian format E-FFF in a database created prior to July 2022, you need to
|
||||
:ref:`install <general/install>`:
|
||||
|
||||
.. list-table::
|
||||
:header-rows: 1
|
||||
|
||||
* - Name
|
||||
- Technical name
|
||||
* - Belgium - E-Invoicing (UBL 2.0, e-fff)
|
||||
- `l10n_be_edi`
|
||||
* - Import/Export electronic invoices with UBL/CII
|
||||
- `account_edi_ubl_cii`
|
||||
* - Partner's country
|
||||
- Peppol e-address (EAS)
|
||||
- Peppol Endpoint
|
||||
* - Luxembourg
|
||||
- 9938 - Luxemburg VAT number
|
||||
- a valid Luxemburgish VAT number
|
||||
* - Netherlands
|
||||
- 0190 - Dutch Originator's Identification Number
|
||||
- a valid OIN number
|
||||
* - Belgium
|
||||
- 9925 - Belgium VAT number
|
||||
- a valid Belgian VAT number
|
||||
|
||||
.. note::
|
||||
Once the new module is installed, UBL 2.0 and UBL 2.1 formats no longer appear in the journal
|
||||
since UBL BIS Billing 3.0 is available and more widely supported.
|
||||
National electronic invoicing
|
||||
-----------------------------
|
||||
|
||||
Depending on your company's country (e.g., :doc:`Italy <../../../fiscal_localizations/italy>`,
|
||||
:doc:`Spain <../../../fiscal_localizations/spain>`, :doc:`Mexico
|
||||
<../../../fiscal_localizations/mexico>`, etc.), you may be required to issue e-invoicing documents in
|
||||
a specific format for all your invoices. In this case, you can define a default e-invoicing format
|
||||
for your sales journal.
|
||||
|
||||
To do so, go to :menuselection:`Accounting --> Configuration --> Journals`, open your sales journal,
|
||||
go to the :guilabel:`Advanced Settings` tab, and enable the formats you need for this journal.
|
||||
|
||||
.. _e-invoicing/generation:
|
||||
|
||||
E-invoices generation
|
||||
=====================
|
||||
|
||||
From a confirmed invoice, click :guilabel:`Send & Print` to open the send window. Check the
|
||||
e-invoicing option to generate and attach the e-invoice file.
|
||||
|
||||
.. image:: electronic_invoicing/send-window.png
|
||||
:alt: The Peppol option is checked and an e-invoicing XML file is attached to the email.
|
||||
|
|
|
|||
|
After Width: | Height: | Size: 11 KiB |
|
Before Width: | Height: | Size: 7.7 KiB |
|
After Width: | Height: | Size: 16 KiB |
|
|
@@ -103,7 +103,7 @@ The frequency of the invoicing and the services/products invoiced are
|
|||
defined on the contract.
|
||||
|
||||
.. seealso::
|
||||
- :doc:`/applications/sales/sales/invoicing/subscriptions`
|
||||
- :doc:`/applications/sales/subscriptions`
|
||||
|
||||
Others
|
||||
======
|
||||
|
|
|
|||
|
|
@@ -1,99 +1,71 @@
|
|||
==================================================
|
||||
Batch payments: Batch deposits (checks, cash etc.)
|
||||
==================================================
|
||||
==============================
|
||||
Batch payments by bank deposit
|
||||
==============================
|
||||
|
||||
A **Batch Deposit** groups multiple payments in a single batch. This allows you to deposit several
|
||||
payments into your bank account with a single transaction. This is particularly useful to deposit
|
||||
cash and checks.
|
||||
|
||||
This feature allows you to list several customer payments and print a **deposit slip**. This ticket
|
||||
contains the details of the transactions and a reference to the batch deposit. You can then select
|
||||
this reference during a bank reconciliation to match the single bank statement line with all the
|
||||
transactions listed in the batch deposit.
|
||||
A **batch deposit** is a convenient way to group customer payments and deposit them into your bank
|
||||
account. The feature lets you list multiple payments and generate a detailed deposit slip with a
|
||||
batch reference. This reference can be used when reconciling to match bank statement lines with
|
||||
transactions in the batch deposit.
|
||||
|
||||
Configuration
|
||||
=============
|
||||
|
||||
To activate the feature, go to :menuselection:`Accounting --> Configuration --> Settings -->
|
||||
Customer Payments`, activate **Batch Payments**, and click on *Save*.
|
||||
|
||||
Payment Method Types
|
||||
--------------------
|
||||
|
||||
To record new payments as part of a Batch Deposit, you have to configure first the Journal on which
|
||||
you record them.
|
||||
|
||||
To do so, go to :menuselection:`Accounting --> Configuration --> Journals`, open the Journal
|
||||
you want to edit, click on *Edit*, and open the *Advanced Settings* tab. In the *Payment Method
|
||||
Types* section, enable **Batch Deposit**, and click on *Save*.
|
||||
|
||||
.. image:: batch/batch-journal-settings.png
|
||||
:align: center
|
||||
:alt: Payment Method Types in a journal's advanced settings
|
||||
|
||||
.. note::
|
||||
Your main bank accounts are automatically configured to process batch payments when you activate
|
||||
the feature.
|
||||
Go to :menuselection:`Accounting --> Configuration --> Settings --> Customer Payments` and tick
|
||||
:guilabel:`Batch Payments` to activate the feature.
|
||||
|
||||
Deposit multiple payments in batch
|
||||
==================================
|
||||
|
||||
Record payments to deposit in batch
|
||||
-----------------------------------
|
||||
Register payments
|
||||
-----------------
|
||||
|
||||
:doc:`Register the payments <recording>` on the bank account on which you plan to deposit them by
|
||||
opening the *Customer Invoice* for which you received a payment, and clicking on *Register Payment*.
|
||||
There, select the appropriate Journal linked to your bank account and select *Batch Deposit* as
|
||||
Payment Method.
|
||||
Before performing a batch deposit, it is necessary to register each transaction's payment. To do so,
|
||||
open the corresponding customer invoice and click :guilabel:`Register Payment`. In the pop-up
|
||||
window, select the :guilabel:`Journal` linked to your bank account and :guilabel:`Batch Deposit` as
|
||||
the :guilabel:`Payment Method`, and click :guilabel:`Create Payment`.
|
||||
|
||||
.. image:: batch/batch-register-payment.png
|
||||
.. image:: batch/batch-payments.png
|
||||
:align: center
|
||||
:alt: Registering a customer payment as part of a Batch Deposit in Odoo Accounting
|
||||
:alt: Registering a customer payment as part of a batch deposit
|
||||
|
||||
Do this step for all checks or payments you want to process in batch.
|
||||
|
||||
.. note::
|
||||
Make sure to write the payment reference in the **Memo** field.
|
||||
|
||||
Add payments to a Batch Deposit
|
||||
Add payments to a batch deposit
|
||||
-------------------------------
|
||||
|
||||
To add the payments to a Batch Deposit, go to :menuselection:`Accounting --> Customers --> Batch
|
||||
Payments`, and click on *Create*. Next, select the Bank and Payment Method, then click on *Add a
|
||||
line*.
|
||||
To add payments to a batch deposit, go to :menuselection:`Accounting --> Customers --> Batch
|
||||
Payments`, and click :guilabel:`New`. Next, select the :guilabel:`Bank` and choose :guilabel:`Batch
|
||||
Deposit` as the :guilabel:`Payment Method`.
|
||||
|
||||
.. image:: batch/batch-new-inbound.png
|
||||
.. image:: batch/batch-customer-payment.png
|
||||
:align: center
|
||||
:alt: Filling out a new Inbound Batch Payment form on Odoo Accounting
|
||||
:alt: Filling out a new inbound batch payment form
|
||||
|
||||
Select all payments to include in the current Batch Deposit and click on *Select*. You can also
|
||||
record a new payment and add it to the list by clicking on *Create*.
|
||||
Click :guilabel:`Add a line`. In the pop-up window, tick all payments to include in the batch
|
||||
deposit, then click :guilabel:`Select`.
|
||||
|
||||
.. image:: batch/batch-payments-selection.png
|
||||
.. image:: batch/batch-lines-selection.png
|
||||
:align: center
|
||||
:alt: Selection of all payments to include in the Batch Deposit
|
||||
:alt: Selecting all payments to include in the batch deposit
|
||||
|
||||
Once done, click on *Validate* to finalize your Batch Deposit. You can then click on *Print* to
|
||||
download a PDF file to include with the deposit slip that the bank usually requires to fill out.
|
||||
Once done, click :guilabel:`Validate` to finalize the batch deposit.
|
||||
|
||||
Bank Reconciliation
|
||||
.. tip::
|
||||
Click :guilabel:`Print` to download a PDF file to include with the deposit slip.
|
||||
|
||||
Bank reconciliation
|
||||
-------------------
|
||||
|
||||
Once the bank statements are on your database, you can reconcile the bank statement line with the
|
||||
*Batch Payment* reference. To do so, start your **Bank Reconciliation** by going to your Accounting
|
||||
dashboard and clicking on *Reconcile Items* on the related bank account. At the bank statement line,
|
||||
click on *Choose counterpart or Create Write-off* to display more options, open the *Batch Payments*
|
||||
tab, and select your Batch Payment. All related payments are automatically added.
|
||||
Once the bank transactions are on your database, you can reconcile bank statement lines with the
|
||||
batch payment. To do so, go to the :guilabel:`Accounting Dashboard` and click :guilabel:`Reconcile
|
||||
Items` on the related bank account. Go to the :guilabel:`Batch Payments` tab to select a specific
|
||||
batch and click :guilabel:`Validate` to finalize the process.
|
||||
|
||||
.. image:: batch/batch-reconciliation.png
|
||||
:align: center
|
||||
:alt: Reconciling the batch payment with all its transactions
|
||||
|
||||
.. note::
|
||||
The *Batch Payments* tab won't appear if a Partner is selected for this bank statement line.
|
||||
|
||||
.. image:: batch/batch-bank-reconciliation.png
|
||||
:align: center
|
||||
:alt: Reconciliation of the Batch Payment with all its transactions
|
||||
|
||||
If a check, or a payment, couldn't be processed by the bank and is missing, remove the related
|
||||
payment before validating the bank reconciliation.
|
||||
If a specific payment could not be processed by the bank or is missing, remove the related
|
||||
payment before reconciling.
|
||||
|
||||
.. seealso::
|
||||
- :doc:`recording`
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 18 KiB |
|
After Width: | Height: | Size: 7.4 KiB |
|
Before Width: | Height: | Size: 4.8 KiB |
|
After Width: | Height: | Size: 15 KiB |
|
Before Width: | Height: | Size: 14 KiB |
|
After Width: | Height: | Size: 8.0 KiB |
|
After Width: | Height: | Size: 17 KiB |
|
Before Width: | Height: | Size: 7.0 KiB |
|
|
@@ -24,19 +24,13 @@ Odoo automatically installs the appropriate package for your company, according
|
|||
selected at the creation of the database.
|
||||
|
||||
.. important::
|
||||
As long as you haven't posted any entry, you can still add and select another package.
|
||||
As long as you haven't posted any entry, you can still select another package.
|
||||
|
||||
To install a new package, go to :menuselection:`Accounting --> Configuration --> Fiscal
|
||||
Localization`, click on **Install More Packages**, and install your country's module.
|
||||
To select a fiscal localization package for your company, go to :menuselection:`Accounting -->
|
||||
Configuration --> Settings --> Fiscal Localization`, select the appropriate package from the list
|
||||
and save.
|
||||
|
||||
.. image:: fiscal_localizations/packages_modules.png
|
||||
:align: center
|
||||
:alt: Install the appropriate module as fiscal localization package in Odoo Accounting.
|
||||
|
||||
Once done, select your country's package, and click on *Save*.
|
||||
|
||||
.. image:: fiscal_localizations/packages_selection.png
|
||||
:align: center
|
||||
.. image:: fiscal_localizations/package-selection.png
|
||||
:alt: Select your country's fiscal localization package in Odoo Accounting.
|
||||
|
||||
Use
|
||||
|
|
|
|||
|
|
@@ -24,315 +24,477 @@ localization:
|
|||
- :ref:`Indian e-invoicing integration <india/e-invoicing>`
|
||||
* - :guilabel:`Indian E-waybill`
|
||||
- `l10n_in_edi_ewaybill`
|
||||
- :ref:`Indian E-waybill integration <india/e-waybill>`
|
||||
- :ref:`Indian E-way bill integration <india/e-waybill>`
|
||||
* - :guilabel:`Indian - GSTR India eFiling`
|
||||
- `l10n_in_reports_gstr`
|
||||
- :ref:`Indian GST Return filing <india/gstr>`
|
||||
* - :guilabel:`Indian - Accounting Reports`
|
||||
- `l10n_in_reports`
|
||||
- :ref:`Indian tax reports <india/gstr_reports>`
|
||||
* - :guilabel:`Indian - Purchase Report(GST)`
|
||||
- `l10n_in_purchase`
|
||||
- Indian GST Purchase report
|
||||
* - :guilabel:`Indian - Sale Report(GST)`
|
||||
- `l10n_in_sale`
|
||||
- Indian GST Sale report
|
||||
* - :guilabel:`Indian - Stock Report(GST)`
|
||||
- `l10n_in_stock`
|
||||
- Indian GST Stock report
|
||||
|
||||
.. image:: india/india-modules.png
|
||||
:alt: Indian localization modules
|
||||
|
||||
.. _india/e-invoicing:
|
||||
|
||||
Indian e-invoicing
|
||||
==================
|
||||
e-Invoice system
|
||||
================
|
||||
|
||||
Odoo is compliant with the **Indian Goods and Services Tax (GST) e-Invoice system** requirements.
|
||||
|
||||
.. important::
|
||||
Indian e-invoicing is available from Odoo 15.0. If needed, :doc:`upgrade
|
||||
</administration/upgrade>` your database.
|
||||
Setup
|
||||
-----
|
||||
|
||||
.. _india/e-invoicing-api:
|
||||
|
||||
Registration on your NIC e-Invoice web portal
|
||||
---------------------------------------------
|
||||
NIC e-Invoice registration
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
You must register on the **NIC e-Invoice** web portal to get your **API credentials**. You need
|
||||
these credentials to :ref:`configure your Odoo Accounting app <india/e-invoicing-configuration>`.
|
||||
You must register on the :abbr:`NIC (National Informatics Centre)` e-Invoice portal to get your
|
||||
**API credentials**. You need these credentials to :ref:`configure your Odoo Accounting app
|
||||
<india/e-invoicing-configuration>`.
|
||||
|
||||
#. Log in to the NIC e-Invoice web portal at https://einvoice1.gst.gov.in/ by clicking on
|
||||
:guilabel:`Login` and entering your :guilabel:`Username` and :guilabel:`Password`.
|
||||
#. Log in to the `NIC e-Invoice portal <https://einvoice1.gst.gov.in/>`_ by clicking
|
||||
:guilabel:`Login` and entering your :guilabel:`Username` and :guilabel:`Password`;
|
||||
|
||||
.. note::
|
||||
If you have already registered on the NIC Eway Bill Production portal, then you can use the
|
||||
same login credentials here.
|
||||
If you are already registered on the NIC portal, you can use the same login credentials.
|
||||
|
||||
.. image:: india/e-invoice-system-login.png
|
||||
:align: center
|
||||
:alt: Register Odoo ERP system on e-invoice web portal
|
||||
|
||||
#. From your dashboard, go to :menuselection:`API Registration --> User Credentials --> Create API
|
||||
User`.
|
||||
|
||||
.. image:: india/e-invoice-create-api-user.png
|
||||
:align: center
|
||||
:alt: Click on User Credentials and Create API User
|
||||
|
||||
#. After that, you receive an :abbr:`OTP (one-time password)` code to your registered mobile number.
|
||||
#. Enter the OTP code and click on :guilabel:`Verify OTP`.
|
||||
|
||||
.. image:: india/trigger-otp.png
|
||||
:align: center
|
||||
:alt: Trigger an OTP to your registered phone number
|
||||
|
||||
#. Select :guilabel:`Through GSP` in the first field, select :guilabel:`Tera Software Limited`
|
||||
as your GSP, and type in a :guilabel:`Username` and :guilabel:`Password` for your API.
|
||||
#. From the dashboard, go to :menuselection:`API Registration --> User Credentials --> Create API
|
||||
User`;
|
||||
#. After that, you should receive an :abbr:`OTP (one-time password)` code on your registered mobile
|
||||
number. Enter the OTP code and click :guilabel:`Verify OTP`;
|
||||
#. Select :guilabel:`Through GSP` for the API interface, set :guilabel:`Tera Software Limited` as
|
||||
GSP, and type in a :guilabel:`Username` and :guilabel:`Password` for your API. Once it is done,
|
||||
click :guilabel:`Submit`.
|
||||
|
||||
.. image:: india/submit-api-registration-details.png
|
||||
:align: center
|
||||
:alt: Submit API specific Username and Password
|
||||
|
||||
#. Click on :guilabel:`Submit`.
|
||||
|
||||
.. _india/e-invoicing-configuration:
|
||||
|
||||
Configuration on Odoo
|
||||
---------------------
|
||||
Configuration in Odoo
|
||||
~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
To set up the e-invoice service, go to :menuselection:`Accounting --> Configuration --> Settings -->
|
||||
Indian Electronic Invoicing`, and enter the :guilabel:`Username` and :guilabel:`Password`.
|
||||
To enable the e-Invoice service in Odoo, go to :menuselection:`Accounting --> Configuration -->
|
||||
Settings --> Indian Electronic Invoicing`, and enter the :guilabel:`Username` and
|
||||
:guilabel:`Password` previously set for the API.
|
||||
|
||||
.. image:: india/e-invoice-setup.png
|
||||
:align: center
|
||||
:alt: Setup e-invoice service
|
||||
|
||||
.. _india/e-invoicing-journals:
|
||||
|
||||
Journals
|
||||
~~~~~~~~
|
||||
********
|
||||
|
||||
Your default *sales* journal should be already configured correctly. You can check it or configure
|
||||
other journals by going to :menuselection:`Accounting --> Configuration --> Journals`. Then, open
|
||||
your *sales* journal, and in the :guilabel:`Advanced Settings` tab, under :guilabel:`Electronic Data
|
||||
Interchange`, check :guilabel:`E-Invoice (IN)` and :guilabel:`Save`.
|
||||
|
||||
.. image:: india/journal-configuration.png
|
||||
:align: center
|
||||
:alt: Journal configuration
|
||||
To automatically send e-Invoices to the NIC e-Invoice portal, you must first configure your *sales*
|
||||
journal by going to :menuselection:`Accounting --> Configuration --> Journals`, opening your *sales*
|
||||
journal, and in the :guilabel:`Advanced Settings` tab, under :guilabel:`Electronic Data
|
||||
Interchange`, enable :guilabel:`E-Invoice (IN)` and save.
|
||||
|
||||
.. _india/e-invoicing-workflow:
|
||||
|
||||
Workflow
|
||||
--------
|
||||
|
||||
To start invoicing from Odoo, an invoice must be created using the standard invoicing flow, that is,
|
||||
either from a sales order or the invoice menu in the Accounting application.
|
||||
|
||||
.. _india/invoice-validation:
|
||||
|
||||
Invoice validation
|
||||
~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Once the invoice is validated, a confirmation message is displayed at the top.
|
||||
|
||||
Odoo automatically uploads the JSON-signed file to the government portal after a while. If you want
|
||||
to process the invoice immediately, you can click on :guilabel:`Process Now`.
|
||||
Once an invoice is validated, a confirmation message is displayed at the top. Odoo automatically
|
||||
uploads the JSON-signed file of validated invoices to the NIC e-Invoice portal after some time. If
|
||||
you want to process the invoice immediately, click :guilabel:`Process now`.
|
||||
|
||||
.. image:: india/e-invoice-process.png
|
||||
:align: center
|
||||
:alt: Indian e-invoicing confirmation message: "The invoice will be processed asynchronously by
|
||||
the following E-invoicing service : E-Invoice (IN)"
|
||||
:alt: Indian e-invoicing confirmation message
|
||||
|
||||
.. note::
|
||||
- You can find the JSON-signed file in the attached files, in the chatter.
|
||||
- You can check the status of EDI with web-service under the :guilabel:`EDI Document` tab or the
|
||||
:guilabel:`Electronic invoicing` field.
|
||||
- You can find the JSON-signed file in the attached files in the chatter.
|
||||
- You can check the document's :abbr:`EDI (electronic data interchange)` status under the
|
||||
:guilabel:`EDI Document` tab or the :guilabel:`Electronic invoicing` field of the invoice.
|
||||
|
||||
.. _india/invoice-pdf-report:
|
||||
|
||||
Invoice PDF Report
|
||||
Invoice PDF report
|
||||
~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Once the invoice is submitted and validated, you can print the invoice PDF report. The report
|
||||
includes the :abbr:`IRN (Invoice Reference Number)`, acknowledgment number and date, and QR code.
|
||||
They certify that the invoice is a valid fiscal document.
|
||||
Once an invoice is validated and submitted, the invoice PDF report can be printed. The report
|
||||
includes the :abbr:`IRN (Invoice Reference Number)`, :guilabel:`Ack. No` (acknowledgment number) and
|
||||
:guilabel:`Ack. Date` (acknowledgment date), and QR code. These certify that the invoice is a valid
|
||||
fiscal document.
|
||||
|
||||
.. image:: india/invoice-report.png
|
||||
:align: center
|
||||
:alt: IRN and QR code
|
||||
|
||||
.. _india/edi-cancellation:
|
||||
|
||||
EDI Cancellation
|
||||
~~~~~~~~~~~~~~~~
|
||||
e-Invoice cancellation
|
||||
~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
If you want to cancel an e-invoice, go to the :guilabel:`Other info` tab of the invoice and fill out
|
||||
the :guilabel:`Cancel reason` and :guilabel:`Cancel remarks` fields. Then, click on
|
||||
:guilabel:`Request EDI cancellation`. The status of the :guilabel:`Electronic invoicing` field
|
||||
changes to :guilabel:`To Cancel`.
|
||||
If you want to cancel an e-Invoice, go to the :guilabel:`Other info` tab of the invoice and fill out
|
||||
the :guilabel:`Cancel reason` and :guilabel:`Cancel remarks` fields. Then, click :guilabel:`Request
|
||||
EDI cancellation`. The status of the :guilabel:`Electronic invoicing` field changes to :guilabel:`To
|
||||
Cancel`.
|
||||
|
||||
.. important::
|
||||
Doing so cancels both the :ref:`E-invoice <india/e-invoicing>` and the :ref:`E-waybill
|
||||
Doing so cancels both the :ref:`e-Invoice <india/e-invoicing>` and the :ref:`E-Way bill
|
||||
<india/e-waybill>`.
|
||||
|
||||
.. image:: india/e-invoice-cancellation.png
|
||||
:align: center
|
||||
:alt: cancel reason and remarks
|
||||
|
||||
.. note::
|
||||
- If you want to abort the cancellation before processing the invoice, then click on
|
||||
:guilabel:`Call Off EDI Cancellation`.
|
||||
- Once you request to cancel the e-invoice, Odoo automatically submits the JSON Signed file to
|
||||
the government portal. You can click on :guilabel:`Process Now` if you want to process the
|
||||
- If you want to abort the cancellation before processing the invoice, then click :guilabel:`Call
|
||||
Off EDI Cancellation`.
|
||||
- Once you request to cancel the e-Invoice, Odoo automatically submits the JSON-signed file to
|
||||
the NIC e-Invoice portal. You can click :guilabel:`Process now` if you want to process the
|
||||
invoice immediately.
|
||||
|
||||
.. _india/verify-e-invoice:
|
||||
|
||||
Verify the e-invoice from the GST
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
GST e-Invoice verification
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
After submitting an e-invoice, you can also verify the signed invoice from the GST e-Invoice system
|
||||
website.
|
||||
After submitting an e-Invoice, you can verify if the invoice is signed from the GST e-Invoice system
|
||||
website itself.
|
||||
|
||||
#. Download the JSON file from the attached files.
|
||||
#. Open the e-invoice portal: https://einvoice1.gst.gov.in/ and go to :menuselection:`Search -->
|
||||
Verify Signed Invoice`.
|
||||
#. Select the JSON file and submit it.
|
||||
#. Download the JSON file from the attached files. It can be found in the chatter of the related
|
||||
invoice;
|
||||
#. Open the `NIC e-Invoice portal <https://einvoice1.gst.gov.in/>`_ and go to
|
||||
:menuselection:`Search --> Verify Signed Invoice`;
|
||||
#. Select the JSON file and submit it;
|
||||
|
||||
.. image:: india/verify-invoice.png
|
||||
:align: center
|
||||
:alt: select the JSON file for verify invoice
|
||||
|
||||
#. You can check the verified signed e-invoice here.
|
||||
If the file is signed, a confirmation message is displayed.
|
||||
|
||||
.. image:: india/signed-invoice.png
|
||||
:align: center
|
||||
:alt: verified e-invoice
|
||||
|
||||
.. _india/e-waybill:
|
||||
|
||||
Indian E-waybill
|
||||
================
|
||||
E-Way bill
|
||||
==========
|
||||
|
||||
Setup
|
||||
-----
|
||||
|
||||
Odoo is compliant with the **Indian Goods and Services Tax (GST) E-waybill system** requirements.
|
||||
|
||||
.. important::
|
||||
Indian E-waybill is available from Odoo 15.0. If needed, :doc:`upgrade </administration/upgrade>`
|
||||
your database.
|
||||
|
||||
.. _india/e-waybill-api:
|
||||
|
||||
API Registration on your NIC E-waybill web portal
|
||||
-------------------------------------------------
|
||||
API registration on NIC E-Way bill
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
You must register on the **NIC E-waybill** web portal to create your **API credentials**. You need
|
||||
these credentials to :ref:`configure your Odoo Accounting app <india/e-waybill-configuration>`.
|
||||
You must register on the :abbr:`NIC (National Informatics Centre)` E-Way bill portal to create your
|
||||
**API credentials**. You need these credentials to :ref:`configure your Odoo Accounting app
|
||||
<india/e-waybill-configuration>`.
|
||||
|
||||
#. Log in to the NIC E-waybill web portal at https://ewaybillgst.gov.in/ by clicking on
|
||||
:guilabel:`Login` and entering your :guilabel:`Username` and :guilabel:`Password`.
|
||||
|
||||
.. image:: india/e-waybill-system-login.png
|
||||
:align: center
|
||||
:alt: E-waybill login
|
||||
|
||||
#. From your dashboard, go to :menuselection:`Registration --> For GSP`.
|
||||
|
||||
.. image:: india/e-waybill-registration-menu.png
|
||||
:align: center
|
||||
:alt: E-waybill registration
|
||||
|
||||
#. Click on :guilabel:`Send OTP`; you should receive an :abbr:`OTP (one-time password)` code to your
|
||||
registered mobile number.
|
||||
#. Enter the OTP code and click on :guilabel:`Verify OTP`.
|
||||
|
||||
.. image:: india/e-waybill-gsp-registration.png
|
||||
:align: center
|
||||
:alt: E-waybill OTP verification
|
||||
|
||||
#. Check if :guilabel:`Tera Software Limited` is already on the list of registered GSP/ERP. If so,
|
||||
use this username and password. Otherwise, follow the next steps.
|
||||
#. Log in to the `NIC E-Way bill portal <https://ewaybillgst.gov.in/>`_ by clicking
|
||||
:guilabel:`Login` and entering your :guilabel:`Username` and :guilabel:`Password`;
|
||||
#. From your dashboard, go to :menuselection:`Registration --> For GSP`;
|
||||
#. Click :guilabel:`Send OTP`. Once you have received the code on your registered mobile number,
|
||||
enter it and click :guilabel:`Verify OTP`;
|
||||
#. Check if :guilabel:`Tera Software Limited` is already on the registered GSP/ERP list. If so, use
|
||||
the username and password used to log in to the NIC portal. Otherwise, follow the next steps;
|
||||
|
||||
.. image:: india/e-waybill-gsp-list.png
|
||||
:align: center
|
||||
:alt: E-waybill list of registered GSP/ERP
|
||||
:alt: E-Way bill list of registered GSP/ERP
|
||||
|
||||
#. Select :guilabel:`Add/New`, select :guilabel:`Tera Software Limited` as your GSP Name, create a
|
||||
:guilabel:`Username` and a :guilabel:`Password` for your API, and click on :guilabel:`Add`.
|
||||
:guilabel:`Username` and a :guilabel:`Password` for your API, and click :guilabel:`Add`.
|
||||
|
||||
.. image:: india/e-waybill-registration-details.png
|
||||
:align: center
|
||||
:alt: Submit GSP API registration details
|
||||
|
||||
.. _india/e-waybill-configuration:
|
||||
|
||||
Configuration on Odoo
|
||||
---------------------
|
||||
Configuration in Odoo
|
||||
~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
To set up the E-waybill service, go to :menuselection:`Accounting --> Configuration --> Settings -->
|
||||
Indian Electronic WayBill --> Setup E-Waybill`, and enter your :guilabel:`Username` and
|
||||
To set up the E-Way bill service, go to :menuselection:`Accounting --> Configuration --> Settings
|
||||
--> Indian Electronic WayBill --> Setup E-Way bill`, and enter your :guilabel:`Username` and
|
||||
:guilabel:`Password`.
|
||||
|
||||
.. image:: india/e-waybill-configuration.png
|
||||
:align: center
|
||||
:alt: E-waybill setup odoo
|
||||
:alt: E-way bill setup odoo
|
||||
|
||||
.. _india/e-waybill-workflow:
|
||||
|
||||
Workflow
|
||||
--------
|
||||
|
||||
To issue an E-waybill from Odoo, you must create an invoice/bill with the details of the E-waybill
|
||||
using the standard invoicing/bill flow (either from a sales/purchase order or the invoice/bill menu
|
||||
in Accounting).
|
||||
|
||||
.. _india/e-waybill-send:
|
||||
|
||||
Send an E-waybill
|
||||
~~~~~~~~~~~~~~~~~
|
||||
Send an E-Way bill
|
||||
~~~~~~~~~~~~~~~~~~
|
||||
|
||||
You can manually send an E-waybill by clicking on :guilabel:`Send E-waybill`.
|
||||
You can manually send an E-Way bill by clicking :guilabel:`Send E-Way bill`. To send the E-Way bill
|
||||
automatically when an invoice or a bill is confirmed, enable :guilabel:`E-Way bill (IN)` in your
|
||||
:ref:`Sales or Purchase journal <india/e-invoicing-journals>`.
|
||||
|
||||
.. image:: india/e-waybill-send-button.png
|
||||
:align: center
|
||||
:alt: Send E-waybill button on invoices
|
||||
|
||||
To send the E-waybill automatically when you confirm an invoice or a bill, enable
|
||||
:guilabel:`E-waybill (IN)` in your :ref:`Sale/Purchase Journal <india/e-invoicing-journals>`.
|
||||
|
||||
.. _india/invoice-validation-e-way:
|
||||
|
||||
Invoice validation
|
||||
~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Once you have issued the invoice and clicked on :guilabel:`Send E-waybill`, a confirmation message
|
||||
is displayed.
|
||||
|
||||
.. note::
|
||||
- Odoo automatically uploads the JSON-signed file to the government portal after a while. You can
|
||||
click on :guilabel:`Process Now` if you want to process the invoice immediately.
|
||||
- You can find the JSON-signed file in the attached files in the chatter.
|
||||
Once an invoice has been issued and sent via :guilabel:`Send E-Way bill`, a confirmation message is
|
||||
displayed.
|
||||
|
||||
.. image:: india/e-waybill-process.png
|
||||
:align: center
|
||||
:alt: Indian e-waybill confirmation message: "The invoice will be processed asynchronously by
|
||||
the following E-waybill service : E-waybill (IN)"
|
||||
:alt: Indian e-Way bill confirmation message
|
||||
|
||||
Invoice PDF Report
|
||||
.. note::
|
||||
- You can find the JSON-signed file in the attached files in the chatter.
|
||||
- Odoo automatically uploads the JSON-signed file to the government portal after some time. Click
|
||||
:guilabel:`Process now` if you want to process the invoice immediately.
|
||||
|
||||
Invoice PDF report
|
||||
~~~~~~~~~~~~~~~~~~
|
||||
|
||||
You can print the invoice PDF report once you have submitted the E-waybill. The report includes the
|
||||
**E-waybill number** and the **E-waybill validity date**.
|
||||
You can print the invoice PDF report once you have submitted the E-Way bill. The report includes the
|
||||
**E-Way bill number** and the **E-Way bill validity date**.
|
||||
|
||||
.. image:: india/e-waybill-invoice-report.png
|
||||
:align: center
|
||||
:alt: E-waybill acknowledgment number and date
|
||||
:alt: E-way bill acknowledgment number and date
|
||||
|
||||
.. _india/e-waybill-cancellation:
|
||||
|
||||
E-waybill Cancellation
|
||||
~~~~~~~~~~~~~~~~~~~~~~
|
||||
E-Way bill cancellation
|
||||
~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
If you want to cancel an E-waybill, go to the :guilabel:`eWayBill` tab of the invoice and fill out
|
||||
the :guilabel:`Cancel reason` and :guilabel:`Cancel remarks` fields. Then, click on
|
||||
If you want to cancel an E-Way bill, go to the :guilabel:`E-Way bill` tab of the related invoice and
|
||||
fill out the :guilabel:`Cancel reason` and :guilabel:`Cancel remarks` fields. Then, click
|
||||
:guilabel:`Request EDI Cancellation`.
|
||||
|
||||
.. important::
|
||||
Doing so cancels both the :ref:`E-invoice <india/e-invoicing>` and the :ref:`E-waybill
|
||||
<india/e-waybill>`.
|
||||
Doing so cancels both the :ref:`e-Invoice <india/e-invoicing>` (if applicable) and the
|
||||
:ref:`E-Way bill <india/e-waybill>`.
|
||||
|
||||
.. image:: india/e-waybill-cancellation.png
|
||||
:align: center
|
||||
:alt: cancel reason and remarks
|
||||
:alt: Cancel reason and remarks
|
||||
|
||||
.. note::
|
||||
- If you want to abort the cancellation before processing the invoice, click on :guilabel:`Call
|
||||
Off EDI Cancellation`.
|
||||
- If the E-invoice is applicable for this invoice, then it will also be canceled.
|
||||
- Once you request to cancel the E-waybill, Odoo automatically submits the JSON Signed file to
|
||||
the government portal. You can click on :guilabel:`Process Now` if you want to process the
|
||||
invoice immediately.
|
||||
- If you want to abort the cancellation before processing the invoice, click :guilabel:`Call Off
|
||||
EDI Cancellation`.
|
||||
- Once you request to cancel the E-Way bill, Odoo automatically submits the JSON-signed file to
|
||||
the government portal. You can click :guilabel:`Process Now` if you want to process the invoice
|
||||
immediately.
|
||||
|
||||
.. _india/gstr:
|
||||
|
||||
Indian GST Return filing
|
||||
========================
|
||||
|
||||
.. _india/gstr_api:
|
||||
|
||||
Enable API access
|
||||
-----------------
|
||||
|
||||
To file GST Returns in Odoo, you must first enable API access on the GST portal.
|
||||
|
||||
#. Log into the `GST portal <https://services.gst.gov.in/services/login>`_ by entering your
|
||||
:guilabel:`Username` and :guilabel:`Password`, and go to :guilabel:`My Profile` on your **profile
|
||||
menu**;
|
||||
|
||||
.. image:: india/gst-portal-my-profile.png
|
||||
:alt: Click On the My Profile from profile
|
||||
|
||||
#. Select :guilabel:`Manage API Access`, and click :guilabel:`Yes` to enable API access;
|
||||
|
||||
.. image:: india/gst-portal-api-yes.png
|
||||
:alt: Click Yes
|
||||
|
||||
#. Doing so enables a :guilabel:`Duration` drop-down menu. Select the :guilabel:`Duration` of your
|
||||
preference, and click :guilabel:`Confirm`.
|
||||
|
||||
.. _india/gstr_configuration:
|
||||
|
||||
Indian GST Service In Odoo
|
||||
--------------------------
|
||||
|
||||
Once you have enabled the :ref:`API access <india/gstr_api>` on the GST portal, you can set up the
|
||||
:guilabel:`Indian GST Service` in Odoo.
|
||||
|
||||
Go to :menuselection:`Accounting --> Configuration --> Settings --> Indian GST Service` and enter
|
||||
the :guilabel:`GST Username`. Click :guilabel:`Send OTP`, enter the code, and finally,
|
||||
:guilabel:`Validate`.
|
||||
|
||||
.. image:: india/gst-setup.png
|
||||
:alt: Please enter your GST portal Username as Username
|
||||
|
||||
.. _india/gstr_workflow:
|
||||
|
||||
File-in GST Return
|
||||
------------------
|
||||
|
||||
When the :guilabel:`Indian GST Service` is configured, you can file your GST return. Go to
|
||||
:menuselection:`Accounting --> Reporting --> India --> GST Return periods` and create a new **GST
|
||||
Return Period** if it does not exist. GST Return file-in is done in **three steps** in Odoo:
|
||||
|
||||
.. note::
|
||||
**Tax Return Periodicity** can be
|
||||
:doc:`configured <../accounting/reporting/declarations/tax_returns>` according to the user's
|
||||
needs.
|
||||
|
||||
.. _india/gstr-1:
|
||||
|
||||
Send GSTR-1
|
||||
~~~~~~~~~~~
|
||||
|
||||
#. The user can verify the :ref:`GSTR-1 <india/gstr-1_report>` report before uploading it to the
|
||||
**GST portal** by clicking :guilabel:`GSTR-1 Report`;
|
||||
#. If the **GSTR-1** report is correct, then click :guilabel:`Push to GSTN` to send it to the **GST
|
||||
portal**. The status of the :guilabel:`GSTR-1` report changes to :guilabel:`Sending`;
|
||||
|
||||
.. image:: india/gst-gstr-1-sending.png
|
||||
:alt: GSTR-1 in the Sending Status
|
||||
|
||||
#. After a few seconds, the status of the **GSTR-1** report changes to :guilabel:`Waiting for
|
||||
Status`. It means that the **GSTR-1** report has been sent to the :guilabel:`GST Portal` and is
|
||||
being verified on the :guilabel:`GST Portal`;
|
||||
|
||||
.. image:: india/gst-gstr-1-waiting.png
|
||||
:alt: GSTR-1 in the Waiting for Status
|
||||
|
||||
#. Once more, after a few seconds, the status either changes to :guilabel:`Sent` or :guilabel:`Error
|
||||
in Invoice`. The status :guilabel:`Error in Invoice` indicates that some of the invoices are not
|
||||
correctly filled out to be validated by the **GST portal**;
|
||||
|
||||
- If the state of the **GSTR-1** is :guilabel:`Sent`, it means your **GSTR-1** report is ready to
|
||||
be filed on the **GST portal**.
|
||||
|
||||
.. image:: india/gst-gstr-1-sent.png
|
||||
:alt: GSTR-1 Sent
|
||||
|
||||
- If the state of the **GSTR-1** is :guilabel:`Error in Invoice`, invoices can be checked for
|
||||
errors in the :guilabel:`Log Note`. Once issues have been resolved, the user can click
|
||||
:guilabel:`Push to GSTN` to submit the file again on the **GST portal**.
|
||||
|
||||
.. image:: india/gst-gstr-1-error.png
|
||||
:alt: GSTR-1 Error in Invoice
|
||||
|
||||
.. image:: india/gst-gstr-1-error-log.png
|
||||
:alt: GSTR-1 Error in Invoice Log
|
||||
|
||||
#. Click :guilabel:`Mark as Filed` after filing the **GSTR-1** report on the **GST portal**. The
|
||||
status of the report changes to :guilabel:`Filed` in **Odoo**.
|
||||
|
||||
.. image:: india/gst-gstr-1-filed.png
|
||||
:alt: GSTR-1 in the Filed Status
|
||||
|
||||
.. _india/gstr-2B:
|
||||
|
||||
Receive GSTR-2B
|
||||
~~~~~~~~~~~~~~~
|
||||
|
||||
Users can retrieve the **GSTR-2B Report** from the **GST portal**. This automatically reconciles
|
||||
the **GSTR-2B** report with your Odoo bills;
|
||||
|
||||
#. Click :guilabel:`Fetch GSTR-2B Summary` to retrieve the **GSTR-2B** summary. After a few seconds,
|
||||
the status of the report changes to :guilabel:`Waiting for Reception`. This means Odoo is trying
|
||||
to receive the **GSTR-2B** report from the **GST portal**;
|
||||
|
||||
.. image:: india/gst-gstr-2b-waiting.png
|
||||
:alt: GSTR-2B in Waiting for Reception
|
||||
|
||||
#. Once more, after a few seconds, the status of the **GSTR-2B** changes to the :guilabel:`Being
|
||||
Processed`. It means Odoo is reconciling the **GSTR-2B** report with your Odoo bills;
|
||||
|
||||
.. image:: india/gst-gstr-2b-processed.png
|
||||
:alt: GSTR-2B in Waiting for Reception
|
||||
|
||||
#. Once it is done, the status of the **GSTR-2B** report changes to either :guilabel:`Matched` or
|
||||
:guilabel:`Partially Matched`;
|
||||
|
||||
- If the status is :guilabel:`Matched`:
|
||||
|
||||
.. image:: india/gst-gstr-2b-matched.png
|
||||
:alt: GSTR-2B Matched
|
||||
|
||||
- If the status is :guilabel:`Partially Matched`, you can make changes in bills by clicking
|
||||
:guilabel:`View Reconciled Bills`. Once it is done, click :guilabel:`re-match`.
|
||||
|
||||
.. image:: india/gst-gstr-2b-partially.png
|
||||
:alt: GSTR-2B Partially Matched
|
||||
|
||||
.. image:: india/gst-gstr-2b-reconcile.png
|
||||
:alt: GSTR-2B Reconciled Bills
|
||||
|
||||
.. _india/gstr-3:
|
||||
|
||||
GSTR-3 report
|
||||
~~~~~~~~~~~~~
|
||||
|
||||
The :ref:`GSTR-3 <india/gstr-3_report>` report is a monthly summary of **sales** and **purchases**.
|
||||
This return is auto-generated by extracting information from **GSTR-1** and **GSTR-2**.
|
||||
|
||||
#. Users can compare the **GSTR-3** report with the **GSTR-3** report available on the
|
||||
**GST portal** to verify if they match by clicking :guilabel:`GSTR-3 Report`;
|
||||
|
||||
#. Once the **GSTR-3** report has been verified by the user and the tax amount on the **GST portal**
|
||||
has been paid. Once paid, the report can be **closed** by clicking :guilabel:`Closing Entry`;
|
||||
|
||||
.. image:: india/gst-gstr-3.png
|
||||
:alt: GSTR-3
|
||||
|
||||
#. In :guilabel:`Closing Entry`, add the tax amount paid on the **GST portal** using challan, and
|
||||
click :guilabel:`POST` to post the :guilabel:`Closing Entry`;
|
||||
|
||||
.. image:: india/gst-gstr-3-post.png
|
||||
:alt: GSTR-3 Post Entry
|
||||
|
||||
#. Once posted, the **GSTR-3** report status changes to :guilabel:`Filed`.
|
||||
|
||||
.. image:: india/gst-gstr-3-filed.png
|
||||
:alt: GSTR-3 Filed
|
||||
|
||||
.. _india/gstr_reports:
|
||||
|
||||
Tax reports
|
||||
===========
|
||||
|
||||
.. _india/gstr-1_report:
|
||||
|
||||
GSTR-1 report
|
||||
-------------
|
||||
|
||||
The :guilabel:`GSTR-1` report is divided into sections. It displays the :guilabel:`Base` amount,
|
||||
:abbr:`CGST (Central Goods and Services Tax)`, :abbr:`SGST (State Goods and Service Tax)`,
|
||||
:abbr:`IGST (Integrated Goods and Services Tax)`, and :guilabel:`CESS` for each section.
|
||||
|
||||
.. image:: india/gst-gstr-1-sale-report.png
|
||||
:alt: GSTR-1 Report
|
||||
|
||||
.. _india/gstr-3_report:
|
||||
|
||||
GSTR-3 report
|
||||
-------------
|
||||
|
||||
The :guilabel:`GSTR-3` report contains different sections:
|
||||
|
||||
- Details of inward and outward supply subject to a **reverse charge**;
|
||||
- Eligible :abbr:`ITC (Income Tax Credit)`;
|
||||
- Values of **exempt**, **Nil-rated**, and **non-GST** inward supply;
|
||||
- Details of inter-state supplies made to **unregistered** persons.
|
||||
|
||||
.. image:: india/gst-gstr-3-report.png
|
||||
:alt: GSTR-3 Report
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 19 KiB |
|
Before Width: | Height: | Size: 6.6 KiB |
|
Before Width: | Height: | Size: 8.1 KiB |
|
Before Width: | Height: | Size: 19 KiB |
|
After Width: | Height: | Size: 24 KiB |
|
After Width: | Height: | Size: 13 KiB |
|
After Width: | Height: | Size: 10 KiB |
|
After Width: | Height: | Size: 32 KiB |
|
After Width: | Height: | Size: 10 KiB |
|
After Width: | Height: | Size: 13 KiB |
|
After Width: | Height: | Size: 13 KiB |
|
After Width: | Height: | Size: 15 KiB |
|
After Width: | Height: | Size: 15 KiB |
|
After Width: | Height: | Size: 12 KiB |
|
After Width: | Height: | Size: 7.0 KiB |
|
After Width: | Height: | Size: 15 KiB |
|
After Width: | Height: | Size: 10 KiB |
|
After Width: | Height: | Size: 21 KiB |
|
After Width: | Height: | Size: 31 KiB |
|
After Width: | Height: | Size: 11 KiB |
|
After Width: | Height: | Size: 14 KiB |
|
After Width: | Height: | Size: 36 KiB |
|
After Width: | Height: | Size: 10 KiB |
|
After Width: | Height: | Size: 14 KiB |
|
Before Width: | Height: | Size: 16 KiB |
|
Before Width: | Height: | Size: 29 KiB After Width: | Height: | Size: 16 KiB |
|
Before Width: | Height: | Size: 28 KiB |
|
|
@@ -174,8 +174,9 @@ Do the same for all the sales taxes that the company needs, either those that co
|
|||
Odoo, or those that you add that are necessary for your company bill.
|
||||
|
||||
.. tip::
|
||||
For the 0% VAT tax, select the option *Exento* instead of *Tasa* within the **Factor Type**
|
||||
field.
|
||||
For the 0% VAT tax, select the option :guilabel:`Tasa` within the :guilabel:`Factor Type` field.
|
||||
For the 0% VAT **exempt** tax, select the option :guilabel:`Exento` instead of :guilabel:`Tasa`
|
||||
within the :guilabel:`Factor Type` field.
|
||||
|
||||
When registering a payment, Odoo will carry out the movement of taxes from the **Cash Basis
|
||||
Transition Account** to the account set in the **Definition** tab. For such movement, a tax base
|
||||
|
|
|
|||
|
After Width: | Height: | Size: 4.2 KiB |
|
Before Width: | Height: | Size: 21 KiB |
|
Before Width: | Height: | Size: 6.1 KiB |
|
|
@@ -17,9 +17,12 @@ Configuration on Flutterwave Dashboard
|
|||
`/payment/flutterwave/webhook` in the :guilabel:`URL` text field.
|
||||
| For example: `https://yourcompany.odoo.com/payment/flutterwave/webhook`.
|
||||
#. Fill the :guilabel:`Secret hash` with a password that you generate and save its value for later.
|
||||
#. Make sure all the remaining checkboxes are ticked.
|
||||
#. Make sure *all* the remaining checkboxes are ticked.
|
||||
#. Click on **Save** to finalize the configuration.
|
||||
|
||||
.. image:: flutterwave/flutterwave-settings.png
|
||||
:alt: Flutterwave settings
|
||||
|
||||
.. _payment_providers/flutterwave/configure_odoo:
|
||||
|
||||
Configuration on Odoo
|
||||
|
|
|
|||
|
After Width: | Height: | Size: 18 KiB |
|
|
@@ -12,7 +12,6 @@ Miscellaneous
|
|||
general/reporting
|
||||
general/email_communication
|
||||
general/voip
|
||||
general/calendars
|
||||
general/digest_emails
|
||||
general/in_app_purchase
|
||||
general/developer_mode
|
||||
|
|
|
|||
|
|
@@ -6,5 +6,5 @@ Due to specific requirements in Azure's OAuth implementation, Microsoft Azure OA
|
|||
is NOT compatible with Odoo at the moment.
|
||||
|
||||
.. seealso::
|
||||
- :doc:`/applications/general/calendars/outlook/outlook_calendar`
|
||||
- :doc:`../../productivity/calendar/outlook`
|
||||
- :doc:`/administration/maintain/azure_oauth`
|
||||
|
|
|
|||
|
|
@@ -9,7 +9,7 @@ This is particularly helpful if your organization uses Google Workforce and you
|
|||
within your organization to connect to Odoo with their Google Accounts.
|
||||
|
||||
.. seealso::
|
||||
- :doc:`/applications/general/calendars/google/google_calendar_credentials`
|
||||
- :doc:`../../productivity/calendar/google`
|
||||
- :doc:`/administration/maintain/google_oauth`
|
||||
|
||||
.. _google-sign-in/configuration:
|
||||
|
|
|
|||
|
|
@@ -1,11 +0,0 @@
|
|||
:nosearch:
|
||||
|
||||
=========
|
||||
Calendars
|
||||
=========
|
||||
|
||||
.. toctree::
|
||||
:titlesonly:
|
||||
|
||||
calendars/outlook/outlook_calendar
|
||||
calendars/google/google_calendar_credentials
|
||||
|
|
@@ -58,4 +58,4 @@ can change the Language to any previously installed language and click
|
|||
:align: center
|
||||
|
||||
.. seealso::
|
||||
* :doc:`../../websites/website/publish/translate`
|
||||
* :doc:`../../websites/website/configuration/translate`
|
||||
|
|
|
|||
|
|
@@ -10,7 +10,6 @@ Warehouse Management
|
|||
|
||||
management/products
|
||||
management/warehouses
|
||||
management/replenishment_strategies
|
||||
management/inventory_adjustments
|
||||
management/delivery
|
||||
management/incoming
|
||||
|
|
|
|||
|
|
@@ -1,109 +1,80 @@
|
|||
==================================================================
|
||||
Send Products to Customers Directly from Suppliers (Drop-shipping)
|
||||
==================================================================
|
||||
=============================================================
|
||||
Use dropshipping to ship directly from suppliers to customers
|
||||
=============================================================
|
||||
|
||||
What is Drop-Shipping?
|
||||
======================
|
||||
Dropshipping is an order fulfillment strategy that allows sellers to have items shipped directly
|
||||
from suppliers to customers. Normally, a seller purchases a product from a supplier, stores it in
|
||||
their inventory, and ships it to the end customer once an order is placed. With dropshipping, the
|
||||
supplier is responsible for storing and shipping the item. This benefits the seller by reducing
|
||||
inventory costs, including the price of operating warehouses.
|
||||
|
||||
Drop-Shipping is a system that allows orders taken from your store to be
|
||||
shipped straight from your supplier to your customer. On a usual
|
||||
delivery system, products are sent from your supplier to your warehouse
|
||||
to be put in stock and then shipped to your customers after ordering.
|
||||
Configure products to be dropshipped
|
||||
====================================
|
||||
|
||||
With drop-shipping, no item is stocked. When a customer places an order
|
||||
in your shop, the item is delivered straight from the supplier to the
|
||||
customer. Therefore, the product doesn't need to get through your
|
||||
warehouse.
|
||||
To use dropshipping as a fulfillment strategy, navigate to the :guilabel:`Purchase` app and select
|
||||
:menuselection:`Configuration --> Settings`. Under the :guilabel:`Logistics` heading, click the
|
||||
:guilabel:`Dropshipping` checkbox, and :guilabel:`Save` to finish.
|
||||
|
||||
Points to be Considered while Implementing Drop-Shipping
|
||||
========================================================
|
||||
Next, go to the :guilabel:`Sales` app, click :menuselection:`Products --> Products` and choose an
|
||||
existing product or select :guilabel:`Create` to configure a new one. On the product page, make sure
|
||||
that the :guilabel:`Can be Sold` and :guilabel:`Can be Purchased` checkboxes are enabled.
|
||||
|
||||
- Use drop-shipping only for the products you can't or don't want to keep in stock.
|
||||
One reason is that you'll always make smaller
|
||||
margins on items that are drop-shipped, so you should keep it
|
||||
only for items that take up a lot of space in your warehouse.
|
||||
.. image:: dropshipping/sold-purchased-checkboxes.png
|
||||
:align: center
|
||||
:alt: Enable the "Can be Sold" and "Can be Purchased" checkboxes on the product form.
|
||||
|
||||
- Drop-shipping is best for niche products.
|
||||
Chances are that products that are in high demand are being offered by large suppliers at a
|
||||
fraction of the price you'll be able to charge, so using a more
|
||||
costly shipping method won't be financially rewarding. But if
|
||||
your product is unique, then it makes sense!
|
||||
Click on the :guilabel:`Purchase` tab and specify a vendor and the price that they sell the product
|
||||
for. Multiple vendors can be added, but the vendor at the top of the list will be the one
|
||||
automatically selected for purchase orders.
|
||||
|
||||
- To protect your customers from bad experiences.
|
||||
Test drop-shipping companies for yourself beforehand and list the best ones.
|
||||
.. image:: dropshipping/product-vendor-config.png
|
||||
:align: center
|
||||
:alt: The product form with a vendor specified.
|
||||
|
||||
- Make sure time is not against you.
|
||||
Drop-shipping should take a reasonable amount of time and surely not more than it would have taken you to handle it all by yourself. It's also nice to be able
|
||||
to provide your customers with a tracking number.
|
||||
Finally, select the :guilabel:`Inventory` tab and enable the :guilabel:`Dropship` checkbox in the
|
||||
:guilabel:`Routes` section.
|
||||
|
||||
- Items have to be available from your supplier.
|
||||
It's good to know if
|
||||
the product you're selling is available upstream. If you don't
|
||||
have that information, inform your customers that you don't hold
|
||||
the item in stock and that it's subject to availability from a
|
||||
third party.
|
||||
.. image:: dropshipping/enable-dropship-route.png
|
||||
:align: center
|
||||
:alt: Enable the Dropship option in the product inventory tab.
|
||||
|
||||
Fulfill orders using dropshipping
|
||||
=================================
|
||||
|
||||
When a customer completes an online purchase for a dropshipped product, a sales order will be
|
||||
automatically created with an associated request for quotation (:abbr:`RFQ (Request for Quotation)`)
|
||||
for the supplier. Sales orders can be viewed in the :guilabel:`Sales` app by selecting
|
||||
:menuselection:`Orders --> Orders`. Click the :guilabel:`Purchase` smart button at the top right of
|
||||
a sales order to view the associated :abbr:`RFQ (Request for Quotation)`.
|
||||
|
||||
.. tip::
|
||||
For more information and insights about Drop-Shipping, you can read our
|
||||
blog: `*What is drop-shipping and how to use
|
||||
it* <https://www.odoo.com/blog/business-hacks-1/post/what-is-drop-shipping-and-how-to-use-it-250>`__.
|
||||
Dropship sales orders can also be created manually through the :guilabel:`Sales` app by selecting
|
||||
:menuselection:`Orders --> Orders --> Create` and adding a product configured for dropshipping.
|
||||
|
||||
Configure Drop-Shipping
|
||||
=======================
|
||||
.. image:: dropshipping/dropship-sales-order.png
|
||||
:align: center
|
||||
:alt: A dropship sales order with the Purchase smart button in the top right corner.
|
||||
|
||||
Activate the functionality in the *Purchase* application by going to :menuselection:`Configuration
|
||||
--> Settings`.
|
||||
Once the :abbr:`RFQ (Request for Quotation)` is confirmed, it becomes a purchase order and a
|
||||
dropship receipt is created and linked to it. The receipt can be viewed by clicking the
|
||||
:guilabel:`Receipt` smart button in the top right corner of the purchase order form.
|
||||
|
||||
.. image:: dropshipping/dropshipping_01.png
|
||||
:align: center
|
||||
.. image:: dropshipping/dropship-purchase-order.png
|
||||
:align: center
|
||||
:alt: A dropship purchase order with the Receipt smart button in the top right corner.
|
||||
|
||||
Then, go to the *Inventory* app, in :menuselection:`Configuration --> Settings` to
|
||||
activate the *Multi-Step Routes* feature. It will allow you to make
|
||||
the *Route* field appear on the sale order lines to specify you send a
|
||||
product via drop-shipping.
|
||||
The dropship receipt will list the supplier in the :guilabel:`Receive From` section and the customer
|
||||
in the :guilabel:`Destination Location` section. Upon delivery of the product to the customer, click
|
||||
on the :guilabel:`Validate` button at the top left of the dropship receipt to confirm the delivered
|
||||
quantity.
|
||||
|
||||
.. image:: dropshipping/dropshipping_02.png
|
||||
:align: center
|
||||
.. image:: dropshipping/validate-dropship-receipt.png
|
||||
:align: center
|
||||
:alt: Validate the dropship receipt after delivery.
|
||||
|
||||
Now, in the *Sales* app, go to :menuselection:`Products --> Products`. Select the
|
||||
product you would like to drop-ship and add a vendor pricelist which
|
||||
contains the right supplier, via the purchase tab.
|
||||
To view all dropship orders, simply navigate to the :guilabel:`Inventory` dashboard and click the
|
||||
teal :guilabel:`# TO PROCESS` button on the :guilabel:`Dropship` card.
|
||||
|
||||
.. image:: dropshipping/dropshipping_03.png
|
||||
:align: center
|
||||
|
||||
Send Products from the Suppliers Directly to the Customers
|
||||
==========================================================
|
||||
|
||||
Create a *Sales Order* and add the product on which you just set the
|
||||
vendor. Add the *Route* field thanks to the widget on the right of the
|
||||
sale order line. Now, you are able to specify that your products’ route
|
||||
is *Drop-Shipping*.
|
||||
|
||||
.. image:: dropshipping/dropshipping_04.png
|
||||
:align: center
|
||||
|
||||
.. image:: dropshipping/dropshipping_05.png
|
||||
:align: center
|
||||
|
||||
Once the sale order is confirmed, Odoo automatically generates a
|
||||
*Request for Quotation* for the supplier who will proceed to the
|
||||
drop-shipping. You can find it in the *Purchase* app, with the sale
|
||||
order as *Source Document*.
|
||||
|
||||
.. image:: dropshipping/dropshipping_06.png
|
||||
:align: center
|
||||
|
||||
Once this *Purchase Order* is confirmed, a *Receipt Order* is
|
||||
created and linked to it. The source location is the vendor location and
|
||||
the destination location is the customer location. Then, the product
|
||||
won’t go through your own stock when you validate the dropship document.
|
||||
|
||||
.. image:: dropshipping/dropshipping_07.png
|
||||
:align: center
|
||||
|
||||
You can also easily access the dropship document directly from your
|
||||
inventory dashboard.
|
||||
|
||||
.. image:: dropshipping/dropshipping_08.png
|
||||
:align: center
|
||||
.. image:: dropshipping/view-all-dropship-orders.png
|
||||
:align: center
|
||||
:alt: Click the green button on the Dropship card to view all dropship orders.
|
||||
|
|
|
|||
|
After Width: | Height: | Size: 17 KiB |
|
After Width: | Height: | Size: 23 KiB |
|
Before Width: | Height: | Size: 3.2 KiB |
|
Before Width: | Height: | Size: 8.1 KiB |
|
Before Width: | Height: | Size: 19 KiB |
|
Before Width: | Height: | Size: 18 KiB |
|
Before Width: | Height: | Size: 15 KiB |
|
Before Width: | Height: | Size: 51 KiB |
|
Before Width: | Height: | Size: 19 KiB |
|
Before Width: | Height: | Size: 16 KiB |
|
After Width: | Height: | Size: 13 KiB |
|
After Width: | Height: | Size: 8.9 KiB |
|
After Width: | Height: | Size: 13 KiB |
|
After Width: | Height: | Size: 21 KiB |
|
After Width: | Height: | Size: 9.5 KiB |
|
|
@@ -1,45 +1,125 @@
|
|||
===============================
|
||||
Manage Stock that you don't own
|
||||
===============================
|
||||
=================================================
|
||||
Consignment: buy and sell stock without owning it
|
||||
=================================================
|
||||
|
||||
Sometimes, suppliers can offer you to store and sell products without
|
||||
having to buy those items. This technique is called *consignee stock*.
|
||||
Most of the time, products stored in a company's warehouse are either purchased from suppliers, or
|
||||
are manufactured in-house. However, suppliers will sometimes let companies store and sell products
|
||||
in the company's warehouse, without having to buy those items up-front. This is called
|
||||
*consignment*.
|
||||
|
||||
Consignee stock is a great way for manufacturers and suppliers to launch
|
||||
new products. As resellers may be reluctant to buy a product they are
|
||||
not sure to be able to sell, consignee stock will allow them to offer an
|
||||
item to check its market without having to pay for it in the first
|
||||
place.
|
||||
Consignment is a useful method for suppliers to launch new products, and easily deliver to their
|
||||
customers. It's also a great way for the company storing the products (the consignee) to earn
|
||||
something back for their efforts. Consignees can even charge a fee for the convenience of storing
|
||||
products they don't actually own.
|
||||
|
||||
Of course, Odoo has the ability to manage those consignee stocks through
|
||||
advanced settings.
|
||||
Enable the consignment setting
|
||||
==============================
|
||||
|
||||
Configuration
|
||||
=============
|
||||
To receive, store, and sell consignment stock, the feature needs to be enabled in the settings. To
|
||||
do this, go to :menuselection:`Inventory --> Configuration --> Settings`, and under the
|
||||
:guilabel:`Traceability` section, check the box next to :guilabel:`Consignment`, and then click
|
||||
:guilabel:`Save` to finish.
|
||||
|
||||
To use this feature, go to :menuselection:`Inventory --> Configuration --> Settings` in
|
||||
the inventory app. Then, enable the *Consignment* feature in the
|
||||
*Traceability* section. Now, hit save.
|
||||
.. image:: owned_stock/owned-stock-enable-consignment.png
|
||||
:align: center
|
||||
:alt: Enabled Consignment setting in Inventory configuration.
|
||||
|
||||
.. image:: owned_stock/owned_stock_01.png
|
||||
:align: center
|
||||
Receive (and store) consignment stock
|
||||
=====================================
|
||||
|
||||
Reception of Consignee Stock
|
||||
============================
|
||||
|
||||
When in the *Inventory* app, open the receipts and create a new
|
||||
reception. On the right side, you will see that a new line called
|
||||
*Assign Owner* has appeared. There, you can specify the partner which
|
||||
owns the stock.
|
||||
|
||||
.. image:: owned_stock/owned_stock_02.png
|
||||
:align: center
|
||||
With the feature enabled in Odoo, consignment stock can now be received into a warehouse. From the
|
||||
main :menuselection:`Inventory` dashboard, click into the :guilabel:`Receipts`
|
||||
section. Then, click :guilabel:`Create`.
|
||||
|
||||
.. note::
|
||||
If you are the owner, you can leave the field blank.
|
||||
Consignment stock is not actually purchased from the vendor; it is simply received and stored.
|
||||
Because of this, there are no quotations or purchase orders involved in receiving consignment
|
||||
stock. So, *every* receipt of consignment stock will start by creating manual receipts.
|
||||
|
||||
Once the receipt is validated, the products enter your stock but still
|
||||
belong to the owner. They don’t impact your inventory valuation.
|
||||
Choose a vendor to enter in the :guilabel:`Receive From` field, and then choose the same vendor to
|
||||
enter in the :guilabel:`Assign Owner` field.
|
||||
|
||||
.. image:: owned_stock/owned_stock_03.png
|
||||
:align: center
|
||||
.. important::
|
||||
Since the products received from the vendor will be owned by the same vendor, the
|
||||
:guilabel:`Receive From` and :guilabel:`Assign Owner` fields must match.
|
||||
|
||||
Once the vendor-related fields are set, enter products into the :guilabel:`Product` lines, and set
|
||||
the quantities to be received into the warehouse under the :guilabel:`Done` column. If the
|
||||
:guilabel:`Units of Measure` feature is enabled, the :abbr:`UoM (Units of Measure)` can be changed,
|
||||
as well. Once all the consignment stock has been received, :guilabel:`Validate` the receipt.
|
||||
|
||||
.. image:: owned_stock/owned-stock-receipt-fields.png
|
||||
:align: center
|
||||
:alt: Matching vendor fields in consignment Receipt creation.
|
||||
|
||||
Sell and deliver consignment stock
|
||||
==================================
|
||||
|
||||
Once consignment stock has been received into the warehouse, it can be sold the same as any other
|
||||
in-stock product that has the :guilabel:`Can Be Sold` option enabled on the product form.
|
||||
|
||||
To create a sales order, navigate to the :menuselection:`Sales` app, and from the
|
||||
:guilabel:`Quotations` overview, click :guilabel:`Create`. Next, choose a customer to enter into the
|
||||
:guilabel:`Customer` field.
|
||||
|
||||
.. note::
|
||||
The :guilabel:`Customer` *must* be different from the :guilabel:`Vendor` that supplied the
|
||||
consignment stock received (and stored) in the warehouse.
|
||||
|
||||
Add the consignment product under the :guilabel:`Product` column in the order lines, set the
|
||||
:guilabel:`Quantity`, and fill out any other pertinent product details on the form. Once the
|
||||
quotation is complete, click :guilabel:`Confirm`.
|
||||
|
||||
.. image:: owned_stock/owned-stock-sales-order.png
|
||||
:align: center
|
||||
:alt: Sales order of consignment stock.
|
||||
|
||||
Once the :abbr:`RFQ (Request for Quotation)` has been confirmed, it will become a sales order. From
|
||||
here, the products can be delivered by clicking on the :guilabel:`Delivery` smart button, and
|
||||
selecting :guilabel:`Validate` to validate the delivery.
|
||||
|
||||
Traceability and reporting of consignment stock
|
||||
===============================================
|
||||
|
||||
Although consignment stock is owned by the vendor who supplied it, and not by the company storing it
|
||||
in their warehouse, consignment products will *still* appear in certain inventory reports.
|
||||
|
||||
To find inventory reports, go to :menuselection:`Inventory --> Reporting`, and choose a report to
|
||||
view.
|
||||
|
||||
.. note::
|
||||
Since the consignee does not actually own consigment stock, these products are *not* reflected
|
||||
in the :guilabel:`Stock Valuation` report, and have no impact on the consignee's inventory
|
||||
valuation.
|
||||
|
||||
Product moves report
|
||||
--------------------
|
||||
|
||||
To view all information about on-hand stock moves, navigate to the the :guilabel:`Product Moves`
|
||||
dashboard by going to :menuselection:`Inventory --> Reporting --> Product Moves`. For consignment
|
||||
products, the information in this report is the same as any other product: the history
|
||||
of its product moves can be reviewed; the :guilabel:`Quantity Done` and :guilabel:`Reference`
|
||||
document are available; and its :guilabel:`Locations` are available, as well. The consignment stock
|
||||
will originate from :guilabel:`Partner Location/Vendors`.
|
||||
|
||||
.. tip::
|
||||
To view a consignment product's moves by ownership, select the :guilabel:`Group By` filter,
|
||||
choose the :guilabel:`Add Custom Group` parameter, and then select :guilabel:`From Owner`, and
|
||||
:guilabel:`Apply` to finish.
|
||||
|
||||
.. image:: owned_stock/owned-stock-moves-history.png
|
||||
:align: center
|
||||
:alt: Consignment stock moves history.
|
||||
|
||||
.. tip::
|
||||
To see forecasted units of consignment stock, go to :menuselection:`Inventory --> Reporting -->
|
||||
Forecasted Inventory`.
|
||||
|
||||
Stock on hand report
|
||||
--------------------
|
||||
|
||||
View the :guilabel:`Stock On Hand` dashboard by navigating to :menuselection:`Inventory -->
|
||||
Reporting --> Inventory Report`. From this report, the :guilabel:`Locations` of all stock on-hand
|
||||
are displayed, in addition to the quantities per location. For consigment products, the
|
||||
:guilabel:`Owner` column will be populated with the owner of those products, or the original vendor
|
||||
who supplied the products in the first place.
|
||||
|
|
|
|||
|
After Width: | Height: | Size: 40 KiB |
|
After Width: | Height: | Size: 40 KiB |
|
After Width: | Height: | Size: 23 KiB |
|
After Width: | Height: | Size: 45 KiB |
|
Before Width: | Height: | Size: 4.7 KiB |
|
Before Width: | Height: | Size: 13 KiB |
|
Before Width: | Height: | Size: 8.2 KiB |
|
|
@@ -1,11 +0,0 @@
|
|||
:nosearch:
|
||||
|
||||
========================
|
||||
Replenishment strategies
|
||||
========================
|
||||
|
||||
.. toctree::
|
||||
:titlesonly:
|
||||
:glob:
|
||||
|
||||
replenishment_strategies/virtual_warehouses
|
||||
|
|
@@ -1,53 +0,0 @@
|
|||
===============================
|
||||
Resupply from another Warehouse
|
||||
===============================
|
||||
|
||||
Configuration
|
||||
=============
|
||||
|
||||
In order to be able to resupply from another warehouse, you need to
|
||||
activate \*multi-step routes\*.
|
||||
|
||||
.. image:: virtual_warehouses/virtual-warehouses-settings.png
|
||||
:align: center
|
||||
:alt: Enable Multi-Step Routes in an Odoo database's settings
|
||||
|
||||
You can then access your warehouses via :menuselection:`Inventory --> Configuration -->
|
||||
Warehouses`.
|
||||
Enter the warehouse which should be resupplied by another one. You will
|
||||
have the possibility to directly indicate through which warehouse it
|
||||
gets resupplied.
|
||||
|
||||
.. image:: virtual_warehouses/virtual_warehouses_02.png
|
||||
:align: center
|
||||
|
||||
By activating this option, a new route will now be available on your
|
||||
products \*Supply Product from Second warehouse\*. It can now be
|
||||
selected, along with either a \*reordering rule\* or a \*make to
|
||||
order\*.
|
||||
|
||||
.. image:: virtual_warehouses/virtual_warehouses_03.png
|
||||
:align: center
|
||||
|
||||
For the demonstration, I set a reordering rule with a minimum of 5 units
|
||||
in stock and a maximum of 10 units in stock, having currently 0 units on
|
||||
hand. I will run the scheduler by going to :menuselection:`Inventory --> Operations -->
|
||||
Run scheduler`.
|
||||
|
||||
.. image:: virtual_warehouses/virtual_warehouses_04.png
|
||||
:align: center
|
||||
|
||||
The system automatically creates two pickings, one \*delivery order\*
|
||||
from my Second Warehouse which contains the necessary products, and a
|
||||
receipt in my main warehouse WH/Stock for the same products. The source
|
||||
document is the \*reordering rule\* which triggered the route \*Supply
|
||||
Product from Second warehouse\*.
|
||||
|
||||
.. image:: virtual_warehouses/virtual_warehouses_05.png
|
||||
:align: center
|
||||
|
||||
.. image:: virtual_warehouses/virtual_warehouses_06.png
|
||||
:align: center
|
||||
|
||||
.. image:: virtual_warehouses/virtual_warehouses_07.png
|
||||
:align: center
|
||||
|
Before Width: | Height: | Size: 12 KiB |
|
Before Width: | Height: | Size: 19 KiB |
|
Before Width: | Height: | Size: 26 KiB |
|
Before Width: | Height: | Size: 11 KiB |
|
Before Width: | Height: | Size: 17 KiB |
|
Before Width: | Height: | Size: 18 KiB |
|
Before Width: | Height: | Size: 17 KiB |
|
|
@@ -8,5 +8,6 @@ Warehouses
|
|||
:titlesonly:
|
||||
:glob:
|
||||
|
||||
warehouses/warehouses_locations
|
||||
warehouses/resupply_warehouses
|
||||
warehouses/warehouse_replenishment_transfer
|
||||
warehouses/warehouses_locations
|
||||
|
|
|
|||
|
|
@@ -0,0 +1,150 @@
|
|||
========================================================
|
||||
Transfer products between warehouses using replenishment
|
||||
========================================================
|
||||
|
||||
For companies that use multiple warehouses, it is often necessary to transfer items between them.
|
||||
This is referred to as an *inter-warehouse transfer*. Odoo *Inventory* handles the administrative
|
||||
process of inter-warehouse transfers to ensure that inventory counts remain accurate during and
|
||||
after the transfer. This document will detail the method for conducting an inter-warehouse transfer
|
||||
using replenishment.
|
||||
|
||||
Configure warehouses for inter-warehouse replenishment
|
||||
======================================================
|
||||
|
||||
First, ensure the :guilabel:`Multi-Step Routes` setting is enabled by navigating to
|
||||
:menuselection:`Inventory --> Configuration --> Settings`, and then check the box under the
|
||||
:guilabel:`Warehouse` tab. This will provide additional configuration options when creating a second
|
||||
warehouse that are needed for inter-warehouse replenishment.
|
||||
|
||||
By default, Odoo comes with a main warehouse already configured. If an additional warehouse has not
|
||||
already been created, do so now from the :guilabel:`Inventory` module by selecting
|
||||
:menuselection:`Configuration --> Warehouses --> Create`. Otherwise, select the warehouse that
|
||||
products will be transferred to from the :guilabel:`Warehouses` page and then click :guilabel:`Edit`
|
||||
to change its settings. Configure the warehouse as follows:
|
||||
|
||||
- :guilabel:`Warehouse`: choose a name that is not already being used for another warehouse (e.g.
|
||||
`Alternative Warehouse`)
|
||||
- :guilabel:`Short Name`: choose a short name by which the warehouse will be identified (e.g.
|
||||
`ALT_WH`)
|
||||
|
||||
Click :guilabel:`Save` and the new warehouse will be created. In addition, a new :guilabel:`Resupply
|
||||
From` field will appear on the warehouse's form. Click :guilabel:`Edit` and then check the box next
|
||||
to the warehouse that will be used to resupply the warehouse that is currently being configured.
|
||||
|
||||
.. image:: warehouse_replenishment_transfer/new-warehouse-configuration.png
|
||||
:align: center
|
||||
:alt: A warehouse settings form configured to allow resupplying between warehouses.
|
||||
|
||||
.. note::
|
||||
For the purposes of this demonstration, the warehouse that products are transferred from
|
||||
(outgoing) will be titled "San Francisco", and the warehouse that products are transferred to
|
||||
(incoming) will be titled "San Francisco 2".
|
||||
|
||||
Configure products for inter-warehouse replenishment
|
||||
====================================================
|
||||
|
||||
Products must also be configured properly in order for them to be transferred between warehouses.
|
||||
Navigate to :menuselection:`Inventory --> Products --> Products` and select an existing product or
|
||||
:guilabel:`Create` a new one, if necessary.
|
||||
|
||||
Then, on the product form, go to the :guilabel:`Inventory` tab and enable the checkbox for
|
||||
:guilabel:`X: Supply Product from Y`, with *X* being the warehouse receiving the transferred
|
||||
products and *Y* being the warehouse that products are transferred from.
|
||||
|
||||
.. image:: warehouse_replenishment_transfer/product-transfer-configuration.png
|
||||
:align: center
|
||||
:alt: Enable the checkbox to resupply one warehouse from another.
|
||||
|
||||
Replenish one warehouse from another
|
||||
====================================
|
||||
|
||||
Starting in the :menuselection:`Inventory` module, select :menuselection:`Products --> Products` and
|
||||
then choose the product that will be replenished. Click the :guilabel:`Replenish` button on the top
|
||||
left of the product page and fill out the pop-up form as follows:
|
||||
|
||||
- :guilabel:`Quantity`: the number of units that will be sent to the warehouse being replenished
|
||||
- :guilabel:`Scheduled Date`: the date that the replenishment is scheduled to take place
|
||||
- :guilabel:`Warehouse`: the warehouse that will be replenished
|
||||
- :guilabel:`Preferred Routes`: select `X: Supply Product from Y`, with *X* being the warehouse to
|
||||
be replenished and *Y* being the warehouse that the product will be transferred from
|
||||
|
||||
.. image:: warehouse_replenishment_transfer/product-replenishment-form.png
|
||||
:align: center
|
||||
:alt: The form for replenishing a product.
|
||||
|
||||
Click :guilabel:`Confirm` and a delivery order will be created for the outgoing warehouse along with
|
||||
a receipt for the warehouse that will receive the product. Depending on the configuration settings
|
||||
for the outgoing and incoming warehouses, processing delivery orders and receipts will require
|
||||
between one and three steps. This document will detail how to process one-step deliveries and
|
||||
receipts.
|
||||
|
||||
Process the delivery order
|
||||
--------------------------
|
||||
|
||||
The first stage of a replenishment order is processing the delivery from the warehouse that the
|
||||
product is being transferred from. On the :menuselection:`Inventory` dashboard, select the
|
||||
:guilabel:`X to Process` button on the :guilabel:`Delivery Orders` card for the outgoing warehouse,
|
||||
then the delivery order created for the replenishment. On the delivery order page, click the
|
||||
:guilabel:`Check Availability` button in the top left to reserve the quantity of the product to be
|
||||
transferred. Once the delivery has been dispatched, click the :guilabel:`Validate` button to
|
||||
register the quantities shipped.
|
||||
|
||||
.. image:: warehouse_replenishment_transfer/delivery-orders-card.png
|
||||
:align: center
|
||||
:alt: The delivery orders card for the outgoing warehouse.
|
||||
|
||||
Process the receipt
|
||||
-------------------
|
||||
|
||||
Once the goods arrive at the incoming warehouse, the receipt created for that warehouse must be
|
||||
processed as well. Return to the :menuselection:`Inventory` dashboard and select the :guilabel:`X to
|
||||
Process` button on the :guilabel:`Receipts` card for the incoming warehouse, then the receipt
|
||||
created for the replenishment. On the receipt page, click the :guilabel:`Validate` button in the top
|
||||
left of the page to register the quantities received.
|
||||
|
||||
.. image:: warehouse_replenishment_transfer/receipts-card.png
|
||||
:align: center
|
||||
:alt: The delivery orders card for the outgoing warehouse.
|
||||
|
||||
After processing the receipt, the products transferred will now appear in the inventory of the
|
||||
incoming warehouse. The stock numbers for both warehouses can be viewed by returning to the product
|
||||
page and selecting the :guilabel:`X Units On Hand` button at the top of the screen.
|
||||
|
||||
Automate inter-warehouse replenishment
|
||||
======================================
|
||||
|
||||
Using reordering rules, it is possible to automate the process of replenishing one warehouse from
|
||||
another.
|
||||
|
||||
To get started, navigate to :menuselection:`Inventory --> Products --> Products`, and then
|
||||
choose the product that will be replenished. From the product page, select the :guilabel:`Reordering
|
||||
Rules` smart button at the top of the form, and then on the next page, click :guilabel:`Create` to
|
||||
configure the form as follows:
|
||||
|
||||
- :guilabel:`Location`: the location that the reordering rule will replenish when triggered, in this
|
||||
case, the incoming warehouse
|
||||
- :guilabel:`Min Quantity`: when the quantity on hand at the incoming warehouse falls below this
|
||||
number, the reordering rule will be triggered
|
||||
- :guilabel:`Max Quantity`: when the reordering rule is triggered, the product will be replenished
|
||||
at the incoming warehouse up to this quantity
|
||||
- :guilabel:`Multiple Quantity`: specify if the product should be replenished in batches of a
|
||||
certain quantity; for example, a product could be replenished in batches of 20
|
||||
- :guilabel:`UoM`: the unit of measure used for reordering the product; this value can simply be
|
||||
`Units`, or a specific unit of measurement for weight, length, etc.
|
||||
|
||||
.. image:: warehouse_replenishment_transfer/reordering-rule-configuration.png
|
||||
:align: center
|
||||
:alt: A fully configured reordering rule.
|
||||
|
||||
Finish by clicking :guilabel:`Save` and the reordering rule will be created. Now, when the scheduler
|
||||
runs automatically each day, a transfer will be created for each reordering rule that has been
|
||||
triggered.
|
||||
|
||||
.. tip::
|
||||
To manually trigger reordering rules, start from the :menuselection:`Inventory` module and select
|
||||
:menuselection:`Operation --> Run Scheduler`, then click the green :guilabel:`Run Scheduler`
|
||||
button in the pop-up that appears.
|
||||
|
||||
After the scheduler runs, a delivery order and receipt will be created for the outgoing and incoming
|
||||
warehouses, respectively. Both the delivery order and receipt should be processed using the same
|
||||
method as detailed above.
|
||||
|
After Width: | Height: | Size: 15 KiB |
|
After Width: | Height: | Size: 18 KiB |
|
After Width: | Height: | Size: 12 KiB |