diff --git a/acme.js b/acme.js
index 1c35d4c..f708678 100644
--- a/acme.js
+++ b/acme.js
@@ -855,7 +855,11 @@ ACME._postChallenge = function (me, options, kid, auth) {
 			.catch(transformError);
 	}
 
-	return respondToChallenge();
+	if (auth.status === 'valid') {
+		return pollStatus();
+	} else {
+		return respondToChallenge();
+	}
 };
 
 // options = { domains, claims, challenges }