diff --git a/src/Entity/ShopifyProduct.php b/src/Entity/ShopifyProduct.php
index 430b9e5..9df95a0 100644
--- a/src/Entity/ShopifyProduct.php
+++ b/src/Entity/ShopifyProduct.php
@@ -67,7 +67,7 @@ class ShopifyProduct extends ContentEntityBase implements ShopifyProductInterfac
   public static function preCreate(EntityStorageInterface $storage, array &$values) {
     $values = self::formatValues($values);
     parent::preCreate($storage, $values);
-    $values += [
+    $values = [
       'user_id' => \Drupal::currentUser()->id(),
     ];
   }
@@ -525,5 +525,18 @@ class ShopifyProduct extends ContentEntityBase implements ShopifyProductInterfac

     return $fields;
   }
+
+  /**
+   * Return array of product variant options.
+   *
+   * @return mixed
+   */
+  public function getOptions() {
+    $options = $this->values["options"]["x-default"];
+    if (is_array($options)) {
+      return $options;
+    }
+    return array($options);
+  }

 }
diff --git a/src/Form/ShopifyVariantOptionsForm.php b/src/Form/ShopifyVariantOptionsForm.php
index e1962cf..066d39f 100644
--- a/src/Form/ShopifyVariantOptionsForm.php
+++ b/src/Form/ShopifyVariantOptionsForm.php
@@ -32,7 +32,7 @@ class ShopifyVariantOptionsForm extends FormBase {
   public function buildForm(array $form, FormStateInterface $form_state, ShopifyProduct $product = NULL) {
     // Disable caching of this form.
     $form['#cache']['max-age'] = 0;
-    $options = $product->options->get(0)->toArray();
+    $options = $product->getOptions();
     $form_state->set('product', $product);

     $variant_id = \Drupal::request()->get('variant_id', FALSE);