開発環境を設定する
Stripe CLI とサーバー側 SDK についての理解を深めましょう。
Stripe のサーバー側 SDK およびコマンドラインインターフェイス (CLI) を使用することで、Stripe の REST API とやり取りできます。Stripe CLI で API を呼び出し、開発環境を効率化しましょう。
SDK を使用して、定型コードを記述しないようにします。環境からのリクエストの送信を開始するには、クイックスタートガイドにならって使用できる言語を選択します。
Chrome 拡張機能
このクイックスタートでは、Stripe システムへのコマンドラインアクセスを可能にするための必須ツールである、Stripe CLI をインストールします。Stripe Go サーバー側 SDK をインストールして、Go で記述されたアプリケーションから Stripe API にアクセスすることもできます。
学習内容
このクイックスタートでは以下について説明します。
- コードを記述することなく Stripe API を呼び出す方法
- Go モジュールを使用してサードパーティーの依存関係を管理する方法
- 最新の Stripe Go SDK v82.0.0 をインストールする方法
- 最初の SDK リクエストを送信する方法
初期セットアップ
まず、Stripe アカウントを作成するかサインインします。
Stripe CLI を設定する
インストール
コマンドラインから、インストールスクリプトを使用するか、オペレーティングシステムのバージョン管理されたアーカイブファイルをダウンロードして展開し、CLI をインストールします。
認証
Log in and authenticate your Stripe user Account to generate a set of restricted keys. To learn more, see Stripe CLI keys and permissions.
stripe login
キーボードの Enter キーを押し、ブラウザーでの認証プロセスを完了します。
Your pairing code is: enjoy-enough-outwit-win This pairing code verifies your authentication with Stripe. Press Enter to open the browser or visit https://dashboard.stripe.com/stripecli/confirm_auth?t=THQdJfL3x12udFkNorJL8OF1iFlN8Az1 (^C to quit)
設定を確定
CLI のインストールが完了し、Create a product (商品作成) API への単一の API リクエストを作成できるようになりました。
stripe products create \ --name="My First Product" \ --description="Created with the Stripe CLI"
レスポンスオブジェクトの id
内で商品 ID を探し、次のステップのために保存しておきます。
すべて正常に機能する場合、コマンドラインに以下のレスポンスが表示されます。
{ "id":
, "object": "product","prod_LTenIrmp8Q67sa"
次に、Create a price (価格作成) API を呼び出して、30 USD の価格を関連付けます。product
のプレースホルダーを商品 ID (例: prod_
) に入れ替えます。
stripe prices create \ --unit-amount=3000 \ --currency=usd \ --product=
{{PRODUCT_ID}}
すべて正常に機能する場合、コマンドラインに以下のレスポンスが表示されます。
{ "id":
, "object": "price","price_1KzlAMJJDeE9fu01WMJJr79o"
サードパーティーの依存関係を管理する
サードパーティーの依存関係の管理には、Go モジュールを使用することをお勧めします。Go モジュールを使用すると、新規ライブラリを追加し、Go プロジェクトに含めることができます。
Go を初期化する
新しいディレクトリで最初から開始する場合は、まず、依存関係を追跡するための go.
ファイルを作成する必要があります。以下に例を示します。
go mod init stripe-example
Go のサーバー側 SDK をインストールする
最新バージョンの Stripe Go サーバー側 SDK は、v82.0.0 です。Go バージョン 1.15 以降をサポートします。
ライブラリをインストールする
Go のパッケージマネージャーである Go モジュールを使用して、ライブラリをインストールします。
go get github.com/stripe/stripe-go/v82
Go モジュールを使用してライブラリを「新しい」プロジェクトにインストールすると、ライブラリはプロジェクトの go.mod ファイルに依存関係として自動的に追加されます。以下に例を示します。
module stripe-example go 1.18 require github.com/stripe/stripe-go/v82 82.0.0 // indirect
依存関係を同期する
「既存」のプロジェクトの管理対象の依存関係を適切に維持するには、次のコマンドを実行して、コードの依存関係を同期します。
go mod tidy
最初の SDK リクエストを実行する
これで、Go SDK がインストールされ、サブスクリプションの Product (商品) を作成し、いくつかの API リクエストに Price (価格) を関連付けられるようになりました。この例では、Product のレスポンスで返された商品 ID を使用して価格を作成しています。
package main import ( "fmt" "github.com/stripe/stripe-go/v82" "github.com/stripe/stripe-go/v82/product" "github.com/stripe/stripe-go/v82/price" ) func main() { stripe.Key = "sk_test_BQokikJOvBiI2HlWgH4olfQ2" product_params := &stripe.ProductParams{ Name: stripe.String("Starter Subscription"), Description: stripe.String("$12/Month subscription"), } starter_product, _ := product.New(product_params) price_params := &stripe.PriceParams{ Currency: stripe.String(string(stripe.CurrencyUSD)), Product: stripe.String(starter_product.ID), Recurring: &stripe.PriceRecurringParams{ Interval: stripe.String(string(stripe.PriceRecurringIntervalMonth)), }, UnitAmount: stripe.Int64(1200), } starter_price, _ := price.New(price_params) fmt.Println("Success! Here is your starter subscription product id: " + starter_product.ID) fmt.Println("Success! Here is your starter subscription price id: " + starter_price.ID) }
ファイルを create_
という名前で保存します。コマンドラインから、保存したファイルが含まれるディレクトリーに cd
で移動し、以下のコマンドを実行します。
go run create_price.go
すべて正常に機能する場合、コマンドラインに以下のレスポンスが表示されます。実装を構築する際に使用できるように、これらの ID を保存します。
Success! Here is your starter subscription product id: prod_0KxBDl589O8KAxCG1alJgiA6 Success! Here is your starter subscription price id: price_0KxBDm589O8KAxCGMgG7scjb