---
page_source: https://docs.juspay.io/upi-inapp/android/headless-process-payloads/check-mandate-status
page_title: Check Mandate Status
---


## Check Mandate Status



This api will be used for getting mandate status.


###   Process Parameters



## Request Payload
- **RequestId**:
  - Description: Unique uuid-v4 string
  - Value: Example: abcd-12345-abcd-12345
  - Tags: String, Mandatory
- **Service**:
  - Description: Value: in.juspay.hyperapi
  - Tags: String, Mandatory
- **Payload**:
  - Description: Parameters required to call Hyper SDK API
  - Value:
    - **Action**:
      - Description: Value: upiCheckMandateStatus
      - Value: Operation to be performed in the SDK. Should be upiCheckMandateStatus for this call.
      - Tags: String, Mandatory
    - **Role**:
      - Description: Defines the role of the customer in the mandate PAYER / PAYEE
      - Tags: String, Mandatory
    - **MerchantKeyId**:
      - Description: Key ID to identify the public-private key pair used for signature generation.
      - Tags: String, Mandatory
    - **OrgMandateId**:
      - Description: gatewayMandateId returned during create mandate
      - Tags: String, Mandatory
    - **Signature**:
      - Description: Signature generated for the signaturePayload.
      - Tags: String, Mandatory
    - **UdfParameters**:
      - Description: Stringified json for udf parameters
      - Tags: String, Optional
    - **SignaturePayload**:
      - Description: Signature payload is a stringified JSON of the details mentioned in the below table.
      - Value:
        - **Merchant_id**:
          - Description: Unique identifier associated with an account created by juspay.Ex: stock
          - Tags: String, Mandatory
        - **Customer_id**:
          - Description: Any unique reference associated with your customer.
          - Tags: String, Mandatory
        - **Timestamp**:
          - Description: Time when request is created in milliseconds.
          - Tags: String, Mandatory
      - Tags: String, Mandatory
  - Tags: JSON, Mandatory


## Response Payload
- **RequestId**:
  - Description: Unique uuid-v4 string
  - Value: Example: abcd-12345-abcd-12345
  - Tags: String
- **Service**:
  - Description: Value: in.juspay.hyperapi
  - Tags: String
- **Payload**:
  - Description: Response Parameters
  - Value:
    - **Action**:
      - Description: Value: upiCheckMandateStatus
      - Value: Operation to be performed in the SDK.
      - Tags: String, Mandatory
    - **Status**:
      - Description: Status of the Operation. Possible values : SUCCESS, PENDING, FAILURE
      - Tags: String, Mandatory
    - **ResponseCode**:
      - Description: Response code returned by gateway for the mandate Operation.
      - Tags: String, Mandatory
    - **ResponseMessage**:
      - Description: Response message returned by gateway for the mandate Operation.
      - Tags: String, Mandatory
    - **MandatePayload**:
      - Description: Contains relevant mandate data
      - Value:
        - **AccountReferenceId**:
          - Description: reference id for selected accounts
          - Tags: String, Mandatory
        - **Amount**:
          - Description: Amount for which merchant requested the mandate. Numeric String with two decimals
          - Value: eg. 25.00
          - Tags: String, Mandatory
        - **AmountRule**:
          - Description: Rule on Mandate Amount. If amountRule is MAX, then mandate can be executed for amount less than or equal to the passed amount . If amountRule is EXACT, then mandate should always be executed for the same amount.
          - Value: MAX / EXACT
          - Tags: String, Mandatory
        - **BankAccountUniqueId**:
          - Description: Unique Identifier for bank account across banks
          - Tags: String, Mandatory
        - **BlockFund**:
          - Description: Denotes whether customer's fund should be blocked or not. Only applicable for ONETIME mandate. For recurring mandate it should always be false, for onetime it can be true or false. Default value is false.
          - Tags: String, Mandatory
        - **Expiry**:
          - Description: Minutes for which request is valid
          - Tags: String, Optional
        - **GatewayMandateId**:
          - Description: UPI request id returned by gateway for the mandate
          - Tags: String, Mandate
        - **GatewayReferenceId**:
          - Description: upiResponseId as passed in request
          - Tags: String, Mandatory
        - **GatewayResponseCode**:
          - Description: Response code returned by gateway for the transaction.
          - Tags: String, Mandate
        - **GatewayResponseMessage**:
          - Description: Response message returned by gateway for the transaction.
          - Tags: String, Mandatory
        - **GatewayResponseStatus**:
          - Description: Response status returned by gateway.
          - Tags: String, Mandatory
        - **InitiatedBy**:
          - Description: Who has created this update/revoke request. Possible values :- PAYER / PAYEE
          - Value: Possible values :- PAYER / PAYEE
          - Tags: String, Madatory
        - **MandateApprovalTimeStamp**:
          - Tags: String, Optional
        - **MandateName**:
          - Description: Name of the mandate, Helps with differentiation of all mandates
          - Tags: String, Optional
        - **MandateTimestamp**:
          - Description: Timestamp of when the webMandate was initiated
          - Tags: String, Mandatory
        - **MandateType**:
          - Tags: String, Optional
        - **MerchantCustomerId**:
          - Description: Merchant generated unique profile id for customer as passed in the request
          - Tags: String, Mandatory
        - **MerchantRequestId**:
          - Description: 35 character alphanumeric unique id.
          - Tags: String, Mandatory
        - **OrgMandateId**:
          - Description: gatewayMandateId returned during create mandate
          - Tags: String, Mandatory
        - **PauseEnd**:
          - Tags: String, Optional
        - **PauseStart**:
          - Tags: String, Optional
        - **PayeeMcc**:
          - Tags: String, Mandatory
        - **PayeeName**:
          - Tags: String, Optional
        - **PayeeVpa**:
          - Tags: String, Mandatory
        - **PayerName**:
          - Tags: String, Optional
        - **PayerRevocable**:
          - Description: Defines whether mandate is revocable by PAYER or not. For onetime mandate it can be true or false. Default value is true.
          - Value: true/false
          - Tags: String, Mandatory
        - **PayerVpa**:
          - Tags: String, Mandatory
        - **RecurrencePattern**:
          - Description: Recurrence Pattern for Mandate
          - Tags: String, Mandatory
        - **RecurrenceRule**:
          - Description: Recurrence Rule for Mandate. It will not be present for ONETIME, DAILY and ASPRESENTED recurrence pattern.
          - Tags: String, Optional
        - **RecurrenceValue**:
          - Description: Recurrence Value for Mandate. It will not be present for ONETIME, DAILY and ASPRESENTED recurrence pattern.
          - Tags: String, Optional
        - **RefUrl**:
          - Description: Reference url for the mandate. It will be same value if passed in request else it will be a default url.
          - Tags: String, Optional
        - **Remarks**:
          - Description: Any mandate summary. If pased in request, it will be same in response else a default value is send.
          - Tags: String, Mandatory
        - **Role**:
          - Description: Role of the customer for this mandate.
          - Value: PAYER / PAYEE
          - Tags: String, Mandatory
        - **ShareToPayee**:
          - Description: Describes whether the mandate will be shared with the payee or not. Default value is true.
          - Value: true/false
          - Tags: String, Mandatory
        - **TransactionType**:
          - Description: Type of Mandate Creation.
          - Tags: String, Mandatory
        - **Umn**:
          - Tags: String, Optional
        - **ValidityStart**:
          - Description: Date after which mandate can be executed
          - Tags: String, Mandatory
        - **ValidityEnd**:
          - Description: String with proper date format YYYY/MM/DD
          - Tags: String, Mandatory
        - **RefCategory**:
          - Description: Details for refUrl, whether it is 01 (advertisement), 02(Invoice). If nothing is passed, a default value of `00` is set up and same will be sent back in response.
          - Tags: String, Optional
        - **TransactionReference**:
          - Tags: String, Optional
        - **Purpose**:
          - Description: Defines the purpose code of the mandate
          - Tags: String, Optional
        - **InitiationMode**:
          - Description: Defines the initiationMode of the mandate
          - Tags: String, Optional
      - Tags: JSON, Mandatory
    - **OtherInfo**:
      - Description: As passed in request
      - Tags: String, Optional
  - Tags: JSON
