---
title: "Bought products"
url: "https://developer.migros.ch/apis/layout-api-1/versions/ba4ab42c-2abb-4848-ba02-96d8671a0622/operations/receiptProducts"
---

> Full API specification: https://developer.migros.ch/apis/layout-api-1/versions/ba4ab42c-2abb-4848-ba02-96d8671a0622.md

# Bought products

`GET` `/migros/customers/receipts/v1/products/{cumulus}/{transaction}`

Operation ID: `receiptProducts`

Returns the product IDs of the real (i.e. VAT-ID neither 0 nor 9) articles bought in this purchase.

## Path parameters

- `cumulus` (integer, required) - Cumulus Number
- `transaction` (string, required) - Transaction ID of the receipt: Either as returned from a call to one of the receipt/warranty list routes or of the form `trxDate_trxTime_storeID_workstationNumber_sequenceNumber`. If you have to use the second form: Consult with a human. If the list endpoint declares `hasDetail` = 0 then this transaction has no attached detail data. Trying to retrieve detail data for a transaction that has no detail data results in an error (400 or 404) so don't even try: It'll never work.

## Responses

- `200` - Array of product IDs.

## OpenAPI definition

```yaml
openapi: 3.0.1
info:
  title: Layout-API
  version: 1.3.0
servers:
  - description: URL of upstream
    url: https://api.migros.ch
paths:
  /migros/customers/receipts/v1/products/{cumulus}/{transaction}:
    get:
      description: Returns the product IDs of the real (i.e. VAT-ID neither 0 nor 9)
        articles bought in this purchase.
      operationId: receiptProducts
      parameters:
        - $ref: "#/components/parameters/cumulus"
        - $ref: "#/components/parameters/transaction"
      responses:
        "200":
          content:
            application/json:
              schema:
                items:
                  type: string
                type: array
          description: Array of product IDs.
      summary: Bought products
      tags:
        - Receipt
security:
  - Kong-Api-Key: []
components:
  parameters:
    cumulus:
      description: Cumulus Number
      example: 2099123456789
      in: path
      name: cumulus
      required: true
      schema:
        maximum: 2099999999999
        minimum: 2098000000000
        type: integer
    transaction:
      description: >-
        Transaction ID of the receipt: Either as returned from a call to one of
        the receipt/warranty list routes or of the form
        `trxDate_trxTime_storeID_workstationNumber_sequenceNumber`. If you have
        to use the second form: Consult with a human.


        If the list endpoint declares `hasDetail` = 0 then this transaction has
        no attached detail data. Trying to retrieve detail data for a
        transaction that has no detail data results in an error (400 or 404) so
        don't even try: It'll never work.
      example: 2024-12-31
      in: path
      name: transaction
      required: true
      schema:
        type: string
  securitySchemes:
    Kong-Api-Key:
      description: Kong key-auth authentication
      in: header
      name: X-Api-Key
      type: apiKey
```
