Summary Source code files and all other files WILL BE provided to the hired freelancer — freelancer must work within existing codebase. GOAL: Deliver a fully functional, production-ready ZIMRA fiscalization Windows desktop app — with Fiscalize Credit Note, Close Day, and Generate Z-Report functions working to spec — ready for packaging into an installer. All other functions (Open Day, Fiscalize Invoice, Device Status, Device Config) are working — . Use text-only buttons — no icons, no emojis. Logs go to raw_responses.log only — no JSON dumps. All paths are dynamic — use utils.get_app_root() — no hardcoded paths. Final output must be installer-ready. TIMELINE: 24 HOURS TOTAL Payment: 100 percent on successful delivery of all 4 milestones within 24 hours. MILESTONE 1: FISCALIZE CREDIT NOTE Objective: Implement credit note parsing and fiscalization — identical in behavior and UX to Fiscalize Invoice. Deliverables: 1. User clicks “Fiscalize Credit Note” — selects PDF — app parses: 2. Submit to ZIMRA SubmitReceipt with: - "receiptType": "CreditNote" - Correct tax lines, payments, totals - Includes creditedInvoiceNo and creditedInvoiceDate 3. PDF is stamped with: - ZIMRA QR code (per spec) 4. Stamped PDF saved to Fiscalized Invoices/ folder 5. Folder auto-opens after saving 6. Logs written to raw_responses.log only 7. Uses existing utils.py, submit_receipt.py — IF POSSIBLE Acceptance Criteria: - Credit note PDF successfully parsed and submitted to ZIMRA test API - Stamped PDF includes correct QR and metadata - No crashes, no missing fields - Matches invoice fiscalization UX exactly MILESTONE 2: CLOSE DAY + SAVE Z-REPORT Objective: Implement Close Day per ZIMRA spec — and save Z-Report as human-readable .txt file (matching sample layout). Deliverables: 1. User clicks “Close Day” — calls ZIMRA /CloseDay 2. Payload: - deviceID = 26460 - closeDate = YYYY-MM-DD 3. On success: - Extract Z-Report data from response - Save two files in data/z_reports/: - ZReport_9511_275_20250922_2001.txt (formatted human-readable version — see sample attached) 4. Show success in UI: “Day closed. Z-Report saved: ZReport_9511_275_20250922_2001.txt” 5. Log to raw_responses.log FORMATTED Z-REPORT .TXT LAYOUT (MUST MATCH EXACTLY): MILESTONE 3: GENERATE Z-REPORT (LOAD AND DISPLAY) Objective: Allow user to view the last saved Z-Report — in formatted text or pdf — without calling any API. Deliverables: 1. User clicks “Generate Z-Report” — app: - Loads the most recent .txt file from data/z_reports/ - Allow user to print the z report if needed 5. NO API CALL — 100 percent offline Acceptance Criteria: - After closing day — Z-Report .txt or Z-Report .pdf is saved - Clicking “Generate Z-Report” — displays formatted text/pdf in UI - Layout matches sample PDF exactly - Works in .exe MILESTONE 4: INTEGRATION AND FINAL TEST Objective: Ensure full app stability and packaging readiness. FINAL DELIVERABLES - A complete, compliant, installer-ready ZIMRA fiscalization app Updated source code files — where: - Credit Notes work like Invoices - Close Day FUNCTIONS WORKS AS PER ZIMRA SPECS saves Z-Report in human-readable .txt/PDF - Generate Z-Report displays saved report — anytime, offline, formatted exactly like sample - All other functions (Open Day, Fiscalize Invoice, Device Status, Device Config) remain fully functional