# Generate B2C Payment QR Code (Lite)

You can generate a QR code by sending a **`POST`** request to E-Invoicing API with the following request headers.

### Request Method

POST

### **Request URL**

```
{{HOST}}/einv/v1/qrcode/generate
```

### **Request Header**

| Parameter             | Data Type | Field Validations | Description                                                             |
| --------------------- | --------- | ----------------- | ----------------------------------------------------------------------- |
| X-Cleartax-Auth-Token | String    | NA                | Mandatory. The auth token generated from ClearTax user id and password. |
| Gstin                 | String    | NA                | Mandatory. GSTIN number for the user.                                   |
| Content-Type          | String    | NA                | <p>Mandatory. This will always be <br>"application/json" for JSON.</p>  |

### Request Path Params <a href="#request-path-params" id="request-path-params"></a>

There are no path parameters for this API.

### Request Query Params <a href="#request-query-params" id="request-query-params"></a>

There are no query parameters for this API.

### **Request Body**

| Parameter                    | Data Type | Field Validations                                                       | Description                                                                  |
| ---------------------------- | --------- | ----------------------------------------------------------------------- | ---------------------------------------------------------------------------- |
| payee\_address               | String    | NA                                                                      | Mandatory. Payee VPA(Virtual Payment Address)                                |
| payee\_name                  | String    | <p>minLength: 1</p><p>maxLength: 100</p><p>pattern: "^(\[^\\"])\*$"</p> | Mandatory. Payee Name                                                        |
| transaction\_note            | String    | NA                                                                      | Optional. Transaction note providing a short description of the transaction. |
| transaction\_amount          | String    | NA                                                                      | Mandatory. Transaction amount in decimal format.                             |
| payee\_bank\_account\_number | String    | <p>minLength: 1</p><p>maxLength: 18</p><p>pattern: "^(\[^\\"])\*$"</p>  | Optional.  Payee bank account number                                         |
| payee\_ifsc\_code            | String    | <p>minLength: 1</p><p>maxLength: 11</p><p>pattern: "^(\[^\\"])\*$"</p>  | Optional.  Payee IFSC code                                                   |
| document\_number             | String    | NA                                                                      | Optional.  Document number                                                   |
| document\_date               | String    | NA                                                                      | Optional.  Document date                                                     |
| gstin                        | String    | 15 Characters                                                           | Optional. Seller GSTIN number                                                |
| gst\_value                   | String    | NA                                                                      | Optional. Total GST tax value                                                |
| cgst\_value                  | String    | NA                                                                      | Optional. CGST value                                                         |
| sgst\_value                  | String    | NA                                                                      | Optional. SGST value                                                         |
| igst\_value                  | String    | NA                                                                      | Optional. IGST value                                                         |
| cess\_value                  | String    | NA                                                                      | Optional. CESS value                                                         |

### Response Status Codes

| HTTP Status Code | Description                                                                  |
| ---------------- | ---------------------------------------------------------------------------- |
| 200              | For a successfully processed request (may be a success or validation error). |
| 401              | If the user is not authenticated for the operation.                          |
| 403              | If the user is not authorized for the operation.                             |
| 500              | If there are any unhandled exceptions on the Clear side.                     |

### Response Schema

| Parameter      | Data Type | Field Validations | Description                                                                     |
| -------------- | --------- | ----------------- | ------------------------------------------------------------------------------- |
| qr\_code       | String    | NA                | QR code string in base 64 format. Value will be null in negative case scenario. |
| raw\_qrCode    | String    | NA                | This field will contain the keys - values pair of request.                      |
| error\_details | List      | NA                | List of Error objects. Will be null in a successful API call.                   |

#### Error Details Object

| Parameter      | Data Type | Field Validations | Description                        |
| -------------- | --------- | ----------------- | ---------------------------------- |
| error\_code    | Number    | NA                | Specific code as per the error.    |
| error\_message | String    | NA                | Specific message as per the error. |
| error\_source  | String    | ClearTax          | Source of the error.               |

### Sample Request and Response <a href="#sample-request-and-response" id="sample-request-and-response"></a>

#### Request

