How It Works
Setting Up Outgoing Webhooks
1
Create your endpoint
Create an HTTPS endpoint on your server to receive webhook events:
To verify signatures (next step) you need the raw, unparsed request body. Make sure your framework gives you access to it — see the verified handler below.
2
Register in Partnero
- Go to Program Settings → Webhooks
- Click Add Webhook
- Enter your endpoint URL
- Select which events to receive
- Save and copy the signing secret
3
Verify signatures
Every webhook request includes a signature in the
Signature header. It is an
HMAC-SHA256 hash of the raw request body, keyed with your webhook’s signing
secret (the signature value shown when you created the webhook, also returned by
the Webhooks API).Available Events
Partner Events
Customer Events
Transaction Events
Reward Events
Webhook Payload
All webhooks share the same envelope. The event-specific fields are nested underdata:
Event-Specific Payloads
partner.created
partner.created
transaction.created
transaction.created
reward.approved
reward.approved
Handling Webhooks
Best Practices
Respond Quickly
Return a 2xx status within 5 seconds. Process data asynchronously.
Implement Idempotency
Handle duplicate deliveries by tracking processed event IDs.
Use HTTPS
Always use HTTPS endpoints in production.
Log Everything
Log all received webhooks for debugging and audit trails.
Handling Retries
Partnero retries failed webhooks with exponential backoff:After 5 failed attempts, the webhook is marked as failed. Check your webhook logs in the Partnero dashboard.
Example: Processing Partner Signup
Testing Webhooks
Using the Dashboard
- Go to Program Settings → Webhooks
- Find your webhook and click Test
- Select an event type
- Click Send Test Webhook
Using ngrok for Local Development
Troubleshooting
Webhooks not arriving
Webhooks not arriving
- Verify your endpoint URL is correct and accessible
- Check your server logs for incoming requests
- Ensure your firewall allows requests from Partnero IPs
- Check the webhook logs in your Partnero dashboard
Signature verification failing
Signature verification failing
- Ensure you’re using the correct signing secret
- Verify you’re hashing the raw request body
- Check for any middleware modifying the request body
Duplicate webhooks received
Duplicate webhooks received
- Implement idempotency using event IDs
- Track processed webhooks in your database
- Return 200 status quickly to prevent retries
