This page describes asynchronous notifications for the subscription system:
- Subscription state changes
- Recurring billing results
Subscription status change
Sent when a subscription changes state.
Subscription payment result
Sent when a recurring billing attempt succeeds or fails.
Retry logic and idempotency
Make your webhook receiver idempotent. The same notification can be delivered more than once if delivery fails.
Return HTTP 200 after successful processing. If your server does not respond with HTTP 200, QFPay retries delivery with exponential backoff. The maximum retry count depends on internal configuration.