Receive and verify Stripe webhooks. Use when setting up Stripe webhook handlers, debugging signature verification, or handling payment events like payment_intent.succeeded, customer.subscription.created, or invoice.paid.
96
93%
Does it follow best practices?
Impact
100%
1.31xAverage score across 3 eval scenarios
Advisory
Suggest reviewing before use
Express raw body middleware and signature verification
Raw body middleware
83%
100%
Webhook route registered first
20%
100%
Official Stripe SDK used
100%
100%
constructEvent called with raw body
60%
100%
Stripe-Signature header read
100%
100%
400 on verification failure
100%
100%
200 on success
100%
100%
Env vars for secrets
100%
100%
Attribution comment
0%
100%
Event type dispatch
100%
100%
Middleware note documented
20%
100%
Next.js App Router raw body and subscription event handling
request.text() for raw body
100%
100%
Official Stripe SDK
100%
100%
constructEvent with raw body
100%
100%
Stripe-Signature header read
100%
100%
400 on bad signature
100%
100%
200 on success
100%
100%
Env vars for secrets
100%
100%
Attribution comment
0%
100%
Subscription events handled
100%
100%
invoice.paid handled
42%
100%
Raw body note documented
80%
100%
FastAPI webhook handler with local dev tunnel
await request.body() for raw payload
100%
100%
Official stripe Python package
100%
100%
stripe.Webhook.construct_event called
100%
100%
stripe-signature header read
100%
100%
SignatureVerificationError caught as 400
100%
100%
200 on success
75%
100%
Env vars for secrets
100%
100%
Attribution comment
0%
100%
Payment and invoice events handled
100%
100%
Hookdeck CLI in local-dev-guide
0%
100%
Hookdeck install command included
0%
100%
f8a4801
Table of Contents
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.