Handle Webhook
POST/v1/billing/webhook
Receive and process Dodo Payments webhook events.
SCRIFT-81: The three service handlers that identify a target
user now return the user's email (str | None); when non-None,
the route schedules a transactional email via BackgroundTasks
so the send happens after the 200 ack goes back to Dodo. This
keeps the service layer framework-agnostic - BackgroundTasks is a
FastAPI construct and belongs at the HTTP boundary.
Responses
- 200
Successful Response