diff --git a/coolamqp/handler.py b/coolamqp/handler.py
index aed7aea1fd7173e41798188082423cf28914fad1..7b07bff0787e769fb485784934cdfe0d5bebc257 100644
--- a/coolamqp/handler.py
+++ b/coolamqp/handler.py
@@ -210,10 +210,13 @@ class ClusterHandlerThread(threading.Thread):
         Order acknowledging a message.
         :param receivedMessage: a ReceivedMessage object to ack
         :param on_completed: callable/0 to call when acknowledgemenet succeeded
+        :return: an AcknowledgeMess
         """
-        self.order_queue.append(AcknowledgeMessage(receivedMessage.connect_id,
+        a = AcknowledgeMessage(receivedMessage.connect_id,
                                                    receivedMessage.delivery_tag,
-                                                   on_completed=on_completed))
+                                                   on_completed=on_completed)
+        self.order_queue.append(a)
+        return a
 
 
     def _do_nackmessage(self, receivedMessage, on_completed=None):
@@ -222,6 +225,8 @@ class ClusterHandlerThread(threading.Thread):
         :param receivedMessage: a ReceivedMessage object to ack
         :param on_completed: callable/0 to call when acknowledgemenet succeeded
         """
-        self.order_queue.append(NAcknowledgeMessage(receivedMessage.connect_id,
-                                                 receivedMessage.delivery_tag,
-                                                 on_completed=on_completed))
+        a = NAcknowledgeMessage(receivedMessage.connect_id,
+                                receivedMessage.delivery_tag,
+                                on_completed=on_completed)
+        self.order_queue.append(a)
+        return a
diff --git a/coolamqp/messages.py b/coolamqp/messages.py
index fde01b2e179c2bbf326f504741875e34e948fe22..a3667bdaffa7891d41db024bdc46c47ada5f7034 100644
--- a/coolamqp/messages.py
+++ b/coolamqp/messages.py
@@ -47,16 +47,18 @@ class ReceivedMessage(Message):
 
         :param on_completed: callable/0 to call on acknowledged. Callable will be executed in
             ClusterHandlerThread's context.
+        :return: an Order, that can ve waited upon for a result
         """
-        self.cht._do_nackmessage(self, on_completed=on_completed)
+        return self.cht._do_nackmessage(self, on_completed=on_completed)
 
     def ack(self, on_completed=None):
         """
         Acknowledge this message to the broker.
         :param on_completed: callable/0 to call on acknowledged. Callable will be executed in
             ClusterHandlerThread's context.
+        :return: an Order, that can ve waited upon for a result
         """
-        self.cht._do_ackmessage(self, on_completed=on_completed)
+        return self.cht._do_ackmessage(self, on_completed=on_completed)
 
 
 class Exchange(object):
diff --git a/setup.py b/setup.py
index 07e0a05b2468a0ebe9bf1cfc1d581f7d7bcae1d8..c206b4d6d222d1e4aa36a9b96fec6a50ba4629bc 100644
--- a/setup.py
+++ b/setup.py
@@ -3,7 +3,7 @@
 from distutils.core import setup
 
 setup(name='CoolAMQP',
-      version='0.5',
+      version='0.6',
       description='The AMQP client library',
       author=u'DMS Serwis s.c.',
       author_email='piotrm@smok.co',