@extends('layouts.app') @section('title', 'Taxes & Levies') @section('content')

Taxes & Levies

Add or change a rate here and it applies to the very next sale — no waiting, no code changes.

{{-- VAT / Tax rates --}}

VAT / Tax rates

@can('taxes.manage') @endcan
@forelse ($taxRates as $rate)

{{ $rate->name }}

{{ $rate->code }}

{{ rtrim(rtrim(number_format($rate->rate, 2), '0'), '.') }}% @if ($rate->is_default)Default@endif @unless ($rate->is_active)Inactive@endunless @can('taxes.manage') @endcan @can('taxes.manage')
@csrf
@endcan
@csrf @method('PUT')
@empty

No tax rates configured yet.

@endforelse
{{-- Levies --}}

Hotel / Tourism levies

@can('taxes.manage') @endcan
@forelse ($levies as $levy)

{{ $levy->name }}

{{ rtrim(rtrim(number_format($levy->rate, 2), '0'), '.') }}% @unless ($levy->is_active)Inactive@endunless

Charged on: {{ $levy->taxable_base === 'gross_sales' ? 'total bill (including tax)' : 'bill before tax' }}

@foreach ($levy->departments as $dept) {{ $dept->name }} @endforeach @if ($levy->departments->isEmpty()) Not applied to any department yet @endif @can('taxes.manage') @endcan @can('taxes.manage')
@csrf
@endcan
@csrf @method('PUT')
@foreach ($departments as $dept) @endforeach
@empty

No levies configured. Add one for e.g. the Tourism Levy.

@endforelse

Every bill automatically works out the subtotal, tax, levy, and grand total using the rates you set here, and this is what gets sent to KRA for tax reporting. Changes here take effect on the next sale — nothing else to do.

@csrf
@csrf
@foreach ($departments as $dept) @endforeach
@endsection