> ## 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.

# Top-up Fundsource Lite

> Add balance to a UPI Lite account using the Razorpay TPAP Pro Fundsource Lite API

<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 add balance to Fundsource Lite account.

<RequestExample>
  ```bash Curl theme={null}
  curl -X POST 'https://api.rzp.<bank>.com/v1/upi/tpap/payments/pay' \
  -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" \
  -d '{
    "upi_transaction_id": "RZP1KuSUGrp2l6MmPuT0163789452QPAY02",
    "reference_id": "RSKwpINfSkdEvtdxf",
    "initiation_mode": "QR Code",
    "upi_purpose_code": "42",
    "purpose": "UPI Lite Top Up",
    "device": {
      "geocode": "12.9667,77.5667",
      "ip": "198.1.1.1"
    },
    "currency": "INR",
    "amount": 100,
    "type": "pay",
    "description": "Upi-lite registration",
    "payer": {
      "vpa": "9560137963.stage@rzp",
      "fundsource_id": "fs_Mock14charID"
    },
    "upi_credentials": {
      "MPIN": "{\"type\":\"PIN\",\"subType\":\"MPIN\",\"data\":{\"encryptedBase64String\":\"encrypted_string\",\"code\":\"NPCI\"}}",
      "ARQC": "{\"type\":\"ARQC\",\"subType\":\"initial\",\"data\":{\"encryptedBase64String\":\"encrypted_string\",\"code\":\"NPCI-LITE\"}}"
    },
    "payees": [
      {
        "fundsource_lite_id": "lite_id"
      }
    ]
  }'
  ```
</RequestExample>

<ResponseExample>
  ```json Success theme={null}
  {
    "entity": "upi.payment",
    "upi_transaction_id": "RZPc2ed455b797e4add8392110cfc528acc",
    "reference_id": "ord_somfv432nsa",
    "upi_customer_reference_number": "804813039157",
    "upi_reference_url": "https://www.test.com",
    "upi_reference_category": "00",
    "upi_initiation_mode": "00",
    "upi_purpose_code": "42",
    "currency": "INR",
    "amount": 100,
    "type": "pay",
    "description": "flight tickets",
    "payer": {
      "vpa": "gaurav.kumar@exampleupi",
      "fundsource": {
        "ifsc": "AXIS0000058",
        "masked_account_number": "XXXXXXXXXXX3000"
      },
      "name": "Gaurav Kumar",
      "mcc": "0000",
      "upi_response_code": "00",
      "upi_reversal_response_code": "00"
    },
    "payees": [
      {
        "fundsource_lite": {
          "id": "lite_id",
          "upi_lite_reference_number": "1234567890",
          "upi_lite_credentials": {
            "ARPC": "string"
          }
        },
        "name": "Gaurav Kumar",
        "mcc": "0000",
        "response_code": "00",
        "reversal_response_code": "00"
      }
    ],
    "status": "created",
    "created_at": "1653915355",
    "updated_at": "1691097057"
  }
  ```
</ResponseExample>

## Request Parameters

<ParamField body="upi_transaction_id" type="string" required>
  Unique UPI transaction id.
</ParamField>

<ParamField body="reference_id" type="string">
  Merchant reference id.
</ParamField>

<ParamField body="upi_initiation_mode" type="enum">
  Indicates the 2-digit code defined by NPCI. Possible values:

  * `00`: Default - When no specific code is assigned or for general default scenarios.
  * `01`: QR Code - For making payments by scanning a standard QR code.
  * `02`: Secure QR Code - For payments that require additional security with QR codes.
  * `03`: Bharat QR Code - For interoperable payments across various payment networks using Bharat QR.
  * `04`: Intent - For payments initiated by an intent from an application or browser.
  * `05`: Secure Intent - For payments initiated by a secure intent from an app or browser.
  * `06`: NFC (Near Field Communication) - For contactless payments using NFC technology.
  * `07`: BLE (Bluetooth) - For payments made through Bluetooth Low Energy technology.
  * `08`: UHF (Ultra High Frequency) - For payments made using UHF technology, typically for toll payments.
  * `09`: Aadhaar - For payments authenticated using an Aadhaar number and biometric verification.
  * `10`: SDK (Software Development Kit) - For payments initiated through an SDK embedded in an app.
  * `11`: UPI-Mandate - For setting up recurring payments or mandates using UPI.
  * `12`: FIR (Foreign Inward Remittance) - For receiving remittances from foreign countries.
  * `13`: QR Mandate - For setting up recurring payments using a QR code.
  * `14`: BBPS - For making bill payments through the Bharat Bill Payment System.
</ParamField>

<ParamField body="upi_purpose_code" type="enum">
  The 2-digit code defined by NPCI present in the intent URL or QR codes. Possible values:

  * `01`: SEBI
  * `02`: AMC
  * `03`: Travel
  * `04`: Hospitality
  * `05`: Hospital
  * `06`: Telecom
  * `07`: Insurance
  * `08`: Education
  * `09`: Gifting
  * `10`: BBPS
  * `11`: Global UPI
  * `12`: Metro ATM QR
  * `13`: Non-metro ATM QR
  * `14`: Standing Instruction
  * `15`: Corporate disbursement
</ParamField>

<ParamField body="purpose" type="string" required>
  The purpose of the payout.
</ParamField>

<ParamField body="device" type="object">
  The device details.
</ParamField>

<ParamField body="ip" type="string">
  The IP address of the device.
</ParamField>

<ParamField body="geocode" type="string">
  The location coordinates of the device. For example, `12.9667,77.5667`.
