Express Stripe Webhook Middleware
ExpressアプリケーションでStripe webhookの署名検証を自動化するTypeScriptライブラリ。セキュアな実装と型安全性を提供し、わずか数行のコードでwebhook統合を実現します。
主な機能
- 型安全: 厳格な型チェックを備えた完全なTypeScriptサポート
- セキュア: Stripe SDKを使用した自動署名検証
- シンプルなAPI: Expressアプリケーションとのクリーンな統合
- 柔軟性: カスタムエラーハンドラーとロギングのサポート
- モダン: ViteとVitestによる最新の開発環境
- 高品質: Vitestによる包括的なテストカバレッジ
インストール
npm install express-stripe-webhook-middleware stripe expressクイックスタート(TypeScript)
import Stripe from 'stripe';
import express from 'express';
import { createStripeWebhookMiddleware } from 'express-stripe-webhook-middleware';
const stripe = new Stripe(process.env.STRIPE_SECRET_KEY!);
const app = express();
app.post(
'/webhook',
...createStripeWebhookMiddleware(process.env.STRIPE_WEBHOOK_SECRET!, stripe),
(req, res) => {
const event = req.body as Stripe.Event;
// イベントを処理する
res.json({ received: true });
}
);
app.listen(4242, () => console.log('Server running on port 4242'));利点
このパッケージを使用しない場合、開発者は手動でボディパーシングを設定し、署名検証ロジックを実装する必要があります。このミドルウェアは、その複雑さを1つの関数呼び出しに抽象化し、セキュリティ基準を維持しながらボイラープレートコードを大幅に削減します。
関連ツール・アプリ
stripe-pwa-elements
あらゆるWebフレームワークで使えるStripe決済Web Components。カード決済、Apple Pay、Google Pay、Payment Elementなど主要な決済手段をHTMLタグだけで組み込み可能。Stencil.jsベースでフレームワーク非依存、PWAやCapacitorアプリにも対応。
npmOSS
詳細を見るstripe-search-ql
Stripe Search APIのクエリ構文を型安全に構築できるTypeScriptクエリビルダー。フルエントAPIによるメソッドチェーンで、手書きのクエリ文字列に起因するバグを排除し、開発効率を向上させます。
npmOSS
詳細を見るcdk-construct-stripe-events-to-sns
Stripeの決済イベントをAWS EventBridge経由で受け取り、SNSトピックに通知を送るためのCDK Constructライブラリを開発しました。Lambda関数を使わずにEventBridgeから直接SNSへ通知を送ることで、コストとレイテンシーを削減できる設計になっています。
AWS CDK ConstructnpmOSS
詳細を見る