# Get ticket details

`GET /api/v1/Outlets/{outletId}/Tickets/{ticketId}`

Core API · Tickets · base URL `https://core-api.ancon.io` · auth: `Access-Token` header · docs: https://ancon.dev/api/core/tickets/get-ticket-details

## Path parameters

| Name | Type | Required | Description |
| --- | --- | --- | --- |
| `outletId` | string (uuid) | yes |  |
| `ticketId` | string (uuid) | yes |  |

## Header parameters

| Name | Type | Required | Description |
| --- | --- | --- | --- |
| `correlationId` | string | no | Correlation Id for the request |

## Responses

| Status | Description |
| --- | --- |
| 200 | OK |
| 401 | Unauthorized |
| 404 | Not Found |

### 200 response (`application/json`)

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| `ticket` | object or null | no |  |
| `ticket.id` | string (uuid) | no |  |
| `ticket.incrementalNumbers` | object or null | no |  |
| `ticket.incrementalNumbers.ticketNumber` | integer (int64) or null | no | Unique number per outlet per Z-Report, it will reset when a Z-Report is made and start on 1 again. Used alot in the UI to give a simple to read number, will also be printed on tickets. |
| `ticket.incrementalNumbers.serialNumber` | integer (int64) or null | no | Unbroken sequence per outlet which statisfies the needs of certain pos system laws, is only used on Checks. |
| `ticket.incrementalNumbers.referenceNumber` | integer (int64) or null | no | Unbroken sequence per outlet which is used for all types of sales. Suitable for correlation between systems. |
| `ticket.incrementalNumbers.refundSerialNumber` | integer (int64) or null | no | Uses same series as SerialNumber and is set on orders which is refunded. |
| `ticket.orderFormat` | integer (int32) | no | Allowed values: `0`, `1`, `2`, `4`, `8`, `16`, `32`, `64`, `128`, `159`, `191`. |
| `ticket.serviceTime` | object or null | no | Service time for the sale. No time is needed for Kind.AsSoonAsPossible it will be set as current UTC time on server side. |
| `ticket.serviceTime.kind` | integer (int32) | no | Allowed values: `0`, `1`, `-1`. |
| `ticket.serviceTime.time` | string (date-time) or null | no |  |
| `ticket.preparationTime` | string or null | no |  |
| `ticket.customer` | object or null | no |  |
| `ticket.customer.email` | string or null | no |  |
| `ticket.customer.fullName` | string or null | no |  |
| `ticket.customer.customerId` | string (uuid) or null | no |  |
| `ticket.customer.address` | object or null | no |  |
| `ticket.customer.address.street` | string or null | no |  |
| `ticket.customer.address.zipCode` | string or null | no |  |
| `ticket.customer.address.city` | string or null | no |  |
| `ticket.customer.address.state` | string or null | no |  |
| `ticket.customer.address.country` | string or null | no |  |
| `ticket.customer.address.location` | object or null | no |  |
| `ticket.customer.address.location.latitude` | number (double) | no |  |
| `ticket.customer.address.location.longitude` | number (double) | no |  |
| `ticket.customer.phone` | string or null | no |  |
| `ticket.salesLocation` | object or null | no |  |
| `ticket.salesLocation.type` | integer (int32) | no | Allowed values: `0`, `1`, `2`, `3`. |
| `ticket.salesLocation.table` | object or null | no |  |
| `ticket.salesLocation.table.id` | string (uuid) | no |  |
| `ticket.salesLocation.table.number` | integer (int32) | no |  |
| `ticket.salesLocation.pos` | object or null | no |  |
| `ticket.salesLocation.pos.id` | string (uuid) | no |  |
| `ticket.salesLocation.pos.name` | string or null | no |  |
| `ticket.salesLocation.express` | object or null | no |  |
| `ticket.salesLocation.express.id` | string (uuid) | no |  |
| `ticket.salesLocation.express.name` | string or null | no |  |
| `ticket.delivery` | object or null | no |  |
| `ticket.delivery.address` | object or null | no |  |
| `ticket.delivery.address.street` | string or null | no |  |
| `ticket.delivery.address.zipCode` | string or null | no |  |
| `ticket.delivery.address.city` | string or null | no |  |
| `ticket.delivery.address.state` | string or null | no |  |
| `ticket.delivery.address.country` | string or null | no |  |
| `ticket.delivery.address.location` | object or null | no |  |
| `ticket.delivery.address.location.latitude` | number (double) | no |  |
| `ticket.delivery.address.location.longitude` | number (double) | no |  |
| `ticket.delivery.phone` | string or null | no |  |
| `ticket.delivery.recipient` | string or null | no |  |
| `ticket.status` | integer (int32) | no | Allowed values: `0`, `1`, `2`, `3`, `4`, `5`. |
| `ticket.instructions` | string or null | no |  |
| `ticket.acceptedAt` | string (date-time) | no |  |
| `ticket.preparingAt` | string (date-time) or null | no |  |
| `ticket.readyAt` | string (date-time) or null | no |  |
| `ticket.closedAt` | string (date-time) or null | no |  |
| `ticket.autoMode` | integer (int32) | no | Allowed values: `0`, `1`, `2`, `3`. |
| `ticket.source` | string or null | no |  |
| `ticket.saleSourceId` | string (uuid) | no |  |
| `ticket.customTicketNumber` | integer (int64) or null | no |  |
| `ticket.totalAmount` | object or null | no |  |
| `ticket.totalAmount.amount` | number (double) | no |  |
| `ticket.totalAmount.currency` | string or null | no |  |
| `ticket.subtotalInclTax` | object or null | no |  |
| `ticket.subtotalInclTax.amount` | number (double) | no |  |
| `ticket.subtotalInclTax.currency` | string or null | no |  |
| `ticket.subTotalDiscountInclTax` | object or null | no |  |
| `ticket.subTotalDiscountInclTax.amount` | number (double) | no |  |
| `ticket.subTotalDiscountInclTax.currency` | string or null | no |  |
| `ticket.feeAmountInclTax` | object or null | no |  |
| `ticket.feeAmountInclTax.amount` | number (double) | no |  |
| `ticket.feeAmountInclTax.currency` | string or null | no |  |
| `ticket.fees` | array<object> or null | no |  |
| `ticket.fees[].id` | string (uuid) | no |  |
| `ticket.fees[].feeId` | string (uuid) | no |  |
| `ticket.fees[].name` | string or null | no |  |
| `ticket.fees[].amountInclTax` | object or null | no |  |
| `ticket.fees[].amountInclTax.amount` | number (double) | no |  |
| `ticket.fees[].amountInclTax.currency` | string or null | no |  |
| `ticket.fees[].amountExclTax` | object or null | no |  |
| `ticket.fees[].amountExclTax.amount` | number (double) | no |  |
| `ticket.fees[].amountExclTax.currency` | string or null | no |  |
| `ticket.subTickets` | array<object> or null | no |  |
| `ticket.subTickets[].id` | string (uuid) | no |  |
| `ticket.subTickets[].ticketDestinationId` | string (uuid) | no |  |
| `ticket.subTickets[].isCompleted` | boolean | no |  |
| `ticket.items` | array<object> or null | no |  |
| `ticket.items[].id` | string (uuid) | no |  |
| `ticket.items[].product` | object or null | no |  |
| `ticket.items[].product.productId` | string (uuid) | no |  |
| `ticket.items[].product.productName` | string or null | no |  |
| `ticket.items[].product.productType` | integer (int32) | no | Allowed values: `0`, `1`, `2`, `3`, `4`, `5`, `6`, `7`, `8`, `9`, `10`. |
| `ticket.items[].product.variantId` | string (uuid) | no |  |
| `ticket.items[].product.variantName` | string or null | no |  |
| `ticket.items[].product.variantType` | integer (int32) | no | Allowed values: `0`, `1`, `2`, `3`, `4`, `5`, `6`, `7`. |
| `ticket.items[].product.hasVariants` | boolean | no |  |
| `ticket.items[].product.productGroupId` | string (uuid) | no |  |
| `ticket.items[].product.productGroupName` | string or null | no |  |
| `ticket.items[].product.glassesPerBottle` | number (double) or null | no |  |
| `ticket.items[].quantity` | number (double) | no |  |
| `ticket.items[].unitQuantity` | number (double) | no |  |
| `ticket.items[].unit` | string or null | no |  |
| `ticket.items[].unitType` | integer (int32) | no | Allowed values: `0`, `1`, `2`, `3`. |
| `ticket.items[].kitchenMessage` | string or null | no |  |
| `ticket.items[].totalPriceInclTax` | object or null | no |  |
| `ticket.items[].totalPriceInclTax.amount` | number (double) | no |  |
| `ticket.items[].totalPriceInclTax.currency` | string or null | no |  |
| `ticket.items[].discountAmountInclTax` | object or null | no |  |
| `ticket.items[].discountAmountInclTax.amount` | number (double) | no |  |
| `ticket.items[].discountAmountInclTax.currency` | string or null | no |  |
| `ticket.items[].ticketDestinations` | array<string (uuid)> or null | no |  |
| `ticket.items[].modifications` | array<object> or null | no |  |
| `ticket.items[].modifications[].modification` | string or null | no |  |
| `ticket.items[].modifications[].ingredientId` | string (uuid) or null | no |  |
| `ticket.items[].modifications[].name` | string or null | no |  |
| `ticket.items[].modifications[].replaceId` | string (uuid) or null | no |  |
| `ticket.items[].modifications[].replacementName` | string or null | no |  |
| `ticket.items[].modifications[].addOnGroupId` | string (uuid) or null | no |  |
| `ticket.items[].modifications[].addOnGroupName` | string or null | no |  |
| `ticket.items[].modifications[].quantity` | number (double) | no |  |
| `ticket.items[].modifications[].freeAmount` | number (double) | no |  |
| `ticket.items[].modifications[].cost` | number (double) | no |  |
| `ticket.items[].modifications[].totalCost` | number (double) | no |  |
| `ticket.items[].modifications[].position` | integer (int32) | no |  |
| `ticket.items[].courseName` | string or null | no |  |
| `ticket.items[].coursePosition` | integer (int32) | no |  |
| `ticket.items[].status` | integer (int32) | no | Allowed values: `0`, `1`, `2`, `3`, `4`, `5`. |
| `ticket.items[].ticketItems` | array<object> or null | no |  |
| `ticket.items[].ticketItemType` | integer (int32) | no | Allowed values: `0`, `1`, `2`. |

