Paypal と SagePay で支払いを処理するために、CI-Merchant を Codeigniter プロジェクトに統合しています。
http://ci-merchant.org/から paypal_express のデモを実行しましたが、うまくいきました (または、サンプル コードを使用したときに少なくとも適切なエラーが発生しました - 以下のペイパル コードの応答を参照してください)。
Merchant_response Object
(
[_status:protected] => failed
[_message:protected] => Security header is not valid
[_reference:protected] =>
[_data:protected] =>
[_redirect_url:protected] =>
[_redirect_method:protected] => GET
[_redirect_message:protected] =>
[_redirect_data:protected] =>
)
Sagepay のコードを更新しました。次のとおりです。
public function index()
{
$this->load->helper('language');
$this->load->library('merchant');
$this->merchant->load('sagepay_direct');
$settings = array (
'vendor' => 'testvendor',
'test_mode' => FALSE,
'simulator_mode' => TRUE,
);
$this->merchant->initialize($settings);
$params = array(
'description'=>'Test purchase',
'currency'=>'GBP',
'transaction_id'=>'12345',
'email'=>'test@person.com',
'first_name'=>'Test',
'last_name'=>'Person',
'address1'=>'1 Random Avenue',
'address2'=>'Made Up Drive',
'city'=>'Notarealcity',
'postcode'=>'FA11 1KE',
'country'=>'UK',
'region'=>'',
'phone'=>'0101010101',
'amount'=>125.00,
'card_no'=>'4444444444444444',
'name'=> 'Mr Test',
'card_type' => 'VISA',
'exp_month'=> 11,
'exp_year'=> 15,
'csc'=> 999
);
$response = $this->merchant->purchase($params);
echo '<pre>';
print_r($response);
exit;
}
そのコードからの出力は
Merchant_response Object
(
[_status:protected] => failed
[_message:protected] =>
[_reference:protected] =>
[_data:protected] =>
[_redirect_url:protected] =>
[_redirect_method:protected] => GET
[_redirect_message:protected] =>
[_redirect_data:protected] =>
)
何が間違っているのかについての情報を私に与えていません。
私は有効なベンダー名を使用しており、サーバーの IP アドレスを SagePay シミュレーターに入力しました。リクエストの送信元のページは https であり、リクエストの送信元の URL は Sage Pay シミュレーターのアカウント セクションに追加されています。
うまくいくはずですが、今は立ち往生しています-これについて何か助けていただければ幸いです。
前もって感謝します
ジェイソン