diff --git a/R/importWQP.R b/R/importWQP.R
index 14f5b5ebac6df26fceafc2c638c7ef7c958d227d..93766b48788ce800c7d2f8f9366f51441aae40be 100644
--- a/R/importWQP.R
+++ b/R/importWQP.R
@@ -30,6 +30,14 @@
 #' }
 importWQP <- function(obs_url, zip=FALSE, tz=""){
   
+  if(tz != ""){
+    tz <- match.arg(tz, c("America/New_York","America/Chicago",
+                          "America/Denver","America/Los_Angeles",
+                          "America/Anchorage","America/Honolulu",
+                          "America/Jamaica","America/Managua",
+                          "America/Phoenix","America/Metlakatla"))
+  }
+  
   if(zip){
     h <- basicHeaderGatherer()
     httpHEAD(obs_url, headerfunction = h$update)
@@ -49,7 +57,6 @@ importWQP <- function(obs_url, zip=FALSE, tz=""){
     
     if(headerInfo['status'] == "200"){
       doc <- unzip(temp)
-      unlink(temp)
     } else {
       unlink(temp)
 
@@ -61,14 +68,6 @@ importWQP <- function(obs_url, zip=FALSE, tz=""){
     headerInfo <- attr(doc, "headerInfo")
   }
     
-  if(tz != ""){
-    tz <- match.arg(tz, c("America/New_York","America/Chicago",
-                          "America/Denver","America/Los_Angeles",
-                          "America/Anchorage","America/Honolulu",
-                          "America/Jamaica","America/Managua",
-                          "America/Phoenix","America/Metlakatla"))
-  }
-    
   numToBeReturned <- as.numeric(headerInfo["Total-Result-Count"])
   
   if (!is.na(numToBeReturned) & numToBeReturned != 0){
@@ -132,7 +131,10 @@ importWQP <- function(obs_url, zip=FALSE, tz=""){
     if(all(is.na(retval$ActivityEndDateTime))){
       retval$ActivityEndDateTime <- NULL
     }
-                
+    if(zip){
+      unlink(doc)
+    }
+    
     return(retval)
   
   } else {