Overview
As part of the Slicker integration, you need to implement webhook endpoints that Slicker will call to deliver optimization decisions and dunning instructions to your billing system. All webhook events use a unified structure with a consistent envelope format.Implementation Requirements
Endpoint Configuration
- Protocol: HTTPS only (unencrypted HTTP is not supported)
- Method: POST
- URL: You define the webhook URL used for all event types and provide it to Slicker during integration setup
- Content Type: application/json
Authentication
Your webhooks must implement one of the following authentication methods to ensure that only Slicker can trigger events:Bearer Token Authentication
Basic Authentication
Unified Event Structure
All webhook events use a consistent envelope format:Common Fields
Field | Type | Description |
---|---|---|
id | string | Unique identifier for this webhook event |
type | string | Event type identifier (e.g., recovery_action , pause_collection , complete_dunning ) |
created | string | ISO 8601 timestamp of when the webhook was created |
data | object | Event-specific payload that varies based on the event type |
Event Types
Recovery Action Event
Sent when a payment should be retried:ACTION_SUGGESTION_RETRY
: Attempt to process the payment againACTION_SUGGESTION_CARD_CHANGE
: Request an updated payment method from the customerACTION_SUGGESTION_UNSPECIFIED
: No specific action recommended
Pause Invoice Collection Event
Sent when automatic retries should be paused. This is used during A/B tests to control which invoices should be retried by Slicker vs your system.Complete Dunning Event
Sent when dunning should be completed before the dunning period ends.Response Format
Your webhook should respond with a 200 OK status code and an optional JSON body if the event was successfully received:Implementation Best Practices
Security
- Use HTTPS with valid SSL certificates
- Set up authentication with strong credentials
- (Optional) Implement IP whitelisting (Slicker can provide IP ranges)
Reliability
- Acknowledge receipt quickly and process asynchronously
- Implement idempotent processing based on event
id
to handle potential duplicate webhooks - Return appropriate error codes if requests can’t be processed
- Slicker will retry failed webhooks, so ensure idempotency
Monitoring
- Set up alerts for failed webhook calls
- Monitor webhook endpoint uptime
Reference Documentation
For detailed API specifications, see:Support
If you need assistance with your webhook implementation:- Contact your Slicker integration specialist
- Email support@slickerhq.com