webhook-safety

Verify webhook signatures and enforce idempotent event processing.

Updated Jan 8, 2026
One-click install
npx skills add https://github.com/git-tao/taotang-website --skill webhook-safety
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: webhook-safety
Source: https://github.com/git-tao/taotang-website/tree/main/.claude/skills/webhook-safety
Command: npx skills add https://github.com/git-tao/taotang-website --skill webhook-safety

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Safe webhook handling patterns to prevent duplicate processing, ensure authenticity, and reliably react to asynchronous payments and events.

Core Features & Use Cases

  • Idempotent webhook handlers
  • Signature verification for Stripe and other providers
  • Fail-fast for critical events
  • Race-condition prevention with event ordering

Quick Start

Set up your webhook endpoint to first validate the event signature, then check a stored event ID to avoid duplicates, and implement retry-safe processing.

Frequently Asked Questions about webhook-safety

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I prevent duplicate Stripe webhook event processing in my application?

Ensure idempotent webhook handling by validating the event signature first, then checking a stored event ID to avoid duplicates. This retry-safe processing pattern prevents duplicate actions for Stripe events and other payment scenarios.

What is webhook idempotency and how does it work for payment events?

Webhook idempotency ensures payment events are processed only once by storing and checking event IDs. The mechanism validates event signatures first, then checks stored event IDs to safely handle retries without triggering duplicate actions.

How do I verify Stripe webhook signatures to ensure event authenticity?

Verify Stripe webhook signatures by enforcing signature verification in your webhook receiver as the first step. This ensures event authenticity before processing subscription updates, invoices, or other payment events.

How do I handle webhook race conditions and event ordering issues?

Handle webhook race conditions by implementing fail-fast error handling and idempotency checks. This prevents race conditions by validating signatures and checking stored event IDs before processing events.

Can I use this webhook safety pattern for providers other than Stripe?

Yes, the webhook safety pattern applies to Stripe events and other payment or webhook scenarios. The signature verification and idempotent processing patterns work for subscription updates, invoice processing, and other event providers.