diff --git a/migration_templates/d6_ubercart_order_payment.yml b/migration_templates/d6_ubercart_order_payment.yml
index 20ec4c6..d2a7e01 100644
--- a/migration_templates/d6_ubercart_order_payment.yml
+++ b/migration_templates/d6_ubercart_order_payment.yml
@@ -10,6 +10,7 @@ source:
   constants:
     type: payment_manual
     gateway: example
+    currency_code: NZD
 process:
   payment_id: receipt_id
   type: 'constants/payment_manual'
@@ -21,8 +22,8 @@ process:
     source: order_id
 #  remote_id:
 #  remote_state:
-#  'amount/number':
-#  'amount/currency_code':
+  'amount/number': amount
+  'amount/currency_code': 'constants/currency_code'
 #  'refunded_amount/number':
 #  'refunded_amount/currency_code':
 #  state:
diff --git a/tests/src/Kernel/d6/Ubercart/OrderPaymentTest.php b/tests/src/Kernel/d6/Ubercart/OrderPaymentTest.php
index 3277e84..d16efb8 100644
--- a/tests/src/Kernel/d6/Ubercart/OrderPaymentTest.php
+++ b/tests/src/Kernel/d6/Ubercart/OrderPaymentTest.php
@@ -2,11 +2,11 @@
 
 namespace Drupal\Tests\commerce_migrate\Kernel\d6\Ubercart;
 
-use Drupal\commerce_payment\Entity\Payment;;
+use Drupal\commerce_payment\Entity\Payment;
 use Drupal\commerce_payment\Entity\PaymentGateway;
 
 /**
- * Tests billing profile migration.
+ * Tests payment migration.
  *
  * @group commerce_migrate
  */
@@ -55,9 +55,45 @@ class OrderPaymentTest extends Ubercart6TestBase {
   /**
    * Test order migration from Drupal 6 to 8.
    */
-  public function testOrder() {
-    $payment = Payment::load(1);
-    $this->assertSame('1', $payment->getOrderId());
+  public function testPayment() {
+    $this->assertPayment(1, '1', 'payment_default', 'example', NULL, '37.990000', 'NZD', '37.990000', 'NZD', '37.99 NZD', '37.990000', 'NZD', 'new');
+  }
+
+  /**
+   * @param int $id
+   *   The payment id.
+   * @param string $expected_order_id
+   *   The order id for this payment.
+   * @param string $expected_type
+   * @param string $expected_gateway_id
+   *   The gateway id.
+   * @param string $expected_payment_method
+   * @param string $expected_amount
+   *   The payment amount.
+   * @param string $expected_amount_currency_code
+   *   The payment currency code.
+   * @param string $expected_balance
+   *   The order balance.
+   * @param string $expected_balance_currency_code
+   *   The order balance currency code.
+   * @param string $expected_label
+   * @param string $expected_refunded_amount
+   * @param string $expected_refunded_amount_currency_code
+   * @param string $expected_state
+   */
+  private function assertPayment($id, $expected_order_id, $expected_type, $expected_gateway_id, $expected_payment_method, $expected_amount, $expected_amount_currency_code, $expected_balance, $expected_balance_currency_code, $expected_label, $expected_refunded_amount, $expected_refunded_amount_currency_code, $expected_state) {
+    $payment = Payment::load($id);
+    $this->assertSame($expected_order_id, $payment->getOrderId());
+    $this->assertSame($expected_type, $payment->getType()->getPluginId());
+    $this->assertSame($expected_gateway_id, $payment->getPaymentGatewayId());
+    $this->assertSame($expected_payment_method, $payment->getPaymentMethodId());
+    $this->assertSame($expected_amount, $payment->getAmount()->getNumber());
+    $this->assertSame($expected_amount_currency_code, $payment->getAmount()->getCurrencyCode());
+    $this->assertSame($expected_balance, $payment->getAmount()->getNumber());
+    $this->assertSame($expected_balance_currency_code, $payment->getAmount()->getCurrencyCode());
+    $this->assertSame($expected_label, $payment->label());
+    $this->assertSame($expected_refunded_amount, $payment->getAmount()->getNumber());
+    $this->assertSame($expected_refunded_amount_currency_code, $payment->getAmount()->getCurrencyCode());
   }
 
 }
