m2pfintech
API LibraryTransactions

Collect Request Authorization (Accept or Decline)

Authorizes (accepts) or declines a pending collect request. When accepting, the encrypted UPI PIN block is required for payment authentication. Declining a collect request does not require a PIN. NPCI has deprecated collect-based UPI payments for Android devices effective February 28, 2026.

POST
/upi/v1/wrapper/transaction/collectAuth

Request Body

application/json

deviceInfo*

Device and SIM information required for UPI API authentication and tracking

channelCode*string
seqNo*string
txnId*string

Transaction ID of the collect request

action*string

Action to take on the collect request

Value in"APPROVE" | "DECLINE"
credBlock?string

Encrypted UPI PIN block (required only for APPROVE action)

accountId?string

Account to debit from (required only for APPROVE action)

Response Body

application/json

curl -X POST "https://sandbox-upi-api.m2pfintech.com/upi/v1/wrapper/transaction/collectAuth" \  -H "Content-Type: application/json" \  -d '{    "deviceInfo": {      "deviceId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",      "simId": "8991101200003204510",      "deviceType": "MOB",      "os": "Android",      "telecom": "Airtel",      "geoCode": "13.0827,80.2707",      "appId": "v2.0",      "ipAddress": "192.168.1.50",      "location": "Mumbai",      "mobile": "919876501234"    },    "channelCode": "HDFC0001234",    "seqNo": "502",    "txnId": "COLLECT-TXN-UUID-12345",    "action": "APPROVE",    "credBlock": "encrypted-upi-pin-block",    "accountId": "acc-uuid-001"  }'

{
  "status": "SUCCESS",
  "exception": null,
  "seqNo": "502",
  "message": "Collect request approved",
  "result": {
    "txnId": "COLLECT-TXN-UUID-12345",
    "rrn": "603012345679",
    "txnStatus": "SUCCESS",
    "amount": "500.00"
  }
}