Stripe CLI について
Stripe CLI を使うと、開発者はターミナルから webhook をローカルに転送したり、テストイベントをトリガーしたり、Stripe API を呼び出したりできます。stripe login で認証した後、本番環境に影響を与えずに支払いフロー、サブスクリプション、金融ワークフローを検証できます。
主な機能
- 01ライブ webhook をローカル開発環境に転送する
- 02支払い確認やサブスクリプション変更などのテストイベントをトリガーする
- 03統合テストのために Stripe API を直接呼び出す
活用シーン
- 01支払い処理と webhook ハンドリングロジックをローカルでテストする
- 02サブスクリプション、請求書、課金ワークフローを検証する
- 03本番環境への導入なしに Stripe 統合をより迅速に反復する
インストール
OS またはパッケージマネージャーを選び、コマンドをターミナルで実行します。
インストール後にstripe --versionを実行して確認します。
コマンド例
よく使うコマンドを使う順に並べています。
詳細
Stripe CLI
Stripe CLI を使うと、ターミナルから直接 Stripe 連携を構築、テスト、管理できます。
CLI では、次のことができます。
- サードパーティ製ソフトウェアに頼らず、安全に Webhook をテストする
- Webhook イベントをトリガーしたり、テストしやすいようにイベントを再送信したりする
- API リクエストログをリアルタイムで追跡する
- API オブジェクトを作成、取得、更新、削除する

