diff --git a/lift-paypal/src/main/scala/net/liftweb/paypal/Paypal.scala b/lift-paypal/src/main/scala/net/liftweb/paypal/Paypal.scala
index a1ef4af..5057b47 100644
--- a/lift-paypal/src/main/scala/net/liftweb/paypal/Paypal.scala
+++ b/lift-paypal/src/main/scala/net/liftweb/paypal/Paypal.scala
@@ -328,6 +328,8 @@ private[paypal] class PaypalIPNPostbackReponse(val response: List[String]) exten
 object SimplePaypal extends PaypalIPN with PaypalPDT {
   val paypalAuthToken = "123"
   def actions = {
+    case (PaypalTransactionStatus.CompletedPayment, info, resp) => 
+      Log.info("Got a completed payment message via IPN")
     case (status, info, resp) =>
       Log.info("Got a verified PayPal IPN: "+status)
   }
@@ -427,7 +429,7 @@ trait PaypalIPN extends BasePaypalTrait {
     super.dispatch ::: List(nf)
   }
 
-  def actions:  PartialFunction[(PaypalTransactionStatus.Value, PayPalInfo, Req), Unit]
+  def actions:  PartialFunction[(Box[PaypalTransactionStatus.Value], PayPalInfo, Req), Unit]
 
   protected case class IPNRequest(r: Req, cnt: Int, when: Long)
   protected case object PingMe
@@ -455,9 +457,8 @@ trait PaypalIPN extends BasePaypalTrait {
             tryo {
               val resp = PaypalIPN(r, mode, connection)
 
-              for (info <-  buildInfo(resp, r);
-                   stat <- info.paymentStatus) yield {
-                actions((stat, info, r))
+              for (info <-  buildInfo(resp, r)) yield {
+                actions((info.paymentStatus, info, r))
                 true
               }
             } match {
