Aller au contenu

Variables d'environnement

Chaque brique lit sa configuration depuis des variables d’environnement. Cette page donne une vue d’ensemble par projet. Pour la liste exacte et à jour, référez-vous toujours au .env.example (ou .env.local.example) du projet concerné.

Catégories principales (voir Configuration pour le détail, type et défaut de chacune) :

Catégorie Contenu
Serveur environnement, niveau de log, port, host, proxies de confiance
Firebird host, port, base, utilisateur, mot de passe
Redis URL de connexion
Sécurité PSP_CONFIG_KEK (chiffrement des configs PSP), clé de signature du manifest bootstrap (Ed25519), secrets de tokens client et de cookies
CORS / consoles origines autorisées, URL de base de la console
Titréo (cartes cadeaux) TITREO_API_BASE (adresse de l’API Titréo REST) et TITREO_PRODUCT_LABELS (catalogue codeProduit → émetteur, JSON {"WDG":"wedoogift"}, fourni par BH ; vide, toute carte est affichée « Titreo »). Les accès — nom d’enseigne et clé — ne sont pas des variables : chaque marchand enregistre les siens, chiffrés en base
Logs techniques LOKI_URL, posée par deploy/docker-compose.observability.yml
Échanges HTTP complets EXCHANGE_CAPTURE (all, errors par défaut, off), EXCHANGES_LOKI_URL (posée par la surcouche d’observabilité pour l’API et les deux workers), EXCHANGE_BODY_MAX_BYTES (32 Ko). Voir Logs techniques

Frontends Next.js (checkout-page, demo-shop, consoles)

Section intitulée « Frontends Next.js (checkout-page, demo-shop, consoles) »

Convention Next.js : les variables exposées au navigateur sont préfixées NEXT_PUBLIC_. Les autres restent côté serveur.

Variable Projets Rôle
TITREO_API_BASE_URL checkout-page, demo-shop, consoles URL de l’API côté serveur (peut être un hostname Docker, ex. http://api:3000)
NEXT_PUBLIC_TITREO_API_BASE_URL checkout-page, demo-shop, consoles URL de l’API côté navigateur (doit être publique)
TITREO_API_KEY demo-shop Clé d’API E-Pay du marchand (tep_…) pour créer des sessions côté serveur (secret). Lue par demo-shop/lib/config.ts ; sans rapport avec l’ancienne variable du même nom de l’API
NEXT_PUBLIC_ADAPTER_ADYEN_URL checkout-page URL CDN du bundle de l’adapter Adyen
TITREO_CDN_INTERNAL_URL consoles Adresse interne du CDN, par laquelle le serveur lit downloads/index.json (http://cdn en production). Absente : celle de TITREO_CDN_PUBLIC_URL
TITREO_CDN_PUBLIC_URL consoles Adresse publique du CDN, portée par les liens de téléchargement rendus au navigateur (https://cdn.<domaine>). Absente : aucun paquet n’est proposé
GRAFANA_BASE_URL console-admin Grafana du client. Vide : aucun lien « Ouvrir dans Grafana »
Variable Rôle
SHOPIFY_API_KEY / SHOPIFY_API_SECRET Credentials de l’app (depuis Shopify Partners)
SHOPIFY_APP_ID Identifiant de l’app
EPAY_API_BASE URL de base de l’API Titreo E-Pay. La clé d’API E-Pay n’est pas une variable : elle est enregistrée par boutique, chiffrée
DATABASE_URL Connexion Prisma — file:/data/epay.sqlite en production (sessions OAuth, réglages par boutique, opérations)
SHOPIFY_APP_ENCRYPTION_KEY Chiffre la clé d’API E-Pay de chaque boutique (tep secrets)
Variable Rôle
SHOPIFY_DOMAIN Domaine de la boutique de test (*.myshopify.com)
SHOPIFY_ADMIN_TOKEN Token Admin API (shpat_…)
SHOPIFY_STOREFRONT_TOKEN Token Storefront API
TEST_VARIANT_GID GID d’une variante produit pour les tests (optionnel)
TEST_GIFTCARD_AMOUNT Montant de carte cadeau de test en centimes (optionnel)

Les paramètres ne sont pas des variables d’environnement mais des configurations PrestaShop (table configuration), saisies dans le back-office du module : URL de base de l’API, clé API marchand, secret de webhook, URL de la page de checkout.