Skip to content

카탈로그 - 콤보(세트상품) ALPHA ​

콤보 기능이 보이지 않아요

ALPHA 콤보(세트) 기능은 현재 일부 매장에만 지원 중인 기능이에요.

Types ​

ALPHA 콤보(세트상품) (CatalogCombo) ​

콤보(세트상품)는 여러 상품을 한 번에 할인된 가격으로 묶어 판매할 수 있는 상품종입니다. 예를 들어 '음료+디저트 세트' 콤보에 '음료'와 '디저트' 상품군을 두고, 고객은 상품군에서 각각 하나씩 상품을 골라 주문합니다.

NameTypeRequiredDescriptionExample
idString✅콤보 ID"42"
merchantIdLong✅매장 ID42
titleString✅콤보명"음료+디저트 세트"
codeString콤보 코드""
enabledBoolean✅콤보 활성화 및 노출 여부
유의: 토스 POS에서 설정하는 '고객용 채널 노출' 여부를 나타내는 설정이 아니에요.
true
orderInt✅정렬 순서1
descriptionString✅콤보 설명""
imageUrlString콤보 이미지 URL""
labelsString[]콤보 라벨 목록["신규"]
basePriceValueLong✅콤보 판매 가격9000
originalPriceValueLong콤보 원래 가격
콤보를 구성하는 상품의 원래 가격 합계
10000
targetGroupsCatalogComboTargetGroup[]✅콤보 구성 상품군 목록
attributes[String: Any]기타 속성{"key": "value"}
createdAttimestamp✅생성 시각"2025-09-01T00:00:00Z"
updatedAttimestamp✅수정 시각"2025-09-01T00:00:00Z"

ALPHA 콤보 구성 상품군 (CatalogComboTargetGroup) ​

콤보를 구성하는 상품군입니다. 예를 들어 '음료+디저트 세트'에서 '음료', '디저트'가 바로 상품군입니다. 콤보 등록 시 각 상품군에서 고를 수 있는 상품 목록을 지정해 두어야 합니다.

NameTypeRequiredDescriptionExample
idString✅상품군 ID"42"
merchantIdLong✅매장 ID42
titleString✅상품군명"음료"
descriptionString✅상품군 설명""
orderInt✅상품군 배치 순서1
minQuantityInt✅선택 가능한 최소 상품 개수1
maxQuantityInt✅선택 가능한 최대 상품 개수3
targetsCatalogComboTarget[]✅상품군에 포함된 상품 목록

ALPHA 콤보 구성 (CatalogComboTarget) ​

콤보 구성입니다. 예를 들어 '음료+디저트 세트'에서 '음료' 상품군에 속한 '아메리카노', '카페라떼'와 같은 상품이 바로 콤보 구성입니다. 고객은 상품군에서 각각 구성 상품을 골라 주문합니다.

NameTypeRequiredDescriptionExample
idString✅구성 ID"42"
merchantIdLong✅매장 ID42
groupIdString✅구성 상품군 ID"42"
itemCatalogItem✅구성 상품
orderInt✅구성 배치 순서1
defaultBoolean✅기본 선택 여부false
additionalPriceValueLong✅선택 시 발생하는 추가 가격500

Methods ​

ALPHA 콤보 단건 조회 ​

PropertyValue
MethodGET
Path/api-public/openapi/v1/merchants/{merchantId}/catalog/combos/{comboId}
Response TypeCatalogCombo
Description매장의 콤보 하나를 조회합니다.

요청 파라미터

ParameterLocationTypeRequiredDescription
merchantIdPathLong✅매장 ID
comboIdPathString✅콤보 ID

ALPHA 콤보 복수건 조회 ​

PropertyValue
MethodGET
Path/api-public/openapi/v1/merchants/{merchantId}/catalog/combos/by-ids
Response TypeCatalogCombo[]
DescriptionID를 통해 매장의 콤보 여러 건을 조회합니다. 최대 25건까지 조회 가능합니다.

요청 파라미터

ParameterLocationTypeRequiredDescription
merchantIdPathLong✅매장 ID
idsQueryString[]✅콤보 ID 목록

ALPHA 콤보 목록 조회 ​

PropertyValue
MethodGET
Path/api-public/openapi/v1/merchants/{merchantId}/catalog/combos
Response TypeCatalogCombo[]
Description매장의 콤보 목록을 조회합니다.

요청 파라미터

ParameterLocationTypeRequiredDefaultDescription
merchantIdPathLong✅-매장 ID
pageQueryInt1조회할 페이지
sizeQueryInt100페이지 크기

Events ​

ALPHA 콤보 생성됨 (catalog.combo.created.v1) ​

