Ghid & Ajutor MarketHub
Documentaţie detaliată pentru fiecare modul. Foloseşte cuprinsul din stânga pentru a sări direct la modulul care te interesează.
🚀 Start rapid (5 minute la prima campanie)
- Verifică emailul — primeşti link de confirmare la signup. Click pe el (linkul expiră în 3 zile).
- Adaugă cont SMTP — Setări laterale: Conturi → +Adaugă. Vezi ghid detaliat conturi.
- Construieşte primii leaduri — fie scraping din Surse → Caută firme, fie import CSV din Contacte → Import.
- Creează un template — Template-uri → +Nou sau "Genereaza cu AI".
- Lansează campanie — Campanii → +Nouă: 4 paşi (template, destinatari, conturi+timing, review).
📊 Dashboard
Pagina de start după login — prezintă starea CRM-ului tău + activitate live.
Cele 4 KPI principale (clickabile)
- 👥 Contacte total — toate lead-urile din CRM. Click → filtrează Contacte la "toate".
- ✉️ Cu email — doar cele cu adresă de email validă. Click → arată "outreach-able leads".
- 🌐 Cu website — lead-uri cu URL detectat (folosit de AI per-contact research).
- ⭐ Rating mediu — scor de calitate calculat din completitudinea datelor.
Card-uri secundare
- Alte cifre: Fără website, Fără email, Surse active
- Activitate live: feed real-time cu ce fac asistenţii AI peste toate campaniile
- Acces rapid: 4 quick-launch — AI Agent, Video AI, Social Publish, SMS
Greeting + ce-i nou
"Bună, [Nume]" + emoji bazat pe oră. Refresh automat la 90 secunde — nu trebuie să apeşi reload manual.
👥 Contacte (CRM)
Centrul de comandă pentru lead-urile tale. Toate persoanele/firmele importate sau scrape-uite ajung aici.
Layout pagină
- KPI strip sus (6 card-uri clickabile): Total / Cu email / Cu telefon / Cu website / Pe liste / Blacklist
- Bară laterală stânga (3 secţiuni colapsabile):
- Liste — listele tale custom (segmente statice). Buton special Blacklist (icon ban roşu) — exclude din toate campaniile.
- Segmente — segmente dinamice generate de AI (ex: "B2B medii", "Retail Bucureşti")
- Tag-uri — etichete free-form pe care le creezi tu
- Tabel central — 8 coloane sortabile: ☑ checkbox / Nume / Email / Telefon / Website / Categorie / Tag-uri / Rating
Bara de filtre (deasupra tabelului)
- Website: Toate / Cu website / Fără website
- Email: Toate / Cu email / Fără email
- Categorie: dropdown populat dinamic din contactele tale
- Locaţie: extras din date
- Judeţ: toate cele 41 de judeţe + Bucureşti
- Search box: caută real-time în Nume, Email, Adresă, Telefon
Acţiuni bulk (apar când selectezi contacte)
Bară de acţiuni se afişează deasupra tabelului când bifezi măcar 1 contact:
- Adaugă la listă — selectezi listă din dropdown
- Adaugă tag — tag picker multi-select
- Blacklist — adaugă în blacklist (nu mai primesc nimic)
- Şterge — şterge complet din CRM
Butoane în header secţiune
- 🤖 AI Insights — Claude analizează baza ta, sugerează segmente noi, dedup, normalizări
- 📥 Import — CSV (drag&drop), Mailchimp, Substack
- 📤 Export — descarcă view-ul curent ca CSV
- 🖨️ Raport — PDF printabil cu KPI + top categorii + top judeţe
- 🧬 Duplicate — detector deduplicare cu wizard de merge (combină note, tag-uri, liste)
- + Manual — adaugă contact unul-câte-unul (Nume + Email obligatorii)
Contact drawer (când dai click pe un nume)
Se deschide panou dreapta cu:
- Email, Telefon, Website, Categoria, Rating
- Note-uri timestamped — adaugă/editezi/ştergi observaţii
- Tag-uri asociate — adaugă/scoate
- Istoric campanii — în ce campanii a fost destinatar + status (sent / replied / bounced / unsubscribed)
- Toggle Blacklist per-contact
- Custom fields — câmpuri suplimentare ale tale
Filtre salvate (presetări)
Salvează combinaţii de filtre complexe (ex: "Cu email + Cluj + Construcţii"). Click pe presetare = aplicare instantă.
Limite
- Bulk se aplică pe pagina curentă (default 50 contacte/pagină)
- Max 500 contacte per page view
- Search nu e limitat dar UI optimizat pentru ~100 caractere
Mesaje de eroare
"Completează locaţia!" — la salvare contact fără locaţie
"Nimic de îmbinat" — la merge duplicate fără potriviri
"Merge eşuat: [detail]" — eroare detaliată merge
🌍 Surse (Baza de Date Google Maps)
Modulul de scraping care găseşte firme noi din Google Maps Places API. Lucrează în 2 etape: caută firmele → extrage email-urile lor.
Etapa 1: Caută firme
Câmpuri de căutare
- Ţara: doar 🇷🇴 România momentan (hardcoded)
- Locaţie: oraş ("Cluj-Napoca"), judeţ ("Bihor"), ţară ("Romania" pentru caut national), sau multi-search separat cu virgulă ("restaurant, cafenea, bar"). Pentru oraşe mari sistemul auto-extinde la cartiere apropiate.
- Tip afacere / domeniu: opţional ("avocat", "dentist"). Gol = toate firmele.
- Maxim rezultate: 1–500, default 60. Pro tip: începe cu 60, măreşte dacă zona-i mare.
Mod exhaustiv (🚀 checkbox)
Activează-l + selectează un bundle de categorii largi (nu cuvinte-cheie individuale). Bundle-uri disponibile: Food & Beverage, Professional Services, Construction, Healthcare, etc. Caută toate firmele din categoria respectivă pentru locaţia dată — mai lent, dar complet.
Auto-actions opţionale
- Auto-apply Tags — taguri aplicate doar firmelor noi (deduplicate)
- Auto-add to a List — adaugă rezultatele la o listă existentă
Butoane utile
- Pro tips — AI sugerează nişe pentru locaţia ta (foloseşte Claude)
- Preset — salvezi căutarea curentă ca preset reutilizabil
Progress
- Bară "Se caută..." cu buton ⏹ Cancel
- Scrape rulează în background — poţi schimba secţiunea, continuă
- Rezultate intră în CRM real-time, nu la final
Etapa 2: Extrage email-uri
Mod selector
- Standard (~30–40% rată succes) — vizitează homepage + /contact. Rapid, bun pentru loturi mari.
- Deep Scan (~70–80% rată succes) — adaugă deobfuscare Cloudflare, Facebook /About, lookup WHOIS. Mai lent dar găseşte email-uri ascunse.
Firme per batch
25 / 50 / 100 / 200 / 500. Mai mare = mai rapid global dar risc mai mare de blocaje IP. 50 e sweet spot.
Buton final
"Extrage email-uri" (verde, mare). Bară de progres cu timp estimat. Email-urile valide intră automat în Contacte → segment "Email valide". Email-uri invalide/poluate sunt filtrate (blocklist intern de 60+ domenii: Sentry, Wix, errors, etc.)
Istoric & presetări
📋 Istoric căutări
- Toate căutările trecute cu dată, locaţie, tip, număr rezultate
- Buton Reîncarcă — re-rulează aceeaşi căutare
- Buton Goleşte — şterge istoric (NU şterge firmele scrape-uite)
⭐ Saved searches
Strip colapsabil cu căutările tale salvate. Click = re-rulare instantă.
Setări avansate (expand "Setări avansate")
- 🧹 Curăţă email-uri poluate — şterge email-urile malformate ("error-lite@duckduckgo.com" etc.) ca să poţi re-scrape acele firme
- 🔓 Deblochează buton extragere — deblochează buton "Extrage email-uri" dacă e blocat după restart server
- ⚠ Şterge toate firmele — IREVERSIBIL. Cere tastare "STERGE TOT" pentru confirmare. Şterge toate firmele scrape-uite + tag-uri + liste.
Limite
- Ţări suportate: doar România (hardcoded)
- Max rezultate per căutare: 500
- Deep scan timeout: ~30s per firmă
Mesaje de eroare
"Completează locaţia!" — câmp obligatoriu
"În mod exhaustiv, alege o categorie largă" — necesar bundle când Exhaustive ON
"Eroare la pornirea scraping-ului: [detail]" — API/conexiune
✍️ Template-uri Email (cu AI Copywriter)
Editorul de mailuri cu 2 moduri (Text / Design Studio) + asistent AI integrat.
Listă template-uri
- Tabs: Toate / Ale mele / Galerie
- Galerie pre-făcută — template-uri exemplare gata de folosit
- "Generează cu AI" (sparkle violet) — modal de generare AI
- "Template nou" (+) — editor gol
Mod 1: Text Editor (📝)
Subject field
- Max 200 caractere (limită hard) — counter "0 / 50 caractere" guideline soft
- Suportă variabile:
{{firma}},{{nume}},{{oras}},{{website}},{{poza_logo}} - Bară de variabile — quick-insert cu un click la cursor
Body editor (Quill WYSIWYG)
- Word count real-time
- Formatare: Bold / Italic / Linkuri / Liste / Heading-uri
Attachments
- Imagini şi PDF-uri (max 10MB / fişier)
- "Adaugă ataşament" — file picker, upload automat
Spam score panel
- Scor 0–100 (roşu/galben/verde)
- Listă probleme: "Too many caps", "Spammy words: FREE, URGENT", "Missing unsubscribe link"
- Auto-check la fiecare modificare text
Mod 2: Design Studio (🎨)
Layout split pe verticală:
- Sus: Preview iframe — toggle Desktop / Mobile / Dark mode + dropdown Produs (context AI)
- Jos: Chat dock AI — istoric conversaţie, drag&drop imagini (max 5MB), quick-chips:
- "+ testimonial" — adaugă testimonial real cu autor + companie
- "+ pricing" — adaugă pricing cu 3 tier-uri
- "+ paşi" — adaugă paşi numerotaţi cum funcţionează
- "+ stats" — cifre mari + label-uri scurte
- "mai scurt" / "mai prietenos" / "dark" / "alt titlu"
Butoane laterale (toate modurile)
- Copywriter ✨ — chat: "Rescrie subject mai catchy", "Adaugă hook puternic", "Verifică greşeli"
- AI Design ✨ (doar Design Studio) — modal brief: URL + produs + instrucţiuni
- Subject Lab — generează 5 variante de subject, alegi una
- Critique — AI evaluează ton, structură, claritate CTA
- Preview — vezi cum arată în Gmail/Outlook
- Traduceri 🌍 — variante multi-limbă (EN, FR, DE, ES)
- Versiuni 🕒 — istoric versiuni (auto-save), restore versiuni vechi
- Test — trimite test la inbox-ul tău
- Salvează (albastru) — necesar înainte de folosire în campanie
Limite
- Subject: 200 chars hard
- Body: nelimitat practical, dar >5000 chars = clienţii email truncează
- Attachments: 10MB / fişier, multiple permise
Mesaje de eroare
"Scrie ceva întâi" — body necesar
"Nota nu poate fi goală" — note în drawer contact
📤 Campanii Email (wizard 4 paşi + monitoring)
Wizard pas-cu-pas pentru lansarea unei campanii.
Pasul 1: Template
- Numele campaniei (intern, ex: "Restaurante Cluj — Aprilie")
- Selectezi template din lista ta (cu thumbnail)
- "Continuă" → pasul 2
Pasul 2: Destinatari
Mode picker (radio)
- "Toate contactele cu email" (default)
- "O listă anume" — selectezi din dropdown
- "După tag-uri" — multi-select (logică OR)
Buton "Calculează destinatari": arată "200 din 5000" cu breakdown.
Pasul 3: Conturi + Delivery settings
Conturi SMTP
Checkbox-uri pentru fiecare cont conectat. Rotation: emailurile distribuite egal pe conturile selectate.
Throttling (⏱)
- Presets: 🐢 Lent (60s) / 🚶 Mediu (30s, recomandat) / 🏃 Rapid (10s, doar liste mici)
- Custom: 5–600 secunde
- Estimat afişat: "~2 ore 15 minute pentru 450 contacte la 30s"
Schedule (📅)
- "Porneşte imediat" (default)
- "Salvează draft" (start manual mai târziu)
- "Programează la dată specifică" + timezone
- Pro tips: butoane Marţi 09:00 / Miercuri 10:00 / Joi 11:00 (B2B best times)
A/B test (🧪)
Toggle ON → introduci variantă B subject. Split 50/50, urmăreşte opens per variantă. Badge "RECOMANDAT".
AI Options
- 🔗 Drip / Sequence multi-step: toggle ON → defineşti follow-up-uri (email 2, 3) pentru non-respondenţi. Pasul 1 = email-ul de mai sus. Paşii 2+ se trimit doar dacă lead n-a răspuns. Buton "+ Adaugă pas".
- ⏰ AI alege ora optimă per recipient: AI detectează când fiecare lead deschide tipic email-uri (din istoric) şi trimite la ora aia. Boost aşteptat: +3–5% open rate.
Pasul 4: Review + send
Sumar: Template / Recipients / Conturi / Throttle / Schedule / A/B / Drip.
Două butoane finale: "Salvează draft" (gri) sau "Porneşte acum" (albastru).
Live monitoring (după pornire)
- Status badge: "Se trimite" / "Pauzat" / "Finalizat" / "Eşuat"
- KPI: "150 trimise / 5000 prevăzute" + bară progres
- Throttle afişat, ultim update timestamp
- Butoane: Pauzează / Reia / Opreşte / Rapoarte
AI per-contact review
Dacă activezi personalizare AI: ecran separat "Personalizare AI". Lista variante stânga, detail dreapta. Per contact: research AI + email body. Acţiuni: Aprobă ✓ / Respinge ✗ / Editează / Regenerează. Buton "Aprobă pe toţi".
Limite
- Throttle: 5–600 secunde (hard)
- Max destinatari: depinde de plan
- AI per-contact: limit plan
- Drip: max 5 paşi follow-up
- A/B: doar 2 variante (A şi B)
Mesaje de eroare
"Alege o listă" — mode listă fără selecţie
"Bifează cel puţin un tag" — mode tag fără selecţie
"Trebuie să tastezi STERGE TOT pentru a confirma" — la cancel campanie
"Limita planului depăşită. Upgrade în Setări."
📧 Conturi SMTP/IMAP
Conectarea conturilor de email — critică pentru deliverability.
Listă conturi
Card-uri cu: Email / Provider / SMTP host / Status (✓ conectat / ✗ failed). Butoane per card: Test SMTP / Test IMAP / DNS / Şterge.
Adaugă cont (modal)
| Câmp | Exemplu | Note |
|---|---|---|
| contact@firma-ta.ro | Obligatoriu | |
| SMTP Host | smtp.hostinger.com | Obligatoriu |
| SMTP Port | 465 | Obligatoriu |
| Encryption | SSL / TLS / None | SSL pentru port 465, TLS pentru 587 |
| Username | (de obicei = email) | — |
| Password | ••••••••• | Criptat local cu Fernet |
| IMAP Host | imap.hostinger.com | Pentru reply tracking |
| IMAP Port | 993 | SSL standard |
| Daily limit | 300 | Default ~300 Hostinger, 500 Gmail |
| Warmup mode | checkbox | Recomandat dacă cont nou (<30 zile) |
Test SMTP / Test IMAP
Trimite conexiune test. Rezultate: ✓ OK sau ✗ "Auth failed" / "Connection timeout".
DNS check
Afişează status SPF / DKIM / DMARC. Fiecare ✓ (valid) sau ⚠️ (lipsă). Ghidare: "Adaugă acest SPF record în DNS-ul tău: v=spf1 include:smtp.hostinger.com ~all".
Setup Hostinger Email
- Login hPanel → Emails → Email Accounts
- Copiază SMTP/IMAP settings:
- SMTP host:
smtp.hostinger.com - SMTP port: 465 (SSL)
- IMAP host:
imap.hostinger.com - IMAP port: 993 (SSL)
- SMTP host:
- Folosirea aceloraşi credentials cu webmail-ul
Setup Gmail (Google Workspace)
- Activează 2FA pe contul Google
- Generează parolă aplicaţie: myaccount.google.com/apppasswords
- În MarketHub:
- SMTP host:
smtp.gmail.com - Port: 465 (SSL)
- User: emailul tău
- Password: parola de aplicaţie
- SMTP host:
- Click Test SMTP înainte de salvare
DNS records pentru deliverability
- SPF: TXT
v=spf1 include:{provider} ~all - DKIM: provider îţi dă selector + TXT public key
- DMARC: TXT
v=DMARC1; p=quarantine; rua=mailto:dmarc@tau-domeniu
Limite
- Hostinger: ~300–500 emailuri/zi
- Gmail: ~500/zi
- Warmup ramp: 10 → 20 → 40 → 100/zi în ~4 săptămâni
- Conturi noi (<30 zile): warmup obligatoriu
Mesaje de eroare
"Câmpuri obligatorii lipsă: [host, port, ...]" — completează
"Auth failed" — parolă/user greşit
"Connection timeout" — host nereachable
"DNS check failed: SPF record invalid"
📈 Rapoarte
KPI-uri, funnel, deliverability, heatmaps.
Tipuri de rapoarte
- Campaign reports (default):
- KPI grid: Opens / Clicks / Replies / Bounces / Unsubscribes
- Funnel: Sent → Delivered → Opened → Clicked → Replied (% per pas)
- Time-series chart: opens/clicks cumulate pe durata campaniei
- Top leads: cine a deschis, click-uit, răspuns (tabel sortabil)
- Deliverability:
- Bounce rate per domeniu (gmail.com 2%, yahoo.com 4%)
- Hard vs soft bounces breakdown
- Domenii blacklist-ate auto (rate >15%)
- Opens/Clicks tracking:
- Click map (ce link-uri click-uite cel mai des)
- Opens heatmap (oră opening vs oră trimitere)
- Unique vs repeat opens
- Unsubscribes log: timestamp, email, motiv (opţional). Export CSV.
- Comparison: alegi 2–5 campanii, KPI grid side-by-side
Date range
Ultimele 30 zile (default). Selectabil: 1, 7, 14, 30, 60, 90 zile.
Butoane
- 📥 CSV — export dashboard data
- 📄 Print — generează PDF printabil
- 🖨️ Raport — raport complet în fereastră nouă
Limite
- Lookback: 2 ani
- Comparison: max 5 campanii
- Export: primele 5000 rânduri
🍎 Apple Search Ads — AI autopilot
Conectezi contul Apple Search Ads + AI generează blueprint + optimizează zilnic.
Conexiune
Empty state: "Conectează contul Apple Search Ads" → buton "Sign in with Apple" (OAuth). Dacă ai mai multe MCC, alegi din dropdown.
Dashboard (după conexiune)
KPI grid
Impressions 👁 → Clicks → CTR → Spend 💰 → Conversions 🎯 → Avg CPC
Date range
1 / 7 / 14 / 30 / 60 / 90 zile.
Butoane
- + Adaugă cont — conectare ASA
- 📖 Ghid — walkthrough setup
- ℹ️ Cum funcţionează — explică AI Blueprint + Auto-Pilot
- 🤖 AI Optimizer — rulează manual
- 🎯 Conversions — tracking conversii
- 🩺 Diagnostics — verifică API endpoints
- 🏥 Account Health — opt score + holds check
- 🤖 Automatizări AI — auto-negative loop, daily summary
- 🔓 Deconectează
AI Brief card
Sumar săptămânal: top acţiuni, issues flag-uite. "🔄 Refresh" re-rulează AI (consumă quota). "Vezi tot →" deschide AI Pro Brief complet.
AI Optimizer actions
- AI Blueprint: URL aplicaţie → AI generează 3–4 ad groups + 15 headlines/grup + 4 descrieri + sitelinks/callouts. Tu activezi.
- Daily optimizer (auto): extrage search terms → identifică waste → sugerează "Adaugă negative keyword: X" sau "Pause Y". Logged cu undo.
- Auto-Pilot: acţiuni sigure aplicate auto (negative kw). Riscante necesită aprobare 1-click.
Charts
- Cost & Conversions/day (time-series)
- Search terms breakdown (top performers)
- Competitor insights (dacă disponibil din ASA API)
Limite
- Conturi: 1 active per user (switch din dropdown)
- Update: zilnic (overnight)
- Search term history: ultimele 90 zile
Mesaje de eroare
"Developer Token lipsă" — admin trebuie să configureze ASA API key
"Contul nu e conectat" — OAuth expirat sau revoked
🔍 Google Ads — AI autopilot
Acelaşi pattern ca Apple Ads dar pentru Google.
Conexiune
"Sign in with Google direct" (OAuth). Walkthrough în "📖 Ghid pas cu pas". Admin setup necesar: OAuth Client ID/Secret + Developer Token.
Dashboard
Top: dropdown customer account ID + butoane: + Adaugă cont, 📖 Ghid, ℹ️ Cum funcţionează, 🤖 AI Optimizer, 🎯 Conversions, 🩺 Diagnostics, 🏥 Account Health, 🤖 Automatizări AI, 🔓 Deconectează. Date range 1–90 zile.
AI Brief + KPI
👁 Impressions / 👆 Clicks / 📊 CTR / 💰 Spend / 🎯 Conversions / 💵 Avg CPC. Charts: Cost & Conversions, CTR per campanie, Search term mining.
AI Blueprint workflow
- Introdu URL website/landing page
- 1 propoziţie despre ofertă
- AI generează 3–4 ad groups + 15 headlines/grup + 4 descrieri + sitelinks/callouts/structured snippets (multi-limbă)
- Revizuiezi → activezi campaniile
Daily Optimizer + Automatizări AI
- Auto-Negative Loop — auto-add negative kw pentru low-ROAS
- Daily Summary — email digest KPI + AI insights
- Smart Bidding rec — "Switch to Target CPA" dacă conversion tracking bun
- Time-of-day optimization — adjust bid pe oră
Limite
- Conturi: 1 active per session
- Search terms: ultimele 90 zile
- Update: zilnic
- Google API: 10000 ops/zi, 60 ops/min
Mesaje de eroare
"Google OAuth Client ID + Secret lipsă" — admin Platform Keys
"Developer Token nu e aprobat de Google" — proces aprobare 24–72h
"Contul nu are conversion tracking" — Account Health warning
💬 Modul SMS
Campanii SMS cu validare GSM-7, drip, opt-out automat.
SMS Accounts (admin-only)
- Gateway SMS (RO): Connection ID + Password
- Gateway SMS (internațional): credențiale API + număr telefon
- Webhook STOP replies: auto-blacklist când recipient răspunde "STOP" (legal obligatoriu)
SMS Templates
Limite caractere (CRITICAL)
- GSM-7 (fără diacritice): 160 chars = 1 SMS, 153 chars/segment pentru multi-part
- Unicode (cu ă/â/î/ş/ţ): 70 chars = 1 SMS, 67 chars/segment
- Validare UI: counter real-time arată "153 chars rămase (1 SMS)" sau warn "Cu diacritice: 67 chars (UCS-2)"
Variabile: {{nume}} / {{firma}} / {{oras}} / {{telefon}}
Library: 16 template-uri pre-făcute (exemple piaţă RO).
SMS Campaigns
- Recipient modes: toate cu telefon / listă / tag-uri
- Throttle: 5–60s recomandat (evită blocaje carrier)
- Schedule: imediat sau programat (NU înainte 08:00, NU după 22:00 — compliance legal)
- A/B test: opţional variant B (split 50/50)
- Drip: follow-up dacă fără răspuns (mai rar ca email)
SMS Drip sequences
Max 5 follow-up. Trigger: "Fără răspuns după 3 zile" → SMS2. Auto-stop la reply sau unsubscribe.
SMS Reports
- Status per recipient (sent / delivered / failed / bounced)
- Breakdown: carrier blocks / numere invalide / opt-outs
- Volum total, debounce rate
Limite & constrângeri
- Daily: ~1000 SMS/cont (limit provider + plan)
- Sender name: max 11 alphanumeric (necesită aprobare 1–2 zile)
- Opt-in: OBLIGATORIU în UE (RO inclus)
- Unsubscribe: fiecare SMS trebuie să includă "STOP" sau similar
Mesaje de eroare
"Mesajul depăşeşte limita GSM-7" — diacritice → UCS-2 multi-part
"Selectează o listă"
"SMS Gateway nu e conectat"
💳 Plan & Abonament
Setări → Plan. Stripe gestionează plata; cardul nu e stocat de noi.
Card plan curent
- Tier (Free / Starter / Pro / Business / Enterprise)
- Cost lunar (la plătitori)
- Features incluse (checkmark list)
- Renew date / current period end
Usage breakdown lună curentă
- Emailuri trimise / Limită lunară
- SMS trimise / Limită
- Conversaţii AI / Limită
- Agent calls / Limită
- Agent messages aprobate
Acţiuni
- Upgrade / Downgrade — oricând. Diferenţa se prorată automat în Stripe.
- Pause — până la 3 luni. În pauză nu plăteşti, dar nu poţi trimite.
- Cancel — la sfârşitul perioadei plătite. Datele rămân 30 zile, după se purje.
- Manage in Stripe Portal — change card, download invoices
Tier limits (orientativ)
| Plan | Email/lună | SMS | AI agents | Ads accounts |
|---|---|---|---|---|
| Free | ~100 | 0 | 1 | 1 |
| Starter | ~5K | 500 | 2 | 1 |
| Pro | ~10K | 2K | 5 | 3 |
| Business | ~50K | 10K | 30 | 8 |
| Enterprise | nelimitat | nelimitat | 100 | nelimitat |
Mesaje de eroare
"Limita planului depăşită. Upgrade în Setări."
"Plan suspendat — reia plata"
⚙️ Setări (toate tab-urile)
Profil
- KPI strip: "Membru de X zile" / "Ultim login" / "Sesiuni active" / "Rol"
- Avatar URL sau iniţiale auto
- Nume complet (folosit în greeting + AI signatures)
- Limbă: 🇷🇴 Română / 🇬🇧 English (toggle UI)
- Fus orar: Europe/Bucharest default + 7 alte opţiuni
Securitate
- Schimbă parolă (curent + nou + confirm)
- Email verify status
- 2FA — toggle (coming soon)
- Şterge cont: "Solicitare ştergere permanentă" → 30 zile graţie (anulabil) → purje
Sesiuni active
- Sesiunea curentă: device + locaţie + last active
- Alte sesiuni: listă completă cu fingerprints
- Revoke session per rând (X)
- Logout all others — un singur buton
Activitate cont (audit log)
Timeline evenimente: Login / Campaign started / Template created / Password changed. Per intrare: timestamp / acţiune / IP / User-Agent. Filtru pe dată. Max 100/pagină.
Notificări
- Browser notifications toggle
- Tabel preferinţe pe event:
- Coloane: In-app / Email / Browser (checkbox-uri)
- Per event-type: Campaign started, Reply received, AI draft pending, etc.
- Auto-saved la modificare
Companie (per-user, GDPR + CAN-SPAM)
- Nume companie — apare în footer mailuri
- Website companie — link clickabil
- Adresa sediu — GDPR obligatoriu
- Text dezabonare — free-form + link unsubscribe
- Semnătura default — folosită de AI dacă nu specifici alta
Calendar Google
- Connect Google Calendar (OAuth)
- Default meeting duration (15 / 30 / 60 min)
- Calendar selection — alegi care din calendarele tale
Plan & facturare
Vezi Plan & Abonament.
Export GDPR
- Buton mare: "📥 Descarcă export ZIP"
- Conţine CSV-uri: businesses.csv / campaigns.csv / campaign_recipients.csv / email_templates.csv / products.csv / audit_log.csv / profile.csv + metadata.json
- Parolele/token-urile sunt [REDACTED]
- Audit-logged automat (fiecare export apare în Activitate cont)
Admin-only tabs (doar is_admin=1)
- Trimitere — provider rate limits, throttle defaults
- Sistem — DB health, queue, error logs
📈 Deliverability — cum nu ajungi în Spam
- SPF + DKIM + DMARC configurate (vezi Conturi SMTP)
- Warm-up automat: cont nou începe cu 10 mailuri/zi, creşte gradual la 100 (~30 zile)
- List hygiene: hard bounces auto-suprimaţi. Cei care nu deschid 10+ mailuri sunt excluşi.
- Daily limit per cont: 50–100 mailuri/zi/cont la început
- Folder dedicat: domeniu/subdomeniu separat (
outreach.firma.ro) ca să nu strici reputaţia domeniului principal - Conţinut: evită CAPS LOCK, multe linkuri, "FREE!!!", "URGENT". Personalizare reală reduce spam score.
În Rapoarte → Deliverability vezi bounce rate per domain. Sub 2% e OK, peste 5% — pauză + investigaţie.
🔒 GDPR & Dezabonare
Compliance built-in
- List-Unsubscribe header (RFC 8058) — Gmail/Outlook arată buton "Unsubscribe" nativ
- Footer cu link dezabonare în fiecare email automat
- Pagină unsubscribe one-click (GET sau POST), fără confirmare
- Per-tenant scope: dezabonarea de la user A nu opreşte campaniile lui B
- Re-subscribe disponibil — userul poate reveni
- Consent log immutable pentru audit
Drepturile tale (ca utilizator MarketHub)
- Export GDPR (Art. 20): Setări → Export GDPR → ZIP cu CSV-uri
- Ştergere cont (Art. 17): Setări → Securitate → 30 zile graţie, anulabil
- Acces audit log: Setări → Activitate cont
🛠 Troubleshooting
"Test SMTP" eşuează
- Pentru Gmail — trebuie parolă aplicaţie, nu cea de cont (myaccount.google.com/apppasswords)
- Port 465 vs 587 — încearcă alt port
- Firewall provider — unele hostingerii blochează 25/465 outbound
Campania s-a oprit fără eroare
- Probabil quota plan atinsă — Setări → Plan
- Sau toate conturile SMTP la limita zilnică — auto-resume la 00:00 UTC
Emailurile ajung în Spam
- Verifică SPF/DKIM/DMARC pe domeniu (Conturi → DNS)
- Foloseşte domeniu dedicat pentru cold outreach
- Reduce volum la 30–50 mailuri/cont primele 14 zile
- Personalizează conţinut — template-uri identice = spam signal
Nu primesc răspunsuri în UI deşi am răspunsuri în inbox
- IMAP configurat & testat OK?
- Conturi → Test IMAP → rulează manual
- Polling necesită Message-ID match — dacă lead răspunde fără "Reply" (mail nou), matching fuzzy poate fi sărit
"Failed: connection timeout" la SMTP send
- Provider-ul a blocat IP-ul (rate limit) — aşteaptă 1h
- SMTP host greşit (verifică în setările contului email)
SMS nu ajung
- Verifică creditul SMS (admin)
- Sender name aprobat?
- Diacriticele dublează costul (UCS-2 = 70 chars/SMS)
Apple/Google Ads — "Developer Token lipsă"
Adminul trebuie să configureze Developer Token + OAuth Client ID/Secret în Admin → Platform Keys. Pentru Google, token-ul necesită aprobare 24–72h.
❓ Întrebări frecvente
📞 Contact & suport
- 📧 Email: office@caiostudio.eu
- 🌐 Website: markethub.dev
- 🩺 Status platformă: /status
Timp mediu de răspuns: 4–12h în zilele lucrătoare.