protected function extractVariantData(VariantInterface $variant, array &$variants) { $sellPrice = $variant->getSellPrice(); $baseCurrency = $sellPrice->getCurrency(); $key = $this->getVariantOptionsKey($variant); $variants[$key] = ['id' => $variant->getId(), 'finalPriceGross' => $this->currencyHelper->convertAndFormat($sellPrice->getFinalGrossAmount(), $baseCurrency), 'sellPriceGross' => $this->currencyHelper->convertAndFormat($sellPrice->getGrossAmount(), $baseCurrency), 'discountPriceGross' => $this->currencyHelper->convertAndFormat($sellPrice->getDiscountedGrossAmount(), $baseCurrency), 'stock' => $variant->getStock(), 'symbol' => $variant->getSymbol(), 'options' => $this->getVariantOptions($variant)]; }