# Commercetools Checkout の Stripe Payment アプリをインストールして設定する Commercetools インスタンスを設定して決済アプリをインストールする方法をご紹介します。 Stripe Payments を Commercetools Checkout に導入します。Commercetools Checkout は、安全な決済のための構築済み決済 UI を提供します。 ![](https://b.stripecdn.com/docs-statics-srv/assets/stripe-connector-commercetools-checkout.a24103434b6b5cf0cfe4391ddfec842d.png) Commercetools Merchant Center に掲載されている Checkout Connector ## Before you begin アプリをインストールする前に、以下を行ってください。 1. Stripe アカウントの詳細を入力して、接続を確立します。 1. アプリをインストールする Commercetools インスタンス内の組織とプロジェクトを指定します。 1. コンポーザブルコマースプロジェクトで Commercetools Checkout を有効にします。 1. Commercetools インスタンスから直接アプリをインストールして設定する準備をします。 ## アプリをインストールする 1. Commercetools インスタンスの Connect Marketplace から、**Stripe Payment for Checkout** を選択します。 1. Commercetools の設定ページで、アプリをインストールする地域、組織、プロジェクトを選択します。 1. 次に、環境変数と設定の詳細を指定します。 1. Commercetools Checkout の設定ページで **Add payments (支払いを追加)** をクリックして、決済手段を有効にします。 1. **Add payments (決済を追加)** ページで、次の操作を行います。 - **Payment app (決済アプリ)** で、**Stripe Payment for Checkout** を選択します。 - **Drop-in payment integration name (ドロップイン決済連携名)** には、表示する連携名を入力します。 - **Payment integration key (決済連携キー)** には、2 文字から 256 文字の英数字、アンダースコア、ハイフンで構成されたキーを入力します。 - ステータスを切り替えて有効にします。 ## Stripe Payment アプリを設定する 以下のインストール変数を使用してアプリを設定します。 | 変数 | 説明 | | ------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `CTP_API_URL` | Commercetools コンポーザブルコマース API の URL。デフォルト値は `https://api.europe-west1.gcp.commercetools.com` です。 | | `CTP_AUTH_URL` | OAuth 2.0 トークンの生成に使用される Commercetools プラットフォームでの認証用の URL。Commercetools コンポーザブルコマースへのすべての API コールには、OAuth 2.0 トークンが必要です。デフォルト値は `https://auth.europewest1.gcp.commercetools.com` です。 | | `CTP_CLIENT_ID` | Commercetools コンポーザブルコマースユーザーアカウントのクライアント ID。Commercetools クライアントはクライアント ID を使用して、SDK を介して Commercetools コンポーザブルコマースと通信します。 | | `CTP_CLIENT_SECRET` | Commercetools コンポーザブルコマースユーザーアカウントの Client Secret。Commercetools クライアントは Client Secret を使用して、SDK を介して Commercetools コンポーザブルコマースと通信します。 | | `CTP_JWKS_URL` | JSON Web キーセットを提供する URL。 | | `CTP_JWT_ISSUER` | JWT 検証プロセスに必要な JSON Web トークンの発行者。 | | `CTP_PROJECT_KEY` | Commercetools コンポーザブルコマースプロジェクトのキー。 | | `CTP_SCOPE` | スコープは、Commercetools クライアントがアクセスでき、読み取りと書き込みのアクセス権を持つエンドポイントを定義します。 | | `CTP_SESSION_URL` | Commercetools プラットフォームでのセッション作成用の URL。コネクターは、作成されたセッションを使用してイネーブラーとプロセッサーの間で情報を共有します。デフォルト値は `https://session.europewest1.gcp.commercetools.com` です。 | | `STRIPE_APPEARANCE_EXPRESS_CHECKOUT` | [Stripe Elements](https://docs.stripe.com/payments/elements.md) はデザインのカスタマイズに対応しており、デザインオプションでサイトのデザインと親和性を持たせることができます。この値は、Express Checkout Element のデザインを定義します。 | | `STRIPE_APPEARANCE_PAYMENT_ELEMENT` | Stripe Elements はデザインのカスタマイズに対応しており、デザインオプションでサイトのデザインと親和性を持たせることができます。この値は、Payment Element のデザインを定義します。 | | `STRIPE_CAPTURE_METHOD` | Stripe のキャプチャー方法 (手動または自動)。デフォルト値は `automatic` です。 | | `STRIPE_SECRET_KEY` | Stripe はアカウントの API キーを使用して API リクエストを認証します。デフォルトのシークレット API キーを使用する代わりに、[制限付きアクセスキー](https://docs.stripe.com/keys.md)を作成することをお勧めします。 | | `STRIPE_WEBHOOK_ID` | Webhook エンドポイントに対する Stripe の一意の識別子。 | | `STRIPE_WEBHOOK_SIGNING_SECRET` | Webhook の署名を検証するために公式ライブラリで使用される Stripe シークレットキー。このキーは Stripe ダッシュボードで作成されます。 | ## 一般的な設定 コネクターの設定で、Payment Connector イネーブラーによって生成されたコンポーネントのキャプチャーモード (手動または自動) を変更できます。イネーブラーは、Payment Connector プロセッサーに接続されている支払いコンポーネントを管理します。プロセッサーは、Stripe でそれぞれのメタデータを設定した Payment Intent を作成し、Webhook イベントを Commercetools の支払い取引に変換します。 Stripe Payment Element と Express Checkout Element のデザインは、Stripe Payment Connector の設定から変更できます。 ## Webhook Stripe は、貴社のアカウントでイベントが発生すると、[Webhook](https://docs.stripe.com/webhooks.md) を使用して貴社のアプリケーションに通知します。Webhook は、顧客の銀行が支払いを確認したときや支払いを拒否したとき、または支払いがキャンセルされたときや返金されたときに、支払い取引を更新するのに便利です。 Stripe は次の Webhook に対応しています。 | イベントタイプ | 説明 | | -------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `charge.refunded` | `charge.captured` が true の場合、Commercetools で支払いに `Refund:Success` 取引を追加します。 | | `charge.succeeded` | 支払いがキャプチャーされていない場合は、Commercetools で支払いを作成します。支払いが行われた場合は、Commercetools で支払いに `Authorization:Success` 取引を追加します。 | | `payment_intent.canceled` | Commercetools で支払いに `CancelAuthorization:Success` 取引を追加します。 | | `payment_intent.payment_failed` | コネクターアプリのプロセッサーログの情報を記録します。 | | `payment_intent.requires_action` | コネクターアプリのプロセッサーログの情報を記録します。 | | `payment_intent.succeeded` | このイベントは、次のいずれかのキャプチャー方法を使用して処理できます。 - 自動: `paymentIntent.capture_method` が自動の場合は、Commercetools で支払いを作成して、それに `Charge:Success` 取引を追加します。 - 手動: `paymentIntent.capture_method` が手動の場合は、Commercetools で支払いに `Charge:Success` 取引を追加します。 | ## 変更ログとコードへのアクセス [GitHub リポジトリ](https://github.com/stripe/stripe-commercetools-checkout-app/releases) からコネクタの変更とアップグレードを監視できます。