Skip to content

주문 - 개념 상세

Types

주문 (Order)

주문은 매장에서 소비자가 상품을 구매하고 결제하는 것을 표현하는 개념이에요. 주문은 구매한 상품 목록, 결제 내역, 결제 금액 등 이 과정에서 기록되는 정보를 모두 포함하고 있어요.

FieldTypeRequiredDescriptionExample
idString주문 ID"620000000000000000"
merchantIdLong매장 ID42
sourceString주문 채널

주문이 인입된 경로를 말해요. 예를 들어, 토스 POS로부터 인입된 주문은 "POS", 토스 키오스크로부터 인입된 주문은 "KIOSK" 등이에요.
"POS"
orderStateOrderState주문 상태"OPENED"
orderKeyString주문 키

주문을 식별하는 용도로 사용하는 문자열이에요. 주문 채널에 따라 고유의 값 체계를 사용할 수 있어요.
"EXT-20260512-0001"
orderNumberString주문 번호

매장을 운영하거나 이용하는 사람이 주문을 확인하는 데 사용하는 주문번호예요. ("042번 주문" 과 같은 형태) 토스 POS 결제내역, 주문 현황, 주문서, 영수증 등에 표시되는 값이에요.
"A-001"
createdAttimestamp생성 시각"2025-09-01T00:00:00"
updatedAttimestamp변경 시각"2025-09-01T00:00:00"
openedAttimestamp주문 수락 시각"2025-09-01T00:00:00"
completedAttimestamp주문 완료 시각"2025-09-01T00:00:00"
cancelledAttimestamp주문 취소 시각"2025-09-01T00:00:00"
lineItemsOrderLineItem[]주문 내역
requestedInfoOrderRequestedInfo주문 요청 정보

픽업 주문과 같이, 매장에서 수락 또는 거절할 수 있는 주문의 경우 주문 요청 정보를 포함하고 있어요.
memoString주문 메모

소비자 또는 매장 운영자가 주문에 대해 추가로 작성한 메모예요.
"얼음 적게"
paymentsPayment[]결제 내역
discountsDiscount[]할인 내역
chargePriceOrderChargePrice청구 금액

주문 상태 (OrderState)

ValueDescription
"REQUESTED"주문 수락 전 (픽업 주문 등의 경우)
"OPENED"시작됨
"COMPLETED"완료됨 (결제까지 완료된 상태)
"CANCELLED"취소됨
"UNDEFINED"

주문 내역 (OrderLineItem)

주문에 포함된 개별 상품 주문 건이에요.

FieldTypeRequiredDescriptionExample
diningOptionOrderDiningOption식사 옵션"HERE"
itemOrderItem상품
itemPriceOrderItemPrice상품 가격
optionChoicesOrderItemOptionChoice[]선택한 옵션
appliedDiscountsDiscount[]항목별 적용 할인 내역
quantityLong수량1
memoString주문 내역 메모

주문자 또는 매장 운영자가 이 주문 내역에 대해 추가로 작성한 메모예요.
"얼음 적게"

주문 내역 대상 종류 (OrderLineItemTargetType)

ValueDescription
"ITEM"상품
"COMBO"콤보
"UNDEFINED"

주문 식사 옵션 (OrderDiningOption)

ValueDescription
"HERE"매장 식사
"TOGO"포장
"DELIVERY"배달
"PICKUP"포장 (픽업)
"UNDEFINED"

상품 (OrderItem)

FieldTypeRequiredDescriptionExample
titleString상품명"아메리카노"
codeString상품 코드""
categoryOrderItemCategory상품이 속한 카테고리

상품 가격 (OrderItemPrice)

NameTypeRequiredDescriptionExample
titleString가격명"기본"
priceTypeOrderItemPriceType가격 종류"FIXED"
priceUnitLong가격 단위1
priceValueLong가격3000
isTaxFreeBoolean면세 여부false
taxPercentageInt세율10
taxInclusiveBoolean부가세 포함 여부true

상품 가격 종류 (OrderItemPriceType)

ValueDescription
"FIXED"정가
"VARIABLE"시가
"UNIT"단위가격
"UNDEFINED"

카테고리 (OrderItemCategory)

FieldTypeRequiredDescriptionExample
titleString카테고리명"커피"
codeString카테고리 코드""

옵션 (OrderItemOption)

FieldTypeRequiredDescriptionExample
titleString옵션명"온도"

옵션 선택지 (OrderItemOptionChoice)

FieldTypeRequiredDescriptionExample
titleString선택지명"ICE"
codeString선택지 코드"ICE"
priceValueLong가격500
quantityLong수량1
optionOrderItemOption선택지가 속한 옵션

주문 요청 정보 (OrderRequestedInfo)

배달 또는 픽업 주문과 같이, 매장에서 수락 또는 거절할 수 있는 주문의 경우 주문 요청 정보를 포함하고 있어요.

FieldTypeRequiredDescriptionExample
requestedAttimestamp주문 요청 시각"2025-09-01T00:00:00"
expiredAttimestamp주문 요청 만료 시각"2025-09-01T00:00:00"
expectedReadyAttimestamp주문의 예상 완료 시각
손님 기준에서의 예상 완료 시각을 의미해요. (예: 손님이 15분 뒤 픽업 예정)
"2025-09-01T00:00:00"
estimatedReadyAttimestamp주문의 예상 준비 완료 시각
매장 기준에서의 예상 완료 시각을 의미해요. (예: 20분 뒤 픽업 가능)
"2025-09-01T00:00:00"
acceptedAttimestamp주문 수락 시각"2025-09-01T00:00:00"
declinedAttimestamp주문 거절 시각"2025-09-01T00:00:00"
declinedReasonStringALPHA 주문 거절 사유"메뉴 품절"
declinedCodeStringALPHA 주문 거절 사유 코드
예시:
- 고객 요청 ("CUSTOMER_REQUEST")
- 메뉴 품절 ("MENU_SOLD_OUT")
- 주문 밀림 ("COOKING_DELAY")
- 요청사항 불가 ("REQUEST_UNAVAILABLE")
"MENU_SOLD_OUT"

주문 청구 금액 (OrderChargePrice)

NameTypeRequiredDescriptionExample
listPriceLong원금액3500
discountAmountLong할인금액-300
tipAmountLong0
serviceChargeAmountLong봉사료0
taxAmountLong세액291
supplyAmountLong공급가액2909
taxExemptAmountLong면세금액0
totalAmountLong최종금액3200

할인 내역 (Discount)

할인 정책이 주문에 적용된 결과예요. 주문 조회 시 할인 관련 필드를 통해 적용 결과를 함께 확인할 수 있어요.

NameTypeRequiredDescriptionExample
titleString할인명"PROMOTION"
typeString할인 종류 (예: "FIXED_AMOUNT", "FIXED_PERCENTAGE")"FIXED_AMOUNT"
codeString할인 코드"PROMOTION_00"
amountLong할인 적용 금액1000
percentageDouble정률할인 비율 (정률할인이 아닌 경우 0.0)0.0
fixedAmountLong정액할인 금액 (정액할인이 아닌 경우 0)1000
precedenceInt할인 적용 우선순위 (값이 작을수록 높은 우선순위)1
couponDetailsDiscountCouponDetailsALPHA 할인 쿠폰 상세 정보

ALPHA 할인 쿠폰 상세 정보 (DiscountCouponDetails)

NameTypeRequiredDescriptionExample
providerString쿠폰 제공자"토스플레이스"
couponNumberString쿠폰 번호"123456"
balanceLong쿠폰 잔액1000