|
2 | 2 | Vietnam
|
3 | 3 | =======
|
4 | 4 |
|
5 |
| -Add Vietnamese QR banking codes to invoices |
6 |
| -=========================================== |
| 5 | +.. _SInvoice: https://www.sinvoice.vn/ |
7 | 6 |
|
8 |
| -Vietnamese QR banking is a payment service platform that allows customers to make instant domestic |
9 |
| -payments to individuals and merchants in Vietnamese dong via online and mobile banking. |
| 7 | +.. _localizations/vietnam/modules: |
10 | 8 |
|
11 |
| -Activate QR codes |
12 |
| ------------------ |
| 9 | +Modules |
| 10 | +======= |
13 | 11 |
|
14 |
| -Go to :menuselection:`Accounting --> Configuration --> Settings`. Under the :guilabel:`Customer |
15 |
| -Payments` section, activate the :guilabel:`QR Codes` feature. |
| 12 | +The following modules are installed automatically with the Vietnamese localization: |
16 | 13 |
|
17 |
| -Vietnamese QR banking bank account configuration |
18 |
| ------------------------------------------------- |
| 14 | +.. list-table:: |
| 15 | + :header-rows: 1 |
19 | 16 |
|
20 |
| -Go to :menuselection:`Contacts --> Configuration --> Bank Accounts` and select the bank account for |
21 |
| -which you want to activate Vietnamese QR banking. Set the :guilabel:`Bank Identifier Code` on the |
22 |
| -bank. Then set the :guilabel:`Proxy Type` and fill in the :guilabel:`Proxy Value` field depending on |
23 |
| -the type you chose. |
| 17 | + * - Name |
| 18 | + - Technical name |
| 19 | + - Description |
| 20 | + * - :guilabel:`Vietnam - Accounting` |
| 21 | + - `l10n_vn` |
| 22 | + - This module includes the default |
| 23 | + :ref:`fiscal localization package <fiscal_localizations/packages>`. |
| 24 | + * - :guilabel:`Vietnam - E-invoicing` |
| 25 | + - `l10n_vn_edi_viettel` |
| 26 | + - This module includes the features required for integration with :ref:`SInvoice |
| 27 | + <localizations/vietnam/sinvoice>`. |
24 | 28 |
|
25 |
| -.. important:: |
26 |
| - - The account holder's country must be set to `Vietnam` on its contact form. |
27 |
| - - The account holder's city is mandatory. |
28 |
| - - You could also include the invoice number in the QR code by checking the :guilabel:`Include |
29 |
| - Reference` checkbox. |
| 29 | +.. note:: |
| 30 | + In some cases, such as when upgrading to a version with additional modules, it is possible that |
| 31 | + modules may not be installed automatically. Any missing modules can be manually :ref:`installed |
| 32 | + <general/install>`. |
| 33 | + |
| 34 | +.. _localizations/vietnam/company: |
| 35 | + |
| 36 | +Company |
| 37 | +======= |
| 38 | + |
| 39 | +To use all the features of this fiscal localization, the following fields are required on the |
| 40 | +:doc:`company record </applications/general/companies>`: |
| 41 | + |
| 42 | +- :guilabel:`Name` |
| 43 | +- :guilabel:`Address`, including the :guilabel:`City`, :guilabel:`State`, :guilabel:`Zip Code`, |
| 44 | + and :guilabel:`Country`. |
| 45 | + |
| 46 | + - In the :guilabel:`Street` field, enter the street name, number, and any additional address |
| 47 | + information. |
| 48 | + - In the :guilabel:`Street 2` field, enter the neighborhood. |
| 49 | + |
| 50 | +- :guilabel:`Tax ID`: tax identification number. |
| 51 | + |
| 52 | +.. _localizations/vietnam/sinvoice: |
| 53 | + |
| 54 | +E-invoicing with SInvoice |
| 55 | +========================= |
| 56 | + |
| 57 | +SInvoice_ is an e-invoice service platform provided by Viettel, one of the biggest e-invoice service |
| 58 | +providers in Vietnam. Odoo supports integration with SInvoice to submit invoices generated in Odoo. |
| 59 | + |
| 60 | +Configuration |
| 61 | +------------- |
| 62 | + |
| 63 | +SInvoice platform |
| 64 | +~~~~~~~~~~~~~~~~~ |
| 65 | + |
| 66 | +To send electronic invoices to SInvoice, the following must be created on SInvoice_: |
30 | 67 |
|
31 |
| -.. image:: vietnam/vn-paynow-bank-setting.png |
32 |
| - :alt: Vietnamese QR banking bank account configuration |
| 68 | +- :ref:`SInvoice account <localizations/vietname/sinvoice-registration>` |
| 69 | +- :ref:`Invoice template <localizations/vietname/sinvoice-template>` |
| 70 | +- :ref:`Invoice symbol <localizations/vietname/sinvoice-symbol>` |
| 71 | +- :ref:`Invoice issuance notice <localizations/vietname/sinvoice-notice>` |
| 72 | + |
| 73 | +.. _localizations/vietname/sinvoice-registration: |
| 74 | + |
| 75 | +SInvoice registration |
| 76 | +********************* |
| 77 | + |
| 78 | +To create an account, go to SInvoice_ and register for the desired plan. Fill in the form that |
| 79 | +opens to be contacted by SInvoice_ to create an account. |
| 80 | + |
| 81 | +Once you have an account, log into SInvoice_ using your :guilabel:`Username` and |
| 82 | +:guilabel:`Password`. |
| 83 | + |
| 84 | +.. _localizations/vietname/sinvoice-template: |
| 85 | + |
| 86 | +Invoice template creation |
| 87 | +************************* |
| 88 | + |
| 89 | +#. On the left side of the overview page, in the :guilabel:`Release management` menu, click |
| 90 | + :guilabel:`Create business information`. |
| 91 | +#. In the :guilabel:`Update key information` step, fill in the following fields and other optional |
| 92 | + information if needed: :guilabel:`Unit name`, :guilabel:`Address`, :guilabel:`Contact person`, |
| 93 | + :guilabel:`Type of representative documents`. |
| 94 | +#. Click :guilabel:`Update`. |
| 95 | +#. In the :guilabel:`Look up digital certificate` step, click :guilabel:`Add new` to add a digital |
<
10000
/code> | 96 | + certificate. |
| 97 | +#. Select the :guilabel:`Branch/Enterprise` and the :guilabel:`Type of digital certificate`, then |
| 98 | + fill in the required fields for each type: |
| 99 | + |
| 100 | + - :guilabel:`Supplier`: CloudCA |
| 101 | + - :guilabel:`Signer ID`: CloudCA |
| 102 | + - :guilabel:`Digital Certificate`: CloudCA |
| 103 | + - :guilabel:`How to download file`: HSM |
| 104 | + - :guilabel:`File Upload`: HSM, USB-TOKEN |
| 105 | + |
| 106 | +#. Click :guilabel:`Generate key pair` to generate encryption keys for authentication, and |
| 107 | + :guilabel:`Save`. |
| 108 | +#. In the :guilabel:`Manage invoice templates` step, add a new :guilabel:`Invoice template`. |
| 109 | +#. Select the :guilabel:`Invoice type` and fill in the :guilabel:`Invoice template code`, |
| 110 | + :guilabel:`Invoice template name`, and other optional information if needed. |
| 111 | +#. Click :guilabel:`Update`. |
33 | 112 |
|
34 | 113 | .. seealso::
|
35 |
| - :doc:`../accounting/bank` |
| 114 | + `SInvoice documentation on electronic invoice template creation |
| 115 | + <https://www.sinvoice.vn/2021/02/hdsd-tai-lieu-nghiep-vu-tao-mau-hoa-don-dien-tu.html?debug=1>`_ |
| 116 | + |
| 117 | +.. _localizations/vietname/sinvoice-symbol: |
| 118 | + |
| 119 | +Invoice symbol creation |
| 120 | +*********************** |
| 121 | + |
| 122 | +On the left side of the main screen, in the :guilabel:`Release management` menu, click |
| 123 | +:guilabel:`Invoice symbol` and follow these steps: |
| 124 | + |
| 125 | +#. Click :guilabel:`Add new` and select the :guilabel:`Invoice template`. |
| 126 | +#. Set the :guilabel:`Status` to :guilabel:`Active` to activate the symbol and fill in the |
| 127 | + :guilabel:`Invoice symbol`. |
| 128 | +#. Enable :guilabel:`Stop automatic sending to tax authorities` and :guilabel:`Default for built-in |
| 129 | + API` based on preference. |
| 130 | +#. Click :guilabel:`Save`. |
| 131 | + |
| 132 | +.. _localizations/vietname/sinvoice-notice: |
| 133 | + |
| 134 | +Invoice issuance notice |
| 135 | +*********************** |
| 136 | + |
| 137 | +On the left side of the main screen, in the :guilabel:`Release management` menu, click |
| 138 | +:guilabel:`Create issuance notice` and follow these steps: |
36 | 139 |
|
37 |
| -Bank journal configuration |
38 |
| --------------------------- |
| 140 | +#. Click :guilabel:`Add new`, select the :guilabel:`Name of the business unit to issue an e-invoice` |
| 141 | + and the :guilabel:`Tax agency name`. Based on the business unit and tax agency selected, the |
| 142 | + :guilabel:`Tax code`, :guilabel:`Address`, :guilabel:`Phone number`, and :guilabel:`Separator |
| 143 | + used` are automatically filled and uneditable. |
| 144 | +#. Click :guilabel:`Select the invoice type for issuance`, and then select and fill in the |
| 145 | + following information : |
39 | 146 |
|
40 |
| -Go to :menuselection:`Accounting --> Configuration --> Journals`, open the bank journal, then fill |
41 |
| -out the :guilabel:`Account Number` and :guilabel:`Bank` under the :guilabel:`Journal Entries` tab. |
| 147 | + - :guilabel:`Invoice type`: The invoice type on which to declare an issuance notice. |
| 148 | + - :guilabel:`Invoice template`: Select from the list of templates available based on the invoice |
| 149 | + type. |
| 150 | + - :guilabel:`Symbol`: Select from the list of symbols available based on the invoice type. |
| 151 | + - :guilabel:`Quantity`: Total number of invoices to issue for the selected type. Based on the |
| 152 | + type and template selected, this field is filled in automatically. It can be changed if needed. |
| 153 | + - :guilabel:`Start date of use`: The date from which the invoice template, range, and quantity |
| 154 | + are used for the issuance notice. |
42 | 155 |
|
43 |
| -.. image:: vietnam/vn-bank-account-journal-setting.png |
44 |
| - :alt: Bank Account's journal configuration |
| 156 | +#. Click :guilabel:`Save` and select more invoice types if necessary by repeating the steps above. |
| 157 | + Click :guilabel:`Save` to finish drafting the notice. |
| 158 | +#. Click :guilabel:`Send to tax authorities` for approval. Once approved, the notice's |
| 159 | + :guilabel:`Status` is changed to :guilabel:`Active`. |
45 | 160 |
|
46 |
| -Issue invoices with Vietnamese QR banking QR codes |
47 |
| --------------------------------------------------- |
| 161 | +.. _localizations/vietnam/sinvoice-odoo: |
| 162 | + |
| 163 | +Odoo database |
| 164 | +~~~~~~~~~~~~~ |
| 165 | + |
| 166 | +Link Odoo to SInvoice |
| 167 | +********************* |
| 168 | + |
| 169 | +To connect Odoo with SInvoice, go to :menuselection:`Accounting --> Configuration --> Settings`. |
| 170 | +In the :guilabel:`Vietnamese Integration` section, fill in your SInvoice :guilabel:`Username` and |
| 171 | +:guilabel:`Password`. Add a :guilabel:`Default symbol` to generate a prefix for the invoice number |
| 172 | +managed in SInvoice if needed. |
| 173 | + |
| 174 | +Invoice template |
| 175 | +**************** |
| 176 | + |
| 177 | +To create SInvoice templates, go to :menuselection:`Accounting --> Configuration --> Templates`. |
| 178 | +Click :guilabel:`New
F438
` and add a :guilabel:`Template code` and a :guilabel:`Template Invoice Type`. |
| 179 | +The :guilabel:`Template code` is the initial sequence of digits in the name assigned by SInvoice. |
| 180 | +For example, if the invoice template is `1/001 - Hóa đơn GTGT - ND123`, the :guilabel:`Template |
| 181 | +code` is `1/001`. The SInvoice templates in Odoo must match the ones in SInvoice. |
| 182 | + |
| 183 | +To add :guilabel:`Invoice Symbols`, click :guilabel:`Add a new line`. |
| 184 | + |
| 185 | +Sending invoices to SInvoice |
| 186 | +---------------------------- |
| 187 | + |
| 188 | +Invoices can be sent to SInvoice once they have been confirmed. To do so, follow the |
| 189 | +:ref:`invoice sending <accounting/invoice/sending>` steps. In the :guilabel:`Send` popup, enable |
| 190 | +:guilabel:`Send to SInvoice` and click :guilabel:`Send & Print`. |
| 191 | + |
| 192 | +Once the invoice has been successfully submitted to SInvoice, the :guilabel:`SInvoice Status` field |
| 193 | +in the :guilabel:`SInvoice` tab of the invoice is updated to :guilabel:`Sent`. The |
| 194 | +:guilabel:`SInvoice Number`, :guilabel:`Issue Date`, :guilabel:`Secret Code` and :guilabel:`eInvoice |
| 195 | +Number` fields are also updated. The same information is available on SInvoice. |
| 196 | + |
| 197 | +Replacement or adjustment invoices |
| 198 | +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
| 199 | + |
| 200 | +A replacement invoice is issued to correct an invoice that has **yet to be tax declared**, whereas |
| 201 | +an adjustment invoice is issued to correct one that has **already been tax declared**. Follow these |
| 202 | +steps to issue a replacement or adjustment invoice: |
| 203 | + |
| 204 | +#. Open the invoice and click :guilabel:`Credit Note`. |
| 205 | +#. In the :guilabel:`Credit Note` popup, fill in the following fields: |
| 206 | + |
| 207 | + - :guilabel:`Reason displayed on Credit Note` |
| 208 | + - :guilabel:`Adjustment type` |
| 209 | + - :guilabel:`Agreement Name` |
| 210 | + - :guilabel:`Agreement Date` |
| 211 | + - :guilabel:`Journal` |
| 212 | + - :guilabel:`Reversal date` |
| 213 | + |
| 214 | +#. Click :guilabel:`Reverse and Create Invoice` to issue a replacement invoice, or |
| 215 | + :guilabel:`Reverse` to issue an adjustment invoice. |
| 216 | + |
| 217 | +The :guilabel:`SInvoice Status` in the :guilabel:`SInvoice` invoice tab is updated to |
| 218 | +:guilabel:`Replaced` for a replacement invoice or :guilabel:`Adjusted` for an adjustment invoice. |
| 219 | + |
| 220 | +Invoice cancellation |
| 221 | +~~~~~~~~~~~~~~~~~~~~ |
| 222 | + |
| 223 | +If an invoice needs to be canceled, open the invoice and click :guilabel:`Request Cancel`. In the |
| 224 | +:guilabel:`Invoice Cancellation` popup, enter the cancellation :guilabel:`Reason`, |
| 225 | +:guilabel:`Agreement Name`, and :guilabel:`Agreement Date`, and click :guilabel:`Request |
| 226 | +Cancellation`. |
| 227 | + |
| 228 | +The :guilabel:`SInvoice Status` in the :guilabel:`SInvoice` invoice tab is updated to |
| 229 | +:guilabel:`Canceled`. |
| 230 | + |
| 231 | +.. _localizations/vietnam/qrcode: |
| 232 | + |
| 233 | +QR banking codes |
| 234 | +================ |
| 235 | + |
| 236 | +Vietnamese QR banking is a payment service platform that allows customers to make instant domestic |
| 237 | +payments to individuals and merchants in Vietnamese dong via online and mobile banking. |
| 238 | + |
| 239 | +Configuration |
| 240 | +------------- |
| 241 | + |
| 242 | +To activate QR banking codes, go to :menuselection:`Accounting --> Configuration --> Settings` and |
| 243 | +enable :guilabel:`QR Codes` in the :guilabel:`Customer Payments` section. |
| 244 | + |
| 245 | +Bank account |
| 246 | +~~~~~~~~~~~~ |
| 247 | + |
| 248 | +To activate QR banking for a bank account, go to :menuselection:`Contacts --> Configuration --> |
| 249 | +Bank Accounts` and select the bank account. Fill in the :guilabel:`Bank Identifier Code`, |
| 250 | +:guilabel:`Proxy Type` (based on the information used to identify the :guilabel:`Merchant Account`, |
| 251 | +such as the card number and bank account numbers), and :guilabel:`Proxy Value` fields. |
| 252 | + |
| 253 | +Enable :guilabel:`Include Reference` to include the invoice number in the QR code. |
| 254 | + |
| 255 | +.. important:: |
| 256 | + - The account holder's country must be set to `Vietnam`, and their city must be specified on the |
| 257 | + contact form. |
| 258 | + - The :ref:`account number <accounting/bank/account-number>` and bank must be set on the |
| 259 | + :guilabel:`Bank` journal. |
| 260 | + |
| 261 | +.. seealso:: |
| 262 | + :doc:`../accounting/bank` |
48 | 263 |
|
49 |
| -When creating a new invoice, open the :guilabel:`Other Info` tab and set the :guilabel:`Payment |
50 |
| -QR-code` option to *EMV Merchant-Presented QR-code*. |
| 264 | +Generating QR codes on invoices |
| 265 | +------------------------------- |
51 | 266 |
|
52 |
| -.. image:: vietnam/vn-qr-code-invoice-setting.png |
53 |
| - :alt: Select EMV Merchant-Presented QR-code option |
| 267 | +When creating a new invoice, open the :guilabel:`Other Info` tab and select :guilabel:`EMV |
| 268 | +Merchant-Presented QR-code` in the :guilabel:`Payment QR-code` field. |
54 | 269 |
|
55 |
| -Ensure that the :guilabel:`Recipient Bank` is the one you configured, as Odoo uses this field to |
56 |
| -generate the Vietnamese QR banking QR code. |
| 270 | +.. note:: |
| 271 | + Ensure the :guilabel:`Recipient Bank` is configured, as Odoo uses this field to generate QR |
| 272 | + codes. |
0 commit comments