PropertyValue
Event Typecatalog.combo.created.v1
Description콤보가 생성되었습니다.

이벤트 Payload

NameTypeRequiredDescriptionExample
comboCatalogCombo✅생성된 콤보 정보

이벤트 Body 예시

json
{
    "id": "000000000000000000000000",
    "type": "catalog.combo.created.v1",
    "createdAt": "2026-01-01T00:00:00.000Z",
    "merchantId": 42,
    "app": "my-awesome-app",
    "data": {
        "combo": {
            "id": "42",
            "merchantId": 42,
            "title": "음료+디저트 세트",
            "code": "COMBO_CODE",
            "enabled": true,
            "order": 1,
            "description": "음료+디저트 세트 설명",
            "imageUrl": "https://example.com/image.png",
            "labels": ["할인"],
            "basePriceValue": 9000,
            "originalPriceValue": 10000,
            "targetGroups": [
                {
                    "id": "42",
                    "merchantId": 42,
                    "title": "음료",
                    "description": "음료를 선택해주세요.",
                    "order": 1,
                    "minQuantity": 1,
                    "maxQuantity": 1,
                    "targets": [
                        {
                            "id": "42",
                            "merchantId": 42,
                            "groupId": "42",
                            "item": {
                                "id": "42",
                                "merchantId": 42,
                                "category": {
                                    "id": "42",
                                    "merchantId": 42,
                                    "title": "커피",
                                    "code": "COFFEE",
                                    "enabled": true,
                                    "order": 1,
                                    "createdAt": "2026-01-01T00:00:00Z",
                                    "updatedAt": "2026-01-01T00:00:00Z"
                                },
                                "title": "아메리카노",
                                "code": "ITEM_CODE",
                                "state": "ON_SALE",
                                "enabled": true,
                                "order": 1,
                                "description": "아메리카노 설명",
                                "imageUrl": "https://example.com/image.png",
                                "labels": ["신규"],
                                "price": {
                                    "title": "기본",
                                    "priceType": "FIXED",
                                    "priceUnit": 1,
                                    "priceValue": 5000,
                                    "barcode": "1234567890"
                                },
                                "diningOptions": ["HERE", "TOGO"],
                                "options": [],
                                "createdAt": "2026-01-01T00:00:00Z",
                                "updatedAt": "2026-01-01T00:00:00Z"
                            },
                            "order": 1,
                            "default": true,
                            "additionalPriceValue": 0
                        }
                    ]
                },
                {
                    "id": "43",
                    "merchantId": 42,
                    "title": "디저트",
                    "description": "디저트를 선택해주세요.",
                    "order": 2,
                    "minQuantity": 1,
                    "maxQuantity": 1,
                    "targets": [
                        {
                            "id": "43",
                            "merchantId": 42,
                            "groupId": "43",
                            "item": {
                                "id": "44",
                                "merchantId": 42,
                                "category": {
                                    "id": "43",
                                    "merchantId": 42,
                                    "title": "디저트",
                                    "code": "DESSERT",
                                    "enabled": true,
                                    "order": 2,
                                    "createdAt": "2026-01-01T00:00:00Z",
                                    "updatedAt": "2026-01-01T00:00:00Z"
                                },
                                "title": "쿠키",
                                "code": "ITEM_CODE",
                                "state": "ON_SALE",
                                "enabled": true,
                                "order": 1,
                                "description": "쿠키 설명",
                                "imageUrl": "https://example.com/image.png",
                                "labels": ["신규"],
                                "price": {
                                    "title": "기본",
                                    "priceType": "FIXED",
                                    "priceUnit": 1,
                                    "priceValue": 5000,
                                    "barcode": "1234567890"
                                },
                                "diningOptions": ["HERE", "TOGO"],
                                "options": [],
                                "createdAt": "2026-01-01T00:00:00Z",
                                "updatedAt": "2026-01-01T00:00:00Z"
                            },
                            "order": 1,
                            "default": false,
                            "additionalPriceValue": 0
                        }
                    ]
                }
            ],
            "createdAt": "2026-01-01T00:00:00Z",
            "updatedAt": "2026-01-01T00:00:00Z"
        }
    }
}

ALPHA 콤보 수정됨 (catalog.combo.updated.v1) ​

PropertyValue
Event Typecatalog.combo.updated.v1
Description콤보가 수정되었습니다.
유의: 콤보 구성에서 선택 가능한 상품 목록에 변동이 있는 경우에는 이 이벤트가 발생하지만, 상품 자체의 속성 변경으로는 이 이벤트가 발생하지 않습니다. (대신 상품 수정 이벤트 catalog.item.updated.v1가 발생합니다.)

이벤트 Payload

