2-я авторизация не удалась

Я хочу реализовать 2checkout для своего сайта. Я использую учетную запись песочницы и тестирую код на localhost. Я следовал этому уроку https://github.com/2Checkout/php-examples.
Мой код более или менее похож на код на этой странице, но я продолжаю получать неудачную авторизацию даже для информации о кредитной карте, ответ которой должен быть успешным.
Вот мой взгляд, который имеет форму

    <div class="container">
<div class="row">
<div class="col-md-12 text-center">
<h2>Checkout</h2>
</div>
</div>

<div class="row">
<div class="col-md-6 col-md-offset-3">
<form class="form-horizontal" id="myCCForm" action="<?php echo base_url().'two_checkout/sale';?>" method="post">
<input id="token" name="token" type="hidden" value="">
<input id="order_id" name="order_id" type="hidden" value="<?php echo $order_id;?>">
<div class="form-group">
<label class="col-xs-2">
<span>Card Number</span>
</label>
<div class="col-xs-10">
<input class="form-control" id="ccNo" type="text" size="20" placeholder="Debit/Credit Card Number" value="" autocomplete="off" required />
</div>
</div>
<div class="form-group">
<label class="col-xs-2">
<span>Expiration Date (MM/YYYY)</span>
</label>
<div class="col-md-10">
<div class="row">
<div class="col-xs-3">
<select class="form-control" id="expMonth" required>
<option value="">Month</option>
<option value="01">Jan</option>
<option value="02">Feb</option>
<option value="03">Mar</option>
<option value="04">Apr</option>
<option value="05">May</option>
<option value="06">June</option>
<option value="07">July</option>
<option value="08">Aug</option>
<option value="09">Sep</option>
<option value="10">Oct</option>
<option value="11">Nov</option>
<option value="12">Dec</option>
</select>
</div>
<div class="col-xs-3">
<input class="form-control" type="text" size="2" id="expYear" placeholder="Year" required>
</div>
</div>
</div>
</div>
<div class="form-group">
<label class="col-xs-2"">
<span>CVV</span>
</label>
<div class="col-xs-4">
<input class="form-control" id="cvv" size="4" type="text" value="" placeholder="Security Code" autocomplete="off" required />
</div>
</div>
<input type="submit" class="btn btn-success" value="Pay Now">
</form>
</div>
</div>
</div>

Вот мой метод продажи, который обрабатывает почтовые данные

public function sale(){

$order = $this->order_model->getOrderById($this->input->post('order_id'));

if(!$order) redirect('home');

// Your sellerId(account number) and privateKey are required to make the Payment API Authorization call.
Twocheckout::privateKey('my private key');
Twocheckout::sellerId('my seller id');

// If you want to turn off SSL verification (Please don't do this in your production environment)
Twocheckout::verifySSL(false);  // this is set to true by default

// To use your sandbox account set sandbox to true
Twocheckout::sandbox(true);

try {
$charge = Twocheckout_Charge::auth(array(
"merchantOrderId" => $this->input->post('order_id'),
"token" => $this->input->post('token'),
"currency" => 'USD',
"total" => number_format($order['total'],2)

));
if ($charge['response']['responseCode'] == 'APPROVED') {
echo "Thanks for your Order!";
echo "<h3>Return Parameters:</h3>";
echo "<pre>";
print_r($charge);
echo "</pre>";
}
} catch (Twocheckout_Error $e) {
print_r($e->getMessage());
}}//end method sale

Я включил vardump в метод продажи, чтобы убедиться, что токен и order_id не были пустыми, а на самом деле они не были пустыми, поэтому данные публикуются правильно. Есть идеи, в чем может быть проблема?

0

Решение

Форма также должна содержать имя покупателя, адрес электронной почты и полный платежный адрес. Это потому, что я использую встроенную проверку. Нашел решение моей проблемы после прочтения 2проверка документации Больше

 "billingAddr" => array(
"name" => 'Testing Tester',
"addrLine1" => '123 Test St',
"city" => 'Columbus',
"state" => 'OH',
"zipCode" => '43123',
"country" => 'USA',
"email" => 'example@2co.com',
"phoneNumber" => '555-555-5555'
)
0

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector