Skip to Content
Sandbox

Sandbox

El sandbox de FactuLink es un ambiente de pruebas completo que simula el flujo de facturación sin realizar llamadas reales al SAT. Perfecto para desarrollo e integración.


Cómo activar el sandbox

No necesitas configuración especial. Simplemente usa una API Key con prefijo sk_test_ y todas tus peticiones se ejecutarán en el ambiente sandbox automáticamente.

curl -X POST https://api.factulink.com.mx/api/v1/cfdis \
-H "Authorization: Bearer sk_test_a1b2c3d4..." \
-H "Content-Type: application/json" \
-d '{ "receptor_rfc": "XAXX010101000", ... }'

Cómo funciona el sandbox

Cuando usas sk_test_, FactuLink ejecuta un timbrado simulado: genera UUIDs y sellos con la estructura correcta de CFDI 4.0 sin enviar el XML al SAT. Esto significa:

  • No se hacen llamadas externas al SAT ni se consumen folios reales
  • Los XMLs y PDFs generados tienen el formato fiscal completo (estructura, atributos, sellos)
  • Puedes probar el flujo de integración de extremo a extremo sin riesgo
  • Los CFDIs sandbox no tienen validez fiscal y no aparecen en el portal del SAT

Diferencias vs producción

CaracterísticaSandbox (sk_test_)Producción (sk_live_)
Header de respuestaEl servidor incluye X-Sandbox: trueNo incluido
PDFs generadosWatermark “DOCUMENTO DE PRUEBA”PDF limpio
UUIDs de CFDIGenerados localmenteAsignados por el SAT
Tiempo de timbrado<200ms~2-5 segundos
Validación ante el SATNo
Cancelación realNo

Ejemplo de respuesta sandbox

POST/api/v1/cfdis201
Request
{
"receptor_rfc": "XAXX010101000",
"receptor_nombre": "Cliente de Prueba SA de CV",
"conceptos": [
  {
    "clave_prod_serv": "84111506",
    "descripcion": "Servicio de consultoría",
    "cantidad": 1,
    "valor_unitario": 1000.00
  }
]
}
Response
{
"id": "cfdi_01J5K...",
"uuid": "6ECB5A40-1234-4567-ABCD-123456789ABC",
"status": "timbrado",
"sandbox": true,
"total": 1160.00,
"xml_url": "https://api.factulink.com.mx/storage/sandbox/cfdi_01J5K.xml",
"pdf_url": "https://api.factulink.com.mx/storage/sandbox/cfdi_01J5K.pdf",
"timbrado_ms": 45,
"created_at": "2026-04-05T15:30:00Z"
}

Nota el campo "sandbox": true y el tiempo de timbrado de 45ms.


Pre-producción contra PAC

Para una validación más rigurosa antes de ir a producción, puedes activar el modo pre-producción, que enruta tu timbrado al ambiente de pruebas del PAC autorizado en lugar del simulador local. Esto te permite:

  • Validar que tu XML cumple las reglas estrictas del PAC y del SAT
  • Detectar errores que el simulador no atrapa (catálogos desactualizados, RFCs inválidos)
  • Obtener tiempos de respuesta y comportamiento idénticos a producción

Para activarlo, cambia el ambiente de tu cuenta a test_pac desde el dashboard (Configuración > Ambiente) o mediante la API de administración. Es un ajuste a nivel de cuenta, no un header por petición.

Una vez configurado, todas las peticiones con sk_test_ se enrutan al ambiente de pre-producción del PAC en lugar del simulador local.

Nota: Pre-producción tiene tiempos de respuesta similares a producción (~2-5s) y puede tener ventanas de mantenimiento del PAC.


Ir a producción

Cuando tu integración esté lista, sigue estos pasos para pasar a producción:

1. Sube tu CSD real

Necesitas tu Certificado de Sello Digital (CSD) vigente. Súbelo a través de la API o el dashboard:

POST/api/v1/csds

Necesitarás:

  • Archivo .cer (certificado)
  • Archivo .key (llave privada)
  • Contraseña de la llave privada

2. Solicita acceso a producción

Desde el dashboard de FactuLink, ve a Configuración > Producción y solicita la activación. El equipo validará tu CSD y habilitará el timbrado real.

3. Cambia a API Keys de producción

Genera una nueva API Key con prefijo sk_live_ y actualiza tu aplicación:

# Desarrollo
FC_API_KEY=sk_test_a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6

# Producción
FC_API_KEY=sk_live_x9y8z7w6v5u4t3s2r1q0p9o8n7m6l5k4

Checklist antes de producción

  • Todos los flujos probados en sandbox (crear, consultar, cancelar CFDIs)
  • Validación en pre-producción contra PAC exitosa
  • CSD vigente subido
  • Acceso a producción aprobado
  • Variables de entorno actualizadas con sk_live_
  • Webhooks configurados para el ambiente de producción
  • Manejo de errores implementado en tu aplicación
Last updated on