diff --git a/shipping/uc_quote/uc_quote.module b/shipping/uc_quote/uc_quote.module
index 80f6a67..43084a7 100644
--- a/shipping/uc_quote/uc_quote.module
+++ b/shipping/uc_quote/uc_quote.module
@@ -417,6 +417,48 @@ function uc_quote_uc_shipping_type() {
   return $types;
 }
 
+/**
+ * Implements hook_uc_shipping_method().
+ */
+function uc_quote_uc_shipping_method() {
+  $methods = array();
+
+  $methods['free'] = array(
+    'id' => 'free',
+    'module' => 'uc_quote',
+    'title' => t('Free shipping'),
+    'quote' => array(
+      'type' => 'order',
+      'callback' => 'uc_quote_free_shipping',
+    ),
+    'operations' => array(
+      'conditions' => array(
+        'title' => t('conditions'),
+        'href' => 'admin/config/workflow/rules/components/manage/get_quote_from_free',
+        'query' => array('destination' => 'admin/store/settings/quotes'),
+      ),
+    ),
+    'enabled' => FALSE,
+  );
+
+  return $methods;
+}
+
+/**
+ * Quote callback for free shipping.
+ */
+function uc_quote_free_shipping() {
+  $quotes = array();
+
+  $quotes[] = array(
+    'rate' => 0,
+    'label' => t('Free shipping'),
+    'option_label' => t('Free shipping'),
+  );
+
+  return $quotes;
+}
+
 /******************************************************************************
  * Module Functions                                                           *
  ******************************************************************************/
