Back to list
YusukeTsunoda

stripe-integration

by YusukeTsunoda

0🍴 0📅 Jan 25, 2026

SKILL.md


name: stripe-integration description: Assists with Stripe payment implementation, debugging, and webhook handling. Covers subscriptions, one-time charges, and customer management. Activates when user mentions "payment", "webhook", "subscription", "決済エラー", "課金", "Stripe". allowed-tools: Read, Grep, Glob, Bash, Edit, Write user-invocable: true

Stripe Integration Skill

Stripe決済連携の実装・デバッグ・テストのためのスキル。

When to Use This Skill

  • Stripe決済機能を新規実装・改善する時
  • Webhook処理でエラーが発生した時
  • サブスクリプション管理を実装する時
  • 決済フローのデバッグが必要な時
  • Stripe CLIでローカルテストする時
  • 課金プランの変更を実装する時

主要ファイル

役割ファイル
Stripeクライアントsrc/lib/stripe/client.ts
サブスクリプションsrc/lib/stripe/subscription-service.ts
Webhook処理src/app/api/stripe/webhook/route.ts
ゲストチェックアウトsrc/app/api/stripe/guest-checkout/route.ts
決済アクションsrc/app/actions/payment.ts

Webhook イベント

イベント処理内容
checkout.session.completed支払い完了 → プラン更新
customer.subscription.updatedサブスク更新 → 期間更新
customer.subscription.deletedサブスク解約 → Freeに戻す
invoice.payment_failed支払い失敗 → 通知

ローカルテスト

Stripe CLI でWebhook転送

stripe listen --forward-to localhost:3000/api/stripe/webhook

# 別ターミナルでイベント送信
stripe trigger checkout.session.completed

テスト用カード番号

カード番号用途
4242424242424242成功
40000025000031553Dセキュア認証
4000000000009995残高不足
4000000000000341カード拒否

環境変数

STRIPE_SECRET_KEY=sk_test_...
STRIPE_WEBHOOK_SECRET=whsec_...
NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY=pk_test_...

プラン設計

プラン月額翻訳回数/月最大ファイルサイズ
Free¥03回10MB
Premium¥980無制限50MB
Business¥2,980無制限 + API100MB

DBテーブル

-- profiles.stripe_customer_id: Stripe顧客ID
-- user_plans: プラン情報
-- stripe_events: Webhook履歴(重複防止)

よくある問題

1. Webhookシグネチャ検証失敗

  • 原因: rawBodyが必要
  • 対策: route.tsrequest.text() を使用

2. 二重課金

  • 原因: Webhookの重複配信
  • 対策: stripe_events で idempotency チェック

3. サブスク状態の不整合

  • 原因: Webhookミス
  • 対策: 定期的な stripe.subscriptions.retrieve で同期

AI Assistant Instructions

このスキルが有効化された時:

  1. 環境確認: Stripe環境変数が設定されているか確認
  2. テストモード確認: sk_test_ / pk_test_ を使用しているか確認
  3. Webhook検証: シグネチャ検証が正しく実装されているか確認
  4. 冪等性確認: 二重課金防止の実装を確認

Always:

  • テスト用カード番号(4242...)を使用する
  • Webhookはidempotencyチェックを実装する
  • rawBodyで署名検証する
  • stripe_events テーブルで重複防止する

Never:

  • 本番キー(sk_live_)をコードにハードコードしない
  • Webhookシグネチャ検証をスキップしない
  • ユーザー入力を検証せずにStripe APIに渡さない

Score

Total Score

60/100

Based on repository quality metrics

SKILL.md

SKILL.mdファイルが含まれている

+20
LICENSE

ライセンスが設定されている

+10
説明文

100文字以上の説明がある

0/10
人気

GitHub Stars 100以上

0/15
最近の活動

3ヶ月以内に更新がある

0/10
フォーク

10回以上フォークされている

0/5
Issue管理

オープンIssueが50未満

+5
言語

プログラミング言語が設定されている

+5
タグ

1つ以上のタグが設定されている

0/5

Reviews

💬

Reviews coming soon