Payumoney возврат API в php
В моем мобильном приложении я настроил Payumoney отлично, и он отлично работает. Это просто случай возврата. Ниже приведен код в php-файле, который я вызываю из приложения:
include('../connection.php');
$orderid="AMD197";
$view_rs =$conn->prepare("SELECT * from tbl_payumoney_order WHERE orderid=:orderid");
$view_rs->execute(array(':orderid'=>$orderid));
$vfetch=$view_rs->fetch();
$merchantId="393463";
$paymentId= $vfetch['paymentId'];
$refundAmount= $vfetch['amount'];
$merchantAmount= $vfetch['amount'];
$aggregatorAmount= "0";
$refundType="1";
$data_string="paymentId=".$paymentId."&refundAmount=".$refundAmount."&refundType=".$refundType."&merchantId=".$merchantId."&merchantAmount=".$merchantAmount."&aggregatorAmount=".$aggregatorAmount;
//paymentId=123456&refundAmount=56&refundType=1&merchantId=765433&merchantAmount=6&aggregatorAmount=50
$ch = curl_init();
$url = "https://test.payumoney.com/payment/refund/refundPayment";
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_POST, true); /* tell curl you want to post something*/
curl_setopt($ch, CURLOPT_POSTFIELDS,$data_string); /* define what you want to post*/
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); /* return the output in string format*/
$headers = array();
$headers[] = 'Content-Type: application/json';
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
$output = curl_exec ($ch);
$info = curl_getinfo($ch);
$data = json_decode($output, true);
print_r($data);
$status= $data['status'];
$message= $data['message'];
$result= $data['result'];
Я получаю этот ответ:
Array ([status] => -1 [row] => 0 [message] => что-то пошло не так guid 3k4pcbv6kdqf405g0lut7id32m sessionId null [результат] => [guid] => 3k4pcbv6kdqf405g0lut7id32m [sessionId] =] null [sessionId] => null
Кто-нибудь может подсказать, если я здесь что-то не так делаю?
1 ответ
API возврата не работает в тестовой / песочнице.
Ниже вы найдете API возврата для реальной среды:
Пожалуйста, передайте ключ продавца, идентификатор платежа и сумму в параметрах, а заголовок авторизации - в заголовках.
Что-то пошло не так... ошибка возникла в конце PayUmoney из-за ошибки сервера 500, 502, 503 или 504 в вашем приложении или на сайте в соответствии с документацией API PayUmoney.
Чтобы узнать больше об этих HTTP-кодах ответа, вам нужно перейти по ссылке ниже:
https://en.wikipedia.org/wiki/List_of_HTTP_status_codes
Также обновите свой Curl, чтобы получить больше информации в случае неисправности, как показано ниже:
$output = curl_exec($ch);
if ($output === false){
// throw new Exception('Curl error: ' . curl_error($output));
print_r('Curl error: ' . curl_error($output));
}
Если вы все еще не уверены в своей проблеме, лучше обратиться в службу поддержки PayUmoney.