# ナイジェリアのカードによるサブスクリプションを設定する ナイジェリアのカードを使用したサブスクリプションの作成と請求の方法をご紹介します。 決済手段として[Naira カード](https://docs.stripe.com/payments/ng-card/accept-a-payment.md)を使用する*サブスクリプション* (A Subscription represents the product details associated with the plan that your customer subscribes to. Allows you to charge the customer on a recurring basis)を設定します。 # SetupIntents API > This is a SetupIntents API for when api-integration is setupintents. View the full page at https://docs.stripe.com/billing/subscriptions/ng-card?api-integration=setupintents. 2 回の API コールを使用してサブスクリプションを作成し、確定します。[最初の API コール](https://docs.stripe.com/billing/subscriptions/ng-card.md#create-setup-intent)で顧客と商品の情報を [Subscriptions API](https://docs.stripe.com/api/subscriptions.md) に送信し、1 回のコールでサブスクリプションと PaymentIntent を作成します。レスポンスには PaymentIntent ID が含まれます。これを [Payment Intents API](https://docs.stripe.com/api/payment_intents.md) コールで使用して、支払いを確定する必要があります。 ## 商品と価格を作成する [ダッシュボード] [Products (商品)](https://docs.stripe.com/api/products.md) は、販売しているアイテムまたはサービスを表します。[Prices (価格)](https://docs.stripe.com/api/prices.md) は、商品の価格と請求頻度を定義します。これには、商品の価格、受け付ける通貨、および 1 回限りの支払いか継続支払いかが含まれます。商品と価格が数個のみの場合は、ダッシュボードでそれらを作成および管理します。 このガイドでは、例としてストックフォトサービスを使用し、100,000 NGN の月次サブスクリプションを顧客に請求します。これをモデル化するには、次のようにします。 1. [商品](https://dashboard.stripe.com/products?active=true)ページに移動し、**商品を作成**をクリックします。 1. 商品の**名前**を入力します。オプションで**説明**を追加して、商品の画像をアップロードできます。 1. **商品税コード**を選択します。[商品税コード](https://docs.stripe.com/tax/tax-codes.md)の詳細をご確認ください。 1. **継続**を選択します。次に、価格に**100,000**を入力し、通貨として**\**を選択します。 1. **価格に税金を含める**かどうかを選択します。[税金設定](https://dashboard.stripe.com/test/settings/tax)のデフォルト値を使用するか、値を手動で設定できます。この例では、**自動**を選択します。 1. **請求期間**で**月次**を選択します。 1. **その他の料金体系オプション**をクリックします。次に、この例の料金体系モデルとして**定額**を選択します。[定額料金](https://docs.stripe.com/products-prices/pricing-models.md#flat-rate)とその他の[料金体系モデル](https://docs.stripe.com/products-prices/pricing-models.md)の詳細をご確認ください。 1. 将来的に特定の価格を整理、クエリ、更新するために、内部**価格の説明**と[検索キー](https://docs.stripe.com/products-prices/manage-prices.md#lookup-keys) 追加します。 1. **次へ**をクリックします。次に、**商品を追加**をクリックします。 商品と価格を作成したら、価格 ID を記録しておき、後続のステップで使用できるようにします。ID は料金体系ページで `price_G0FvDp6vZvdwRZ` のように表示されます。 > この支払い方法を使用するには、価格を NGN に換算する必要があります。 ## SetupIntent を作成する [サーバー側] 今後の支払いに備えて顧客の支払い方法を保存するために、[SetupIntent (支払い方法設定インテント)](https://docs.stripe.com/api/setup_intents.md) を作成します。`SetupIntent` はこの設定プロセスのステップを追跡します。 ```curl curl https://api.stripe.com/v1/setup_intents \ -u "<>:" \ -d confirm=true \ --data-urlencode "return_url=https://www.stripe.com" \ -d usage=off_session \ -d customer=cus_ODQluYFNl44ODI \ -d "payment_method_data[type]=ng_card" \ -d "payment_method_types[]=ng_card" \ -d "mandate_data[customer_acceptance][type]=online" \ -d "mandate_data[customer_acceptance][online][ip_address]=127.0.0.0" \ -d "mandate_data[customer_acceptance][online][user_agent]=device" ``` SetupIntent オブジェクトには、一意の `client_secret` が含まれます。これをクライアント側で Stripe.js に渡して、顧客を現地の決済代行業者の決済ページにリダイレクトし、同意書を承認します。 ## サブスクリプションを作成する [サーバー側] 価格と顧客を含むサブスクリプションを作成します。`default_payment_method` パラメーターの値を SetupIntent から返された PaymentMethod ID に設定します。 ```curl curl https://api.stripe.com/v1/subscriptions \ -u "<>:" \ -d customer={{CUSTOMER_ID}} \ -d "items[0][price]={{PRICE_ID}}" \ -d default_payment_method={{PAYMENT_METHOD_ID}} \ -d off_session=true ``` サブスクリプションを作成すると、事前設定されたデフォルトの決済手段に基づいて顧客に自動的に請求されます。決済が成功すると、Stripe ダッシュボードのステータスが `Active` に変わります。以前に設定した価格によって、今後の請求額が決まります。[無料トライアル期間付きのサブスクリプションを作成する方法](https://docs.stripe.com/billing/subscriptions/trials.md)をご覧ください。 ## 支払いを確定する [サーバー側] サブスクリプションレスポンスの PaymentIntent ID を使用し、[PaymentIntents (支払いインテント)](https://docs.stripe.com/api/payment_intents.md) で支払いを確定します。その後、PaymentIntent ID を URL パスに追加して、`payment_method_types` パラメーターの値を `ng_card` に設定します。 ```curl curl https://api.stripe.com/v1/payment_intents/:id/confirm \ -u "<>:" \ --data-urlencode "return_url=https://www.stripe.com" \ -d "payment_method_data[]=type" \ -d "payment_method_data[]=ng_card" ``` PaymentIntent のレスポンスには、`requires_action` ステータスが含まれます。このステータスは、顧客が PaymentIntent を完了するために選択した支払い方法で支払いを完了する必要があることを示しています。支払いが成功すると、サブスクリプションは有効になり、その支払い方法がデフォルトの支払い方法として保存されます。 # Subscriptions API > This is a Subscriptions API for when api-integration is subscription. View the full page at https://docs.stripe.com/billing/subscriptions/ng-card?api-integration=subscription. 2 つの API コールを使用して、サブスクリプションを作成して確定します。 - [最初の API コール](https://docs.stripe.com/billing/subscriptions/ng-card.md#pi-create-subscription)は、顧客と商品の情報を [Subscriptions API](https://docs.stripe.com/api/subscriptions.md) に送信し、1 回のコールでサブスクリプションと PaymentIntent を作成します。 - 2 回目の API コールは [Payment Intents API](https://docs.stripe.com/api/payment_intents.md) に送られ、最初の API コールのレスポンスで PaymentIntent ID を使用して[支払いを確認](https://docs.stripe.com/billing/subscriptions/ng-card.md#pi-confirm-payment)します。 ## 商品と価格を作成する [ダッシュボード] [Products (商品)](https://docs.stripe.com/api/products.md) は、販売しているアイテムまたはサービスを表します。[Prices (価格)](https://docs.stripe.com/api/prices.md) は、商品の価格と請求頻度を定義します。これには、商品の価格、受け付ける通貨、および 1 回限りの支払いか継続支払いかが含まれます。商品と価格が数個のみの場合は、ダッシュボードでそれらを作成および管理します。 このガイドでは、例としてストックフォトサービスを使用し、100,000 NGN の月次サブスクリプションを顧客に請求します。これをモデル化するには、次のようにします。 1. [商品](https://dashboard.stripe.com/products?active=true)ページに移動し、**商品を作成**をクリックします。 1. 商品の**名前**を入力します。オプションで**説明**を追加して、商品の画像をアップロードできます。 1. **商品税コード**を選択します。[商品税コード](https://docs.stripe.com/tax/tax-codes.md)の詳細をご確認ください。 1. **継続**を選択します。次に、価格に**100,000**を入力し、通貨として**\**を選択します。 1. **価格に税金を含める**かどうかを選択します。[税金設定](https://dashboard.stripe.com/test/settings/tax)のデフォルト値を使用するか、値を手動で設定できます。この例では、**自動**を選択します。 1. **請求期間**で**月次**を選択します。 1. **その他の料金体系オプション**をクリックします。次に、この例の料金体系モデルとして**定額**を選択します。[定額料金](https://docs.stripe.com/products-prices/pricing-models.md#flat-rate)とその他の[料金体系モデル](https://docs.stripe.com/products-prices/pricing-models.md)の詳細をご確認ください。 1. 将来的に特定の価格を整理、クエリ、更新するために、内部**価格の説明**と[検索キー](https://docs.stripe.com/products-prices/manage-prices.md#lookup-keys) 追加します。 1. **次へ**をクリックします。次に、**商品を追加**をクリックします。 商品と価格を作成したら、価格 ID を記録しておき、後続のステップで使用できるようにします。ID は料金体系ページで `price_G0FvDp6vZvdwRZ` のように表示されます。 ## サブスクリプションを作成する [サーバー側] [payment_behavior](https://docs.stripe.com/api/subscriptions/create.md#create_subscription-payment_behavior) パラメーターに `default_incomplete` の値を指定して、`incomplete` ステータスで価格と顧客を指定した [Subscription (サブスクリプション)](https://docs.stripe.com/api/subscriptions.md) を作成します。`payment_settings.save_default_payment_method=on_subscription` パラメーターを設定して、サブスクリプションが有効化されたときに支払い方法を保存します。 ```curl curl https://api.stripe.com/v1/subscriptions \ -u "<>:" \ -d customer={{CUSTOMER_ID}} \ -d payment_behavior=default_incomplete \ -d "items[0][price]={{PRICE_ID}}" \ -d "payment_settings[save_default_payment_method]=on_subscription" \ -d "expand[0]=latest_invoice.payments" \ -d "expand[1]=latest_invoice.confirmation_secret" ``` レスポンスには、*サブスクリプション* (A Subscription represents the product details associated with the plan that your customer subscribes to. Allows you to charge the customer on a recurring basis)の最初の [Invoice](https://docs.stripe.com/api/invoices.md) が含まれます。これには請求書の決済が含まれ、Stripe がこの請求書用に生成したデフォルトの PaymentIntent と、PaymentIntent オブジェクト全体を渡す代わりに、クライアント側で安全に決済プロセスを完了するために使用できる確認用シークレットが含まれます。決済を確定するために必要な PaymentIntent ID は、`latest_invoice.payments` から取得します。決済を完了するには、`latest_invoice.confirmation_secret.client_secret` をフロントエンドに返します。[無料トライアル期間付きのサブスクリプションを作成する方法](https://docs.stripe.com/billing/subscriptions/trials.md)をご覧ください。 ## 支払いを確定する [サーバー側] サブスクリプションレスポンスの PaymentIntent ID を使用し、[PaymentIntents (支払いインテント)](https://docs.stripe.com/api/payment_intents.md) で支払いを確定します。その後、PaymentIntent ID を URL パスに追加して、`payment_method_types` パラメーターの値を `ng_card` に設定します。 ```curl curl https://api.stripe.com/v1/payment_intents/:id/confirm \ -u "<>:" \ -d "payment_method_data[type]=ng_card" \ --data-urlencode "return_url=https://www.stripe.com" \ -d "mandate_data[customer_acceptance][type]=online" \ -d "mandate_data[customer_acceptance][online][ip_address]=127.0.0.0" \ -d "mandate_data[customer_acceptance][online][user_agent]=device" \ -d "mandate_data[customer_acceptance][accepted_at]=1660000000" ``` PaymentIntent のレスポンスには、`requires_action` ステータスが含まれます。これは、顧客が支払いを完了するために現地の代行業者で認証する必要があることを示しています。支払いが成功すると、サブスクリプションは有効になり、その支払い方法がデフォルトの支払い方法として保存されます。 # Stripe がオンラインで提供するページ > This is a Stripe がオンラインで提供するページ for when api-integration is checkout. View the full page at https://docs.stripe.com/billing/subscriptions/ng-card?api-integration=checkout. [Checkout API](https://docs.stripe.com/api/checkout/sessions.md) を使用すると、構築済みの決済ページでサブスクリプションを作成して確認できます。 ## 商品と価格を作成する [ダッシュボード] [Products (商品)](https://docs.stripe.com/api/products.md) は、販売しているアイテムまたはサービスを表します。[Prices (価格)](https://docs.stripe.com/api/prices.md) は、商品の価格と請求頻度を定義します。これには、商品の価格、受け付ける通貨、および 1 回限りの支払いか継続支払いかが含まれます。商品と価格が数個のみの場合は、ダッシュボードでそれらを作成および管理します。 このガイドでは、例としてストックフォトサービスを使用し、100,000 NGN の月次サブスクリプションを顧客に請求します。これをモデル化するには、次のようにします。 1. [商品](https://dashboard.stripe.com/products?active=true)ページに移動し、**商品を作成**をクリックします。 1. 商品の**名前**を入力します。オプションで**説明**を追加して、商品の画像をアップロードできます。 1. **商品税コード**を選択します。[商品税コード](https://docs.stripe.com/tax/tax-codes.md)の詳細をご確認ください。 1. **継続**を選択します。次に、価格に**100,000**を入力し、通貨として**\**を選択します。 1. **価格に税金を含める**かどうかを選択します。[税金設定](https://dashboard.stripe.com/test/settings/tax)のデフォルト値を使用するか、値を手動で設定できます。この例では、**自動**を選択します。 1. **請求期間**で**月次**を選択します。 1. **その他の料金体系オプション**をクリックします。次に、この例の料金体系モデルとして**定額**を選択します。[定額料金](https://docs.stripe.com/products-prices/pricing-models.md#flat-rate)とその他の[料金体系モデル](https://docs.stripe.com/products-prices/pricing-models.md)の詳細をご確認ください。 1. 将来的に特定の価格を整理、クエリ、更新するために、内部**価格の説明**と[検索キー](https://docs.stripe.com/products-prices/manage-prices.md#lookup-keys) 追加します。 1. **次へ**をクリックします。次に、**商品を追加**をクリックします。 商品と価格を作成したら、価格 ID を記録しておき、後続のステップで使用できるようにします。ID は料金体系ページで `price_G0FvDp6vZvdwRZ` のように表示されます。 ## Checkout セッションを作成する [サーバー側] Stripe Checkout で Naira カードによる支払いを受け付ける前に、顧客は、お客様が今後の支払いにナイジェリアのクレジットカードを使用することを承認する必要があります。サーバー側のエンドポイントを呼び出して[Checkout Session (セッション)](https://docs.stripe.com/api/checkout/sessions.md)を作成する購入ボタンをウェブサイトに追加します。 ```html Checkout
``` `subscription` モードで Checkout セッションを作成して、必要な情報を収集します。Checkout セッションを作成したら、レスポンスで返される [Checkout セッション URL](https://docs.stripe.com/api/checkout/sessions/object.md#checkout_session_object-url) に顧客をリダイレクトします。 ```curl curl https://api.stripe.com/v1/checkout/sessions \ -u "<>:" \ --data-urlencode "success_url=https://example.com/success" \ -d "line_items[0][price]={{RECURRING_PRICE_ID}}" \ -d "line_items[0][quantity]=1" \ -d "payment_method_types[0]=card" \ -d "payment_method_types[1]=ng_card" \ -d mode=subscription ``` ## 実装内容をテストする [サーバー側] 決済手段として Naira カードを選択してから、**登録**をタップします。リダイレクトページで支払いを認証することで、支払いの成功ケースをテストできます。PaymentIntent のステータスが `requires_action` から `succeeded` に移行します。