diff --git a/content/applications/finance/accounting/fiscal_localizations/localizations.rst b/content/applications/finance/accounting/fiscal_localizations/localizations.rst index 086284adc..d595a7e69 100644 --- a/content/applications/finance/accounting/fiscal_localizations/localizations.rst +++ b/content/applications/finance/accounting/fiscal_localizations/localizations.rst @@ -12,6 +12,7 @@ Localizations localizations/chile localizations/colombia localizations/colombia_ES + localizations/egypt localizations/france localizations/germany localizations/indonesia diff --git a/content/applications/finance/accounting/fiscal_localizations/localizations/egypt.rst b/content/applications/finance/accounting/fiscal_localizations/localizations/egypt.rst new file mode 100644 index 000000000..09d22d3cb --- /dev/null +++ b/content/applications/finance/accounting/fiscal_localizations/localizations/egypt.rst @@ -0,0 +1,241 @@ +===== +Egypt +===== + +.. _egypt/installation: + +Installation +============ + +:ref:`Install ` the following modules to get all the features of the Egyptian +localization: + +.. list-table:: + :header-rows: 1 + + * - Name + - Technical name + - Description + * - :guilabel:`Egypt - Accounting` + - ``l10n_eg`` + - Default :doc:`fiscal localization package <../overview/fiscal_localization_packages>` + * - :guilabel:`Egyptian E-invoice Integration` + - ``l10n_eg_edi_eta`` + - :ref:`Egyptian Tax Authority (ETA) e-invoicing integration ` + +.. _egypt/e-invoicing: + +Egyptian e-invoicing +==================== + +Odoo is compliant with the **Egyptian Tax Authority (ETA) e-invoicing** requirements. + +.. important:: + Egyptian e-invoicing is available from Odoo 15.0. If needed, :doc:`upgrade + ` your database. + +.. seealso:: + - `Video: Egypt E-invoicing `_ + - :doc:`/administration/upgrade` + +.. _egypt/e-invoicing-eta-portal: + +Register Odoo on your ETA portal +-------------------------------- + +You must register your Odoo ERP system on your ETA portal to get your API credentials. You need +these codes to :ref:`configure your Odoo Accounting app `. + +Access your company profile on the ETA portal by clicking on :guilabel:`View Taxpayer Profile`. + +.. image:: egypt/taxpayer-profile.png + :align: center + :alt: Clicking on "View Taxpayer Profile" on an ETA invoicing portal + +Next, go to the :guilabel:`Representatives` section and then click on :guilabel:`Register ERP`. +Fill out the :guilabel:`ERP Name` (e.g., ``Odoo``) and leave the other fields empty. + +.. image:: egypt/add-erp-system.png + :align: center + :alt: Filling out of the form to register an ERP system on the ETA portal. + +Once successfully registered, the website displays your API credentials: + +- Client ID +- Client Secret 1 +- Client Secret 2 + +.. note:: + - ETA should give you a username and a password to access their online portal. + - Ask ETA to provide you with preproduction portal access as well. + - These codes are confidential and should be stored safely. + +.. _egypt/e-invoicing-configuration: + +Configuration on Odoo +--------------------- + +To connect your Odoo database to your ETA portal account, go to :menuselection:`Accounting --> +Configuration --> Settings --> ETA E-Invoicing Settings`, and set the :guilabel:`ETA Client ID` and +:guilabel:`ETA Secret` that you retrieved when you :ref:`registered Odoo on your ETA portal +`. Set an invoicing threshold if needed. + +.. image:: egypt/eta-api-integration.png + :align: center + :alt: Configuration of the ETA E-Invoicing credentials in Odoo Accounting + +.. important:: + - **Test on your preproduction portal** before starting to issue real invoices on the production + ETA portal. + - **Credentials** for preproduction and production environments are different. Make sure to + update them on Odoo when you move from one environment to another. + - If not done yet, fill out your company details with your company's full address, country, and + Tax ID. + +.. _egypt/e-invoicing-eta-codes: + +ETA codes +~~~~~~~~~ + +E-invoicing works with a set of codes provided by the ETA. You can use the `ETA documentation +`_ to code your business attributes. + +Most of these codes are handled automatically by Odoo, provided that your :ref:`branches +`, :ref:`customers `, and :ref:`products +` are correctly configured. + +- Company Information: + + - Company Tax ID + - | Branch ID + | If you have only one branch, use ``0`` as the branch code. + - Activity type Code + +- Other Information: + + - | Product Codes + | Your company's products should be coded and matched with their **GS1** or **EGS** codes. + - | Tax Codes + | Most of the taxes codes are already configured on Odoo in the :guilabel:`ETA Code (Egypt)` + field. We advise you to make sure these codes match your company's taxes. + +.. seealso:: + - `Egyptian eInvoicing & eReceipt SDK - Code Tables + `_ + - :doc:`../../taxation/taxes/taxes` + +.. _egypt/e-invoicing-branches: + +Branches +~~~~~~~~ + +Create a contact and a journal for each branch of your company and configure its ETA settings. + +To do so, go to :menuselection:`Accounting --> Configuration --> Journals`, then click on +:guilabel:`Create`. + +Name the journal according to your company's branch and set the :guilabel:`Type` as +:guilabel:`Sales`. Next, open the :menuselection:`Advanced Settings` tab and fill out the +:guilabel:`Egyptian ETA settings` section: + +- In the :guilabel:`Branch` field, select the branch's contact or create it. +- Set the :guilabel:`ETA Activity Code`. +- Set the :guilabel:`ETA Branch ID` (use ``0`` if you have one branch only). + +.. image:: egypt/branch-journal.png + :align: center + :alt: Sales journal configuration of an Egyptian company's branch + +.. important:: + The contact selected in the :guilabel:`Branch` field must be set as a :guilabel:`Company` + (**not** as an :guilabel:`Individual`), and the :guilabel:`Address` and :guilabel:`Tax ID` fields + must be filled out. + +.. _egypt/e-invoicing-customers: + +Customers +~~~~~~~~~ + +Make sure your customers' contact forms are correctly filled out so your e-invoices are valid: + +- contact type: :guilabel:`Individual`: or :guilabel:`Company`: +- :guilabel:`Country`: +- :guilabel:`Tax ID`: Tax ID or Company registry for companies. National ID for individuals. + +.. note:: + You can edit your customers' contact forms by going to :menuselection:`Accounting --> Customers + --> Customers`. + +.. _egypt/e-invoicing-products: + +Products +~~~~~~~~ + +Make sure your products are correctly configured so your e-invoices are valid: + +- :guilabel:`Product Type`: storable products, consumables, or services. +- :guilabel:`Unit of Measure`: if you also use Odoo Inventory and have enabled :doc:`Units of + Measure `. +- :guilabel:`Barcode`: **GS1** or **EGS** barcode +- :guilabel:`ETA Item code` (under the :menuselection:`Accounting` tab): if the barcode doesn't + match your ETA item code. + +.. note:: + You can edit your products by going to :menuselection:`Accounting --> Customers --> Products`. + +.. _egypt/e-invoicing-usb-authentication: + +USB authentication +------------------ + +Each person who needs to electronically sign invoices needs a specific USB key to authenticate and +send invoices to the ETA portal through an ERP. + +.. note:: + You can contact the :abbr:`ETA (Egyptian Tax Authority)` or `Egypt Trust + `_ to get these USB keys. + +.. _egypt/e-invoicing-local-proxy: + +Install Odoo as a local proxy on your computer +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +An Odoo local server works as a bridge between your computer and your Odoo database hosted online. + +Download the Odoo Community installer from the page https://www.odoo.com/page/download and start the +installation on your computer. + +Select :guilabel:`Local Proxy Mode` as the type of install. + +.. image:: egypt/install-odoo-local-proxy.png + :align: center + :alt: Selection of "Local Proxy Mode" during the installation of Odoo Community. + +.. note:: + This installation of Odoo only works as a server and does not install any Odoo apps on your + computer. + +Once the installation is complete, the installer displays your **access token** for the Odoo Local +Proxy. Copy the token and save it in a safe place for later use. + +.. seealso:: + - `Odoo: Download Odoo `_ + - :doc:`/administration/install/install` + +.. _egypt/e-invoicing-usb-configuration: + +Configure the USB key +~~~~~~~~~~~~~~~~~~~~~ + +Once the local proxy server is installed on your computer, you can link it with your Odoo database. + +#. Go to :menuselection:`Accounting --> Configurations --> Thumb Drive` and click on + :guilabel:`Create`. +#. Input a :guilabel:`Company` name, the :guilabel:`ETA USB Pin` given to you by your USB key + provider, and the :guilabel:`Access Token` provided at the end of the :ref:`local proxy + installation `, then click on :guilabel:`Save`. +#. Click on :guilabel:`Get certificate`. + +.. image:: egypt/thumb-drive.png + :align: center + :alt: Creating a new thumb drive for the e-invoicing of an egyptian company. diff --git a/content/applications/finance/accounting/fiscal_localizations/localizations/egypt/add-erp-system.png b/content/applications/finance/accounting/fiscal_localizations/localizations/egypt/add-erp-system.png new file mode 100644 index 000000000..feab51a50 Binary files /dev/null and b/content/applications/finance/accounting/fiscal_localizations/localizations/egypt/add-erp-system.png differ diff --git a/content/applications/finance/accounting/fiscal_localizations/localizations/egypt/branch-journal.png b/content/applications/finance/accounting/fiscal_localizations/localizations/egypt/branch-journal.png new file mode 100644 index 000000000..c3c4c9b67 Binary files /dev/null and b/content/applications/finance/accounting/fiscal_localizations/localizations/egypt/branch-journal.png differ diff --git a/content/applications/finance/accounting/fiscal_localizations/localizations/egypt/eta-api-integration.png b/content/applications/finance/accounting/fiscal_localizations/localizations/egypt/eta-api-integration.png new file mode 100644 index 000000000..7dbea8bd5 Binary files /dev/null and b/content/applications/finance/accounting/fiscal_localizations/localizations/egypt/eta-api-integration.png differ diff --git a/content/applications/finance/accounting/fiscal_localizations/localizations/egypt/install-odoo-local-proxy.png b/content/applications/finance/accounting/fiscal_localizations/localizations/egypt/install-odoo-local-proxy.png new file mode 100644 index 000000000..5e9123ef4 Binary files /dev/null and b/content/applications/finance/accounting/fiscal_localizations/localizations/egypt/install-odoo-local-proxy.png differ diff --git a/content/applications/finance/accounting/fiscal_localizations/localizations/egypt/taxpayer-profile.png b/content/applications/finance/accounting/fiscal_localizations/localizations/egypt/taxpayer-profile.png new file mode 100644 index 000000000..fcc3a4fde Binary files /dev/null and b/content/applications/finance/accounting/fiscal_localizations/localizations/egypt/taxpayer-profile.png differ diff --git a/content/applications/finance/accounting/fiscal_localizations/localizations/egypt/thumb-drive.png b/content/applications/finance/accounting/fiscal_localizations/localizations/egypt/thumb-drive.png new file mode 100644 index 000000000..c2ed70c7e Binary files /dev/null and b/content/applications/finance/accounting/fiscal_localizations/localizations/egypt/thumb-drive.png differ