diff --git a/app/Classes/Modules/Imports/ControllersLogic/ImportExcelLogic.php b/app/Classes/Modules/Imports/ControllersLogic/ImportExcelLogic.php index 1e16c542..a199f75d 100644 --- a/app/Classes/Modules/Imports/ControllersLogic/ImportExcelLogic.php +++ b/app/Classes/Modules/Imports/ControllersLogic/ImportExcelLogic.php @@ -74,12 +74,21 @@ class ImportExcelLogic extends AbstractControllerLogic 'businessactivitydesc', 'debtorcode', 'tradename', 'address', 'postcode', 'phone', 'emailaddress', 'city', 'countrycode', 'statecode' ]; - if ( - ($reportType === 'Sales Invoice Report' && $normalizedHeader !== $salesInvoiceHeader) || - ($reportType === 'Customers Report' && $normalizedHeader !== $customersReportHeader) - ) { + + if ($reportType === 'Sales Invoice Report') { + $optionalColumn = 'einvoicevalidationlink'; + + if ( + $normalizedHeader !== $salesInvoiceHeader && + $normalizedHeader !== [...$salesInvoiceHeader, $optionalColumn] + ) { + throw new MalformedRequestException('Uploaded Excel file format is incorrect. Column headers do not match expected format.'); + } + + } elseif ($reportType === 'Customers Report' && $normalizedHeader !== $customersReportHeader) { throw new MalformedRequestException('Uploaded Excel file format is incorrect. Column headers do not match expected format.'); } + $rows = $sheet->skip(1); foreach ($rows as $index => $details) {