# PRD: Roa2Web Telegram Bonuri ## 1. Introducere Completează fluxul bonuri fiscale în roa2web: handler Telegram pentru PDF/JPG (document + photo), OCR via serviciul existent, preview cu confirm/cancel, salvare în Oracle ACT_TEMP via PACK_CONTAFIN (logica din scripts/whatsapp_import/process_v2. **Data:** 2026-05-05 **Status:** Draft **Mode:** FEATURE ## 2. Context Tehnic **Proiect existent detectat:** - Stack: nodejs - Config: package.json - Scripts: dev, build, preview, serve, lint, format, test:e2e, test:e2e:headed, test:e2e:debug, test:e2e:report, test:e2e:ui ## 3. Obiective ### Obiectiv Principal Completează fluxul bonuri fiscale în roa2web: handler Telegram pentru PDF/JPG (document + photo), OCR via serviciul existent, preview cu confirm/cancel, salvare în Oracle ACT_TEMP via PACK_CONTAFIN (logica din scripts/whatsapp_import/process_v2 ### Obiective Secundare - Completează fluxul bonuri fiscale în roa2web: handler Telegram pentru PDF/JPG (document + photo), OCR via serviciul existent, preview cu confirm/cancel, salvare în Oracle ACT_TEMP via PACK_CONTAFIN (logica din scripts/whatsapp_import/process_v2 ### Metrici de Succes - Toate funcționalitățile implementate conform spec - Tests passing (coverage > 80%) - Code quality: lint + typecheck pass ## 4. User Stories ### US-001: Completează fluxul bonuri fiscale în roa2web: handler Telegram pentru PDF/JPG (document + photo), OCR via serviciul existent, preview cu confirm/cancel, salvare în Oracle ACT_TEMP via PACK_CONTAFIN (logica din scripts/whatsapp_import/process_v2 **Ca** utilizator **Vreau** completează fluxul bonuri fiscale în roa2web: handler telegram pentru pdf/jpg (document + photo), ocr via serviciul existent, preview cu confirm/cancel, salvare în oracle act_temp via pack_contafin (logica din scripts/whatsapp_import/process_v2 **Pentru că** pot folosi aplicația eficient **Acceptance Criteria:** - [ ] Funcționalitatea implementată conform descrierii - [ ] Input validation în loc - [ ] Error handling pentru cazuri edge - [ ] Tests cu jest (coverage > 80%) - [ ] Code quality: lint + typecheck pass **Priority:** 10 ### US-002: Tests și Documentație **Ca** developer **Vreau** teste comprehensive și documentație **Pentru că** asigur calitatea codului **Acceptance Criteria:** - [ ] Unit tests pentru toate funcțiile (coverage > 80%) - [ ] Integration tests pentru flow-uri principale - [ ] README cu instrucțiuni de utilizare - [ ] Docstrings pentru funcții publice - [ ] jest rulează fără erori **Priority:** 20 ## 5. Cerințe Funcționale 1. [REQ-001] Completează fluxul bonuri fiscale în roa2web: handler Telegram pentru PDF/JPG (document + photo), OCR via serviciul existent, preview cu confirm/cancel, salvare în Oracle ACT_TEMP via PACK_CONTAFIN (logica din scripts/whatsapp_import/process_v2.py). Credențiale write user (MARIUSM_AUTO) din env. Branch: feature/telegram-bonuri-fiscale în roa2web. ## 6. Non-Goals (Ce NU facem) - Interfață grafică (GUI) - doar CLI/API - Suport multiple limbaje - doar Node.js / TypeScript - Deployment infrastructure - doar cod functional ## 7. Considerații Tehnice ### Stack/Tehnologii - Limbaj: Node.js / TypeScript - Testing: jest - Linting: pylint / eslint (depinde de stack) - Type checking: mypy / typescript ### Patterns de Urmat - Clean code principles - SOLID principles unde aplicabil - Error handling consistent - Input validation strict ### Riscuri Tehnice - Edge cases la input validation - Performance pentru volume mari de date (dacă aplicabil) ## 8. Considerații Security - Input validation pentru toate datele externe - Error messages fără info sensibilă - Principle of least privilege ## 9. Open Questions - [ ] Performance requirements specifice? - [ ] Limite pe input sizes? - [ ] Specific error handling patterns preferați? --- **Generated by:** Echo (Ralph PRD Generator) **Date:** 2026-05-05 23:00