[2026-02-09 13:16:14.000] === STARTING PROCESSING SESSION === [2026-02-09 13:16:14.000] PHP Version: 8.4.16 [2026-02-09 13:16:14.000] Memory Limit: 128M [2026-02-09 13:16:14.000] Max Execution Time: 120 [2026-02-09 13:16:14.000] Disabled functions: NONE [2026-02-09 13:16:14.000] Raw body length: 39896 [2026-02-09 13:16:14.000] Provided signature: e1e6de74a401aa1578f3... [2026-02-09 13:16:14.000] Expected signature: e1e6de74a401aa1578f3... [2026-02-09 13:16:14.000] Signature verified successfully [2026-02-09 13:16:14.000] Payload JSON decoded: SUCCESS [2026-02-09 13:16:14.000] Number of PDFs to process: 1 [2026-02-09 13:16:14.000] --- Processing PDF #1 --- [2026-02-09 13:16:14.000] PDF base64 provided: YES, length: 39272 [2026-02-09 13:16:14.000] PDF bytes decoded: 29452 bytes [2026-02-09 13:16:14.000] Temp PDF written to /tmp/invoice_6989de1ee1d8f.pdf, bytes written: 29452 [2026-02-09 13:16:14.000] Temp PDF exists: YES [2026-02-09 13:16:14.000] Temp PDF size: 29452 bytes [2026-02-09 13:16:14.000] PDF hash: e568be33c140b6afb826149e2e962d5d9457fc28a3726fc6de29417fb328bdde [2026-02-09 13:16:14.000] Checking database cache for hash: e568be33c140b6af... [2026-02-09 13:16:14.000] CACHE MISS - Not found in database [2026-02-09 13:16:14.000] Starting PDF processing (not cached) [2026-02-09 13:16:14.000] STEP 1: Quick Smalot parser attempt [2026-02-09 13:16:14.000] Smalot parsing took: 0.01 seconds [2026-02-09 13:16:14.000] Number of pages detected: 1 [2026-02-09 13:16:14.000] Smalot extracted text length: 1196 [2026-02-09 13:16:14.000] Smalot parser SUCCESS - using text extraction [2026-02-09 13:16:14.000] Smalot text preview (first 200 chars): | Data: Rechnung Argli UG (haftungsbeschränkt) ·Muthesiusstraße 6 12163 Berlin, DE Daniel Wendel e.K. Ballindamm 39 20095 Hamburg Deutschland Kunden-USt-IDNr. DE286311360 Kunden-Steuer-ID 43/263/05230 Rech [2026-02-09 13:16:14.000] Using Smalot OCR method, text length: 1196 [2026-02-09 13:16:14.000] Attempting OpenAI parsing with smalot OCR [2026-02-09 13:16:14.000] run_openai_parse called, text length: 1196 [2026-02-09 13:16:14.000] OpenAI input preview: | Data: Rechnung Argli UG (haftungsbeschränkt) ·Muthesiusstraße 6 12163 Berlin, DE Daniel Wendel e.K. Ballindamm 39 20095 Hamburg Deutschland Kunden-USt-IDNr. DE286311360 Kunden-Steuer-ID 43/263/05230 Rech... [2026-02-09 13:16:14.000] Making OpenAI API call... [2026-02-09 13:16:16.000] OpenAI HTTP response code: 200 [2026-02-09 13:16:16.000] OpenAI response received, length: 988 [2026-02-09 13:16:16.000] OpenAI content extracted, length: 151 [2026-02-09 13:16:16.000] OpenAI parsed JSON result | Data: {"invoice_number":"RE-2025-170","amount":"9096.07","due_date":"2026-03-10","invoice_date":"2025-12-10","currency":"EUR"} [2026-02-09 13:16:16.000] Final AI result | Data: {"invoice_number":"RE-2025-170","amount":"9096.07","due_date":"2026-03-10","invoice_date":"2025-12-10","currency":"EUR"} [2026-02-09 13:16:16.000] normalize_amount called with: | Data: 9096.07 [2026-02-09 13:16:16.000] normalize_amount result: | Data: 9096.07 [2026-02-09 13:16:16.000] normalize_date_iso called with: | Data: 2025-12-10 [2026-02-09 13:16:16.000] Final extracted values | Data: {"invoice_number":"RE-2025-170","amount":"9096.07","due_date":"2026-03-10","invoice_date":"2025-12-10","currency":"EUR"} [2026-02-09 13:16:16.000] Attempting to save PDF to: /var/www/html/pdfs/invoice_f88a480dc6240f5b8333783725b81c78.pdf [2026-02-09 13:16:16.000] PDF saved successfully to /var/www/html/pdfs/invoice_f88a480dc6240f5b8333783725b81c78.pdf [2026-02-09 13:16:16.000] Database INSERT SUCCESS [2026-02-09 13:16:16.000] Adding to invoices array | Data: {"uuid":"f88a480dc6240f5b8333783725b81c78","invoice_number":"RE-2025-170","amount":"9096.07","due_date":"2026-03-10","invoice_date":"2025-12-10","currency":"EUR","cached":false,"ocr_method":"smalot","local_ocr_failed":false} [2026-02-09 13:16:16.000] --- Finished processing PDF #1 --- [2026-02-09 13:16:16.000] === TOTAL PROCESSING TIME: 1584.14ms === [2026-02-09 13:16:16.000] Total invoices processed: 1 [2026-02-09 13:16:16.000] Response sent, size: 239 bytes