#### Example (from schema)

```json
{
  "ticket": {
    "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
    "incrementalNumbers": {
      "ticketNumber": 0,
      "serialNumber": 0,
      "referenceNumber": 0,
      "refundSerialNumber": 0
    },
    "orderFormat": 0,
    "serviceTime": {
      "kind": 0,
      "time": "2026-01-15T12:00:00Z"
    },
    "preparationTime": "string",
    "customer": {
      "email": "string",
      "fullName": "string",
      "customerId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
      "address": {
        "street": "string",
        "zipCode": "string",
        "city": "string",
        "state": "string",
        "country": "string",
        "location": {
          "latitude": 0,
          "longitude": 0
        }
      },
      "phone": "string"
    },
    "salesLocation": {
      "type": 0,
      "table": {
        "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
        "number": 0
      },
      "pos": {
        "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
        "name": "string"
      },
      "express": {
        "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
        "name": "string"
      }
    },
    "delivery": {
      "address": {
        "street": "string",
        "zipCode": "string",
        "city": "string",
        "state": "string",
        "country": "string",
        "location": {
          "latitude": 0,
          "longitude": 0
        }
      },
      "phone": "string",
      "recipient": "string"
    },
    "status": 0,
    "instructions": "string",
    "acceptedAt": "2026-01-15T12:00:00Z",
    "preparingAt": "2026-01-15T12:00:00Z",
    "readyAt": "2026-01-15T12:00:00Z",
    "closedAt": "2026-01-15T12:00:00Z",
    "autoMode": 0,
    "source": "string",
    "saleSourceId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
    "customTicketNumber": 0,
    "totalAmount": {
      "amount": 0,
      "currency": "string"
    },
    "subtotalInclTax": {
      "amount": 0,
      "currency": "string"
    },
    "subTotalDiscountInclTax": {
      "amount": 0,
      "currency": "string"
    },
    "feeAmountInclTax": {
      "amount": 0,
      "currency": "string"
    },
    "fees": [
      {
        "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
        "feeId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
        "name": "string",
        "amountInclTax": {
          "amount": 0,
          "currency": "string"
        },
        "amountExclTax": {
          "amount": 0,
          "currency": "string"
        }
      }
    ],
    "subTickets": [
      {
        "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
        "ticketDestinationId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
        "isCompleted": true
      }
    ],
    "items": [
      {
        "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
        "product": {
          "productId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
          "productName": "string",
          "productType": 0,
          "variantId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
          "variantName": "string",
          "variantType": 0,
          "hasVariants": true,
          "productGroupId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
          "productGroupName": "string",
          "glassesPerBottle": 0
        },
        "quantity": 0,
        "unitQuantity": 0,
        "unit": "string",
        "unitType": 0,
        "kitchenMessage": "string",
        "totalPriceInclTax": {
          "amount": 0,
          "currency": "string"
        },
        "discountAmountInclTax": {
          "amount": 0,
          "currency": "string"
        },
        "ticketDestinations": [
          "3fa85f64-5717-4562-b3fc-2c963f66afa6"
        ],
        "modifications": [
          {
            "modification": "string",
            "ingredientId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
            "name": "string",
            "replaceId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
            "replacementName": "string",
            "addOnGroupId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
            "addOnGroupName": "string",
            "quantity": 0,
            "freeAmount": 0,
            "cost": 0,
            "totalCost": 0,
            "position": 0
          }
        ],
        "courseName": "string",
        "coursePosition": 0,
        "status": 0,
        "ticketItems": [
          {}
        ],
        "ticketItemType": 0
      }
    ]
  }
}
```

### 401 response (`application/json`)

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| `message` | string or null | no |  |

#### Example (from schema)

```json
{
  "message": "string"
}
```

### 404 response (`application/json`)

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| `message` | string or null | no |  |
| `errorCode` | string (uuid) | no |  |

#### Example (from schema)

```json
{
  "message": "string",
  "errorCode": "3fa85f64-5717-4562-b3fc-2c963f66afa6"
}
```

## Example request

```bash
curl -X GET "https://core-api.ancon.io/api/v1/Outlets/{outletId}/Tickets/{ticketId}" \
  -H "Access-Token: $ANCON_TOKEN"
```
