# ───────────────────────────────────────────────────────────────────── # Production .env template для CryptoWallet API. # Скопируй: cp .env.example .env && chmod 600 .env && nano .env # ───────────────────────────────────────────────────────────────────── # ─── HashiCorp Vault (для master-key, JWT public keys, CSRF secret) ── VAULT_ADDR=https://vault.your-domain.com VAULT_ROLE_ID=00000000-0000-0000-0000-000000000000 VAULT_SECRET_ID=00000000-0000-0000-0000-000000000000 VAULT_MOUNT_POINT=dev-secrets VAULT_SECRET_PATH=crypto/master VAULT_JWT_KID_PATH=jwt/kid VAULT_JWT_KIDS_PREFIX=jwt/kids/ VAULT_CSRF_PATH=csrf VAULT_CRYPTO_KEY_PATH=crypto/master # ─── JWT (приём от bitok external issuer) ──────────────────────────── JWT_ALGORITHM=RS256 JWT_ISSUER=bitok JWT_AUDIENCE=cryptowallet-api # ─── API runtime ───────────────────────────────────────────────────── API_PORT=3001 LOG_LEVEL=info # CORS — comma-separated list разрешённых origins (фронтенд hosts) CORS_ORIGINS=https://app.your-domain.com,https://admin.your-domain.com CORS_ALLOW_CREDENTIALS=true # ─── Postgres (для docker-compose) ─────────────────────────────────── # Эти переменные используются compose'ом для создания/connect к Postgres контейнеру. # Если оператор использует external managed Postgres — игнорь POSTGRES_* и впиши # connection string в DATABASE_URL ниже. POSTGRES_USER=cryptowallet POSTGRES_PASSWORD=__GENERATE_STRONG_PASSWORD__ POSTGRES_DB=cryptowallet # Если используешь managed/external Postgres — раскомментируй и заполни: # DATABASE_URL=postgres://user:pass@host:5432/dbname # ─── KeyDB / Redis (idempotency cache + NearIntents asset map cache) ─ # REDIS_HOST=keydb имя service в compose — НЕ меняй если работаешь через compose REDIS_HOST=keydb REDIS_PORT=6379 REDIS_PASSWORD=__GENERATE_STRONG_PASSWORD__ REDIS_DB=0 # ─── Внешние API ───────────────────────────────────────────────────── # CoinGecko — для prices/dynamics (без ключа работает с rate limits) COINGECKO_API_KEY= # Jupiter — для SOL custodial swap (без ключа = lower rate limits) JUPITER_API_KEY= # Jupiter referral — если хочешь чтобы SOL swap fees шли через Jupiter feeAccount. # Сейчас у нас атомарный 0.7% fee atomic в swap-orchestrator (на APP_FEE_WALLET_SOL), # referral отдельный механизм. Можно оставить пустым. JUPITER_REFERRAL_ACCOUNT= # TronGrid — для TRX queries (без ключа 3 req/sec, с ключом 100/sec) # Получить: https://www.trongrid.io/dashboard TRON_API_KEY= # Outbound HTTP proxy (опц.) — если хотите чтобы Jupiter/Relay/NearIntents calls # шли через proxy (rotation IP для rate limits). Формат: http://user:pass@host:port OUTBOUND_PROXY_URL= # ─── App fee wallets ───────────────────────────────────────────────── # Эти адреса HARDCODED в backend (apps/api/src/lib/app-fee.ts), НЕ настраиваются # через env. Если нужно изменить — code review + rebuild. # EVM (ETH+BSC): 0xeb9fbf0d137ef5ea7b9959044c2ed44ec1206c68 # SOL: DQkQegoX698XkcXZ6VX9P1qUpbV64Sgjz1BCPFgfWpjD # TRX: TRwpFjnfMBe4aDJbHYEqeUVCG1auF8wFXP # BTC: — (not collectable)