</ParamField>

<ParamField body="currency" type="string" required>
  The currency in which the payment should be made by the customer. For example, `INR`.
</ParamField>

<ParamField body="amount" type="integer" required>
  The amount to be paid by the customer in currency subunits. For example, if the amount is ₹100, enter `10000`
</ParamField>

<ParamField body="type" type="string" required>
  Type of transaction. Should be `pay`.
</ParamField>

<ParamField body="description" type="string">
  Description of the transaction.
</ParamField>

<ParamField body="payer" type="string" required>
  Payer details.
</ParamField>

<ParamField body="vpa" type="string" required>
  Payer’s VPA.
</ParamField>

<ParamField body="fundsource_id" type="string" required>
  Fundsource id of payer.
</ParamField>

<ParamField body="upi_credentials" type="object" required>
  MPIN and ARQC encrypted credentials.
</ParamField>

<ParamField body="payees" type="string" required>
  Payee details.
</ParamField>

<ParamField body="fundsource_lite_id" type="string" required>
  Fundsource Lite id of the payee.
</ParamField>

## Response Parameters

<ResponseField name="entity" type="string">
  Name of entity. Here it is, `upi.payment`.
</ResponseField>

<ResponseField name="upi_transaction_id" type="string">
  UPI transaction id generated.
</ResponseField>

<ResponseField name="reference_id" type="string">
  Merchant reference id.
</ResponseField>

<ResponseField name="upi_customer_reference_number" type="string">
  Customer Reference number at NPCI.
</ResponseField>

<ResponseField name="upi_reference_url" type="string">
  URL for the payment reference.
</ResponseField>

<ResponseField name="upi_reference_category" type="string">
  UPI Reference Category Code.
</ResponseField>

<ResponseField name="upi_initiation_mode" type="enum">
  Indicates the 2-digit code defined by NPCI. Possible values:

  * `00`: Default - When no specific code is assigned or for general default scenarios.
  * `01`: QR Code - For making payments by scanning a standard QR code.
  * `02`: Secure QR Code - For payments that require additional security with QR codes.
  * `03`: Bharat QR Code - For interoperable payments across various payment networks using Bharat QR.
  * `04`: Intent - For payments initiated by an intent from an application or browser.
  * `05`: Secure Intent - For payments initiated by a secure intent from an app or browser.
  * `06`: NFC (Near Field Communication) - For contactless payments using NFC technology.
  * `07`: BLE (Bluetooth) - For payments made through Bluetooth Low Energy technology.
  * `08`: UHF (Ultra High Frequency) - For payments made using UHF technology, typically for toll payments.
  * `09`: Aadhaar - For payments authenticated using an Aadhaar number and biometric verification.
  * `10`: SDK (Software Development Kit) - For payments initiated through an SDK embedded in an app.
  * `11`: UPI-Mandate - For setting up recurring payments or mandates using UPI.
  * `12`: FIR (Foreign Inward Remittance) - For receiving remittances from foreign countries.
  * `13`: QR Mandate - For setting up recurring payments using a QR code.
  * `14`: BBPS - For making bill payments through the Bharat Bill Payment System.
</ResponseField>

<ResponseField name="upi_purpose_code" type="enum">
  The 2-digit code defined by NPCI present in the intent URL or QR codes. Possible values:

  * `01`: SEBI
  * `02`: AMC
  * `03`: Travel
  * `04`: Hospitality
  * `05`: Hospital
  * `06`: Telecom
  * `07`: Insurance
  * `08`: Education
  * `09`: Gifting
  * `10`: BBPS
  * `11`: Global UPI
  * `12`: Metro ATM QR
  * `13`: Non-metro ATM QR
  * `14`: Standing Instruction
  * `15`: Corporate disbursement
</ResponseField>

<ResponseField name="currency" type="string">
  Currency for transaction (INR).
</ResponseField>

<ResponseField name="amount" type="string">
  Transaction amount in paisa.
</ResponseField>

<ResponseField name="type" type="string">
  Transaction type.
</ResponseField>

<ResponseField name="description" type="string">
  Payment description.
</ResponseField>

<ResponseField name="payer" type="object">
  Payer details.
</ResponseField>

<ResponseField name="vpa" type="string">
  Payer's VPA.
</ResponseField>

<ResponseField name="fundsource" type="object">
  Payer's bank fundsource.
</ResponseField>

<ResponseField name="ifsc" type="string">
  Payer's IFSC code.
</ResponseField>

<ResponseField name="masked_account_number" type="string">
  Masked account number.
</ResponseField>

<ResponseField name="payees" type="array">
  List of payee objects.
</ResponseField>

<ResponseField name="fundsource_lite" type="string">
  Indicates the Lite details.
</ResponseField>

<ResponseField name="id" type="string">
  Fundsource Lite id.
</ResponseField>

<ResponseField name="upi_lite_reference_number" type="string">
  Reference number of Lite.
</ResponseField>

<ResponseField name="upi_lite_credentials" type="string">
  Contains encrypted ARPC proof.
</ResponseField>

<ResponseField name="ARPC" type="string">
  Authentication Response Code credential.
</ResponseField>

<ResponseField name="status" type="string">
  Transaction status. Possible values:

  * `created`
  * `pending`
  * `success`
  * `failed`
</ResponseField>

<ResponseField name="created_at" type="integer">
  UNIX timestamp at which the payment was created.
</ResponseField>

<ResponseField name="updated_at" type="integer">
  UNIX timestamp at which the payment was updated.
</ResponseField>
