Payouts Guide
Learn how to process payouts to bank accounts using the PayVanta API.
Overview
PayVanta provides a simple and secure way to process payouts to bank accounts. This guide covers:
- Initiating payouts
- Checking payout status
- Handling payout responses
- Best practices
Initiating a Payout
Basic Payout
curl -X POST 'https://api.payvanta.in/payout' \
-H 'Authorization: Basic ${BASE64_ENCODED_CREDENTIALS}' \
-H 'Content-Type: application/json' \
-d '{
"order_id": "987654321098765",
"amount": "99",
"account_number": "390000000003",
"ifsc": "SBI6457498886",
"beneficiaryName": "Jason Stathom",
"mobile_no": "xxxxxxxxxxx"
}'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
}
}Payout Charges
The API response includes a breakdown of charges:
chargeAmount: Base processing feegstAmount: GST on the processing feetotalCharge: Total charges (processing fee + GST)totalDeducted: Total amount deducted (payout amount + total charges)
Error Handling
Common Errors
{
"success": false,
"message": "INSUFFICIENT_BALANCE",
"error": "Insufficient wallet balance"
}Error Codes
INSUFFICIENT_BALANCE: Not enough balance in walletINVALID_ACCOUNT: Invalid bank account detailsLIMIT_EXCEEDED: Transaction limit exceededBANK_DOWN: Bank service unavailable
Best Practices
-
Pre-verification
- Verify bank account before payout
- Check beneficiary name match
- Validate IFSC code
-
Error Handling
- Implement retry mechanism
- Log all payout attempts
- Monitor failed payouts
-
Security
- Use IP whitelisting
- Implement webhook verification
- Monitor payout patterns