recur-webhooks

Installation
SKILL.md

Recur Webhook Integration

You are helping implement Recur webhooks to receive real-time payment and subscription events.

Webhook Events

Core Events (Most Common)

Event When Fired
checkout.completed Payment successful, subscription/order created
subscription.activated Subscription is now active
subscription.cancelled Subscription cancelled — check data.status / data.current_period_end: period-end cancellation keeps access until that date, while dashboard or refund cancellation revokes it immediately
subscription.renewed Recurring payment successful
subscription.past_due Payment failed, subscription at risk
invoice.paid / invoice.payment_failed Invoice outcome. Invoices exist only for renewals and plan switches, so billing_reason is subscription_cycle or subscription_update and never subscription_create — a first payment produces no invoice. A paid renewal also sends subscription.renewed; a failed charge also sends subscription.past_due only with a grace period. A renewal with no usable card sends NO invoice event — see subscription.payment_method_required / subscription.revoked
order.paid / order.payment_failed An order was paid or failed — not one-time purchases only. A subscription's first payment is an order, not an invoice, so both events also carry billing_reason: 'subscription_create', and these are the ONLY events that report that first charge. Handle both branches: purchase is the one-time buy, subscription_create the signup. An empty subscription_create branch silently loses every new subscriber
refund.created Refund initiated
Installs
39
Repository
recur-tw/skills
First Seen
Jan 22, 2026