@extends('layouts.app') @section('title','Focus Invoice Archive') @section('content')
{{ $company->name }} — historical invoices are staged for review before any ERP posting
The original file and its checksum are retained. Uploading the same file again does not duplicate it. Analysis never changes stock, balances, customer accounts or invoice sequences.
Define each Focus voucher code only after checking a known document. Until mapped, imported transactions remain unclassified.
@if($voucherMappings->isNotEmpty())@foreach($voucherMappings as $mapping){{ $mapping->focus_voucher_type }} → {{ $mapping->document_type }}@if(!$loop->last) · @endif @endforeach
@endifExact source copy, transaction totals and mapping state.
| File | Status | Transactions | Ready | Needs mapping | Uploaded |
|---|---|---|---|---|---|
| {{ $batch->original_filename }} {{ substr($batch->file_sha256,0,16) }}… |
{{ ucwords(str_replace('_',' ',$batch->status)) }} | {{ $batch->transaction_count }} | {{ $batch->ready_count }} | {{ $batch->unresolved_count }} | {{ $batch->created_at }} |
| No Focus invoice files have been uploaded. | |||||
Raw Focus values are preserved. Document type remains unassigned until voucher semantics are confirmed.
| Document | Date | Voucher | Account / customer | Salesperson | Book | Lines | Raw net | Status |
|---|---|---|---|---|---|---|---|---|
| {{ $row->document_number }} | {{ $row->document_date ?: '—' }} | {{ $row->voucher_type }} {{ $row->document_type ? ucwords(str_replace('_',' ',$row->document_type)) : 'Unclassified' }} |
{{ $row->focus_account_code ?: '—' }}@if($row->customer_name) {{ $row->customer_name }}@endif |
{{ $row->focus_salesperson_code ?: '—' }}@if($row->salesperson_name) {{ $row->salesperson_name }}@endif |
{{ $row->focus_book_code ?: '—' }} | {{ $row->line_count }} | {{ $row->net_raw }} | {{ ucwords(str_replace('_',' ',$row->status)) }} |
| No historical Focus transactions analyzed. | ||||||||