> ## Documentation Index
> Fetch the complete documentation index at: https://razorpay-881012b3.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Fetch UPI Numbers

> Retrieve all UPI numbers associated with a customer, along with their statuses and available slots.

<div style={{display:"flex",flexWrap:"wrap",alignItems:"center",gap:"0.35rem 0.9rem",border:"1px solid rgba(128,128,128,0.28)",borderRadius:"0.5rem",padding:"0.45rem 0.75rem",margin:"0 0 1.25rem",fontSize:"0.875rem"}}>
  <span style={{fontWeight:600}}>Available in</span>
  <span>🇮🇳 India</span>
</div>

Use this endpoint to retrieve the list of UPI numbers mapped to a customer along with their statuses and available slots.

<RequestExample>
  ```bash Curl theme={null}
  -X GET 'https://api.rzp.<bank>.com/v1/upi/tpap/upi_number' \
  -u [YOUR_KEY_ID]:[YOUR_SECRET] \
  -H "Content-Type: application/json" \
  -H "x-device-fingerprint: <device_fingerprint>" \
  -H "x-device-fingerprint-timestamp: 1496918882000" \
  -H "x-customer-reference: cust_ref" \
  ```
</RequestExample>

<ResponseExample>
  ```json Response theme={null}
  {
    "entity": "collection",
    "mobile_linked": true,
    "available_slots": 1,
    "upi_numbers": [
      {
        "number": "9234567890",
        "type": "mobile",
        "vpa": "dummyuser2@upi",
        "status": "active"
      },
      {
        "number": "123456780",
        "type": "numeric",
        "vpa": "gaurav.kumar@exampleupi",
        "status": "inactive"
      }
    ]
  }
  ```

  ```json Failure theme={null}
  {
    "error": {
      "code": "INTERNAL_SERVER_ERROR",
      "description": "record not found",
      "source": "internal",
      "reason": "record not found"
    }
  }
  ```
</ResponseExample>

## Response Parameters

<ResponseField name="entity" type="string">
  Collection of entity. Here it is `upi_number`.
</ResponseField>

<ResponseField name="mobile_linked" type="boolean">
  Indicates if a mobile number is already linked.

  * `true`: Mobile number is linked.
  * `false`: Mobile number is not linked.
</ResponseField>

<ResponseField name="available_slots" type="integer">
  Number of available slots left (maximum is 3 per customer).
</ResponseField>

<ResponseField name="upi_number" type="string">
  Unique id mapped to the customer's VPA.
</ResponseField>

<ResponseField name="number" type="string">
  The UPI number.
</ResponseField>

<ResponseField name="type" type="string">
  Type of number. For example, mobile or numeric.
</ResponseField>

<ResponseField name="status" type="string">
  Status of the UPI number. Possible values:

  * `active`
  * `inactive`
  * `deregistered`
</ResponseField>

<ResponseField name="vpa" type="string">
  VPA linked to the UPI number.
</ResponseField>
