10000 [IMP] l10n_vn: SInvoice documentation · odoo/documentation@d7c0cdd · GitHub
[go: up one dir, main page]

Skip to content

Commit d7c0cdd

Browse files
vin-odooauva-odoo
authored andcommitted
[IMP] l10n_vn: SInvoice documentation
Recently, a new module released to support integration of Odoo with SInvoice to support e-invoicing for Vietnam. task - 3631616 closes #11974 X-original-commit: 4b123b8 Signed-off-by: Anne-Françoise Marcq (afma) <afma@odoo.com> Signed-off-by: Kim Dohyun (kido) <kido@odoo.com>
1 parent be14393 commit d7c0cdd

File tree

5 files changed

+254
-36
lines changed

5 files changed

+254
-36
lines changed

content/applications/finance/accounting/bank.rst

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -120,6 +120,8 @@ You can edit the currency used to enter the transactions.
120120
.. seealso::
121121
:doc:`get_started/multi_currency`
122122

123+
.. _accounting/bank/account-number:
124+
123125
Account number
124126
--------------
125127

content/applications/finance/fiscal_localizations/vietnam.rst

Lines changed: 252 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -2,55 +2,271 @@
22
Vietnam
33
=======
44

5-
Add Vietnamese QR banking codes to invoices
6-
===========================================
5+
.. _SInvoice: https://www.sinvoice.vn/
76

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:
108

11-
Activate QR codes
12-
-----------------
9+
Modules
10+
=======
1311

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:
1613

17-
Vietnamese QR banking bank account configuration
18-
------------------------------------------------
14+
.. list-table::
15+
:header-rows: 1
1916

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>`.
2428

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_:
3067

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`.
33112

34113
.. 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:
36139

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 :
39146

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.
42155

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`.
45160

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`
48263

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+
-------------------------------
51266

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.
54269

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

Comments
 (0)
0