Help center › Finance & billing
CFDI 4.0 e-invoicing (SAT, Mexico)
Stamp your invoices with the SAT from your dashboard, using your clinic's own RFC and CSD. Available on the Clinic plan (Mexico).
Issue CFDI 4.0 electronic invoices with the SAT (the Mexican tax authority) straight from systemdental.app, without stepping out to another system. Each clinic invoices with its own RFC and CSD, so the receipt is legally issued in your clinic's name.
Availability
CFDI invoicing is on the Clinic plan and applies to Mexico. See Plans & billing.
How to set it up (once)
In Settings → Invoicing you register your tax details:
- Your RFC (tax ID) and legal name.
- Your digital stamp certificate (CSD): the
.cerand.keyfiles plus the key's password. - Save. Your tax credentials are stored encrypted and are never shown back to you.
You get the CSD free of charge from the SAT. Your clinic is the legal issuer of the receipts; systemdental.app only stamps them on your behalf.
Stamping an invoice
Stamping is on demand, over an internal invoice that already exists:
- Go to Invoices and open the patient's invoice.
- Press Stamp. The system assembles the income CFDI and stamps it with the SAT (through the PAC).
- Done: you get the UUID (tax folio). You can download the XML and the PDF.
If the patient didn't provide tax details, it's stamped as general public ("público en general").
Cancelling
From the same invoice you can cancel a CFDI that's already been stamped (with its SAT reason code). The tax status is updated on the invoice.
Who asked for an invoice, and who has already been invoiced
These are two different things and the system keeps them apart, because in practice they happen at different moments and sometimes the accountant issues the invoice outside the system.
- 🧾 Invoice requested — the patient asked for one and it hasn't been issued yet. It's the heads-up for whoever does the invoicing, and it's the same F that shows up on the cash cut.
- ✅ Invoiced — it's been issued. The chip shows the folio and tells you whether the invoice was issued in SystemDental or was done outside.
The buttons are in the patient record, both under Payments and in the patient's account: 🧾 Requests invoice, ✅ Mark invoiced and ↩️ Undo invoice.
When you mark something as invoiced you pick one of two routes: link it to an invoice issued in the system, or note down the folio or UUID of the one issued outside. They're mutually exclusive, and the folio is mandatory on the manual route: without a folio there's no proof.
In Finance → To be invoiced you have the list of what's outstanding, with its period and its total.
Three rules worth knowing:
An installment can't be linked to a system invoice: you note its folio by hand. A system invoice can only be tied to a payment.
If the system invoice is cancelled or deleted, the charge automatically stops being "invoiced". It never stays marked against something that no longer exists.
Undoing "invoiced" doesn't erase the fact that the patient asked for an invoice. Removing a mark set by mistake shouldn't erase the original request. And a charge that's already invoiced can't be "un-asked": you have to remove the invoiced mark first.
SAT codes per service
In your service catalog you can define the SAT product/service code and unit code per treatment. By default they use the standard dental codes, so in most cases you don't have to touch anything.
Recommendation
Register your tax details once at the start; after that, stamping each invoice is one click. Combine it with Finance to keep charges and receipts in the same place.
Start free
systemdental.app