{{-- Control Variables --}} @php // Imports use Carbon\Carbon; use App\Helpers\Database\SatCatalogsHelper; use App\Helpers\Environment\SystemFeaturesHelper; use App\Helpers\Support\PdfResourcesHelper; use App\Helpers\Support\TaxCertificateHelper; use App\Helpers\Formats\AddressFormatterHelper; use App\Helpers\Formats\FormatCurrencyHelper; use App\Helpers\Formats\QuantityConverterHelper; use App\Enums\Invoicing\BillableService; // Variables // Controls $reduce_invoice = SystemFeaturesHelper::getFeatureStatus("reduced_invoices"); // Classes $contrast_color = PdfResourcesHelper::getTextContrastColor($tax_payment->taxFormat->base_color ?? "#0D6889"); // Header $cds_issuer = TaxCertificateHelper::serialHexToSatCertificateNumber($issuer->cer_serial_number); $emission_date = Carbon::parse($tax_payment->certification_date)->startOfMinute()->format('d/m/Y H:i:s')." (Tiempo del Centro)"; $certification_date = is_null($tax_payment->certification_date) ? "-- -- --" : Carbon::parse($tax_payment->certification_date)->format('d/m/Y H:i:s')." (Tiempo del Centro)"; // Receiver $receiver_address = (object) $tax_payment->receptor->tax_address; $receiver_sample_address = AddressFormatterHelper::format( [ "street" => $receiver_address->street, "exterior" => $receiver_address->exterior, "interior" => $receiver_address->interior, "neighborhood" => $receiver_address->neighborhood, "city" => $receiver_address->city, "municipality" => $receiver_address->municipality, "state" => $receiver_address->state ?? null, "country" => $receiver_address->country, 'zip' => $tax_payment->receptor->zip, ], ['ext_label' => 'No.', 'int_label' => 'Int.', 'zip_label' => 'C.P.' ] ); @endphp {{ $title }} @include('invoicing.invoices.pdf.resources.invoice-styles') {{-- Cancelled (Watermark) --}} @include('invoicing.invoices.pdf.resources.cancel-watermark', ['tax_document' => $tax_payment]) {{-- Header --}}
{{-- Logo --}}
{{-- Issuer Data --}}
{{-- Legal Name --}}

{{ $issuer->legal_name }}

{{-- Tax Data --}}

{{-- RFC --}} {{ $issuer->tax_id }}
{{-- Address --}} {{ $tax_payment->taxBranch->sample_address }}
{{-- email --}} {{ $tax_payment->taxBranch->email }}

{{-- Invoice Header --}}
{{-- Versión --}} {{-- Folio Fiscal --}} {{-- CSD del Emisor --}} {{-- Datetime Emisión --}} {{-- Datetime Certificación --}} {{-- Uso de CFDI --}} {{-- Regimen Fiscal --}} {{-- Tipo de CFDI --}} {{-- Serie y Folio --}}
Versión: 4.0
Folio Fiscal: {{ $tax_payment->sat_uuid }}
No. de serie del CSD del Emisor: {{ $cds_issuer }}
Fecha y hora de operación: {{ $emission_date }}
Fecha y hora de Certificación: {{ $certification_date }}
Uso de CFDI: {{ SatCatalogsHelper::getItem('c_UsoCFDI', $tax_payment->cfdi_use, true) }}
Regimen fiscal: {{ SatCatalogsHelper::getItem('c_RegimenFiscal', $issuer->tax_system, true) }}
Tipo de CFDI: {{ SatCatalogsHelper::getItem('c_TipoDeComprobante', "P", true) }}
Serie y Folio: {{ $payment_format_serie }}
{{-- Footer --}} {{-- Content --}}
{{-- Receiver - CFDI Data --}}
{{-- Receiver --}}

Receptor

Nombre: {{ $tax_payment->receptor->legal_name }}

RFC: {{ $tax_payment->receptor->tax_id }}

{{ $receiver_sample_address }}

Régimen Fiscal: {{ SatCatalogsHelper::getItem('c_RegimenFiscal', $tax_payment->receptor->tax_system, true) }}

{{-- CFDI Data --}}

Datos del CFDI

Moneda: @if ($reduce_invoice) XXX @else {{ SatCatalogsHelper::getItem('c_Moneda', "XXX", true) }} @endif

Exportación: {{ SatCatalogsHelper::getItem('c_Exportacion', "01", true) }}

