상품의 가격을 수정할 때 사용합니다.
(해당 상품이 이미 등록되어 있어야 하며, 존재하지 않는 경우 변경이 적용되지 않고 무시처리됩니다.)
value 필드는 설정하고자 하는 값에 대한 필드입니다.
상품 가격 변경 단위(PriceUpdateUnit)에는 RATE(정률)와 PRICE(정액)이 있으며,
상품 가격 변경 방식(PriceUpdateMethod)에는 SET(지정 가격 설정), INCREASE(가격 인상), DECREASE(가격 인하)가 있습니다.
이 세 가지 필드를 조합하여 최종 가격이 설정됩니다. (아래 샘플 참조)
* RATE(정률)의 경우 SET(지정 가격 설정) 방식으로 가격 변경이 불가능합니다.
* PRICE(정액) 설정시 상품 가격은 10원 단위로 입력 가능하고, 최대 1억원 미만으로만 설정 가능합니다.
* RATE(정률) 설정시 가격 인상/인하율은 1 단위로 입력 가능하고, 최소 1% 이상, 최대 99% 이하로 설정 가능합니다.
요청
<Content-type: application/json 요청>
PUT /v2/store/products/price HTTP/1.1
Content-type: application/json
키 | 타입 | 필수여부 | 설명 |
---|---|---|---|
productIds | Array<Long> | 필수 | 상품번호 목록 |
value | Integer | 필수 | 변경하고자 하는 값 |
unit | PriceUpdateUnit | 필수 | 변경 단위 |
method | PriceUpdateMethod | 필수 | 변경 방법 |
<요청 바디 샘플>
- 상품번호 1,2,3의 가격을 50,000(VALUE)원(PRICE)으로 설정(SET)
{
"productIds":[1,2,3],
"value": 50000,
"unit": "PRICE",
"method": "SET"
}
- 상품번호 1,2,3의 가격을 10(VALUE)%(RATE) 인상(INCREASE)
{
"productIds":[1,2,3],
"value": 10,
"unit": "RATE",
"method": "INCREASE"
}
- 상품번호 1,2,3의 가격을 1,000(VALUE)원(PRICE) 인하(DECREASE)
{
"productIds":[1,2,3],
"value": 1000,
"unit": "PRICE",
"method": "DECREASE"
}
<응답 바디 샘플>
- 성공 응답 예시(1,2,3 상품 모두 성공)
{
"status": 200,
"validations": {
"1": {},
"2": {},
"3": {},
}
}
- 유효하지 않은 가격을 설정하는 경우 유효하지 않은 사유 전달 예시
{
"status": 200,
"validations": {
"1": {
"salePrice": [
"옵션가는 -50원 이상 100원 이하 금액만 설정 가능합니다."
]
},
"2": {},
"3": {}
}
}
- 유효하지 않은 상품의 번호를 입력하여 수정한 경우(3번 상품이 존재하지 않는 상품인 경우) 응답 예시
{
"status": 200,
"validations": {
"1": {},
"2": {}
}
}