インストール
Stripe CLI は、macOS、Windows、Linux で利用できます。Linux では Ubuntu、Debian、RedHat、CentOS などのディストリビューションに対応しています。
npm(macOS、Linux、Windows)
Node.js >= 18 がインストールされている場合は、npm を使ってインストールできます。
npm install -g @stripe/cli
npx を使ってコマンドを直接実行することもできますが、その場合、stripe は PATH に追加されません。
npx @stripe/cli login
macOS
Homebrew:
brew install stripe
Linux
apt(Debian、Ubuntu):
curl -s https://packages.stripe.dev/api/security/keypair/stripe-cli-gpg/public | gpg --dearmor | sudo tee /usr/share/keyrings/stripe.gpg > /dev/null
echo "deb [signed-by=/usr/share/keyrings/stripe.gpg] https://packages.stripe.dev/stripe-cli-debian-local stable main" | sudo tee -a /etc/apt/sources.list.d/stripe.list
sudo apt update
sudo apt install stripe
yum/dnf(RedHat、Fedora、CentOS):
echo -e "[Stripe]\nname=stripe\nbaseurl=https://packages.stripe.dev/stripe-cli-rpm-local/\nenabled=1\ngpgcheck=0" | sudo tee -a /etc/yum.repos.d/stripe.repo
sudo yum install stripe
Windows
WinGet:
winget install Stripe.StripeCLI
Scoop:
scoop bucket add stripe https://github.com/stripe/scoop-stripe-cli.git
scoop install stripe
Docker
CLI は Docker イメージとしても利用できます:stripe/stripe-cli。
docker run --rm -it stripe/stripe-cli version
stripe version x.y.z (beta)
Docker を使った Password Store の設定
テストモードでは Password Store は不要ですが、ライブモードのリクエストを実行する場合は設定が必要です。
--api-keyフラグを付けることで、コマンドごとにライブモードのリクエストを実行することもできます。
entrypoint.shを作成します
#!/bin/sh
if ! [ -f ~/.gnupg/trustdb.gpg ] ; then
chmod 700 ~/.gnupg/
gpg --quick-generate-key stripe-live # This will generate a gpg key called "stripe-live"
fi
if ! [ -f ~/.password-store/.gpg-id ] ; then
pass init stripe-live # This will initialize a password store record named "stripe-live", using the gpg key above
pass insert stripe-live # This will insert value for the password store "stripe-live", which we will put Stripe Live Secret Key in
fi
string="$@"
liveflag="--live"
if [ -z "${string##*$liveflag*}" ] ;then
OPTS="--api-key $(pass show stripe-live)" # This will use the content of the password store "stripe-live" which was inserted in line 8
fi
#pass insert stripe-live
/bin/stripe $@ $OPTS
- Docker ファイル
Dockerfile-cliを作成します
FROM stripe/stripe-cli:vx.x.x
RUN apk add pass gpg-agent
COPY ./entrypoint.sh /entrypoint.sh
ENTRYPOINT [ "/entrypoint.sh" ]
- Docker イメージをビルドします
docker build -t stripe-cli -f Dockerfile-cli .
- パスワードボリュームを指定して Docker イメージを実行します。
$commandは適切な Stripe CLI コマンド(例:customers list)に置き換えてください
docker run --rm -it -v stripe-config://root/.config/stripe/ -v stripe-gpg://root/.gnupg/ -v stripe-pass://root/.password-store/ stripe-cli $command
ライブモードのリクエストを実行するには、
$commandの後に--liveを追加します。
パッケージマネージャーを使わない場合
お使いのプラットフォーム向けの最新リリースをGitHub Releases ページからダウンロードしてください。
macOS:
tar -xvf stripe_X.X.X_mac-os_ARCH.tar.gz
必要に応じて、stripe バイナリを /usr/local/bin に移動すると、どこからでも利用できます。
Linux:
tar -xvf stripe_X.X.X_linux_x86_64.tar.gz
stripe バイナリを PATH 上のディレクトリに移動します。
Windows:
stripe_X.X.X_windows_x86_64.zip を解凍し、stripe.exe がある場所を Path 環境変数に追加します。
注: ウイルス対策ソフトウェアによって、バイナリが安全でないと判定される場合があります。これは誤検知です。詳細はissue #692をご覧ください。
アップグレード
npm(macOS、Linux、Windows)
npm install -g @stripe/cli
macOS
Homebrew:
brew upgrade stripe
Linux
apt(Debian、Ubuntu):
sudo apt update && sudo apt upgrade stripe
yum/dnf(RedHat、Fedora、CentOS):
yum update stripe
Windows
WinGet:
winget upgrade Stripe.StripeCLI
Scoop:
scoop update stripe
Docker
docker pull stripe/stripe-cli:latest
Docker コンテナは一時的なため、stripe login コマンドはサポートされていません。代わりに --api-key フラグを使用してください。
パッケージマネージャーを使わない場合
お使いのプラットフォーム向けの最新リリースをGitHub Releases ページからダウンロードし、既存のバイナリを置き換えてください。
アンインストール
1. プラグインを削除する
パッケージマネージャーは stripe バイナリのみを削除し、インストール済みのプラグインは残します。まず、stripe バイナリがまだ使えるうちにプラグインを削除してください。
stripe plugin uninstall --all
2. CLI を削除する
npm(macOS、Linux、Windows):
npm uninstall -g @stripe/cli
Homebrew(macOS):
brew uninstall stripe
apt(Debian、Ubuntu):
sudo apt remove stripe
yum/dnf(RedHat、Fedora、CentOS):
sudo yum remove stripe
WinGet(Windows):
winget uninstall Stripe.StripeCLI
Scoop(Windows):
scoop uninstall stripe
Docker:
docker rmi stripe/stripe-cli
パッケージマネージャーを使わない場合:
ダウンロードした stripe バイナリを削除してください。
3. 設定と認証情報を必要に応じて削除する
CLI をアンインストールしても、設定は意図的に保持されます。そのため、再インストールするとプロジェクトと設定が引き継がれます。設定は自分で削除した場合にのみ消去されます。
# Clear stored credentials for every project you are logged into
stripe logout --all
# Remove all remaining CLI configuration
rm -rf "${XDG_CONFIG_HOME:-$HOME/.config}/stripe"
使用方法
CLI をインストールすると、stripe コマンドを使えるようになります。
stripe [command]
# Run `--help` for detailed information about CLI commands
stripe [command] help
コマンド
Stripe CLI は幅広いコマンドに対応しています。よく使われるコマンドを以下に示します。
ドキュメント
詳しい情報については、CLI リファレンスサイトをご覧ください。
テレメトリー
Stripe CLI には、使用状況データを収集するテレメトリー機能が含まれています。詳細については、テレメトリーのリファレンスをご覧ください。
フィードバック
ご意見がありましたら、フィードバックからお気軽にお知らせください。
貢献
Stripe CLI の開発については、CONTRIBUTING.mdをご覧ください。すべての貢献は行動規範に従うものとします。
ライセンス
Copyright (c) Stripe. All rights reserved.
Licensed under the Apache License 2.0 license.