- **Error**:
  - Description: Possible values :- true/false
  - Tags: Boolean
- **ErrorMessage**:
  - Description: Error Message
  - Tags: String
- **ErrorCode**:
  - Description: Error Code
  - Tags: String
- **Event**:
  - Description: Value: process_result
  - Tags: String





#### Code Snippets: -

#### Java Code Snippet:

```java
{
  "service": "in.juspay.hyperapi",
  "requestId": "693e4b2c-55af-42c0-85a9-a97972e2906f",
  "payload": {
    "signaturePayload": "<signaturePayload>",
    "signature": "GFe…………………..w==\n",
    "merchantKeyId": "4794",
    “role” : “”,
    “orgMandateId”: “XXXXXXXXXXXXXXXXXXXXXXX”,
    "action": "upiCheckMandateStatus"
  }
}

"signaturePayload": {
  "merchant_id": "XXXXXXXX",
  "customer_id": "XXXXXXXX",
  "timestamp": "1639167811935"
}
```

#### Kotlin Code Snippet:

```kotlin
{
  "service": "in.juspay.hyperapi",
  "requestId": "693e4b2c-55af-42c0-85a9-a97972e2906f",
  "payload": {
    "signaturePayload": "<signaturePayload>",
    "signature": "GFe…………………..w==\n",
    "merchantKeyId": "4794",
    “role” : “”,
    “orgMandateId”: “XXXXXXXXXXXXXXXXXXXXXXX”,
    "action": "upiCheckMandateStatus"
  }
}

"signaturePayload": {
  "merchant_id": "XXXXXXXX",
  "customer_id": "XXXXXXXX",
  "timestamp": "1639167811935"
}
```


## Sample Code Snippets:
### Request snippets:

#### Request Code Snippet:

```request
{
  "service": "in.juspay.hyperapi",
  "requestId": "693e4b2c-55af-42c0-85a9-a97972e2906f",
  "payload": {
    "signaturePayload": "<signaturePayload>",
    "signature": "GFe…………………..w==\n",
    "merchantKeyId": "4794",
    “role” : “”,
    “orgMandateId”: “XXXXXXXXXXXXXXXXXXXXXXX”,
    "action": "upiCheckMandateStatus"
  }
}

"signaturePayload": {
  "merchant_id": "XXXXXXXX",
  "customer_id": "XXXXXXXX",
  "timestamp": "1639167811935"
}
```

### Response snippets:

#### Response:
```plaintext
{
  "service": "in.juspay.hyperapi",
  "requestId": "693e4b2c-55af-42c0-85a9-a97972e2906f",
  "payload": {
    "status": "SUCCESS",
    "responseMessage": "Transaction successful",
    "responseCode": "00",
    "mandatePayload": {...},
    "action": "upiCheckMandateStatus"
  },
  "event": "process_result",
  "errorMessage": "",
  "errorCode": "",
  "error": false
}
```

