Razorpay
Receive Razorpay payment events
Razorpay signs webhooks with HMAC-SHA256 in X-Razorpay-Signature (hex). You connect it with the Razorpay preset, which uses Generic HMAC SHA-256.
Provider docs: Setting up webhooks in Razorpay
Setup
1. Connect It in Wexio
Go to New connection → Inbound. Under Provider presets, click the Razorpay chip in HMAC presets. It sets Authentication mode to Generic HMAC SHA-256 and fills in these fields. Check that they match.
| Field | Value |
|---|---|
| Signature header name | X-Razorpay-Signature |
| Encoding | Hex |
| Header prefix (optional) | Leave empty |
Copy the Wexio endpoint URL.
2. Set Up the Provider
In the Razorpay dashboard, go to Settings → Webhooks → Add New Webhook. Paste the Wexio URL and pick the events you need, for example payment.captured or subscription.charged.
Razorpay asks you to set a Webhook Secret at creation. Pick a strong value and paste the same value into the Wexio Signing secret field.
3. Resolve Contacts
| Identifier type | JSON path |
|---|---|
$.payload.payment.entity.email | |
| Phone number | $.payload.payment.entity.contact |
4. Capture the Schema and Bind a Flow
Capture a test event, then attach a Webhook Received trigger.
Troubleshooting
| Symptom | Fix |
|---|---|
| Signature mismatch | Make sure the secret is identical in Razorpay and Wexio. You set it yourself |
| Missing events | Check the "Active Events" list on Razorpay's webhook page |
Related
- Inbound Webhooks - auth modes, contact resolution and response codes
- Custom HMAC - how Generic HMAC SHA-256 verifies a request
- Webhook Received - the trigger that starts your flow
- Webhook History - check why a request failed