The Check Transfer Status API will return the status of the transfers initiated by the merchant.
HTTP Method: POST
Environment
Test Environment | https://uatoneapi.payu.in/payout/payment/listTransactions |
Production Environment | https://payout.payumoney.com/payout/payment/listTransactions |
Sample request
curl -X POST \
https://test.payumoney.com/payout/payment/listTransactions \
-H 'authorization: Bearer 2678f236346281e6029e3430da1a721af29bb3546d6acbc27e6aadd7fca72605' \
-H 'cache-control: no-cache' \
-H 'content-type: application/x-www-form-urlencoded' \
-H 'payoutmerchantid: 1111122' \
-d 'transferStatus=QUEUED&from=01%2F01%2F2019&to=01%2F01%2F2019&page=1&pageSize=100&merchantRefId=&batchId=1'
Sample response
{
"status": 0,
"msg": null,
"code": null,
"data": {
"payoutMerchantId": null,
"noOfPages": 1,
"totalElements": 1,
"currentPage": 0,
"totalAmount": 0.0,
"succesTxn": 0,
"pendingTxn": 0,
"transactionDetails": [
{
"txnId": 71870,
"batchId": "smartSendBatch",
"merchantRefId": "0101010031",
"purpose": "Payout",
"amount": 1.0,
"txnStatus": "FAILED",
"txnSubStatus": null,
"txnSource": "SMART_SEND",
"txnDate": "2022-08-22T05:56:13.000+0000",
"scheduledTxnDate": "2022-08-22T05:56:13.000+0000",
"payuTransactionRefNo": "PAYOUT1661147773462lrSLcvHSc1K",
"beneficiaryName": "Customer",
"beneficiaryCardNo": null,
"msg": "Internal Error while validating vpa account",
"responseCode": null,
"transferType": "UPI",
"bankTransactionRefNo": null,
"nameWithBank": null,
"lastStatusUpdateDate": "2022-08-22T05:56:15.000+0000",
"succeedOn": null,
"fee": null,
"tax": null,
"txnStatusDescription": "Internal Error while validating vpa account",
"custom1": null,
"custom2": null,
"custom3": null,
"nameMatch": null
}
]
}
}
The status of a particular transaction has to be determined only from the field txnStatus in thetransactionDetails JSON against the merchantRefId.
On receiving the following JSON Response in the Check Transfer Status API, the transaction status is not determined and has to considered as unidentified or Pending by merchant.
{
"status": 0,
"msg": null,
"code": null,
"data": {
"payoutMerchantId": null,
"noOfPages": 0,
"totalElements": 0,
"currentPage": 0,
"totalAmount": 0.0,
"succesTxn": 0,
"pendingTxn": 0,
"transactionDetails": []
}
}
Response parameters description
Parameter | Description |
---|---|
status | This parameter returns the status of web service call. The status can be any of the following: - 0 - If web service call succeeded. - 1 - If web service call failed |
msg | This parameter returns the message to convey success or failure. |
code | This parameter returns the code. |
data | This parameter returns the transfer status in a JSON format. Refer the Description of data Parameter Fields |
Description of data parameter fields
Field | Description |
---|---|
noOfPages | The field contains the number of pages with the transfer status details. |
totalElements | The field contains the number of elements with the transfer status details. |
currentPage | The field contains the current page that is returned. |
totalAmount | The field contains the total amount of the transaction. |
succesTxn | The field contains the code whether transaction is successful. |
pendingTxn | This field contains the code whether transaction is pending. |
transactionDetails | This field contains the following transaction details in an JSON format and each object contains the following details: - txnId: Contains the transaction ID from PayU - batchId: Contains the batch ID provided by merchant at the time of initiating transfer - merchantRefId: merchantRefId provided by merchant at the time of initiating transfer - purpose: Contains the purpose provided by merchant at the time of initiating transfer - amount: The amount transferred for this transaction - txnStatus: Contains the transaction status for this transaction. For list of transaction status, refer to Transaction Status sub-section - txnSubStatus: Contains the sub-status of the transaction - txnSource: Contains the source of transaction from where it is initiated - txnDate: The date when transaction initiated - scheduledTxnDate: The date when transactions is scheduled - payuTransactionRefNo: Contains the PayU transaction reference number. - beneficiaryName: Contains the name of the beneficiary passed in request - beneficiaryCardNo: Contains the name of the beneficiary passed in request - msg: Contains the response message for transaction - responseCode: Contains the response code from PayU, For the list of response codes, refer to Payouts Error Codes - transferType: Contains the mode of the transfer used while initiating request (IMPS,NEFT,UPI) - bankTransactionRefNo: Contains the bank transfer reference number - nameWithBank: Contains the beneficiary name as per bank - lastStatusUpdateDate: Contains the transfer terminating state time (Transfer success or failure time) - succeedOn - fee: the fee charged for transaction. This is basis the agreement signed by merchant - tax:applicable on fee as applicable - txnStatusDescription: show description of transaction failed/queued reason - custom1: entered by merchant in Initiate transfer API - custom2: entered by merchant in Initiate transfer API - custom2: entered by merchant in Initiate transfer API - nameMatch: Will return name match percentage for penny drop with name match transaction |
This field contains the following transaction details in an JSON format and each object contains the following details:
e for penny drop with name match transaction|
Transaction status Description
Status | Description |
---|---|
QUEUED | It will be first state once we get transaction request from merchant. If merchant is not having enough balance in his account txn will be in queued state only till he/she do deposit in virtual account. Check disable queued payout |
IN_PROGRESS | Transaction picked for processing with bank |
PENDING | PayU has received pending status from bank. Final status will be updated once PayU get success or failure from bank. Reconciliation for these type of transaction happen after every 5 min. |
FAILED | Transaction got failed at bank end. Check error message and fix if anything wrong in request or else retry. |
SUCCESS | Transaction got success. Amount is transferred to customer account |
WAITING_FOR_RETRY | Transaction is waiting to be picked again. You will get this status only in case bank / beneficiary bank server is down and you have passed retry as true or empty while calling transfer API. |
Headers and request parameters
Note:
The payoutMerchantId is different from PayU Merchant Id. Check the Payouts Dashboard or call the PayU Customer Support if you don’t know your payoutMerchantId.
Reference:
For sample request and response, refer to Sample Request and Response for Initiation & Tracking APIs.
Additional Info for request parameters
Parameters | Description | Example |
---|---|---|
transferStatusoptional | String Search by status of transfer. Merchant can get all success or failure transaction of the day to reconcile. The transfer status can be any of the following:- QUEUED/SCHEDULED - IN_PROGRESS - PENDING - FAILED Refer to the Transfer Status table for the description of each status. | success |
filterBySucceedOn] optional | Boolean This parameter must be passed True along with dateFrom and dateTo parameters, to filter the transactions that were successful between these dates.Note: For this filter, date range can be maximum of seven days. |