Skip to content

Commit b890876

Browse files
samueljlieberauva-odoo
authored andcommitted
[IMP] accounting/l10n_mx: update invoice cancellations
closes #12159 Signed-off-by: Audrey Vandromme (auva) <auva@odoo.com>
1 parent bdb1520 commit b890876

File tree

4 files changed

+50
-44
lines changed

4 files changed

+50
-44
lines changed

content/applications/finance/fiscal_localizations/mexico.rst

Lines changed: 50 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ Mexico
1313
.. |PPD| replace:: :abbr:`PPD (Pago en Parcialidades o Diferido/Payment in Installements or
1414
Deferred)`
1515
.. |PUE| replace:: :abbr:`PUE (Pago en una Sola Exhibición/Payment in a Single Exhibition)`
16+
.. |CFDI| replace:: :abbr:`CFDI (Comprobante Fiscal Digital por Internet)`
1617

1718
Webinars
1819
========
@@ -449,66 +450,71 @@ It is possible to cancel the EDI documents sent to the |SAT|. According to the `
449450
there are two requirements for this:
450451

451452
- With all cancellation requests, you **must** specify a *cancellation reason*.
452-
- After 24 hours have passed since the creation of the invoice, the client **must** be asked to
453-
accept the cancellation.
453+
- After 24 hours from the invoice creation, the client must be asked to approve the cancellation. If
454+
there is no response within 72 hours, the cancellation is processed automatically.
454455

455-
There are four different cancellation reasons. In Odoo, you can cancel invoices with the reasons *01
456-
Invoices sent with errors with a relation*, and *02 Invoices sent with errors without a relation*.
456+
Invoice cancellations can be made for one of the following reasons:
457457

458-
The following sections break down the process of canceling invoices for each cancellation reason in
459-
Odoo.
458+
- 01 - Invoice issued with errors (with related document)
459+
- 02 - Invoice issued with errors (no replacement)
460+
- 03 - The operation was not carried out
461+
- 04 - Nominative operation related to the global invoice
460462

461-
.. important::
462-
Odoo has certain limitations to canceling invoices in the |SAT|: The reasons 03 and 04
463-
(*Operation did not take place* and *Nominative transactions related to a global invoice*,
464-
respectively) are not currently supported by Odoo. For this, you need to cancel the invoice
465-
directly in the |SAT|, and press :guilabel:`Retry` in the :guilabel:`SAT Status field`.
463+
To initiate a cancellation, go to :menuselection:`Accounting --> Customers --> Invoices`, select the
464+
posted invoice to cancel, and click :guilabel:`Request Cancel`. Then, refer to the
465+
:ref:`localizations/mexico/01-invoice-cancellation` or
466+
:ref:`localizations/mexico/02-03-04-invoice-cancellation` sections, depending on the cancellation
467+
reason.
466468

467-
01 - invoices sent with errors with a relation
468-
**********************************************
469+
.. tip::
470+
Alternatively, request a cancellation from the :guilabel:`CFDI` tab by clicking
471+
:guilabel:`Cancel` on the line item.
469472

470-
This cancellation reason must be used when a new invoice needs to substitute the original one, due
471-
to an error in any field.
473+
.. _localizations/mexico/01-invoice-cancellation:
472474

473-
Begin by navigating to :menuselection:`Accounting --> Customers --> Invoices`, and select the old
474-
invoice. Copy the :guilabel:`Fiscal Folio` from the old invoice. Then, navigate to the new invoice,
475-
and in the :guilabel:`CFDI Origin` field, add the value `04|` and paste the :guilabel:`Fiscal Folio`
476-
of the old invoice after the value. Finally, sign the new document.
475+
Cancellation reason 01 - Invoice issued with errors (with related document)
476+
***************************************************************************
477477

478-
Next, navigate back to the old invoice, and notice the :guilabel:`Substituted By` field is now
479-
available. Click the :guilabel:`Request EDI Cancellation` button on the old invoice, and then click
480-
:guilabel:`Process Now` in the blue section that appears. The invoice status changes to
481-
:guilabel:`Canceled`, and a confirmation is logged in the chatter.
478+
#. In the :guilabel:`Request CFDI Cancellation` pop-up window, select :guilabel:`01 - Invoice issued
479+
with errors (with related document)` from the :guilabel:`Reason` field and click
480+
:guilabel:`Create Replacement Invoice` to create a new draft invoice. This new draft invoice
481+
replaces the previous invoice, along with the related |CFDI|.
482+
#. :guilabel:`Confirm` the draft and :guilabel:`Send & Print` the invoice.
483+
#. Return to the initial invoice (i.e., the invoice from which you first requested the
484+
cancellation). Notice the :guilabel:`Substituted By` field appears with a reference to the
485+
new replacement invoice.
486+
#. Click :guilabel:`Request Cancel`. In the :guilabel:`Request CFDI Cancellation` pop-up window, the
487+
:guilabel:`01 - Invoice issued with errors (with related document)` option is automatically
488+
selected in the :guilabel:`Reason` field.
489+
#. Click :guilabel:`Confirm`.
482490

483-
Now, the invoice should be canceled in the |SAT| as well. You can confirm this was done correctly,
484-
by pressing :guilabel:`Retry` in the |SAT| status field.
491+
The invoice cancellation is then generated with a reason line item in the :guilabel:`CFDI` tab.
485492

486-
If the document was canceled more than 24 hours after its creation, you may need to ask the client
487-
to accept the cancellation in their “Buzón Tributario” directly from the `SAT website
488-
<https://www.sat.gob.mx/home>`_.
493+
.. image:: mexico/mx-invoice-cancellation-reason-01.png
494+
:alt: Canceled invoice line item in the CFDI tab.
489495

