diff --git a/uc_addresses.module b/uc_addresses.module
index e54adcf..a0c4500 100644
--- a/uc_addresses.module
+++ b/uc_addresses.module
@@ -1198,6 +1198,59 @@ function uc_addresses_select_addresses($uid, $context = 'default', $type = 'bill
   return $select;
 }
 
+/**
+ * Implements hook_form_FORM_ID_alter() for uc_order_create_form().
+ *
+ * Searches uc_addresses table when looking for an existing customer when creating an order.
+ *
+ * @return void
+ */
+function uc_addresses_form_uc_order_create_form_alter(&$form, &$form_state) {
+  if (isset($form_state['values']['customer']['email'])) {
+    $query = db_select('users', 'u')->distinct();
+    $query->leftJoin('uc_addresses', 'uc_addresses', 'u.uid = uc_addresses.uid');
+    $query->fields('u', array('uid', 'mail'))
+      ->fields('uc_addresses', array('first_name', 'last_name'))
+      ->condition('u.uid', 0, '>')
+      ->condition('uc_addresses.first_name', db_like(trim($form_state['values']['customer']['first_name'])) . '%', 'LIKE')
+      ->condition('uc_addresses.last_name', db_like(trim($form_state['values']['customer']['last_name'])) . '%', 'LIKE')
+      ->orderBy('uc_addresses.created', 'DESC')
+      ->range(0, $limit = 11);
+
+    $result = $query->execute();
+
+    $options = array();
+    foreach ($result as $user) {
+      $name = '';
+      if (!empty($user->first_name) && !empty($user->last_name)) {
+        $name = $user->first_name . ' ' . $user->last_name . ' ';
+      }
+      $options[$user->uid] = $name . '(' . $user->mail . ')';
+    }
+
+    $max = FALSE;
+    if (count($options) == $limit) {
+      array_pop($options);
+      $max = TRUE;
+    }
+
+    if (!empty($options)) {
+      if (!isset($form['customer']['uid']['#options'])) {
+        $form['customer']['uid'] += array(
+          '#type' => 'radios',
+          '#title' => t('Select customer'),
+          '#description' => $max ? t('More than !limit results found. Refine your search to find other customers.', array('!limit' => $limit - 1)) : '',
+          '#options' => $options,
+          '#default_value' => reset(array_keys($options)),
+        );
+      }
+      else {
+        $form['customer']['uid']['#options'] += $options;
+      }
+    }
+  }
+}
+
 // -----------------------------------------------------------------------------
 // THEMING
 // -----------------------------------------------------------------------------
