Billing Quickstar / 請求クイックスタート

「決済」及び「開発」関連用語集

カテゴリー: Stripe  閲覧数:332 配信日:2019-03-05 10:02


docs


Billing > Quickstart
Billing Quickstart
請求クイックスタート

Stripe Billing


Stripeプラットフォームに組み込まれた定期的な請求エンジン

Stripe Billing の役割
・請求書を作成する
・請求エンジンは自動的に請求書の支払いを集めるように働く

請求書
・次の2つの方法のいずれかで作成される
・1.手動 - 一回限りの請求書
・2.自動 - 定期購読を繰り返す

請求方法


Stripeでの顧客への請求は簡単
・必要に応じて顧客に請求することも、 購読を使用して定期的に請求することもできる

一時請求書を作成するには?
・1.Stripeアカウントに顧客を作成する
・2.あなたのストライプダッシュボードから、あなたの顧客のための一回限りの請求書を作成する

定期的に顧客に自動的に請求するには、次の3つの手順に従う
・1.請求額と期間を設定した「サービス製品と料金プラン」を定義する
・2.Stripeアカウントに顧客を作成する
・3.顧客をプランに登録する

・このクイックスタートの残りの部分では、サブスクリプション手順について詳しく説明する

ステップ1:サービス製品と料金プランを定義する


サブスクリプションを作成する前に
・まず「顧客へ提供する予定のサービスを表す製品」を作成する必要がある
・商品とサービスの2種類がある
・商品はOrders APIでの使用を目的としているが、サービスは購読用である
・商品を作成するときは、 typeパラメータを使用して正しい商品を指定する
・次のコードは、サービスタイプ製品を作成する方法を示している
// Set your secret key: remember to change this to your live secret key in production
// See your keys here: https://dashboard.stripe.com/account/apikeys
\Stripe\Stripe::setApiKey("sk_test_●●");

$product = \Stripe\Product::create([
   'name' => 'My SaaS Platform',
   'type' => 'service',
]);


APIを介して商品を作成する場合
・レスポンスにはIDが含まれている
・これを使用して商品にプランを添付することができる

plan
・アイテムごとのコスト、通貨、および請求サイクルを表すオブジェクト
・すべての plan は、product に添付されている
・バリエーションの数に応じて、1つの計画または数百の計画を定義する必要がある
・例えば、様々な地域で異なる通貨を受け入れる場合は、同じ商品にUSDとJPYの計画を別々に作成することをお勧めする
・既存の product に plan を添付するには、 productパラメータの値として目的の商品のIDを渡す
・ このコードはAPIを介してSaaS Platform USDプランを作成し、それを製品に添付する
// Set your secret key: remember to change this to your live secret key in production
// See your keys here: https://dashboard.stripe.com/account/apikeys
\Stripe\Stripe::setApiKey("sk_test_●●");

$plan = \Stripe\Plan::create([
   'product' => 'prod_CbvTFuXWh7BPJH',
   'nickname' => 'SaaS Platform USD',
   'interval' => 'month',
   'currency' => 'usd',
   'amount' => 10000,
]);


・Stripeは、関連するすべての詳細を含む新しいplanオブジェクトを返す

・プランには、プラン作成時に自動的に生成される一意のIDがある
・顧客をプランに加入させるときに、APIリクエストでこのIDを提供してくれ
・このチュートリアルの残りの部分では、 ダッシュボードまたはAPIを使用してSaaS Platform USDプランを作成したことを前提としている

ステップ2:顧客を作成する


customer
・実際の顧客を表すStripeオブジェクトで、支払いを簡単に処理できる
・通常、Eメールアドレスなどのメタデータをcustomerオブジェクトに格納することもできる
・その後の請求を可能にするために、クレジットカードや銀行口座(ACH支払い用)など、保存された支払い方法の有無にかかわらず顧客を作成できる
・ SaaS Platform USDプランの初回および月額料金は100ドルであるため、保存された支払い方法を持つ顧客のみがそれを購読できる
・あなたは安全にCheckout または Elements を介して顧客の支払い情報を集めることができる
・このコードはAPIを介して顧客を作成し、保存された支払い方法として機能するためのソースを提供する
・"source"パラメータには、「Elements/Stripe.js で顧客のカード情報を取得した際のレスポンス」に含まれるソースID(src_xxxx)を指定
// Set your secret key: remember to change this to your live secret key in production
// See your keys here: https://dashboard.stripe.com/account/apikeys
\Stripe\Stripe::setApiKey("sk_test_●●");

