Retry Failed Payout
Deprecated — Do Not Use
This endpoint is deprecated and will be removed in a future release. It is no longer maintained and may produce unexpected behavior.
Use Payout Intents instead. Payout Intents handle retries automatically via smart routing.
Retry a failed payout with the same or a different TSP.
POST
https://api.zenpays.com/merchant/api/v1/payouts/{payoutId}/retryBearer · API key
Request
Path Parameters
| Parameter | Type | Description |
|---|---|---|
payoutId REQUIRED | string | Payout ID (e.g., pay_xxxxx) |
Headers
| Header | Description |
|---|---|
Authorization REQUIRED | Bearer {api_key} |
X-Signature REQUIRED | HMAC-SHA256 signature |
X-Timestamp REQUIRED | ISO 8601 timestamp |
X-Secret-Salt REQUIRED | Secret salt for HMAC validation |
Content-Type REQUIRED | application/json |
Body Parameters
| Parameter | Type | Description |
|---|---|---|
forceProvider OPTIONAL | string | Force specific payment provider |
Response
Success (200 OK)
{
"success": true,
"data": {
"payoutId": "pay_xxxxx",
"merchantId": "mer_xxxxx",
"amount": 10000,
"currency": "INR",
"status": "processing",
"externalPayoutId": "pout_xxxxx",
"processingFee": 25,
"totalDebitedAmount": 10025,
"estimatedCompletion": "2024-01-15T11:00:00.000Z",
"createdAt": "2024-01-15T10:30:00.000Z",
"metadata": {}
}
}
Error Responses
| Code | HTTP | Message |
|---|---|---|
| PAYOUT_NOT_RETRYABLE | 400 | Payout cannot be retried |
| UNAUTHORIZED | 401 | Invalid API key |
| PAYOUT_NOT_FOUND | 404 | Payout doesn't exist |
Examples
- cURL
- SDK
curl -X POST "https://api.zenpays.com/merchant/api/v1/payouts/pay_xxxxx/retry" \
-H "Authorization: Bearer zp_test_xxxxx" \
-H "X-Timestamp: 2024-01-15T10:30:00.000Z" \
-H "X-Signature: a1b2c3d4e5f6..." \
-H "X-Secret-Salt: your_secret_salt" \
-H "Content-Type: application/json" \
-d '{}'
const result = await zenpays.payouts.retry('pay_xxxxx');
console.log(`Retry status: ${result.status}`);