Administrator de Sistem — CRMconnect
Departament: IT / Admin
Nivel: Senior / Management tehnic
Obiectiv principal: Platforma funcționează corect, toți utilizatorii au accesul potrivit, datele sunt sigure și integrite
Ce face acest rol
Administratorul de Sistem este proprietarul tehnic al instanței CRMconnect. Configurează platforma la lansare, gestionează utilizatorii și permisiunile, monitorizează sănătatea sistemului, integrează CRMconnect cu sisteme externe și asigură securitatea datelor. Este singura persoană cu acces complet (admin = 1) și responsabilă de tot ce ține de funcționarea tehnică.
Documentație tehnică detaliată (stack, securitate, Kubernetes, GDPR, API): Ghid IT / Administrator
Module gestionate
| Modul | URL | Responsabilitate |
|---|---|---|
| Setări Generale | /admin/settings |
Configurare completă platformă |
| Personal | /admin/staff |
Conturi utilizatori |
| Roluri & Permisiuni | /admin/roles |
Matricea de acces |
| 2FA | /admin/authenticator_2fa |
Autentificare în doi factori |
| Câmpuri Personalizate | /admin/custom_fields |
Câmpuri specifice businessului |
| API Management | /admin/api/api_management |
Token-uri API pentru integrări |
| Webhooks | /admin/webhooks |
Notificări real-time externe |
| Workflow Automation | /admin/workflow_automation |
Automatizări interne CRM |
| Import Excel | /admin/excel_import |
Import date în masă |
| GDPR | /admin/gdpr |
Cereri de ștergere și portabilitate |
| Utilități | /admin/utilities |
Activity log, email queue, pipe log |
| Team Password | /admin/team_password |
Parolele partajate ale echipei |
Setup inițial — checklist complet
La prima configurare a instanței, parcurgi acești pași în ordine:
Pasul 1 — Datele companiei (`/admin/settings`)
Tab General:
✓ Denumire companie
✓ Logo light mode (PNG, max 300px lățime)
✓ Logo dark mode (versiunea pentru tema întunecată)
✓ Favicon (32×32px)
✓ Adresă fizică completă (apare pe facturile PDF)
✓ PDF logo width (lățimea logo pe documente)
Tab Email (SMTP):
✓ email_protocol = smtp
✓ smtp_host (ex: smtp.gmail.com sau mail.firma.ro)
✓ smtp_port: 587 (TLS) sau 465 (SSL)
✓ smtp_email (adresa From)
✓ smtp_username + smtp_password
✓ TESTEZI: buton Send Test Email → confirmi că ajunge
Tab Localization:
✓ Limbă implicită
✓ Fusul orar (CRUCIAL pentru timestamps corecte)
✓ Format dată (DD/MM/YYYY pentru RO)
✓ Separator mii / zecimale (conform standard local)
Tab Cronjob:
✓ URL cron configurat pe server
✓ Verifici că last_run e actualizat la fiecare minut
Cron job esențial. Fără cron activ nu funcționează: facturare recurentă, sincronizare WooCommerce, Marketing Automation, notificări expirare. Configurezi pe server:
* * * * * curl -s "https://firma.ro/cron/index" > /dev/null
Pasul 2 — Structura organizațională
1. /admin/departments → crezi departamentele companiei
(cu adresele email dedicate pentru rutarea tichetelor)
2. /admin/roles → crezi rolurile per funcție:
- Agent Vânzări, Contabil AR, Operator Depozit, etc.
- Principiu: privilegiu minim — accesul strict necesar
3. /admin/staff → adaugi toți utilizatorii:
- Email unic (= username)
- Rol alocat din lista creată la pasul 2
- Trimiți email de bun venit cu link setare parolă
Pasul 3 — Configurare financiară
/admin/taxes → cotele de TVA (19%, 9%, 5%, 0%, taxare inversă)
/admin/currencies → monedele folosite + cursuri de schimb
/admin/paymentmodes → metodele de plată acceptate
/admin/billing/config → seriile de numere pentru facturi/propuneri/contracte
Pasul 4 — Securitate
/admin/authenticator_2fa → activezi 2FA pentru toți adminii
/admin/roles → auditezi că niciunul nu are permisiuni în plus față de necesarul rolului
Comunici tuturor utilizatorilor: parola temporară trebuie schimbată la primul login
Pasul 5 — Câmpuri personalizate (dacă e necesar)
/admin/custom_fields → adaugi câmpurile specifice businessului:
ex. pe Leads: Industrie, Nr. angajați, Buget estimat
ex. pe Clienți: CUI, Nr. registru comerț, Cod client ERP
ex. pe Facturi: Nr. PO client, Referință proiect
Pasul 6 — Integrări
API tokens (/admin/api/api_management):
→ Creezi câte un token per integrare externă
→ Denumit explicit (ex: „Zapier - Leads", „Mobile App", „ERP Sync")
→ Token afișat o singură dată — copiezi imediat
Webhooks (/admin/webhooks):
→ Configurezi pentru fiecare sistem extern care trebuie notificat
→ Testezi cu debug_mode = 1 înainte de activare
Email Pipe (pentru tichete):
→ Forwarding email departament → pipe.php configurată pe server
→ Testezi cu un email real
Gestionarea utilizatorilor
Angajat nou
/admin/staff → Adaugă Staff
→ Email (unic în sistem)
→ Rol: selectezi din lista de roluri
→ Departament(e): poți fi în mai multe
→ Bifezi „Trimite email de bun venit"
→ Salvezi
Verifici:
→ Utilizatorul poate loga?
→ Vede modulele corecte conform rolului?
→ Nu vede module la care nu ar trebui să aibă acces?
Angajat care pleacă (offboarding)
IMEDIAT la plecare (în aceeași zi):
/admin/staff → deschizi fișa → setezi Active = 0
Nu ștergi niciodată un angajat — dezactivezi!
Dacă totuși ștergi → sistemul forțează realocarea TUTUROR înregistrărilor lui
(tichete, task-uri, leads, proiecte) la un alt utilizator selectat de tine.
Următor: verifici și revoci accesele conexe:
→ Email corporate
→ VPN
→ Alte sisteme externe cu token-uri API generate de el
Limite de licențiere
Dacă primești eroare la activarea unui utilizator nou → licența a atins limita de locuri (MEMBERS_INCLUDED + extra_seats):
- Dezactivezi un cont inactiv (
active = 0) — eliberezi un loc - Sau contactezi CRMconnect pentru achiziție locuri suplimentare
Roluri și permisiuni — configurare corectă
Structura ierarhiei de acces
Admin (admin = 1) → acces complet, permisiunile NU se verifică
↓
Staff cu Rol → moștenesc permisiunile rolului
↓
Contact Client → permisiuni separate (portal client)
Tipurile de permisiuni per modul
| Permisiune | Ce înseamnă |
|---|---|
view |
Vede toate înregistrările (ale tuturor) |
view_own |
Vede doar înregistrările proprii / departamentului |
create |
Poate crea înregistrări noi |
edit |
Poate edita |
delete |
Poate șterge |
Roluri standard recomandate
Agent Vânzări:
Leads: view_own + create + edit
Clienți: view + create
Propuneri: view + create + edit
Facturi: view_own
Setări: ✗ (fără acces)
Contabil AR:
Facturi: view + edit
Plăți: view + create
Extrase Bancare: view + create
Clienți: view
Setări: ✗
Operator Depozit:
Depozit (toate sub-modulele): view + create + edit
Comenzi Vânzare: view
Achiziții: view
Setări: ✗
Administrator HR:
Staff: view + create + edit
HR Profile: view + create + edit
Recrutare: view + create + edit
Salarizare: view + create + edit
Setări: ✗
Override individual de permisiuni
Dacă un angajat are nevoie de permisiuni diferite față de rolul lui:
- Fișa Staff → tab Permissions → setezi override-urile individuale
- Override-ul are prioritate față de rolul general
Monitorizare zilnică și săptămânală
Zilnic (5 minute)
/admin/utilities → Email Queue:
→ Există emailuri blocate? → Process All sau investighezi eroarea
/admin/utilities → pipe_log (dacă folosești email pipe pentru tichete):
→ Erori de import? → verifici configurarea forward-ului
/admin/webhooks → Logs (dacă ai webhook-uri active):
→ Există cereri eșuate? → verifici URL-ul destinație
Săptămânal (15-20 minute)
/admin/utilities/activity_log:
→ Acțiuni neobișnuite? (șteri în masă, accese la ore ciudate)
→ Logare de pe IP-uri necunoscute?
/admin/api/api_management:
→ Token-uri API cu utilizare neașteptat de mare?
→ Token-uri inactive de > 6 luni → le dezactivezi
/admin/staff → filtrezi last_login:
→ Utilizatori activi care nu s-au logat în 90+ zile → evaluezi dezactivare
2FA status (/admin/authenticator_2fa/userlist):
→ Toți adminii au 2FA activat? Dacă nu → reamintiți sau impuni
Integrări — API și Webhooks
API Management
La fiecare integrare nouă:
/admin/api/api_management → Adaugă Token
→ Denumire explicită: „[Sistem] - [Scop]" (ex: „Make.com - Leads Sync")
→ Staff asociat: un utilizator dedicat integrării (nu userul tău personal)
→ Copiezi token-ul IMEDIAT (afișat o singură dată)
→ Trimiți token-ul securizat la destinatar
La ieșirea unui angajat care deținea token-uri:
→ Identifici toate token-urile asociate lui → le dezactivezi
→ Creezi token-uri noi și actualizezi integrările
Webhooks
La configurarea unui webhook nou:
1. Adaugă webhook cu URL-ul sistemului extern
2. Selectezi entitatea (Lead, Factură, Tichet etc.) și evenimentele (creat, actualizat, șters)
3. Activezi debug_mode = 1 TEMPORAR
4. Trimiți un eveniment test
5. Verifici în Logs că request-ul a ajuns și răspunsul e 200 OK
6. Dezactivezi debug_mode = 1 (altfel log-urile cresc rapid)
Workflow Automation — configurare fluxuri interne
/admin/workflow_automation → Adaugă Automatizare
Structura:
Trigger: ce eveniment declanșează (Lead creat, Tichet status schimbat, etc.)
Condiție: filtre suplimentare (ex: doar lead-uri din sursa X)
Acțiune: ce se execută (notificare, task creat, email trimis, status schimbat)
Exemple standard de configurat la setup inițial:
1. Lead Urgent → notificare imediată la Manager Vânzări
2. Tichet nou → notificare agent departament
3. Contract expirat în 60 de zile → task reînnoire pentru KAM
4. Factură restantă > 30 zile → email reminder automat
5. Angajat nou creat → task onboarding pentru HR
Import date
Import Excel în masă
/admin/excel_import → selectezi modulul (Leads, Clienți, Produse etc.)
→ Descarci template-ul Excel
→ Completezi datele în template (nu modifici structura coloanelor!)
→ Uploadezi fișierul
→ Sistemul validează → arată erorile rând cu rând
→ Confirmi importul
Înainte de orice import mare:
→ Faci un export de backup al datelor existente
→ Importi 10 rânduri de test înainte de fișierul complet
→ Verifici că datele au intrat corect
Câmpuri personalizate — ghid rapid
/admin/custom_fields → Entitate → Adaugă Câmp
Opțiuni importante:
required: câmp obligatoriu la creare (gândești bine înainte — nu poate fi dezactivat retroactiv fără date lipsă)
show_on_pdf: câmpul apare pe facturile/contractele PDF
show_on_client_portal: clientul vede câmpul în portalul lui
only_admin: câmpul e vizibil doar administratorilor
bs_column: lățimea în formular (6 = jumătate, 12 = lățime completă)
Tipuri recomandate per scop:
Cod/Referință externă → text (scurt)
Categorie/Status → select (dropdown cu valori predefinite)
Dată de expirare → date_picker
Note lungi → textarea
Da/Nu → checkbox
Securitate — checklist permanent
| Verificare | Frecvență | Unde |
|---|---|---|
| 2FA activ pentru toți adminii | La fiecare angajare admin | /admin/authenticator_2fa |
| Conturi dezactivate la ieșire angajat | Imediat | /admin/staff |
| Token-uri API inactive revocate | Trimestrial | /admin/api/api_management |
| Activitate log revizuită | Săptămânal | /admin/utilities/activity_log |
| Credențiale SMTP rotite | Anual sau la incident | /admin/settings tab Email |
| Roluri auditate (permisiuni excesive) | Semestrial | /admin/roles |
| Utilizatori activi fără login > 90 zile | Lunar | /admin/staff → last_login |
GDPR — cereri de drepturi
Unde: /admin/gdpr
Când primești o cerere de exercitare a drepturilor GDPR:
Drept de acces / Portabilitate:
→ GDPR → identifici persoana
→ Exporti toate datele asociate emailului/CNP-ului
→ Trimiți datele în format structurat (JSON/CSV)
→ Termen legal: 30 zile de la primirea cererii
Drept de ștergere (uitare):
→ GDPR → Cerere de ștergere → introduci emailul
→ Sistemul anonimizează: înlocuiește datele personale cu [DELETED]
→ Istoricul tranzacțiilor rămâne (pentru obligații legale fiscale)
→ Documentezi cererea și data procesării
Team Password Manager
Unde: /admin/team_password
Stochează securizat parolele partajate ale echipei (acces social media, conturi servicii externe, credențiale shared etc.):
- Parole organizate în categorii
- Acces controlat per rol/departament
- Vizibilitate separată față de parolele personale ale angajaților
Metrici de sănătate sistem
| Indicator | Semnal bun | Semnal de alarmă |
|---|---|---|
| Cron last_run | Actualizat la < 2 min | > 5 min → cron oprit |
| Email queue | 0 emailuri blocate | > 10 → problemă SMTP |
| API error rate | < 1% din cereri | > 5% → verifici integrarea |
| Webhook delivery rate | > 99% | < 95% → URL destinație problematic |
| Utilizatori cu 2FA | 100% admini | Orice admin fără 2FA |
| Conturi active fără login > 90 zile | 0 | Orice cont suspect de inactiv |
Sfaturi practice
Principiul privilegiului minim este protecția ta. Dacă un angajat are acces la ceva și face o greșeală, ești responsabil că i-ai dat accesul. Configurezi rolurile restrictiv și ajustezi la nevoie — nu permisiv și restricționezi ulterior.
Niciodată
admin = 1pentru conturi de serviciu. Token-urile API și conturile de integrare ar trebui să fie Staff normal cu rol limitat — nu Super Admin. Un token compromis cu drepturi admin e catastrofal.
Testezi SMTP la fiecare modificare de credențiale. Un SMTP greșit înseamnă că platforma nu trimite niciun email (facturi, notificări, resetări parolă) — și nu vei afla imediat. Butonul Test trimite un email de verificare.
Documentează fiecare token API creat. Pune denumiri clare: „Make.com - Leads 2026" nu „Token 1". Când trebuie să revoci sau să înlocuiești, știi exact ce afectezi.
Backup înainte de orice import mare. Un import greșit de 10.000 de rânduri e greu de anulat. 5 minute de backup te salvează de ore de curățare manuală.
Testați configurația SMTP imediat după orice modificare de credențiale folosind butonul de Test — SMTP incorect blochează silențios toate emailurile platformei (facturi, resetări parolă, notificări) și poate să nu fie descoperit ore întregi.
Token-urile API acordă acces egal cu permisiunile utilizatorului asociat. Revocați imediat toate token-urile când un angajat pleacă sau schimbă rolul — token-urile scurse sau orfane acordă acces complet API până la revocare activă.