diff --git a/tests/src/Kernel/CommerceMigrateTestTrait.php b/tests/src/Kernel/CommerceMigrateTestTrait.php
index 2ad5c62..7718503 100644
--- a/tests/src/Kernel/CommerceMigrateTestTrait.php
+++ b/tests/src/Kernel/CommerceMigrateTestTrait.php
@@ -69,6 +69,8 @@ trait CommerceMigrateTestTrait {
    *
    * @param int $id
    *   The profile id.
+   * @param int $expected_owner_id
+   *   The uid for this billing profile.
    * @param string $expected_is_active
    *   The active state of the profile.
    * @param string $expected_created_time
@@ -76,11 +78,12 @@ trait CommerceMigrateTestTrait {
    * @param string $expected_changed_time
    *   The time the profile was last changed.
    */
-  public function assertBillingProfile($id, $expected_is_active, $expected_created_time, $expected_changed_time) {
+  public function assertBillingProfile($id, $expected_owner_id, $expected_is_active, $expected_created_time, $expected_changed_time) {
     $profile = Profile::load($id);
     $this->assertNotNull($profile);
     // Billing profiles are always 'customer' bundle.
     $this->assertSame('customer', $profile->bundle());
+    $this->assertSame($expected_owner_id, $profile->getOwnerId());
     $this->assertSame($expected_is_active, $profile->isActive());
     $this->assertSame($expected_created_time, ($profile->getCreatedTime()));
     $this->assertSame($expected_changed_time, $profile->getChangedTime());
@@ -118,6 +121,8 @@ trait CommerceMigrateTestTrait {
    *
    * @param string $id
    *   The order id.
+   * @param string $expected_order_number
+   *   The order number.
    * @param string $expected_store_id
    *   The store id.
    * @param string $expected_created_time
@@ -128,16 +133,26 @@ trait CommerceMigrateTestTrait {
    *   The email address for this order.
    * @param string $expected_label
    *   The label for this order.
+   * @param string $expected_ip_address
+   *   The ip address used to create this order.
+   * @param string $expected_customer_id
+   *   The customer id.
+   * @param string $expected_placed_time
+   *   The time the order was placed.
    */
-  public function assertOrder($id, $expected_store_id, $expected_created_time, $expected_changed_time, $expected_email, $expected_label) {
+  public function assertOrder($id, $expected_order_number, $expected_store_id, $expected_created_time, $expected_changed_time, $expected_email, $expected_label, $expected_ip_address, $expected_customer_id, $expected_placed_time) {
     $order = Order::load($id);
     $this->assertInstanceOf(Order::class, $order);
+    $this->assertSame($expected_order_number, $order->getOrderNumber());
     $this->assertSame($expected_store_id, $order->getStoreId());
     $this->assertSame($expected_created_time, $order->getCreatedTime());
     $this->assertSame($expected_changed_time, $order->getChangedTime());
     $this->assertSame($expected_email, $order->getEmail());
     $this->assertSame($expected_label, $order->getState()->getLabel());
     $this->assertNotNull($order->getBillingProfile());
+    $this->assertSame($expected_customer_id, $order->getCustomerId());
+    $this->assertSame($expected_ip_address, $order->getIpAddress());
+    $this->assertSame($expected_placed_time, $order->getPlacedTime());
   }
 
   /**
@@ -145,16 +160,34 @@ trait CommerceMigrateTestTrait {
    *
    * @param int $id
    *   The order item id.
+   * @param int $expected_order_id
+   *   The order id for this item.
+   * @param int $expected_purchased_entity_id
+   *   The id of the purchased entity.
    * @param string $expected_quantity
    *   The order quantity.
    * @param string $expected_title
    *   The title of the item.
+   * @param string $expected_unit_price_number
+   *   The unit price of the item.
+   * @param string $expected_unit_price_currency_code
+   *   The unit price currency code.
+   * @param string $expected_total_price_number
+   *   The total price of this item.
+   * @param string $expected_total_price_currency_code
+   *   The total price currency code.
    */
-  public function assertOrderItem($id, $expected_quantity, $expected_title) {
+  public function assertOrderItem($id, $expected_order_id, $expected_purchased_entity_id, $expected_quantity, $expected_title, $expected_unit_price_number, $expected_unit_price_currency_code, $expected_total_price_number, $expected_total_price_currency_code) {
     $order_item = OrderItem::load($id);
     $this->assertInstanceOf(OrderItem::class, $order_item);
     $this->assertSame($expected_quantity, $order_item->getQuantity());
     $this->assertEquals($expected_title, $order_item->getTitle());
+    $this->assertEquals($expected_unit_price_number, $order_item->getUnitPrice()->getNumber());
+    $this->assertEquals($expected_unit_price_currency_code, $order_item->getUnitPrice()->getCurrencyCode());
+    $this->assertEquals($expected_total_price_number, $order_item->getTotalPrice()->getNumber());
+    $this->assertEquals($expected_total_price_currency_code, $order_item->getTotalPrice()->getCurrencyCode());
+    $this->assertEquals($expected_purchased_entity_id, $order_item->getPurchasedEntityId());
+    $this->assertEquals($expected_order_id, $order_item->getOrderId());
   }
 
   /**
@@ -162,6 +195,8 @@ trait CommerceMigrateTestTrait {
    *
    * @param int $id
    *   The product id.
+   * @param int $expected_owner_id
+   *   The uid for this billing profile.
    * @param string $expected_title
    *   The title of the product.
    * @param string $expected_is_published
@@ -170,14 +205,18 @@ trait CommerceMigrateTestTrait {
    *   The time the product was last changed.
    * @param array $expected_store_ids
    *   The ids of the stores for this product.
+   * @param array $expected_variations
+   *   The variation of this product.
    */
-  public function assertProductEntity($id, $expected_title, $expected_is_published, $expected_changed_time, array $expected_store_ids) {
+  public function assertProductEntity($id, $expected_owner_id, $expected_title, $expected_is_published, $expected_changed_time, array $expected_store_ids, array $expected_variations) {
     $product = Product::load($id);
     $this->assertInstanceOf(Product::class, $product);
+    $this->assertSame($expected_owner_id, $product->getOwnerId());
     $this->assertSame($expected_title, $product->getTitle());
     $this->assertSame($expected_is_published, $product->isPublished());
     $this->assertSame($expected_changed_time, $product->getChangedTime());
     $this->assertSame($expected_store_ids, $product->getStoreIds());
+    $this->assertSame($expected_variations, $product->getVariationIds());
   }
 
   /**
@@ -185,21 +224,34 @@ trait CommerceMigrateTestTrait {
    *
    * @param int $id
    *   The product variation id.
+   * @param int $expected_owner_id
+   *   The uid for this billing profile.
    * @param string $expected_sku
    *   The SKU.
    * @param string $expected_price_number
    *   The price.
    * @param string $expected_price_currency_code
    *   The currency code.
+   * @param string $expected_created_time
+   *   The creation time of the product variation.
+   * @param string $expected_product_id
+   *   The id of the product.
+   * @param string $expected_order_item_title
+   *   The title.
+   * @param string $expected_order_item_type_id
+   *   The order item type.
    */
-  public function assertProductVariationEntity($id, $expected_sku, $expected_price_number, $expected_price_currency_code) {
+  public function assertProductVariationEntity($id, $expected_owner_id, $expected_sku, $expected_price_number, $expected_price_currency_code, $expected_created_time, $expected_product_id, $expected_order_item_title, $expected_order_item_type_id) {
     $variation = ProductVariation::load($id);
     $this->assertInstanceOf(ProductVariation::class, $variation);
+    $this->assertSame($expected_owner_id, $variation->getOwnerId());
     $this->assertSame($expected_sku, 'towel-bath-001', $variation->getSku());
-    $this->assertSame($expected_price_number, $variation->getPrice()
-      ->getNumber());
-    $this->assertSame($expected_price_currency_code, $variation->getPrice()
-      ->getCurrencyCode());
+    $this->assertSame($expected_price_number, $variation->getPrice()->getNumber());
+    $this->assertSame($expected_price_currency_code, $variation->getPrice()->getCurrencyCode());
+    $this->assertSame($expected_created_time, $variation->getCreatedTime());
+    $this->assertSame($expected_product_id, $variation->getProductId());
+    $this->assertSame($expected_order_item_title, $variation->getOrderItemTitle());
+    $this->assertSame($expected_order_item_type_id, $variation->getOrderItemTypeId());
   }
 
   /**
diff --git a/tests/src/Kernel/d6/Ubercart/OrderItemTest.php b/tests/src/Kernel/d6/Ubercart/OrderItemTest.php
index 084cc51..546d1af 100644
--- a/tests/src/Kernel/d6/Ubercart/OrderItemTest.php
+++ b/tests/src/Kernel/d6/Ubercart/OrderItemTest.php
@@ -52,7 +52,9 @@ class OrderItemTest extends Ubercart6TestBase {
    * Test order item migration from Drupal 6 to 8.
    */
   public function testOrderItem() {
-    $this->assertOrderItem(2, '1.00', 'Fairy cake');
+    $this->assertOrderItem(2, 2, 3, '1.00', 'Fairy cake', 1500.0000, 'NZD', 1500.000, 'NZD');
+    $this->assertOrderItem(3, 1, 1, '1.00', 'Bath Towel', 20.000000, 'NZD', 20.000000, 'NZD');
+    $this->assertOrderItem(4, 1, 2, '1.00', 'Beach Towel', 15.000000, 'NZD', 15.000000, 'NZD');
 
     $order_item = OrderItem::load(2);
     // Test that both product and order are linked.
diff --git a/tests/src/Kernel/d6/Ubercart/OrderTest.php b/tests/src/Kernel/d6/Ubercart/OrderPaymentTest.php
similarity index 60%
copy from tests/src/Kernel/d6/Ubercart/OrderTest.php
copy to tests/src/Kernel/d6/Ubercart/OrderPaymentTest.php
index a93d1ef..185c492 100644
--- a/tests/src/Kernel/d6/Ubercart/OrderTest.php
+++ b/tests/src/Kernel/d6/Ubercart/OrderPaymentTest.php
@@ -2,17 +2,15 @@
 
 namespace Drupal\Tests\commerce_migrate\Kernel\d6\Ubercart;
 
-use Drupal\commerce_order\Entity\Order;
-use Drupal\Tests\commerce_migrate\Kernel\CommerceMigrateTestTrait;
+use Drupal\commerce_payment\Entity\Payment;;
+use Drupal\commerce_payment\Entity\PaymentGateway;
 
 /**
  * Tests billing profile migration.
  *
  * @group commerce_migrate
  */
-class OrderTest extends Ubercart6TestBase {
-
-  use CommerceMigrateTestTrait;
+class OrderPaymentTest extends Ubercart6TestBase {
 
   /**
    * Modules to enable.
@@ -22,6 +20,8 @@ class OrderTest extends Ubercart6TestBase {
   public static $modules = [
     'path',
     'commerce_product',
+    'commerce_payment',
+    'commerce_payment_example',
   ];
 
   /**
@@ -34,25 +34,23 @@ class OrderTest extends Ubercart6TestBase {
     $this->installEntitySchema('commerce_product_variation');
     $this->installEntitySchema('commerce_order');
     $this->installEntitySchema('commerce_order_item');
-    $this->installConfig(['commerce_order']);
+    $this->installEntitySchema('commerce_payment');
+    $this->installConfig('commerce_order');
+    $this->installConfig('commerce_payment');
     $this->migrateStore();
     $this->executeMigrations([
       'd6_ubercart_billing_profile',
       'd6_ubercart_order',
     ]);
-
+    $this->executeMigration('d6_ubercart_order_payment');
   }
 
   /**
    * Test order migration from Drupal 6 to 8.
    */
   public function testOrder() {
-    $this->assertOrder(1, '1', '1492868907', '1493078815', 'fordprefect@example.com', 'validation');
-
-    /** @var \Drupal\commerce_order\Entity\OrderInterface $order */
-    $order = Order::load(1);
-    $this->assertNotNull($order->getBillingProfile());
-    $this->assertNull($order->getData('cc_data'));
+    $payment = Payment::load(1);
+    $this->assertSame('1', $payment->getOrderId());
   }
 
 }
diff --git a/tests/src/Kernel/d6/Ubercart/OrderTest.php b/tests/src/Kernel/d6/Ubercart/OrderTest.php
index a93d1ef..99c7c45 100644
--- a/tests/src/Kernel/d6/Ubercart/OrderTest.php
+++ b/tests/src/Kernel/d6/Ubercart/OrderTest.php
@@ -47,11 +47,14 @@ class OrderTest extends Ubercart6TestBase {
    * Test order migration from Drupal 6 to 8.
    */
   public function testOrder() {
-    $this->assertOrder(1, '1', '1492868907', '1493078815', 'fordprefect@example.com', 'validation');
+    $this->assertOrder(1, '1', '1', '1492868907', '1493078815', 'fordprefect@example.com', 'validation', '10.1.1.2', '3', '1493078815');
+    $this->assertOrder(2, '2', '1', '1492989920', '1493081092', 'trintragula@example.com', 'validation', '10.1.1.2', '5', '1493081092');
 
     /** @var \Drupal\commerce_order\Entity\OrderInterface $order */
     $order = Order::load(1);
     $this->assertNotNull($order->getBillingProfile());
+    $this->assertNull($order->getData('cc_data'));  $order = Order::load(2);
+    $this->assertNotNull($order->getBillingProfile());
     $this->assertNull($order->getData('cc_data'));
   }
 
diff --git a/tests/src/Kernel/d6/Ubercart/ProductTest.php b/tests/src/Kernel/d6/Ubercart/ProductTest.php
index 2ceb9fe..6f2ff51 100644
--- a/tests/src/Kernel/d6/Ubercart/ProductTest.php
+++ b/tests/src/Kernel/d6/Ubercart/ProductTest.php
@@ -45,13 +45,13 @@ class ProductTest extends Ubercart6TestBase {
    * Test product migration from Drupal 6 to 8.
    */
   public function testProduct() {
-    $this->assertProductEntity(1, 'Bath Towel', TRUE, '1492989524', ['1']);
+    $this->assertProductEntity(1, '1', 'Bath Towel', TRUE, '1492989524', ['1']);
     /** @var \Drupal\commerce_product\Entity\ProductVariation $variation */
     $variation = Product::load(1)->variations->first()->entity;
     $this->assertSame('1', $variation->id());
     $this->assertProductVariationEntity(1, 'towel-bath-001', '20.000000', 'NZD');
 
-    $this->assertProductEntity(3, 'Fairy cake', TRUE, '1492989703', ['1']);
+    $this->assertProductEntity(3, 1, 'Fairy cake', TRUE, '1492989703', ['1']);
   }
 
 }
diff --git a/tests/src/Kernel/d6/Ubercart/ProductVariationTest.php b/tests/src/Kernel/d6/Ubercart/ProductVariationTest.php
index 8b4730a..4267a63 100644
--- a/tests/src/Kernel/d6/Ubercart/ProductVariationTest.php
+++ b/tests/src/Kernel/d6/Ubercart/ProductVariationTest.php
@@ -45,12 +45,11 @@ class ProductVariationTest extends Ubercart6TestBase {
    */
   public function testProductVariation() {
     $variation = ProductVariation::load(1);
-    $this->assertProductVariationEntity(1, 'towel-bath-001', '20.000000', 'NZD');
+    $this->assertProductVariationEntity(1, '1', 'towel-bath-001', '20.000000', 'NZD', '1492867780', '1', 'Bath Towel', 'default');
 
     $product = $variation->getProduct();
     $this->assertSame('1', $product->id());
-    $this->assertProductEntity(1, 'Bath Towel', TRUE, '1492989524', ['1']);
+    $this->assertProductEntity(1, '1', 'Bath Towel', TRUE, '1492989524', ['1'], ['1']);
   }
 
 }
-