NameTypeRequiredDescriptionExample
comboCatalogCombo✅수정된 콤보 정보

이벤트 Body 예시

json
{
    "id": "000000000000000000000000",
    "type": "catalog.combo.updated.v1",
    "createdAt": "2026-01-01T00:00:00.000Z",
    "merchantId": 42,
    "app": "my-awesome-app",
    "data": {
        "combo": {
            "id": "42",
            "merchantId": 42,
            "title": "음료+디저트 세트",
            "code": "COMBO_CODE",
            "enabled": true,
            "order": 1,
            "description": "음료+디저트 세트 설명",
            "imageUrl": "https://example.com/image.png",
            "labels": ["할인"],
            "basePriceValue": 9000,
            "originalPriceValue": 10000,
            "targetGroups": [
                {
                    "id": "42",
                    "merchantId": 42,
                    "title": "음료",
                    "description": "음료를 선택해주세요.",
                    "order": 1,
                    "minQuantity": 1,
                    "maxQuantity": 1,
                    "targets": [
                        {
                            "id": "42",
                            "merchantId": 42,
                            "groupId": "42",
                            "item": {
                                "id": "42",
                                "merchantId": 42,
                                "category": {
                                    "id": "42",
                                    "merchantId": 42,
                                    "title": "커피",
                                    "code": "COFFEE",
                                    "enabled": true,
                                    "order": 1,
                                    "createdAt": "2026-01-01T00:00:00Z",
                                    "updatedAt": "2026-01-01T00:00:00Z"
                                },
                                "title": "아메리카노",
                                "code": "ITEM_CODE",
                                "state": "ON_SALE",
                                "enabled": true,
                                "order": 1,
                                "description": "아메리카노 설명",
                                "imageUrl": "https://example.com/image.png",
                                "labels": ["신규"],
                                "price": {
                                    "title": "기본",
                                    "priceType": "FIXED",
                                    "priceUnit": 1,
                                    "priceValue": 5000,
                                    "barcode": "1234567890"
                                },
                                "diningOptions": ["HERE", "TOGO"],
                                "options": [],
                                "createdAt": "2026-01-01T00:00:00Z",
                                "updatedAt": "2026-01-01T00:00:00Z"
                            },
                            "order": 1,
                            "default": true,
                            "additionalPriceValue": 0
                        }
                    ]
                },
                {
                    "id": "43",
                    "merchantId": 42,
                    "title": "디저트",
                    "description": "디저트를 선택해주세요.",
                    "order": 2,
                    "minQuantity": 1,
                    "maxQuantity": 1,
                    "targets": [
                        {
                            "id": "43",
                            "merchantId": 42,
                            "groupId": "43",
                            "item": {
                                "id": "44",
                                "merchantId": 42,
                                "category": {
                                    "id": "43",
                                    "merchantId": 42,
                                    "title": "디저트",
                                    "code": "DESSERT",
                                    "enabled": true,
                                    "order": 2,
                                    "createdAt": "2026-01-01T00:00:00Z",
                                    "updatedAt": "2026-01-01T00:00:00Z"
                                },
                                "title": "쿠키",
                                "code": "ITEM_CODE",
                                "state": "ON_SALE",
                                "enabled": true,
                                "order": 1,
                                "description": "쿠키 설명",
                                "imageUrl": "https://example.com/image.png",
                                "labels": ["신규"],
                                "price": {
                                    "title": "기본",
                                    "priceType": "FIXED",
                                    "priceUnit": 1,
                                    "priceValue": 5000,
                                    "barcode": "1234567890"
                                },
                                "diningOptions": ["HERE", "TOGO"],
                                "options": [],
                                "createdAt": "2026-01-01T00:00:00Z",
                                "updatedAt": "2026-01-01T00:00:00Z"
                            },
                            "order": 1,
                            "default": false,
                            "additionalPriceValue": 0
                        }
                    ]
                }
            ],
            "createdAt": "2026-01-01T00:00:00Z",
            "updatedAt": "2026-01-01T00:00:00Z"
        }
    }
}

ALPHA 콤보 삭제됨 (catalog.combo.deleted.v1) ​

PropertyValue
Event Typecatalog.combo.deleted.v1
Description콤보가 삭제되었습니다.

이벤트 Payload

NameTypeRequiredDescriptionExample
comboIdString✅삭제된 콤보 ID"42"

이벤트 Body 예시

json
{
    "id": "000000000000000000000000",
    "type": "catalog.combo.deleted.v1",
    "createdAt": "2026-01-01T00:00:00.000Z",
    "merchantId": 42,
    "app": "my-awesome-app",
    "data": {
        "comboId": "42"
    }
}