Ir al contenido

SAT México — Facturación electrónica (CFDI 4.0)

Los nodos SAT conectan tus workflows con la facturación electrónica de México (CFDI 4.0). Floogos arma el comprobante, calcula la cadena original, lo sella con tu CSD y lo timbra con un PAC, obteniendo el UUID (folio fiscal).

NodoQué hace
SAT: Timbrar CFDI 4.0 (satTimbrarCFDI)Emite y timbra un CFDI (arma, sella, timbra vía PAC)
SAT: Cancelar CFDI (satCancelarCFDI)Cancela un CFDI timbrado (motivos 01-04)
SAT: Consultar estatus CFDI (satConsultarEstatus)Estatus del comprobante en el SAT (Vigente/Cancelado)
SAT: Representación / QR (satRepresentacion)Genera el comprobante imprimible con QR

Los nodos usan una credencial de tipo SAT. Creala en Credenciales → Agregar → México SAT / CFDI 4.0 con:

CampoDescripción
CSDTu Certificado de Sello Digital: un .p12 (base64) o el par .cer + .key del SAT.
Contraseña del CSDLa clave que protege la llave del CSD.
RFC y Razón socialDatos del emisor.
Régimen fiscal y Código postalClave del régimen (c_RegimenFiscal) y lugar de expedición.
PAC + usuario/contraseña/tokenEl proveedor de timbrado y sus credenciales.
AmbienteSandbox del PAC o producción.

El CSD sella el comprobante; el timbrado lo hace el PAC con tus credenciales del PAC.

  1. Preparás el comprobante como un JSON (tipo, receptor, conceptos). El emisor sale de la credencial.

  2. Timbrás con Timbrar CFDI 4.0. Floogos valida los catálogos, calcula la cadena original, sella con el CSD y lo envía al PAC, que devuelve el UUID.

  3. Generás la representación impresa con Representación / QR.

  4. Si hace falta, cancelás con Cancelar CFDI o consultás el estatus con Consultar estatus.

Nodo: SAT: Timbrar CFDI 4.0. El comprobante se toma del campo cfdi (JSON) o de los datos de entrada. Ejemplo de una factura (Ingreso):

{
"serie": "F", "folio": "123",
"tipoDeComprobante": "I", "formaPago": "01", "metodoPago": "PUE",
"receptor": { "rfc": "XEXX010101000", "nombre": "Cliente SA", "codigoPostal": "64000", "regimenFiscal": "601", "usoCFDI": "G03" },
"conceptos": [
{ "claveProdServ": "50111500", "claveUnidad": "H87", "cantidad": 1, "descripcion": "Producto", "valorUnitario": 1000, "iva": 0.16, "objetoImp": "02" }
]
}

Floogos calcula el IVA (16%) y los totales. La salida incluye el uuid, el XML timbrado y el estado.

TipoComprobanteNotas
IIngreso (factura)—
EEgreso (nota de crédito)cfdiRelacionados con los UUID del CFDI original
PPago (complemento)Para cobros con método PPD; lleva el complemento de Pagos

Cuando facturás con método de pago PPD (parcialidades o diferido), al cobrar emitís un CFDI de tipo P con el complemento de Pagos, que referencia los comprobantes que se están pagando:

{
"tipoDeComprobante": "P",
"receptor": { "rfc": "XEXX010101000", "codigoPostal": "64000", "regimenFiscal": "601" },
"pago": {
"fechaPago": "2026-07-29T12:00:00", "formaDePago": "03", "moneda": "MXN",
"documentos": [ { "uuid": "AAAA1111-2222-3333-4444-555566667777", "numParcialidad": 1, "saldoAnterior": 1160, "pagado": 1160 } ]
}
}

Cancelar CFDI cancela por UUID con un motivo: 01 (errores con relación → requiere el UUID de la factura sustituta), 02 (errores sin relación), 03 (no se llevó a cabo), 04 (nominativa en factura global). Según el caso, el receptor debe aceptar la cancelación.

Consultar estatus consulta directamente el servicio del SAT y devuelve si el comprobante está Vigente o Cancelado, si es cancelable y el estatus de cancelación. Los RFCs y el total se completan desde el CFDI guardado.

Representación / QR genera el comprobante imprimible en HTML (exportable a PDF), con el UUID, los sellos y el QR de verificación del SAT (que lleva el UUID y los últimos 8 caracteres del sello).

SituaciónReintentableQué hacer
Rechazo del PACNoEl nodo devuelve el error del PAC (catálogo inválido, sello, etc.). Corregí el comprobante.
Catálogos inválidosNoFloogos valida antes de timbrar (RFC, CP, ClaveProdServ, UsoCFDI…) para no gastar un timbrado.
CSD vencidoNoRenová el CSD y actualizá la credencial.
Red / TimeoutSíProblema pasajero; se reintenta automáticamente.