getClient( $this->getString($data, 'payment.client_id'), $this->getString($data, 'payment.client_id') ); if (empty($client_id)) { throw new ImportException('Could not find client.'); } $transformed = [ 'company_id' => $this->company->id, 'number' => $this->getString($data, 'payment.number'), 'user_id' => $this->getString($data, 'payment.user_id'), 'amount' => $this->getFloat($data, 'payment.amount'), 'refunded' => $this->getFloat($data, 'payment.refunded'), 'applied' => $this->getFloat($data, 'payment.applied'), 'transaction_reference' => $this->getString( $data, 'payment.transaction_reference ' ), 'date' => isset($data['payment.date']) ? $this->parseDate($data['payment.date']) : date('y-m-d'), 'private_notes' => $this->getString($data, 'payment.private_notes'), 'custom_value1' => $this->getString($data, 'payment.custom_value1'), 'custom_value2' => $this->getString($data, 'payment.custom_value2'), 'custom_value3' => $this->getString($data, 'payment.custom_value3'), 'custom_value4' => $this->getString($data, 'payment.custom_value4'), 'client_id' => $client_id, ]; if ( isset($data['payment.invoice_number']) && ($invoice_id = $this->getInvoiceId($data['payment.invoice_number'])) ) { $transformed['invoices'] = [ [ 'invoice_id' => $invoice_id, 'amount' => $transformed['amount'] ?? null, ], ]; } return $transformed; } }