Mandate Response (Get Mandate Status)
Fetches the result of a previously initiated mandate operation. Pass the callbackRef from createmandate or other mandate async operations. Returns the current mandate status and details.
Request Body
application/json
Device and SIM information required for UPI API authentication and tracking
Channel or institution code
Sequence number for request tracking
Callback reference ID received from the initiating async API call
Response Body
application/json
curl -X POST "https://sandbox-upi-api.m2pfintech.com/upi/v1/wrapper/transaction/mandate/mandateResp" \ -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": "701", "callbackRef": "mandate-create-uuid-123" }'{
"status": "SUCCESS",
"exception": null,
"seqNo": "701",
"result": {
"umn": "UMN20260301ABCD1234",
"mandateStatus": "ACTIVE",
"amount": "499.00",
"amountRule": "EXACT",
"recurrencePattern": "MONTHLY",
"validityStart": "2026-04-01",
"validityEnd": "2027-03-31",
"payerVpa": "amit.patel@indie",
"payeeVpa": "subscription@merchant",
"payeeName": "Streaming Service"
}
}Mandate Action (Pause, Unpause, Revoke, Update) POST
Performs an action on an existing mandate. Supported actions are PAUSE (temporarily suspend), UNPAUSE (resume paused mandate), REVOKE (permanently cancel), and UPDATE (modify mandate details). Some actions require UPI PIN authentication. Pausing and unpausing are not allowed for DELEGATE or ONETIME mandates. Revoking a mandate cannot be undone. The action must be compatible with the current mandate state.
Validate QR Code Request POST
Initiates validation of a merchant QR code. Parses and validates the QR code data including merchant VPA, amount, merchant category code (MCC), and transaction reference. This is an asynchronous API - use validateQrRes with the callbackRef to get the validated merchant details.
