---
page_source: https://juspay.io/in/docs/ec-headless/cordova/mandates/upicollect-payments
page_title: UPI-Collect Payments
---


# UPI Collect Mandate transactions 




### Step 1.1. Verify VPA


It is recommended to validate the customer's VPA (Virtual Payment Address) prior to initiating the Mandate transaction request, and this can be accomplished by utilising mandate details regarding the vpa handle from the response of the [Verify VPA API](https://docs.juspay.in/api-reference/docs/express-checkout/verify-vpa).




### Step 1.1. UPI Txn - Collect


UPI Collect mandate transactions happen through the webcollect flow, wherein the user enters his VPA and receives a collect mandate register request notification from the corresponding UPI PSP app. On approving the request, mandate will be registered and auto debit occurs every cycle.

![Image](https://dth95m2xtyv8v.cloudfront.net/tesseract/assets/ec-headless/collect_mandate_user_journey.png)
*User Experience for UPI Collect Autopay*






### Step 1.1. Payload Parameters



### Payload
- **RequestId**:
  - Description: Unique uuid-v4 string
    
    Example: abcd-12345-abcd-12345
  - Value: value
  - Tags: String, Mandatory
- **Service**:
  - Description: Value: in.juspay.hyperapi
  - Tags: String, Mandatory
- **Payload**:
  - Description: Parameters required to call Hyper SDK API
  - Value:
    - **Action**:
      - Description: Must be upiTxn for UPI Process calls.
      - Tags: String, Mandatory
    - **OrderId**:
      - Description: order id pertaining to the order for which the payment is started.
      - Tags: String, Mandatory
    - **CustVpa**:
      - Description: Customer VPA to which the collect request must be sent.
      - Tags: String, Mandatory
    - **ClientAuthToken**:
      - Description: Required for client side authentication
      - Tags: String, Mandatory
    - **ShouldCreateMandate**:
      - Description: This is a customer’s consent flag. This should be always **TRUE**  in case of a mandate transaction.
      - Tags: Boolean, Mandatory
    - **Offers**:
      - Description: The key offers should be passed only when juspay offers are being used. The value for this key can set as the offerID which is received from /v1/offers/list api
      - Tags: Array of Strings
  - Tags: JSON, Mandatory


