diff --git a/uc_store/countries/india_356_2.cif b/uc_store/countries/india_356_3.cif
similarity index 80%
rename from uc_store/countries/india_356_2.cif
rename to uc_store/countries/india_356_3.cif
index 94adba3..d28b72c 100644
--- a/uc_store/countries/india_356_2.cif
+++ b/uc_store/countries/india_356_3.cif
@@ -13,7 +13,7 @@ function india_install() {
       'country_name' => 'India',
       'country_iso_code_2' => 'IN',
       'country_iso_code_3' => 'IND',
-      'version' => 2,
+      'version' => 3,
     ))
     ->execute();
 
@@ -44,14 +44,15 @@ function india_install() {
     array(356, 'ML', 'Meghalaya'),
     array(356, 'MZ', 'Mizoram'),
     array(356, 'NL', 'Nagaland'),
-    array(356, 'OR', 'Orissa'),
+    array(356, 'OR', 'Odisha'),
     array(356, 'PY', 'Puducherry'),
     array(356, 'PB', 'Punjab'),
     array(356, 'RJ', 'Rajasthan'),
     array(356, 'SK', 'Sikkim'),
+    array(356, 'TG', 'Telangana'),
     array(356, 'TN', 'Tamil Nadu'),
     array(356, 'TR', 'Tripura'),
-    array(356, 'UL', 'Uttarakhand'),
+    array(356, 'UT', 'Uttarakhand'),
     array(356, 'UP', 'Uttar Pradesh'),
     array(356, 'WB', 'West Bengal'),
   );
@@ -123,5 +124,33 @@ function india_update($version) {
         ->execute();
 
       break;
+
+    case 3:
+      // Add some missing zones
+      $zones = array(
+        array(356, 'TG', 'Telangana'),
+      );
+
+      $query = db_insert('uc_zones')->fields(array('zone_country_id', 'zone_code', 'zone_name'));
+      foreach ($zones as $zone) {
+        $query->values($zone);
+      }
+      $query->execute();
+
+      // Correct zone name
+      db_update('uc_zones')
+        ->fields(array('zone_name' => 'Odisha', 'zone_code' => 'OR'))
+        ->condition('zone_country_id', 356)
+        ->condition('zone_code', 'OR')
+        ->execute();
+
+      // Correct ISO-3166-2 code
+      db_update('uc_zones')
+        ->fields(array('zone_name' => 'Uttarakhand', 'zone_code' => 'UT'))
+        ->condition('zone_country_id', 356)
+        ->condition('zone_code', 'UL')
+        ->execute();
+
+      break;
   }
 }
diff --git a/uc_store/uc_store.countries.inc b/uc_store/uc_store.countries.inc
index fb7ca44..9fde51f 100644
--- a/uc_store/uc_store.countries.inc
+++ b/uc_store/uc_store.countries.inc
@@ -337,7 +337,7 @@ function uc_country_update($country_id, $version) {
   if ($func_base !== FALSE) {
     $func = $func_base . '_update';
     if (function_exists($func)) {
-      for ($i = $country->version; $i <= $version; $i++) {
+      for ($i = $country->version + 1; $i <= $version; $i++) {
         $func($i);
       }
     }