```json
{
    "payee_name": "sandeepjayendran",
    "payee_address": "sandjay@okhdfcbank",
    "transaction_amount": "100.5",
    "transaction_note": "TransactionNote",
    "payee_bank_account_number": "123456789",
    "payee_ifsc_code": "HDFC12345",
    "document_number": "Doc123",
    "document_date": "23/03/2021",
    "gstin": "29AAFCD5862R000",
    "gst_value": "18",
    "cgst_value": "9",
    "sgst_value": "9",
    "igst_value": "0",
    "cess_value": "0"
}
```

#### Response (Success)&#x20;

**HTTP Status Code: 200 OK**

```json
{
    "qr_code": "iVBORw0KGgoAAAANSUhEUgAAAcIAAAHCAQAAAABUY/ToAAAHB0lEQVR4Xu2aTc7iTAyEjViw5Ai5CVwMiUi5WLhJjsAyC0RPPeUw0htGXz7NZhZOSxPlp6tfqcauLruJ9pdjjPWb/zt25NbYkVtjR26NHbk1duTW2JFbY0dujR25NRbkGBGnd9xb4+K7U2t9zNdndLp7dXPw7vHUxENF5EP/TuO57+L6XODzJe7TfDn3oUnHSWvc4tT4yuR6SFP4PE6t6U7sDfB45/t90pK5ruYCr4t86LWIU6Rd24tgvBF9pvWomecXzJdGvs++g8xwVvadYy4OQsblPEzzoS5S//Smj3BCQrCQbQqx3DUCzwv9KT+LIK3xij6H4H9e1hpfBbmMVzi+5oPuxOjQeOwgc4pQ9Inq36MYUtx2+tZHWLJEYKdd0JfMz6khaBJ6JWnCiyGhFTIBoVGSsYBgHok5maj32Xbq9gEUQ45MsNdExog+US1u9TiIVi2ZqYnkz6vMroFEwM1tws2yUxN3YOtpoW9slDWRcpMTuyA284WKs8aZekXihQllivdDWK6IfIe+kZW6HzIXQUKrQpB3MhCtKfq0WxpRDnl2Qt5bZuWYIJcq2goRf+ZL1eRJfzqpMsgPt3ICPbRqoYMe035b3olIz62JxGWHTRQ+gfqW6i3Nghx6HJE2b49yDCWRqVaQeWE/HEW1hOrFOwl9s9rrneV9MZzVkGmYjtwRgrqbYfWE+GuSaG2LT/jKzxrIZr9NA+nNVKwTOx71ykeyuMiw62uOYkgspbc4WIZRa/yNvomEPndGdgAql58+oQ4SFUfPyUp4hGBZJ1JT7wa2xxtTVPldKyKpV+Qw8ZqoPVuhlP1uHonDnhDswz26lRsvgrTfXnjsfaEE7sMJScdtom/S5otztibS7ZElA/U2aHPTjqRjCajZSniURMJoY8cLW3KXdRwENMLSX7Hk3L1I4YLIUWQub0jIR1onPJXm60KlK9LFPDJWEdmwAyNVLV5T3yjw0HiWpJCBfqdm7gD1kEgWxMVJD9m/dVcgXK+omGOmtgF/KInEJlGb8IkJZCoKtphz52csx20GlEPixj+njfQCIPhAA+7BSRtfT4vak701kd72FGSPJPiIjB2bF2pLY5JqJrO3IJI3J5JUIUhFYqrDzttN3B7H8OIst7FHFkRikzJJeY0Rz1x0DUP0NZcvLvDoetdDKr6Qd2wSa1DkusdkO5Vtt48dXeVnFSSvG9seCUlFp1w0XGZhmUF+No4E1pldA4lauSxJUX/QRoFbEew+5cBvs2yscgeohxz5BR/bnuPLNjOQ/E9CDuRn49GqVhBJVLk2gThqXgn9yG4IiA9M02rfGl8HeesoSzgDsEYN+IQ7VN84R7Luyzu0r4quCtLFCBYBMifEy+clgPpMV5QdTzWkvtVD0lPDGJyycMvj2Z6Gtwk+sinqIhDrFkRy0sZU5Im637oF1QfbTCwCJwSBTZfkF0XOzHII6nFAqAZ8gj9oNdN/xU/URIbrOJ9nKytH3Tdbz/xwttA3N1TiS+NLIDn9aLZJbHsBmUEd5+2x4a4s9MlyjmJILILPszm27qjjOq3RAxeIJT+Ju/59XxmkfQIC/k77/XIDLpfUhx5fHqSmvXpBJJwFAh74BNIQXynxuqiiIz/ZHu+L/1zlZxWk6hVXKYcl3EhS5F17H/th8ztqOxYviDRnIFPUTasXSoL5SG3nyzpuayDtK3kjKR9suid33GZsJuWu5j99THBf5ldD4qRo2DKO+G1cU3M7MoLY1Ex2QazET26rIPlmteI13C52wPmZU3EMixGviBw/ueiOG0LFicgi9BS+TJPaH76irwryAYVL4aatMHLvk/1mqoKx8U4R6cuhItL5afvNfnjCOmkNuSu6AjOlnuAyUTYLGYLFkG4DsO3NHCExC8P0YgNcpnqPNMFrJ1UDiYAHs1KtSFfqYDNKewkTik8ge2siCS0bJpyUmye0AQbyk/KFOByhleylAVcPOZKfzMJqT0nmhWIOxyC++5xm2/AzP6sgzV4S7DT8bafCJfAz6Jv4MAkTWhFJpFnjcQJoGW0AbYUnbLqy0gv1qWDrjksNJK9doLg2Qa3Izzb5BwAOtxm40vXWrTO7BjJbSWTlgTOjUfdJ9TUdprl1vRK8K4hc4M0KtizkHtOVxi75idnCpr++/ldqICFT4bbUcQhazNS3Fnp/gFuC8baqeasgeXBTyQmJzRSPirmklV2QJMVnvXisiGSfM5xylzQMTiC75RdZmbNakvFVC1ZCDs1TT1nR2T89P5KFT/AZiv9CUSQXvJJ2vJsPJLNekcbT5m5O0mEqimwEHm78IqRbSfYJDckytzNtFP+FP2R2AeRIQjJ1tlkAHpDpmGuEpeyo7VSsq+UiyL8YO3Jr7MitsSO3xo7cGjtya+zIrbEjt8aO3Br/BPkL0XSwqOHhDjEAAAAASUVORK5CYII=",
    "raw_qrCode": "upi://pay?pa=sandjay@okhdfcbank&pn=7843842529@paytm&tn=Transaction Note - TransactionNote, Supplier Name - 7843842529@paytm, Supplier GSTIN - 29AAFCD5862R000, Bank Account Number - 123456789, UPI ID - sandjay@okhdfcbank, IFSC Code - HDFC12345, Invoice Number - Doc123, Invoice Date - 23/12/2022, Transaction Amount - 1000, GST Amount - 18, CGST Amount - 9, SGST Amount - 9, IGST Amount - 0, CESS Amount - 0&am=1000&cu=INR&mode=01",
    "error_details": null
}
```

