mix pin_stripe.gen.handler (PinStripe v0.4.0)

View Source

Generate a Stripe webhook event handler

Generates a handler for a specific Stripe webhook event.

Example

mix pin_stripe.gen.handler customer.created

Arguments

  • event - The Stripe event name (e.g., "customer.created", "charge.succeeded")

Options

  • --handler-type - Type of handler to generate: "function" or "module" (default: prompts user)
  • --module - Custom module name for module handlers (default: auto-generated from event name)
  • --create-handler-module - Module name to create if no WebhookHandler module exists

## Handler Types

### Function Handler

Generates an inline function handler in your WebhookController:

 handle "customer.created", fn event ->
   # Handle customer.created event
   :ok
 end

### Module Handler

Generates a separate module with a handle_event/1 function:

 # In your WebhookController
 handle "customer.created", MyAppWeb.StripeWebhookHandlers.CustomerCreated

 # Generated module at lib/my_app_web/stripe_webhook_handlers/customer_created.ex
 defmodule MyAppWeb.StripeWebhookHandlers.CustomerCreated do
   def handle_event(event) do
     # Handle customer.created event
     :ok
   end
 end