Expense Report

{{ $profile->business_name }} | GSTIN: {{ $profile->gstin ?? 'N/A' }}

Period: {{ \Carbon\Carbon::parse($from)->format('d M Y') }} to {{ \Carbon\Carbon::parse($to)->format('d M Y') }}

Generated: {{ now()->format('d M Y H:i') }}

₹{{ number_format($summary['total'],2) }}

Total Expenses

{{ $expenses->count() }}

Total Entries

₹{{ number_format($summary['by_type']['salary'] ?? 0,2) }}

Salary

₹{{ number_format(($summary['by_type']['utility'] ?? 0)+($summary['by_type']['bill'] ?? 0),2) }}

Utilities & Bills

@foreach($expenses as $exp) @endforeach
Date Type Category Description Vendor Mode Amount GST Total
{{ \Carbon\Carbon::parse($exp->expense_date)->format('d M Y') }} {{ ucfirst(str_replace('_',' ',$exp->expense_type)) }} {{ $exp->category }} {{ \Illuminate\Support\Str::limit($exp->description,40) }} {{ $exp->vendor_name ?: '—' }} {{ ucfirst($exp->payment_mode) }} {{ number_format($exp->amount,2) }} {{ $exp->gst_amount > 0 ? number_format($exp->gst_amount,2) : '—' }} {{ number_format($exp->total_amount,2) }}
TOTAL ₹{{ number_format($expenses->sum('amount'),2) }} ₹{{ number_format($expenses->sum('gst_amount'),2) }} ₹{{ number_format($expenses->sum('total_amount'),2) }}
@if(count($summary['by_type'] ?? []) > 0)

BREAKDOWN BY TYPE

@foreach($summary['by_type'] as $type => $amount)
{{ ucfirst(str_replace('_',' ',$type)) }}: ₹{{ number_format($amount,2) }}
@endforeach
@endif

Confidential expense report generated by {{ config('app.name') }} | {{ now()->format('d M Y H:i') }}