Payment Webhooks Create

Handle Stripe webhook events. Signature enforcement is **opt-in** via ``settings.STRIPE_WEBHOOK_SECRET`` so we can roll the code out as a no-op and flip enforcement on later by setting the secret in ASM + reloading the server. - Strict mode (secret set): the ``Stripe-Signature`` HMAC is verified against the configured secret. Missing header, bad signature, or malformed payload all reject with 400 before any handler runs. This closes the unauthenticated-credit-injection vector. - Lenient mode (secret unset/empty): bit-for-bit identical to the pre-fix behavior (``stripe.Event.construct_from(request.data, stripe.api_key)``). Logs a warning + tags the dogfood span with ``enforcement_mode=lenient`` so traces make the vulnerability visible. This is the deploy-day default. Dogfood tracing: every request tags ``stripe.webhook.enforcement_mode`` (strict|lenient) and every failure branch tags ``stripe.webhook.failure_reason`` so incident responders can triage in the trace UI without code-diving.

Authentication

AuthorizationBearer
JWT access token or Respan API key

Response

No response body