diff --git a/jirafe.admin.inc b/jirafe.admin.inc
index af1f54c..4c65d38 100644
--- a/jirafe.admin.inc
+++ b/jirafe.admin.inc
@@ -109,9 +109,16 @@ function jirafe_dashboard_admin_page_submit($form, $form_state) {
 
     // If the request was successful, redirect to the dashboard.
     drupal_set_message(t('Jirafe configuration successfully updated.'), 'status');
+
+    // This will synchronize users and sites between the actual site and
+    // Jirafe's servers.
+    jirafe_synchronize();
+
+    // Redirect user to the dashboard.
     drupal_goto('admin/commerce/jirafe');
   }
   catch (Exception $e) {
     drupal_set_message(t('The credentials could not be verfied, please try again.'), 'error');
   }
+
 }
diff --git a/jirafe.install b/jirafe.install
index d8070d7..0c3c88e 100644
--- a/jirafe.install
+++ b/jirafe.install
@@ -29,3 +29,18 @@ function jirafe_requirements($phase) {
   }
   return $requirements;
 }
+
+/**
+ * Synchronize jirafe's configuration between actual site and Jirafe's servers.
+ */
+function jirafe_update_7001() {
+  // Since we need the site's uri when sunchronizing data, ensure that the user
+  // use the --uri option if we run this update with drush.
+  if (drupal_is_cli()) {
+    if (drush_get_option('uri') == 'http://default') {
+      throw new DrupalUpdateException('You need to use the --uri option when doing this update with drush.');
+    }
+  }
+  module_load_include('inc', 'jirafe', 'jirafe.jirafe');
+  jirafe_synchronize();
+}
