diff --git a/EventListener/Response/CreateListener.php b/EventListener/Response/CreateListener.php
index <HASH>..<HASH> 100644
--- a/EventListener/Response/CreateListener.php
+++ b/EventListener/Response/CreateListener.php
@@ -42,10 +42,15 @@ class CreateListener implements EventSubscriberInterface
      */
     public function buildResponse(ResponseEvent $event)
     {
-        if (
-            $event->getAction() !== 'create' &&
-            !$event->getContent() instanceof Resource
-        ) {
+        if ($event->getAction() !== 'create') {
+            return;
+        }
+
+        $event
+            ->getResponse()
+            ->setStatusCode(Response::HTTP_CREATED);
+
+        if (!$event->getContent() instanceof Resource) {
             return;
         }
 
@@ -57,7 +62,6 @@ class CreateListener implements EventSubscriberInterface
         );
         $event
             ->getResponse()
-            ->setStatusCode(Response::HTTP_CREATED)
             ->headers
             ->add([
                 'Location' => $this->urlGenerator->generate(
set status code even when a collection has been created