Documentation Index
Fetch the complete documentation index at: https://docs.flexprice.io/llms.txt
Use this file to discover all available pages before exploring further.
Overview
A Razorpay connection in Flexprice stores encrypted credentials that allow the system to interact with your Razorpay account for:
- Creating customers in Razorpay
- Processing payment links via Razorpay Checkout
- Receiving webhook notifications from Razorpay
- Synchronizing customer data between systems
- Syncing invoices to Razorpay for payment collection
Prerequisites
Before setting up your Razorpay connection, ensure you have:
- Active Razorpay Account - Sign up at razorpay.com
- API Keys - Available in your Razorpay Dashboard
- Webhook Endpoint - Configured in Razorpay Dashboard
- Flexprice Environment - Valid tenant and environment IDs
Step 1: Gather Razorpay Credentials
Required Credentials
| Credential | Location in Razorpay Dashboard | Required | Purpose |
|---|
| Key ID | Settings → API Keys | ✅ | API authentication |
| Secret Key | Settings → API Keys | ✅ | API authentication |
| Webhook Secret | Settings → Webhooks → [Your Endpoint] | ✅ | Webhook signature verification |
Finding Your Credentials
-
API Keys:
- Go to Razorpay Dashboard → Settings → API Keys
- Copy your
Key ID
- Copy your
Secret Key
- Use test keys for development
-
Webhook Secret:
- Go to Razorpay Dashboard → Settings → Webhooks
- Create or select your webhook endpoint
- Copy the webhook secret (used for signature verification)
https://api.cloud.flexprice.io/v1/webhooks/razorpay/tenant_01K1TJDVNSN7TWY8CZY870QMNV/env_01K1TJJF0CJR410C6QVPYQTNV0
Required Webhook Events
Configure these events in your Razorpay webhook endpoint:
| Event Type | Purpose |
|---|
payment.captured | Track successful payment completions |
payment.failed | Handle payment failures and errors |
Setting Up the Webhook
- Go to Razorpay Dashboard → Settings → Webhooks
- Click + Add New Webhook
- Enter your webhook URL
- Select the required events listed above
- Click Create Webhook
- Copy the Webhook Secret for your connection
Step 3: Create Razorpay Connection
Using Flexprice Dashboard
You can create a Razorpay connection directly from the Flexprice dashboard:
Webhook Configuration
After creating the connection, configure webhooks in the connection settings:
API Request
API Request
Endpoint: POST /api/v1/connections
Headers:
Content-Type: application/json
Authorization: Bearer your_api_key
X-Tenant-ID: your_tenant_id
X-Environment-ID: your_environment_id
Request Body:
{
"name": "Razorpay Production",
"provider_type": "razorpay",
"encrypted_secret_data": {
"key_id": "rzp_live_...",
"secret_key": "rzp_live_...",
"webhook_secret": "..."
}
}
Response
{
"id": "conn_1234567890abcdef",
"name": "Razorpay Production",
"provider_type": "razorpay",
"status": "active",
"created_at": "2024-01-20T10:30:00Z",
"updated_at": "2024-01-20T10:30:00Z"
}
Security Best Practices
Credential Management
- Environment Separation: Use different keys for test/production
- Key Rotation: Regularly rotate your Razorpay API keys
- Access Control: Limit API key permissions in Razorpay
- Encryption: All credentials are encrypted at rest in Flexprice
Webhook Security
- HTTPS Only: Always use HTTPS for webhook endpoints
- Signature Verification: Flexprice verifies all webhook signatures
- Secret Management: Keep webhook secrets secure and rotate regularly
- Rate Limiting: Implement rate limiting on webhook endpoints
Troubleshooting
Common Issues
| Issue | Cause | Solution |
|---|
| Connection test fails | Invalid API keys | Verify keys in Razorpay Dashboard |
| Webhook not received | Incorrect webhook URL | Check URL format and endpoint |
| Signature verification fails | Wrong webhook secret | Update webhook secret in connection |
| Customer sync fails | Missing account permissions | Check Razorpay account permissions |
Debug Steps
- Check Razorpay Dashboard: Verify API keys and webhook configuration
- Test API Keys: Use Razorpay API to test key validity
- Monitor Webhooks: Check webhook delivery logs in Razorpay
- Review Logs: Check Flexprice application logs for errors
Next Steps
After setting up your Razorpay connection:
- Test Customer Sync: Create a test customer and sync to Razorpay
- Create Payment Links: Test payment link creation and flow
- Monitor Webhooks: Ensure webhook events are being received
- Go Live: Switch to production keys when ready