{{-- Default Concept --}}
{{-- Subtotal --}} {{-- Total --}}
Cantidad Unidad Concepto Precio Unitario Importe
1 @if ($reduce_invoice) ACT @else {{ SatCatalogsHelper::getUnit("ACT", true) }} @endif Pago
{{ SatCatalogsHelper::getProdServ('84111506', true) }}
{{ SatCatalogsHelper::getItem('c_ObjetoImp', "01", !$reduce_invoice) }}
{{ FormatCurrencyHelper::formatCurrency("0.000000", true, 6) }} {{ FormatCurrencyHelper::formatCurrency("0.00") }}
Subtotal {{ FormatCurrencyHelper::formatCurrency("0.00") }}
Importe con Letra: {{ QuantityConverterHelper::convertToPesosText(0.00, false) }} Total {{ FormatCurrencyHelper::formatCurrency("0.00") }}
{{-- Payment Data --}}
{{-- General Data --}}
Datos del Pago
{{-- Payment Date --}} Fecha de Pago: {{ Carbon::parse($tax_payment->payment_date)->format('d/m/Y H:i:s') }} {{-- Payment Form --}}
Forma de Pago: {{ SatCatalogsHelper::getItem('c_FormaPago', $tax_payment->payment_form, !$reduce_invoice) }} {{-- Currency --}}
Moneda: {{ SatCatalogsHelper::getItem('c_Moneda', $tax_payment->currency, true) }} {{-- Exchange Rate --}}
Tipo de Cambio: {{ QuantityConverterHelper::removeUnnecessaryDecimal($tax_payment->exchange_rate ?? "1.00") }} {{-- Amount --}}
Monto: {{ FormatCurrencyHelper::formatCurrency($tax_payment->amount_total, $tax_payment->currency) }}
{{-- General Data --}} @foreach ($tax_payment->taxPaymentDocs as $payment_doc) @php // Invoices data $invoice = $payment_doc->taxInvoice; $currency = $invoice->currency; $invoice_format_serie = ($invoice->taxFormat?->serie ?? $invoice->invoice_type) ."-{$invoice->serial_consecutive}"; // Get concepts $invoice_first_item = $invoice->taxItems->first(); // Calculate IVA applied $applied_rate = 0.0; $is_withholding = false; if ($invoice_first_item && is_array($invoice_first_item->tax_profile)) { // IVA Traslado % $applied_rate = (float) data_get($invoice_first_item->tax_profile, 'taxes.iva.rate', 0.0); // IVA Retención % if ($applied_rate == 0.0) { $applied_rate = (float) data_get($invoice_first_item->tax_profile, 'withholding_taxes.iva.rate', 0.0); $is_withholding = $applied_rate > 0; } } $format_amount_paid = $payment_doc->amount_paid; if ($is_withholding) { // Retención $applied_tax_import = round($format_amount_paid * $applied_rate, 2); } else { // Traslado $applied_tax_import = $applied_rate > 0 ? round($format_amount_paid * ($applied_rate / (1 + $applied_rate)), 2) : 0.00; } @endphp {{-- Invoice Document Data --}} {{-- IVA Breakdown --}} @endforeach
Documentos Relacionados
Folio Fiscal Folio Obj. Impuesto Parcialidad Saldo Anterior Importe Insoluto
{{ $invoice->sat_uuid }} {{ $invoice_format_serie }} {{ SatCatalogsHelper::getItem('c_ObjetoImp', "02", !$reduce_invoice) }} {{ $payment_doc->installment_number }} {{ FormatCurrencyHelper::formatCurrency($payment_doc->previous_balance, $currency) }} {{ FormatCurrencyHelper::formatCurrency($payment_doc->amount_paid, $currency) }} {{ FormatCurrencyHelper::formatCurrency($payment_doc->remaining_balance, $currency) }}
{{ $is_withholding ? 'IVA Retenido' : 'IVA Traslado' }} {{ QuantityConverterHelper::str_toStrPercentage($applied_rate) }} = {{ FormatCurrencyHelper::formatCurrency($applied_tax_import, $currency) }}
{{-- SAT Certificates --}}
Sello digital Emisor
{{ $tax_payment->cfdi_seal }}
Sello digital del SAT
{{ $tax_payment->sat_seal }}
Cadena Original del Complemento de certificación digital del SAT
{{ $tax_payment->tfd_original_string }}
Invoice QR

Prov. Cert. {{ data_get($tax_payment->response_payload, 'stamp.rfc_provider_cert', 'PPD101129EA3') }}