|
| 1 | +====== |
| 2 | +Poland |
| 3 | +====== |
| 4 | + |
| 5 | +.. _localizations/poland/modules: |
| 6 | + |
| 7 | +Modules |
| 8 | +======= |
| 9 | + |
| 10 | +The following modules are installed automatically with the Polish localization: |
| 11 | + |
| 12 | +.. list-table:: |
| 13 | + :header-rows: 1 |
| 14 | + :widths: 25 25 50 |
| 15 | + |
| 16 | + * - Name |
| 17 | + - Technical name |
| 18 | + - Description |
| 19 | + * - :guilabel:`Poland - Accounting` |
| 20 | + - `l10n_pl` |
| 21 | + - Polish :ref:`fiscal localization package <fiscal_localizations/packages>`, complete with the |
| 22 | + local chart of accounts, taxes, tax report, and fiscal positions |
| 23 | + * - :guilabel:`Poland - Accounting Reports` |
| 24 | + - `l10n_pl_reports` |
| 25 | + - Accounting reports for Poland |
| 26 | + * - :guilabel:`Polish - E-Invoicing FA (3)` |
| 27 | + - `l10n_pl_edi` |
| 28 | + - Integration module for KSeF to support Polish e-Invoicing requirements |
| 29 | + * - :guilabel:`Poland - Taxable Supply Date` |
| 30 | + - `l10n_pl_taxable_supply_date` |
| 31 | + - Support for taxable supply dates |
| 32 | + * - :guilabel:`Poland - Accounting - Bank Account Verification` |
| 33 | + - `l10n_pl_bank_verification` |
| 34 | + - Verification of the VAT/Bank account number combination for PL-to-PL payments exceeding |
| 35 | + 15,000 PLN |
| 36 | + * - :guilabel:`Poland - JPK FA Reports` |
| 37 | + - `l10n_pl_reports_jpk_fa` |
| 38 | + - Module to generate JPK_FA XML reports for Poland |
| 39 | + * - :guilabel:`Poland - JPK_VAT PoS Enterprise` |
| 40 | + - `l10n_pl_reports_pos_jpk` |
| 41 | + - Integration module for PoS information in the Polish JPK report |
| 42 | + * - :guilabel:`Poland - SAFT Income Tax Report (JPK KR PD)` |
| 43 | + - `l10n_pl_reports_account_saft` |
| 44 | + - Module to generate the JPK_KR_PD XML report for Poland |
| 45 | + |
| 46 | +.. note:: |
| 47 | + In some cases, such as when upgrading to a version with additional modules, it is possible that |
| 48 | + modules may not be installed automatically. Any missing modules can be manually :ref:`installed |
| 49 | + <general/install>`. |
| 50 | + |
| 51 | +.. _localizations/poland/ksef: |
| 52 | + |
| 53 | +E-invoicing with KSeF |
| 54 | +===================== |
| 55 | + |
| 56 | +`KSeF <https://ksef.podatki.gov.pl/>`_ is Poland's mandatory, centralized electronic invoicing |
| 57 | +system used to issue, transmit, and store electronic invoices according to national regulations. |
| 58 | + |
| 59 | +.. _localizations/poland/ksef-configuration: |
| 60 | + |
| 61 | +.. seealso:: |
| 62 | + `KSeF platform video tutorials of the Polish Ministry of Finance <https://www.youtube.com/watch?v=V6E1fGUFPw4&list=PLGj5OAFBHLKX0cEVGjcGplnbX6LpDFF38&index=1>`_ |
| 63 | + |
| 64 | +Configuration |
| 65 | +------------- |
| 66 | + |
| 67 | +To use KSeF e-Invoicing with Odoo, first `create a KSeF account <https://ap.ksef.mf.gov.pl/web/>`_ |
| 68 | +or log in using your company's NIP if you already have credentials. Next, request a certificate and |
| 69 | +ensure you save the password created during this process, as it will be required later. |
| 70 | + |
| 71 | +Once the certificate request is complete, download the `.pem` **certificate file** and save the |
| 72 | +**private key** issued by KSeF. You will need both to complete the Odoo integration. |
| 73 | + |
| 74 | +.. _localizations/poland/linking-ksef: |
| 75 | + |
| 76 | +Link Odoo to KSeF |
| 77 | +~~~~~~~~~~~~~~~~~ |
| 78 | + |
| 79 | +.. seealso:: |
| 80 | + `KSeF test and pre-production environments <https://ksef.podatki.gov.pl/aplikacja-podatnika-ksef-20/>`_ |
| 81 | + |
| 82 | +#. Open the **Accounting** app and navigate to :menuselection:`Configuration --> Settings`. |
| 83 | +#. Scroll down to the :guilabel:`Polish Localization` section and enable :guilabel:`Allow KSeF |
| 84 | + integration`. |
| 85 | +#. Enter a name for your KSeF certificate in the newly enabled field, then select :guilabel:`Create |
| 86 | + and edit...` from the drop-down menu. |
| 87 | +#. In the pop-up window, click :guilabel:`Upload your file` and select your **certificate** |
| 88 | + (`.pem`). In the :guilabel:`Certificate Password` field, enter the password created during the |
| 89 | + certificate application on the KSeF platform. |
| 90 | +#. Once the certificate is uploaded, the :guilabel:`Private Key` field appears. Click the empty |
| 91 | + field, select :guilabel:`Create` from the drop-down menu, and enter your **private key**. The |
| 92 | + **public key** is embedded within the `.pem` file and is automatically filled in. |
| 93 | +#. Finally, click :guilabel:`Save`. |
| 94 | + |
| 95 | +.. _localizations/poland/company-and-contacts: |
| 96 | + |
| 97 | +Company and customers |
| 98 | +~~~~~~~~~~~~~~~~~~~~~ |
| 99 | + |
| 100 | +The KSeF invoicing workflow requires address information related to the company that sends the |
| 101 | +invoices and the customers who receive them: |
| 102 | + |
| 103 | +#. Go to :menuselection:`Settings --> Users & Companies --> Companies` and select the company that |
| 104 | + will use KSeF. |
| 105 | +#. Fill in the :guilabel:`Company Name`, :guilabel:`VAT` (Tax ID), and :guilabel:`Country`. If |
| 106 | + desired, fill in additional optional fields such as :guilabel:`Street`, :guilabel:`City`, |
| 107 | + :guilabel:`State`, and :guilabel:`ZIP`. |
| 108 | + |
| 109 | + .. important:: |
| 110 | + - The :guilabel:`Country` must be set to :guilabel:`Poland`. |
| 111 | + - The company must have a valid Polish VAT (**NIP**) number. |
| 112 | + |
| 113 | +#. Open the **Accounting** app, and go to :menuselection:`Customers --> Customers`. |
| 114 | +#. For each customer whose invoices will be sent to KSeF, click on the customer to open the form |
| 115 | + view, and complete the :guilabel:`Country` and :guilabel:`VAT`. If desired, fill in additional |
| 116 | + optional fields such as :guilabel:`Street`, :guilabel:`City`, :guilabel:`State`, and |
| 117 | + :guilabel:`ZIP`. |
| 118 | + |
| 119 | +.. _localizations/poland/sending-invoices: |
| 120 | + |
| 121 | +Sending invoices to KSeF via Odoo |
| 122 | +--------------------------------- |
| 123 | + |
| 124 | +Once you have :ref:`linked your company with KSeF <localizations/poland/linking-ksef>` and |
| 125 | +:ref:`configured your company and contacts <localizations/poland/company-and-contacts>`, you can |
| 126 | +send invoices to KSeF directly through Odoo: |
| 127 | + |
| 128 | +#. Open the **Accounting** app, go to :menuselection:`Customers --> Invoices`, and select a posted |
| 129 | + invoice. |
| 130 | +#. Click :guilabel:`Send`. |
| 131 | +#. In the pop-up window, check :guilabel:`Send via KSeF (e-Faktura)` and click :guilabel:`Send`. |
| 132 | + |
| 133 | +When an invoice is sent, Odoo automatically: |
| 134 | + |
| 135 | +- Generates the invoice in the required FA(3) XML format. |
| 136 | +- Submits the file to KSeF for validation. |
| 137 | +- Saves a copy of the XML file in the invoice's chatter. |
| 138 | + |
| 139 | +You can also manually export the FA(3) XML and check the invoice's processing status: |
| 140 | + |
| 141 | +#. Open a posted invoice. |
| 142 | +#. Click :guilabel:`Export FA(3) XML` to download the invoice as an XML file to your browser's |
| 143 | + download folder. |
| 144 | +#. To check its processing status, click :guilabel:`Check invoice status` next to the export option. |
| 145 | +#. The live status is displayed on the invoice under the :guilabel:`eInvoice status` field. |
| 146 | + |
| 147 | +Once the Polish government officially registers the invoice on the KSeF platform, it assigns an |
| 148 | +**Official Receipt Certificate (UPO)**. To view it, open the invoice and click |
| 149 | +:guilabel:`Check invoice UPO`. |
| 150 | + |
| 151 | +.. _localizations/poland/ksef-import: |
| 152 | + |
| 153 | +Automatic bill import |
| 154 | +~~~~~~~~~~~~~~~~~~~~~ |
| 155 | + |
| 156 | +By default, the Polish localization automatically fetches vendor bills from KSeF every three hours. |
| 157 | +To adjust this frequency or toggle the feature: |
| 158 | + |
| 159 | +#. With :doc:`developer mode <../../general/developer_mode>` activated, open the **Settings** app |
| 160 | + and go to :menuselection:`Technical --> Scheduled Actions`. |
| 161 | +#. Search for and open :guilabel:`Polish eInvoice: Download vendor bills from KSeF`. |
| 162 | +#. Use the :guilabel:`Execute Every` field to change the frequency. |
0 commit comments