# Instalare pe cPanel – Node.js 20

Țintă:
`https://remarketing.profisudura.ro`

## 1. Creează subdomeniul
În cPanel:
- Domains / Subdomains
- `remarketing.profisudura.ro`

## 2. Creează baza MySQL
Exemplu:
- DB: `profisud_remarketing`
- User: `profisud_remarketing`
- acordă ALL PRIVILEGES userului pe baza de date.

## 3. Încarcă și extrage arhiva
Recomandat într-un folder precum:
`/home/USER/remarketing/`

## 4. Creează `.env`
Copiază:
`.env.example` -> `.env`

Completează:
- DB_HOST
- DB_NAME
- DB_USER
- DB_PASSWORD
- SESSION_SECRET
- ADMIN_EMAIL
- ADMIN_PASSWORD
- APP_URL=https://remarketing.profisudura.ro

BREVO_API_KEY poate rămâne gol până îl configurăm.

## 5. Setup Node.js App
cPanel -> Setup Node.js App:
- Node.js version: 20
- Application mode: Production
- Application root: folderul proiectului
- Application URL: `remarketing.profisudura.ro`
- Application startup file: `app.js`

## 6. Instalează modulele
Din cPanel sau Terminal:
`npm install`

## 7. Creează tabelele și adminul
Din terminal în folderul aplicației:
`npm run setup`

## 8. Restart
În Setup Node.js App:
Restart Application

## 9. Test
Deschide:
`https://remarketing.profisudura.ro/health`

Trebuie să vezi:
`{"ok":true,...}`

Apoi:
`https://remarketing.profisudura.ro/auth/login`

## 10. Prima configurare
În panou:
Magazine -> Adaugă magazin

Pentru Kraftdele:
- Nume: Kraftdele
- Domeniu: kraftdele.ro
- Nume expeditor: Kraftdele.ro
- Email expeditor: adresa verificată în Brevo
- MerchantPro Base URL / API / endpoint-uri: le completăm după credentialele reale
- Brevo List ID: lista Kraftdele din Brevo

## Cron
Aplicația pornește intern sincronizarea la fiecare 30 minute:
`SYNC_CRON=*/30 * * * *`

Pe unele hostinguri cPanel procesele Node pot fi repornite. Dacă observăm că cronul intern nu este stabil, mutăm sincronizarea într-un cron cPanel care rulează `npm run sync`.
