Я использую метод Card Present для совершения транзакции. Теперь мне нужно реализовать функцию возврата денег, но я получаю ошибку
Идентификатор профиля оплаты клиента не найден в системе. Поэтому возврат средств отсюда невозможен. Возврат напрямую из системы Authorize.net.
//code for authroize payment is below
$sale = new AuthorizeNetCP(AUTHORIZENET_API_LOGIN_ID, AUTHORIZENET_TRANSACTION_KEY);
$sale->order->invoiceNumber = $user_info['invoiceNumber'];
$sale->order->description = "Order submitted by POS";
$sale->setFields(
array(
'amount' => 100,
'device_type' => '4',
)
);
$card_str = explode(";",$cart_data['swiped_card_string']);
$sale->setTrack1Data($card_str[0]);
$response = $sale->authorizeOnly();//Capture payment
// Create new customer profile
$capture = new AuthorizeNetAIM;
$response = $capture->priorAuthCapture($transaction_id,$newordertotal);//refund code.
$payment = new AuthorizeNetAIM;
$response = $payment->credit($transaction_id, $amount, $card_last_4);
Я не получаю ни одного идентификатора профиля клиента в своем ответе, пожалуйста, дайте мне знать, либо я делаю это неправильно, либо есть какой-либо другой способ возврата денег для данного пользователя карты.
Я также могу поставить ответ для вышеупомянутых функций.
Задача ещё не решена.
Других решений пока нет …