diff --git a/main.py b/main.py
index cf23146..552f6c6 100755
--- a/main.py
+++ b/main.py
@@ -310,6 +310,7 @@ def adviceLastSN(requestId, modem):
         logger.info(u'USSD response: {0}'.format(message))
         
         lastSNFromHistory = xltunai.getLastSNFromHistoryMessage(message)
+        lastTrxTypeFromHistory = xltunai.getLastTrxTypeFromMessage(message)
         
         if response.sessionActive:
             response.cancel()
@@ -320,17 +321,16 @@ def adviceLastSN(requestId, modem):
                 sleep(15)
                 adviceLastSN(requestid, modem)
                 
-        elif lastSNFromHistory == 'NON RELOAD':
+        elif lastTrxTypeFromHistory and lastTrxTypeFromHistory.find('RELOAD') < 0:
             topupMessage = "Topup gagal berdasarkan advice. Trx terakhir adalah P2P Transfer."
             pushTopupStatus(requestId, '40', topupMessage)
             DISABLE_SEM = 0
-            
+                
         elif lastSNFromHistory == LAST_SN:
             topupMessage = "Topup gagal berdasarkan advice. {0} = {1}. {2}".format(lastSNFromHistory, LAST_SN, message)
             pushTopupStatus(requestId, '40', topupMessage)
             DISABLE_SEM = 0
             
-            
         else:
             topupMessage = "SN={0}; Topup berhasil berdasarkan advice. {1}".format(lastSNFromHistory, message)
             LAST_SN = lastSNFromHistory
diff --git a/test_xltunai.py b/test_xltunai.py
index 391010a..89ccefb 100644
--- a/test_xltunai.py
+++ b/test_xltunai.py
@@ -140,3 +140,7 @@ def test_getSNFromCashInMessage():
 
 def test_getSNFromSentTransferMessage():
     assert xltunai.getSNFromSentTransferMessage('Kirim uang ke 6287886957795 an DIDIT ARIYANTO   sebesar Rp 580000 berhasil pada 20/02/2016 21:48:54.Ref id 79811319924606. Info hub 817') == '79811319924606'
+
+def test_getLastTrxTypeFromMessage():
+    assert xltunai.getLastTrxTypeFromMessage('Transaksi Terakhir :\n39535056518697/750000/22-02-2016 08:36:59/P201602181759182040246743/P201602181759182039246781/P2P TRANSFER') == 'P2P TRANSFER'
+    assert xltunai.getLastTrxTypeFromMessage('Transaksi Terakhir :\n99345514064378/5500/21-02-2016 15:34:58/M201312021528418273770285/P201511211752675316198716/RELOAD XL 5000') == 'RELOAD XL 5000'
diff --git a/xltunai.py b/xltunai.py
index 8eb400e..008577a 100644
--- a/xltunai.py
+++ b/xltunai.py
@@ -171,9 +171,14 @@ def getMasaAktifFromUssdResponseMessage(message):
     return time.strftime("%Y-%m-%d", masa_aktif)
     
 def getLastSNFromHistoryMessage(message):
-    if not re.findall(r"RELOAD", message):
-        return 'NON RELOAD'
-        
     sn = re.findall(r"Transaksi Terakhir\s:\s(\d+)", message)
     if sn:
         return sn[0]
+
+def getLastTrxTypeFromMessage(message):
+    try:
+        trxType = message.split('/')[-1]
+        return trxType
+    except:
+        return
+