Skip to content

Backend: Implement Custom Webhook Event Filtering and Subscription Manager #462

Description

@Smartdevs17

Context

Merchants receive all webhook events for their account, forcing them to filter irrelevant events client-side, wasting bandwidth and processing.

Current Limitation/Problem

Webhook subscriptions are all-or-nothing. Merchants cannot subscribe to specific event types, filter by criteria, or route different events to different endpoints.

Expected Outcome

A granular webhook subscription system where merchants create multiple subscriptions with event type filters, condition expressions, and target endpoints.

Acceptance Criteria

  • Create multiple webhook subscriptions per merchant
  • Filter by event type, resource ID, amount range, chain, currency
  • Condition expressions using JSONPath or simple DSL
  • Route different event types to different endpoints
  • Subscription testing with sample events before activation
  • Delivery metrics per subscription (count, success rate, latency)
  • Pause/resume individual subscriptions
  • Subscription version history

Technical Scope

  • Prisma: WebhookSubscription model with filter conditions
  • backend/src/services/webhooks/subscription-manager.ts - subscription logic
  • backend/src/services/webhooks/event-matcher.ts - filter evaluation
  • Frontend: /dashboard/developers/webhooks/subscriptions - subscription management
  • Edge cases: overlapping subscriptions, delivery deduplication, filter evaluation performance

Metadata

Metadata

Assignees

Labels

200-points200 point issueStellar WaveIssues in the Stellar wave programdrips-waveIssues in the Drips Wave programhighHigh complexity issue

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions