diff --git a/src/main/java/ntnu/idatt2016/v233/SmartMat/controller/group/FridgeController.java b/src/main/java/ntnu/idatt2016/v233/SmartMat/controller/group/FridgeController.java
index fb012aae049f3db7aadc4948e3fddf0ae7797e8e..6e6ce1e9aaa065dc0e066b664933686eb301bb9d 100644
--- a/src/main/java/ntnu/idatt2016/v233/SmartMat/controller/group/FridgeController.java
+++ b/src/main/java/ntnu/idatt2016/v233/SmartMat/controller/group/FridgeController.java
@@ -51,10 +51,15 @@ public class FridgeController {
         } catch (Exception e) {
             return ResponseEntity.notFound().build();
         }
-        if (fridgeService.addProductToFridge(groupId, productId)) {
-            return ResponseEntity.ok("Success");
+
+        try {
+            if (fridgeService.addProductToFridge(groupId, productId)) {
+                return ResponseEntity.ok("Success");
+            }
+            return ResponseEntity.badRequest().body("Product already exists in the fridge");
+        } catch (Exception e) {
+            return ResponseEntity.status(500).body("Internal server error");
         }
-        return ResponseEntity.badRequest().build();
     }
 
     /**
@@ -73,10 +78,15 @@ public class FridgeController {
         } catch (Exception e) {
             return ResponseEntity.notFound().build();
         }
-        if (fridgeService.removeProductFromFridge(groupId, productId)) {
-            return ResponseEntity.ok("Success");
+
+        try {
+            if (fridgeService.removeProductFromFridge(groupId, productId)) {
+                return ResponseEntity.ok("Success");
+            }
+            return ResponseEntity.badRequest().body("Product not found in the fridge");
+        } catch (Exception e) {
+            return ResponseEntity.status(500).body("Internal server error");
         }
-        return ResponseEntity.badRequest().build();
     }
 
 }
diff --git a/src/main/java/ntnu/idatt2016/v233/SmartMat/service/group/FridgeService.java b/src/main/java/ntnu/idatt2016/v233/SmartMat/service/group/FridgeService.java
index 3ac7943626711aefedd436633b10d8484c153bad..c36c80847d01bace953ebdacab1494ae1a1db874 100644
--- a/src/main/java/ntnu/idatt2016/v233/SmartMat/service/group/FridgeService.java
+++ b/src/main/java/ntnu/idatt2016/v233/SmartMat/service/group/FridgeService.java
@@ -44,8 +44,13 @@ public class FridgeService {
     public boolean addProductToFridge(long groupId, long ean) {
         Optional<Product> product = productService.getProductById(ean);
         Fridge fridge = fridgeRepository.findByGroupId(groupId).orElseThrow(() -> new IllegalArgumentException("Fridge does not exist"));
-        if(product.isPresent()) {
-            fridge.getProducts().add(product.get());
+
+        if (product.isPresent()) {
+            Product productToAdd = product.get();
+            if (fridge.getProducts().contains(productToAdd)) {
+                return false;
+            }
+            fridge.getProducts().add(productToAdd);
             fridgeRepository.save(fridge);
             return true;
         } else {
@@ -64,8 +69,13 @@ public class FridgeService {
     public boolean removeProductFromFridge(long groupId, long ean) {
         Optional<Product> product = productService.getProductById(ean);
         Fridge fridge = fridgeRepository.findByGroupId(groupId).orElseThrow(() -> new IllegalArgumentException("Fridge does not exist"));
+
         if (product.isPresent()) {
-            fridge.getProducts().remove(product.get());
+            Product productToRemove = product.get();
+            if (!fridge.getProducts().contains(productToRemove)) {
+                return false;
+            }
+            fridge.getProducts().remove(productToRemove);
             fridgeRepository.save(fridge);
             return true;
         } else {