Apéndice H — Migración detallada CERT → PROD
H.1. Pre-migración (semana anterior)
- 100% de casos de certificación aprobados
- Solicitar a DGII los rangos PROD de cada tipo e-CF
- Confirmar fecha de autorización del acta
- Backup completo pre-migración
- Notificar a usuarios la fecha/hora de switch (sábado 22:00 por baja carga)
H.2. Día del switch
# 1. Modo mantenimiento
echo "El sistema entrará en modo PROD a las 22:00." > /var/www/html/maintenance.html
# 2. Detener servicios
systemctl stop tienda tienda-daphne tienda-celery tienda-celerybeat
# 3. Backup
bash /opt/tienda/scripts/backup_daily.sh
# 4. Cargar secuencias PROD
sudo -u tienda bash -c 'cd /opt/tienda && set -a && . .env && set +a && \
.venv/bin/python manage.py loaddata fixtures/secuencias_prod_2026.json'
# 5. Desactivar CERT
sudo -u tienda bash -c 'cd /opt/tienda && set -a && . .env && set +a && \
.venv/bin/python manage.py shell -c "
from accounting.models import ECFSequence
ECFSequence.objects.filter(ambiente=\"CERT\").update(activo=False)
"'
# 6. Cambiar variables
sed -i 's/DGII_AMBIENTE_DEFAULT=CERT/DGII_AMBIENTE_DEFAULT=PROD/' /opt/tienda/.env
# 7. Validar
sudo -u tienda bash -c 'cd /opt/tienda && set -a && . .env && set +a && \
.venv/bin/python manage.py ecf_validate_config'
# 8. Reiniciar
systemctl start tienda tienda-daphne tienda-celery tienda-celerybeat
# 9. Smoke test: emitir 1 e-CF PROD de prueba
H.3. Post-migración (primeros 7 días)
- Dashboard DGII abierto TODO el día
- Operador dedicado a revisar cada e-CF emitido
- Si >5% rechazos: ejecutar rollback (Apéndice I)
- Día 7: revisión con contador, certificar operación normal