@extends('admin.layouts.app') @section('page-title', 'POS invoice') @section('body-class', 'inventory-preview pos-invoice-page') @push('styles') @endpush @push('scripts') @endpush @section('content')
@php $returnedUnits = $sale->returns->sum('units'); $refunded = $sale->returns->sum('refund_amount'); $cancelled = $sale->returns->contains('kind', 'cancel'); $saleStatus = $cancelled ? 'Cancelled' : ($returnedUnits >= $sale->units ? 'Returned' : ($returnedUnits > 0 ? 'Partial return' : 'Paid')); @endphp

POS invoice

{{ $saleStatus }}
@if(!$cancelled && $returnedUnits < $sale->units && auth()->user()->hasPermission('pos.refund'))Return / Refund@endif @if($sale->returns->isEmpty() && auth()->user()->hasPermission('pos.cancel'))Cancel sale@endif Sales ListNew Sale

{{ $brand['name'] }}

POS{{ str_pad((string) $sale->id, 6, '0', STR_PAD_LEFT) }}{{ $sale->created_at->timezone('Asia/Dhaka')->format('d M Y, h:i A') }}
Customer
{{ $sale->customer_name }}
Phone
{{ $sale->customer_phone ?? '—' }}
Payment
{{ $sale->payment_method }} · Paid
@if($sale->payment_reference !== null)
Payment reference
{{ $sale->payment_reference }}
@endif
@foreach($lines as $line)@endforeach
Product / SKUColour / SizeQuantityUnit price (BDT)Total (BDT)
{{ $line->product_name }}{{ $line->product_code }} · {{ $line->sku }}{{ $line->colour !== '' ? $line->colour : 'Default' }} / {{ $line->size !== '' ? $line->size : 'Default' }}{{ $line->quantity }}{{ number_format($line->unit_price / 100, 2) }}{{ number_format($line->line_total / 100, 2) }}
Subtotal
BDT {{ number_format($sale->subtotal / 100, 2) }}
Discount
BDT {{ number_format($sale->discount / 100, 2) }}
Tax ({{ number_format($sale->tax_basis_points / 100, 2) }}%)
BDT {{ number_format($sale->tax / 100, 2) }}
Total paid
BDT {{ number_format($sale->total / 100, 2) }}
Received
BDT {{ number_format($sale->received / 100, 2) }}
Change
BDT {{ number_format($sale->change / 100, 2) }}

Payment recorded · {{ $sale->units }} units sold

@if($sale->returns->isNotEmpty())
{{ $saleStatus }}

Refund recorded: BDT {{ number_format($refunded / 100, 2) }} · Net retained: BDT {{ number_format(($sale->total - $refunded) / 100, 2) }}

The original invoice remains unchanged. Return / cancellation receipts are recorded below.

@foreach($sale->returns as $record)@endforeach
ReceiptDateTypeUnitsRefund (BDT)
RT{{ str_pad((string) $record->id, 6, '0', STR_PAD_LEFT) }}{{ $record->created_at->timezone('Asia/Dhaka')->format('d M Y, h:i A') }}{{ $record->kind === 'cancel' ? 'Cancellation' : 'Return' }}{{ $record->units }}{{ number_format($record->refund_amount / 100, 2) }}
@endif
@endsection