The 4 CFDI cancellation reasons: which one applies to your case
SAT requires selecting a specific reason when cancelling. It is not a decorative field: the reason determines whether you need to issue a substitute CFDI, whether you need receiver acceptance, and how the transaction is recorded in your tax accounting. The four reasons are defined in Rule 2.7.1.34 of the RMF 2026 and the SAT Cancellation Reasons Catalogue:
| Code | Official SAT description | When to use | Substitute CFDI required? |
|---|---|---|---|
| 01 | Invoice issued with errors — with relation | There is an error in the CFDI and you have already issued the corrected version | Yes — first issue the correct CFDI, then cancel the erroneous one |
| 02 | Invoice issued with errors — without relation | There is an error but you will NOT issue a corrected version (e.g., the transaction is undone) | No |
| 03 | Transaction was not carried out | The sale or service never occurred or was cancelled before completion | No |
| 04 | Nominative operation related to a global invoice | The client requested a named invoice but was already included in the day's global invoice; you cancel it to issue the individual one | No — but you must issue the corresponding individual CFDI |
Practical rule: if you are correcting data (wrong RFC, incorrect amount, wrong concept) use reason 01 and first issue the correct CFDI linked to the UUID of the erroneous one. If the transaction simply did not take place, use reason 03. If the order was cancelled and no new invoice will be issued, reason 02. Reason 04 is the least common and applies almost exclusively to businesses with general public sales.
Do I need receiver acceptance or not?
This is the key question. In 2026 SAT tightened the rules: the threshold that previously exempted from acceptance dropped from $5,000 to $1,000 pesos, and the Payment Complement (REP) now always requires acceptance regardless of the amount. Here is the complete table:
| Situation | Requires receiver acceptance? |
|---|---|
| Income CFDI with amount up to MXN $1,000 (IVA included) | No — direct cancellation |
| CFDI cancelled within 72 hours of issuance | No — direct cancellation |
| Payroll CFDI (nómina) | No — direct cancellation |
| Transfer CFDI (Carta Porte) | No — direct cancellation |
| Egreso CFDI (credit note, discount, refund) | No — direct cancellation |
| Withholding and payment information CFDI | No — direct cancellation |
| CFDI with generic RFC (XAXX010101000 / XEXX010101000) | No — direct cancellation |
| CFDI issued to RIF taxpayers | No — direct cancellation |
| Income CFDI with amount over MXN $1,000 | Yes — receiver has 3 business days to respond |
| CFDI with Payment Complement (REP) — any amount | Always yes — new RMF 2026 rule |
| CFDI linked to hydrocarbons | Always yes — no amount or deadline exception |
What do "3 business days" mean? The receiver gets an automatic notification in their SAT Tax Mailbox (Buzón Tributario) with the UUID of the CFDI whose cancellation is being requested. From that moment they have 3 business days to accept or reject. If they do not respond, SAT applies positiva ficta: silence equals acceptance and the CFDI automatically changes to "Cancelled due to expired deadline" status.
What happens if the receiver rejects the cancellation?
This is the scenario that generates the most conflicts. When the receiver actively rejects the request within the deadline, the CFDI returns to "Vigente" (active) status and you cannot automatically retry the cancellation for the same reason. You have three real options:
- Negotiate with the receiver: in most cases the rejection comes from confusion or mistrust. If you explain that you will issue a linked corrected invoice (reason 01), that their deductions will be protected with the new CFDI, and that the process is standard, they almost always agree. Ask them to log into their Buzón Tributario and accept the cancellation — it is one click.
- Issue a credit note (CFDI de egreso): if you cannot reach an agreement, issue a CFDI de egreso for the same amount as the CFDI you want to neutralize, linked to it (relation type "01 - Nota de crédito de los documentos relacionados"). This does not cancel the original CFDI but fiscally neutralizes it: the accounting effect becomes zero. The receiver can keep both documents in their accounting without any problem.
- Dispute before SAT: the "cancellation request without receiver consent" process exists when you have legal grounds (for example, the receiver no longer exists, there is a court ruling, or SAT instructed the correction). It is an administrative process with a longer timeline and greater complexity — advisable only when the amount is significant and the other two paths have failed.
Step by step: how to cancel from the SAT portal
To access the portal you need your active RFC and password (Clave CIEC) or your valid e.firma. The process is the same for individuals and companies, although companies must log in with e.firma (not with a password).
- Go to sat.gob.mx → "Iniciar sesión" → RFC + Password (or e.firma).
- Navigate to: Factura electrónica → Consulta y cancelación de facturas → Cancelación de facturas.
- Select the date range and search for the CFDI by UUID, date or receiver RFC.
- Mark the CFDI you want to cancel and click "Cancelar seleccionados".
- Select the cancellation reason (01, 02, 03 or 04). If you choose reason 01, the system will ask for the UUID of the substitute CFDI you should have already issued.
- Confirm the operation. SAT generates a Cancellation Acknowledgment with a folio number and timestamp. Download it as backup.
- If the CFDI required receiver acceptance, the acknowledgment will show "In process" status until the receiver responds or the 3 business days expire.
You can check the status of any cancellation on the same portal: Factura electrónica → Consulta de CFDI, entering the voucher UUID.
Step by step: how to cancel from your PAC or invoicing software
If you invoice with software such as Contpaqi, Aspel, Facturama, Edicom, SAP or any other that works with a PAC (Authorized Certification Provider), the technical process is the same but through your tool's interface. Steps vary by software but the general flow is:
- Locate the CFDI in the issued voucher history (search by UUID, folio or date).
- Select the "Cancel" or "Request cancellation" option.
- The system will ask for the reason (01–04) and, if reason 01 applies, the UUID of the substitute CFDI.
- Confirm. The PAC sends the cancellation request to SAT in real time via the SAT API.
- The system returns the cancellation acknowledgment (or the "in process" notice if receiver acceptance is required).
- Download and file the acknowledgment together with the cancelled CFDI — SAT may request it in a review.
Deadlines you cannot ignore
| Deadline | What it means |
|---|---|
| Within 72 natural hours of issuance | Direct cancellation without receiver acceptance (except REP and hydrocarbons) |
| 3 business days | Receiver's deadline to accept or reject; silence = acceptance (positiva ficta) |
| January 31 of the following year | Absolute maximum deadline to cancel any CFDI from the previous fiscal year |
| After January 31 | CFDI can no longer be cancelled — only solution: credit note (CFDI de egreso) |
The January 31 deadline is the one most businesses miss. If you have CFDIs with errors from the fiscal year that just closed, review them before that deadline passes. An invoice for $500,000 pesos that cannot be cancelled because the deadline expired, and that has the client's RFC written incorrectly, can generate a deductibility rejection for the receiver and a serious commercial dispute.
If you have pending fines at SAT or overdue returns, first regularize your tax situation before attempting mass cancellations — SAT can block your Digital Seal Certificate (CSD) if it detects inconsistencies, which would prevent you from both issuing and cancelling CFDIs.
What to do if you cannot cancel the CFDI (deadline has passed)
If January 31 has passed and you have an erroneous CFDI from prior years, the available tool is the CFDI de egreso (credit note). This voucher fiscally neutralizes the original income CFDI even though it does not erase it from the system. To issue it:
- Issue a CFDI of type Egreso for the same amount, currency and IVA rate as the CFDI you want to neutralize.
- In the "Related documents" field, link the UUID of the original income CFDI with relation type "01 - Nota de crédito de los documentos relacionados".
- The concept can describe the adjustment: "Credit note for error in invoice [original UUID]" or "Return / cancellation of transaction".
- Deliver the egreso CFDI to the receiver so they can record it together with the original in their accounting.
For issuing and managing your electronic vouchers correctly, see our complete guide on how to issue CFDI 4.0 in Mexico. If you have questions about the correct accounting treatment of these adjustments, our specialized accountants can guide you — contact us here.