2016-11-11 101 views
0

我已經集成了payfast支付網關。重定向成功頁面並通知頁面後,我沒有從payfast獲得任何迴應。什麼是響應參數以及如何將事務詳細信息存儲在數據庫中?Payfast支付網關ITN回覆在php

+0

您的notify_url是否返回200響應? –

+0

@Daniel_ZA我們如何檢查notify_url的狀態? –

+0

@PathikVejani您可以使用Postman或任何其他類似的工具在頁面上執行帖子,然後查看回復。 –

回答

1

付款成功後,PayFast將通過ITN回撥將其return variables退還給您的系統。

這些返回變量將只有如果它返回一個header 200響應按他們的documentation返回到您的notify_url

從PayFast收到付款信息,然後告訴PayFast此頁面是由觸發接頭200到達,付款引擎會做出一些嘗試,立刻再10分鐘後一個一遍,然後呈指數在較長間隔,直到它從您的Web服務器收到OK 200。

您將能夠通過$_POST變量訪問返回的值,並使用它們來更新數據庫。

// Notify PayFast that information has been received 
header('HTTP/1.0 200 OK'); 
flush(); 

// Posted variables from ITN 
$pfData = $_POST; 

//update db 
switch($pfData['payment_status']) 
{ 
case 'COMPLETE': 
    // If complete, update your application, email the buyer and process the transaction as paid      
break; 
case 'FAILED':      
    // There was an error, update your application 
break; 
default: 
    // If unknown status, do nothing (safest course of action) 
break; 
} 

您可以查看PayFast示例PHP ITN代碼here