Dotnet Minimal-API developers utilize Composing to define webhook event handlers as functions within their application's code, specifying the exact HTTP method, path, and request body schema for each Stripe webhook event (e.g., `CreatePayment`, `WebhookSignature`). Composing then automatically manages the incoming Stripe webhook payload, validates it against the configured schema, and executes the corresponding handler function, simplifying the process of receiving and processing Stripe events without manual payload parsing or signature verification.
Stop writing the same event handlers over and over. Comorando executes your logic automatically.
Exponential backoff, dead-letter queues, and alert escalation — built in, no config needed.
Gemma 4 evaluates every event and suggests the optimal action based on your business rules.
// minimal-api — stripe-webhooks handler with Comorando
[ApiController, Route("webhook")]
public class WebhookController : ControllerBase {
private readonly IComorandoClient _comorando;
public WebhookController(IComorandoClient comorando) => _comorando = comorando;
[HttpPost]
public async Task<IActionResult> Handle() {
var json = await new StreamReader(HttpContext.Request.Body).ReadToEndAsync();
var stripeEvent = EventUtility.ConstructEvent(json,
Request.Headers["Stripe-Signature"], _webhookSecret);
// Comorando evaluates rules and fires actions automatically
await _comorando.Decisions.CreateAsync(new DecisionRequest {
Event = stripeEvent.Type,
Data = stripeEvent.Data.RawObject,
OrgId = Environment.GetEnvironmentVariable("COMORANDO_ORG_ID")
});
return Ok(new { received = true });
}
}
Free tier includes 10,000 events/month. No credit card required.
Start Free See Pricing