クレカ決済モジュールのデバッグ

  • 1
    いいね
  • 0
    コメント
この記事は最終更新日から1年以上が経過しています。

2015年の新入社員です。
クレカ決済用のモジュールを作成した時に、どうデバッグしたら良いか分からなかったので、自分なりに工夫した点をメモっておきます。

前提条件

クレカ決済方法には大きく2パターン
- リンク方式 ⇒ 1度決済会社のサイトに飛ばして、決済完了後にキックバックで自サイトに戻ってくる
- ゲートウェイ方式 ⇒ 自サイトから直接HTTP GET/POSTでデータを投げて、レスポンスを受け取る

今回は要件の都合上
- ゲートウェイ方式を採用
- サイトは既に稼働しており、後付で組み込むので、本番環境を弄くり回せない

困ったこと

  • カード決済の送信元にはSSLが必要なので、ローカルのテスト環境からPOSTできぬ
  • 複数リファラ契約していないので、送信元IPは基本的に本番固定
  • テストのためにSSL契約?俺俺SSL使う?どうしよう?

解決法

本番環境を介してトンネリングすれば良いのではないか
- 適当にテストディレクトリを用意して、Basic認証をかけておく
- テストディレクトリ以下で、POSTを左から右に受け流してレスポンスを右から左に受流すだけのコードを設置
- 例:https://hogehoge/test/gateway.php

あとはローカルからhttps://hogehoge/test/gateway.phpに対してデータをPOSTすれば良い。
PHPならHTTP/Request.phpさんでPOSTと同時にBasic認証もできたので楽ちんだった。
当然トンネルするのはテストのみで、アクセス先の定数をどこかで宣言しておいて、本番環境では切り替えるようにしておいた。

セキュリティ的にアウトなのかね?