UPI VPA

Initiate payouts to your Customers, Vendors, and Employees directly from your Bank account through UPI VPA

Header Parameters

Name

Type

Description

Mandatory (M) , Optional (O)

Provided by INSTANTPAY (Y/N)

X-Ipay-Auth-Code

String

Auth Code -1 (Fixed)

M

Y

X-Ipay-Client-Id

String

Unique Client ID

M

Y

X-Ipay-Client-Secret

String

Unique secret key

M

Y

X-Ipay-Endpoint-Ip

String

End Customer IP Address

M

N

Request Parameters

Parameter Name

Type

Requirement

Description

payer

Array

Mandatory

Payer details

payer.bankId

String

Mandatory

Unique Bank Id

payer.bankProfileId

String

Mandatory

Unique Bank Profile Id

payer.accountNumber

String

Mandatory

Account number of the Connected Bank

payee

Array

Mandatory

Payee details

payee.name

String

Mandatory

Account Holder Name

payee.accountNumber

String

Mandatory

Account Number of End User

payee.bankIfsc

String

Mandatory

IFS Code

transfer

Array

Mandatory

Transfer details

transferMode

String

Mandatory

Modes Will Be UPI

transferAmount

String

Mandatory

Amount to be transferred

externalRef

String

Mandatory

Your unique transaction Id

latitude

String

Mandatory

End Customer Latitude.

longitude

String

Mandatory

End Customer Longitude.

Remarks

String

Optional

Payment Remarks

alertEmail

String

Optional

End User email for alert

purpose

String

Optional

Purpose of transaction :
SALARY
REIMBURSEMENT
BONUS
INCENTIVE
CUSTOMER_REFUND
OTHERS

Sample Request

curl --location --request POST 'https://api.instantpay.in/payments/payout' \
--header 'X-Ipay-Auth-Code: {{authCode}}' \
--header 'X-Ipay-Client-Id: {{clientId}}' \
--header 'X-Ipay-Client-Secret: {{clientSecret}}' \
--header 'X-Ipay-Endpoint-Ip: {{endPointIP}}' \
--header 'Content-Type: application/json' \
--data-raw '{
    "payer": {
        "bankId": "0",
        "bankProfileId": "0",
        "accountNumber": "9999999999"
    },
    "payee": {
        "name": "Ah***ab",
        "accountNumber": "[email protected]",
        "bankIfsc": ""
    },
    "transferMode": "UPI",
    "transferAmount": "5.00",
    "externalRef": "IMPS1",
    "latitude": "20.**26",
    "longitude": "78.**28",
    "remarks": "UPI",
    "alertEmail": "s*******[email protected]",
    "purpose": "REIMBURSEMENT"
}'
POST /payments/payout HTTP/1.1
Host: api.instantpay.in
X-Ipay-Auth-Code: {{authCode}}
X-Ipay-Client-Id: {{clientId}}
X-Ipay-Client-Secret: {{clientSecret}}
X-Ipay-Endpoint-Ip: {{endPointIP}}
Content-Type: application/json
{
    "payer" : {
        "bankId" : "0",
        "bankProfileId" : "0",
        "accountNumber" : "9999999999"
    },
    "payee" : {
         "name" : "Ah***ab",
        "accountNumber" : "[email protected]",
        "bankIfsc" : ""
    },
    "transferMode" : "UPI",
    "transferAmount" : "5.00",
    "externalRef" : "IMPS1",
    "latitude" : "20.**26",
    "longitude" : "78.**28",
    "remarks" : "UPI",
    "alertEmail" : "s*******[email protected]",
    "purpose": "REIMBURSEMENT"
}

Response Parameters

Parameter Name

Type

Description

statuscode

String

InstantPay Status Code

actcode

String

Action Code

status

String

Status message

data

Array

Response Data (If Present)

timestamp

String

Response time (YYYY-MM-DD HH:II:SS)

ipay_uuid

String

Request reference number

orderid

String

Transaction Id ( If transaction otherwise it is null )

environment

String

Live/Sandbox

Sample Response

{
    "statuscode": "TXN",
    "actcode": null,
    "status": "Transaction Successful",
    "data": {
        "externalRef": "IMPS1",
        "poolReferenceId": "12**************YK",
        "txnValue": "1000",
        "txnReferenceId": "13********41",
        "pool": {
            "account": "98******07",
            "openingBal": "5.17",
            "mode": "DR",
            "amount": "3.46",
            "closingBal": "1.71"
        },
        "payer": {
            "account": "98******07",
            "name": "Sample Store"
        },
        "payee": {
            "account": "[email protected]",
            "name": "Mr  MD SH*** **LI"
        }
    },
    "timestamp": "2021-11-12 16:56:50",
    "ipay_uuid": "h00695deb945-3def-42ba-8857-2ff7bac93fe6",
    "orderid": "1211112165649WFTYK",
    "environment": "LIVE",
}

❗️

Note :

1 - Latitude and Longitude must be represented in degrees with 4 digits after decimal.
2- externalRef must be unique and in alpha numeric characters.
3- Remarks should be in alphabet and it can be of maximum 20 characters.
4- Purpose are Case Sensitive.
5- Consider the Transaction as Pending when you get No Response or Timeout Response and then check the status of the transactions through Transaction Status API.

📘

Info :

Click Here to know how to get the Credentials.

Language
Click Try It! to start a request and see the response here!