2016-11-11 5 views
0

У меня есть встроенный payfast pay gateway. Я не получил никакого ответа от payfast после перенаправления страницы успеха и оповещения. Каковы параметры ответа и как хранить данные транзакции в базе данных?Payfast pay gateway ITN rersponse в php

+0

Получает ли ваш notify_url ответ 200? –

+0

@ Daniel_ZA как мы можем проверить статус notify_url? –

+0

@PathikVejani Вы можете выполнить сообщение на странице с помощью Postman или любого другого подобного инструмента, а затем просмотреть ответ после этого. –

ответ

1

PayFast вернет свои return variables в вашу систему через обратный вызов ITN после того, как была произведена успешная оплата.

Эти обратные переменные только будут возвращены на ваш notify_url, если он возвращает header 200 ответ как на их documentation.

Получить информацию об оплате от PayFast, а затем сказать PayFast, что эта страница является достижимым, вызывая заголовок 200, плата двигатель будет сделать несколько попыток, один сразу же, а затем один за 10 минут снова, а затем экспоненциально больше интервалы, пока он не получит 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 код ОИППС here.