[Tep-j-general] Re: クロネコ@ペイメントのモジュール

Back to archive index

Yamamoto, Akira akira****@lares*****
2003年 5月 27日 (火) 12:06:04 JST


こんにちは。
ひさしくROMしていた山本です。旧ML以来です。

他社クレジットカードの連動について、いつかモジュールにしたいと思ってい
たのですが、当方はずいぶんとカスタマイズしていて、というか、ほぼ全体が、
オリジナルなため、二の足を踏んでいました。

現在テスト中の新バージョンがリリース後に行おうかと思っていたところです。

田村さんが、
> できれば、モジュールを公開してもらえませんでしょうか?
> モジュールの制作については、こちらでもお手伝いできますよ。
との、暖かいお言葉があったので、共同で作ってもらえないでしょうか?

私の方の案を示しますので、実装からテストまで行って、CVSに入れて欲しい
なんて思ったりします。

で、その前に、
> こういった接続プログラム(モジュール)を公開していいかどうかは、
> クロネコ@ペイメントの側で条件をつけているんでしょうか。
との懸念ですが、先月か先々月にメールで実際に聞いてみました。

「クロネコ@ペイメント対応方法」として、「ソース」を公開しても良いか、
と聞いたところ、回答としては、

『公開しても良いが、ヤマトコレクトサービス社(またはヤマト運輸)が提携
しているような誤解を与える説明にはしないでください』ということでした。

ということで、以下に私の案を示します。

仕様:クロネコ@ペイメントは、注文確定後に金額と氏名、メールアドレスなど
をFORMからクロネコ@ペイメントへPOSTする仕組み。したがって、お客様から見
た処理フローは次のようにする。

1)注文画面で、支払方法にクレジットカードを表示する。

2)クレジットカードが選択された場合は、注文確認画面で、クレジットカード
の仕組みをお知らせする。
    注文確定後に、リンクボタンからクロネコ@ペイメントの画面に移って、そ
こで、クレジットカード番号を入力してもらいます、という説明。

3)「注文する」ボタンを押してもらって、注文を確定させる。
    この時点で、注文確認メールが送信される。またDBに記録される。
    (通常は、この次に、注文終了の画面がでてしまう)

4)注文確認画面と同じようなフォーマットで、支払方法欄に、「リンクボタン」
を表示した画面(仮にクレジット案内画面と呼ぶ)を表示する。

5)「リンクボタン」を押すと、別ウィンドウでクロネコ@ペイメントの画面が
表示される。その先は、お客様とクロネコ@ペイメントにまかせる。

6)クレジット案内画面の一番下には、「注文を終了する」ボタンを置く。
    「次へ」でも良いかも。

7)「注文を終了する」ボタンを押すと、注文終了画面が表示される。


実装:

A1) 支払いモジュールを新規に作成する。
moneyorder.php を credit_after_process.phpなどの名前をつけてコピー。
DESCRIPTION等の定数の名前を変更して、言語ファイルに定義する。
function after_process() の中に記入。
   必要な情報、注文番号や支払い金額などをセッションにセットする。
   新しい「クレジット案内画面」へリダイレクトする。
A2)「クレジット案内画面」を作成する。
   checkout_confirmation.phpをコピーして、checkout_credit.phpを作る。
   支払方法の表示欄に、クロネコ@ペイメントから案内されたソースを記入。
   FORMの値に、セッションからとった注文番号や氏名をセット。
   最後の「注文する」ボタンの表示とSUBMIT先を変更し、A3の処理を行う。
A3)クレジット案内終了処理を作成する。
   checkout_process.phpをコピーして、checkout_credit_process.phpを作る。
   ほとんどが注文の処理なので、これを削除。
   $payment_modules->after_process();の次の行の、カートのクリアから下の
   みにする。

備考:
・注文処理後に、カートの内容をクリアしてないので、その時点で他の画面に移
動されると問題かも。その場合は、「クレジット案内画面」に、注文明細を表示
しないようにすれば、良い。リンクボタンの表示のみ。
  その上で、after_process() でカートの内容をクリアしてしまう。

・クロネコ@ペイメントのようなサービスを利用する場合は、クレジットカード
番号は、osCommerce側で入力しない。

・おそらく別のクレジット処理サービスに流用が可能。

ファイル名は、適当につけました。現在私は、kuroneko.phpとかですが、
他のクレジット処理に流用する場合も考慮してみました。
仕様が良くないという場合は、改良していきましょう。
MS1RC2は、ぜんぜん見ていないので、そちらにも合っているといいのですが。


長くなりましたが、まずは提案ということで、中途半端で申し訳ありませんが、
ご協力お願いします。

------------------------------------------------------------------------
Akira Yamamoto <akira****@lares*****>
------------------------------------------------------------------------




Tep-j-general メーリングリストの案内
Back to archive index