code: protected function updateVatData(SaleInterface $sale)
      {
          $changed = false;
  
          if (null !== $customer = $sale->getCustomer()) {
              if (0 == strlen($sale->getVatNumber()) && 0 < strlen($customer->getVatNumber())) {
                  $sale->setVatNumber($customer->getVatNumber());
                  $changed = true;
              }
              if (empty($sale->getVatDetails()) && !empty($customer->getVatDetails())) {
                  $sale->setVatDetails($customer->getVatDetails());
                  $changed = true;
              }
              if (!$sale->isVatValid() && $customer->isVatValid()) {
                  $sale->setVatValid(true);
                  $changed = true;
              }
          }
  
          return $changed;
      }
docs: Updates the vat data.
  
  @param SaleInterface $sale
  
  @return bool Whether the sale has been changed.