This API retrieves the details and current status of a UPI AutoPay mandate, including payer information, mandate validity, and automatic debit plan progress.
API Details
| Parameter | Value |
|---|---|
| Method | POST |
| Endpoint | /mandate-details |
| Base URL | {{BASE_URL}} |
| Content-Type | application/json |
Authentication
Include the following credentials in the JSON request body. These credentials are available in the WowPe Dashboard.
| Parameter | Location | Type | Mandatory | Description |
|---|---|---|---|---|
clientId | Request Body | String | Yes | Merchant Client ID provided in the WowPe Dashboard. |
secretKey | Request Body | String | Yes | Merchant Secret Key provided in the WowPe Dashboard. |
Request Header
| Header | Value |
|---|---|
Content-Type | application/json |
Request Parameters
The following parameter is required in addition to the authentication credentials.
| Parameter | Type | Mandatory | Description |
|---|---|---|---|
orderId | String | Yes | Merchant reference associated with the mandate. |
Sample Request
{
"clientId": "YOUR_CLIENT_ID",
"secretKey": "YOUR_SECRET_KEY",
"orderId": "ORD10001"
}
cURL Request
curl --request POST '{{BASE_URL}}/mandate-details' \
--header 'Content-Type: application/json' \
--data '{
"clientId": "YOUR_CLIENT_ID",
"secretKey": "YOUR_SECRET_KEY",
"orderId": "ORD10001"
}'
Replace {{BASE_URL}} with the applicable WowPe API environment URL and use your merchant credentials securely.
Sample Response
Success Response
{
"statusCode": 1,
"message": "Success",
"orderId": "ORD10001",
"mandateRef": "MD261101101530123456",
"umn": "722710901d824182a759192d859e8c7e@ptyes",
"mandateStatus": "Active",
"amount": "99.00",
"amountRule": "MAX",
"payerVPA": "customer@ptyes",
"payerName": "RAHUL KUMAR",
"validityStart": "2026-11-01",
"validityEnd": "2027-10-31",
"pauseStart": null,
"pauseEnd": null,
"plan": {
"planStatus": "Started",
"startedOn": "2026-11-01 10:16:00",
"firstDebitAmount": "1.00",
"firstDebitId": "ORD10001-FIRST",
"introAmount": "99.00",
"introDateTime": "2026-11-02 10:26:00",
"introDebitId": null,
"introScheduleStatus": "Active",
"recurAmount": "99.00",
"recurFrequency": "MONTHLY",
"recurStartDateTime": "2026-12-03 10:00:00",
"recurNextExecutionDateTime": "2026-12-03 10:00:00",
"recurScheduleStatus": "Active",
"message": "First debit ORD10001-FIRST 1.00: Success"
}
}
Response Parameters
| Parameter | Type | Description |
|---|---|---|
statusCode | Number | Indicates the API operation status. 0 = Failed, 1 = Succeeded, 2 = Pending. |
message | String | Provides the response message or plan-related information. |
orderId | String | Merchant reference associated with the mandate. |
mandateRef | String | Unique mandate reference generated by the API. |
umn | String | Unique Mandate Number returned by the API. |
mandateStatus | String | Current mandate status: Created, Active, Paused, Revoked, Expired, Completed, or Failed. |
amount | String | Mandate amount, returned as a decimal string. |
amountRule | String | Approved amount rule: MAX or EXACT. |
payerVPA | String | Payer's UPI ID. |
payerName | String | Payer's name. |
validityStart | String | Mandate validity start date. |
validityEnd | String | Mandate validity end date. |
pauseStart | String / Null | Mandate pause start date, when available. |
pauseEnd | String / Null | Mandate pause end date, when available. |
plan | Object / Null | Contains automatic debit plan details. Returns null if the mandate was created without a plan. |
Plan Object Parameters
The following parameters are returned within the plan object when an automatic debit plan is configured.
| Parameter | Type | Description |
|---|---|---|
planStatus | String | Automatic plan status: Waiting, Started, PartlyFailed, or Cancelled. |
startedOn | String | Date and time when the plan started. |
firstDebitAmount | String | Initial debit amount. |
firstDebitId | String | Reference ID of the initial debit. |
introAmount | String | Introductory debit amount. |
introDateTime | String | Scheduled date and time for the introductory debit. |
introDebitId | String / Null | Reference ID of the introductory debit, when assigned. |
introScheduleStatus | String | Status of the introductory debit schedule. |
recurAmount | String | Amount configured for each recurring debit. |
recurFrequency | String | Configured recurring debit frequency. |
recurStartDateTime | String | Start date and time of recurring debits. |
recurNextExecutionDateTime | String | Next scheduled recurring debit date and time. |
recurScheduleStatus | String | Status of the recurring debit schedule. |
message | String | Additional information about the automatic plan or debit operation. |
Error Handling
| Status Code | Description | Action |
|---|---|---|
0 | API operation failed. | Check the response message and review the request parameters. |
2 | API operation is pending. | Use the relevant status API to track the operation outcome. |
If a request times out or its outcome is unknown, check the existing operation before submitting another request.
Important Notes
- Use the
orderIdassociated with the mandate when retrieving its details. mandateStatus: "Active"indicates that the mandate is active. It does not confirm that a payment has been collected.- Use the debit IDs returned in the
planobject with the Execute Status API to track individual debit outcomes. - A null
introDebitIddoes not indicate a successful introductory payment. - The
planobject may be null if the mandate was created without an automatic debit plan. - Confirm payment success separately using the relevant debit status API.
What's Next
Once the mandate is active, proceed with your selected collection flow. Use the Pre-debit Notify API for individually scheduled debits, or refer to Create Schedule for standalone recurring schedules.
