Saltar al contenido principal

Variables de entorno

Backend (api/.env)​

Servidor​

VariableRequeridaPor defectoDescripción
PORTNo3000Puerto del servidor local. Si no está definida y NODE_ENV=production, el pool asume entorno serverless
NODE_ENVSí en prod—Debe ser production en despliegue (desactiva los endpoints de depuración)
TZRecomendada—America/Bogota
CORS_ORIGINNo*Orígenes permitidos separados por coma, sin espacios

Base de datos​

VariableDescripción
DATABASE_URLCadena de conexión. Tiene precedencia sobre DB_* y activa SSL. En Supabase usa el puerto 5432 (conexión directa), no el pooler 6543
DB_HOST, DB_PORT, DB_NAME, DB_USER, DB_PASSWORDConexión sin SSL para desarrollo local
DB_MAX_CONNECTIONSTamaño del pool en servidor Node (por defecto 10)

Autenticación​

VariablePor defectoDescripción
JWT_SECRET— (requerida)Firma de access tokens. Genera con openssl rand -base64 32
JWT_EXPIRES_IN8hDuración del access token
JWT_REFRESH_SECRETJWT_SECRET + '_refresh'Firma de refresh tokens. Usa uno distinto en producción
JWT_REFRESH_EXPIRES_IN30dDuración del refresh token

Supabase Storage​

VariableDescripción
SUPABASE_S3_ENDPOINThttps://<proyecto>.storage.supabase.co/storage/v1/s3
SUPABASE_S3_ACCESS_KEYAccess Key ID
SUPABASE_S3_SECRET_KEYSecret Access Key
SUPABASE_S3_REGIONOpcional (auto)
SUPABASE_BUCKETPor defecto product-images

SIIGO​

Las credenciales de SIIGO se guardan en la tabla siigo_settings, no en variables. Estas variables ajustan el envío de cotizaciones:

VariablePor defectoDescripción
SIIGO_DEFAULT_SELLER_ID—Vendedor si el asesor no tiene siigo_seller_id
SIIGO_QUOTE_DOC_TYPE_ID24096Tipo de documento Cotización
SIIGO_DEFAULT_TAX_ID17085Impuesto por ítem (IVA 0 %)
SIIGO_PAYMENT_TYPE_ID—Forma de pago (se omite si no está)
SIIGO_QUOTE_MAX_RETRIES3Reintentos ante 429/5xx
SIIGO_QUOTE_RETRY_BASE_MS1000Espera base del backoff

Correo​

VariableDescripción
SMTP_HOST, SMTP_PORT, SMTP_SECURE, SMTP_USER, SMTP_PASS, SMTP_FROMServidor SMTP
ADMIN_NOTIFICATION_EMAILDestinatario de avisos de nuevos registros
APP_URLURL pública del frontend, para enlaces en correos

Frontend (.env en la raíz)​

VariableDescripción
VITE_API_URLURL base de la API incluyendo /api. Local: http://localhost:3000/api. En Vercel con API en el mismo dominio: https://<app>.vercel.app/api
VITE_GOOGLE_MAPS_API_KEYClave de Google Maps (Maps JavaScript API + Geocoding). Restríngela por dominio
Variables de Vite

Las variables VITE_* se incrustan en el bundle durante el build. Cambiarlas exige volver a construir y desplegar el frontend. Nunca pongas secretos en ellas.