платежный шлюз eWay повторяющийся платеж
Как проверить текущую транзакцию, совершенную eway, и как обновить дату и время истечения срока действия, если платеж прошел успешно.
Есть ли функция для проверки последней транзакции, совершенной eway.
$requestbody = array(
'RebillCustomerID' => $rebillCustomerID,
'RebillID' => $rebillID
);
$client = $this->createObjet();
return $result = $client->QueryTransactions($requestbody);
Я использую это, но при возврате всех деталей транзакции . Пожалуйста, помогите мне, если есть какой-либо другой вариант сделать это.
1 ответ:
Нет API, чтобы возвращать только самую последнюю транзакцию с повторением eWAY. Вы можете найти текущую транзакцию, посмотрев на самое последнее время транзакции для любой транзакции, которая не является "ожидающей" или "будущей".
Быстрый пример этого выглядит следующим образом:
$requestbody = array( 'RebillCustomerID' => $rebillCustomerID, 'RebillID' => $rebillID ); $result = $client->QueryTransactions($requestbody); $current = mostRecent($result); function mostRecent ($result){ $return = ''; foreach ($result->QueryTransactionsResult->rebillTransaction as $r) { $mostRecent = 0; if ($r->Status != 'Pending' && $r->Status != 'Future') { $curDate = strtotime($r->TransactionDate); if ($curDate > $mostRecent) { $mostRecent = $curDate; $return = $r; } } } return $return; }