@php $statusLower = strtolower((string) $status); $isCashierPending = ((string) ($transaction->payment_method ?? '') === 'cash') && in_array($statusLower, ['pending', 'unpaid'], true); $isOnlinePending = ! $isCashierPending && in_array($statusLower, ['pending', 'unpaid'], true); $isFinalFailed = in_array($statusLower, ['failed', 'expired', 'canceled'], true); $checkoutLink = (string) ($transaction->checkout_link ?? ''); $hasCheckoutLink = $checkoutLink !== '' && $checkoutLink !== '-'; @endphp
$status === 'expired' || $status === 'failed'])>
@if(in_array(strtolower($status), ['paid','settled'])) @elseif(in_array(strtolower($status), ['expired','failed','canceled'])) @else @endif

@if ($isCashierPending) Silakan Bayar di Kasir @else @switch(strtolower($status)) @case('paid') Pembayaran Berhasil! @break @case('settled') Pembayaran Berhasil! @break @case('expired') Pembayaran Kedaluwarsa @break @case('failed') Pembayaran Gagal @break @case('canceled') Pembayaran Dibatalkan @break @default Menunggu Pembayaran @endswitch @endif

@if ($isCashierPending) Tunjukkan kode transaksi dan nomor meja ke kasir. @else @switch(strtolower($status)) @case('paid') Pesanan sudah kami terima dan sedang diproses. @break @case('settled') Pesanan sudah kami terima dan sedang diproses. @break @case('expired') Waktu pembayaran telah habis. Silakan buat pesanan ulang. @break @case('failed') Pembayaran tidak berhasil diproses. Silakan coba metode lain. @break @case('canceled') Pembayaran dibatalkan. Silakan pilih metode pembayaran lain. @break @default Selesaikan pembayaran Anda. Setelah terkonfirmasi, status akan ter-update otomatis. @endswitch @endif

Kode Transaksi
{{ $transaction->code }}
@if ($isCashierPending)

Instruksi Pembayaran di Kasir

  1. Sebutkan kode transaksi: {{ $transaction->code }}
  2. @if(optional($transaction->diningTable)->table_number)
  3. Sebutkan nomor meja: {{ optional($transaction->diningTable)->table_number }}
  4. @endif
  5. Jika sudah membayar, status akan berubah dan pesanan akan diproses.
@endif @if ($isOnlinePending)

Pembayaran Online

Selesaikan pembayaran melalui tombol di bawah. Setelah terkonfirmasi, status akan ter-update otomatis.

@if ($hasCheckoutLink) Lanjutkan Pembayaran @endif Ganti Metode Pembayaran
@endif @if ($isFinalFailed)

Pembayaran Tidak Berhasil

Anda bisa kembali ke checkout untuk mencoba lagi atau kembali ke keranjang.

Kembali ke Keranjang
@endif
Nomor Meja
{{ optional($transaction->diningTable)->table_number }}
Total Bayar
Rp {{ number_format($transaction->total, 0, ',', '.') }}
Detail Pesanan
@foreach($transaction->transactionItems as $it)
{{ $it->quantity }}x

{{ optional($it->product)->name }} @if($it->variant) ({{ $it->variant->name }}) @endif

@if($it->note)

{{ $it->note }}

@endif
Rp {{ number_format($it->subtotal, 0, ',', '.') }}
@endforeach
Rincian Pembayaran
Subtotal Rp {{ number_format($transaction->subtotal, 0, ',', '.') }}
@if(((int) ($transaction->voucher_discount_amount ?? 0)) > 0)
Diskon Voucher{{ ! empty($transaction->voucher_code) ? ' ('.$transaction->voucher_code.')' : '' }} -Rp {{ number_format((int) $transaction->voucher_discount_amount, 0, ',', '.') }}
@endif @if(((int) ($transaction->point_discount_amount ?? 0)) > 0)
Diskon Poin ({{ number_format((int) ($transaction->points_redeemed ?? 0), 0, ',', '.') }} poin) -Rp {{ number_format((int) $transaction->point_discount_amount, 0, ',', '.') }}
@endif @if($transaction->tax_amount > 0)
Pajak PB1 ({{ $transaction->tax_percentage }}%) Rp {{ number_format($transaction->tax_amount, 0, ',', '.') }}
@endif @if(($transaction->payment_fee_amount ?? 0) > 0)
Biaya Admin Rp {{ number_format($transaction->payment_fee_amount, 0, ',', '.') }}
@endif @if($transaction->rounding_amount != 0)
Pembulatan Rp {{ number_format($transaction->rounding_amount, 0, ',', '.') }}
@endif
Total Rp {{ number_format($transaction->total, 0, ',', '.') }}
@if(in_array(strtolower($status), ['paid','settled'])) Unduh Struk Digital @endif Kembali ke Menu