как получить реквизиты возвращенных транзакций с помощью API-интерфейса Payflow Pro на PHP
Я интегрировал платежный шлюз Payflow pro в свое приложение php и обрабатываю платежные запросы, используя Payflow в качестве платежного шлюза.
Мне нужно получить историю транзакций, которая также включает возврат средств для определенного идентификатора профиля.
Ниже приведен код, который я использую: ref - (https://github.com/rcastera/Paypal-PayFlow-API-Wrapper-Class).
require_once(__DIR__.'/Class.PayFlow.php');
$PayFlowAuth = new PayFlow($Vendor, $Partner, $User, $Password, 'single');
$PayFlowAuth->setTransactionType('R');
$PayFlowAuth->setProfileAction('I');
$PayFlowAuth->setCustomField('ORIGPROFILEID', 'RP0000000XYZ' );
$PayFlowAuth->setCustomField('PAYMENTHISTORY', 'Y' );
$PayFlowAuth->setEnvironment('live');
$PayFlowAuth->processTransaction();
$response = $PayFlowAuth->getResponse();
echo '<pre>';
print_r($response);
Я получаю ответ ниже:
Array
(
[RESULT] => 0
[RPREF] => RHX51F5D3XYZ
[PROFILEID] => RP0000000XYZ
[P_PNREF1] => BK0P6E1C2XYZ
[P_TRANSTIME1] => 19-Jun-19 04:42 AM
[P_RESULT1] => 0
[P_TENDER1] => C
[P_AMT1] => 30.00
[P_TRANSTATE1] => 8
[P_PNREF2] => BK0P6EB8DXYZ
[P_TRANSTIME2] => 21-Jul-19 04:44 AM
[P_RESULT2] => 12
[P_TENDER2] => C
[P_AMT2] => 30.00
[P_TRANSTATE2] => 1
[P_PNREF3] => BR0P6482FXYZ
[P_TRANSTIME3] => 19-Aug-19 04:52 AM
[P_RESULT3] => 0
[P_TENDER3] => C
[P_AMT3] => 30.00
[P_TRANSTATE3] => 8
)
Однако это не включает транзакцию с возмещением. Когда я ищу в диспетчере PayPal, я вижу эти 3 транзакции вместе с 1 транзакцией возврата. Я попытался изменить TRXTYPE на C (кредит), но выдает ошибку: Недействительный тендер
Итак, я ищу любое такое изменение параметра, где я могу получить историю возвращенных транзакций или может быть любым методом в api payflow pro.
Любая помощь приветствуется.
2 ответа
В конце попросили поддержку PayPal, и они ответили.
К сожалению, нет API для возврата средств за транзакции. Я свяжусь с нашими инженерами для возможного запроса функции. Я прошу прощения за доставленные неудобства.
Это правильно. Кредиты выдаются за пределами профиля, поэтому они не привязаны к нему и в результате не отображаются при выполнении вызова PAYMENTHISTORY.