← Back to purchase orders
@if (session('success'))
{{ session('success') }}
@endif @if (session('error'))
{{ session('error') }}
@endif

{{ $purchaseOrder->po_number }}

{{ $purchaseOrder->supplier->name }} · {{ $purchaseOrder->warehouse->name }}

$purchaseOrder->status === 'open', 'bg-amber-50 text-amber-700 dark:bg-amber-500/10 dark:text-amber-400' => $purchaseOrder->status === 'partially_received', 'bg-green-50 text-green-700 dark:bg-green-500/10 dark:text-green-400' => $purchaseOrder->status === 'received', 'bg-red-50 text-red-700 dark:bg-red-500/10 dark:text-red-400' => $purchaseOrder->status === 'cancelled', ])> {{ str($purchaseOrder->status)->replace('_', ' ')->title() }} Download Excel @can('purchases.update') @endcan @can('purchases.update') @if ($purchaseOrder->status === 'open' && $purchaseOrder->goodsReceipts->isEmpty()) Edit @endif @endcan @can('purchases.receive') @if ($purchaseOrder->isCancellable()) @endif @endcan @can('purchases.return') @if ($purchaseOrder->items->contains(fn ($item) => $item->returnableQuantity() > 0)) @endif @endcan @can('purchases.cancel') @if ($purchaseOrder->isCancellable()) @endif @endcan
Order Date
{{ $purchaseOrder->order_date->format('d M Y') }}
Expected Date
{{ $purchaseOrder->expected_date?->format('d M Y') ?? '—' }}
Total
{{ number_format($purchaseOrder->total, 2) }}
Created By
{{ $purchaseOrder->createdBy?->name ?? '—' }}
@if ($purchaseOrder->notes)

{{ $purchaseOrder->notes }}

@endif
Order Total
{{ number_format($purchaseOrder->total, 2) }}
Paid
{{ number_format($purchaseOrder->paidAmount(), 2) }}
@php($balanceDue = $purchaseOrder->balanceDue())
$balanceDue > 0, 'bg-green-50 dark:bg-green-500/10' => $balanceDue <= 0, ])>
$balanceDue > 0, 'text-green-700 dark:text-green-400' => $balanceDue <= 0, ])>Balance Due
$balanceDue > 0, 'text-green-700 dark:text-green-400' => $balanceDue <= 0, ])>{{ number_format($balanceDue, 2) }}

Items

@foreach ($purchaseOrder->items as $item) @endforeach
Product Ordered Received Pending Unit Cost Line Total
{{ $item->product->name }} {{ $item->ordered_quantity }} {{ $item->received_quantity }} $item->pendingQuantity() > 0, 'text-gray-400 dark:text-gray-500' => $item->pendingQuantity() === 0, ])> {{ $item->pendingQuantity() }} {{ number_format($item->unit_cost, 2) }} {{ number_format($item->line_total, 2) }}

Receiving History

@if ($purchaseOrder->goodsReceipts->isEmpty()) @else
@foreach ($purchaseOrder->goodsReceipts as $receipt)
{{ $receipt->receipt_number }} {{ $receipt->received_date->format('d M Y') }} · {{ $receipt->createdBy?->name ?? '—' }}
    @foreach ($receipt->items as $line)
  • {{ $line->product->name }} — {{ $line->received_quantity }} @ {{ number_format($line->unit_cost, 2) }}
  • @endforeach
@endforeach
@endif
@if ($purchaseOrder->payments->isNotEmpty())

Payments

@foreach ($purchaseOrder->payments as $payment)
{{ number_format($payment->amount, 2) }} · {{ $payment->payment_date->format('d M Y') }} @if ($payment->method) · {{ str($payment->method)->replace('_', ' ')->title() }} @endif @if ($payment->reference_number) · Ref: {{ $payment->reference_number }} @endif
@endforeach
@endif @if ($purchaseOrder->returns->isNotEmpty())

Returns to Supplier

@foreach ($purchaseOrder->returns as $return)
{{ $return->return_number }} {{ $return->return_date->format('d M Y') }} · {{ number_format($return->total, 2) }}
    @foreach ($return->items as $line)
  • {{ $line->product->name }} — {{ $line->quantity }} @ {{ number_format($line->unit_cost, 2) }}
  • @endforeach
@endforeach
@endif {{-- Record Payment modal --}} @if ($showPaymentForm)

Record Payment

Balance due on {{ $purchaseOrder->po_number }}: {{ number_format($purchaseOrder->balanceDue(), 2) }}

@endif {{-- Return to Supplier modal --}} @if ($showReturnForm)

Return to Supplier

@foreach ($returnLines as $index => $line)
{{ $line['product_name'] }} Returnable: {{ $line['returnable'] }}
@if ($line['track_batches']) @endif
@endforeach
@endif {{-- Receive Goods modal --}} @if ($showReceiveForm)

Receive Goods

@foreach ($receiveLines as $index => $line)
{{ $line['product_name'] }} Pending: {{ $line['pending'] }}
@if ($line['track_batches'])
@endif
@endforeach
@endif