Constancia de Situación Fiscal PDF
Descarga la Constancia de Situación Fiscal (CSF) vigente del contribuyente. Acepta CIEC o e.firma.
POST /api/v1/constancia HTTP/1.1 Host: subalans.com Authorization: Bearer sk_live_xxxxxxxxxxxxxxxxxxxx Content-Type: application/json { "rfc": "XAXX010101000", "ciec": "••••••••" }
{
"ok": true,
"rfc": "XAXX010101000",
"pdf_base64": "JVBERi0xLjQK..."
}
| Error | HTTP | Causa |
|---|---|---|
RFC inválido | 400 | RFC mal formado. |
credencial | 422 | CIEC/e.firma incorrecta, vencida o revocada. |
tecnico | 502 | Portal del SAT inestable — reintentar. |
Opinión SAT (32D) PDF
Descarga la Opinión de Cumplimiento de obligaciones fiscales (artículo 32-D). Acepta CIEC o e.firma. La respuesta es idéntica en forma a la CSF.
POST /api/v1/opinion HTTP/1.1 Host: subalans.com Authorization: Bearer sk_live_xxxxxxxxxxxxxxxxxxxx Content-Type: application/json { "rfc": "ACE180101AA1", "cer_b64": "MIIF...==", "key_b64": "MIIE...==", "password": "••••••••" }
{ "ok": true, "rfc": "ACE180101AA1", "pdf_base64": "JVBER..." }
ok: true; el sentido se determina al leer el PDF.Opinión IMSS PDF
Descarga la Opinión de Cumplimiento del IMSS, vía el Buzón IMSS. Sólo e.firma. Requiere que el patrón tenga medios de contacto (correo + celular) registrados en el Buzón IMSS.
POST /api/v1/opinion-imss HTTP/1.1 Host: subalans.com Authorization: Bearer sk_live_xxxxxxxxxxxxxxxxxxxx Content-Type: application/json { "rfc": "ACE180101AA1", "cer_b64": "MIIF...==", "key_b64": "MIIE...==", "password": "••••••••" }
Error code | HTTP | Causa |
|---|---|---|
efirma_requerida | 400 | No se enviaron los campos de e.firma (IMSS no acepta CIEC). |
efirma_invalida | 422 | Contraseña o .key incorrectos. |
sin_medios_contacto | 422 | El RFC no tiene correo+celular en el Buzón IMSS. "…registra y valida al menos 1 correo y 1 celular en el Buzón IMSS." |
timeout | 504 | El OCSP del SAT no respondió a tiempo — reintentar. |
Opinión Infonavit PDF
El Portal Empresarial de Infonavit usa usuario + contraseña + NRP, y además valida la e.firma contra el OCSP del SAT para emitir la constancia. Dos operaciones:
1 · Validar credenciales (login-only)
Comprueba que el correo, contraseña y NRP son correctos, sin descargar nada (~10 s).
POST /api/v1/infonavit/validar HTTP/1.1 Host: subalans.com Authorization: Bearer sk_live_xxxxxxxxxxxxxxxxxxxx Content-Type: application/json { "nrp": "B1234567890", "infonavit_email": "correo@empresa.com", "infonavit_password": "••••••••" }
{ "ok": true, "valida": true, "reason": "ok", "message": "Credenciales Infonavit correctas." }
reason / portal | Significado |
|---|---|
0002 | El correo no tiene una cuenta Infonavit registrada. |
0004 | La contraseña del portal Infonavit es incorrecta. |
0005 | NRP inválido. |
2 · Descargar la constancia
Login Infonavit + validación de e.firma → PDF de la Constancia de "sin/con adeudo". Requiere ambas credenciales.
POST /api/v1/infonavit HTTP/1.1 Host: subalans.com Authorization: Bearer sk_live_xxxxxxxxxxxxxxxxxxxx Content-Type: application/json { "rfc": "ACE180101AA1", "nrp": "B1234567890", "infonavit_email": "correo@empresa.com", "infonavit_password": "••••••••", "cer_b64": "MIIF...==", "key_b64": "MIIE...==", "efirma_password": "••••••••" }
tecnico casi siempre se resuelve reintentando.Buzón Tributario — Notificaciones JSON
Devuelve los metadatos de las notificaciones del Buzón Tributario (folio, autoridad, acto, fecha, estado). No abre los documentos — abrirlos genera un acuse legal de notificación. Acepta CIEC o e.firma.
POST /api/v1/buzon HTTP/1.1 Host: subalans.com Authorization: Bearer sk_live_xxxxxxxxxxxxxxxxxxxx Content-Type: application/json { "rfc": "ACE180101AA1", "tipo": "notificaciones", "ciec": "••••••••" // o cer_b64/key_b64/password }
{
"ok": true,
"tipo": "notificaciones",
"total": 2,
"pendientes": 1,
"notificaciones": [
{
"folio": "ABC012345678901",
"autoridad": "SERVICIO DE ADMINISTRACIÓN TRIBUTARIA",
"acto": "...",
"fecha": "2026-06-20",
"estado": "pendiente"
}
]
}
ok: true con "total": 0 y "notificaciones": []. No es un error.CFDI — descarga y metadatos ZIP · XML · PDF
Descarga comprobantes emitidos o recibidos, por rango de fechas (en lote) o por UUID individual. Acepta CIEC o e.firma.
Por rango (descarga masiva)
| Campo | Tipo | Descripción |
|---|---|---|
modulo | string | "emisor" o "receptor". |
anio | number | Año (p. ej. 2025). |
mes | number opcional | 1–12. |
dia | number opcional | Día específico. |
tipo_masivo | string opcional | "cfdi" (XML) o "metadata". |
POST /api/v1/cfdi HTTP/1.1 Host: subalans.com Authorization: Bearer sk_live_xxxxxxxxxxxxxxxxxxxx Content-Type: application/json { "rfc": "ACE180101AA1", "modulo": "emisor", "anio": 2025, "mes": 10, "ciec": "••••••••" }
{
"ok": true,
"items": 38,
"modo": "masivo",
"paquetes": [
{ "periodo": "2025-10", "items": 38, "filename": "CFDI_....zip", "zip_base64": "UEsDB..." }
],
"incompletos": []
}
Por UUID (individual)
POST /api/v1/cfdi HTTP/1.1 Host: subalans.com Authorization: Bearer sk_live_xxxxxxxxxxxxxxxxxxxx Content-Type: application/json { "rfc": "ACE180101AA1", "uuid": "11111111-2222-3333-4444-555555555555", "ciec": "••••••••" }
{
"ok": true,
"items": 1,
"files": [
{ "type": "xml", "filename": "...xml", "uuid": "1111...", "base64": "PD94...", "size": 6025 },
{ "type": "pdf", "filename": "...pdf", "uuid": "1111...", "base64": "JVBER...", "size": 46561 }
]
}
ok: true con "items": 0 — el login funcionó, simplemente no hubo documentos.Listas negras del SAT — EFOS (69-B) JSON
Valida un RFC contra las listas del artículo 69-B y 69-B-Bis (Empresas que Facturan Operaciones Simuladas). No requiere credenciales del contribuyente — sólo el RFC. Respuesta instantánea.
POST /api/v1/efos HTTP/1.1 Host: subalans.com Authorization: Bearer sk_live_xxxxxxxxxxxxxxxxxxxx Content-Type: application/json { "rfc": "ACE100101AA1" }
{
"ok": true,
"rfc": "ACE100101AA1",
"encontrado": true,
"es_efos_definitivo": true,
"estatus": "definitivo",
"coincidencias": [
{
"rfc": "ACE100101AA1",
"nombre": "EMPRESA DEMO, S.A. DE C.V.",
"lista": "69b_definitivo",
"marco": "69-B",
"oficio_global": "500-05-2024-00000 de fecha 10 de enero de 2024",
"fecha_publicacion_sat": "2024-01-10",
"fecha_publicacion_dof": "2024-01-15"
}
],
"last_refresh": "2026-06-26T12:18:49Z"
}
{ "ok": true, "rfc": "ACE180101AA1", "encontrado": false, "estatus": "no_listado", "coincidencias": [] }
estatus | Significado fiscal |
|---|---|
presunto | Presunción de operaciones simuladas (aún no confirmado). |
definitivo | EFOS confirmado — sus comprobantes no son deducibles. |
exonerado | Desvirtuó la presunción o ganó sentencia favorable. |
no_listado | El RFC no aparece en ninguna lista. |
es_efos_definitivo para bloquear deducciones automáticamente; usa estatus para el matiz (presunto = advertencia, definitivo = bloqueo, exonerado = libre).