stage-1: project bootstrap
Structure, config loader, personality/tools/memory from clawd, venv, 22 tests passing. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
68
tools/lead-gen/README.md
Normal file
68
tools/lead-gen/README.md
Normal file
@@ -0,0 +1,68 @@
|
||||
# Lead Generation Minimal - ROA
|
||||
|
||||
Sistem simplu pentru găsirea companiilor care au nevoie de soluții ERP/contabilitate.
|
||||
|
||||
## Cum funcționează
|
||||
|
||||
1. **find_leads.py** - Caută companii care angajează contabili/economiști
|
||||
- Folosește Brave Search API
|
||||
- Extrage nume de companii din rezultatele de pe eJobs, BestJobs, etc.
|
||||
- Salvează în CSV pentru review manual
|
||||
|
||||
2. **templates/** - Template-uri email pentru outreach
|
||||
- `template_general.md` - Template generic pentru cold email
|
||||
|
||||
## Usage
|
||||
|
||||
```bash
|
||||
# Activează venv
|
||||
cd ~/clawd && source venv/bin/activate
|
||||
|
||||
# Rulează căutarea
|
||||
python tools/lead-gen/find_leads.py --limit 10
|
||||
|
||||
# Output: tools/lead-gen/output/leads.csv
|
||||
```
|
||||
|
||||
## Workflow manual
|
||||
|
||||
1. **Rulează scriptul** (5 min/săptămână)
|
||||
```bash
|
||||
python tools/lead-gen/find_leads.py
|
||||
```
|
||||
|
||||
2. **Review CSV** (5 min)
|
||||
- Deschide `output/leads.csv`
|
||||
- Marchează companiile interesante
|
||||
- Completează CUI, email, website (căutare manuală Google)
|
||||
|
||||
3. **Trimite email** (per companie)
|
||||
- Folosește template din `templates/`
|
||||
- Personalizează cu numele companiei și jobul
|
||||
|
||||
## Status tracking
|
||||
|
||||
În CSV, câmpul `status`:
|
||||
- `new` - proaspăt găsit
|
||||
- `researched` - am completat datele
|
||||
- `contacted` - am trimis email
|
||||
- `replied` - au răspuns
|
||||
- `converted` - client nou! 🎉
|
||||
- `rejected` - nu sunt interesați
|
||||
|
||||
## TODO (îmbunătățiri viitoare)
|
||||
|
||||
- [ ] Auto-enrich cu CUI de pe ANAF
|
||||
- [ ] Validare email (MX lookup)
|
||||
- [ ] Template-uri per industrie
|
||||
- [ ] Integrare cu Gmail pentru trimitere
|
||||
- [ ] Dashboard cu statistici
|
||||
|
||||
## De ce funcționează
|
||||
|
||||
Companiile care **angajează contabili** au nevoie de:
|
||||
- Software de contabilitate
|
||||
- Poate nu sunt mulțumiți de soluția curentă
|
||||
- Sau cresc și au nevoie de ceva mai robust
|
||||
|
||||
Targetarea lor e mult mai eficientă decât cold email random.
|
||||
26
tools/lead-gen/clienti-romfast.csv
Normal file
26
tools/lead-gen/clienti-romfast.csv
Normal file
@@ -0,0 +1,26 @@
|
||||
NUME,RULAJ_ANUAL,COD_FISCAL,RAMURA,NOTE
|
||||
XENOTI S.R.L.,83099.1,RO6743250,HOTEL,"VALENTINA ESTE EXPERT CONTABIL SI DIRECTOR LA XENOTI. SUNTEM CUNOSTINTE VECHI, LA FEL CA SI CU ALEX STEFAN. IN VIRTUTEA RELATIEI VECHI DE PE ALTE FIRME, A VRUT PROGRAMUL ROA SI LA XENOTI. VALENTINA ARE SI ALTE FIRME. FACTUREZ TOTUL PE XENOTI, INCLUSIV PROIECTE DE MIGRARE ALE UNOR FIRME ALE VALENTINEI PE ROA SI DE ACEEA ARE CEA MAI MARE VALOARE. INTRE TIMP AM 3 FACTURI NEACHITATE DE LA XENOTI. NU A AVUT VANZARI BUNE IN ULTIMUL SEZON ESTIVAL"
|
||||
ROMPETROL ENERGY SA,57928.23,RO29923675,ENERGIE TERMICA,"FOSTA UTMIDIA NAVODARI, CLIENT VECHI, CLIENT IDEAL, FACTURI PUTINE, VALOARE MARE, CLIENTI PUTINI DAR MARI, LE-AM FACUT MIGRARE ROA DE LA UTMIDIA NAVODARI. AU SPUS CA TREC LA PROGRAMELE INTERNATIONALE FOLOSITE DE ROMPETROL SA, DAR INCA NU AU TRECUT DE CATIVA ANI"
|
||||
ADMINISTRATIA CANALELOR NAVIGABILE,39907.84,RO11087755,COMPANIE NATIONALA,"ACUM 15 ANI AU AVUT PROGRAME CONTABILE VECHI SI DE FACTURARE SI AU AVUT NEVOIE DE ALTE PROGRAME. CLIENTI VECHI, STABILI. ACUM NECESITA MENTENANTA PUTINA. A FOST MAI GREU SA LE CRESC PRETURILE. SUNT RETICENTI. CLIENT IDEAL"
|
||||
VENDING MASTER SRL,39270,RO33137200,"DISTRIBUTIE CAFEA, AUTOMATE CAFEA","AVIS DATABASE ACCOUNTING ESTE CONTABILUL LUI, ALEX STEFAN, EXPERTUL CONTABIL DE LA AVIS DATABASE ESTE UN FOST COLEG SI PRIN EL AM LUAT FIRMA VENDING CLIENT, DE CAND ERA MAI MICA CA DIMENSIUNE. I-AM CRESCUT TARIFUL IN DECURS DE MAI MULTI ANI PENTRU CA I-A CRESCUT ACTIVITATEA SI SUPORTUL TEHNIC"
|
||||
VADECO SRL,34012.67,RO14707452,SERVICII TRANSPORT,"CLIENT IDEAL, SERVICII, ARE CLIENTI FOARTE PUTINI, DAR DE VALOARE MARE, 4 PERSOANE LA FACTURARE, AGENTI, CONTABIL SI DIRECTOR ECONOMIC CU CARE LUCREZ"
|
||||
EUROPEAN METAL SERVICES SA,32584.67,RO12629765,SERVICII FIER VECHI,"CLIENT IDEAL, SERVICII, ARE CLIENTI FOARTE PUTINI, DAR DE VALOARE MARE, 1 CONTABIL SI DIRECTOR ECONOMIC CU CARE LUCREZ. ARE SI ALTI ANGAJATI BINEINTELES"
|
||||
SOUTH EAST TRUCK SERVICES S.R.L.,31136.42,RO43525632,SERVICE AUTO,"CLIENT IDEAL. CLIENTI PUTINI (POLARIS M HOLDING) DAR MARI. UN RECEPTIONER/GESTIONAR, MECANICI SI PATRONUL CARE ESTE INGINER AUTO"
|
||||
MIDIA GREEN ENERGY SA,19269.2,RO14325363,ENERGIE FOTOVOLTAICA,CLIENT FOARTE VECHI. S-A DESPRINS DIN UTMIDIA NAVODARI CARE A FOST CONVERTITA IN ROMPETROL ENERGY SA. CLIENT IDEAL. LUCREZ DOAR CU DIRECTORUL ECONOMIC CAND ARE NEVOIE DE ASISTENTA LA DECLARATII SAU OPERATII IMOBILIZARI
|
||||
INTREPRINDEREA METALURGICA PENTRU AERONAUTICA META,18102.62,RO16036329,PRODUCTIE,"CLIENT FOARTE VECHI. IDEAL. CA SI EDUARD PUBLISHING A AVUT NEVOI CONTABILE SPORITE PENTRU URMARIREA PRODUCTIEI, COSTURILOR SI ANALIZA CHELTUIELILOR, BUGETELOR"
|
||||
ARGENTA SRL,14482.07,RO3959705,CONSTRUCTII,"CLIENT IDEAL. CLIENTI PUTINI, VALOARE MARE. ARE UN PROGRAM SPECIAL DE URMARIRE PROIECTE/DEVIZE/OFERTE COMPARATIE COSTURI FATA DE OFERTA, PENTRU ANALIZA RANDAMENT LUCRARI CONSTRUCTIE"
|
||||
ETALON DISTRIBUTION S R L,14380,RO42158724,DISTRIBUTIE PRESA,CLIENT VECHI PROVENIT DIN ALT CLIENT - PRIN TRANSFER ACTIVE. VALENTINA ESTE DIRECTOR ECONOMIC SI LA ETALON. AM CONTINUAT ACTIVITATEA CU ETALON PRIN VALENTINA
|
||||
A.B.C. VAL,13487.42,RO3853010,CONSTRUCTII,"A INTRAT IN FALIMENT. NU MAI ESTE CLIENT. CA SI ARGENTA SA, AVEA NEVOI DE URMARIRE PROIECTE, LUCRARI, DEVIZ, OFERTA - AM PROGRAMUL RESPECTIV"
|
||||
EDUARD PUBLISHING,12084.4,RO 25629015,"EDITURA CARTE, PRODUCTIE CARTE","ACUM O DUCE MAI GREU. LA INCEPUTUL RELATIEI, ACUM 15 ANI AVEA ACTIVITATE MAI MARE SI AVEA NEVOI DE URMARIRE PRODUCTIE DE CARTE"
|
||||
AUTOMOTIVE SERVICE SRL,10165,RO18448482,SERVICE AUTO,"CLIENT IDEAL. UN PATRON, UN INGINER, PLUS MECANICI. PLATESTE PROMPT. AM PUTINA ACTIVITATE CU EL CA SUPORT TEHNIC. DE VAZUT CE CIFRA DE AFACERI ARE"
|
||||
CLEVER MOTORS SRL,10165,RO44234984,SERVICE AUTO,"NU PLATESTE LA TIMP, RESTANTE 3-4 LUNI. ESTE UN SERVICE AUTO CARE CRED CA NU ISI PRIMESTE BANII LA TIMP DE LA ASIGURATORI, SAU ARE COMENZI PUTINE. DE VAZUT CE CIFRA DE AFACERI ARE"
|
||||
ALMMA CONTRACTORS GROUP S.R.L.,9223.46,RO37165512,CONSTRUCTII,A DAT FALIMENT. NU MAI ESTE CLIENT. ERA IN GRUPUL A.B.C VAL
|
||||
ROMCONSTRUCT GLASS S.R.L.,8615,RO24498302,PRODUCTIE,"PRODUCTIE GEAMURI, MONTAJ. CLIENT IDEAL DAR IN ULTIMII ANI SI-A REDUS ACTIVITATEA. AVEA NEVOIE DE PROGRAM DE PRODUCTIE, CONSUM, FACTURARE. AM FACUT PROGRAMUL DAR S-A DOVEDIT FOARTE COMPLEX FATA DE CALCULELE LOR DIN EXCEL. FOLOSESC DOAR FACTURAREA DE SERVICII, IN LOC DE PRODUCTIE, CONSUM SI FACTURARE PRODUCTIE. PROBLEMA CEA MAI MARE ERA SI ESTE GESTIUNEA STOCURILOR, DEVIZELE CARE SE FAC IN EXCEL, DAR NU SE VAD IN SOFT. LE LUA PREA MULT TIMP SA FOLOSEASCA PROGRAMELE CONSTRUITE SPECIAL PENTRU PRODUCTIE, DESCARCARE PRODUCTIE SI NU LE-AU FOLOSIT."
|
||||
SIGMA L.C. SERVICE,7274.66,RO21773785,SERVICE AUTO,ARE RESTANTE 3-6 LUNI. E OK CA NIVEL DE CERERI
|
||||
WERT SRL,6000,RO7435479,PRODUCTIE,ESTE CLIENTUL CARAPETRU CONTAB SI FOLOSESTE PROGRAMELE ROA PENTRU CONTABILITATE PRIMARA. NU EMITE FACTURI DIN ROA.
|
||||
DIRECTIA DE PAZA A JUDETULUI CONSTANTA,4314,5639774,SERVICII,A RAMAS DOAR CU PROGRAMUL DE GESTIUNE OBIECTE DE INVENTAR. NU MAI ARE ACTIVITATE
|
||||
DRAFT CONSTRUCT SRL,3600,RO16322932,CONSTRUCTII,A INTRAT IN INSOLVENTA. CLIENT CU PROBLEME FINANCIARE. ESTE CLIENTUL CARAPETRU CONTAB SI FOLOSESTE PROGRAMELE ROA PENTRU CONTABILITATE PRIMARA. NU EMITE FACTURI DIN ROA.
|
||||
DRAFT DINAMIC CONSTRUCT S.R.L.,3600,RO45269115,CONSTRUCTII,A INTRAT IN INSOLVENTA. CLIENT CU PROBLEME FINANCIARE. ESTE CLIENTUL CARAPETRU CONTAB SI FOLOSESTE PROGRAMELE ROA PENTRU CONTABILITATE PRIMARA. NU EMITE FACTURI DIN ROA.
|
||||
BIG TRADE S.A.,2958.38,RO7436261,SERVICII,"NU MAI ESTE CLIENTUL MEU. PLATEA PENTRU UN GRUP DE FIRME MICI, CARE AU TRECUT PE SAGA PENTRU CA NU AVEAU ACTIVITATE"
|
||||
AVIS DATABASE ACCOUNTING S.R.L.,1776.82,40023585,CONTABILITATE,ALEX STEFAN DE LA AVIS DATABASE ACCOUNTING A FOST COLEG CU MINE. SI-A FACUT FIRMA DE CONTABILITATE. VENDING MASTER ESTE CLIENTUL LUI. PRIN ALEX STEFAN L-AM OBTINUT ACUM MULTI ANI.
|
||||
CARAPETRU CONTAB SRL,300,35295575,CONTABILITATE,"SILVIA DE LA CARAPETRU CONTAB ESTE CONTABILA MEA SI FOLOSESTE PROGRAMELE ROA PENTRU FIRMELE EI. WERT, DRAFT DINAMIC, DRAFT CONSTRUCT, SUNT CLIENTII EI"
|
||||
|
229
tools/lead-gen/find_leads.py
Normal file
229
tools/lead-gen/find_leads.py
Normal file
@@ -0,0 +1,229 @@
|
||||
#!/usr/bin/env python3
|
||||
"""
|
||||
Lead Generator Minimal - Găsește companii care au nevoie de soluții ERP/contabilitate.
|
||||
|
||||
Folosește Brave Search API pentru a găsi companii care angajează contabili/economiști.
|
||||
|
||||
Output: leads.csv cu companii pentru review manual
|
||||
|
||||
Usage:
|
||||
python find_leads.py [--limit N]
|
||||
|
||||
Necesită: BRAVE_API_KEY în environment sau ~/.clawdbot/clawdbot.json
|
||||
"""
|
||||
|
||||
import os
|
||||
import re
|
||||
import csv
|
||||
import json
|
||||
import argparse
|
||||
from datetime import datetime
|
||||
from pathlib import Path
|
||||
|
||||
import requests
|
||||
|
||||
OUTPUT_DIR = Path(__file__).parent / "output"
|
||||
OUTPUT_DIR.mkdir(exist_ok=True)
|
||||
|
||||
def get_brave_api_key():
|
||||
"""Get Brave API key from clawdbot config."""
|
||||
config_path = Path.home() / ".clawdbot" / "clawdbot.json"
|
||||
if config_path.exists():
|
||||
with open(config_path) as f:
|
||||
config = json.load(f)
|
||||
# Try tools.web.search.apiKey (clawdbot format)
|
||||
api_key = config.get("tools", {}).get("web", {}).get("search", {}).get("apiKey", "")
|
||||
if api_key:
|
||||
return api_key
|
||||
# Fallback to brave.apiKey
|
||||
return config.get("brave", {}).get("apiKey", "")
|
||||
return os.getenv("BRAVE_API_KEY", "")
|
||||
|
||||
def search_brave(query, count=10):
|
||||
"""Search using Brave Search API."""
|
||||
api_key = get_brave_api_key()
|
||||
if not api_key:
|
||||
print("[!] Nu am găsit Brave API key")
|
||||
return []
|
||||
|
||||
url = "https://api.search.brave.com/res/v1/web/search"
|
||||
headers = {
|
||||
"X-Subscription-Token": api_key,
|
||||
"Accept": "application/json"
|
||||
}
|
||||
params = {
|
||||
"q": query,
|
||||
"count": count
|
||||
}
|
||||
|
||||
try:
|
||||
resp = requests.get(url, headers=headers, params=params, timeout=15)
|
||||
data = resp.json()
|
||||
return data.get("web", {}).get("results", [])
|
||||
except Exception as e:
|
||||
print(f"[!] Brave search error: {e}")
|
||||
return []
|
||||
|
||||
def extract_companies_from_results(results):
|
||||
"""Extract company names from search results."""
|
||||
companies = []
|
||||
|
||||
# Patterns for Romanian companies
|
||||
patterns = [
|
||||
r'([A-Z][A-Z\s\-\.&]+(?:S\.R\.L\.|SRL|S\.A\.|SA|S\.C\.))', # COMPANY S.R.L.
|
||||
r'(SC\s+[A-Z][A-Z\s\-\.&]+(?:S\.R\.L\.|SRL|S\.A\.|SA))', # SC COMPANY SRL
|
||||
r'([A-Z][a-zA-Z\s\-\.&]{2,30}(?:S\.R\.L\.|SRL|S\.A\.|SA))', # Mixed case
|
||||
]
|
||||
|
||||
for result in results:
|
||||
text = f"{result.get('title', '')} {result.get('description', '')}"
|
||||
|
||||
for pattern in patterns:
|
||||
matches = re.findall(pattern, text)
|
||||
for match in matches:
|
||||
company = match.strip()
|
||||
# Clean up
|
||||
company = re.sub(r'\s+', ' ', company)
|
||||
if len(company) > 5 and len(company) < 80:
|
||||
companies.append({
|
||||
"company": company,
|
||||
"source_url": result.get("url", ""),
|
||||
"context": text[:200]
|
||||
})
|
||||
|
||||
return companies
|
||||
|
||||
def clean_company_name(name):
|
||||
"""Clean company name from prefix garbage."""
|
||||
# Remove common prefixes that get caught by regex
|
||||
prefixes_to_remove = [
|
||||
r'^(?:Senior|Junior|Contabil|Economist|Director\s+Economic|Expert|Specialist)\s+',
|
||||
r'^(?:RON|EUR|USD)\s+',
|
||||
r'^(?:Bucuresti|Cluj|Iasi|Brasov|Constanta)\s+',
|
||||
r'^\d+[\s\-]+',
|
||||
]
|
||||
|
||||
result = name.strip()
|
||||
for pattern in prefixes_to_remove:
|
||||
result = re.sub(pattern, '', result, flags=re.IGNORECASE)
|
||||
|
||||
# Clean trailing garbage
|
||||
result = re.sub(r'\s*-\s*$', '', result)
|
||||
result = re.sub(r'\s+', ' ', result).strip()
|
||||
|
||||
return result
|
||||
|
||||
def deduplicate(leads):
|
||||
"""Elimină duplicate după numele companiei."""
|
||||
seen = set()
|
||||
unique = []
|
||||
for lead in leads:
|
||||
# Clean company name
|
||||
lead["company"] = clean_company_name(lead["company"])
|
||||
|
||||
# Normalize for comparison
|
||||
company_norm = re.sub(r'[^a-z0-9]', '', lead["company"].lower())
|
||||
|
||||
# Skip too short or invalid
|
||||
if len(company_norm) < 5:
|
||||
continue
|
||||
|
||||
# Skip obvious non-companies
|
||||
skip_patterns = [
|
||||
r'^emea\s',
|
||||
r'^staff\s',
|
||||
r'accountant',
|
||||
r'^bestjobs',
|
||||
r'^ejobs',
|
||||
r'^hipo',
|
||||
]
|
||||
if any(re.search(p, lead["company"], re.IGNORECASE) for p in skip_patterns):
|
||||
continue
|
||||
|
||||
if company_norm not in seen:
|
||||
seen.add(company_norm)
|
||||
unique.append(lead)
|
||||
return unique
|
||||
|
||||
def enrich_leads(leads):
|
||||
"""Adaugă câmpuri pentru tracking."""
|
||||
for lead in leads:
|
||||
lead["found_date"] = datetime.now().isoformat()[:10]
|
||||
lead["cui"] = ""
|
||||
lead["email"] = ""
|
||||
lead["website"] = ""
|
||||
lead["phone"] = ""
|
||||
lead["status"] = "new" # new, researched, contacted, replied, converted, rejected
|
||||
lead["notes"] = ""
|
||||
lead["industry"] = ""
|
||||
return leads
|
||||
|
||||
def save_leads(leads, filename="leads.csv"):
|
||||
"""Salvează leads în CSV pentru review."""
|
||||
output_file = OUTPUT_DIR / filename
|
||||
|
||||
fieldnames = ["company", "industry", "source_url", "found_date",
|
||||
"cui", "email", "website", "phone", "status", "notes"]
|
||||
|
||||
# Remove context from output (used only for extraction)
|
||||
for lead in leads:
|
||||
lead.pop("context", None)
|
||||
|
||||
with open(output_file, "w", newline="", encoding="utf-8") as f:
|
||||
writer = csv.DictWriter(f, fieldnames=fieldnames, extrasaction='ignore')
|
||||
writer.writeheader()
|
||||
writer.writerows(leads)
|
||||
|
||||
return output_file
|
||||
|
||||
def main():
|
||||
parser = argparse.ArgumentParser(description="Lead Generator Minimal")
|
||||
parser.add_argument("--limit", type=int, default=10, help="Results per search query")
|
||||
args = parser.parse_args()
|
||||
|
||||
print("🔍 Căutare leads via Brave Search...")
|
||||
|
||||
# Search queries - companii care angajează contabili
|
||||
queries = [
|
||||
'site:ejobs.ro contabil angajare 2026',
|
||||
'site:ejobs.ro economist angajare',
|
||||
'site:bestjobs.eu contabil Romania',
|
||||
'site:hipo.ro contabil angajare',
|
||||
'"angajam contabil" Romania firma',
|
||||
'"cautam economist" Romania SRL',
|
||||
]
|
||||
|
||||
all_leads = []
|
||||
|
||||
for query in queries:
|
||||
print(f" → {query[:50]}...")
|
||||
results = search_brave(query, count=args.limit)
|
||||
companies = extract_companies_from_results(results)
|
||||
all_leads.extend(companies)
|
||||
print(f" Găsite: {len(companies)} companii")
|
||||
|
||||
# Deduplică
|
||||
unique_leads = deduplicate(all_leads)
|
||||
print(f"\n📊 Total: {len(all_leads)} → {len(unique_leads)} unice")
|
||||
|
||||
# Îmbogățește
|
||||
enriched = enrich_leads(unique_leads)
|
||||
|
||||
# Salvează
|
||||
output_file = save_leads(enriched)
|
||||
print(f"\n✅ Salvat: {output_file}")
|
||||
|
||||
# Afișează lista
|
||||
print(f"\n📋 {len(enriched)} companii găsite:")
|
||||
for i, lead in enumerate(enriched, 1):
|
||||
print(f" {i}. {lead['company']}")
|
||||
|
||||
print(f"\n💡 Următorii pași:")
|
||||
print(f" 1. Deschide {output_file}")
|
||||
print(f" 2. Completează CUI, email, website pentru cele interesante")
|
||||
print(f" 3. Marchează status: researched → contacted → replied")
|
||||
|
||||
return enriched
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
20
tools/lead-gen/output/leads.csv
Normal file
20
tools/lead-gen/output/leads.csv
Normal file
@@ -0,0 +1,20 @@
|
||||
company,industry,source_url,found_date,cui,email,website,phone,status,notes
|
||||
TAXASIST ADVICES S.R.L.,,https://www.ejobs.ro/en/jobs/contabil,2026-02-04,,,,,new,
|
||||
FINANCE CONSULTING S.R.L.,,https://www.ejobs.ro/en/jobs/contabil-junior,2026-02-04,,,,,new,
|
||||
CABINET EXPERT CONTABIL DOCHIAN SI ASOCIATII SRL,,https://www.ejobs.ro/en/jobs/contabil-junior,2026-02-04,,,,,new,
|
||||
TPA Transilvania Contax S.R.L.,,https://www.ejobs.ro/en/jobs/contabil-junior,2026-02-04,,,,,new,
|
||||
DOCHIAN SI ASOCIATII SRL,,https://www.ejobs.ro/en/jobs/contabil-junior,2026-02-04,,,,,new,
|
||||
SC COMGABY MOLN SRL,,https://www.ejobs.ro/en/jobs/cluj-napoca/contabil-junior,2026-02-04,,,,,new,
|
||||
MOL ROMANIA Petroleum Products SRL,,https://www.ejobs.ro/en/jobs/cluj-napoca/contabil-junior,2026-02-04,,,,,new,
|
||||
TRAIN TO PERFORM SRL,,https://www.ejobs.ro/en/jobs/iasi/contabil,2026-02-04,,,,,new,
|
||||
SC PANIFCOM SRL,,https://www.ejobs.ro/en/jobs/iasi/contabil,2026-02-04,,,,,new,
|
||||
SWISS MANAGEMENT COMPANY SRL,,https://www.ejobs.ro/en/jobs/brasov/contabil,2026-02-04,,,,,new,
|
||||
SC CROCO SRL,,https://www.ejobs.ro/en/jobs/brasov/contabil,2026-02-04,,,,,new,
|
||||
OV UNITY PLACE S.R.L.,,https://www.ejobs.ro/en/jobs/brasov/contabil,2026-02-04,,,,,new,
|
||||
EREN CONS SRL,,https://www.ejobs.ro/en/jobs/brasov/contabil,2026-02-04,,,,,new,
|
||||
ADECCO RESURSE UMANE SRL,,https://www.ejobs.ro/en/jobs/financiar-contabilitate/no-experience,2026-02-04,,,,,new,
|
||||
Global Services Bucharest SRL,,https://www.ejobs.ro/en/jobs/financiar-contabilitate/no-experience,2026-02-04,,,,,new,
|
||||
TRAVEL BRANDS S.A.,,https://www.ejobs.ro/en/jobs/bucuresti/contabil,2026-02-04,,,,,new,
|
||||
B BUSINESS GOLD S.R.L.,,https://www.ejobs.ro/en/jobs/financiar-contabilitate,2026-02-04,,,,,new,
|
||||
Contab SRL,,https://www.ejobs.ro/en/jobs/financiar-contabilitate,2026-02-04,,,,,new,
|
||||
MASPEX ROMANIA SRL,,https://www.bestjobs.eu/en/jobs/contabil+fara+experienta,2026-02-04,,,,,new,
|
||||
|
30
tools/lead-gen/templates/template_general.md
Normal file
30
tools/lead-gen/templates/template_general.md
Normal file
@@ -0,0 +1,30 @@
|
||||
# Template Email - General
|
||||
|
||||
**Subiect:** Soluție software contabilitate - {company}
|
||||
|
||||
---
|
||||
|
||||
Bună ziua,
|
||||
|
||||
Am văzut că {company} caută {job_title}.
|
||||
|
||||
De peste 25 de ani dezvoltăm **ROA** - un sistem ERP complet pentru contabilitate și gestiune, folosit de companii din România care au nevoie de:
|
||||
|
||||
- ✅ Contabilitate completă (generală + analitică)
|
||||
- ✅ Gestiune stocuri și facturare
|
||||
- ✅ Rapoarte ANAF automate (D300, D394, D390, e-Factura)
|
||||
- ✅ Interfață web pentru acces de oriunde
|
||||
|
||||
**De ce ROA:**
|
||||
- Soluție românească, adaptată legislației locale
|
||||
- Bază de date Oracle - performanță și securitate
|
||||
- Suport tehnic direct de la dezvoltator
|
||||
- Prețuri competitive vs. soluțiile multinaționale
|
||||
|
||||
Dacă vă interesează o demonstrație gratuită de 30 minute, răspundeți la acest email sau sunați la {phone}.
|
||||
|
||||
Cu respect,
|
||||
{sender_name}
|
||||
{sender_company}
|
||||
{sender_phone}
|
||||
{sender_email}
|
||||
Reference in New Issue
Block a user