Task queue · invoice issuance hub

Create invoices from saved templates. New rows are received immediately: they appear on Payables and on the operator Task queue (Company tab for operational_payable, Earnings tab for earnings_payable). Paying an earnings invoice debits mandate allocation for the same notional as the invoice amount — optional line items must sum to that total. Per-template Pause on Invoice templates blocks issuance for that lane only (e.g. hospital); templates with a preset bundle show Issue preset for one-click amounts and line items.

Manage template definitions on the Invoice templates page.

Earnings payable pipeline

${{ number_format($invoicePipeline['earnings']['usd'], 2) }}

{{ $invoicePipeline['earnings']['count'] }} open invoice(s) · excludes paid / disputed

Operational payable pipeline

${{ number_format($invoicePipeline['operational']['usd'], 2) }}

{{ $invoicePipeline['operational']['count'] }} open invoice(s) · excludes paid / disputed

Combined open exposure: ${{ number_format($invoicePipeline['earnings']['usd'] + $invoicePipeline['operational']['usd'], 2) }}. Toggle earnings_invoice_payments_enabled under Feature flags to gate mandate debits; invoice_generation_enabled gates issuance forms.

@include('partials.control-panel-voyage-scope-filter')

Issue from template

@php $earningsTemplates = $invoiceTemplates->where('invoice_domain', 'earnings_payable')->values(); $operationalTemplates = $invoiceTemplates->where('invoice_domain', 'operational_payable')->values(); @endphp

Earnings · mandate allocation

@forelse($earningsTemplates as $template) @include('partials.control-panel-issue-invoice-form', ['template' => $template, 'voyages' => $voyages, 'tone' => 'earnings']) @empty

No earnings templates. Create one on the Invoice templates page with domain earnings_payable.

@endforelse

Operational · company treasury

@forelse($operationalTemplates as $template) @include('partials.control-panel-issue-invoice-form', ['template' => $template, 'voyages' => $voyages, 'tone' => 'operational']) @empty

No operational templates.

@endforelse