---
page_title: Signed Intent/QR Signature Generation
product: UPI TPAP SDK
platform: Android
page_source: https://juspay.io/in/docs/upi-tpap-sdk/android/headless-process-payloads/signed-intent-qr-signature-generation
llms_txt: https://juspay.io/in/docs/llms.txt
product_llms_txt: https://juspay.io/in/docs/upi-tpap-sdk/llms.txt
---


## Signed Intent/QR Signature Generation



This API is used to sign customer's and non-verified merchant's QR/Intent URL. Merchants will have to sign their QR/Intent QR using their own private key and they have to share their public key with PSP. This API will create a signature using the PSP's private key and will return the signature in response.


###   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: Operation to be performed in the SDK
      - Value: Value: upiGenerateUrlSignature
      - Tags: String, Mandatory
    - **Url**:
      - Description: UPI QR/Intent URL
      - Tags: String, Mandatory
    - **MerchantKeyId**:
      - Description: Key ID to identify the public-private key pair used for signature generation.
      - Tags: String, Mandatory
    - **Signature**:
      - Description: Signature generated for the signaturePayload.
      - Tags: String, Mandatory
    - **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: Operation to be performed in the SDK.
      - Value: Value: upiGenerateUrlSignature
      - Tags: String, Mandatory
    - **Status**:
      - Description: Status of the Operation. Possible values : SUCCESS, FAILURE
      - Tags: String, Mandatory
    - **Url**:
      - Description: URL that has been appended with &sign=
      - Tags: String, Mandatory
    - **Signature**:
      - Description: Signature of the URL
      - Tags: String, Mandatory
    - **ResponseCode**:
      - Description: SUCCESS if the call succeeded. Otherwise shows the error code.
      - Tags: String, Mandatory
    - **ResponseMessage**:
      - Description: SUCCESS if the call succeeded. Otherwise shows verbose error.
      - Tags: String, 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
{"success":false,"message":"Failed to fetch snippet"}
```

#### Kotlin Code Snippet:

```kotlin
{"success":false,"message":"Failed to fetch snippet"}
```


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

#### Request Code Snippet:

```request
{"success":false,"message":"Failed to fetch snippet"}
```

### Response snippets:

#### Response:
```plaintext
{"success":false,"message":"Failed to fetch snippet"}
```



---

## Complete Code Reference

The following code files are referenced in the steps above:

### InappHeadless4.txt

```
{"success":false,"message":"Failed to fetch snippet"}
```


---

## See Also

- [Complaint Status](https://juspay.io/in/docs/upi-tpap-sdk/android/headless-process-payloads/complaint-status)
- [Signed Intent/QR Signature Verification](https://juspay.io/in/docs/upi-tpap-sdk/android/headless-process-payloads/signed-intent-qr-signature-verification)
