lib/code_corps_web/controllers/stripe_platform_events_controller.ex
defmodule CodeCorpsWeb.StripePlatformEventsController do
@moduledoc false
use CodeCorpsWeb, :controller
alias CodeCorps.StripeService.WebhookProcessing.{
EnvironmentFilter, PlatformEventHandler, WebhookProcessor
}
def create(conn, event_params) do
case EnvironmentFilter.environment_matches?(event_params) do
true ->
{:ok, _pid} = WebhookProcessor.process_async(event_params, PlatformEventHandler)
conn |> send_resp(200, "")
false ->
conn |> send_resp(400, "")
end
end
end