AEPS · Transactions
Transaction Status
Get the final status of a transaction.
GET request
URL: https://uat-api.vizodigital.com/api/v1/aeps/transactions/{reference_id}
Include a valid Bearer token with every request
Code sample
curl -X GET "https://uat-api.vizodigital.com/api/v1/aeps/transactions/TXN2026100300001" \
-H "X-API-Key: YOUR_API_KEY_OR_TOKEN" \
-H "X-Timestamp: $(TZ=Asia/Kolkata date '+%Y-%m-%d %H:%M:%S')"
Success Response
{
"status": "success",
"message": "Transaction successful.",
"data": {
"reference_id": "TXN2026100300001",
"tran_type": "CW",
"status": "success",
"amount": "2000.00",
"rrn": "627610123456",
"bank_name": "State Bank of India",
"customer_aadhaar": "XXXXXXXX9012",
"commission": "4.0000",
"settlement_status": "awaiting",
"release_due_at": "2026-10-03T15:00:00+05:30"
}
}
Failure response
{
"status": "error",
"code": "transaction_not_found",
"message": "Transaction not found."
}
Overview
Returns the current status of a transaction. Use it after a 202 pending answer or a timeout.
Notes
data.statusissuccess,failedorpending. Hand over cash only when it issuccess.- A
pendingtransaction is checked with the bank network on every call (at most once every 30 seconds). - The answer has the same fields as the Transaction answer, without
customer_balanceandmini_statement. 404 transaction_not_foundalso covers a transaction made with the other environment's key.
Headers
-
X-API-Key · string required
Your credential: either your `rr_live_` API key, or the Bearer token from `POST /api/v1/auth/client-credentials` (the same token every other API uses). The token may instead be sent as `Authorization: Bearer <token>`. A token follows the same IP whitelist as your keys, and all your tokens share one requests-per-minute allowance.
Example: rr_live_xxxxxxxxxxxxx
-
X-Timestamp · string required
Current time in IST as `YYYY-MM-DD HH:MM:SS` (or `YYYY-MM-DDTHH:MM:SS`). Do not add a timezone suffix such as `+05:30`. Must be within 15 seconds of our server time.
Example: 2026-10-03 10:30:45
Parameters
-
client_request_id · path · string required
The `client_request_id` you sent in the Transaction call.
Example: TXN2026100300001
-
reference_id · path · string required
The `reference_id` you sent in the Transaction call.
Example: TXN2026100300001
Responses
-
200 · application/json default
Success
Example
{ "status": "success", "message": "Transaction successful.", "data": { "reference_id": "TXN2026100300001", "tran_type": "CW", "status": "success", "amount": "2000.00", "rrn": "627610123456", "bank_name": "State Bank of India", "customer_aadhaar": "XXXXXXXX9012", "commission": "4.0000", "settlement_status": "awaiting", "release_due_at": "2026-10-03T15:00:00+05:30" } } -
404 · application/json
Failed or rejected
Example
{ "status": "error", "code": "transaction_not_found", "message": "Transaction not found." }
Errors
-
INVALID_API_KEY · HTTP 401
Invalid or revoked API key.
{ "message": "Invalid or revoked API key." } -
TIMESTAMP_OUT_OF_RANGE · HTTP 400
Request timestamp is outside the ±15 second window.
{ "message": "Request timestamp is outside the ±15 second window." } -
service_not_enabled · HTTP 403
AEPS is not enabled for your account. Contact your account manager to activate it.
{ "status": "error", "code": "service_not_enabled", "message": "AEPS is not enabled for your account. Contact your account manager to activate it." } -
RATE_LIMITED · HTTP 429
Rate limit exceeded.
{ "message": "Rate limit exceeded." } -
transaction_not_found · HTTP 404
Transaction not found.
{ "status": "error", "code": "transaction_not_found", "message": "Transaction not found." }
Rate Limits
100/min