# Retrieve QR Details by ID

**Endpoint:**\
`GET /v2/mia/qr/{qrId}`

This method allows retrieving details of an existing QR code using the unique identifier `qrId`.\
The same type of information can also be received automatically through the callback mechanism.

***

**Request parameter (path)**

| Name | Type          | Description                       |
| ---- | ------------- | --------------------------------- |
| qrId | string (guid) | Unique identifier of the QR code. |

***

**Response parameters**

| ield                  | Type              | Description                                                                       |
| --------------------- | ----------------- | --------------------------------------------------------------------------------- |
| `result`              | object            | Response object.                                                                  |
| `result.qrId`         | string (guid)     | Unique QR code identifier.                                                        |
| `result.extensionId`  | string (guid)     | QR extension identifier.                                                          |
| `result.orderId`      | string (100)      | Merchant-side order identifier.                                                   |
| `result.status`       | string (enum)     | QR status. Possible values: `Active`, `Inactive`, `Expired`, `Paid`, `Cancelled`. |
|                       |                   | - `Active` – QR is active.                                                        |
|                       |                   | - `Inactive` – Static/Hybrid QR without payments in the last 30 days.             |
|                       |                   | - `Expired` – Dynamic/Hybrid QR expired with no payment.                          |
|                       |                   | - `Paid` – QR has been paid.                                                      |
|                       |                   | - `Cancelled` – QR was cancelled.                                                 |
| `result.type`         | string (enum)     | QR type: `Static`, `Dynamic`, `Hybrid`.                                           |
| `result.url`          | string (1000)     | QR URL. Format: HTTPS URL.                                                        |
| `result.amountType`   | string (enum)     | Amount type: `Fixed`, `Controlled`, `Free`.                                       |
| `result.amount`       | number (decimal)  | Fixed amount (for fixed-type QR).                                                 |
| `result.amountMin`    | number (decimal)  | Minimum amount (for controlled-type QR).                                          |
| `result.amountMax`    | number (decimal)  | Maximum amount (for controlled-type QR).                                          |
| `result.currency`     | string (enum)     | Payment currency. Value: `MDL` (ISO 4217).                                        |
| `result.description`  | string (500)      | Order description.                                                                |
| `result.callbackUrl`  | string (1000)     | Merchant callback URL for payment notification. Format: HTTPS URL.                |
| `result.createdAt`    | string (datetime) | QR code creation timestamp (ISO 8601-1:2019).                                     |
| `result.updatedAt`    | string (datetime) | Last status update timestamp.                                                     |
| `result.expiresAt`    | string (datetime) | Expiry timestamp for dynamic/hybrid QR.                                           |
| `result.terminalId`   | string (100)      | Terminal ID provided by the bank.                                                 |
| `ok`                  | boolean           | Request processing status. `true` – successful, `false` – error occurred.         |
| `errors`              | array             | Error list (if any).                                                              |
| `errors.errorCode`    | string            | Error code.                                                                       |
| `errors.errorMessage` | string            | Error description.                                                                |

***

**Example request**

```bash
curl -G "https://api.example.com/v2/mia/qr/123e4567-e89b-12d3-a456-426614174000" \
  -H "Authorization: Bearer {{access_token}}"
```

***

**Example response**

```json
{
  "result": {
    "qrId": "123e4567-e89b-12d3-a456-426614174000",
    "extensionId": "40e6ba44-7dff-48cc-91ec-386a38318c68",
    "status": "Paid",
    "type": "Dynamic",
    "url": "https://example.com/qr/123e4567-e89b-12d3-a456-426614174000",
    "amountType": "Fixed",
    "amount": 50.00,
    "currency": "MDL",
    "description": "Order description",
    "callbackUrl": "https://example.com/callback"
    "createdAt": "2029-10-22T10:32:28+03:00",
    "updatedAt": "2029-10-22T10:32:58+03:00",
    "expiresAt": "2029-10-22T10:33:28+03:00",
    "terminalId": "P011111"
  },
  "ok": true
}

```


---

# 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.maibmerchants.md/mia-qr-api/en/endpoints/information-retrieval-get/retrieve-qr-details-by-id.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.
