Vizo Digital Api
Sign in

AEPS · Agents

Agent Status

Check whether the agent needs KYC or daily 2FA before transacting.

GET request

URL: https://uat-api.vizodigital.com/api/v1/aeps/agents/{agent_code}

Include a valid Bearer token with every request

Code sample

curl -X GET "https://uat-api.vizodigital.com/api/v1/aeps/agents/AC12345678" \
  -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",
    "data": {
        "agent_code": "AC12345678",
        "kyc_required": true,
        "kyc_wadh": {
            "finger": "E0jzJ/P8UopUHAieZn8CKqS4WPMi5ZSYXgfnlfkWjrc=",
            "iris": "8QSrHOmcQhlyjiSpIgCi7o2ugs78w+4jhckNk1jeIJg=",
            "face": "sgydIC09zzy6f8Lb3xaAqzKquKe9lFcNR9uTvYxFp+A="
        },
        "daily_2fa_required": true,
        "otp_amount": 5001,
        "otp_tran_type": "CW"
    }
}

Failure response

{
    "status": "error",
    "code": "agent_not_found",
    "message": "Agent not found."
}

Overview

Returns what the agent must complete before a transaction. Call this at the start of every session.

Notes

  • If kyc_required is true, call Agent KYC and capture the biometric with the matching kyc_wadh value.
  • If daily_2fa_required is true, call Daily 2FA before any transaction that day.
  • Call Generate OTP only for a cash withdrawal of otp_amount or more.

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

  • agent_code · path · string required

    The `agent_code` you sent when onboarding the agent.

    Example: AC12345678

Responses

  • 200 · application/json default

    Success

    Example

    {
        "status": "success",
        "data": {
            "agent_code": "AC12345678",
            "kyc_required": true,
            "kyc_wadh": {
                "finger": "E0jzJ/P8UopUHAieZn8CKqS4WPMi5ZSYXgfnlfkWjrc=",
                "iris": "8QSrHOmcQhlyjiSpIgCi7o2ugs78w+4jhckNk1jeIJg=",
                "face": "sgydIC09zzy6f8Lb3xaAqzKquKe9lFcNR9uTvYxFp+A="
            },
            "daily_2fa_required": true,
            "otp_amount": 5001,
            "otp_tran_type": "CW"
        }
    }
  • 404 · application/json

    Failed or rejected

    Example

    {
        "status": "error",
        "code": "agent_not_found",
        "message": "Agent 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."
    }
  • agent_not_found · HTTP 404

    Agent not found.

    {
        "status": "error",
        "code": "agent_not_found",
        "message": "Agent not found."
    }
  • agent_blocked · HTTP 403

    This agent is blocked. Contact support.

    {
        "status": "error",
        "code": "agent_blocked",
        "message": "This agent is blocked. Contact support."
    }
  • provider_rejected · HTTP 422

    The bank network refused the request. The message says why.

    {
        "status": "error",
        "code": "provider_rejected",
        "message": "The bank network refused the request. The message says why."
    }
  • provider_unavailable · HTTP 502

    The AEPS provider did not respond. Try again shortly.

    {
        "status": "error",
        "code": "provider_unavailable",
        "message": "The AEPS provider did not respond. Try again shortly."
    }
  • noble_credentials_unavailable · HTTP 503

    Provider credentials are not available. Contact your partner.

    {
        "status": "error",
        "code": "noble_credentials_unavailable",
        "message": "Provider credentials are not available. Contact your partner."
    }

Rate Limits

100/min