Welcart1.5での外部モジュール使用カード決済について
-
投稿者投稿
-
2015年10月7日 10:50 AM #75959ebtak参加者
——————————————-
WordPress のバージョン:4.3.1
Welcart のバージョン:1.5.2
ご利用のテーマ:Calm
症状を確認したブラウザ:
サーバー(会社名、サービス名):
SSLの利用: あり
WordPress のパーマリンク設定:
——————————————–いつもお世話になっております。
私はクロネコWEBコレクトをモジュールを経由して利用しております。
今回の1.5へのアップデートにおいてカード決済関係がいくつか変更になったとありましたので
テスト環境にて確認したところやはりエラー(エラー0)が出てしまいNGでした。function.phpへの記述は下記の通りです。
// kuroneko決済 add_filter('usces_filter_confirm_inform', function($html, $payments, $acting_flag, $rand, $purchase_disabled) { if($acting_flag != 'kuroneko.php') return $html; return $html . '<input type="hidden" name="acting" value="kuroneko" />'; }, 99, 5); // kuroneko決済2 add_filter('usces_filter_cartcompletion_page_body', function($nothing, $usces_entries, $usces_carts) { if( !isset($_REQUEST['acting']) || $_REQUEST['acting'] != 'kuroneko') return; $html = '<form id="purchase_form" action="https://payment.kuronekoyamato.co.jp/webcollect/settleSelectAction.gw" method="post" onKeyDown="if (event.keyCode == 13) {return false;}" Accept-charset="Shift_JIS">'. '<input type="hidden" name="TRS_MAP" value="V_W02">'. '<input type="hidden" name="trader_code" value="加盟店番号">'. '<input type="hidden" name="order_no" value="'. esc_attr($usces_entries['order']['ID']) . '">'. '<input type="hidden" name="settle_price" value="'. esc_attr($usces_entries['order']['total_full_price']) . '">'. '<input type="hidden" name="goods_name" value="商品">'. '<input type="hidden" name="buyer_name_kanji" value="' . esc_attr($usces_entries['customer']['name1']) . '' . esc_attr($usces_entries['customer']['name2']) . '">'. '<input type="hidden" name="buyer_name_kana" value="' . esc_attr($usces_entries['customer']['name3']) . '' . esc_attr($usces_entries['customer']['name4']) . '">'. '<input type="hidden" name="buyer_tel" value="'. esc_attr($usces_entries['customer']['tel']) . '">'. '<input type="hidden" name="buyer_email" value="'. esc_attr($usces_entries['customer']['mailaddress1']) . '">'. '<div class="send">'. '<input type="submit" name="purchase" id="purchase_button" class="checkout_button" value="クロネコでお支払手続きをする"onClick="modChar(this.form)" />'. '</div>'. '</form>'; return $html; }, 99, 3);
アップデート差分を見ましたがなにせ素人なもので解決策を見いだせませんでした。
事が主要決済に関する事ですので変更に伴う対応策等、ご助言頂ければ助かります。
※現在は1.4のまま稼働中です。2015年10月8日 12:31 PM #75988yskysmrキーマスターこんにちは。
1.5 では、決済関連では「イプシロン決済(外部リンク型)を追加」しましたが、モジュール型の決済を使えないようにしたわけではございません。あくまで”イプシロンの”決済モジュールをお使いだった方に、もう決済モジュールを使わなくてもいいですよ、とのアナウンスをしているだけです。
カスタマイズでモジュールタイプの決済をされている場合、カスタマイズ部分に関しましては、弊社ではご意見を申し上げることは出来兼ねます。何卒ご容赦くださいませ。
2015年10月8日 1:00 PM #75990ebtak参加者なるほど、了解しました。
settlementフォルダが空になっていたのでその辺のご助言があればと思ったのですが。
他の決済方法も検討しつつ解決方法を模索してみようかと思います。
ありがとうございました。2015年10月9日 7:39 AM #76011uishi参加者kuroneko.phpにパスが通ってないのでは?
決済モジュールに関してはwelcartのシステム設定でURLではなく
フルパスで設定すればどこにでもおけますよ。
たぶんこれに入ってる。
$usces->options['settlement_path']
welcartがアップデートされても上書きされないところにおいておくといいかもしれません。
wordpressのプラグインのアップデートは一度今あるのを全削除して、
一からインストールなのでプラグイン内でカスタマイズしてると一緒に削除されるんでしたかね。
素人なんで見当違いならごめんなさい。2015年10月9日 10:45 AM #76015ebtak参加者uishi様
返答ありがとうございます。
決済モジュールのPluginフォルダ外設置及びフルパス再指定は設定済みなんです。
またそのような場合にはエラー0では無く決済選択ページのラジオボタンに
「使用停止中」
のような表記が出て決済選択自体が出来なくなるんですよね。
ご助言ありがとうございました。2015年10月13日 8:56 AM #76050uishi参加者当方もクロネコのクレジット払いができなくなりました。
症状は上記の内容で注文ボタンを押すとカートのページに戻ります。
コンプリートのページへ送るフォームの内容はきちんとできています。
一般的にこういう場合actionの指定先がおかしいのでしょうか。2015年10月13日 12:19 PM #76055uishi参加者当方もクロネコのクレジット払いができなくなりました。
症状は上記の内容で注文ボタンを押すとカートのページに戻ります。
コンプリートのページへ送るフォームの内容はきちんとできています。2015年10月13日 2:30 PM #76062uishi参加者注文ボタンを押すとwc_cart_page.phpに戻ってしまって注文も登録されない。
フォームがおかしいのでしょうか。
追伸
投稿の編集ができなくなったんですね。
さわってたら無駄なレスをしてしまいましたすいません。2015年10月13日 3:57 PM #76063uishi参加者クレーマーのようで気が引けるのですが
acting_transaction.logの中身に
[2015-10-12 15:48:51] Epsilon : Socket Error
が連続して記録されているのでが、
このようにログに記録される場合ってどんな場合がるのでしょうか。
ヒントが欲しくてあせっています。
お見苦しい点はご容赦ください。2015年10月14日 9:51 AM #76073uishi参加者メモです。
決済1のフックでの動作は正しいと思いますが、ボタンを押した後、
黒猫は決済サイトとの情報のやり取り(認証)の仕組みがないので完了しないんだと思います。
(そういうサービスもありますが今回のは関係ないと思います。)
決済2は現状では関係ないと思います。望ましいのは分岐がtrue(actingがfalse)でfalseの場合でも外部へ認証を求めず販売を完了し、完了画面で決済サイトへのリンクと販売内容のformをつくること(決済2がそうです)ではないでしょうか。
2015年10月14日 2:25 PM #76076uishi参加者テスト環境なのでSSLなしで以前と同様のコードで注文すると
クエリーにacting=epsilonが表示されます。エラーページが表示されます。
試しに、決済方法を代金引換にして、「支払方法名」が一致するときは
決済1をフックした場合、一応完了するようです。2015年10月16日 11:34 AM #76090uishi参加者代行業者決済 actingのフラグ(?)があった場合の
purchase_button.phpのdefaultの挙動がかわってないでしょうか。そもそもクロネコの特定のサービスの場合
welcartで購入「完了」後、クロネコで決済するので
「代行業者決済」を選ぶ必然がなかったのかも。基本設定の支払いに「外部サイト決済」という
確認画面にactingフラグが立たない選択を一つ増やしてもらった方が
いいかもしれません。2015年10月19日 11:00 AM #76105yskysmrキーマスターebtak様、uishi様
Welcart を修正いたしました。直接の原因かわからないのですが、関連のありそうなところを修正してみました。
大変お手数ですが、Development Version にアップデートしてご確認くださいますでしょうか。
よろしくお願いいたします。2015年10月19日 11:51 AM #76110uishi参加者yskysmr様
お忙しい中手を尽くしてくださりありがとうございます。
テスト環境ですが以前のコードで動きました。ただ今回の件で思ったのは、
welcartサイトで売上登録完了後、別の手段で決済する場合、
決済の際に必要な登録情報をどうするかだけ解決すれば、
代行業者決済ではないほうがいいかもとは思いました。
wp_nonceもデフォルトで入るし。
代金引換に支払名以外のフラグを立てて、
決済1の段階ででactingフラグを立てればいいだけなので。
(自分が代行業者のフックにしたのは以前のpaypalの支払い方法を参考にしたからだけ)いずれにせよお時間おとりいただきありがとうございました。
-
投稿者投稿
- このトピックに返信するにはログインが必要です。