2009年 12月 16

IPN(即時支払い通知)のシステム構築

以前作ったsandboxでのテスト環境を使って、別の事業を構築する為のテストを行ったらエラーに悩まされた。

IPNで通知される状態が

payment_status=Pending
pending_reason=paymentreview

となってしまう。悩んだあげく、受取人のアカウント設定がおかしいのに気付く。
前にいろいろいじったアカウントを受取人に設定したせいかも。
とりあえず変更してみる。

主要通貨を変更

  1. Profile -> Financial InformationのCurrency Balances から
  2. セレクトボックス(Select new currency)から Japanese Yen を選択し、Add Currencyボタンで追加する
  3. 追加された一覧の Japanese Yen のラジオボタンと選択し、Make Primaryボタンを押す。

ウェブ ペイメントの設定

Selling Preferences -> Website Payment Preferences から行う。

各項目は以下の通り。

Auto Return for Website Payments

Auto Return: Off
Return URL: 無し
自動復帰はフォームパラメーターで渡せるのでOff。
事業が1つしか無い場合を除き自動復帰URLをケースによって変えたい場合があるので。

Payment Data Transfer (optional)

Payment Data Transfer: Off
これもフォームで渡せるので。

Encrypted Website Payments

Block Non-encrypted Website Payment: Off
フォームパラメータの暗号化(SSLではない)されていない場合も受け取るようにする。

PayPal Account Optional

PayPal Account Optional: On
これが Off だとPayPalアカウントを持っていないと決済出来ない。
持っていない場合、PayPalへの登録が必須となってしまう。

Contact Telephone Number

Contact Telephone: Off

Express Checkout Settings

Support giropay and bank transfer payments: No

とりあえず設定はしてみたものの、IPNで返されるパラメーターは
payment_status=Pending
pending_reason=paymentreview
のままなので、テストではPendingの場合はエラーとしないで(当然 payment_statusもCompletedにならない)処理するしかないか??

 

Sign up for PayPal and start accepting credit card payments instantly.
PayPal アカウントを作成して、あなたのサイトにカード決済を導入!

More from my site

  • PerlでPayPal エクスプレスチェックアウトAPIのLandingPageオプションを使うPerlでPayPal エクスプレスチェックアウトAPIのLandingPageオプションを使う Perlモジュール Business::PayPal::API PayPalのAPIを使う時は Business::PayPal::API というモジュールが便利。 先日のエントリー PayPal利用時の決済フローを考える でLandingPageオプションの事を書いたのですが、Business::PayPal::API […]
  • EC-CUBE 2.11 + PayPal ウェブペイメントプラスの動作はなかなか良いかもEC-CUBE 2.11 + PayPal ウェブペイメントプラスの動作はなかなか良いかも EC-CUBE […]
  • PayPalウェブペイメントスタンダードもリニューアルしたんだねPayPalウェブペイメントスタンダードもリニューアルしたんだね 随分前に、PayPalのsandboxで見た事があったんだけど、いつの間にかリリースしていた決済画面。 ウェブペイメントスタンダードの欠点だったPayPal会員以外がクレジットカード決済するのに分かりにくい・・・っていうのが改善された感じ。 ウェブサイト自体も日本語化がかなり進んでいるみたいだし、日本でも本格的に活動していきそうな感じがする。 実際かなり便利 […]
  • EC-CUBE PayPal決済モジュールのチェック機構を強化するEC-CUBE PayPal決済モジュールのチェック機構を強化する EC-CUBE PayPal決済モジュールの注意点の続き PayPal決済モジュールのチェック機構を強化 とりあえずのコードを書いてみた。 なれないPHPだし、PostgreSQLだしで、いいのか悪いのか判断できません。 基本的にEC-CUBE本体から拾ったコードを再利用しただけです。 コードはEC-CUBE 開発コミュニティサイト - […]
  • PayPal利用時の決済フローを考えるPayPal利用時の決済フローを考える ウェブ ペイメント スタンダードを利用した場合 PayPalで決済する際、ウェブ ペイメント […]
  • EC-CUBE PayPal決済モジュールの注意点EC-CUBE PayPal決済モジュールの注意点 PayPal決済モジュールはチェックが甘い? PayPal決済モジュールは支払先のメールアドレス(receiver_email)の正当性しかチェックしていない。 支払われた金額のチェックを行っていないため、(ポストされる内容を変更など)不正な金額を支払ったとしても入金済みにしてしまう。 PayPalから届く入金確認メールの金額と違っていないか確認する必要がある。 […]

Filed under: PayPal

Trackback Uri


2 Comments.

  • とおりすがり says:

    この場合Test Accountsにあるテストアカウント一覧で、受取人のPayment ReviewがEnabled(レビューが必要)になっている可能性があります。

  • admin says:

    なるほど、そういう事ですか。
    Disabledにする必要がある・・・と言う事ですね。
    参考になりました。



コメントする