Ir al contenido

Paso a producción

Producción emite documentos con validez fiscal ante la DIAN. Por eso es un paso que decide una persona, no un agente ni un script. Esta guía reúne lo que cambia y lo que conviene comprobar; el proceso de la DIAN para producción lo describe la propia DIAN.

  1. Terminaste la integración en el sandbox. La verificación de integración da complete: true, y revisaste las comprobaciones que ella no puede hacer: reintento idempotente y corrección de rechazos.
  2. Aprobaste la habilitación. El set de habilitación aprobado con tu software vigente (habilitación). Es el ensayo real con la DIAN.
  3. La empresa está configurada para producción en el portal: datos del emisor, software de producción, resolución de producción y certificado. Hasta que lo esté, una clave sk_live_ responde 409 environment_not_configured, sin consumir número ni tu Idempotency-Key.
  4. Registraste las resoluciones de producción. El portal puede sincronizarlas con la DIAN (en habilitación se copian a mano; en producción se traen desde la DIAN) y registra las que falten.
  5. Tienes un gestor de secretos para la clave sk_live_ y el secreto del webhook de producción. No son los del sandbox.
Sandbox Habilitación (test) Producción (live)
Clave sk_sandbox_ sk_test_ sk_live_
Destino DIAN simulada Habilitación de la DIAN Producción de la DIAN
Efecto fiscal Ninguno Ninguno Real
Escenarios (Foliios-Sandbox-Scenario) Sí 422 sandbox_scenario_not_allowed 422 sandbox_scenario_not_allowed
Correo al comprador Buzón de pruebas Correo real Correo real
Contingencia Reintentos acelerados Intervalo normal Intervalo normal
Datos del sandbox Se borran a los 30 días No aplica No aplica
Bloqueo hasta aprobar el set No Sí (409 habilitation_required) No

Cambia también tu configuración:

  • Usa una clave por ambiente y no mezcles las variables: la clave decide el ambiente, y un documento nunca cambia de ambiente.
  • Cambia el resolution_id por el de la resolución de producción. La del sandbox (18760000000000) no existe en producción: 422 resolution_not_found.
  • El endpoint de webhooks se registra aparte para producción, con su propio secreto. Distingue por environment y livemode en el cuerpo (webhooks).
  • Quita cualquier cabecera Foliios-Sandbox-Scenario de tu código.

En producción, las herramientas que escriben (issue_document, resubmit_document, retry_document y la transcripción) piden una confirmación explícita. Un agente debe parar y pedírsela a la persona, no darla por sí mismo. Con una conexión de agente puedes además exigir aprobación de borradores, un monto máximo por documento y un tope diario.

  1. Emite una factura real, de bajo monto, con una Idempotency-Key propia.
  2. Consulta que llega a accepted y guarda number y cufe.
  3. Verifica que el correo llegó al comprador (o, si no hay correo, descarga el PDF).
  4. Confirma en el catálogo de la DIAN que el documento aparece.
  5. Revisa que tus webhooks de producción recibieron document.accepted y que la firma se verifica (verificar la firma).
  • Rechazo: rechazos y reenvío. El número de una factura rechazada se libera; el de una nota no.
  • La DIAN no responde: contingencia. No reenvíes: espera.
  • Tu sistema se cae: factura de papel, con sus plazos y su carta.
  • No sabes si un documento quedó aceptado: consulta GET .../documents/{document_id} antes de emitir otro; no repitas la emisión con otra Idempotency-Key.

Lo que foliios hace por tu empresa, y lo que sigue siendo tuyo, está en responsabilidades.