diff --git uc_payment.ca.inc uc_payment.ca.inc
index 164637f..c31911b 100644
--- uc_payment.ca.inc
+++ uc_payment.ca.inc
@@ -168,6 +168,11 @@ function uc_payment_ca_condition() {
 // Check the current order balance.
 function uc_payment_condition_order_balance($order, $settings) {
   $balance = uc_payment_balance($order);
+  if ($settings['include_authorizations']) {
+    foreach ((array) $order->data['cc_txns']['authorizations'] as $auth_id => $data) {
+      $balance -= $data['amount'];
+    }
+  }
 
   switch ($settings['balance_comparison']) {
     case 'less':
@@ -201,6 +206,14 @@ function uc_payment_condition_order_balance_form($form_state, $settings = array(
     '#default_value' => isset($settings['balance_comparison']) ? $settings['balance_comparison'] : 'equal',
   );
 
+  $form['include_authorizations'] = array(
+    '#type' => 'checkbox',
+    '#title' => t('Include authorizations?'),
+    '#description' => t('Should "authorization only" credit card transactions be used in calculating the order balance?')
+    '#options' => $options,
+    '#default_value' => isset($settings['include_authorizations']) ? $settings['include_authorizations'] : FALSE,
+  );
+
   return $form;
 }
 
