ウェブペイメントプラス インテグレーションガイド 最終更新:2012 年 6 月 1 ウェブペイメントプラスインテグレーションガイド 文書番号:10114.en_US-201206 © 2012 PayPal, Inc. All rights reserved. PayPal は PayPal,Inc.の登録商標です。PayPal ロゴは PayPal,Inc.の商標です。その他の商標およびブ ランドはそれぞれの所有者に帰属します。 本文書に記載された情報は PayPal,Inc.に帰属します。PayPal,Inc.の書面による承認なしに情報を使用、再生、開示することはできません。 Copyright © PayPal. All rights reserved. PayPal (Europe) S.à r.l. et Cie., S.C.A., Société en Commandite par Actions. Registered office: 22-24 Boulevard Royal, L-2449, Luxembourg, R.C.S. Luxembourg B 118 349. 消費者の皆様へ: PayPal™決済サービスはシンガポールの法律上プリペイド設備とみなされます。よってシンガポール通貨金融庁(Monetary Authority of Singapore)の承認を必要としません。ご利用の際は諸条件を注意深くお読みください。 免責の告知: PayPal,Inc.は、本文書の情報について、誤りを含め全て現状のまま提供しています。PayPal,Inc.は、本書に含まれる情報に関していかなる種類 (明示、暗示、法定)の保証もしないものとします。PayPal,Inc.は、誤りや脱漏、または本文書または本文書に含まれる情報の使用の結果生じる、ある いは本書に記載されている製品またはサービスの適用または使用の結果生じる損害(直接的または間接的に関らず)に対していかなる責任も負わな いものとします。PayPal,Inc.は、本書に記載されているいかなる情報も予告なしに変更する権利を留保します。 2 目次 はじめに ........................................................................................................................................................ 7 本ガイドについて .............................................................................................................................................. 7 対象 .................................................................................................................................................................... 7 改訂履歴 ............................................................................................................................................................. 7 本ガイドへのフィードバック............................................................................................................................. 8 1章 「ウェブペイメントプラス」の利用開始 ........................................................................................... 10 概要 .................................................................................................................................................................. 10 特徴とメリット ................................................................................................................................................ 10 「ウェブペイメントプラス」のしくみ ............................................................................................................ 11 「PAYPAL エクスプレスチェックアウト」のトランザクション処理 ................................................................ 12 「ウェブペイメントプラス」のインテグレーションの開始 ............................................................................ 13 2章 HTML によるウェブサイトの インテグレーション............................................................................ 14 ウェブペイメントプラスのシンプルなインテグレーション ............................................................................ 14 インテグレーションの例 ............................................................................................................. 15 HTML 変数 ....................................................................................................................................................... 16 3章 PAYPAL 支払いページのカスタマイズ............................................................................................... 20 PAYPAL アカウント設定の変更 ......................................................................................................................... 20 設定 .......................................................................................................................................... 22 カスタマイズ ............................................................................................................................. 24 HTML 変数の追加............................................................................................................................................. 30 4章 ウェブサイトへの IFRAME のインテグレーション ............................................................................ 32 IFRAME のインテグレーション .......................................................................................................................... 33 HTML によるインテグレーション ................................................................................................ 33 API によるインテグレーション.................................................................................................... 34 5章 API によるウェブサイトへのインテグレーション .............................................................................. 38 3 目次 ボタンの設置.................................................................................................................................................... 38 ウェブペイメントプラス決済におけるボタンマネージャ API の使用 ............................................................. 39 レスポンスで返される URL の使用(推奨) ................................................................................. 39 From POST の使用 ..................................................................................................................... 40 公開/秘密鍵を使ったボタンの暗号化 ............................................................................................ 42 ウェブペイメントプラスの決済の開始の例 ................................................................................... 42 BMCREATEBUTTON API 操作 .............................................................................................................................. 44 BMCreateButton リクエスト ....................................................................................................... 44 BMCreateButton レスポンス ....................................................................................................... 45 BMCreateButton エラー .............................................................................................................. 45 6章 SANDBOX でのインテグレーションのテスト............................................................................................ 48 テストアカウントの作成 .................................................................................................................................. 48 インテグレーションと設定のテスト ................................................................................................................ 52 インテグレーションのテスト ...................................................................................................... 52 設定のテスト ............................................................................................................................. 53 7章 注文処理の続行 ..................................................................................................................................... 54 トランザクションステータスと正当性の確認.................................................................................................. 54 即時支払い通知(IPN)の確認 .................................................................................................... 54 GetTransactionDetails API コールの実行 ...................................................................................... 55 注文処理の続行 ................................................................................................................................................ 55 8章 「暗号化されたウェブペイメント」によるボタンの保護............................................................................. 56 「暗号化されたウェブペイメント」で使用される公開鍵暗号方式 ................................................................. 57 「暗号化されたウェブペイメント」を使う前に証明書を設定する ................................................................. 57 OpenSSL による秘密鍵の自動生成 .............................................................................................. 58 OpenSSL による公開鍵証明書の自動生成 .................................................................................... 58 PayPal アカウントへの公開証明書アップロード ........................................................................... 58 PayPal ウェブサイトからの PayPal 公開証明書のダウンロード ..................................................... 59 公開証明書の削除 ....................................................................................................................... 59 「暗号化されたウェブペイメント」による決済ボタンの保護 ......................................................... 60 保護および暗号化されていないウェブペイメントの拒否 ............................................................... 61 4 目次 付録 A オプションの API 操作 ......................................................................................................................... 62 GETTRANSACTIONDETAILS API ............................................................................................................................ 62 GetTransactionDetails リクエスト ................................................................................................ 62 GetTransactionDetails レスポンス ................................................................................................ 63 REFUNDTRANSACTION API .................................................................................................................................. 72 RefundTransaction リクエスト .................................................................................................... 72 RefundTransaction レスポンス .................................................................................................... 73 DOCAPTURE API ................................................................................................................................................ 73 DoCapture リクエスト ................................................................................................................ 73 DoCapture レスポンス ................................................................................................................ 76 付録 B ウェブペイメントスタンダードからウェブペイメントプラスへの移行 ........................................................ 80 サンプルコードの比較 ................................................................................................................ 81 付録 C エラーメッセージ ................................................................................................................................ 84 付録 D 通貨コード ......................................................................................................................................... 98 索引............................................................................................................................................................. 100 5 目次 6 はじめに 本ガイドについて ウェブペイメントプラスインテグレーションガイドでは、ウェブペイメントプラスの実装方法について解説し ています。本書に含まれる情報は次の通りです: ウェブペイメントプラスの特徴とメリット ウェブペイメントスタンダードからウェブペイメントプラスへの移行 ウェブサイトへのウェブペイメントプラスのインテグレーション PayPal 決済ページのカスタマイズ Sandbox 環境におけるインテグレーションのテスト 注文処理を続行する前のトランザクションステータスおよび正当性の検証 対象 本ガイドは、ウェブペイメントプラスをウェブサイトに実装し、決済処理機能の拡充を目指すマーチャント向 けに記述されています。 改訂履歴 ウェブペイメントプラス インテグレーションガイド の改訂履歴は以下の通りです。 表 P.1 改訂履歴 改訂日 内容 2012 年 6 月 HTML 変数 の請求書送付先住所について、必須条件を更新。 HTML 変数、HTML 変数の追加、および BMCreateButton API 操作に値の記述制限事項 を追加。 2 章および 5 章の HTML サンプルコードを修正。 2012 月 5 月 iFrame 対応ブラウザ一覧に IE9 を追加 7 はじめに 本ガイドへのフィードバック 本ガイドの向上と改善のため、ご意見・ご質問等のフィードバックを以下までお送りください: [email protected] 8 はじめに 9 「ウェブペイメントプラス」の利用開始 概要 ウェブペイメントプラスは、PayPal アカウント経由で行われる従来型の決済に加え、クレジットカード決済 による支払いをマーチャントが受け取ることのできる決済プラットフォームです。PayPal 側でホスティング されるため、マーチャントは自社のウェブサイトでクレジットカード情報を取得・保持する必要がありません。 このため、PCI コンプライアンス(Payment Card Industry Data Security Standard, PCI DSS によるコンプラ イアンス)の達成が容易になります。 初期の導入コストや情報の管理にかかる手間を省きつつ、決済手段の拡充を図りたいマーチャントに最適なソ リューションです。 PayPal では、ウェブペイメントプラスに加えて PayPal エクスプレスチェックアウトボタンの導入をお薦め しています。エクスプレスチェックアウトボタンは、販売サイトの決済プロセスの速い段階で表示されるため、 既に PayPal アカウントを所有している購入者は、PayPal にログインし、シンプルな確認および承認作業を行 うだけで決済を完了できます。クレジットカード情報や住所情報など新たに入力する手間を省き、スムーズな 決済を実現することによって決済完了率の向上に貢献します。 特徴とメリット ウェブペイメントプラスの特徴とメリットは次の通りです: PCI コンプライアンス-Payment Card Industry (PCI) Data Security Standards (DSS) のデータセキュリ ティ基準は、カード所有者情報の収集、保存、処理、転送を行うすべての事業に適用される世界標準の セキュリティ基準です。PCI コンプライアンスソリューションの一部として PayPal のホスト型決済ペー ジをご利用いただけます。 注:ウェブペイメントプラス導入は PCI コンプライアンスの達成に有益ですが、必ずしもそれを保証す るものではありません。 iFrame対応-PayPalでは、ウェブサイトの iFrame内で実装できるコンパクトな決済フォームをご用意 しています。マーチャントはウェブサイトのデザインを維持したまま決済フォームを表示できるため、 買い手はマーチャントのウェブサイト内にいる感覚で支払いを行えます。クレジットカードフィールド は決済フォームの一部なので、この情報を別途収集する必要はありません。詳細については、3 章「PayPal 支払いページのカスタマイズ」を参照してください。 バーチャル端末-主要クレジットカード対応の PayPal オンライン決済フォーム機能により、電話、ファ ックス、郵送による注文にも対応できます。 PayPalエクスプレスチェックアウト-PayPalアカウントをお持ちの方にご利用いただける 2 クリック決 済オプションです。詳細は 9 ページの「PayPalエクスプレスチェックアウトのトランザクション処理」 を参照してください。 主要クレジットカード対応-Visa、MasterCard、JCB の各社クレジットカードに対応しています。 10 「ウェブペイメントプラス」の利用開始 「ウェブペイメントプラス」のしくみ 「ウェブペイメントプラス」のしくみ 上の図では、PayPal アカウントを使って支払う場合を上のフローで示し、カードを使って支払う場合を下の フローで示しています。 ウェブサイトにウェブペイメントプラスを実装する手順は以下の通りです: 1. HTML または API を使って、ウェブサイトの決済ページにボタンを生成します。ボタンには「支払い」 、 「購入」などのラベルを付けます。買い手がこのボタンをクリックすると、PayPal がホストする支払い ページにリダイレクトされます。 2. 支払いページで、買い手はクレジットカードの情報を入力し、 [今すぐ支払う]ボタンをクリックします。 買い手は PayPal アカウントを所有している必要はありませんが、所有している場合にはそのアカウント を使うことも可能です。 3. トランザクションが完了すると、買い手に PayPal の確認ページが表示されるか、マーチャントが指定す る URL にリダイレクトされます。トランザクションで問題が生じた場合は、エラーメッセージが表示さ れます。買い手はエラーを修正してトランザクションを再試行することができます。 マーチャントは、自社のウェブサイト(ロゴを含め)のデザインを反映するよう支払いページをカスタマイズ することができます。 11 「ウェブペイメントプラス」の利用開始 「PayPal エクスプレスチェックアウト」のトランザクション処理 「PayPalエクスプレスチェックアウト」のトランザクション処理 PayPal エクスプレスチェックアウトは、 PayPal のプレミアム決済ソリューションです。エクスプレスチェ ックアウトを利用すると、買い手はより簡単に支払いを行うことができ、売り手は全体的な決済プロセスへの コントロールを維持したまま PayPal 決済を利用することができます。支払いの際、買い手は PayPal アカウ ントに保存されている配送先情報を使用できるため、マーチャントのサイトで再度同じ情報を入力する必要は ありません。 [PayPal でチェックアウト]ボタンは、商品ページとショッピングカートページのいずれにも表 示することができるため、決済成立を増加させるために大変有効なツールとなっています。 PayPal エクスプレスチェックアウトの決済の流れは次の通りです。 1. 買い手は、購入する商品をウェブサイトで選択した後、 [PayPal で支払う]ボタンをクリックします。 2. 買い手は PayPal サイトにリダイレクトされ、ログイン ID とパスワードを使って PayPal にログインし ます。 3. ログイン後、注文内容を確認して[続行]をクリックし、トランザクションを承認します。 4. 買い手はマーチャントのウェブサイトに戻って注文の詳細を確認後、トランザクションを完了します。 PayPalエクスプレスチェックアウトの詳細については、 『エクスプレス・チェックアウトシステム統合ガイド』 を参照してください。 12 「ウェブペイメントプラス」の利用開始 「ウェブペイメントプラス」のインテグレーションの開始 「ウェブペイメントプラス」のインテグレーションの開始 ウェブペイメントプラスへの登録完了後、次の手順に従ってウェブペイメントプラスをウェブサイトに実装し ます: 1. ウェブサイトをウェブペイメントプラスと接続します。決済プロセスの中で、買い手がクリックして支 払いを開始する[支払い]ボタンを設置するポイントを決めます。接続は、HTMLまたはAPIを利用して 行います。[支払い]ボタンをクリックすると、買い手のブラウザが PayPalの支払いページにリダイレ クトされ、決済処理が開始します。実装手順については、ご利用の実装方法に応じ、2 章「HTMLによる ウェブサイトのインテグレーション」または 5 章「APIによるウェブサイトのインテグレーション」を ご参照ください。 2. オプション:HTTP変数を送信するか、PayPalアカウント設定を編集することにより、PayPalサーバー にある支払いページのデザインや内容をカスタマイズすることができます。詳細は 3 章「PayPal支払い ページのカスタマイズ」を参照してください。 3. オプション:Sandbox環境で実装テストを行います。この手順については、6 章「Sandboxでのインテグ レーションのテスト」で説明します。 13 HTMLによるウェブサイトの インテグレーション 本章では、ウェブペイメントプラスによる決済処理を開始するための最も手軽な実装方法、シンプルなインテ グレーションについて説明します。 注 : PayPal では、まずシンプルなインテグレーションでウェブペイメントプラスのインテグレーションに慣 れてから、より高度なカスタマイズを行うようお薦めしています。 シンプルインテグレーションの一貫として、支払いページにデフォルトの設定を取得します。ウェブサイトに 合わせて支払いページのデザインをカスタマイズするには、以下のいずれかの方法で行います。 17 ページの「PayPalアカウント設定の変更」で解説されている手順に従って「個人設定」セクションの 設定を変更します。 表 2.1「支払いページの設定に使用する HTML変数」および表 3.1「支払いページのデザインに使用す る HTML変数」を参照し、該当する HTML変数を支払いページに追加します。 重要:HTML 変数により、個人設定ページに保存している設定が上書きされます。 ウェブペイメントプラスのシンプルなインテグレーション ウェブサイトにウェブペイメントプラスを実装するにあたり、決済プロセスの中で買い手が支払いボタンをク リックして決済処理を開始するポイントを決定します。ボタンには「支払いの続行」、 「支払い」などのラベル を付け、クリックと同時に PayPal への Form POST を実行するよう設定する必要があります。ボタンがクリ ックされると、買い手のブラウザが PayPal 支払いページにリダイレクトされ、買い手はクレジットカードも しくは PayPal アカウントを利用して支払いを行うことができます。 Form POST には、トランザクションを記述する一連の HTML 変数が含まれます。Form POST では次の情報 を指定する必要があります。 Subtotal-トランザクションの金額 Business-セキュアなマーチャント ID(個人設定ページ参照)または PayPal アカウントに関連付けら れているメールアドレス Paymentaction-トランザクションが最終的な売買に対する支払いアクションか、売買の承認アクション (支払いは追って回収)かを示します。 デフォルト通貨は米ドル(USD)で設定されています。このほか、表 2.1「支払いページの設定に使用する HTML 変数」に記載されている HTML 変数を使って支払いページで収集したい情報をカスタマイズしたり、 表 3.1「支払いページのデザインに使用する HTML 変数」に記載されている HTML 変数を使ってページのデ ザインをカスタマイズすることができます。支払いが問題なく完了すると、買い手に PayPal の確認ページが 表示されるか、マーチャントが指定した URL にリダイレクトされます。 14 HTML によるウェブサイトのインテグレーション ウェブペイメントプラスのシンプルなインテグレーション 支払いページからマーチャントのウェブサイトにリダイレクトされる際、クエリ文字列の戻り先URLにトラン ザクション IDが付加されます。このトランザクションIDは、ステータスを取得してトランザクションの信頼 性を検証するのに使用できます。注文処理を続行する前にトランザクションの信頼性を検証する方法について は、7 章「注文処理の続行」を参照してください。 インテグレーションの例 以下は、ウェブペイメントプラスのシンプルなインテグレーションの例です: 1. ウェブペイメントプラス Form POST のサンプルコード: <form action="https://securepayments.paypal.com/cgi-bin/acquiringweb" method="post"> <input type="hidden" name="cmd" value="_hosted-payment"> <input type="hidden" name="subtotal" value="50"> <input type="hidden" name="business" value="HNZ3QZMCPBAAA"> <input type="hidden" name="paymentaction" value="sale"> <input type="hidden" name="return" value="https://yourwebsite.com/receipt_page.html"> <input type="submit" name="METHOD" value="Pay"> </form> 2. 太字テキストは、対応する変数の値です。これらの値は、引用符("")で囲むことお薦めします。値の詳 細については、表 2.1「支払いページの設定に使用する HTML変数」を参照してください。 ウェブサイトで買い手が決済に進むポイントに HTML テキストを出力します。 3. 決済ページを開き、ボタンをクリックして PayPal 支払いページが開くことを確認します。 PayPal Sandbox環境で実装テストを行うことも可能です。 PayPal Sandbox環境における実装テストの 詳細については、6 章「Sandboxでのインテグレーションのテスト」を参照してください。 15 HTML によるウェブサイトのインテグレーション HTML 変数 HTML変数 次の表は、ウェブリクエストと併せてトランザクション詳細情報を送信するために使用できるウェブペイメン トプラス HTML変数の一覧です。支払いページのデザインをカスタマイズするためのHTML変数の一覧につい ては、表 3.1「支払いページのデザインに使用する HTML変数」を参照してください。 注:渡す値には、次の特殊文字を含むことができません:(){}<>¥"; 注:EC サイトによっては、取引後に支払い情報を必須で渡さなければならない場合があります。iFrame の使 用を予定している場合は特に、最初にインテグレーションテストを行い、支払い情報フィールドが必須 か否か確認することをお薦めします。 表 2.1 支払いページの設定に使用するHTML変数 変数 説明 必須 address1 配送先住所の番地(1) いいえ address2 配送先住所の番地(2) いいえ address_override 引き渡された住所が買い手に表示されます。編集はできません。住 いいえ 所にエラーがあった場合にはこの変数は上書きされます。可能な値 は true/false です。デフォルト値は false です。 billing_address1 請求書送付先住所の番地(1) 条件付き billing_address2 請求書送付先住所の番地(2) いいえ billing_city 請求書送付先住所の市区町村名 条件付き billing_country 請求書送付先住所の国コード 条件付き billing_first_name 商品の請求先個人の名 条件付き billing_last_name 商品の請求先個人の姓 条件付き billing_state 請求書送付先住所の国名 条件付き billing_zip 請求書送付先住所の郵便番号 条件付き bn ボタンのコードの生成ソースを示します。 形式-<会社>_<サービス>_<製品>_<国> business PayPal アカウントに関連付けられている登録メールアドレス、ま いいえ はい たは PayPal ID(セキュアなマーチャント ID)。PayPal.com の「個 人設定」ページトップに表示される PayPal ID を使用することをお 勧めします。 buyer_email cancel_return 買い手のメールアドレス。 買い手が[(マーチャント名)のサイトに戻る]リンクをクリック いいえ いいえ すると、買い手のブラウザがこの URL にリダイレクトされます。 http:// または https:// を含む完全な URL を入力してください。 16 HTML によるウェブサイトのインテグレーション HTML 変数 表 2.1 支払いページの設定に使用する HTML変数 変数 説明 必須 cbt PayPalの確認ページ上の[(マーチャント名)のサイトに戻る]リンク用 いいえ のテキストを設定します。ビジネスアカウントの場合、「(マーチャント 名)」の代わりに事業名がデフォルト表示されます。 注:shopping_url変数を設定する必要があります。 city 配送先住所の市区町村 いいえ country 配送先住所の国名 いいえ currency_code 支払いの通貨。デフォルト通貨は米ドルです。 いいえ custom 支払い人には提示されないパススルー変数 いいえ first_name 商品の配送先個人の名 いいえ handling 取扱い手数料。この金額は合計金額の subtotalに加算されます。 いいえ invoice マーチャントの注文/請求システムの注文番号 いいえ last_name 商品の配送先個人の姓 いいえ lc ログインページまたは登録ページの言語 いいえ night_phone_a 米国の電話番号の市外局番、または米国外の電話番号の国コード。これに いいえ より買い手の自宅の電話番号が事前入力されます。 night_phone_b 米国の電話番号の上3桁、または米国外の電話番号の国コードを除く全番 いいえ 号。これにより、買い手の自宅の電話番号が事前入力されます。 注:この変数は米国以外の番号に使用します。 night_phone_c 米国の電話番号の下4桁の番号。これにより、買い手の自宅の電話番号が事 いいえ 前入力されます。 notify_url 即時支払い通知の形式でPayPalがトランザクションに関する情報を掲示す いいえ るURL。 http:// または https:// を含む完全なURLを入力してください。 paymentaction トランザクションが最終的な売買に対する支払いアクションか、売買の承 認アクション(支払いは追って回収)かを示します。 許容変数-承認または売買 デフォルト変数-売買 17 HTML によるインテグレーション HTML 変数 表 2.1 支払いページの設定に使用する HTML変数 変数 説明 必須 return 支払い完了後に買い手のブラウザがリダイレクトされる先のURL。 いいえ http:// または https:// を含む完全なURLを入力してください。 shipping 配送料。この金額は合計金額のsubtotalに加算されます。 いいえ state 配送先住所の都道府県 いいえ subtotal トランザクションの金額。送料、取扱い手数料および税金が指定されてい ない場合、この金額が合計金額になります。 はい tax 税金。この金額は合計金額のsubtotal に加算されます。 いいえ zip 配送先住所の郵便番号 いいえ 18 HTML によるインテグレーション HTML 変数 19 PayPal支払いページのカスタマイズ PayPal 支払いページは、次の 2 つの方法でデザインをカスタマイズすることができます。 PayPalアカウント設定の変更 HTML変数の追加 注:HTML 変数により、個人設定ページに保存している設定が上書きされます。 PayPalアカウント設定の変更 PayPal.com の「個人設定」セクションにある「ウェブペイメント設定」で以下のページの設定を変更し、支 払いページのデザインをカスタマイズすることができます。 設定 カスタマイズ 20 PayPal 支払いページのカスタマイズ PayPal アカウント設定の変更 21 PayPal 支払いページのカスタマイズ PayPal アカウント設定の変更 設定 このページでは、支払いページで収集して表示したい情報、および支払い確認を表示する URL を指定できま す。 指定できる情報はたくさんありますが、支払いページに表示する情報は最低限に留めることをお勧めします。 例えば、送料を計算するため、支払いページに進む前に買い手が配送先住所を既に入力しており、その情報が PayPal 支払いページに渡されているとします。その場合、 「配送先住所」のオプションを支払いページで再度 表示する必要はありません。 買い手がウェブサイトですでに入力した情報については、PayPal 側に渡して支払いページで再度表示させる ことができます。情報は支払いページに自動入力され、編集も可能です。 22 PayPal 支払いページのカスタマイズ PayPal アカウント設定の変更 どの情報をウェブペイメントプラスの支払いページで表示しますか? Paypal でホスティングされる支払いページでは、 表示したいフィールドを以下から選択することができます。 カード情報-買い手のクレジットカード情報。このフィールドは常に表示され、デフォルトで選択され ています。 顧客名-買い手の氏名 請求書送付先住所-買い手の請求書送付先住所 請求先電話番号-買い手の電話番号 請求書送付先メールアドレス-買い手のメールアドレス 配送先住所-買い手の配送先住所 支払い確認をどのように表示しますか? トランザクション完了後、支払い確認を PayPal の確認ページに表示するか、それとも自社の確認ページに表 示するか選ぶことができます。 PayPal ページで支払い確認-PayPal の確認ページに支払い確認が表示されます。オプションで、確認 ページに URL を表示して買い手を自社のウェブサイトに戻すこともできます。その場合、 「顧客がお客 様のサイトに戻るための URL を入力します」の欄に URL を入力します。 会社サイトで支払い確認-支払い確認を表示するページの URL を入力し、自社の支払い確認ページで支 払い確認メッセージを表示します。このページでは、注文の明細を表示してください。注文の明細は、 戻り先 URL と一緒に PayPal から渡されるトランザクション ID により取得できます。 23 PayPal 支払いページのカスタマイズ PayPal アカウント設定の変更 カスタマイズ 24 PayPal 支払いページのカスタマイズ PayPal アカウント設定の変更 このページでは、支払いページをカスタマイズすることができます。支払いページのヘッダー、背景、タイト ル、ボタン、および注文サマリーの欄をカスタマイズできます。 PayPal では、デザインテンプレートを 3 種類ご用意しています。テンプレート A がデフォルトのテンプレー トに設定されていますが、どれでもお好きなテンプレートを選択することができます。 注:HTML の実装が完了するまで支払いページは買い手に表示されません。 支払いページのデザインをプレビューで確認します。このページで、テンプレートのデザインを変更するか、 別のテンプレートを選択してカスタマイズすることができます。デザインを変更するには、変更するセクショ ン上で左クリックするか、該当する[クリックして編集]ボタンをクリックします。ポップアップウィンドウ が表示されますので、カラーセレクタをクリックして色を変更したり、URL を入力して必要な変更を行いま す。 買い手が PayPal アカウントにログインして支払いを行う場合、決済画面のデザインを「個人設定」ページの ウェブペイメントスタンダードのカスタマイズオプションからカスタマイズすることができます。 変更完了後、次のいずれかのボタンをクリックします。 プレビュー-テンプレートへの変更を保存して公開する前にプレビューします。 保存して公開-すべての変更を保存して、更新されたテンプレートを公開します。買い手には更新され た支払いページが表示されます。 キャンセル-このセッションで行った変更をすべて破棄します。 以前のバージョン-前回テンプレートを保存した後に行った変更をすべて破棄します。買い手には前回 保存されたテンプレートが表示されます。 注:テンプレートの変更を含むすべての変更作業は、同じセッション内で行わないと変更が全て失われるため、 再び最初から変更作業をやり直す必要があります。セッションがタイムアウトすると、テンプレートデザイン は前回公開されたバージョンのままになります。 25 PayPal 支払いページのカスタマイズ PayPal アカウント設定の変更 テンプレートの選択 次の 3 種類のデザインテンプレートから選択します。 テンプレートA テンプレートB テンプレートC テンプレート A. デフォルト設定-ヘッダーをカスタマイズすることができます。 図 3.1 テンプレート A 26 PayPal 支払いページのカスタマイズ PayPal アカウント設定の変更 テンプレート B. ヘッダー、背景、タイトル、ボタン、および注文サマリーの欄をカスタマイズします。 図 3.2 テンプレート B 27 PayPal 支払いページのカスタマイズ PayPal アカウント設定の変更 テンプレート C. ヘッダー、背景、タイトル、およびボタンをカスタマイズできます。 図 3.3 テンプレート C 28 PayPal 支払いページのカスタマイズ PayPal アカウント設定の変更 テンプレートのカスタマイズ テンプレートをカスタマイズする際は、以下の点を考慮して行ってください。 ヘッダー(該当テンプレート:A、B、C)-デフォルトでは、個人設定に登録されている事業名がヘッ ダーに表示されます。次の点を変更できます: - ヘッダーの高さと色 - フォントの種類、サイズ、色 - 事業名とロゴ画像の表示の切り替え - 事業名またはロゴの位置 注:変換を妨げる可能性のあるセキュリティダイアログウィンドウを避けるため、画像はセキュアなサ ーバー(https://)に格納することをおすすめします。 背景(テンプレート B、C に適用)-次の点を変更できます: - 背景色 - 背景画像の URL タイトルおよびボタン(該当テンプレート:B、C)-以下の点を変更できます: - ヘッダーの色 - タイトルバーの色とタイトルテキストの色 - ボタンの色とボタンテキストの色 注文サマリー欄(該当テンプレート:C)-以下の点を変更できます: - 列の色 - 画像 URL 29 PayPal 支払いページのカスタマイズ HTML 変数の追加 HTML変数の追加 次の表は、支払いページのデザインをカスタマイズする際に使用できるウェブペイメントプラスの HTML 変 数の一覧です。 注:渡す値には、次の特殊文字を含むことができません:(){}<>¥"; 表 3.1 支払いページのデザインに使用するHTML変数 変数 説明 bodyBgColor 支払いページの周囲背景色 bodyBgImg 支払いページの周囲背景の画像。使用できるファイル拡張子は、.gif、.jpg、.jpeg または.pngです。 cpp_header_image 支払いページの左上に配置する画像。画像の最大サイズは幅750ピクセル、高さ 90ピクセルです。セキュアサーバー(HTTPS)上に格納されている画像のみを 使用することをお薦めします。使用できるファイル拡張子は、.gif、.jpg、.jpeg または .pngです。 footerTextColor フッターテキストの色 headerBgColor ヘッダーの背景の色 headerHeight ヘッダーバナーの高さ。50~140ピクセルで設定できます。幅は940ピクセルで、 変更できません。 logoFont ロゴテキストのフォントタイプ logoFontColor ロゴテキストの色 logoFontSize ロゴテキストのフォントサイズ logoImage ロゴに表示される画像。使用できるファイル拡張子は、.gif、.jpg、.jpegまたは.png です。画像の幅が940ピクセルを超えることはできません。 logoImagePosition ロゴ内の画像の位置 logoText 個人設定ページに表示される事業名。このフィールドは編集可能で、logoImage が指定されていない場合、ここで指定したテキストがヘッダーに表示されます。 orderSummaryBgColor 支払いページの右側の注文サマリー欄の色。注文サマリーボックスの色を変更す ることはできません。 orderSummaryBgImag 注文サマリー欄に設置できる背景画象。使用できるファイル拡張子 e は、.gif、.jpg、.jpeg、または.pngです。 pageButtonBgColor [今すぐ支払う]ボタンの背景色。 pageButtonTextColor [今すぐ支払う]ボタンの色。ボタンのテキストを変更することはできません。 pageTitleTextColor 「支払い方法を選択」のタイトルテキストの色。 sectionBorder [PayPalアカウントから支払う]または[クレジットカードで支払う]と表示さ れセクションの背景 30 PayPal 支払いページのカスタマイズ HTML 変数の追加 表 3.1 支払いページのデザインに使用する HTML 変数 変数 説明 showCustomerName 顧客名(氏名)を表示します。 showBillingAddress showBillingPhone showBillingEmail showHostedThankyouPage showShippingAddress subheaderText デフォルト値:true 可能な値:trueまたはfalse。true =表示、false =非表示。 請求書送付先住所情報を表示します。 デフォルト値:true 可能な値:trueまたはfalse。true =表示、false =非表示。 請求書送付先の電話番号を表示します。 デフォルト値:true 可能な値:trueまたはfalse。true =表示、false =非表示。 請求のためのメールアドレスを表示します。 デフォルト値:false 可能な値:trueまたはfalse。true =表示、false =非表示。 PayPalの確認ページを表示します。 デフォルト値:true 可能な値:trueまたはfalse。true =表示、false =非表示。 配送先住所を表示します。 デフォルト値:false 可能な値:trueまたはfalse。true =表示、false =非表示。 「PayPalアカウントから支払う」または「クレジットカードで支払う」 のテキストの色 template 支払いページに使用するテンプレート。オプションはTemplate A、 Template B、および Template Cです。Template Dは iFramesでのみ使用 され、PayPal.comのカスタマイズページのオプションではありません。 31 ウェブサイトへのiFrameのインテグレ ーション PayPal では、お客様のウェブサイトの iFrame 内に実装できるコンパクトな支払いフォームをご用意していま す。このフォームはウェブサイトに実装されるので、PayPal の決済画面に遷移する必要がなく、また、買い 手はウェブサイトを離れることがありません。これにより、買い手が支払いの途中で止めてしまうリスクも低 くなります。また、支払いフレームはメインのフレームの中に入っているため、決済画面でも自社デザインを 維持でき、一貫性を保てます。クレジットカードフィールドは支払いフォームの一部であるため、この情報を 別途収集する必要はありません。 重要:iFrame のセキュリティ上の理由により、安全に使用していただけるブラウザは以下のみになります- Internet Explorer 7.0、8.0 および 9.0、Firefox 8、Chrome4 および 4.1、Safari 4.x および 5.x その他のブラウザを使用するユーザーによるトランザクションに関しては、iFrame による決済を使用しない ようにするか、トランザクションを破棄してください。このほか、iFrame フロー外部から発生するリスクも 存在します。PayPal iFrame が不正もしくは攻撃の発生源となった場合、これらの不正や攻撃がマーチャント サイトから発生しているように見せかけるケースが発生しています。このリスクを回避したい場合は iFrame フローを使用しないでください。 注:なりすまし詐欺の危険性があるため、このフォームには PayPal のブランド情報やロゴを含みません。 支払いフォームには、以下のフィールドが含まれます。 クレジットカード番号 有効期限 CVV2 番号(該当する場合。カードタイプによる) その他のカードタイプに必要な追加フィールド。例:Mastestro や Switch の場合-開始日と発行番号 このフォームには、以下のオプションも用意されています。 [PayPal アカウントから支払う]ボタンの削除。フォームには、PayPal アカウントから支払うオプショ ンがデフォルトで用意されていますが、アカウント管理者またはカスタマーサポートに連絡し、このオ プションをオフにすることができます。 [今すぐ支払う]ボタンの色を HTML でカスタマイズする。 重要:コンパクトな支払いフォームでは、showBillingAddress=true の値が渡されていても、買い手の請求先 送付先住所は表示されません。しかし、マーチャントによっては、トランザクションを完了するために 請求書送付先住所を渡す必要がある場合もあります。 32 ウェブサイトへの iFrame のインテグレーション iFrame のインテグレーション iFrameのインテグレーション 以下の方法のいずれかを選択して、コンパクトな支払いフォームをウェブサイトに実装します。 HTMLによるインテグレーション APIによるインテグレーション 重要-最適なパフォーマンスが得られるよう、iFrame は他の画像や JavaScript などの前に読み込むことをお 薦めします。iFrame を読み込む際に、支払いページ上で他の JavaScript などが多数実行中の場合、iFrame の リクエストが実行されなかったり遅くなる場合があります。その場合、買い手には空の iFrame が表示される ことになりますのでご注意ください。 HTMLによるインテグレーション コンパクトな支払いフォームを HTML でウェブサイトに実装する手順は以下の通りです: 1. ウェブサイトでコンパクト支払いフォームを表示する位置に iFrame タグを入力します。記述例は以下の 通りです: <iframe name="hss_iframe" width="570px" height="540px"></iframe> コンパクトな支払いフォームで使用可能なサイズは、幅 570 ピクセル、高さ 540 ピクセルです。 2. iFrame コードの下に、該当するウェブペイメントプラス変数(支払い合計金額を含む)が自動入力され る非表示フォームを追加し、変数 TemplateD を指定します。記述例は以下の通りです: <form style="display:none" target="hss_iframe" name="form_iframe" method="post" action="https://securepayments.paypal.com/cgi-bin/acquiringweb"> <input type="hidden" name="cmd" value="_hosted-payment"> <input type name="subtotal" value="50"> <input type="hidden" name="business" value="HNZ3QZMCPBAAA"> <input type name="paymentaction" value="sale"> <input type="hidden" name="template" value="templateD"> <input type name="return"value="https://yourwebsite.com/receipt_page.html"> </form> 注:トランザクションが失敗した場合は請求書送付先住所を渡します。 33 ウェブサイトへの iFrame のインテグレーション iFrameのインテグレーション 3. 次の例にように、ターゲット名が iFrame 名に一致していることを確認します。 <iframe name="hss_iframe" width="570px" height="540px"></iframe> <form style="display:none" target="hss_iframe" name="form_iframe" method="post" action="https://securepayments.paypal.com/acquiringweb?cmd=_hosted-payment"> 4. JavaScript を使ってフォームを送信します。記述例は以下の通りです: <script type="text/javascript"> document.form_iframe.submit(); </script> HTML によるインテグレーションの例 上記の手順に従って記述した場合のコードは以下のようになります: <iframe name="hss_iframe" width="570px" height="540px"></iframe> <form style="display:none" target="hss_iframe" name="form_iframe" method="post" action=https://securepayments.paypal.com/cgi-bin/acquiringweb">> <input type="hidden" name="cmd" value="_hosted-payment" /> <input type name="subtotal" value="50"> <input type="hidden" name="business" value="HNZ3QZMCPBAAA" /> <input type="hidden" name="template" value="templateD" /> <input type name="return" value="https://yourwebsite.com/receipt_page.html"> </form> <script type="text/javascript"> document.form_iframe.submit(); </script> APIによるインテグレーション APIを使ってコンパクトな支払いフォームをウェブサイトに実装する手順は、36 ページ「ウェブペイメントプ ラス決済におけるボタンマネージャAPIの使用」を参照してください。 注:このタイプの実装は、template=templateD を使用します。 ウェブペイメントプラスの支払いフローを開始するためのオプションは以下の 2 つのレスポンスがあります。 レスポンスで返される URL の使用 Form POST の使用 34 ウェブサイトへの iFrame のインテグレーション iFrame のインテグレーション レスポンスで返される URL の使用 レスポンスで EMAILLINK として指定される URL に、下の例のように iFrame 用の「src」を追加し、買い手 をリダイレクトして支払いフローを開始します: <iframe src=https://www.paypal.com/...?hosted_button_id=HSS-.. width="570px" height="540px"></iframe> コンパクトな支払いフォームで使用可能なサイズは、幅 570 ピクセル、高さ 540 ピクセルです。 重要:このオプションは safari ブラウザではサポートされません。Safari ブラウザでは以下の From POST を 使用してください。 Form POST の使用 レスポンスで WEBSITECODE を識別し、そのコードを使ってレビューページに[今すぐ支払いを行う]ボタ ンを生成します。買い手がこのボタンをクリックすると、買い手は PayPal がホストする支払いページにリダ イレクトされます。URL と同様、このボタンは約 2 時間、または支払いが完了するまで使用できます。 1. ウェブサイトでコンパクトな支払いフォームを表示する位置に iFrame タグを入力します。記述例は以下 の通りです: <iframe name="hss_iframe" width="570px" height="540px"></iframe> コンパクト支払いフォームで使用可能なサイズは、幅 570 ピクセル、高さ 540 ピクセルです。 2. iFrame タグに以下を挿入します。 WEBSITECODE=<form action=https://www.paypal.com/cgi-bin/webscr method="post"> <input type="hidden" name="cmd" value="_s-xclick"> <input type="hidden" name="hosted_button_id"value="HSS¬ bXkpgPTNgZi7CyfIwWTAkWPSDbKziokU"> <input type="image" src=https://www.paypal.com/i/btn/btn_paynow_LG.gif border="0" name="submit" alt="PayPal- The safer, easier way to pay online."> <img alt="" border="0" src=https://www.paypal.com/i/scr/pixel.gif width="1" height="1"> </form> 3. JavaScript を使ってフォームを送信します。記述例は以下の通りです: <script type="text/javascript"> document.form_iframe.submit(); </script> 35 ウェブサイトへの iFrame のインテグレーション iFrameのインテグレーション API (Form POST)によるインテグレーション例 上記の手順にしたがった実装例は以下の通りです: <iframe name="hss_iframe" width="570px" height="540px"></iframe> WEBSITECODE=<form action="https://www.paypal.com/cgi-bin/webscr"method="post"> <input type="hidden" name="cmd" value="_s-xclick"> <input type="hidden" name="hosted_button_id"value="HSS¬ bXkpgPTNgZi7CyfIwWTAkWPSDbKziokU"> <input type="image" src=https://www.paypal.com/i/btn/btn_paynow_LG.gif border="0" name="submit" alt="PayPal- The safer, easier way to payonline."> <img alt="" border="0" src=https://www.paypal.com/i/scr/pixel.gif width="1" height="1"> </form> <script type="text/javascript"> document.form_iframe.submit( ); </script> 36 ウェブサイトへの iFrame のインテグレーション iFrame のインテグレーション 37 APIによるウェブサイトへのインテグレ ーション ボタンマネージャ API を使用して、支払い用のチェックアウトボタンを作成し、ウェブサイトでウェブペイメントプラス の決済を開始させる仕組みを作ることができます。チェックアウトボタンは、EC サイトで買い手が支払いをしようとする タイミングで動的に作成されるものです。買い手が売り手の EC サイト上でチェックアウトボタンをクリックすると、 BMCreateButtonAPI がコールされボタンがウェブページに表示します。買い手がこのチェックアウトボタンをクリックす ると、PayPal の支払いページにリダイレクトされ、そこで支払いを完了する流れになります。 PayPal支払いページのデザイン、ページに含まれる情報、および支払い後に買い手が戻る先のページは、HTML 変数で指定します。本ガイド 13 ページの「HTML変数」でHTML変数の一覧を参照してください。 ボタンマネージャAPIについての詳細は、 「Button Manager API(NVP)」または「Button Manager API(NVP)」 (共に英語版のみ)を参照してください。 注:ボタンマネージャ API では、チェックアウトボタンを作成することができますが、ボタンの管理、編集、 削除はできません。 ボタンの設置 ウェブペイメントプラスでは、BUTTONTYPE=PAYMENT を使って次の 3 種類のチェックアウトボタンを作 成することができます。 トークンボタン(BUTTONCODE=TOKEN)は PayPal 上に保存されない動的に動作するボタンで、ウェ ブペイメントプラスチェックアウトフローを開始します。この種類のボタンに関連付けられるパラメー タはセキュリティで保護されます。使用しないまま約 2 時間経過すると無効になります。 暗号化ボタン(BUTTONCODE=ENCRYPTED)は、PayPal 上に保存されません。この種類のボタンに 関連付けられるパラメータは暗号化されます。暗号化ボタンやその関連情報を変更するたびに、そのボ タンを使用するウェブページを更新する必要があります。 クリアテキストボタン(BUTTONCODE=CLEARTEXT)は、PayPal 上に保存されません。この種類の ボタンに関連付けられるパラメータは暗号化されません。クリアテキストボタンは、パラメータの値を いつでも変更できるので、動的に使用できます。ただし、クリアテキストボタンを使用する場合は、重 要な情報が改ざんされたり、盗まれたりする危険性がありますので注意してください。 注:ホスト型ボタン(BUTTONCODE=HOSTED)は、ウェブペイメントプラスではサポートされておらず、 使用するとエラーが返されます。 ボタンマネージャAPIの詳細については、41 ページの「BMCreateButton API操作」を参照してください。 38 API によるウェブサイトへのインテグレーション ウェブペイメントプラス決済におけるボタンマネージャ API の使用 ウェブペイメントプラス決済におけるボタンマネージャ APIの使用 ウェブサイト用にチェックアウトボタンを作成するには、BMCreateButton API をコールします。買い手がチ ェックアウトボタンをクリックすると、PayPal がウェブペイメントプラスの決済を開始します。 マーチャントは、BMCreateButton APIからのレスポンスを解読する必要があります。URLエンコーディング の詳細については、 『Name-Value Pair API Developer Guide』(英語版のみ)を参照してください。 ウェブペイメントプラスの決済は、以下のいずれかを使って開始することができます: レスポンスで返されるURLの使用 (推奨 ) Form POSTの使用 レスポンスで返されるURLの使用(推奨) レスポンス内で EMAILLINK として指定されている URL を使用し、買い手をリダイレクトして決済を開始す ることができます。 TOKEN の例: EMAILLINK=https://www.paypal.com/cgi-bin/webscr?cmd=_s¬ xclick&hosted_button_id=HSS2MTCOLOp9LoPGdFYsYclhbGyjJVNrMHO&HOSTEDBUTTONID=HSS2MTCOLOp9LoPGdFYsYclhbGyjJVNrMHO&TIMESTAMP=2010-0915T00:30:35Z&CORRELATIONID=2fc9a340a2356&ACK=Success&VERSION=65.0&BUILD=150 0269 39 API によるウェブサイトへのインテグレーション ウェブペイメントプラス決済におけるボタンマネージャAPIの使用 ENCRYPTED の例: EMAILLINK=https://www.paypal.com/acquiringweb?cmd=_hostedpayment& business=idc%2dautomation%2duk%2dpro%2dt1%40paypal%2ecom&tax=2&ship ping=3&business=K5HHZSMWMCN58&subtotal=11&handling=4&TIMESTAMP=2010-0915T00:39:06Z&CORRELATIONID=23d12ce1161f2&ACK=Success&VERSION=65.0&BUILD=150 0269 CLEARTEXT の例: EMAILLINK=https://www.paypal.com/acquiringweb?cmd=_hostedpayment& business=idc%2dautomation%2duk%2dpro%2dt1%40paypal%2ecom&tax=2&ship ping=3&business=K5HHZSMWMCN58&subtotal=11&handling=4&TIMESTAMP=2010-0915T00:40:32Z&CORRELATIONID=64553e7c7c84&ACK=Success&VERSION=65.0&BUILD=1500 269 ボタン変数により、決済ページのデザインおよび買い手に最初に表示される情報を指定します。URL はウェ ブペイメントプラストークンに関連付けられているため、作成されてから約 2 時間、または支払いが完了する まで使用することができます。 From POSTの使用 ボタン変数により、決済ページのデザインおよび買い手に最初に表示される情報を指定します。URL はウェ ブペイメントプラストークンに関連付けられているため、作成されてから約 2 時間、または支払いが完了する まで使用することができます。 40 API によるウェブサイトへのインテグレーション ウェブペイメントプラス決済におけるボタンマネージャ API の使用 TOKEN の例: WEBSITECODE=<form action="https://www.paypal.com/cgi-bin/webscr" method="post"> <input type="hidden" name="cmd" value="_s-xclick"> <input type="hidden" name="hosted_button_id" value="HSS2MTCOLOp9LoPGdFYsYclhbGyjJVNrMHO"> <input type="image" src="https://www.paypal.com/en_US/i/btn/btn_auto_billing_LG.gif" border="0" name="submit" alt="PayPal - The safer, easier way to pay online."> <img alt="" border="0" src="https://www.paypal.com/en_GB/i/scr/pixel.gif" width="1" height="1"> </form> ENCRYPTED の例: WEBSITECODE=<form action="https://www.paypal.com/cgi-bin/webscr" method="post"> <input type="hidden" name="cmd" value="_s-xclick"> <input type="hidden" name="encrypted" value="BEGIN PKCS7......END PKCS7"> <input type="image" src="https://www.paypal.com/en_US/i/btn/btn_auto_billing_LG.gif" border="0" name="submit" alt="PayPal - The safer, easier way to pay online."> <img alt="" border="0" src="https://www.paypal.com/en_GB/i/scr/pixel.gif" width="1" height="1"> </form> CLEARTEXT の例: WEBSITECODE=<form action="https://www.paypal.com/acquiringweb" method="post"> <input type="hidden" name="cmd" value="_hosted-payment"> <input type="hidden" name="business" value="[email protected]"> <input type="hidden" name="tax" value="2"> <input type="hidden" name="shipping" value="3"> <input type="hidden" name="business" value="K5HHZSMWMCN58"> <input type="hidden" name="subtotal" value="11"> <input type="hidden" name="paymentaction" value="sale"> <input type="hidden" name="handling" value="4"> <input type="image" src="https://www.paypal.com/en_US/i/btn/btn_auto_billing_LG.gif" border="0" name="submit" alt="PayPal - The safer, easier way to pay online."> <img alt="" border="0" src="https://www.paypal.com/en_GB/i/scr/pixel.gif" width="1" height="1"> </form> 41 API によるウェブサイトへのインテグレーション ウェブペイメントプラス決済におけるボタンマネージャAPIの使用 注:PayPal の支払いページには、決済に進んで支払いを行うための[今すぐ支払う]ボタンが表示されます。 PayPal ページの[今すぐ支払う]ボタンは、BMCreateButton API によりレビューページに設置された[今す ぐ支払う]ボタンとは異なります。混乱を避けるため、後者の URL を BUTTONIMAGEURL で変更してくだ さい。BUTTONIMAGEURL で URL を指定していない場合はデフォルトの[今すぐ支払う]ボタンが使用され ます。 公開/秘密鍵を使ったボタンの暗号化 「暗号化されたウェブペイメント」は、自動生成、もしくはお客様がHTMLで記述した支払いボタンを保護す るための機能です。「暗号化されたウェブペイメント」では、決済情報が含まれる支払いボタンのHTMLコー ドを暗号化して保護するため、悪意のある第三者によるコードの改ざんと不正決済を防止することができます。 詳細は、8 章の「暗号化されたウェブペイメントによる決済ボタンの保護」を参照してください。 ウェブペイメントプラスの決済の開始の例 以下に、NVP パラメータで BUTTONCODE=TOKEN を使ってウェブペイメントプラスの決済を開始するため の URL を生成する例を示します: ... BUTTONCODE=TOKEN BUTTONTYPE=PAYMENT BUTTONIMAGEURL=https://www.paypal.com/en_US/i/btn/btn_billing.gif L_BUTTONVAR0=subtotal=11 L_BUTTONVAR1=tax=2 L_BUTTONVAR2=shipping=3 L_BUTTONVAR3=handling=4 L_BUTTONVAR4=first_name=Bob L_BUTTONVAR5=last_name=Jones L_BUTTONVAR6=address1=Gardens L_BUTTONVAR7=address2=99343 L_BUTTONVAR8=city=Paris L_BUTTONVAR9=state=Alsace L_BUTTONVAR10=zip=75002 L_BUTTONVAR11=country=FR L_BUTTONVAR12=billing_first_name=BobBilling L_BUTTONVAR13=billing_last_name=JonesBilling L_BUTTONVAR14=billing_address1=5088 - 061 Craven Hill Gardens L_BUTTONVAR15=billing_address2=Apt# 199343 L_BUTTONVAR16=billing_city=Wolverhampton L_BUTTONVAR17=billing_state=West Midlands L_BUTTONVAR18=billing_zip=W12 4LQ L_BUTTONVAR19=billing_country=GB L_BUTTONVAR20=night_phone_a=408 L_BUTTONVAR21=night_phone_b=398 L_BUTTONVAR22=night_phone_c=3065 42 API によるウェブサイトへのインテグレーション ウェブペイメントプラス決済におけるボタンマネージャ API の使用 L_BUTTONVAR23=notify_url=www.yourcompany.com L_BUTTONVAR24=custom=custom1 L_BUTTONVAR25=cancel_return=http://www.cancel_return.com L_BUTTONVAR26=paymentaction=sale L_BUTTONVAR27=currency_code=GBP L_BUTTONVAR28=invoice=123456789 L_BUTTONVAR29=lc=GB L_BUTTONVAR30=showBillingAddress=false L_BUTTONVAR31=showShippingAddress=false L_BUTTONVAR32=showBillingEmail=true L_BUTTONVAR33=showBillingPhone=true L_BUTTONVAR34=showCustomerName=true L_BUTTONVAR35=showCardInfo=true L_BUTTONVAR36=showHostedThankyouPage=true L_BUTTONVAR37=bn=GBD L_BUTTONVAR38=cbt=Merchant ABCD L_BUTTONVAR39=address_override=false L_BUTTONVAR40=cpp_header_image=Red L_BUTTONVAR41=logoText=YourCompanyLogo L_BUTTONVAR42=logoImage=http://yourcompanyimages.com/logo.gif L_BUTTONVAR43=logoImagePosition=center L_BUTTONVAR44=logoFont=Arial Bold L_BUTTONVAR45=logoFontSize=24px L_BUTTONVAR46=logoFontColor=#f0ff0f L_BUTTONVAR47=bodyBgImg=sdf L_BUTTONVAR48=bodyBgColor=#AEAEAE L_BUTTONVAR49=headerHeight=70px L_BUTTONVAR50=headerBgColor=#4B6BA1 L_BUTTONVAR51=PageTitleTextColor=Blue L_BUTTONVAR52=PageCollapseBgColor=Blue L_BUTTONVAR53=PageCollapseTextColor=Yellow L_BUTTONVAR54=PageButtonBgColor=Blue L_BUTTONVAR55=PageButtonBgColor=Blue L_BUTTONVAR56=orderSummaryBgColor=#EDF2F7 L_BUTTONVAR57=orderSummaryBgImage=http://teamworks/scr_bg_ordersummary.jpg L_BUTTONVAR58=footerTextColor=#333333 L_BUTTONVAR59=footerTextlinkColor=#00f00f L_BUTTONVAR60=template=templateC L_BUTTONVAR61=return=http://www.yourcompany.com 43 API によるウェブサイトへのインテグレーション BMCreateButton API操作 BMCreateButton API操作 BMCreateButton API を使用して、ウェブペイメントプラスのチェックアウトボタンを作成します。 BMCreateButton リクエスト BMCreateButton レスポンス BMCreateButton エラー BMCreateButton リクエスト リクエストのフィールドには、ボタンに関連メニュー項目を含むボタンの特性を指定します。メニュー項目は 5 つまで指定でき、各項目には最大 10 個まで選択肢を含むことができます。 BMCreateButton リクエストフィールド 注:渡す値には、次の特殊文字を含むことができません:(){}<>¥"; フィールド 説明 METHOD (必須) BMCreateButton BUTTONCODE (オプション) 作成するボタンコードの種類。以下のいずれかの値を使用: TOKEN-セキュアなボタンで、PayPalに保存されません。ウェブペイメントプラス の決済を開始するためのみ使用。[今すぐ支払う]ボタンでデフォルトに設定され ています。バージョン65.2以降で対応。 BUTTONTYPE ENCRYPTED-暗号化ボタン。PayPalに保存されません。 CLEARTEXT-非暗号化ボタン。PayPalに保存されません。 (必須)作成するボタンの種類を指定します。 PAYMENT-[今すぐ支払う]ボタン。バージョン65.2以降で対応。 L_BUTTONVARn (オプション)標準のHTMLボタン変数。 44 API によるウェブサイトへのインテグレーション BMCreateButton API 操作 BMCreateButton レスポンス レスポンスには、ウェブサイトの HTML およびメール内のリンクのコードが含まれ、ホスト型のボタンの場 合は ID 情報も含まれます。 BMCreateButton レスポンスのフィールド フィールド 説明 WEBSITECODE ウェブページの HTMLコード EMAILLINK ウェブペイメントプラスチェックアウトフローの URLのコード HOSTEDBUTTONID ウェブペイメントプラストークンの ID BMCreateButtonエラー エラー コード 10001 ショートメッセージ ロングメッセージ Internal Error Invalid Argument エラーの解決方法 内部エラー 11923 Invalid Argument The button image value specified is invalid .指定されたボタンの画像値が無効です。 11924 Invalid Argument The button image URL specified is invalid. 指定したボタンの画像 URL が無効です。 11925 Invalid Argument The button type specified is invalid. 指定したボタンのタイプが無効です。 11926 Invalid Data One of the parameters specified using ButtonVar is invalid. ButtonV を使って指定したパラメータの 1 つが無効です。 11927 Invalid Argument The buy now button text specified is invalid. [今すぐ購入]ボタンに指定したテキストが無効です。 11928 Invalid Argument The email or merchant ID specified is invalid. 指定した電子メールまたはマーチャント ID が無効です。 11929 Invalid Data A cart button must have an item name and amount specified. [カート]ボタンには、アイテム名と金額を指定する必要 があります。 45 API によるウェブサイトへのインテグレーション BMCreateButton API操作 エラー コード 11930 ショートメッセージ ロングメッセージ Invalid Data A gift certificate button must have a valid shopping URL エラーの解決方法 specified. [ギフト券]ボタンには、有効なショッピング URL を指定 する必要があります。 11931 Invalid Argument The subscription button text specified is invalid. 11932 Invalid Data You must specify a corresponding number of entries for [購読]ボタンに指定したテキストが無効です。 . option names and selections. オプション名と選択肢に該当するエン通り数を指定する 必要があります。 11933 Invalid Data You cannot skip index numbers for option selections. Option selections must be specified sequentially. オプションのインデックス番号はスキップすることはで きません。オプションの選択肢を連続して指定してくださ い。 11934 Invalid Data You must specify the same number of entries for option prices and selections. オプションの価格と選択肢に同じ数のエン通りを指定す る必要があります。 11936 Invalid Data You cannot specify both an item price and prices for individual selections within an option. オプション内で、アイテムの価格と個々の選択肢の価格を 両方指定することはできません。 11937 Invalid Argument A text box name specified is invalid. Text box names must not exceed 64 characters. 指定したテキストボックス名が無効です。テキストボック ス名は、64 文字以内で指定してください。 11938 Invalid Argument The button code value specified is invalid. 指定したボタンのコード値が無効です。 11940 Invalid Argument An option name specified is invalid. Option names must not exceed 64 characters. 指定したオプション名が無効です。オプション名は、64 文字以内で指定してください。 11941 Invalid Argument An option selection value specified is invalid. Option selection values must not exceed 64 characters. 指定したオプションの選択の値が無効です。オプションの 選択値は、64 文字以内で指定してください。 46 API によるウェブサイトへのインテグレーション BMCreateButton API 操作 エラー コード 11942 ショートメッセージ ロングメッセージ Invalid Argument An option price value specified is invalid. Make sure any エラーの解決方法 punctuation marks are in the correct places. 指定したオプションの価格の値が無効です。オプションの 価格が正しく入力されていることを確認してください。 11943 Invalid Argument The button country value specified is invalid. 指定したボタンの国の値が無効です 11945 無効なデータ The button country and language code combination specified is invalid. 指定したボタンの国および言語コードが無効です。 11947 Invalid Argument The tax rate specified is invalid. Make sure any punctuation marks are in the correct places and value specified is in the range 0.0 to 100. 指定した税率が無効です。小数点が正しい位置にあり、 0.0~100 で指定されていることを確認してください。 11948 Invalid Argument The amount specified is invalid. Make sure any punctuation marks are in the correct places. 指定した金額が無効です。小数点が正しい位置にあること を確認してください。 12210 Invalid Argument The currency code value specified is invalid. 指定した通貨コードの値は無効です。 13117 Invalid Argument 13118 Invalid Argument Subtotal amount is not valid. 小計金額が無効です。 Tax amount is not valid. 税額が無効です。 13119 Invalid Argument Handling amount is not valid. 取り扱い金額が無効です。 13120 Invalid Argument Shipping amount is not valid. 配送金額が無効です。 47 Sandboxでのインテグレーションのテ スト PayPal Sandbox は、PayPal の各種機能をテストできる独立したテスト環境です。ディベロッパーは、ソリュ ーションのインテグレーション本番に備え、外部環境から隔絶された安全な Sandbox 環境で動作検証などを 行えるため、実際のライブ環境でテストする危険性を排除できます。PayPal アプリケーションを実環境に移 行する前に Sandbox で動作検証を行い、PayPal デベロッパーネットワーク(PDN)規定のガイドラインと基 準に従って正しく機能することを確認してください。 Sandboxの使用に関する詳細は、 『Sandbox User Guide』 (英語版のみ)を参照してください。 テストアカウントの作成 Sandbox にログインすると、以下の Sandbox の管理画面が表示されます。 48 Sandbox でのインテグレーションのテスト テストアカウントの作成 ウェブペイメントプラスのインテグレーションのテストを行うには、以下の手順にしたがっテスト用のマーチ ャントアカウントを作成します。 1. Sandbox ホームページの「Test Account(アカウントのテスト) 」セクションで、 [Create preconfigured buyer or seller account(買い手または売り手のアカウントを作成する) ]をクリックします。 2. 以下のように「Create a Sandbox Account(Sandbox テストアカウントの作成) 」ページが表示されます。 49 Sandbox でのインテグレーションのテスト テストアカウントの作成 3. [Country(国) ]のドロップダウンメニューから「Japan(日本) 」を選択します。 4. アカウントタイプで[Web Payment Pro]を選択します。 5. [Log-in Email(ログインメール)]と[Password(パスワード)]には自動入力されます。その他のフ ィールドはオプションですので、任意で設定するか、デフォルトのまま残してください。 注:Sandbox テストサイトにログインする際はパスワードが必要になります。パスワードをメモしてお くようにしましょう。 6. [Create Account(アカウントの作成) ]をクリックします。次のページでテストアカウントの作成され たことを確認します。 注:ログインメールは、お客様が指定したアドレスに基づいて作成された架空のアドレスです。クレジ ットカードおよび銀行口座番号についても架空の番号が生成されています。これらの番号は[View Details(詳細の表示) ]をクリックして確認できます。 7. [Payment Review(支払い審査) ]が [Enable(有効) ]になっていることを確認します。その場合、 このアカウントのすべてのトランザクションは、審査待ちの状態になっています。 「Transaction Detai9ls (トランザクションの詳細) 」ページで[Accept(受取り) ]または [Decline(拒否) ]のいずれかをク リックして、不正なエージェントのアクションのシミュレーションを行うことができます。 50 Sandbox でのインテグレーションのテスト テストアカウントの作成 8. [Enter Sandbox (Sandbox テストサイトに入る) ]をクリックします。新しいウインドウが開き、Sandbox テストサイトが表示されます。Sandbox テストサイトに自動ログインされない場合は、手順 6 で作成さ れたテストアカウント用メールアドレスと、手順 5 で指定されたパスワードを使ってログインします。 これで、Sandbox テストサイトでウェブペイメントプラスの実装テストを行う準備ができたことになり ます。 51 Sandbox でのインテグレーションテスト インテグレーションと設定のテスト インテグレーションと設定のテスト 以下のセクションでは、Sandbox テスト環境におけるインテグレーションのテストや支払いページのデザイ ン変更を行う手順が記載されています。 インテグレーションのテスト 設定のテスト インテグレーションのテスト 11 ページの「ウェブペイメントプラスのシンプルなインテグレーション」の記載と同様の手順でSandbox環 境における実装テストを行います。テストでは、以下の変更をForm POSTでおこなう必要があります。 1. URL が Sandbox 環境をポイントするよう変更します。 変更前: <form action="https://securepayments.paypal.com/acquiringweb" method="post"><input type="hidden" name="cmd" value="_hosted-payment"> 変更後: <form action="https://securepayments.sandbox.paypal.com/acquiringweb "method="post"> <input type="hidden" name="cmd" value="_hosted-payment"> 2. business 値を、Sandbox テストサイトの「Customisation and Settings(カスタマイズと個人設定) 」ペ ージの上部に表示されているセキュアなマーチャント ID に変更します。 これにより、テスト用 Form POST は次のように設定されます: <form action=https://securepayments.sandbox.paypal.com/acquiringweb method="post"> <input type="hidden" name="cmd" value="_hosted-payment"> <input type name="subtotal" value="50"> <input type name="business" value="HNZ3QZMCPBAAA"> <input type name="paymentaction" value="sale"> <input type name="return" value="https://yourwebsite.com/receipt_page.html"> <input type="submit" name="METHOD" value="Pay Now"> </form> 52 Sandbox でのインテグレーションテスト インテグレーションと設定のテスト 設定のテスト 支払いページのデザインを変更するには、Sandboxテストサイトの「Customisation and Settings(カスタマイ ズと個人設定) 」セクションでアカウント設定を変更します。詳細については、19 ページの「PayPalアカウン ト設定の変更」を参照してください。 53 注文処理の続行 この章では、一連の注文処理の最終ステップとして実施するトランザクションのステータスと正当性の照合に ついて説明します。 トランザクションステータスと正当性の確認 トランザクションが完了すると、買い手はPayPalの確認ページか、return変数または「個人設定」セクション の「設定」ページで指定されているウェブページにリダイレクトされます(11 ページの「ウェブペイメント プラスのシンプルなインテグレーション」参照)。指定のウェブサイトにリダイレクトされる際、トランザク ションIDがURLに付加されます。 リイダイレクト(URL プラストランザクション ID)を受け取ったら、商品を買い手に発送する前に、PayPal から送付される確認メール、またはトランザクション履歴をチェックし注文が正常に完了していることを確認 する必要があります。その他の確認方法は以下の通りです: 即時支払い通知(IPN)の確認 IPN では、非同期サーバー間通信により、トランザクションの決済情報やアクティビティについてのメッセー ジを PayPal から受け取ることができます。これにより、オンライン決済を注文対応処理の一環として実施す ることができます。 IPN では、以下のメッセージを受け取ることができます: 支払いおよびそのステータス(未決済、完了、または拒否) 不正防止管理フィルタのアクション 定期支払いアクティビティ 与信、チャージバック、異議、支払い取り消し、および払い戻し トランザクション処理が完了すると、トランザクションの詳細情報またはPayPalの「個人設定」ページで指定 したnotify URL宛てにPayPalからIPNが送信されます。IPNで送られたトランザクションID、トランザクション 金額、および請求書IDなどを含む注文固有のパラメータの内容が、ご自分の注文処理システムの情報と一致す ることを確認する必要があります。詳細については、 『Instant Payment Notification Guide』 (英語版のみ)を 参照してください。 54 注文処理 注文処理の続行 GetTransactionDetails APIコールの実行 GetTransactionDetails を使用して、任意のトランザクションに関する情報を取得することができます。 す で に PayPal APIを 実 装 さ れ て い る 場 合 は 、 リ ダ イ レ ク ト で 返 さ れ た ト ラ ン ザ ク シ ョ ン IDを 使 っ て GetTransactionDetailsをコールし、注文が正常に完了していることを確認することができます。詳細について は、59 ページの「GetTransactionDetails API」を参照してください。 注文処理の続行 決済金額と決済ステータスの正当性を確認できたら、注文処理を続行し、商品を買い手に発送します。 55 「暗号化されたウェブペイメント」による ボタンの保護 「暗号化されたウェブペイメント」は、自動生成、もしくはお客様が HTML で記述した支払いボタンを保護 するための機能です。 「暗号化されたウェブペイメント」では、決済情報が含まれる支払いボタンの HTML コ ードを暗号化して保護するため、悪意のある第三者によるコードの改ざんと不正決済を防止することができま す。 「暗号化されたウェブペイメント」は、国際標準の公開鍵暗号方式を採用して安全性を確保しています。この 方式では、公開鍵と秘密鍵を用いて支払いボタンの HTML コードを動的に生成するとともに、ボタンをウェ ブサイト上に表示する前に決済に関する詳細情報を暗号化することができます。以下の表は、「暗号化された ウェブペイメント」を使用して支払いボタンを保護する際の一連の流れを示しています。 表 8.1 「暗号化されたウェブペイメント」の仕組み ウェブサイトのアクション 買い手のアクション PayPal のアクション 表示されたPayPal支払いボタン をクリックします。 以前にPayPalにアップロードされたウェ ブサイトの公開鍵を使ってデータの信頼 性を確認します。 ウェブサイト用の公開鍵を生成して PayPalにアップロードし、PayPalの公開証 明書をウェブサイトにダウンロードしま す。 注: このアクションは、最初に ウェブペイメントスタン ダードをウェブサイトに 統合する際に一度だけ行 います。 支払いボタンのHTMLコードを生成します。 PayPalの公開鍵を使って生成されたコード を暗号化したのち、ウェブサイトの秘密鍵 を使って暗号化されたコードに署名しま す。 署名付きの暗号化されたHTMLコードをウ ェブサイトの支払いボタンとして公開しま す。 PayPalの秘密鍵を参照して、保護されたボ タンコードの暗号化を解除します。 暗号化解除されたボタンコードのHTMLに 記述された情報に従い、買い手のブラウザ を適切なPayPal決済処理ページにリダイ レクトします。 56 「暗号化されたウェブペイメント」によるボタンの保護 「暗号化されたウェブペイメント」で使用される公開鍵暗号方式 「暗号化されたウェブペイメント」で使用される公開鍵暗号方式 「暗号化されたウェブペイメント」では、公開鍵暗号方式、すなわち非対称鍵方式を採用しており、暗号通信を 行う送受信者が公開鍵を交換して互いのメッセージの暗号化を解除する仕組みを通じ、安全かつ便利な決済サー ビスを提供しています。公開鍵暗号方式の概要は以下の通りです: 公開鍵-公開鍵は受信者によって作成され、情報を暗号化し送信する前に送信者に提供されます。公開証 明書は公開鍵および鍵の発行者や有効期限などの識別情報で構成され、公開証明書と公開鍵の本人性を保 証する認証局から電子署名を受けることができます。 マーチャントと PayPal は互いの公開証明書を交換します。 秘密鍵-秘密鍵は受信者が作成、保管します。 マーチャントは、マーチャント側の秘密鍵を作成し、自社のシステム上に保管します。 PayPal は、PayPal 側の秘密鍵を自社のシステム上に保管します。 暗号化処理-送信者は、自分の秘密鍵と受信者の公開鍵を使って情報を暗号化してから送信します。受信 者は、自分の秘密鍵と送信者の公開鍵を使って受信した情報を復号します。また、この暗号化処理では、 公開証明書のデジタル署名により、送信者の正当性を証明します。 マーチャントは、自分の秘密鍵および PayPal の公開鍵を使用して 支払いボタンの HTML コードを暗号 化します。支払いボタンがクリックされると、 PayPal 側では PayPal の秘密鍵およびマーチャントの公 開鍵を使って支払いボタンの HTML コードを復号します。 「暗号化されたウェブペイメント」を使う前に証明書を設定する 「暗号化されたウェブペイメント」を使って支払いボタンを保護する前に、以下を行います: OpenSSLによる秘密鍵の自動生成 OpenSSLによる公開証明書の自動生成 PayPalアカウントへの公開証明書アップロード PayPalウェブサイトからのPayPal公開証明書mpダウンロード PayPal では、公開鍵ではなく、X.509 公開証明書のみ使用しています。公開鍵を使って情報を復号することは可 能ですが、復号された情報に鍵の提供元を識別するデータは含まれていません。公開証明書には、公開鍵のほか に、鍵の有効期限や所有者などの鍵に関する情報が含まれます。PayPal では、VeriSign など、信頼できる認証機 関が発行する OpenSSL PEM 形式の公開証明書に対応しています。 秘密鍵や公開証明書は、OpenSSL(https://www.openssl.org)などのオープンソースのソフトウェアを使って自 動生成することができます。これについては、次のセクションで詳しく説明します。 57 「暗号化されたウェブペイメント」によるボタンの保護 「暗号化されたウェブペイメント」を使用する前に証明書を設定する OpenSSLによる秘密鍵の自動生成 openssl プログラムを使用し、以下のコマンドを入力して秘密鍵を生成します。このコマンドにより、1024 ビットの RSA 秘密鍵が生成され、 my-prvkey.pem ファイルに保存されます。 openssl genrsa -out my-prvkey.pem 1024 OpenSSLによる公開鍵証明書の自動生成 公開証明書は PEM 形式で生成する必要があります。証明書は、次の openssl コマンドを入力して生成します。 このコマンドにより、 my-pubcert.pem ファイルに公開証明書が生成されます。 openssl req -new -key my-prvkey.pem -x509 -days 365 -out my-pubcert.pem PayPalアカウントへの公開証明書アップロード PayPal アカウントに公開証明書をアップロードする手順は以下の通りです: 1. https://www.paypal.jp からお客様の PayPalアカウントにログインします。 2. サブメニューから[個人設定]をクリックします。 3. [販売の設定]コラムの[暗号化支払いの設定]リンクをクリックすると「ウェブペイメントの証明書」 ページが表示されます。 4. ページの下の方にスクロールし、 「公開証明書」セクションの[追加]ボタンをクリックします。 「証明書の追加」ページが表示されます。 5. [参照]ボタンをクリックし、PayPal にアップロードする公開証明書を選択します。 注 :アップロードするファイルは PEM 形式である必要があります。 6. [追加]をクリックします。 公開証明書が正しくアップロードされると、 「ウェブペイメントの証明書」ページの「公開証明書」セクシ ョンに表示されます。 7. PayPal の「暗号化されたウェブペイメント」ソフトウェアを使用して支払いボタンを暗号化するには、 PayPal から割り当てられた証明書 ID が必要になります。PayPal から公開証明書に割り当てられた証明 書 ID は安全な場所に保管しておいてください。 58 「暗号化されたウェブペイメント」によるボタンの保護 「暗号化されたウェブペイメント」を使用する前に証明書を設定する PayPalウェブサイトからのPayPal公開証明書のダウンロード PayPal 公開証明書をダウンロードする手順は以下の通りです: 1. https://www.paypal.jp からお客様の PayPalアカウントにログインします。 2. サブメニューから[個人設定]をクリックします。 3. [販売の設定]コラムの[暗号化支払いの設定]リンクをクリックします。 4. 「PayPal 公開証明書」セクションまでスクロールします。 5. [ダウンロード]をクリックし、ご自身のコンピュータ上の安全な場所にファイルを保存します。 公開証明書の削除 重要: 公開証明書を削除すると、その公開証明書に関連付けられている証明書 ID は無効に なり、ボタンを暗号化する際に使用できなくなります。また、その証明書 ID を使っ て自動生成または HTML で記述されたボタンも正しく機能しなくなりますのでご注 意ください。 公開証明書を削除する手順は以下の通りです: 1. https://www.paypal.jp からお客様の PayPalアカウントにログインします。 2. サブメニューから[個人設定]をクリックします。 3. [販売の設定]コラムの [暗号化支払いの設定]リンクをクリックします。 4. 「PayPal 公開証明書」セクションまでスクロールします。 5. 削除する証明書を選択し、 [削除]ボタンをクリックします。 「証明書の削除」の確認ページが表示されます。 6. [削除]ボタンをクリックし、選択した公開証明書が削除されたことを確認します。 59 「暗号化されたウェブペイメント」によるボタンの保護 「暗号化されたウェブペイメント」を使用する前に証明書を設定する 「暗号化されたウェブペイメント」による決済ボタンの保護 「暗号化されたウェブペイメント」には、自動生成または HTML で記述された支払いボタンを保護する Java お よび Microsoft Windows のソフトウェアが含まれます。PayPal にログインして次の URL から当該ソフトウェ アをダウンロードしてください。 https://www.paypal.com/us/cgi-bin/webscr?cmd=p/xcl/rec/ewp-code ソフトウェアのダウンロードと解凍が完了したら、秘密鍵、公開鍵証明書、p12 ファイルおよび PayPal の公開 鍵証明書をソフトウェアがあるフォルダにコピーします。 1. 生成する暗号化ボタンごとに、ウェブペイメントスタンダードの変数と値の入力ファイルを用意します。 変数および値はそれぞれ、以下の例のように独立した行に存在する必要があります。 注 : cert_id 変数により、 PayPal のウェブサイトにアップロードした公開鍵証明書が識別されます。 cert_id=Z24MFU6DSHBXQ cmd=_xclick [email protected] item_number=1234 custom=sc-id-789 amount=500.00 currency_code=USD tax=41.25 shipping=20.00 address_override=1 address1=123 Main St city=Austin state=TX zip=94085country=US no_note=1 cancel_return=http://www.company.com/cancel.htm 2. 次に示されている通り、該当の構文を使用して暗号化ソフトウェアを実行します。 - Java: PPEncrypt CertFile PrivKeyFile PPCertFile InputFile OutputFile [Sandbox] - Microsoft Windows: java ButtonEncryption CertFile PKCS12File PPCertFile Password InputFile OutputFile [Sandbox] 60 「暗号化されたウェブペイメント」によるボタンの保護 「暗号化されたウェブペイメント」を使用する前に証明書を設定する 引数は以下のとおりです。 3. - CertFile: 公開鍵証明書のパス名 - PKCS12File: 公開鍵証明書の PKCS12 形式のパス名 - PPCertFile: PayPal の公開鍵証明書のコピーのパス名 - Password: 公開鍵証明書の PKCS12 形式へのパスフレーズ - InputFile: 暗号化されていないウェブペイメントの HTML Form 変数を含むファイルのパス名 - OutputFile: 暗号化された出力のファイル名 - [Sandbox]: 「暗号化されたウェブペイメント」を使用して保護した支払いボタンを PayPal Sandbox でテストするための Sandbox のオプション語 暗号化されたコードをウェブサイトにコピーします。 保護および暗号化されていないウェブペイメントの拒否 保護および暗号化されたボタンのセキュリティを強化するため、 PayPal アカウント個人設定を更新し、保護お よび暗号化されていない支払いを拒否します。 保護および暗号化されていないウェブペイメントスタンダードボタンからの支払いを拒否するには : 1. https://www.paypal.jp からお客様の PayPalアカウントにログインします。 2. サブメニューから[個人設定]をクリックします。 3. [販売の設定]コラムの[暗号化支払いの設定]リンクをクリックします。 4. 「暗号化されたウェブペイメント」セクションまでスクロールします。 5. [暗号化されていないウェブペイメントを拒否]の[オン]のラジオボタンをクリックして選択します。 6. ページ下部までスクロールし、 [保存]をクリックします。 61 オプションのAPI操作 トランザクション ID を利用し、多数の PayPal API 操作を実行することができます。ウェブペイメントプラスで 最も利用されている API は以下の通りです: GetTransactionDetails API RefundTransaction API DoCapture API GetTransactionDetails API 特定のトランザクションに関する情報を取得します: GetTransactionDetailsリクエスト GetTransactionDetailsレスポンス GetTransactionDetailsリクエスト 表 A.1 GetTransactionDetailsリクエストのフィールド フィールド 説明 METHOD GetTransactionDetailsである必要があります。 TRANSACTIONID (必須)トランザクションID。 注:一部のトランザクションの詳細、例えば銀行振替の引き出しに関する 詳細はGetTransactionDetailsで取得することができません。 文字数制限-半角英数字 17文字まで 62 オプションの API 操作 GetTransactionDetails API GetTransactionDetailsレスポンス 注:GetTransactionDetailsResponse レスポンスの正式な構造で定義されたフィールドが必ずしもすべて返され るわけではありません。PayPal がそのフィールドに対応するデータを記録している場合に限り、レスポン スでデータが返されます。 受取人情報フィールド 支払い人情報フィールド 支払い人名フィールド 住所フィールド 支払い情報フィールド 支払い商品情報フィールド 支払い商品フィールド オークションフィールド 購読条件フィールド 受取人情報フィールド 表 A.2 GetTransactionDetailsリクエストのフィールド フィールド RECEIVERMAIL 説明 支払いの受取人(売り手)のプライマリメールアドレス。プライマリメー ルアドレス以外のメールアドレスに支払いが送られる場合でも、 RECEIVERの値はプライマリメールアドレスとなります。 文字数制限-半角英数127文字まで RECEIVERID 支払いの受取人(売り手)の固有のアカウントID。この値は、受取人の紹 介IDの値と同じです。 63 オプションの API 操作 GetTransactionDetails API 表 A.3 支払い人情報フィールド フィールド 説明 EMAIL 支払い人のメールアドレス。 文字数制限-半角英数字127文字まで PAYERID 固有の PayPal顧客ID。 文字数制限-半角英数字13文字まで PAYERSTATUS 支払い人のステータス。有効な値は以下の通り: verified unverified 文字数制限-半角英数字10文字まで SHIPTOCOUNTRYCODE ISO標準 3166の2文字の国コード形式で示される支払い人の居住国。 文字数制限-半角2文字まで PAYERBUSINESS 支払い人の事業名。 文字数制限-半角127文字まで 支払い人氏名フィールド 表 A.4 支払い人氏名フィールド フィールド 説明 SALUTATION 支払い人の敬称。 文字数制限-半角20文字まで FIRSTNAME 支払い人の名。 文字数制限-半角英数25文字まで MIDDLENAME 支払い人のミドルネーム。 文字数制限-半角英数25文字まで LASTNAME 支払い人の姓。 文字数制限-半角英数25文字まで 64 オプションの API 操作 GetTransactionDetails API 表 A.4 支払い人氏名フィールド フィールド 説明 SUFFIX 支払い人のサフィックス。 文字数制限-半角英数12文字まで 住所フィールド 表 A.5 住所フィールド フィールド 説明 ADDRESSOWNER この住所を管理するeBay内の企業。有効な値は以下の通り: ADDRESSSTATUS SHIPTONAME eBay PayPal PayPalに登録されている住所のステータス。有効な値は以下の通り: none Confirmed Unconfirmed この住所に関連付けられているメンバーの名前。 文字数制限-半角32文字まで SHIPTOSTREET 住所の 1 行目。 文字数制限-半角 100 文字まで SHIPTOSTREET2 住所の 2 行目。 文字数制限-半角 100 文字まで SHIPTOCITY 市区町村の名前。 文字数制限-半角 100 まで SHIPTOSTATE 都道府県。 文字数制限-半角 40 まで SHIPTOZIP 米国の ZIP コードまたはその他の国の郵便番号。 文字数制限-半角 40 文字まで SHIPTOCOUNTRYCODE 正式な国名。 文字数制限-半角 20 文字まで SHIPTOPHONENUMBER 国コード。 文字数制限-半角 2 文字まで SHIPTOPHONENUM 国コード。 文字数制限-半角 2 文字まで 65 オプションの API 操作 GetTransactionDetails API 表 A.6 支払い情報フィールド フィールド 説明 TRANSACTIONID この支払いの固有のトランザクションID。文字数制限-半角17文字まで PARENTTRANSACTIONID 親または関連のあるトランザクションID。次のいずれかのトランザクシ ョンタイプの場合にこのフィールドにデータが自動入力されます: Reversal(取り消し)-与信トランザクションに対する売上げ Reversal(取り消し)-トランザクションの再与信 Capture of an order(注文の売上げ)-ParentTransactionIDの値は 元のOrderIDです。 Authorization of an order(注文の承認)-ParentTransactionIDの Capture of an order authorization(注文承認の取得) Void of an order(注文の無効化)-ParentTransactionIDの値は元 値は元のOrderIDです。 のOrderIDです。 文字数制限-16桁でxxxx-xxxx-xxxx-xxxxの形式 RECEIPTID 受け取り識別番号 文字数制限-16桁で xxxx-xxxx-xxxx-xxxxの形式 TRANSACTIONTYPE トランザクションのタイプ 有効な値は以下の通り: cart express-checkout 文字数制限-半角15文字まで PAYMENTTYPE 即時支払いか、後払いかを示します 文字数制限-半角7文字まで 有効な値は以下の通り: ORDERTYPE AMT none eCheck instant 支払いの時刻・日付スタンプ。例:2006-08-15T17:23:15Z. マーチャント設定の配送料および税額を含む最終請求金額。 文字数制限-いずれの通貨でも米ドルで$10,000相当を超えないこと。通 貨記号なし。通貨に関係なく、小数点記号はピリオド(.)を使用し、オ プションの桁区切り記号はコンマ(,)を使用します。米ドルの場合、最 大9文字に相当します。 CURRENCYCODE 3桁の通貨コード。 66 オプションの API 操作 GetTransactionDetails API 表 A.6 支払い情報フィールド フィールド FEEAMT 説明 トランザクションにかかるPayPal手数料の金額。 文字数制限-いずれの通貨でも米ドルで$10,000相当を超えないこと。通 貨記号なし。通貨に関係なく、小数点記号はピリオド(.)を使用し、オ プションの桁区切り記号はコンマ(,)を使用します。米ドルの場合、最 大9文字に相当します。 SETTLEAMT 通貨換算後にPayPalアカウントに入金される金額。 TAXAMT トランザクションに対して課される税金。 EXCHANGERATE 通貨換算が発生した場合の外貨換算レート。メインの通貨以外の通貨で請 求している場合のみ適用されます。顧客がメインの通貨以外の通貨での支 払いを選択した場合、その顧客のアカウントで通貨換算が行われます。 文字数制限-小数点を含め17文字を超えない小数。 67 オプションの API 操作 GetTransactionDetails API A.6 支払い情報フィールド フィールド PAYMENTSTATUS 説明 支払いのステータス。以下のステータスがあります: None-ステータスなし Canceled-Reversal-支払いの取り消しがキャンセルされた状態。 例えば、支払いの取り消しに対して異議を申し立てた結果、マーチ ャントに有利な結果となり、払い戻した金額がマーチャントに再度 戻された場合です。 Completed-支払いが完了し、資金がアカウントに入金された状態。 Denied-マーチャントが支払いを拒否した状態。この状況は、 PendingReason要素で記述された理由により、過去に未決済となっ ている支払いがある場合にのみ発生します。 Expired-この支払いの与信期限に達している場合。 Failed-支払いが成立しなかった場合。この状況は、支払いが顧客 In-Progress-与信処理中など、トランザクションが終了していない の銀行口座から行われた場合にのみ発生します。 状態。 Partially-Refunded-支払いの一部が払い戻された場合。 Pending-未決済の状態。詳細については、PendingReasonフィー Refunded-支払いを払い戻した状態。 Reversed-チャージバックまたはその他の理由により、支払いが取 ルドを参照してください。 り消された状態。該当金額がアカウント残高から差し引かれ、買い 手に払い戻された状態です。支払い取り消しの理由は、 ReasonCode要素で指定されます。 Processed-支払いが受領されました。 Voided-このトランザクションの与信が取り消されました。 68 オプションの API 操作 GetTransactionDetails API 表 A.6 支払い情報フィールド フィールド 説明 PENDINGREASON 注:PaymentStatusがPendingの場合のみ、レスポンスでPendingReason が返されます。 支払いが未決済の理由は以下の通り: none-未決済の理由なし。 address-顧客が確認済み配送先を入力していない場合。マーチャン トがこのような支払いに対して個別対応を行い、支払いを受領するか 拒否するか決定するよう、「支払いの受取り」で設定しているため、 未決済となっている状態です。設定を変更するには、「個人設定」の 「設定」セクションにアクセスします。 authorization-承認されているが決済が完了していないため未決済 となっている状態。最初にトランザクション金額を回収する必要があ ります。 echeck- eCheck で支払いが行われたが、決済が完了していないた め支払いが未決済となっている状態。 intl-マーチャントが米国以外のアカウントを所有しており、口座振 替機能がないため支払いが未決済となっている場合。「アカウント概 要」からこの支払いを手動で受け取るか拒否する必要があります。 multi-currency-送金される通貨での残高がなく、また支払い受領設 定でこの支払いを自動的に換算して受け取るよう設定していな場合。 この支払いを手動で受け取るか拒否する必要があります。 order-与信は完了しているが決済が完了していない注文の一部であ るため、未決済となっている状態。 paymentreview-PayPal によるリスク照合中のため、支払いが未決 unilateral-登録されていない、もしくは確認済みでないメールアド 済となっている状態。 レスに対して支払いが行われたため、支払いが未決済となっている状 態。 verify-マーチャント認証が完了していないため、支払いが未決済と なっている状態。この支払いを受け取るには、アカウントの認証を実 行する必要があります。 other-上記以外の理由で支払いが未決済となっている状態。詳細は PayPal カスタマーサービスまでお問い合わせください。 69 オプションの API 操作 GetTransactionDetails API 表 A.6 支払い情報フィールド フィールド 説明 REASONCODE TransactionTypeがreversalになっている場合の支払い取り消し理由は以下 の通り: none- 理由コードなし。 chargeback-顧客によるチャージバックのため支払い取り消しが発 生した場合。 guarantee-返金保証に基づき顧客が支払いを取り消したため支払い 取り消しが発生した場合。 buyer-complaint-顧客からトランザクションに関するクレームが出 されたため、支払い取り消しが発生した場合。 refund- 顧客に払い戻しを行ったため、トランザクションで支払い other-上記以外の理由で支払い取り消しが発生した場合。 取り消しが発生した場合。 PROTECTIONELIGIBILITY バージョン64.4以降で、トランザクションにおいて有効な売り手保護の種 類は以下の通り: Eligible – 承認されていない支払い、および商品未受領の場合、売り ItemNotReceivedEligible – 商品未受領の場合、売り手はPayPalの売 手は、 PayPalの売り手保護ポリシーによって保護されます。 り手保護ポリシーによって保護されます。 UnauthorizedPaymentEligible –承認されていない支払いの場合、売 り手は、PayPalの売り手保護ポリシーによって保護されます。 Ineligible – 売り手は売り手保護ポリシーによって保護されません。 商品情報フィールド 表 A.7 商品情報フィールド フィールド 説明 INVNUM 元のトランザクションで設定した請求書番号。 文字数制限-半角英数字 127文字 CUSTOM 元のトランザクションで設定したカスタムフィールド。 文字数制限-半角英数字 127文字 NOTE PayPalウェブペイメントの注記フィールドに顧客が入力したメモ。 文字数制限-半角英数字 255文字 SALESTAX 支払いに対して請求される税額。 70 オプションの API 操作 GetTransactionDetails API 表 A.8 商品フィールド フィールド 説明 L_DESCn 支払いに対して請求される税額。 これらのパラメータは、0から順に指定する必要があります。 (例:L_DESC0、L_DESC1) L_NUMERn 売り手が設定した商品番号。ショッピングカートトランザクションの場 合、item_number1、item_number2というように、PayPalによりHTMLの item_number変数の後に商品の番号が付加されます。 文字数制限-半角英数字127文字まで これらのパラメータは、0から順に指定する必要があります。 (例:L_NUMBER0、L_NUMBER1) L_QTYn 売り手が設定した数量、または顧客が入力した数量。 文字数制限-制限なし。 L_AMTn 商品原価。 これらのパラメータは、0から順に指定する必要があります。 (例:L_AMT0、L_AMT1) L_OPTIONSNAMEn ショッピングカート内の商品のPayPalオプション名。それぞれの名前は オプション値に対応します。商品ごとに複数のオプ ション名が可能です。 オプション名は、 0から順に指定する必要があります。 (例:L_OPTIONSNAMES0、L_OPTIONSNAME1) L_OPTIONSVALUEn ショッピングカート内の商品のオプション名に対応するPayPalオプショ ン値。 オプション名は、 0から順に指定する必要があります。 (例:L_OPTIONSVALUE0、L_OPTIONSVALUE1) オークションフィールド 表 A.9 オークションフィールド フィールド 説明 BUYERID 顧客のオークションID CLOSINGDATE オークション終了日 MULTIITEM 複数商品のオークションの支払いに使用されるカウンタ 71 オプションの API 操作 GetTransactionDetails API 購読条件フィールド 表 A.10 購読条件フィールド フィールド 説明 AMT 1回の支払いで購読者に請求される金額。 PERIOD 購読者に請求が行われる期間。 文字数制限-制限なし 文字数制限-制限なし RefundTransaction API トランザクションに関連付けられている PayPal アカウント保持者に払い戻しを行います。 RefundTransactionリクエスト RefundTransactionレスポンス RefundTransactionリクエスト 表 A.11 支払い商品情報フィールド フィールド 説明 METHOD RefundTransactionである必要があります。 TRANSACTIONID (必須)トランザクションID。 文字数制限-半角英数字 17文字。 REFUNDTYPE AMT (必須)実行する払い戻しのタイプ Other Full Partial 払い戻し金額。RefundTypeがPartialの場合は、金額が必要です。 注:RefundTypeが Fullの場合は、金額を設定しないでください。 NOTE (オプション)払い戻しに関するカスタムメモ。 文字数制限-半角英数字255文字まで 72 オプションの API 操作 GetTransactionDetails API RefundTransactionレスポンス 表 A.12 RefundTransactionレスポンスフィールド フィールド 説明 REFUNDTRANSACTIONID 払い戻しの固有のトランザクションID。 文字数制限-半角英数字17文字まで FEEREFUNDAMT 元の支払い受取人に払い戻されるトランザクション手数料。 GROSSREFUNDAMT 元の支払い人に払い戻される金額。 NETREFUNDAMT この払い戻しを行うために、元の支払い受取人のPayPal残高から差し引 かれる金額。 DoCapture API 承認された支払いに対する売上げを回収します。 DoCaptureリクエスト DoCaptureレスポンス DoCaptureリクエスト 表 A.13 DoCaptureリクエストフィールドフィールド フィールド 説明 METHOD (必須)DoCaptureである必要があります。 AUTHORIZATIONID (必須)支払い承認ID番号です。これは、DoExpressCheckoutPayment またはDoDirectPaymentから返されるトランザクションIDです。 文字数制限-半角19文字まで AMT (必須)売上げ金額です。 文字数制限-値は正の数値で、いずれの通貨でも米ドルで$10,000相当額 を超えることはできません。通貨記号なし。小数点以下2桁までとし、小 数点記号はピリオド(.)を使用し、オプションの桁区切り記号はコンマ (,)を使用しなければなりません。 CURRENCYCODE (オプション)3桁の通貨コード デフォル通貨:米ドル 73 オプションの API 操作 DoCapture API 表 A.13 DoCapture リクエストフィールドフィールド フィールド 説明 COMPLETETYPE (必須)値Completeは最後の売り上げであることを示します。値 NotCompleteは、追加売り上げの予定があることを示します。 注:Completeの場合、元の承認済みトランザクションの残りの金額は自 動的に無効になり、残りの未決済の承認はすべて無効になります。 文字数制限-半角英数字12文字まで INVNUM (オプション)トランザクション履歴でマーチャントおよび顧客に対して 表示される請求書番号またはその他の識別番号。 注 : DoCaptureのこの値は、以前DoAuthorizationに設定された値を上書き します。 注:取得する承認が基本承認ではなく注文承認の場合のみ、この値が記録 されます。 文字数制限-半角英数字127文字まで NOTE (オプション)この決済に関して支払い人へのメールおよびトランザクシ ョン履歴に表示される注記。 文字数制限-半角255字まで 74 オプションの API 操作 DoCapture API 表 A.13 DoCapture リクエストフィールドフィールド フィールド 説明 SOFTDESCRIPTOR (オプション)このソフト記述子は、顧客のクレジットカード利用明細書 に渡されるトランザクションごとの支払いの説明です。ソフト記述子フィ ールドの値が入力されると、記述子全体は、顧客の利用明細書に以下の形 式で表示されます: <PP * | PAYPAL *><支払い受け取り設定で設定されたマーチャント記述 子 ><空白 1つ ><ソフト記述子 > ソフト記述子に使用できる文字は以下の通り: 英数字 -(ダッシュ) *(アスタリスク) . (ピリオド) {空白} 他の文字 (例:“ ,”)を使用すると、エラーコードが返されます。ソ フト記述子には電話番号を含むことはできません。電話番号は、マーチャ ントのカスタマーサービス番号とPayPalのカスタマーサービス番号の間 で切り替えられる可能性があるためです。 ソフト記述子全体の文字数は最大22文字までです。このうち4文字または 8文字は、データ形式に表示されるPayPal接頭辞によって使用されます。 従ってAPIリクエストで渡されるソフト記述子の最大文字数は次のように 求められます: 22- len(<PP * | PAYPAL *>)- len(<支払い受け取り設定で設定された記述 子 > + 1) 例えば、次のような状況を仮定した場合: PayPal接頭辞トグルが PayPalの管理ツールでPAYPAL*に設定され ている。 マーチャント記述子が支払い受け取り設定で EBAYに設定されてい る。 ソフト記述子は JanesFlowerGifts LLCとして渡される。 この結果、クレジットカードの記述子の文字列は次のようになります: PAYPAL*EBAY JanesFlow 75 オプションの API 操作 DoCapture API DoCaptureレスポンス DoCaptureレスポンスのフィールド PayerInfoタイプのフィールド 配送先住所のフィールド 支払い人名のフィールド 注:バージョン 56.0 以降の DoCapture API を使用する場合、返り値が保証されるのは、承認 ID、トランザク ション ID、トランザクションタイプ、支払日、総額、および支払いステータスのみです。その他のフィールド の値が必要で、その値が返されない場合は、あとで GetTransactionDetails をコールするか、レポート機能を利 用して値を取得することができます。 表 A.14 DoCaptureレスポンスのフィールド フィールド 説明 AUTHORIZATIONID リクエストで指定した承認ID。 文字数制限-半角19文字まで PayerInfo のフィールド 表 A.15 PayerInfoタイプのフィールド フィールド 説明 EMAIL リクエストで指定した承認ID。 文字数制限-半角19文字まで PAYERID 固有のPayPal顧客ID。 文字数制限-半角英数字13文字まで PAYERSTATUS 支払い人のステータス。有効な値は以下の通りです。 verified unverified 文字数制限-半角英字10文字まで COUNTRYCODE ISO標準3166の2文字の国コード形式で表された、支払い人の居住国。 文字数制限-半角文字2文字まで 76 オプションの API 操作 DoCapture API 表 A.15 PayerInfo タイプのフィールド フィールド 説明 BUSINESS 支払い人の事業名。 文字数制限-半角127文字まで 配送先住所のフィールド 表 A.16 配送先住所のフィールド フィールド 説明 ADDRESSSTATUS PayPalに記録されている住所のステータス。有効な値は以下の通りです。 SHIPTONAME none Confirmed Unconfirmed この住所が登録されている個人の名前。 文字数制限-半角32文字まで SHIPTOSTREET SHIPTOSTREET2 SHIPTOCITY SHIPTOSTATE 住所の1行目。 文字数制限-半角100文字まで 住所の 2 行目。 文字数制限-半角 100 文字まで 市区町村の名前。 文字数制限-半角 40 文字まで 都道府県。 文字数制限-半角 40 文字まで 米国の住所の場合のみ必須です。米国の ZIP コードまたはその他の国の SHIPTOZIP 郵便番号。 文字数制限-半角 20 文字まで SHIPTOCOUNTRYCODE 国コード。 文字数制限-半角文字 2 文字まで 77 オプションの API 操作 DoCapture API 支払い人名のフィールド 表 A.15 支払い人名のフィールド フィールド 説明 SALUTATION 支払い人の敬称。 文字数制限-半角20文字まで FIRSTNAME 支払い人の名。 文字数制限-半角25文字まで MIDDLENAME 支払い人のミドルネーム。 文字数制限-半角25文字まで LASTNAME 支払い人の姓。 文字数制限-半角25文字まで SUFFIX 支払い人のサフィックス。 文字数制限-半角12文字まで 78 オプションの API 操作 DoCapture API 79 ウェブペイメントスタンダードからウェ ブペイメントプラスへの移行 ウェブペイメントスタンダードからウェブペイメントプラスに移行する場合、以下の変更をおこなう必要があり ます。 1. FORM タグで、 action 属性の cmd 値を次のように変更します。 変更前: <form action="https://www.paypal.com/cgi-bin/webscr" method="post"> <input type="hidden" name="cmd" value="_xclick"> 変更後: <form action=”https://securepayments.paypal.com/acquiringweb?cmd=_hosted¬ payment” method="post"><input type="hidden" name="cmd"value="_hostedpayment"> 2. HTML 変数 amount を subtotal に変更します。 注:ウェブペイメントスタンダードでは amount と quantity にそれぞれ値がありますが、ウェブペイメン トプラスでは subtotal のみを使用します。小計には、適用する割引や商品の数量を考慮した上で、買い手 に請求する金額を含めるようにしてください。 3. 決済ページの色や背景などをカスタマイズしている場合は、ウェブペイメントプラスにおいてそれらの設 定を再度行う必要があります。支払いページのデザインのカスタマイズについては、3 章「PayPal支払い ページのカスタマイズ」を参照してください。 80 ウェブペイメントスタンダードからウェブペイメントプラスへの移行 サンプルコードの比較 ウェブペイメントスタンダードコードとウェブペイメントプラスコードの比較を以下に示します。 注:下記のサンプルに太字で示されている通り、ウェブペイメントスタンダードにおける amount と quantity はそれぞれ 10 と 2、ウェブペイメントプラスにおける subtotal は 20 となっており、ウェブペイメントスタン ダードの amount と quantity の合計と、ウェブペイメントプラスの subtotal が同じであることがわかります。 ウェブペイメントスタンダードのサンプルコード <form action="https://www.paypal.com/cgi-bin/webscr" method="post"> <input type="hidden" name="cmd" value="_xclick"> <input type="hidden" name="business" value="[email protected]"> <input type="hidden" name="amount" value="10"> <input type="hidden" name="quantity" value="2"> <input type="hidden" name="tax" value="1"> <input type="hidden" name="currency_code" value="USD"> <input type="hidden" name=" invoice" value="MEM32507725"> <!-- Enable override of payer’s stored PayPal address.--> <input type="hidden" name="address_override" value="1"> <!-- Set prepopulation variables to override stored address.--> <input type="hidden" name="first_name" value="John"> <input type="hidden" name="last_name" value="Doe"> <input type="hidden" name="address1" value="345 Lark Ave"> <input type="hidden" name="city" value="San Jose"> <input type="hidden" name="state" value="CA"> <input type="hidden" name="zip" value="95121"> <input type="hidden" name="country" value="US"> <input type="hidden" name="bn" value="CC_Partner_WPS"> <input type="hidden" name="notify_url" value="https://www.paypal.com/IPN/"> <input type="image" name="submit" border="0"src="https://www.paypal.com/img.gif "> </form> ウェブペイメントプラスのサンプルコード <form action=”https://securepayments.paypal.com/acquiringweb?cmd=_hosted payment”method="post"><input type="hidden" name="cmd" value="_hosted payment"> <input type="hidden" name="business" value="HNZ3QZMCPBAAA"> <input type="hidden" name="subtotal" value="20"> <input type="hidden" name="paymentaction" value="sale"> <input type="hidden" name="currency_code" value="USD"> <input type="hidden" name="invoice" value="MEM32507725"> <input type="hidden" name="template" value=”TemplateB"> <!-- Enable override of payer’s stored PayPal address.--> <input type="hidden" name="address_override" value="true"> <input type="hidden" name="showShippingAddress" value="false"> <!-- Set prepopulation variables to override stored address.--> <input type="hidden" name="first_name" value="John"> <input type="hidden" name="last_name" value="Doe"> <input type="hidden" name="address1" value="345 Lark Ave"> 81 ウェブペイメントスタンダードからウェブペイメントプラスへの移行 <input type="hidden" name="city" value="San Jose"> <input type="hidden" name="state" value="CA"> <input type="hidden" name="zip" value="95121"> <input type="hidden" name="country" value="US"> <input type="hidden" name="billing_first_name" value="John"> <input type="hidden" name=" billing_last_name" value="Doe"> <input type="hidden" name=" billing_address1" value="345 Lark Ave"> <input type="hidden" name=" billing_city" value="San Jose"> <input type="hidden" name=" billing_state" value="CA"> <input type="hidden" name=" billing_zip" value="95121"> <input type="hidden" name=" billing_country" value="US"> <input type="hidden" name="bn" value="CC_Partner_H3S"> <input type="hidden" name="notify_url" value="https://www.paypal.com/IPN/"> <input type="image" name="submit" border="0" src="https://www.paypal.com/img.gif "> </form> 82 ウェブペイメントスタンダードからウェブペイメントプラスへの移行 83 エラーメッセージ 下の表は、エラーコードと適切な解決方法を一覧にしたものです。 表C.1 エラーコードと対応する解決方法 エラーコード エラーメッセージ 解決方法 10001 Your payment can't be processed right now. 後でもう 1 度やり直してください。 Please try again later. お客様の支払いは、現在処理できません。し ばらくしてからもう一度実行してください。 10009 Your payment can't be processed. Please 後でもう 1 度やり直してください。 contact the merchant directly with this code.お客様の支払いを処理できません。この コードを使用し、マーチャントに直接お問い 合わせください。 10010 Your payment can't be processed. Please 有効な請求書 ID を入力してください。 contact the merchant directly with this code. お客様の支払いを処理できません。このコー ドを使用し、マーチャントに直接お問い合わ せください。 10413 Your payment can't be processed. Please 小計、配送料、手数料および税額。インテグレーション contact the merchant directly with this code. の合計を確認してください。 お客様の支払いを処理できません。このコー ドを使用し、マーチャントに直接お問い合わ せください。 10500 Your payment can't be processed. Please 請求処理規約に同意していません。 contact the merchant directly with this code. お客様の支払いを処理できません。このコー ドを使用し、マーチャントに直接お問い合わ せください。 10501 Your payment can't be processed. Please 請求処理規約が無効です。 contact the merchant directly with this code. お客様の支払いを処理できません。このコー ドを使用し、マーチャントに直接お問い合わ せください。 84 エラーメッセージ 表 C.1 エラーコードと対応する解決方法 エラーコード エラーメッセージ 解決方法 10502 Your credit card has expired. Please pay with ご使用になったクレジットカードは有効期限が切れて a valid card. います。 クレジットカードの期限が切れています。有 効なカードでお支払いください。 10504 Please enter a valid card security code. 入力した CVV コードが無効です。CVV コードは 3 桁ま 有効なカード確認コードを入力してくださ たは 4 桁です。 い。 10507 Your payment can't be processed. Please PayPal アカウントが制限されています。このエラーコ contact the merchant directly with this code. ードで PayPal にお問い合わせください。 お客様の支払いを処理できません。このコー ドを使用し、マーチャントに直接お問い合わ せください。 10508 Please enter a valid card 有効期限は正しい形式で入力してください。 expiration date.有効なカード有効期限を入力 してください。 10509 Your payment can't be processed. Please 買い手の IP アドレスを特定できませんでした。 contact the merchant directly with this code. お客様の支払いを処理できません。このコー ドを使用し、マーチャントに直接お問い合わ せください。 10511 Your payment can't be processed. Please インテグレーションを確認して、有効な PaymentAction contact the merchant directly with this code. 値を指定してください。 お客様の支払いを処理できません。このコー ドを使用し、マーチャントに直接お問い合わ せください。 10512 Please enter a first name. 買い手の名が必要です。 名を入力してください。 10513 Please enter a last name. 買い手の姓が必要です。 姓を入力してください。 10520 Your payment can't be processed. Please 金額が一致しません。 contact the merchant directly with this code. お客様の支払いを処理できません。このコー ドを使用し、マーチャントに直接お問い合わ せください。 85 エラーメッセージ 表 C.1 エラーコードと対応する解決方法 エラーコード エラーメッセージ 解決方法 10523 Your payment can't be processed right 後でもう 1 度やり直してください。 now. Please try again later. お客様の支払いは、現在、処理できません。 しばらくしてからもう一度実行してくだ さい。 10525 10527 Please enter a valid amount. インテグレーションを検証して、金額がゼロにならない 有効な金額を入力してください。 ようにしてください。 Please enter a valid card number. 入力したクレジットカードは無効です。 有効なカード番号を入力してください。 10534 Your payment can't be processed. Please 入力したクレジットカードは、現在 PayPal により制限 contact the merchant directly with this を受けています。このエラーコードで PayPal にお問い code. 合わせください。 お客様の支払いを処理できません。このコ ードを使用し、マーチャントに直接お問い 合わせください。 10535 Please enter a valid card number. 入力したクレジットカードは無効です。 有効なクレジットカード番号を入力して ください。 10536 Your payment can't be processed. Please ショッピングカート内のすべての商品は同一通貨でな contact the merchant directly with this ければなりません。 code. お客様の支払いを処理できません。このコ ードを使用し、マーチャントに直接お問い 合わせください。 10539 Your payment can't be processed. Please お客様の支払いを処理できません。このコードを使用 contact the merchant directly with this し、マーチャントに直接お問い合わせください。 code. お客様の支払いを処理できません。このコ ードを使用し、マーチャントに直接お問い 合わせください。 10540 Please enter a valid address. このトランザクションは、住所が無効なため PayPal に 有効な住所を入力してください。 よって拒否されました。買い手は正しい住所を入力する 必要があります。 86 エラーメッセージ 表 C.1 エラーコードと対応する解決方法 エラーコード エラーメッセージ 解決方法 10541 Please enter a valid card number. 入力したクレジットカードは、現在 PayPal により制限さ 有効なクレジットカード番号を入力し れています。このエラーコードで PayPal にお問い合わせ てください。 ください。 Please enter a valid email address. メールアドレスの形式が無効です。買い手は正しい形式で 有効なメールアドレスを入力してくだ メールアドレスを入力する必要があります。 10542 さい。 10544 Your payment can't be processed. トランザクションは PayPal によって拒否されました。こ Please contact the merchant directly のエラーコードで PayPal にお問い合わせください。 with this code. お客様のトランザクションを処理でき ません。このコードを使用し、マーチャ ントに直接お問い合わせください。 10545 Your payment can’t be processed. このトランザクションは、不正行為の可能性があるため、 Please pay with another credit card. PayPal によって拒否されました。このエラーコードで お客様の支払いを処理できません。別の PayPal にお問い合わせください。 クレジットカードでお支払いください。 10546 Your payment can't be processed. このトランザクションは、IP アドレスの不正使用の可能 Please contact the merchant directly 性があるため、PayPal によって拒否されました。このエ with this code. ラーコードで PayPal にお問い合わせください。 お客様のトランザクションを処理でき ません。このコードを使用し、マーチャ ントに直接お問い合わせください。 10547 Your payment can't be processed. なし。これは PayPal の内部エラーです。 Please contact the merchant directly with this code. お客様のトランザクションを処理でき ません。このコードを使用し、マーチャ ントに直接お問い合わせください。 10548 Your payment can't be processed. トランザクションを実行しようとしているマーチャント Please contact the merchant directly アカウントは、PayPal のビジネスアカウントではありま with this code. せん。アカウント設定を確認してください。 お客様のトランザクションを処理でき ません。このコードを使用し、マーチャ ントに直接お問い合わせください。 87 エラーメッセージ 表 C.1 エラーコードと対応する解決方法 エラーコード エラーメッセージ 解決方法 10549 Your payment can't be processed. Please このトランザクションを実行しようとしているマ contact the merchant directly with this code. ーチャントアカウントは、ダイレクト決済を実行 お客様のトランザクションを処理できませ できません。このエラーコードで PayPal にお問 ん。このコードを使用し、マーチャントに直 い合わせください。 接お問い合わせください。 10550 Your payment can't be processed. Please お客様のアカウントではダイレクト支払いへのア contact the merchant directly with this code. クセスが無効です。このエラーコードで PayPal お客様のトランザクションを処理できませ にお問い合わせください。 ん。このコードを使用し、マーチャントに直 接お問い合わせください。 10552 Your payment can't be processed. Please トランザクションを実行しようとしているマーチ contact the merchant directly with this code. ャントアカウントには、PayPal の確認済みメー お客様のトランザクションを処理できませ ルアドレスがありません。アカウント設定を確認 ん。このコードを使用し、マーチャントに直 してください。 接お問い合わせください。 10553 Your payment can't be processed. Please マーチャントは、そのマーチャントの上限を超え contact the merchant directly with this code. る金額のトランザクションをしようとしました。 お客様のトランザクションを処理できませ ん。このコードを使用し、マーチャントに直 接お問い合わせください。 10557 Your payment can't be processed. Please 支払い受け取り設定を確認してください。ご不明 contact the merchant directly with this code. な点は、Paypal にお問い合わせください。 お客様のトランザクションを処理できませ ん。このコードを使用し、マーチャントに直 接お問い合わせください。 10558 Your payment can't be processed. Please 指定したクレジットカードは、ご希望の通貨で処 contact the merchant directly with this code. 理できません。 お客様のトランザクションを処理できませ ん。このコードを使用し、マーチャントに直 接お問い合わせください。 10561 Please enter a complete billing address. 買い手は完全な請求書送付先を入力する必要があ 完全な請求書送付先住所を入力してくださ ります。 い。 10562 Please enter a valid year for the credit card 買い手はカード有効期限の有効な年を入力する必 expiration date. 要があります。 クレジットカード有効期限の有効な年を入力 してください。 88 エラーメッセージ 表 C.1 エラーコードと対応する解決方法 エラーコード エラーメッセージ 解決方法 10563 Please enter a valid month for the credit 買い手はカード有効期限の有効な月を入力する必要が card expiration date. あります。 クレジットカード有効期限の有効な月を入 力してください。 10564 Your payment can't be processed. Please トランザクションの重複が検出されたため、買い手に contact the merchant directly with this code. 後でもう一度試すようアドバイスします。 お客様のトランザクションを処理できませ ん。このコードを使用し、マーチャントに 直接お問い合わせください。 10565 Your payment can't be processed. Please マーチャントの国がサポートされていません。 contact the merchant directly with this code. お客様のトランザクションを処理できませ ん。このコードを使用し、マーチャントに 直接お問い合わせください。 10566 Your payment can't be processed. Please サポートされていないクレジットカードタイプです。 pay with a different card type. お客様のトランザクションを処理できませ ん。別のタイプのカードでお支払いくださ い。 10570 Your payment can’t be processed. Please 指定したクレジットカードは「承認」をサポートして pay with another credit card. いません。 お客様の支払いを処理できません。別のク レジットカードでお支払いください。 10701 Please enter a valid name for the billing 指定したクレジットカードは「承認」をサポートして address. いません。 お客様の支払いを処理できません。別のク レジットカードでお支払いください。 10702 Please enter a valid address in line 1 of the 買い手は請求書送付先住所の 1 行目に有効な住所を入 billing address. 力する必要があります。 請求書送付先住所の1行目に有効な住所を 入力してください。 10703 Please enter a valid address in line 2 of the 買い手は請求書送付先住所の 2 行目に有効な住所を入 billing address. 力する必要があります。 請求書送付先住所の2行目に有効な住所を 入力してください。 89 エラーメッセージ 表 C.1 エラーコードと対応する解決方法 エラーコード エラーメッセージ 解決方法 10704 Please enter a valid city in the billing address. 買い手は請求書送付先住所に有効な市区町村を入力する必 請求書送付先住所に有効な市区町村を入力し 要があります。 てください。 10705 Please enter a valid state in the billing 買い手は請求書送付先住所に有効な都道府県を入力する必 address. 要があります。 請求書送付先住所に有効な都道府県を入力し てください。 10706 Please enter a valid zip code in the billing 買い手は請求書送付先住所に有効な郵便番号を入力する必 address. 要があります。 請求書送付先住所に有効な郵便番号を入力し てください。 10707 Please enter a valid country in the billing 買い手は請求書送付先住所に有効な国を入力する必要があ address. ります。 請求書送付先住所に有効な国を入力してくだ さい。 10708 Please enter a complete billing address. 買い手は完全な請求書送付先を入力する必要があります。 完全な請求書送付先住所を入力してくださ い。 10709 Please enter an address in 買い手は請求書送付先住所の 1 行目に住所を入力する必要 line 1 of the billing address. があります。 請求書送付先住所の 1 行目に住所を入力して ください。 10710 Please enter a city in the 買い手は請求書送付先住所に市区町村を入力する必要があ billing address. ります。 請求書送付先住所に市区町村を入力してくだ さい。 10711 Please enter a state in the 買い手は請求書送付先住所に都道府県を入力する必要があ billing address. ります。 請求書送付先住所に都道府県を入力してくだ さい。 10712 Please enter a valid zip code in the billing 買い手は請求書送付先住所に有効な郵便番号を入力する必 address. 要があります。 請求書送付先住所に有効な郵便番号を入力し てください。 10713 Please enter a valid country in the billing 買い手は請求書送付先住所に国を入力する必要があります。 address. 請求書送付先住所に有効な国を入力してくだ さい。 90 エラーメッセージ 表 C.1 エラーコードと対応する解決方法 エラーコード エラーメッセージ 解決方法 10714 請求書送付先住所に有効な名前を入力してく 買い手は請求書送付先住所に有効な名前を入力する必要が ださい。 あります。 Please enter a valid state in the billing 買い手は請求書送付先住所に有効な都道府県を入力する必 address. 要があります。 10715 請求書送付先住所に有効な都道府県を入力し てください。 10716 Please enter a valid zip code in the billing 買い手は請求書送付先住所に有効な郵便番号を入力する必 address. 要があります。 請求書送付先住所に有効な郵便番号を入力し てください。 10717 Please enter a valid zip code in the billing 買い手は請求書送付先住所に有効な郵便番号を入力する必 address. 要があります。 請求書送付先住所に有効な郵便番号を入力し てください。 10718 Please enter a valid city in the billing address. 買い手は有効な市区町村を入力する必要があります。 請求書送付先住所に有効な市区町村を入力し てください。 10719 Please enter a valid addressee name in the 買い手は配送先住所に有効な宛名を入力する必要がありま shipping address. す。 配送先住所に有効な宛名を入力してくださ い。 10720 Please enter a valid address in line 1 of the 買い手は配送先住所の 1 行目に有効な住所を入力する必要 shipping address. があります。 配送先住所の 1 行目に有効な住所を入力して ください。 10721 Please enter a valid address in line 2 of the 買い手は配送先住所の 2 行目に有効な住所を入力する必要 shipping address. があります。 配送先住所の2行目に有効な住所を入力して ください。 10722 Please enter a valid city in the shipping 買い手は配送先住所に有効な市区町村を入力する必要があ address. ります。 配送先住所に有効な市区町村を入力してくだ さい。 10723 Please enter a valid state in the shipping 買い手は配送先住所に有効な都道府県を入力する必要があ address. ります。 配送先住所に有効な都道府県を入力してくだ さい。 91 エラーメッセージ 表 C.1 エラーコードと対応する解決方法 エラーコード エラーメッセージ 解決方法 10724 Please enter a valid postal code in 買い手は配送先住所に有効な郵便番号を入力する必要がありま the shipping address. す。 配送先住所に有効な郵便番号を入力 してください。 10725 Please enter a valid country in the 買い手は配送先住所に有効な国を入力する必要があります。 shipping address. 配送先住所に有効な国を入力してく ださい。 10726 Please enter a complete shipping 買い手は完全な配送先住所を入力する必要があります。 address. 完全な配送先住所を入力してくださ い。 10727 Please enter an address in line 1 of 買い手は配送先住所の 1 行目に住所を入力する必要がありま the shipping address. す。 配送先住所の 1 行目に住所を入力し てください。 10728 Please enter a city in the shipping 買い手は配送先住所に市区町村を入力する必要があります。 address. 配送先住所に市区町村を入力してく ださい。 10729 Please enter a state in the shipping 買い手は配送先住所に都道府県を入力する必要があります。 address. 配送先住所に都道府県を入力してく ださい。 10730 Please enter a postal code in the 買い手は配送先住所に有効な郵便番号を入力する必要がありま shipping address. す。 配送先住所に郵便番号を入力してく ださい。 10731 Please enter a country in the 買い手は配送先住所に国を入力する必要があります。 shipping address. 配送先住所に国を入力してくださ い。 10732 Please enter a valid addressee 買い手は配送先住所に有効な宛名を入力する必要があります。 name in the shipping address. 配送先住所に有効な宛名を入力して ください。 92 エラーメッセージ 表 C.1 エラーコードと対応する解決方法 エラーコード エラーメッセージ 解決方法 10733 Please enter a valid state in the 買い手は配送先住所に有効な都道府県を入力 shipping address. する必要があります。 配送先住所に有効な都道府県を入力 してください。 10734 Please enter a valid postal code in 買い手は配送先住所に有効な郵便番号を入力 the shipping address. する必要があります。 配送先住所に有効な郵便番号を入力 してください。 10735 Please enter a valid postal code in 買い手は配送先住所に有効な郵便番号を入力 the shipping address. する必要があります。 配送先住所に有効な郵便番号を入力 してください。 10736 Please enter a valid city and state in 買い手は配送先住所に有効な市区町村および the shipping address. 都道府県を入力する必要があります。 配送先住所に有効な市区町村および 都道府県を入力してください。 10744 Please enter a valid country in the 買い手は請求書送付先住所に有効な国を入力 billing address. する必要があります。 請求書送付先住所に有効な国を入力 してください。 10745 Please enter a valid country in the 買い手は配送先住所に有効な国を入力する必 shipping address. 要があります。 配送先住所に有効な国を入力してく ださい。 10746 Your payment can't be processed. この国のクレジットカードはサポートされて Please contact the merchant directly いません。 with this code. お客様の支払いを処理できません。 このコードを使用し、マーチャント に直接お問い合わせください。 10747 Your payment can't be processed. このエラーコードで PayPal にお問い合わせく Please contact the merchant directly ださい。 with this code. お客様の支払いを処理できません。 このコードを使用し、マーチャント に直接お問い合わせください。 10748 Please enter a card security code. 買い手はカード確認コードを入力する必要が カード確認コードを入力してくださ あります。 い。 93 エラーメッセージ 表 C.1 エラーコードと対応する解決方法 エラーコード エラーメッセージ 解決方法 10750 Please enter a valid state in the shipping address. 買い手は配送先住所に有効な都道府県を入力する必 配送先住所に有効な都道府県を入力してください。 要があります。 Please enter a valid state in the billing address. 買い手は請求書送付先住所に有効な都道府県を入力 請求書送付先住所に有効な都道府県を入力してくだ する必要があります。 10751 さい。 10752 Your payment can't be processed. Please pay with PayPal ではなく発行銀行により、トランザクション another card. が拒否されました。買い手は別のカードを試す必要 お客様の支払いを処理できません。別のカードでお があります。 支払いください。 10754 Your payment can't be processed. Please pay with 買い手は別のクレジットカードを使用する必要があ another card. ります。 お客様の支払いを処理できません。別のカードでお 支払いください。 10755 Your payment can't be processed. Please contact インテグレーションを確認して、この通貨コードが the merchant directly with this code. サポートされるようにしてください。 お客様の支払いを処理できません。このコードを使 用し、マーチャントに直接お問い合わせください。 10756 Your payment can't be processed. Please pay with 買い手は別のクレジットカードを使用する必要があ another card. ります。 お客様の支払いを処理できません。別のカードでお 支払いください。 10759 Your payment can't be processed. Please pay with トランザクションは PayPal に拒否されました。この another card. エラーコードで PayPal にお問い合わせください。 お客様の支払いを処理できません。別のカードでお 支払いください。 10761 Your payment can't be processed because this PayPal が現在同じ買い手による同じ金額のトランザ transaction appears to be a duplicate of a recent クションの処理中のため、このトランザクションは transaction. 拒否されました。買い手が複数の同じトランザクシ このトランザクションは最近のトランザクションと ョンを連続しておこなった場合にこのエラーが発生 重複している可能性があるため、支払いを処理でき することがあります。 ません。 10762 Your payment can't be processed. Please pay with クレジットカードのカード確認コードの試行許容回 another card. 数を超過しました。買い手は別のカードを使用する お客様の支払いを処理できません。別のカードでお 必要があります。 支払いください。 10763 Your payment can't be processed. Please contact なし。これは PayPal の内部エラーです。 the merchant directly with this code. お客様の支払いを処理できません。このコードを使 用し、マーチャントに直接お問い合わせください。 94 エラーメッセージ 表 C.1 エラーコードと対応する解決方法 エラーコード エラーメッセージ 解決方法 10764 Your payment can't be processed. Please contact トランザクションは PayPal によって拒否されまし the merchant directly with this code. た。このエラーコードで PayPal にお問い合わせくだ お客様の支払いを処理できません。このコードを使 さい。 用し、マーチャントに直接お問い合わせください。 11998 Please enter the date when your credit card became 買い手はクレジットカードの正しい開始日を入力す valid. る必要があります。 クレジットカードが有効になった日を入力してくだ さい。 15001 15002 Your payment can't be processed. Please pay with このクレジットカードで短時間に多数の不具合があ another card. ったため、トランザクションは PayPal によって拒否 お客様の支払いを処理できません。別のカードでお されました。このエラーコードで PayPal にお問い合 支払いください。 わせください。 Your payment can't be processed. Please pay with トランザクションは PayPal によって拒否されまし another card. た。このエラーコードで PayPal にお問い合わせくだ お客様の支払いを処理できません。別のカードでお さい。 支払いください。 15003 15004 Your payment can't be processed. Please contact マーチャントの有効な営利団体規約が PayPal に登 the merchant directly with this code. 録されていないため、トランザクションが拒否され お客様の支払いを処理できません。このコードを使 ました。このエラーコードで PayPal にお問い合わせ 用し、マーチャントに直接お問い合わせください。 ください。 Please enter a valid CardSecurity Code. 入力したカード確認コードがクレジットカードと一 有効なカードセキュリティコードを入力してくださ 致しないため、トランザクションが拒否されました。 い。 15005 Your payment can't be processed. Please pay with PayPal ではなく発行銀行により、トランザクション another card. が拒否されました。買い手は別のカードを試す必要 お客様の支払いを処理できません。別のカードでお があります。 支払いください。 15006 Please enter a valid card number. PayPal ではなく発行銀行により、トランザクション 有効なカード番号を入力してください。 が拒否されました。買い手は別のカードを試す必要 があります。 15007 15008 Your card is expired. Please pay with a valid card. クレジットカードの有効期限が切れているため、発 カードの期限が切れています。有効なカードでお支 行銀行によりトランザクションが拒否されました。 払いください。 買い手は別のカードを試す必要があります。 Your payment can't be processed. Please contact インテグレーションを確認して、合計が一致するよ the merchant directly with this code. うにしてください。 お客様の支払いを処理できません。このコードを使 用し、マーチャントに直接お問い合わせください。 95 エラーメッセージ 表 C.1 エラーコードと対応する解決方法 エラーコード エラーメッセージ 解決方法 15009 Your payment can't be processed. Please contact 通貨コードの不一致があります。このエラーコード the merchant directly with this code. で PayPal にお問い合わせください。 お客様の支払いを処理できません。このコードを使 用し、マーチャントに直接お問い合わせください。 99998 Your payment can't be processed. Please contact クレジットカードのデータが無効です。このエラー the merchant directly with this code. コードで PayPal にお問い合わせください。 お客様の支払いを処理できません。このコードを使 用し、マーチャントに直接お問い合わせください。 96 エラーメッセージ 97 D 通貨コード 次の表は、 PayPal でサポートされるすべての通貨を一覧にしたものです。 表 D.1 通貨コード 通貨コード 通貨名 AUD オーストラリアドル CAD カナダドル CHF スイスフラン CZK チェココルナ DKK デンマーククローネ EUR ユーロ GBP 英ポンド HKD 香港ドル HUF ハンガリーフォリント JPY 日本円 NOK ノルウェークローネ NZD ニュージーランドドル PLN ポーランドズロティ SEK スウェーデンクローナ SGD シンガポールドル USD 米国ドル 98 通貨コード 99 索引 A BUTTONTYPE 41 address_override 13 BUTTONTYPE=PAYMENT 35 address1 13 buyer_email 13 address2 13 API integration(APIによるインテグレーション) 36 C cancel_return 13 B cbt 14 background(背景) 26 city 14 billing_address1 13 clear text buttons 35 billing_address2 13 CLEARTEXT 35 billing_city 13 country 15 billing_country 13 currency codes(通貨コード)95 billing_first_name 13 currency_code 14 billing_last_name 13 custom 14 billing_state 13 customising payment page(PayPal支払いページのカスタ billing_zip 13 マイズ) 17 BMCreateButton API 35 customising your template(テンプレートのカスタマイズ) BMCreateButton API Operation(BMCreateButton API操作) 41 26 BMCreateButton Errors(BMCreateButtonエラー) 42 BMCreateButton Request(BMCreateButtonリクエスト)41 D BMCreateButton Request Fields(BMCreateButtonリクエストフィ DoCapture API 70 ールド) 41 BMCreateButton Response(BMCreateButtonレスポンス) 42 E BMCreateButton Response Fields(BMCreateButtonレスポンスフ EMAILLINK 32, 36, 42 ィールド) 42 ENCRYPTED 35 bn 13 encrypted buttons(暗号化ボタン) 35 bodyBgColor 27 encryption(暗号化) 39 bodyBgImg 27 encryption process(暗号化処理) 54 business 13 error messages(エラーメッセージ) 81 button(ボタン) 26 Express Checkout(PayPalエクスプレスチェックアウト) 9 button hosting(ボタンの配置) 35 clear text buttons(クリアテキストボタン) 35 F encrypted buttons(暗号化ボタン) 35 first_name 14 token buttons(トークンボタン) 35 footerTextColor 27 Button Manager API 35 BUTTONCODE 41 G BUTTONCODE=CLEARTEXT 35 GetTransactionDetails API 52, 59 BUTTONCODE=ENCRYPTED 35 BUTTONCODE=HOSTED 35 BUTTONCODE=TOKEN 35 100 Index H O handling 14 optional API operations(オプションのAPI操作) 59 header 26 order processing(注文処理の続行) 51 headerBgColor 27 orderSummaryColumn(注文サマリー欄) 26 headerHeight 27 orderSummaryBgColor 27 HOSTED 35 orderSummaryBgImage 27 HOSTEDBUTTONID 42 OutputFile 58 HTML integration(HTMLによるウェブサイトのインテグレーシ overview(概要) 7 ョン) 11 HTTP variables(HTML変数) 13, 27 P pageButtonBgColor 27 pageButtonTextColor 27 I iFrames 29 API integration(APIによるインテグレーション) 31 manual integration(HTMLによるインテグレーション) 30 pageTitleTextColor 27 paymentaction 14 PCI complicance(PCIコンプライアンス) 7 InputFile 58 PPCertFile 58 Instant Payment Notification (IPN) (即時支払い通知)51 preconfigured account(テスト用アカウント)45 integration preview(プレビュー) 22 API 35 previous version(以前のバージョン)22 HTML 11 private key(秘密鍵) 39 invoice 14 private keys(秘密鍵) 54 generating(OpenSSLによる秘密鍵の自動生成) 55 L public certificate L_BUTTONVAR 41 downloading(PayPalウェブサイトからのPayPal公開証 last_name 14 明書のダウンロード) 56 lc 14 generating(OpenSSLによる公開鍵証明書の自動生成) logoFont 27 55 logoFontColor 27 removing(公開証明書の削除) 56 logoFontSize 27 uploading(PayPalアカウントへの公開証明書アップロ ード) 55 logoImage 27 logoImagePosition 27 public key(公開鍵) 39 logoText 27 public keys(公開鍵) 54 M R METHOD 41 RefundTransaction API 69 modifying account settings(PayPalアカウント設定の変更) 17 return 15 N night_phone_a 14 night_phone_b 14 night_phone_c 14 notify_url 14 101 Index S save and publish(保存して公開) 22 sectionBorder 27 settings(設定) 19 shipping 15 showBillingAddress 28 showBillingEmail 28 showBillingPhone 28 showCustomerName 28 showHostedThankyouPage 28 showShippingAddress 28 simple integration(シンプルなインテグレーション) 11 state 15 subheaderText 28 subtotal 15 T tax 15 template 28 Template A 23 Template B 24 Template C 25 testing your integration(Sandboxでのインテグレーション のテスト) 45 title 26 TOKEN 35 token buttons 35 transaction status(トランザクションステータス) 51 W WEBSITECODE 32, 38, 42 Z zip 15 102
© Copyright 2024 Paperzz