$customer = \Stripe\Customer::create([
   'email' => 'jenny.rosen@example.com',
   'source' => 'src_18eYalAHEMiOZZp1l9ZTjSU0',
]);

・src_xxxxを適当に指定すると、エラー発生する
( ! ) Fatal error: Uncaught Stripe\Error\InvalidRequest: No such token: src_18eYalAHEMiOZZp1l9ZTjSU0

・Stripeは、すべての関連情報を含む新しいCustomerオブジェクトを返す
Stripe\Customer::__set_state(array(
  'saveWithParent' => false,
  '_opts' =>
 Stripe\Util\RequestOptions::__set_state(array(
    'headers' =>
   array (
   ),
    'apiKey' => 'sk_test_●●',
    'apiBase' => NULL,
 )),
  '_originalValues' =>
 array (
   'id' => 'cus_Ee8Xv5WGk84WdB',
   'object' => 'customer',
   'account_balance' => 0,
   'created' => 1551842256,
   'currency' => NULL,
   'default_source' => 'card_1EAqG7JiXAQvfxv3V1KS6XNm',
   'delinquent' => false,
   'description' => 'Customer for 2019年3月6日',
   'discount' => NULL,
   'email' => '◇◇@yahoo.co.jp',
   'invoice_prefix' => '8981C23',
   'invoice_settings' =>
   array (
     'custom_fields' => NULL,
     'footer' => NULL,
   ),
   'livemode' => false,
   'metadata' =>
   array (
   ),
   'shipping' => NULL,
   'sources' =>
   array (
     'object' => 'list',
     'data' =>
     array (
       0 =>
       array (
         'id' => 'card_1EAqG7JiXAQvfxv3V1KS6XNm',
         'object' => 'card',
         'address_city' => NULL,
         'address_country' => NULL,
         'address_line1' => NULL,
         'address_line1_check' => NULL,
         'address_line2' => NULL,
         'address_state' => NULL,
         'address_zip' => NULL,
         'address_zip_check' => NULL,
         'brand' => 'Visa',
         'country' => 'US',
         'customer' => 'cus_Ee8Xv5WGk84WdB',
         'cvc_check' => 'pass',
         'dynamic_last4' => NULL,
         'exp_month' => 1,
         'exp_year' => 2020,
         'fingerprint' => 'LMqocVHP8RNDkMLj',
         'funding' => 'credit',
         'last4' => '4242',
         'metadata' =>
         array (
         ),
         'name' => '◇◇@yahoo.co.jp',
         'tokenization_method' => NULL,
       ),
     ),
     'has_more' => false,
     'total_count' => 1,
     'url' => '/v1/customers/cus_Ee8Xv5WGk84WdB/sources',
   ),
   'subscriptions' =>
   array (
     'object' => 'list',
     'data' =>
     array (
     ),
     'has_more' => false,
     'total_count' => 0,
     'url' => '/v1/customers/cus_Ee8Xv5WGk84WdB/subscriptions',
   ),
   'tax_info' => NULL,
   'tax_info_verification' => NULL,
 ),
//以下省略


・上記はCustomerオブジェクトの一部に過ぎない
・顧客の作成呼び出しによって返された完全なオブジェクトも、この顧客にsubscriptionがないことを示している

・顧客を作成したら、後で参照できるように(おそらく顧客の電子メールアドレスとともに)自分のデータベースにid値を保存する
・PHPでの「id値」取得例
\Stripe\Stripe::setApiKey('sk_test_●●');

$customer = \Stripe\Customer::create([
  'description' => 'Customer for 2019年3月6日',
  'email' => $_POST['stripeEmail'],
  'source'  => $_POST['stripeToken'],
]);
echo $customer['id'];


ステップ3:顧客をplanに加入させる


最後に、planと顧客を関連付けてsubscriptionを作成する
・「'customer'」及び「'plan'」パラメータは、適切な値を設定しないと正常動作しない
// Set your secret key: remember to change this to your live secret key in production
// See your keys here: https://dashboard.stripe.com/account/apikeys
\Stripe\Stripe::setApiKey("sk_test_●●");

$subscription = \Stripe\Subscription::create([
   'customer' => 'cus_4fdAW5ftNQow1a',
   'items' => [['plan' => 'plan_CBXbz9i7AIOTzr']],
]);


・これで、顧客がプランに加入した
・舞台裏では、Stripeは請求サイクルごとに請求書を作成する
・請求書は、顧客に何の支払いがあるかを明示し、いつ請求されるかを反映し、支払い状況を追跡する
・セットアップ料金などの一時的な料金を、請求書に追加項目として追加することもできる

・ほとんどのサブスクリプションアクティビティはこの時点から自動的に行われるため(詳細については請求ワークフローとライフサイクルドキュメントを参照)、イベントが発生したときに通知を受けるWebフックを確立することをお勧めする


Tell me why I can also access as an array as an object

週間人気ページランキング / 11-16 → 11-22
順位 ページタイトル抜粋 アクセス数
1 EMVレベル1 / EMVレベル2 / EMVCo とは? 9
2 Stripe Q15。PaymentIntent でエラー。カード番号に不備があります。 | QA(Stripe) 4
3 Twitch | ゲーム実況配信サービス(課金販売できるプラットフォーム) 3
3 Stripe Connect > | documentation(Stripe) 3
4 Stripe Q37。PaymentIntentで支払いを行った後、成功画面を表示させるためにはどうすれば良いですか? | QA(Stripe) 2
4 \Stripe\PaymentIntentオブジェクト / Stripe\PaymentMethodオブジェクト / \Stripe\Checkout\Sessionオブジェクト 2
4 Stripe Q50。 Connect 「Standardアカウント」で、自身に連結された子アカウントを、ダッシュボードから削除するには? | QA(Stripe) 2
4 Stripe Payments > PREPARING FOR SCA > Payment Intents | documentation(Stripe) 2
5 Stripe webhook 配信の問題 / 実際に受け取った警告メールの受信例 1
5 「Gumroad」は、決済サービス「PayPal」を利用したオンラインコンテンツ販売サービス | デジタルコンテンツ販売可能なサービス(課金販売できるプラットフォーム) 1
5 Stripe Q43。payouts スケジュールについて | QA(Stripe) 1
5 Payment Intents API | その他エントリー(Stripe) 1
5 質問履歴29 / A抜粋 / 感想 1
5 Google Pay | 「支払、出金」機能を有する決済系サービス表(決済サービス) 1
5 普通送金 | 為替取引 1
5 Yahoo!ウォレット | 「チャージ、支払、送金、出金」機能を有する決済系サービス(決済サービス) 1
5 note | 課金販売できるプラットフォーム 1
5 LINE LIVE | ライブ配信サービス(課金販売できるプラットフォーム) 1
5 クレジットカード導入に関する当初の考え / クレジットカード導入に関する現在の考え / 自分の経験に照らし合わせて考えてみると 1
5 EPUB3 | ファイルフォーマット(電子書籍) 1
2024/11/23 1:02 更新
指定期間人気ページランキング / 2020-5-28 → 2024-11-22
順位 ページタイトル抜粋 アクセス数
1 Stripeアカウントへログインする際、モバイル端末で受信したコード入力を求められる理由は? | その他エントリー(Stripe) 2022
2 EMVCo | クレジットカード仕様(仕様) 1330
3 Stripe Q13。決済成功時に、「請求に紐づけられたメールアドレス」に対して、メール送信したいのですが、 | QA(Stripe) 972
4 Twitch | ゲーム実況配信サービス(課金販売できるプラットフォーム) 939
5 Stripe Q16。PaymentIntentの支払いで郵便番号入力を求められる。Radar rules の ZIP code を無効にしているのに | QA(Stripe) 927
6 クレジットカード決済 | 課金 909
7 決済用語 878
8 Stripe Q50。 Connect 「Standardアカウント」で、自身に連結された子アカウントを、ダッシュボードから削除するには? | QA(Stripe) 847
9 EMVレベル1 / EMVレベル2 / EMVCo とは? 818
10 Stripe Q1。Stripeにおける個人事業主の定義 | QA(Stripe) 804
11 pixivFANBOX | クリエイター支援プラットフォーム(課金販売できるプラットフォーム) 795
12 Omise | 「支払」機能を有する決済系サービス(決済サービス) 784
13 Stripe Q31。ダッシュボードでの「支払い作成」の見方について | QA(Stripe) 749
14 YouTube | 動画サービス(課金販売できるプラットフォーム) 718
15 プリペイドカード | カード 649
16 EPUB | ファイルフォーマット(電子書籍) 613
17 Stripe Q74.「お客様のビジネスの詳細」とは何ですか? | Stripe 594
18 Stripeで"No such token: src"と表示されたら、最初にAPIキーを確認する | Stripe エラー(Stripe) 577
19 サブスクリプション | 課金 565
20 Stripe エラー(Stripe) カテゴリー 487
2024/11/23 1:02 更新