490496
.. note::
491-
The `04|` is only a code that helps Odoo to perform this process. It has no relation to the
492-
method 04 reason for cancellation.
497+
- If the client rejects the cancellation, the invoice cancellation line item is removed from the
498+
:guilabel:`CFDI` tab.
499+
- When using the *01 - Invoice issued with errors (with related document)* cancellation reason,
500+
the `04|` prefix may appear in the :guilabel:`Fiscal Folio` field. This is an internal prefix
501+
used by Odoo to complete the cancellation and **does not** mean that the cancellation reason
502+
was *04 - Nominative operation related to the global invoice*.
493503

494-
.. image:: mexico/mx-01-invoice-cancellation-substitute.png
495-
:alt: Old invoice with CFDI Origin.
504+
.. _localizations/mexico/02-03-04-invoice-cancellation:
496505

497-
.. image:: mexico/mx-01-invoice-cancellation.png
498-
:alt: Invoice with the Substituted By field referencing the CFDI Origin invoice.
506+
Cancellation reasons 02, 03, and 04
507+
***********************************
499508

500-
02 - invoices sent with errors without a relation
501-
*************************************************
509+
In the :guilabel:`Request CFDI Cancellation` pop-up window, select the desired cancellation
510+
:guilabel:`Reason` and :guilabel:`Confirm` the cancellation.
502511

503-
This cancellation reason has to be used when an invoice was sent with an error in any field, and
504-
does not need to be replaced by another one.
512+
Upon doing so, the invoice cancellation is generated with a reason line item in the :guilabel:`CFDI`
513+
tab.
505514

506-
For this case, navigate to :menuselection:`Accounting --> Customers --> Invoices`, and select the
507-
old invoice. From here, the only requirement is to click the :guilabel:`Request EDI Cancellation`
508-
button, and then click the :guilabel:`Process Now` button.
509-
510-
Because the field :guilabel:`Substituted By` does not appear when using this cancellation reason,
511-
the |SAT| should automatically detect that the cancellation reason is 02.
515+
.. note::
516+
If the client rejects the cancellation, the invoice cancellation line item is removed from the
517+
:guilabel:`CFDI` tab.
512518

513519
Payment cancellations
514520
*********************
24.4 KB
Loading

0 commit comments

Comments
 (0)