API Reference
Technical documentation for the PayVanta API.
Base URLs
- Production:
https://api.payvanta.in/
Authentication
All API requests require authentication using API keys.
Headers
Authorization: Bearer <jwt_token>
Content-Type: application/jsonExample Requests
Payout Request
{
"order_id": "987654321098765",
"amount": "99",
"account_number": "390000000003",
"ifsc": "SBIN0017886",
"beneficiaryName": "Jason Stathom",
"mobile_no": "xxxxxxxxxxx"
}Payout Response
{
"success": true,
"message": "PAYOUT_INITIATED",
"data": {
"order_id": "987654321098765",
"amount": "99",
"status": "PENDING",
"chargeAmount": 15.6,
"gstAmount": 2.81,
"totalCharge": 18.41,
"totalDeducted": 117.41
}
}Payin Request
{
"order_id": "123456789012345",
"amount": 10,
"mobile_no": "9910000065"
}Payin Response
{
"success": true,
"message": "PAYIN_INITIATED",
"data": {
"order_id": "123456789012345",
"amount": 10,
"status": "PENDING",
"payment_link": "upi://pay?ver=01&mode=19&pa=merchant@upi&pn=PayVanta&tr=123456789012345&cu=INR&mc=8241&qrMedium=04&tn=PaymenttoPayVanta&am=10"
}
}Balance Check Request
GET https://api.payvanta.in/balance-check
Authorization: Bearer <base64_encoded_credentials>Balance Check Response
{
"payin_balance": 490,
"payout_balance": 6.602000000000004
}Common Headers
| Header | Description |
|---|---|
Authorization | Bearer token for authentication |
Content-Type | Must be application/json |
X-Request-ID | Unique request identifier |
Response Format
Success Response
{
"success": true,
"message": "OPERATION_STATUS",
"data": {
// Response data
}
}Error Response
{
"success": false,
"message": "ERROR_CODE",
"error": "Error description"
}HTTP Status Codes
| Code | Description |
|---|---|
| 200 | Success |
| 400 | Bad Request |
| 401 | Unauthorized |
| 403 | Forbidden |
| 404 | Not Found |
| 429 | Too Many Requests |
| 500 | Internal Server Error |
Webhooks
Payout Webhook
{
"type": "payout",
"payload": {
"order_id": "987654321098765",
"status": "SUCCESS",
"beneficiary_name": "Jason Stathom",
"account_number": "390000000003",
"amount": "99",
"utr": "UTR24031545789",
"timestamp": "2024-03-20T10:29:45Z",
"wallet_balance": {
"available": 5000.00,
"on_hold": 100.00
}
}
}Payin Webhook
{
"type": "payin",
"payload": {
"order_id": "123456789012345",
"amount": 10,
"status": "SUCCESS",
"utr": "UTR24031545789",
"upi": "user@okaxis",
"code": "PAYMENT_SUCCESS"
}
}Support
For implementation help, see our Guides. For technical issues, contact support@payvanta.in.