diff --git a/regcode.module b/regcode.module
index 7f979d82d7345b6264b1071d726dad662c06f254..984b6c069b055f1183c7b64e2d687cf68f4f91e2 100644
--- a/regcode.module
+++ b/regcode.module
@@ -581,6 +581,20 @@ function regcode_generate($length, $output, $case) {
  * Regcode delete action.
  */
 function regcode_delete_action(&$object, $context = array()) {
+  
+  //get code
+  $code = regcode_load($object->rid);
+  
+  // Remove terms
+  $keys = array_keys($code->tags);
+  
+  foreach ($keys as $term) {
+    db_delete('regcode_term')
+      ->condition('rid', $object->rid)
+      ->condition('tid', $term)
+      ->execute();
+  }
+  
   db_delete('regcode')
     ->condition('rid', $object->rid)
     ->execute();
