제공 처리
배송 없는 주문상품(`MANUAL`)을 제공 완료(`DELIVERED`)로 바꾼다(이슈 #48). 결제 완료(`PAID`)·발주 확인(`CONFIRMED`)에서만 되고, 제공 시각이 `deliveredAt`이며 구매확정 예정일을 상점 설정 `autoConfirmDays`로 잡는다. `note`는 구매자 주문 상세에 이용 안내로 실린다. `ORDER.DELIVERED`와 `ORDER.FULFILLED` 웹훅을 함께 보낸다. 배송 상품은 발송·배송완료로 처리한다. 스코프 `order:rw`.
배송 없는 주문상품(MANUAL)을 제공 완료(DELIVERED)로 바꾼다(이슈 #48). 결제 완료(PAID)·발주 확인(CONFIRMED)에서만 되고, 제공 시각이 deliveredAt이며 구매확정 예정일을 상점 설정 autoConfirmDays로 잡는다. note는 구매자 주문 상세에 이용 안내로 실린다. ORDER.DELIVERED와 ORDER.FULFILLED 웹훅을 함께 보낸다. 배송 상품은 발송·배송완료로 처리한다. 스코프 order:rw.
accessTokenAuthorizationBearer <token>Sayren 계정 토큰(로그인 토큰 또는 개인 액세스 토큰, RFC 9068 JWT)
orderItemId*stringX-Store-Id*string대상 상점 id. 토큰의 상점 범위 밖이면 403 STORE_NOT_GRANTED, 없으면 400 STORE_ID_REQUIRED다
idempotency-key?string멱등키. 같은 키로 다시 보내면 처음 결과를 돌려주고 한 번만 적용한다. 재시도에는 같은 키를 쓴다
length <= 255application/json- body
note?string구매자에게 보일 이용 안내(예: 예약 방법, 수령 장소). 주문 상세에 실린다
length <= 1000성공
application/json- response
meta*data*error*|nullcurl -X POST 'https://api.sayren.io/v1/order-items/string/fulfill' \ -H 'X-Store-Id: string' \ -H 'Content-Type: application/json' \ -d '{}'{ "meta": { "status": 200, "code": "OK", "message": "OK", "isSuccess": true }, "data": { "orderItemId": "string", "orderItemNo": null, "orderId": "string", "status": "PAYMENT_WAITING", "claimStatus": "CANCEL_REQUESTED", "productId": "string", "productName": "string", "optionId": "string", "optionName": "string", "optionSelections": [], "customInputs": [], "stay": { "checkIn": "string", "checkOut": "string", "nights": [ { "date": "string", "price": 0 } ] }, "sellerCode": "string", "fulfillmentSnapshot": { "type": "SHIPPING", "shipping": { "bundleKey": "string", "returnAddressId": "string" }, "method": "string", "pickupLocation": { "locationId": "string", "name": "string", "address": "string", "phone": "string", "hours": "string" } }, "quantity": 0, "canceledQuantity": 0, "activeQuantity": 0, "unitPrice": 0, "discountAmount": 0, "totalPrice": 0, "couponDiscountAmount": 0, "pointAllocation": 0, "hold": { "reason": "string", "expectedDispatchDate": "string" }, "fulfillment": null, "autoDecisionDate": "string", "sellerMemo": "string", "orderedAt": "string", "lastChangedAt": "string", "lastChangedType": "ORDER.PAID", "testPayment": true }, "error": null}