Zen-Cart日本語版 PayPal対応
2009-12-17
先日Zen-Cart.JPのコアメンバー会議で、Zen-Cart日本語版(zen-cart-v1.3.0.2-l10n-jp-5)でPayPal IPNモジュールが動作していないという議題があり、動作確認ならびに対応するように修正を行いました。2/4追記:下記のコメント欄を参照してください。 http://www.s-page.net/ja/2009/12/17/zen-cart-paypal#comment-28944
S-pageでは、2005年よりPayPalを利用しておりますが、当時からZen-Cart英語版のものをカスタマイズして使っていますが、最近では銀行振込よりPayPalを決済方法として選択される方が多くなりました。ダウンロード販売という特性もあるとは思いますが、PayPalの日本語環境が整ってきたこととPayPalアカウントがなくてもクレジットカードがあれば購入できるという手軽さが魅力なのでしょう。 もしまだPyaPalでのビジネスアカウントをお持ちでない方は、以下のバナーをクリックして是非ご検討ください。
ちなみにPayPal IPNモジュールを利用する際は以下のように設定しておきましょう。
PayPal>個人設定>即時支払い通知(IPN)
通知 URL:Zen-CartのURL/ipn_main_handler.php
IPNを有効にする
PayPal>個人設定>ウェブ ペイメントの設定
自動復帰:オン
復帰URL:Zen-CartのURL/index.php?main_page=checkout_process
* 実際に稼動させる前に十分にテスト(自身でテスト商品を購入してみる等)してください。
* 導入された方、フィードバックいただけると幸いです。
なお、上記修正作業の動作確認のためにS-pageのPayPalモジュールを一時的に利用不可にしておりましたが、先ほど利用できるようにいたしましたので、あわせてご報告いたします。
過去のコメント / Archived comments
技術内容に関係するコメントを保存しています。投稿受付は終了しました。投稿者名・連絡先は掲載していません。
Comment #28551
2009-12-29
従前より大変お世話になっております。
「Zen-Cart日本語版 PayPal対応」につきまして、当方も本年9月頃よりPayPal IPNモジュールが正しく動作しない状態となり、貴サイトの差分を導入致しましたが、症状が全く変わらない状態です。
そこで、質問なのですが、
・当該差分は、ZOXには対応していないのでしょうか?
・あるいはZOXのバージョンが1.312ではなく1.321である必要が有るのでしょうか?
・下記環境で何か考えられる原因はございますでしょうか?
よろしくお願い致します。
使用環境:
ZenCart On XOOPS 日本語版 - free edition - v1.312
サーバー構成:
PHPバージョン 5.2.11
MySQLバージョン 5.0.88
基本設計概念 x86_64
操作システム Linux
アパッチバージョン 2.2.14 (Unix)
Comment #28890
2010-01-24
コメントありがとうございます。
他の方からも動かないという報告をいただいておりますので、
クリーンZen-Cart v1.3日本語版の環境を再度構築してテストいたします。
ZOXに関しても最新版でテストさせていただきます。
なお、テスト中は、S-pageのpaypalアカウントを利用しますので、一時的にS-pageでの決済にpaypalが利用できなくなります。ご了承のほど、よろしくお願いいたします。
Comment #28944
2010-02-04
調査の結果、12/17に投稿したものだとEUC-JPのデータを送信してしまうので、NGだということが判明しました
テストしたショップ名が英数のみだったので、問題なくテストできてしまったようです。下記のコードは、EUC-JPの2バイト文字を送信する、しないを管理画面から切り替えられるようにしたものです。
Zen-Cart管理画面>モジュール>支払い>PayPal IPNをアンインストールしてから
/includes/modules/payment/paypal.php
に上書き(EUC-JPで保存)してアップロードしてください。
アップロード後、
Zen-Cart管理画面>モジュール>支払い>PayPal IPN
からインストールを行うと、
・item_nameを送信しない(文字化け対策)
・顧客情報を送信しない(文字化け対策)
という項目が増えます。ともにTrueに設定することで2バイト文字はpaypalへ送信されなくなります。
試してみていただき、こちらのコメント欄にフィードバックしていただければ幸いです。(フィードバック後にsourceforgeへコミットしたいと思います)
こちらのテストでは、
・Zen-Cart日本語版 v1.3(v[IP省略]-l10n-jp-5)
・ZenCart On XOOPS v1.33
で動作OKでした。
なお、決済するにあたって、ショップURL/ipn_main_handler.phpにpaypalへpaypalがアクセス出来ることが必須ですので、basic認証やZOXのアクセス権限でアクセスできないとうまく動作しないのでご注意ください。
また、12/17に投稿したsourceforgeの差分から修正した方は、
/includes/modules/payment/paypal/paypal_functions.php
/includes/modules/payment/paypal.php
/ipn_main_handler.php
を元に戻してから、(v[IP省略]-l10n-jp-5のデフォルトのままに戻してから)上記コードを
/includes/modules/payment/paypal.php
に上書きしてください。
上記ソースをsourceforgeへコミットしました。
こちらから確認することができます。