#### Response (Success)&#x20;

**HTTP Status Code: 200 OK**

```json
{
    "qr_code": null,
    "raw_qrCode": null,
    "error_details": {
        "error_code": "107",
        "error_message": "null : UPI Id can not be left blank",
        "error_source": "CLEARTAX"
    }
}
```

When you scan the QR Code generated using the API returned qr\_code string, the payload corresponds to:

```
upi://pay?pa=vatsan@okhdfcbank&pn=sandeep%20jayendran&tn=Transaction+Note%3A+TransactionNote%2C+Supplier+GSTIN%3A+29AAFCD5862R000%2C+Bank+Account+Number%3A+123456789%2C+IFSC+Code%3A+HDFC12345%2C+Invoice+Number%3A+Doc123%2C+Invoice+Date%3A+23%2F03%2F2021%2C+GST+Amount%3A+18%2C+CGST+Amount%3A+9%2C+SGST+Amount%3A+9%2C+IGST+Amount%3A+0%2C+CESS+Amount%3A+0&am=100.5&cu=INR&mode=01
```

### API Validations <a href="#api-validations" id="api-validations"></a>

Currently there are no known validations for this API.

### API Constraints <a href="#api-constraints" id="api-constraints"></a>

Payee UPI Id is mandatory to generate B2C QR Code.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.cleartax.in/cleartax-docs/e-invoicing-api/e-invoicing-api-reference/cleartax-e-invoicing-apis-xml-schema/b2c-e-invoicing-apis/generate-b2c-qr-code.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
