• Home
  • Solutions

      Invoicing

      Integrate CFDI issuance into your app

      E-Receipts

      Generate CFDI ready receipts for non-fiscal transactions

      Facturapi for Stripe

      Issue CFDI from Stripe

      Massive CFDI Download

      Download your CFDIs from SAT automatically
  • Pricing
  • Blog
  • Contact
  • Developers

      How it works

      Learn how to use Facturapi in your app

      API

      Make the most of our API
  • Sign in
  • Sign up
  • Sign in
  • Sign up
/

Tax Updates

Jun, 18, 2025

CFDI Substitution: When to Use Reason Code 01 and How to Do It Right

A CFDI substitution is a specific form of cancellation that involves issuing a new invoice to replace one with errors. This process is regulated by Mexico’s SAT and must be carried out using cancellation reason “01 – Issued with errors and related”.


While often confused with a regular cancellation, substitution has very specific rules, and following them properly is essential to avoid compliance issues.


What Is a CFDI Substitution?

A CFDI substitution occurs when you cancel an invoice with errors and issue a new one to correct it. Unlike other cancellation types, the SAT requires you to indicate the UUID of the new invoice that replaces the canceled one.


This process creates a clear audit trail and ensures both the SAT and the recipient can easily track the correction.


When Should You Use Reason Code 01?

You must use Reason Code 01 – “Issued with errors and related” when:

  • The original invoice contains significant errors that cannot be corrected with a credit note.
  • You need to issue a completely new CFDI to replace the original.
  • The error involves critical data such as:
  • The recipient’s RFC
  • The CFDI usage code
  • The payment method or form
  • The description of goods or services
  • SAT product or service codes


In these cases, simply canceling the invoice or issuing a credit note is not sufficient — the correct process is to cancel using Reason Code 01 and link the replacement CFDI.


How to Perform a CFDI Substitution Correctly

Follow these steps:

  1. Issue a new invoice with the corrected data.
  2. In the new CFDI, use the relationship key “04 – Substitution of previous CFDIs” and include the UUID of the invoice you intend to cancel.
  3. Then, cancel the original CFDI.
  4. Select Reason Code 01 for the cancellation.
  5. Enter the UUID of the new CFDI that replaces the canceled one.
  6. If the invoice requires approval, the recipient has 3 business days (72 hours) to respond. If they don’t, SAT will assume acceptance and the cancellation will be processed automatically.


What Happens If You Don’t Do It Right?

If you cancel with Reason Code 01 but:

  • You don’t issue a new CFDI,
  • You fail to use relationship key 04 properly,
  • Or you forget to provide the UUID of the replacement CFDI, then you may face consequences such as:
  • Non-compliance with SAT rules
  • Inconsistencies in your accounting or tax records
  • Confusion for the recipient
  • Greater audit risk or rejected deductions/refunds


Key Differences from Other Cancellation Reasons

  • Reason Code 01 requires canceling the original invoice and issuing a new one, with a formal link between them.
  • Reason Code 02 is used when an invoice contains errors, but no new CFDI is issued.
  • A credit note does not replace an invoice — it’s only used to adjust amounts on existing operations.


Recommendations

  • Always double-check your invoices before issuing them.
  • If a serious mistake is found, create the corrected invoice first, then cancel the original with Reason Code 01.
  • Use a reliable invoicing API to automate this process and prevent manual mistakes.


Want to automate CFDI substitutions?

With Facturapi’s API, you can easily issue a replacement CFDI and cancel the original one in full compliance with SAT requirements.

Facturapi

Facturapi is a service that seeks to simplify our way of interacting with Mexican electronic invoicing, designing solutions oriented to eliminate complexity.

contacto@facturapi.io

Products

Use Cases

Developers

API ReferenceHow To Guides

Users

Log inSign upRecover passwordService status
© 2026 Facturapi. All rights reserved.
Terms and Conditions of UsePrivacy Policy