Event happens
A purchase, renewal, refund, dispute, access change, or key delivery event occurs.
Discfront is not only a Discord storefront layer. It can send signed outbound webhook events to your app, CRM, fulfillment system, entitlement service, or reporting stack. For delayed license-key products, your software can also call Discfront back when the customer activates a delivered key.
Use webhooks when your Discord sales flow needs to trigger systems outside Discord, or when your own software needs to tell Discfront when delayed key access should start.
A purchase, renewal, refund, dispute, access change, or key delivery event occurs.
Discfront sends the webhook event with the sale context attached.
Your systems can fulfill, notify, tag, provision, log, or send a signed activation callback for delayed key products.
Discfront signs the exact JSON body and identifies each delivery so your receiver can verify authenticity, reject stale requests, and process retries idempotently.
| Lifecycle | Events |
|---|---|
| Endpoint check | webhook.test |
| Purchases | purchase.paidpurchase.failedpurchase.refunded |
| Disputes | purchase.dispute_openedpurchase.dispute_wonpurchase.dispute_lost |
| Subscriptions | subscription.activatedsubscription.renewedsubscription.past_duesubscription.canceledsubscription.expired |
X-Discfront-Key-Id: dfwh_abc123 X-Discfront-Event-Id: twh_evt_123 X-Discfront-Event-Type: subscription.renewed X-Discfront-Timestamp: 1779362531 X-Discfront-Body-SHA256: <raw-body hash> X-Discfront-Signature: v1=<HMAC-SHA256>
{
"version": "2026-04-22",
"id": "twh_evt_123",
"type": "subscription.renewed",
"purchase": {
"reference": "DF-80062-TH6UM5PU",
"status": "paid"
},
"amount": {
"value": "111.00",
"currency": "EUR"
}
}
Verify the signature against the unmodified request bytes before parsing JSON, then store the event id before applying side effects.
Use Plus or Premium when Discord commerce also needs to trigger connected systems, or when software activation should start delayed license-key access.