@sayren/store-sdk 0.45.0 → 0.47.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.mts +398 -33
- package/dist/index.mjs +110 -5
- package/package.json +1 -1
- package/src/client.ts +11 -0
- package/src/schemas/app-manifest.ts +2 -0
- package/src/schemas/checkout.ts +93 -1
- package/src/schemas/common.ts +4 -0
- package/src/schemas/misc.ts +4 -0
- package/src/schemas/order.ts +41 -0
- package/src/schemas/webhook-event.ts +44 -0
package/dist/index.mjs
CHANGED
|
@@ -3740,6 +3740,9 @@ const changeTypeSchema = z.enum([
|
|
|
3740
3740
|
"CLAIM.RETURN_REQUESTED",
|
|
3741
3741
|
"CLAIM.EXCHANGE_REQUESTED",
|
|
3742
3742
|
"CLAIM.COMPLETED",
|
|
3743
|
+
"ORDER.PAYMENT_WAITING",
|
|
3744
|
+
"ORDER.DELIVERING",
|
|
3745
|
+
"ORDER.CANCELED",
|
|
3743
3746
|
"ORDER.ADDRESS_CHANGE_REQUESTED"
|
|
3744
3747
|
]);
|
|
3745
3748
|
//#endregion
|
|
@@ -5108,6 +5111,44 @@ const flowStateChangedWebhookEventSchema = z.object({
|
|
|
5108
5111
|
type: z.literal("ORDER.FLOW_STATE_CHANGED"),
|
|
5109
5112
|
data: flowStateChangedWebhookEventDataSchema
|
|
5110
5113
|
});
|
|
5114
|
+
/**
|
|
5115
|
+
* 추가 결제(이슈 #117) — 결제 요청(`POST /v1/checkouts`의 `orderId`)이 결제돼 줄이 주문에 붙었다. 붙은 줄은 이 결제가 냈고 환불도 이 결제에서 한다.
|
|
5116
|
+
* 개인정보는 싣지 않는다
|
|
5117
|
+
*/
|
|
5118
|
+
const orderPaymentAddedWebhookEventDataSchema = z.object({
|
|
5119
|
+
orderId: z.string().describe("주문 ID"),
|
|
5120
|
+
orderNo: z.string().describe("주문번호"),
|
|
5121
|
+
paymentId: z.string().describe("붙은 결제(주문 응답 `payments[].paymentId`)"),
|
|
5122
|
+
checkoutId: z.string().describe("결제한 결제 요청(셀러 작성 주문서) id"),
|
|
5123
|
+
amount: z.number().int().describe("결제 금액"),
|
|
5124
|
+
orderItemIds: z.array(z.string()).describe("이 결제로 붙은 주문상품"),
|
|
5125
|
+
currency: z.string().describe("주문 통화"),
|
|
5126
|
+
testPayment: z.boolean()
|
|
5127
|
+
});
|
|
5128
|
+
const orderPaymentAddedWebhookEventSchema = z.object({
|
|
5129
|
+
...envelopeFields,
|
|
5130
|
+
type: z.literal("ORDER.PAYMENT_ADDED"),
|
|
5131
|
+
data: orderPaymentAddedWebhookEventDataSchema
|
|
5132
|
+
});
|
|
5133
|
+
/**
|
|
5134
|
+
* 결제 요청(이슈 #117) — 흐름 노드 「결제 요청」이 이 주문에 대한 결제 링크를 만들었다. 상점이 이 링크를 구매자에게 보낸다(알림톡·메일).
|
|
5135
|
+
* 결제되면 `ORDER.PAYMENT_ADDED`가 온다. 개인정보는 싣지 않는다
|
|
5136
|
+
*/
|
|
5137
|
+
const orderPaymentRequestedWebhookEventDataSchema = z.object({
|
|
5138
|
+
orderId: z.string().describe("주문 ID"),
|
|
5139
|
+
orderNo: z.string().describe("주문번호"),
|
|
5140
|
+
orderItemIds: z.array(z.string()).describe("결제를 요청한 흐름의 주문상품"),
|
|
5141
|
+
checkoutId: z.string().describe("결제 요청(셀러 작성 주문서) id"),
|
|
5142
|
+
checkoutUrl: z.string().describe("구매자에게 보낼 결제 링크(sayren 결제 페이지)"),
|
|
5143
|
+
amount: z.number().int().describe("결제 금액"),
|
|
5144
|
+
currency: z.string().describe("주문 통화"),
|
|
5145
|
+
expiresAt: z.string().describe("결제 링크 만료 시각")
|
|
5146
|
+
});
|
|
5147
|
+
const orderPaymentRequestedWebhookEventSchema = z.object({
|
|
5148
|
+
...envelopeFields,
|
|
5149
|
+
type: z.literal("ORDER.PAYMENT_REQUESTED"),
|
|
5150
|
+
data: orderPaymentRequestedWebhookEventDataSchema
|
|
5151
|
+
});
|
|
5111
5152
|
/** 웹훅 요청 본문. `type`으로 판별하며 `data` 형태가 타입별로 다르다 */
|
|
5112
5153
|
const webhookEventSchema = z.discriminatedUnion("type", [
|
|
5113
5154
|
orderWebhookEventSchema,
|
|
@@ -5119,7 +5160,9 @@ const webhookEventSchema = z.discriminatedUnion("type", [
|
|
|
5119
5160
|
productOutOfStockWebhookEventSchema,
|
|
5120
5161
|
flowNotificationWebhookEventSchema,
|
|
5121
5162
|
flowStateChangedWebhookEventSchema,
|
|
5122
|
-
inventoryChangedWebhookEventSchema
|
|
5163
|
+
inventoryChangedWebhookEventSchema,
|
|
5164
|
+
orderPaymentAddedWebhookEventSchema,
|
|
5165
|
+
orderPaymentRequestedWebhookEventSchema
|
|
5123
5166
|
]).describe("웹훅 요청 본문 (얇은 이벤트). 개인정보를 싣지 않으며 `data`의 id로 관리 API를 조회한다");
|
|
5124
5167
|
/**
|
|
5125
5168
|
* 알려진 웹훅 이벤트 타입 — `webhookEventSchema`의 판별 값 목록(이 SDK 버전이 아는 것).
|
|
@@ -5228,6 +5271,8 @@ const APP_EVENT_SCOPES = {
|
|
|
5228
5271
|
"ORDER.CANCELED": "order:r",
|
|
5229
5272
|
"ORDER.FLOW_NOTIFICATION": "order:r",
|
|
5230
5273
|
"ORDER.FLOW_STATE_CHANGED": "order:r",
|
|
5274
|
+
"ORDER.PAYMENT_ADDED": "order:r",
|
|
5275
|
+
"ORDER.PAYMENT_REQUESTED": "order:r",
|
|
5231
5276
|
"CLAIM.CANCEL_REQUESTED": "claim:r",
|
|
5232
5277
|
"CLAIM.RETURN_REQUESTED": "claim:r",
|
|
5233
5278
|
"CLAIM.EXCHANGE_REQUESTED": "claim:r",
|
|
@@ -5782,7 +5827,9 @@ const eventTypeSchema = z.enum([
|
|
|
5782
5827
|
"PRODUCT.OUT_OF_STOCK",
|
|
5783
5828
|
"ORDER.FLOW_NOTIFICATION",
|
|
5784
5829
|
"ORDER.FLOW_STATE_CHANGED",
|
|
5785
|
-
"INVENTORY.CHANGED"
|
|
5830
|
+
"INVENTORY.CHANGED",
|
|
5831
|
+
"ORDER.PAYMENT_ADDED",
|
|
5832
|
+
"ORDER.PAYMENT_REQUESTED"
|
|
5786
5833
|
]).describe("웹훅 이벤트 타입. `ORDER.ADDRESS_CHANGE_REQUESTED`는 현재 발송하지 않음(호환을 위해 값만 남았고, 구독해도 이벤트가 오지 않는다)");
|
|
5787
5834
|
const webhookStatusSchema = z.enum(["ACTIVE", "SUSPENDED"]).describe("구독 상태. `ACTIVE`=발송 대상, `SUSPENDED`=24시간 이상 연속 전송 실패로 발송이 정지된 상태. 정지 중 발생한 이벤트는 적재하지 않는다. 재개(`POST /webhooks/{id}/resume`)하거나 구독을 수정하면 ACTIVE로 돌아간다");
|
|
5788
5835
|
const webhookSchema = z.object({
|
|
@@ -6569,7 +6616,8 @@ const createSellerCheckoutRequestSchema = strictRequest(z.object({
|
|
|
6569
6616
|
pickupLocationId: z.string().optional().describe("방문 수령 장소. 스토어프론트 주문서 생성과 같은 규칙이다"),
|
|
6570
6617
|
trackInventory: z.boolean().optional().default(true).describe("재고 추적. false면 주문서를 만들 때·결제할 때 재고를 보지 않고 빼지 않는다. 그 주문의 취소·반품도 재고를 돌려주지 않는다. 기본 true"),
|
|
6571
6618
|
couponsEnabled: z.boolean().optional().default(false).describe("구매자가 이 주문서에 쿠폰을 쓸 수 있는가. 기본 false"),
|
|
6572
|
-
pointsEnabled: z.boolean().optional().default(false).describe("구매자가 이 주문서에 적립금을 쓸 수 있는가. 기본 false")
|
|
6619
|
+
pointsEnabled: z.boolean().optional().default(false).describe("구매자가 이 주문서에 적립금을 쓸 수 있는가. 기본 false"),
|
|
6620
|
+
orderId: z.string().optional().describe("추가 결제(이슈 #117) — 주면 이 주문에 대한 결제 요청이다. 만들면 줄이 결제 대기로 이 주문에 들어가고, 결제하면 결제완료가 되며 그 줄의 환불은 이 결제에서 한다. 유효 기한까지 결제하지 않으면(또는 만료시키면) 결제 대기 줄은 자동으로 취소된다. 주문의 주문자·배송지·통화를 쓰고 배송비가 없다. 쿠폰·적립금을 켤 수 없고(400 `VALIDATION_FAILED`) 재고는 보지 않는다(`trackInventory`를 무시한다). 없는 주문은 404 `ORDER_NOT_FOUND`")
|
|
6573
6621
|
}));
|
|
6574
6622
|
const sellerCheckoutSchema = z.object({
|
|
6575
6623
|
checkoutId: z.string().describe("주문서 id. 결제 링크(`checkoutUrl`)나 스토어프론트가 이 id로 주문서를 열어 결제한다(`GET /storefront/v1/checkout/{checkoutId}`). 추측할 수 없는 값이고, 가진 사람은 누구나 결제할 수 있다"),
|
|
@@ -6596,11 +6644,50 @@ const sellerCheckoutSchema = z.object({
|
|
|
6596
6644
|
trackInventory: z.boolean(),
|
|
6597
6645
|
couponsEnabled: z.boolean(),
|
|
6598
6646
|
pointsEnabled: z.boolean(),
|
|
6599
|
-
orderId: z.string().nullable().describe("결제로 만들어진
|
|
6647
|
+
orderId: z.string().nullable().describe("결제가 속한 주문. 보통 주문서는 결제로 만들어진 주문이고 결제 전이면 null이다. 추가 결제(요청의 `orderId`)는 처음부터 그 주문이다"),
|
|
6648
|
+
additionalPayment: z.boolean().describe("추가 결제(이슈 #117)인가 — true면 결제가 `orderId` 주문에 줄을 붙인다"),
|
|
6600
6649
|
createdAt: z.string(),
|
|
6601
6650
|
expiresAt: z.string()
|
|
6602
6651
|
});
|
|
6603
6652
|
const sellerCheckoutPageSchema = pageSchema(sellerCheckoutSchema);
|
|
6653
|
+
/** 주문 직접 생성의 배송지(이슈 #117) — 국내 배송지다 */
|
|
6654
|
+
const directOrderShippingAddressSchema = z.object({
|
|
6655
|
+
receiverName: z.string().min(1).max(50),
|
|
6656
|
+
phone: z.string().regex(/^0[0-9]{8,11}$/).describe("수령인 연락처(숫자만)"),
|
|
6657
|
+
zipCode: z.string().regex(/^[0-9]{5}$/),
|
|
6658
|
+
address1: z.string().min(1).max(200),
|
|
6659
|
+
address2: z.string().max(200).optional(),
|
|
6660
|
+
deliveryMemo: z.string().max(100).optional()
|
|
6661
|
+
});
|
|
6662
|
+
/**
|
|
6663
|
+
* 주문 직접 생성 요청(이슈 #117) — 셀러가 결제 대기 주문을 만든다. 회원을 고르거나(`memberId`) 비회원 주문자 정보(`guest`)를 준다.
|
|
6664
|
+
* 줄·단가·이행 방식·재고 추적·유효 기한은 셀러 작성 주문서와 같은 규칙이다
|
|
6665
|
+
*/
|
|
6666
|
+
const createOrderRequestSchema = strictRequest(z.object({
|
|
6667
|
+
memberId: z.string().optional().describe("주문할 회원. 주면 그 회원의 주문이고 `guest`를 받지 않는다. 생략하면 비회원 주문이다"),
|
|
6668
|
+
guest: z.object({
|
|
6669
|
+
name: z.string().min(1).max(50),
|
|
6670
|
+
phone: z.string().regex(/^0[0-9]{8,11}$/).describe("주문자 연락처(숫자만)"),
|
|
6671
|
+
email: z.email().optional()
|
|
6672
|
+
}).optional().describe("비회원 주문자. `memberId`가 없으면 필수다. 주문 조회 비밀번호는 구매자가 결제할 때 정한다"),
|
|
6673
|
+
shippingAddress: directOrderShippingAddressSchema.optional().describe("배송지. 택배 배송이 필요한 줄이 있으면 필수(400 `SHIPPING_ADDRESS_REQUIRED`)이고 그 밖에는 버린다"),
|
|
6674
|
+
items: z.array(sellerCheckoutLineSchema).min(1).max(50),
|
|
6675
|
+
expiresAt: z.iso.datetime({ offset: true }).describe("결제 기한(ISO 8601). 지금 이후여야 하고, 지나도록 결제하지 않으면 주문이 자동으로 취소된다"),
|
|
6676
|
+
fulfillmentMethod: z.enum([
|
|
6677
|
+
"CARRIER",
|
|
6678
|
+
"DIRECT",
|
|
6679
|
+
"PICKUP",
|
|
6680
|
+
"PROVIDED"
|
|
6681
|
+
]).optional().describe("이행 방식. 생략하면 줄마다 상품 허용 방식의 첫 값이다"),
|
|
6682
|
+
pickupLocationId: z.string().optional().describe("방문 수령 장소"),
|
|
6683
|
+
trackInventory: z.boolean().optional().default(true).describe("재고 추적. true면 만들 때 재고를 확인하고 결제할 때 뺀다. 기본 true")
|
|
6684
|
+
}));
|
|
6685
|
+
/** 주문 직접 생성 응답(이슈 #117) — 결제 대기 주문과 그 결제 요청(결제 링크) */
|
|
6686
|
+
const createdOrderSchema = z.object({
|
|
6687
|
+
orderId: z.string(),
|
|
6688
|
+
orderNo: z.string(),
|
|
6689
|
+
paymentRequest: sellerCheckoutSchema.describe("이 주문의 결제 요청. `checkoutUrl`이 구매자에게 보낼 결제 링크다")
|
|
6690
|
+
});
|
|
6604
6691
|
//#endregion
|
|
6605
6692
|
//#region src/schemas/collection.ts
|
|
6606
6693
|
/**
|
|
@@ -9317,6 +9404,7 @@ const orderItemSchema = z.object({
|
|
|
9317
9404
|
orderItemId: z.string(),
|
|
9318
9405
|
orderItemNo: commerceNumberField("상품주문번호(이슈 #107) — 주문번호 + 줄 순번 2자리(01부터, 100줄부터 3자리). 부분 취소·클레임·송장의 처리 단위 번호이고 생성 후 바뀌지 않습니다"),
|
|
9319
9406
|
orderId: z.string(),
|
|
9407
|
+
paymentId: z.string().nullable().optional().default(null).describe("이 줄을 결제한 결제(`payments[].paymentId`, 이슈 #117). 줄 하나는 결제 하나가 내고 환불도 그 결제에서 한다. 서버는 항상 싣는다(PG 결제가 없는 0원 주문도 결제 id가 있다)"),
|
|
9320
9408
|
status: orderItemStatusSchema,
|
|
9321
9409
|
claimStatus: z.enum([
|
|
9322
9410
|
"CANCEL_REQUESTED",
|
|
@@ -9360,6 +9448,16 @@ const orderDiscountSchema = z.object({
|
|
|
9360
9448
|
discountAmount: z.number().int().describe("이 쿠폰의 할인액 (원)"),
|
|
9361
9449
|
issueId: z.string().nullable().describe("발급 쿠폰 id. 코드 입력형은 null")
|
|
9362
9450
|
});
|
|
9451
|
+
/** 주문의 결제 한 건 (이슈 #117) — 주문을 만든 첫 결제와 그 주문에 줄을 붙인 추가 결제 */
|
|
9452
|
+
const orderPaymentSchema = z.object({
|
|
9453
|
+
paymentId: z.string(),
|
|
9454
|
+
additional: z.boolean().describe("추가 결제인가. false면 주문을 만든 첫 결제(`payment`와 같은 결제)다"),
|
|
9455
|
+
amount: z.number().int().describe("결제(현금) 금액. 적립금·쿠폰으로 낸 몫은 빠진다"),
|
|
9456
|
+
approvedMethod: z.string().nullable().describe("실제 결제수단(`payment.approvedMethod`와 같은 값). 0원 결제는 null"),
|
|
9457
|
+
easyPayProvider: easyPayProviderResponseSchema.nullable(),
|
|
9458
|
+
paidAt: z.string(),
|
|
9459
|
+
refundedAmount: z.number().int().describe("이 결제에서 환불이 끝난 금액")
|
|
9460
|
+
});
|
|
9363
9461
|
const orderSchema = z.object({
|
|
9364
9462
|
orderId: z.string(),
|
|
9365
9463
|
progressStatus: orderItemStatusSchema.optional().describe("진행 중 주문상품 가운데 가장 앞 단계(취소 제외, 모두 취소면 CANCELED, #115). 섞인 주문에서 아직 기다리는 단계다. 서버는 항상 싣는다"),
|
|
@@ -9397,6 +9495,8 @@ const orderSchema = z.object({
|
|
|
9397
9495
|
currency: z.string().optional().describe("주문 통화(ISO 4217, 이슈 #130). 금액 필드는 모두 이 통화의 최소 단위다. 외화 주문이 생기면 이 값을 확인한다. 없으면 KRW다. 서버는 항상 싣는다"),
|
|
9398
9496
|
testPayment: z.boolean().describe("테스트 결제(샌드박스 결제) 주문인가. true면 실제로 돈이 오가지 않았습니다. 상품을 발송하지 않도록 주의하십시오"),
|
|
9399
9497
|
locale: z.string().nullable().optional().describe("구매 언어(이슈 #134, BCP 47). 주문상품의 상품명·옵션 이름은 구매자가 이 언어로 본 값이다. null이면 상점 기본 언어다(언어 기능 이전 주문 포함)"),
|
|
9498
|
+
payments: z.array(orderPaymentSchema).optional().default([]).describe("이 주문의 결제(이슈 #117) — 첫 결제와 추가 결제를 결제 순서로 싣는다. `payment`는 첫 결제의 내역이다. 서버는 항상 싣는다"),
|
|
9499
|
+
paymentRequests: z.array(sellerCheckoutSchema).optional().default([]).describe("결제를 기다리는 결제 요청(이슈 #117) — 결제 대기 줄을 낸 요청이고 `checkoutUrl`이 결제 링크다. 결제되거나 만료되면 빠진다. 서버는 항상 싣는다"),
|
|
9400
9500
|
items: z.array(orderItemSchema)
|
|
9401
9501
|
});
|
|
9402
9502
|
/** 주문 목록 응답 — `GET /v1/orders` */
|
|
@@ -10349,6 +10449,11 @@ function createStoreClient(options) {
|
|
|
10349
10449
|
list: (params) => storeHttp.request("GET", "/orders", pageSchema(orderSummarySchema), { query: params }),
|
|
10350
10450
|
get: (orderId) => storeHttp.request("GET", path`/orders/${orderId}`, orderSchema),
|
|
10351
10451
|
/**
|
|
10452
|
+
* `POST /v1/orders` — 주문 직접 생성(이슈 #117). 결제 대기 주문과 결제 요청을 만든다. 응답 `paymentRequest.checkoutUrl`이 구매자에게 보낼 결제 링크다.
|
|
10453
|
+
* 결제 기한까지 결제하지 않으면 주문이 자동으로 취소된다
|
|
10454
|
+
*/
|
|
10455
|
+
create: (body) => storeHttp.request("POST", "/orders", createdOrderSchema, { body: createOrderRequestSchema.parse(body) }),
|
|
10456
|
+
/**
|
|
10352
10457
|
* `POST /v1/orders/{orderId}/cash-receipt/reissue` — 실패했거나 재시도 대기 중인 현금영수증을 지금 다시 발급·취소한다.
|
|
10353
10458
|
* 상점 플랫폼 OWNER·ADMIN 전용(PAT·M2M 403 `INSUFFICIENT_ROLE`). 404 `CASH_RECEIPT_NOT_FOUND`, 409 `CASH_RECEIPT_NOT_REISSUABLE`
|
|
10354
10459
|
*/
|
|
@@ -11494,4 +11599,4 @@ function createStoreSession(options) {
|
|
|
11494
11599
|
};
|
|
11495
11600
|
}
|
|
11496
11601
|
//#endregion
|
|
11497
|
-
export { AI_AGENT_NOTES_DIR, AI_AGENT_PHASES, AI_DESIGN_BOARDS_MAX, AI_DESIGN_BOARD_FILE_PATTERN, AI_DESIGN_BOARD_KINDS, AI_DESIGN_CANVAS_PATH, AI_DESIGN_CONFIRM_APPROVE, AI_DESIGN_DIR, AI_DESIGN_GUIDE_PATH, AI_DESIGN_VIEWPORTS, AI_MESSAGE_MAX_ATTACHMENTS, AI_MESSAGE_MAX_CHARS, AI_RUN_ACTIVE_STATUSES, AI_RUN_FILE_CHANGES_RETENTION_DAYS, AI_RUN_RESUME_CHOICE, AI_SETUP_CONFIRM_APPROVE, AI_SITEMAP_PATH, AI_TODOS_MAX, AI_TODO_STATUSES, AI_TOOL_CHANGE_LINE_MAX, AI_TOOL_CHANGE_RANGES_MAX, APPROVAL_ALREADY_DECIDED_CODE, APPROVAL_REQUIRED_CODE, APP_CAPABILITIES, APP_DEPLOY_KEY_PATTERN, APP_DEPLOY_KEY_PREFIX, APP_EVENTS_MAX, APP_EVENT_SCOPES, APP_EVENT_TYPES, APP_FLOW_EVENT_PATTERN, APP_FLOW_ITEMS_MAX, APP_FLOW_NOTIFICATION_PATTERN, APP_HANDLE_PATTERN, APP_HTTP_KEY_PATTERN, APP_ICON_CONTENT_TYPES, APP_ICON_MAX_BYTES, APP_ICON_MIN_PX, APP_LIFECYCLE_EVENT_TYPES, APP_NETWORK_DENIED_SUFFIXES, APP_NETWORK_HOSTS_MAX, APP_PUBLIC_HTTP_MAX, APP_README_MAX_BYTES, APP_RESERVED_HANDLES, APP_SCHEDULES_MAX, APP_SCHEDULE_INTERVALS, APP_SCHEDULE_NAME_PATTERN, APP_SECRETS_MAX, APP_SECRET_NAME_PATTERN, APP_SECRET_PATTERNS, APP_SERVER_BUNDLE_MAX_GZIP_BYTES, APP_SETTINGS_MAX_FIELDS, APP_SETTING_FIELD_TYPES, APP_SETTING_KEY_PATTERN, APP_STORAGE_KEY_PATTERN, APP_STORAGE_MAX_BYTES, APP_STORAGE_MAX_KEYS, APP_TOOL_NAME_PATTERN, APP_UI_MAX_BYTES, APP_UI_MAX_FILES, ApiError, ApprovalPendingError, BASE_CURRENCY, BRAND_BRIEF_MAX_REFERENCES, BUSINESS_INFO_MAX_LENGTH, BUSINESS_NUMBER_PATTERN, CASH_RECEIPT_STATUS_VALUES, CERTIFICATION_STATUSES, COLLECTION_BEST_SELLING_DAYS, COLLECTION_PREVIEW_SIZE, COLLECTION_PRODUCT_SORTS, COLLECTION_SALES_SORT_DEFAULT_DAYS, COLLECTION_SLUG_PATTERN, COLLECTION_TYPES, COUPON_CODE_PATTERN, COUPON_CONDITIONS_DEFAULTS, COUPON_TARGET_ALL, COUPON_TARGET_LIST_MAX, CURRENCIES, CURRENCY_CODES, CUSTOM_INPUT_FORBIDDEN_WORDS, CUSTOM_INPUT_TYPES, DEDICATED_EASY_PAY_PROVIDER, DEFAULT_STORE_LOCALE, FULFILLMENT_METHODS, FULFILLMENT_METHODS_BY_TYPE, FULFILLMENT_METHOD_RULES, FULFILLMENT_RULES, INSTALLABLE_SCOPES, InvalidPriceUnitError, KAKAOPAY_TEST_CID, KNOWN_WEBHOOK_EVENT_TYPES, KRW_MONEY_RULES, MAX_ADDON_GROUPS, MAX_ANALYTICS_ALLOWED_ORIGINS, MAX_AUTO_TRANSITION_DAYS, MAX_CALENDAR_DAYS, MAX_CERTIFICATION_ITEMS, MAX_COLLECTIONS, MAX_COLLECTION_BEST_SELLING_TOP, MAX_COLLECTION_CREATED_WITHIN_DAYS, MAX_COLLECTION_DESCRIPTION, MAX_COLLECTION_PRODUCTS, MAX_COLLECTION_PRODUCTS_PER_ADD, MAX_COLLECTION_RULES, MAX_COLLECTION_RULE_CATEGORIES, MAX_COLLECTION_TITLE, MAX_CUSTOM_INPUTS, MAX_CUSTOM_INPUT_LENGTH, MAX_INFO_SECTION_TITLE, MAX_INVENTORY_OPERATION_LINES, MAX_NOTICE_VALUE_LENGTH, MAX_OPTION_GROUPS, MAX_PICKUP_LOCATIONS, MAX_PRODUCT_IMAGES, MAX_PRODUCT_INFO_SECTIONS, MAX_SAVED_OPTION_SETS, MAX_SAVED_OPTION_SET_NAME, MAX_STAY_NIGHTS, MAX_VALUES_PER_GROUP, MAX_VARIANTS, MCP_TELEMETRY_MAX_RESULTS, MIN_PAYMENT_AMOUNT, NON_INSTALLABLE_SCOPES, NO_COUPON_SETTLEMENT, NO_SHIPPING_BUNDLE_KEY, PAYMENT_ROUTING_EXCLUSION_CODES, PAYPAL_CURRENCIES, PLATFORM_CODE_SETS, POINT_ADJUSTMENT_MAX, POINT_EARN_RATE_BP_MAX, POINT_ENTRY_TYPES, POINT_EXPIRY_DAYS_MAX, POINT_EXPIRY_DAYS_MIN, POINT_LOT_SOURCES, POINT_POLICY_DEFAULTS, POINT_REVIEW_REWARD_MAX, POINT_USE_UNITS, PORTONE_CHANNEL_NAME_MAX_LENGTH, PORTONE_MAX_CHANNELS, PORTONE_MIN_CHANNELS, REFUND_POLICY_DEFAULTS, REFUND_POLICY_DELIVERY_FEE_KEYS, REMOTE_AREA_ZIP_RANGES, RESERVED_STOREFRONT_SLUGS, RESERVED_STORE_CODES, SAYREN_API_BASE_URL, SAYREN_API_ORIGIN, SCOPE_DESCRIPTIONS, SHIPPING_POLICY_DEFAULTS, STARTER_SELLER_TASKS, STARTER_STAGES, STOREFRONT_BLOCKED_PATH_SEGMENTS, STOREFRONT_BUILD_STAGES, STOREFRONT_BUILD_TERMINAL_STATUSES, STOREFRONT_CHECK_TERMINAL_STATUSES, STOREFRONT_CLOSED_SITE_HOLD_DAYS, STOREFRONT_CUSTOM_DOMAIN_LIMIT_DEFAULT, STOREFRONT_DOMAIN_DNS_GRACE_DAYS, STOREFRONT_DOMAIN_DNS_WAIT_DAYS, STOREFRONT_DOMAIN_TXT_LABEL, STOREFRONT_EDIT_ACTIVITY_TIMEOUT_MINUTES, STOREFRONT_EDIT_CAPACITY, STOREFRONT_EDIT_IDLE_MINUTES, STOREFRONT_EDIT_PREVIEW_SUFFIX, STOREFRONT_EDIT_START_STAGES, STOREFRONT_FILE_BATCH_MAX, STOREFRONT_FILE_MAX_BYTES, STOREFRONT_PATH_SEGMENT_PATTERN, STOREFRONT_PLATFORM_DOMAINS, STOREFRONT_PUBLIC_SUFFIXES, STOREFRONT_SEARCH_REGEX_MAX_LENGTH, STOREFRONT_SHOWCASE_SLUG_PREFIX, STOREFRONT_SITE_CREATE_LIMIT, STOREFRONT_SLUG_CHANGE_LIMIT, STOREFRONT_SLUG_CHANGE_WINDOW_DAYS, STOREFRONT_SLUG_HOLD_DAYS, STOREFRONT_SLUG_PATTERN, STOREFRONT_SOURCE_BLOB_BATCH_MAX, STOREFRONT_SOURCE_PART_BYTES, STOREFRONT_WORKSPACE_MAX_BYTES, STOREFRONT_WORKSPACE_MAX_FILES, STORE_CODE_PATTERN, STORE_DRAFT_ATTACHMENT_MAX_BYTES, STORE_DRAFT_MAX_ATTACHMENTS, STORE_DRAFT_RETENTION_DAYS, STORE_ROLE_SCOPES, STORE_SCOPE_RESOURCES, STORE_SESSION_KEYS, STORE_SHOP_TYPES, TEMPLATE_STORE_LOCKED_BUSINESS_FIELDS, TOSS_WIDGET_CLIENT_KEY_PATTERN, TOSS_WIDGET_KEY_MESSAGE, TOSS_WIDGET_SECRET_KEY_PATTERN, UPLOAD_PURPOSE_LIMITS, VARIANT_COUNT_WARNING, VARIANT_STOCK_EXCLUSIVE_MESSAGE, WEBHOOK_DEFAULT_TOLERANCE_SEC, WEBHOOK_DELIVERY_ID_HEADER, WEBHOOK_EVENT_ID_HEADER, WEBHOOK_EVENT_TYPE_HEADER, WEBHOOK_FAILURE_REASONS, WEBHOOK_HEADERS, WEBHOOK_PAYLOAD_EXCERPT_MAX_BYTES, WEBHOOK_RESOURCE_TYPES, WEBHOOK_SIGNATURE_HEADER, WEBHOOK_USER_AGENT, addStorefrontDomainRequestSchema, additionalCurrencyPriceSchema, additionalCurrencyPricesSchema, addonGroupRequestSchema, addonGroupSchema, addonValueRequestSchema, addonValueSchema, addressChangeRequestListSchema, addressTypeSchema, agentPolicyDecisionSchema, aiActivitySchema, aiAgentPhaseSchema, aiAttachmentSchema, aiChoiceOptionSchema, aiConversationFileChangesSchema, aiConversationSchema, aiConversationSummarySchema, aiDesignBoardSchema, aiDesignCanvasSchema, aiDesignConfirmBoardSchema, aiDesignSelectionSchema, aiFileChangeKindSchema, aiFocusAreaSchema, aiFocusSchema, aiMessagePartSchema, aiMessageSchema, aiPreviewSelectionSchema, aiRunChangesSchema, aiRunChangesStatusSchema, aiRunFileDiffSchema, aiRunRevertConflictDetailsSchema, aiRunRevertResultSchema, aiRunSchema, aiRunStatusSchema, aiSetupConfirmItemSchema, aiStreamAccessSchema, aiStreamEventSchema, aiStreamRecordSchema, aiTodoSchema, aiToolChangeSchema, allocateByWeight, analyticsChannelSchema, analyticsCheckoutOutcomeSchema, analyticsCheckoutSchema, analyticsDeviceRowSchema, analyticsDevicesSchema, analyticsFunnelStepSchema, analyticsOriginSchema, analyticsOverviewSchema, analyticsPagesQuerySchema, analyticsPagesSchema, analyticsProductRowSchema, analyticsProductSortSchema, analyticsProductsQuerySchema, analyticsProductsSchema, analyticsRangeQuerySchema, analyticsRealtimeSchema, analyticsSearchQuerySchema, analyticsSearchSchema, analyticsSourceGroupBySchema, analyticsSourceRowSchema, analyticsSourcesQuerySchema, analyticsSourcesSchema, analyticsTotalsSchema, apiLogErrorSchema, apiLogListQuerySchema, apiLogPageSchema, apiLogPrincipalSchema, apiLogPrincipalTypeSchema, apiLogSchema, apiLogStatusFilterSchema, apiLogSummarySchema, appArtifactUploadSchema, appBuildSchema, appBuildStageSchema, appCapabilitiesOf, appDeployKeyCreateSchema, appDeployKeyCreatedSchema, appDeployKeySchema, appDevTokenSchema, appDistributionSchema, appEventTypeSchema, appFlowEventSchema, appFlowEventSummarySchema, appFlowNotificationSchema, appFlowNotificationSummarySchema, appFlowParamSchema, appFlowSummaryOf, appHandleSchema, appHttpKeyMatches, appIconProblem, appInstallRequestSchema, appInstallationActivitySchema, appInstallationAppSchema, appInstallationRunSchema, appInstallationSchema, appInstallationSelfSchema, appInstallationSettingsSchema, appInstallationSettingsUpdateSchema, appInstallationStatusSchema, appInvocationSchema, appListingReviewSchema, appListingReviewStatusSchema, appListingSchema, appManifestProblems, appManifestSchema, appManifestWidens, appNetworkHostProblem, appNetworkHostSchema, appReleaseResultSchema, appRuntimeSchema, appScheduleIntervalLabel, appScheduleListOf, appScheduleSummarySchema, appScopeSchema, appSecretSummarySchema, appSessionSchema, appSettingFieldSchema, appStatusSchema, appStorageEntrySchema, appStorageKeysSchema, appStorageListQuerySchema, appStoragePutSchema, appToolCallSchema, appToolInputSchema, appToolListOf, appToolResultSchema, appToolSchema, appToolSummarySchema, appVersionSchema, appVersionStatusSchema, appVisibilitySchema, applyFlowOperationsRequestSchema, approvalDecisionRequestSchema, approvalListQuerySchema, approvalPageSchema, approvalRequestSchema, approvalStatusSchema, approveClaimResultSchema, assertSaleUnit, auditActorSchema, auditActorTypeSchema, auditLogListQuerySchema, auditLogOutcomeSchema, auditLogPageSchema, auditLogSchema, auditLogSourceSchema, bestSellingRuleOf, brandBriefProductSourceSchema, brandBriefReferenceSchema, brandBriefSchema, brandBriefViewSchema, buildAuthorizeUrl, buildQuery, bulkResultSchema, businessInfoPatchShape, businessInfoResponseShape, businessNumberSchema, calendarDateSchema, calendarDaySchema, calendarQuerySchema, cancelBySellerRequestSchema, cancelBySellerResultSchema, carrierSchema, cashReceiptSchema, categoryAttributeSchema, categoryCreateRequestSchema, categoryDeleteQuerySchema, categoryDeleteStrategySchema, categoryListQuerySchema, categoryLocalizationRequestSchema, categoryLocalizationSchema, categoryPatchRequestSchema, categoryProductSortSchema, categorySchema, categorySearchResultSchema, categoryTreeNodeSchema, categoryWithPathSchema, changeStorefrontSlugRequestSchema, changeStorefrontTemplateRequestSchema, changeTypeSchema, claimCollectCompleteRequestSchema, claimDetailSchema, claimFlowEditSessionRequestSchema, claimHoldResultSchema, claimListQuerySchema, claimReasonSchema, claimRedeliveryRequestSchema, claimReturnAddressSchema, claimSchema, claimStatusSchema, claimTypeSchema, claimWebhookEventDataSchema, claimWebhookEventSchema, collectionCreateRequestSchema, collectionListQuerySchema, collectionLocalizationRequestSchema, collectionLocalizationSchema, collectionPageSchema, collectionPatchRequestSchema, collectionPreviewRequestSchema, collectionPreviewSchema, collectionProductListQuerySchema, collectionProductSchema, collectionProductSortRequestSchema, collectionProductsAddRequestSchema, collectionProductsReplaceRequestSchema, collectionRuleCategoryIds, collectionRuleSchema, collectionRuleViewSchema, collectionRulesPredicate, collectionRulesSchema, collectionSchema, collectionStateCountsSchema, collectionStateOf, collectionStateSchema, commerceFlowCheckSchema, commerceFlowSchema, commerceFlowSummarySchema, commerceFlowVersionViewSchema, commerceNumberField, compareBySales, connectStorefrontGitRequestSchema, consentActionSchema, consentKindSchema, consentSourceSchema, couponBenefitSchema, couponConditionsInputSchema, couponConditionsSchema, couponDiscountOf, couponIssueListQuerySchema, couponIssueMethodSchema, couponIssueSchema, couponIssueStatusSchema, couponKindSchema, couponListQuerySchema, couponRedemptionListQuerySchema, couponRedemptionSchema, couponRejectReasonSchema, couponRuleSchema, couponSchema, couponStatsSchema, couponStatusSchema, couponTargetInputSchema, couponTargetSchema, createAiConversationRequestSchema, createAiConversationResponseSchema, createCommerceFlowRequestSchema, createCouponRequestSchema, createMarketRequestSchema, createPkcePair, createSellerCheckoutRequestSchema, createStoreClient, createStoreDraftRequestSchema, createStoreDraftResponseSchema, createStoreSession, createStorefrontEditPreviewLinkRequestSchema, createStorefrontPreviewLinkRequestSchema, createStorefrontSiteRequestSchema, createStorefrontVersionRequestSchema, currencyCodeSchema, currencyRefundFeesSchema, currencyShippingPolicySchema, currencySpecOf, customInputLabelForbiddenWord, customInputRequestSchema, customInputSchema, customInputValueSchema, customerAddressSchema, customerConsentListQuerySchema, customerConsentSchema, customerConsentStateSchema, customerConsentsSchema, customerCouponSchema, customerDelegationRequestSchema, customerDelegationSchema, customerDetailSchema, customerInquiryCategorySchema, customerInquiryListQuerySchema, customerListQuerySchema, customerOrderSchema, customerPointsSchema, customerSortSchema, customerStatsSchema, customerSummarySchema, customerWithdrawalBlockedDetailsSchema, defaultFulfillmentMethodOf, deleteStorefrontFileRequestSchema, deliveryBundleKeyOf, deliveryFeeWaiverSchema, deliveryInfoSchema, deliveryMethodSchema, deliveryStatusSchema, deliveryTypeSchema, descendantCategoryIdsOf, describeScope, devStoreSchema, developerAppCreateSchema, developerAppSchema, developerInstallationSchema, developerOrgSchema, developerStoreSchema, disableStorefrontHostingRequestSchema, discountRequestSchema, discountSchema, dispatchRequestSchema, easyPayProviderResponseSchema, easyPayProviderSchema, eventTypeSchema, exchangeAuthorizationCode, floorToSaleUnit, flowActionRequestSchema, flowActionResultSchema, flowActionSchema, flowAuthoringGuideSchema, flowDraftEdgesSchema, flowDraftNodeSchema, flowDraftNodesSchema, flowDraftOperationSchema, flowEditSessionViewSchema, flowFieldValueSchema, flowInputFieldSchema, flowIssueSchema, flowNodeIdSchema, flowNodeTypeDetailSchema, flowNodeTypesSchema, flowNotificationWebhookEventDataSchema, flowNotificationWebhookEventSchema, flowOperationsResultSchema, flowPresetDetailSchema, flowPresetSummarySchema, flowRunSchema, flowRunStepSchema, flowSecretNameSchema, flowSecretSchema, flowStateChangedWebhookEventDataSchema, flowStateChangedWebhookEventSchema, flowStateSchema, formatOrderNo, fromDecimalString, fulfillBulkRequestSchema, fulfillRequestSchema, fulfillmentMethodOf, fulfillmentMethodSchema, fulfillmentMethodsOf, fulfillmentRuleOf, fulfillmentTypeOf, fulfillmentTypeResponseSchema, fulfillmentTypeSchema, holdOrderItemRequestSchema, infoFieldSourceSchema, infoSchemaFieldSchema, infoSchemaSchema, infoSectionLocalizationRequestSchema, infoSectionLocalizationSchema, infoSectionRequestSchema, infoSectionSchema, inquiryListQuerySchema, inquirySchema, inquiryWebhookEventDataSchema, inquiryWebhookEventSchema, inventoryAdjustmentLineSchema, inventoryAdjustmentReasonSchema, inventoryAdjustmentRequestSchema, inventoryChangedWebhookEventDataSchema, inventoryChangedWebhookEventSchema, inventoryLevelListQuerySchema, inventoryLevelPageSchema, inventoryLevelSchema, inventoryLocationRequestSchema, inventoryLocationSchema, inventoryModeSchema, inventoryMovementKindSchema, inventoryMovementListQuerySchema, inventoryMovementPageSchema, inventoryMovementSchema, inventoryOperationResultSchema, inventoryTransferRequestSchema, invitationDeliveryStatusSchema, invitationListQuerySchema, invitationSchema, inviteMemberRequestSchema, isAiAgentNotesPath, isAiChoiceAnswer, isAiDesignPath, isAiWorkspaceDocPath, isCouponTargetLine, isCurrencyCode, isEditableStorefrontPath, isInstallableScope, isReservedStoreCode, isReservedStorefrontSlug, isSaleUnitPrice, isShowcaseStorefrontSlug, isStoreScope, isWebOrigin, issueCouponRequestSchema, issueCouponResultSchema, kakaoPayCredentialsInputSchema, linkStorefrontGitInstallationRequestSchema, liveGateConditionCodeSchema, liveGateConditionSchema, liveGateErrorDetailsSchema, liveGateSchema, localeCodeSchema, loginProviderSchema, loginProviderStatusSchema, loginProviderTestSchema, loginSettingsSchema, marketSchema, maskedSecretSchema, matchesCollectionRules, mcpRuleResultSchema, mcpToolEventSchema, migrateFlowVersionRequestSchema, migrateFlowVersionResultSchema, minPaymentOf, minorToMajor, moneyRulesOf, moveFlowStateRequestSchema, moveStorefrontFileRequestSchema, myAccountSchema, myStoreSchema, naverPayCredentialsInputSchema, nightsOf, normalizeBusinessNumber, normalizeCouponCode, normalizeLocale, normalizeStorefrontHostname, normalizeStorefrontPath, oauthTokenResponseSchema, openFulfillmentUnion, optionGroupKindSchema, optionGroupRequestSchema, optionGroupSchema, optionModelRequestSchema, optionModelSchema, optionSelectionSchema, optionSortSchema, optionValueRequestSchema, optionValueSchema, orderCanceledWebhookEventDataSchema, orderCanceledWebhookEventSchema, orderDiscountSchema, orderFlowActionResultSchema, orderFulfilledWebhookEventDataSchema, orderFulfilledWebhookEventSchema, orderItemFlowSchema, orderItemFulfillmentSchema, orderItemFulfillmentSnapshotResponseSchema, orderItemFulfillmentSnapshotSchema, orderItemListQuerySchema, orderItemMemoResultSchema, orderItemPageSchema, orderItemSchema, orderItemStatusSchema, orderListQuerySchema, orderSchema, orderSummaryPageSchema, orderSummarySchema, orderWebhookEventDataSchema, orderWebhookEventSchema, pageInfoSchema, pageQueryShape, pageSchema, parseOrderNo, parseWebhookEvent, payPalCredentialsInputSchema, paymentAttemptRecordSchema, paymentAttemptStatusSchema, paymentCredentialSetSchema, paymentFailureWarningSchema, paymentListQuerySchema, paymentProviderSchema, paymentProviderVerificationSchema, paymentRecordDetailSchema, paymentRecordPageSchema, paymentRecordSchema, paymentRecordStatusSchema, paymentRefundRecordSchema, paymentSettingsSchema, paymentStatusProviderSchema, paymentStatusSchema, pgEnvironmentSchema, pgPaymentMethodSchema, pgProviderResponseSchema, pgProviderSchema, pgVerificationResultSchema, pickupLocationRequestSchema, pickupLocationSchema, pickupLocationSnapshotSchema, planCodeSchema, planEntitlementsSchema, planErrorDetailsSchema, platformCodeSchema, pointAdjustmentRequestSchema, pointAdjustmentResultSchema, pointEarnOf, pointEarnRateBpSchema, pointEarningEnabled, pointEntrySchema, pointExpiresAtOf, pointHistoryQuerySchema, pointLotSchema, pointPolicyNoticeSchema, pointPolicySchema, pointRestoreExpiresAtOf, pointUseOf, pointUsePolicySchema, policyDocumentUrlSchema, policyVersionSchema, portOneChannelSchema, portOneCredentialsInputSchema, productCertificationsRequestSchema, productCertificationsSchema, productCreateRequestSchema, productCurrencyPriceSchema, productCurrencyPricesSchema, productFulfillmentCreateSchema, productFulfillmentResponseSchema, productFulfillmentSchema, productFulfillmentUpdateSchema, productImageRejection, productImageUrlSchema, productListQuerySchema, productLocalizationNeedsTranslation, productLocalizationRequestSchema, productLocalizationSchema, productNoticeRequestSchema, productNoticeSchema, productOutOfStockWebhookEventDataSchema, productOutOfStockWebhookEventSchema, productPatchRequestSchema, productRefundPolicyOverride, productRefundPolicyPatchSchema, productReplaceRequestSchema, productSchema, productSortSchema, productStatusSchema, productSummarySchema, productVariantRequestSchema, productVariantSchema, proratedPaidRefundBase, proratedPointRefund, proratedRefundBase, publicPlanSchema, publicPlansSchema, publishStorefrontVersionRequestSchema, purchaseDecisionExtendResultSchema, purchaseDecisionRequestResultSchema, purchaseEarnPolicySchema, purchaseEarnRateOf, putBrandBriefRequestSchema, quoteDelivery, quotePricing, rankBestSelling, refreshUserToken, refundPolicyPatchSchema, refundPolicySchema, rejectClaimRequestSchema, remoteAreaLabelOf, remoteAreaOf, remoteAreaSchema, remoteSurchargeOf, replaceStorefrontSourceRequestSchema, replayFlowRequestSchema, replayFlowResultSchema, requiresCollection, requiresShipping, resolvePointPolicy, resolveRefundPolicy, resolveShippingPolicy, resolvedFlowSchema, responsePlanCodeSchema, responsePointEntryTypeSchema, reviewListQuerySchema, reviewReportResultSchema, reviewRewardPointOf, reviewRewardPolicySchema, reviewSchema, reviewSortSchema, reviewWebhookEventDataSchema, reviewWebhookEventSchema, rollbackStorefrontRequestSchema, runStorefrontCheckRequestSchema, salesReportCurrencySchema, salesReportGroupBySchema, salesReportQuerySchema, salesReportRowSchema, salesReportSchema, salesTotalsSchema, saveFlowDraftRequestSchema, saveFlowSecretRequestSchema, saveLoginProviderRequestSchema, savedCustomInputRequestSchema, savedCustomInputSchema, savedOptionGroupRequestSchema, savedOptionGroupSchema, savedOptionSetCompositionSchema, savedOptionSetFromProductRequestSchema, savedOptionSetFromProductResultSchema, savedOptionSetListQuerySchema, savedOptionSetLocalizationRequestSchema, savedOptionSetLocalizationSchema, savedOptionSetRequestSchema, savedOptionSetSchema, savedOptionSetSortSchema, savedOptionValueRequestSchema, savedOptionValueSchema, scopeAccessSchema, scopesCoverEvent, searchStorefrontFilesRequestSchema, sellerAddressListQuerySchema, sellerAddressRequestSchema, sellerAddressSchema, sellerCancelPreviewSchema, sellerCheckoutLineSchema, sellerCheckoutPageSchema, sellerCheckoutSchema, sellerCustomerInquirySchema, sendAiMessageRequestSchema, sendAiMessageResponseSchema, setCalendarRequestSchema, setPlatformTestKeysRequestSchema, setStorefrontDeployApprovalRequestSchema, setStorefrontVisibilityRequestSchema, settleCouponShortfall, settlementDetailQuerySchema, settlementDetailSchema, settlementListQuerySchema, settlementStatusSchema, settlementSummarySchema, settlementWithDetailsSchema, shippingAddressSchema, shippingCurrencyPriceSchema, shippingCurrencyPricesSchema, shippingPolicyPatchSchema, shippingPolicySchema, simulateFlowRequestSchema, simulateFlowResultSchema, simulationStepSchema, splitRefund, starterSellerTaskSchema, starterStageSchema, starterStatusSchema, starterStoreInfoFieldSchema, stayRangeSchema, staySnapshotSchema, storeAppDetailSchema, storeAppSchema, storeCodeSchema, storeDraftPreviewSchema, storeDraftSchema, storeIndustrySchema, storeMemberRoleUpdatedSchema, storeMemberSchema, storePointPolicySchema, storeRoleSchema, storeSchema, storeScopeResourceSchema, storeSetupBriefSchema, storeShopTypeSchema, storeSubscriptionSchema, storeTemplateSchema, storedAdditionalCurrencyPriceSchema, storedProductCurrencyPriceSchema, storedShippingCurrencyPriceSchema, storefrontBuildDependenciesSchema, storefrontBuildListQuerySchema, storefrontBuildSchema, storefrontBuildStatusSchema, storefrontCheckSchema, storefrontCheckStatusSchema, storefrontCustomDomainStatusSchema, storefrontCustomHostnameProblem, storefrontDependencyFindingSchema, storefrontDeploymentLogSchema, storefrontDeploymentSchema, storefrontDeploymentStepSchema, storefrontDevLogsSchema, storefrontDnsRecordSchema, storefrontDomainSchema, storefrontDomainTxtNameOf, storefrontEditFailureSchema, storefrontEditPreviewLabelOf, storefrontEditPreviewSchema, storefrontEditSessionSchema, storefrontEditSessionStatusSchema, storefrontEditingSchema, storefrontFileConflictDetailsSchema, storefrontFileContentQuerySchema, storefrontFileContentSchema, storefrontFileDeleteResultSchema, storefrontFileEncodingSchema, storefrontFileEntrySchema, storefrontFileHashSchema, storefrontFileListQuerySchema, storefrontFileListSchema, storefrontFileMoveResultSchema, storefrontFilePathSchema, storefrontFileSearchResultSchema, storefrontFileWriteResultSchema, storefrontGitConnectStateSchema, storefrontGitMergeRequestSchema, storefrontGitMergeSchema, storefrontGitRepositorySchema, storefrontGitStatusSchema, storefrontHostingSchema, storefrontPreviewLinkSchema, storefrontProvisioningSchema, storefrontRuleResultSchema, storefrontRuleSeveritySchema, storefrontSiteDomainSchema, storefrontSiteDomainsSchema, storefrontSiteSchema, storefrontSiteSnapshotSchema, storefrontSiteStatusSchema, storefrontSlugAvailabilityQuerySchema, storefrontSlugAvailabilitySchema, storefrontSlugSchema, storefrontSourceArchivePartSchema, storefrontSourceArchiveQuerySchema, storefrontSourceBlobsResultSchema, storefrontSourceModeSchema, storefrontSourceRefSchema, storefrontSourceReplacedSchema, storefrontSourceSchema, storefrontSuspensionSchema, storefrontTemplateSchema, storefrontVerifyReportSchema, storefrontVersionCreatedSchema, storefrontVersionPreviewLabelOf, storefrontVersionSchema, storefrontVersionStatusSchema, storefrontVisibilitySchema, subscriptionLimitsSchema, subscriptionStatusSchema, subscriptionUsageSchema, toDecimalString, toMinor, tossPaymentsCredentialsInputSchema, trackingStageResponseSchema, trackingUpdateResultSchema, unknownWebhookEventSchema, updateCouponRequestSchema, updateLoginProviderRequestSchema, updateLoginSettingsRequestSchema, updateMarketRequestSchema, updateMemberRoleRequestSchema, updatePaymentProviderRequestSchema, updatePaymentSettingsRequestSchema, updatePointPolicyRequestSchema, updateStoreRequestSchema, updateStoreTemplateRequestSchema, uploadExtensionOf, uploadPurposeSchema, uploadRejection, uploadRequestSchema, uploadStorefrontSourceBlobsRequestSchema, uploadTicketSchema, upsertKakaoPayProviderRequestSchema, upsertNaverPayProviderRequestSchema, upsertPayPalProviderRequestSchema, upsertPortOneProviderRequestSchema, upsertTossPaymentsProviderRequestSchema, variantStockRequestSchema, variantStockSchema, verifyPaymentProviderRequestSchema, webhookCreatedSchema, webhookDeliveryDetailSchema, webhookDeliveryErrorCodeSchema, webhookDeliveryListQuerySchema, webhookDeliveryResourceSchema, webhookDeliverySchema, webhookDeliveryStatusSchema, webhookEventSchema, webhookFailureReasonSchema, webhookRedeliverFailedResultSchema, webhookRequestHeaderSchema, webhookRequestSchema, webhookResourceTypeSchema, webhookSchema, webhookSecretRotatedSchema, webhookStatusSchema, webhookTestRequestSchema, webhookTestResultSchema, withdrawCustomerRequestSchema, writeDryRunResultSchema, writePreviewSchema, writeStorefrontFilesRequestSchema };
|
|
11602
|
+
export { AI_AGENT_NOTES_DIR, AI_AGENT_PHASES, AI_DESIGN_BOARDS_MAX, AI_DESIGN_BOARD_FILE_PATTERN, AI_DESIGN_BOARD_KINDS, AI_DESIGN_CANVAS_PATH, AI_DESIGN_CONFIRM_APPROVE, AI_DESIGN_DIR, AI_DESIGN_GUIDE_PATH, AI_DESIGN_VIEWPORTS, AI_MESSAGE_MAX_ATTACHMENTS, AI_MESSAGE_MAX_CHARS, AI_RUN_ACTIVE_STATUSES, AI_RUN_FILE_CHANGES_RETENTION_DAYS, AI_RUN_RESUME_CHOICE, AI_SETUP_CONFIRM_APPROVE, AI_SITEMAP_PATH, AI_TODOS_MAX, AI_TODO_STATUSES, AI_TOOL_CHANGE_LINE_MAX, AI_TOOL_CHANGE_RANGES_MAX, APPROVAL_ALREADY_DECIDED_CODE, APPROVAL_REQUIRED_CODE, APP_CAPABILITIES, APP_DEPLOY_KEY_PATTERN, APP_DEPLOY_KEY_PREFIX, APP_EVENTS_MAX, APP_EVENT_SCOPES, APP_EVENT_TYPES, APP_FLOW_EVENT_PATTERN, APP_FLOW_ITEMS_MAX, APP_FLOW_NOTIFICATION_PATTERN, APP_HANDLE_PATTERN, APP_HTTP_KEY_PATTERN, APP_ICON_CONTENT_TYPES, APP_ICON_MAX_BYTES, APP_ICON_MIN_PX, APP_LIFECYCLE_EVENT_TYPES, APP_NETWORK_DENIED_SUFFIXES, APP_NETWORK_HOSTS_MAX, APP_PUBLIC_HTTP_MAX, APP_README_MAX_BYTES, APP_RESERVED_HANDLES, APP_SCHEDULES_MAX, APP_SCHEDULE_INTERVALS, APP_SCHEDULE_NAME_PATTERN, APP_SECRETS_MAX, APP_SECRET_NAME_PATTERN, APP_SECRET_PATTERNS, APP_SERVER_BUNDLE_MAX_GZIP_BYTES, APP_SETTINGS_MAX_FIELDS, APP_SETTING_FIELD_TYPES, APP_SETTING_KEY_PATTERN, APP_STORAGE_KEY_PATTERN, APP_STORAGE_MAX_BYTES, APP_STORAGE_MAX_KEYS, APP_TOOL_NAME_PATTERN, APP_UI_MAX_BYTES, APP_UI_MAX_FILES, ApiError, ApprovalPendingError, BASE_CURRENCY, BRAND_BRIEF_MAX_REFERENCES, BUSINESS_INFO_MAX_LENGTH, BUSINESS_NUMBER_PATTERN, CASH_RECEIPT_STATUS_VALUES, CERTIFICATION_STATUSES, COLLECTION_BEST_SELLING_DAYS, COLLECTION_PREVIEW_SIZE, COLLECTION_PRODUCT_SORTS, COLLECTION_SALES_SORT_DEFAULT_DAYS, COLLECTION_SLUG_PATTERN, COLLECTION_TYPES, COUPON_CODE_PATTERN, COUPON_CONDITIONS_DEFAULTS, COUPON_TARGET_ALL, COUPON_TARGET_LIST_MAX, CURRENCIES, CURRENCY_CODES, CUSTOM_INPUT_FORBIDDEN_WORDS, CUSTOM_INPUT_TYPES, DEDICATED_EASY_PAY_PROVIDER, DEFAULT_STORE_LOCALE, FULFILLMENT_METHODS, FULFILLMENT_METHODS_BY_TYPE, FULFILLMENT_METHOD_RULES, FULFILLMENT_RULES, INSTALLABLE_SCOPES, InvalidPriceUnitError, KAKAOPAY_TEST_CID, KNOWN_WEBHOOK_EVENT_TYPES, KRW_MONEY_RULES, MAX_ADDON_GROUPS, MAX_ANALYTICS_ALLOWED_ORIGINS, MAX_AUTO_TRANSITION_DAYS, MAX_CALENDAR_DAYS, MAX_CERTIFICATION_ITEMS, MAX_COLLECTIONS, MAX_COLLECTION_BEST_SELLING_TOP, MAX_COLLECTION_CREATED_WITHIN_DAYS, MAX_COLLECTION_DESCRIPTION, MAX_COLLECTION_PRODUCTS, MAX_COLLECTION_PRODUCTS_PER_ADD, MAX_COLLECTION_RULES, MAX_COLLECTION_RULE_CATEGORIES, MAX_COLLECTION_TITLE, MAX_CUSTOM_INPUTS, MAX_CUSTOM_INPUT_LENGTH, MAX_INFO_SECTION_TITLE, MAX_INVENTORY_OPERATION_LINES, MAX_NOTICE_VALUE_LENGTH, MAX_OPTION_GROUPS, MAX_PICKUP_LOCATIONS, MAX_PRODUCT_IMAGES, MAX_PRODUCT_INFO_SECTIONS, MAX_SAVED_OPTION_SETS, MAX_SAVED_OPTION_SET_NAME, MAX_STAY_NIGHTS, MAX_VALUES_PER_GROUP, MAX_VARIANTS, MCP_TELEMETRY_MAX_RESULTS, MIN_PAYMENT_AMOUNT, NON_INSTALLABLE_SCOPES, NO_COUPON_SETTLEMENT, NO_SHIPPING_BUNDLE_KEY, PAYMENT_ROUTING_EXCLUSION_CODES, PAYPAL_CURRENCIES, PLATFORM_CODE_SETS, POINT_ADJUSTMENT_MAX, POINT_EARN_RATE_BP_MAX, POINT_ENTRY_TYPES, POINT_EXPIRY_DAYS_MAX, POINT_EXPIRY_DAYS_MIN, POINT_LOT_SOURCES, POINT_POLICY_DEFAULTS, POINT_REVIEW_REWARD_MAX, POINT_USE_UNITS, PORTONE_CHANNEL_NAME_MAX_LENGTH, PORTONE_MAX_CHANNELS, PORTONE_MIN_CHANNELS, REFUND_POLICY_DEFAULTS, REFUND_POLICY_DELIVERY_FEE_KEYS, REMOTE_AREA_ZIP_RANGES, RESERVED_STOREFRONT_SLUGS, RESERVED_STORE_CODES, SAYREN_API_BASE_URL, SAYREN_API_ORIGIN, SCOPE_DESCRIPTIONS, SHIPPING_POLICY_DEFAULTS, STARTER_SELLER_TASKS, STARTER_STAGES, STOREFRONT_BLOCKED_PATH_SEGMENTS, STOREFRONT_BUILD_STAGES, STOREFRONT_BUILD_TERMINAL_STATUSES, STOREFRONT_CHECK_TERMINAL_STATUSES, STOREFRONT_CLOSED_SITE_HOLD_DAYS, STOREFRONT_CUSTOM_DOMAIN_LIMIT_DEFAULT, STOREFRONT_DOMAIN_DNS_GRACE_DAYS, STOREFRONT_DOMAIN_DNS_WAIT_DAYS, STOREFRONT_DOMAIN_TXT_LABEL, STOREFRONT_EDIT_ACTIVITY_TIMEOUT_MINUTES, STOREFRONT_EDIT_CAPACITY, STOREFRONT_EDIT_IDLE_MINUTES, STOREFRONT_EDIT_PREVIEW_SUFFIX, STOREFRONT_EDIT_START_STAGES, STOREFRONT_FILE_BATCH_MAX, STOREFRONT_FILE_MAX_BYTES, STOREFRONT_PATH_SEGMENT_PATTERN, STOREFRONT_PLATFORM_DOMAINS, STOREFRONT_PUBLIC_SUFFIXES, STOREFRONT_SEARCH_REGEX_MAX_LENGTH, STOREFRONT_SHOWCASE_SLUG_PREFIX, STOREFRONT_SITE_CREATE_LIMIT, STOREFRONT_SLUG_CHANGE_LIMIT, STOREFRONT_SLUG_CHANGE_WINDOW_DAYS, STOREFRONT_SLUG_HOLD_DAYS, STOREFRONT_SLUG_PATTERN, STOREFRONT_SOURCE_BLOB_BATCH_MAX, STOREFRONT_SOURCE_PART_BYTES, STOREFRONT_WORKSPACE_MAX_BYTES, STOREFRONT_WORKSPACE_MAX_FILES, STORE_CODE_PATTERN, STORE_DRAFT_ATTACHMENT_MAX_BYTES, STORE_DRAFT_MAX_ATTACHMENTS, STORE_DRAFT_RETENTION_DAYS, STORE_ROLE_SCOPES, STORE_SCOPE_RESOURCES, STORE_SESSION_KEYS, STORE_SHOP_TYPES, TEMPLATE_STORE_LOCKED_BUSINESS_FIELDS, TOSS_WIDGET_CLIENT_KEY_PATTERN, TOSS_WIDGET_KEY_MESSAGE, TOSS_WIDGET_SECRET_KEY_PATTERN, UPLOAD_PURPOSE_LIMITS, VARIANT_COUNT_WARNING, VARIANT_STOCK_EXCLUSIVE_MESSAGE, WEBHOOK_DEFAULT_TOLERANCE_SEC, WEBHOOK_DELIVERY_ID_HEADER, WEBHOOK_EVENT_ID_HEADER, WEBHOOK_EVENT_TYPE_HEADER, WEBHOOK_FAILURE_REASONS, WEBHOOK_HEADERS, WEBHOOK_PAYLOAD_EXCERPT_MAX_BYTES, WEBHOOK_RESOURCE_TYPES, WEBHOOK_SIGNATURE_HEADER, WEBHOOK_USER_AGENT, addStorefrontDomainRequestSchema, additionalCurrencyPriceSchema, additionalCurrencyPricesSchema, addonGroupRequestSchema, addonGroupSchema, addonValueRequestSchema, addonValueSchema, addressChangeRequestListSchema, addressTypeSchema, agentPolicyDecisionSchema, aiActivitySchema, aiAgentPhaseSchema, aiAttachmentSchema, aiChoiceOptionSchema, aiConversationFileChangesSchema, aiConversationSchema, aiConversationSummarySchema, aiDesignBoardSchema, aiDesignCanvasSchema, aiDesignConfirmBoardSchema, aiDesignSelectionSchema, aiFileChangeKindSchema, aiFocusAreaSchema, aiFocusSchema, aiMessagePartSchema, aiMessageSchema, aiPreviewSelectionSchema, aiRunChangesSchema, aiRunChangesStatusSchema, aiRunFileDiffSchema, aiRunRevertConflictDetailsSchema, aiRunRevertResultSchema, aiRunSchema, aiRunStatusSchema, aiSetupConfirmItemSchema, aiStreamAccessSchema, aiStreamEventSchema, aiStreamRecordSchema, aiTodoSchema, aiToolChangeSchema, allocateByWeight, analyticsChannelSchema, analyticsCheckoutOutcomeSchema, analyticsCheckoutSchema, analyticsDeviceRowSchema, analyticsDevicesSchema, analyticsFunnelStepSchema, analyticsOriginSchema, analyticsOverviewSchema, analyticsPagesQuerySchema, analyticsPagesSchema, analyticsProductRowSchema, analyticsProductSortSchema, analyticsProductsQuerySchema, analyticsProductsSchema, analyticsRangeQuerySchema, analyticsRealtimeSchema, analyticsSearchQuerySchema, analyticsSearchSchema, analyticsSourceGroupBySchema, analyticsSourceRowSchema, analyticsSourcesQuerySchema, analyticsSourcesSchema, analyticsTotalsSchema, apiLogErrorSchema, apiLogListQuerySchema, apiLogPageSchema, apiLogPrincipalSchema, apiLogPrincipalTypeSchema, apiLogSchema, apiLogStatusFilterSchema, apiLogSummarySchema, appArtifactUploadSchema, appBuildSchema, appBuildStageSchema, appCapabilitiesOf, appDeployKeyCreateSchema, appDeployKeyCreatedSchema, appDeployKeySchema, appDevTokenSchema, appDistributionSchema, appEventTypeSchema, appFlowEventSchema, appFlowEventSummarySchema, appFlowNotificationSchema, appFlowNotificationSummarySchema, appFlowParamSchema, appFlowSummaryOf, appHandleSchema, appHttpKeyMatches, appIconProblem, appInstallRequestSchema, appInstallationActivitySchema, appInstallationAppSchema, appInstallationRunSchema, appInstallationSchema, appInstallationSelfSchema, appInstallationSettingsSchema, appInstallationSettingsUpdateSchema, appInstallationStatusSchema, appInvocationSchema, appListingReviewSchema, appListingReviewStatusSchema, appListingSchema, appManifestProblems, appManifestSchema, appManifestWidens, appNetworkHostProblem, appNetworkHostSchema, appReleaseResultSchema, appRuntimeSchema, appScheduleIntervalLabel, appScheduleListOf, appScheduleSummarySchema, appScopeSchema, appSecretSummarySchema, appSessionSchema, appSettingFieldSchema, appStatusSchema, appStorageEntrySchema, appStorageKeysSchema, appStorageListQuerySchema, appStoragePutSchema, appToolCallSchema, appToolInputSchema, appToolListOf, appToolResultSchema, appToolSchema, appToolSummarySchema, appVersionSchema, appVersionStatusSchema, appVisibilitySchema, applyFlowOperationsRequestSchema, approvalDecisionRequestSchema, approvalListQuerySchema, approvalPageSchema, approvalRequestSchema, approvalStatusSchema, approveClaimResultSchema, assertSaleUnit, auditActorSchema, auditActorTypeSchema, auditLogListQuerySchema, auditLogOutcomeSchema, auditLogPageSchema, auditLogSchema, auditLogSourceSchema, bestSellingRuleOf, brandBriefProductSourceSchema, brandBriefReferenceSchema, brandBriefSchema, brandBriefViewSchema, buildAuthorizeUrl, buildQuery, bulkResultSchema, businessInfoPatchShape, businessInfoResponseShape, businessNumberSchema, calendarDateSchema, calendarDaySchema, calendarQuerySchema, cancelBySellerRequestSchema, cancelBySellerResultSchema, carrierSchema, cashReceiptSchema, categoryAttributeSchema, categoryCreateRequestSchema, categoryDeleteQuerySchema, categoryDeleteStrategySchema, categoryListQuerySchema, categoryLocalizationRequestSchema, categoryLocalizationSchema, categoryPatchRequestSchema, categoryProductSortSchema, categorySchema, categorySearchResultSchema, categoryTreeNodeSchema, categoryWithPathSchema, changeStorefrontSlugRequestSchema, changeStorefrontTemplateRequestSchema, changeTypeSchema, claimCollectCompleteRequestSchema, claimDetailSchema, claimFlowEditSessionRequestSchema, claimHoldResultSchema, claimListQuerySchema, claimReasonSchema, claimRedeliveryRequestSchema, claimReturnAddressSchema, claimSchema, claimStatusSchema, claimTypeSchema, claimWebhookEventDataSchema, claimWebhookEventSchema, collectionCreateRequestSchema, collectionListQuerySchema, collectionLocalizationRequestSchema, collectionLocalizationSchema, collectionPageSchema, collectionPatchRequestSchema, collectionPreviewRequestSchema, collectionPreviewSchema, collectionProductListQuerySchema, collectionProductSchema, collectionProductSortRequestSchema, collectionProductsAddRequestSchema, collectionProductsReplaceRequestSchema, collectionRuleCategoryIds, collectionRuleSchema, collectionRuleViewSchema, collectionRulesPredicate, collectionRulesSchema, collectionSchema, collectionStateCountsSchema, collectionStateOf, collectionStateSchema, commerceFlowCheckSchema, commerceFlowSchema, commerceFlowSummarySchema, commerceFlowVersionViewSchema, commerceNumberField, compareBySales, connectStorefrontGitRequestSchema, consentActionSchema, consentKindSchema, consentSourceSchema, couponBenefitSchema, couponConditionsInputSchema, couponConditionsSchema, couponDiscountOf, couponIssueListQuerySchema, couponIssueMethodSchema, couponIssueSchema, couponIssueStatusSchema, couponKindSchema, couponListQuerySchema, couponRedemptionListQuerySchema, couponRedemptionSchema, couponRejectReasonSchema, couponRuleSchema, couponSchema, couponStatsSchema, couponStatusSchema, couponTargetInputSchema, couponTargetSchema, createAiConversationRequestSchema, createAiConversationResponseSchema, createCommerceFlowRequestSchema, createCouponRequestSchema, createMarketRequestSchema, createOrderRequestSchema, createPkcePair, createSellerCheckoutRequestSchema, createStoreClient, createStoreDraftRequestSchema, createStoreDraftResponseSchema, createStoreSession, createStorefrontEditPreviewLinkRequestSchema, createStorefrontPreviewLinkRequestSchema, createStorefrontSiteRequestSchema, createStorefrontVersionRequestSchema, createdOrderSchema, currencyCodeSchema, currencyRefundFeesSchema, currencyShippingPolicySchema, currencySpecOf, customInputLabelForbiddenWord, customInputRequestSchema, customInputSchema, customInputValueSchema, customerAddressSchema, customerConsentListQuerySchema, customerConsentSchema, customerConsentStateSchema, customerConsentsSchema, customerCouponSchema, customerDelegationRequestSchema, customerDelegationSchema, customerDetailSchema, customerInquiryCategorySchema, customerInquiryListQuerySchema, customerListQuerySchema, customerOrderSchema, customerPointsSchema, customerSortSchema, customerStatsSchema, customerSummarySchema, customerWithdrawalBlockedDetailsSchema, defaultFulfillmentMethodOf, deleteStorefrontFileRequestSchema, deliveryBundleKeyOf, deliveryFeeWaiverSchema, deliveryInfoSchema, deliveryMethodSchema, deliveryStatusSchema, deliveryTypeSchema, descendantCategoryIdsOf, describeScope, devStoreSchema, developerAppCreateSchema, developerAppSchema, developerInstallationSchema, developerOrgSchema, developerStoreSchema, directOrderShippingAddressSchema, disableStorefrontHostingRequestSchema, discountRequestSchema, discountSchema, dispatchRequestSchema, easyPayProviderResponseSchema, easyPayProviderSchema, eventTypeSchema, exchangeAuthorizationCode, floorToSaleUnit, flowActionRequestSchema, flowActionResultSchema, flowActionSchema, flowAuthoringGuideSchema, flowDraftEdgesSchema, flowDraftNodeSchema, flowDraftNodesSchema, flowDraftOperationSchema, flowEditSessionViewSchema, flowFieldValueSchema, flowInputFieldSchema, flowIssueSchema, flowNodeIdSchema, flowNodeTypeDetailSchema, flowNodeTypesSchema, flowNotificationWebhookEventDataSchema, flowNotificationWebhookEventSchema, flowOperationsResultSchema, flowPresetDetailSchema, flowPresetSummarySchema, flowRunSchema, flowRunStepSchema, flowSecretNameSchema, flowSecretSchema, flowStateChangedWebhookEventDataSchema, flowStateChangedWebhookEventSchema, flowStateSchema, formatOrderNo, fromDecimalString, fulfillBulkRequestSchema, fulfillRequestSchema, fulfillmentMethodOf, fulfillmentMethodSchema, fulfillmentMethodsOf, fulfillmentRuleOf, fulfillmentTypeOf, fulfillmentTypeResponseSchema, fulfillmentTypeSchema, holdOrderItemRequestSchema, infoFieldSourceSchema, infoSchemaFieldSchema, infoSchemaSchema, infoSectionLocalizationRequestSchema, infoSectionLocalizationSchema, infoSectionRequestSchema, infoSectionSchema, inquiryListQuerySchema, inquirySchema, inquiryWebhookEventDataSchema, inquiryWebhookEventSchema, inventoryAdjustmentLineSchema, inventoryAdjustmentReasonSchema, inventoryAdjustmentRequestSchema, inventoryChangedWebhookEventDataSchema, inventoryChangedWebhookEventSchema, inventoryLevelListQuerySchema, inventoryLevelPageSchema, inventoryLevelSchema, inventoryLocationRequestSchema, inventoryLocationSchema, inventoryModeSchema, inventoryMovementKindSchema, inventoryMovementListQuerySchema, inventoryMovementPageSchema, inventoryMovementSchema, inventoryOperationResultSchema, inventoryTransferRequestSchema, invitationDeliveryStatusSchema, invitationListQuerySchema, invitationSchema, inviteMemberRequestSchema, isAiAgentNotesPath, isAiChoiceAnswer, isAiDesignPath, isAiWorkspaceDocPath, isCouponTargetLine, isCurrencyCode, isEditableStorefrontPath, isInstallableScope, isReservedStoreCode, isReservedStorefrontSlug, isSaleUnitPrice, isShowcaseStorefrontSlug, isStoreScope, isWebOrigin, issueCouponRequestSchema, issueCouponResultSchema, kakaoPayCredentialsInputSchema, linkStorefrontGitInstallationRequestSchema, liveGateConditionCodeSchema, liveGateConditionSchema, liveGateErrorDetailsSchema, liveGateSchema, localeCodeSchema, loginProviderSchema, loginProviderStatusSchema, loginProviderTestSchema, loginSettingsSchema, marketSchema, maskedSecretSchema, matchesCollectionRules, mcpRuleResultSchema, mcpToolEventSchema, migrateFlowVersionRequestSchema, migrateFlowVersionResultSchema, minPaymentOf, minorToMajor, moneyRulesOf, moveFlowStateRequestSchema, moveStorefrontFileRequestSchema, myAccountSchema, myStoreSchema, naverPayCredentialsInputSchema, nightsOf, normalizeBusinessNumber, normalizeCouponCode, normalizeLocale, normalizeStorefrontHostname, normalizeStorefrontPath, oauthTokenResponseSchema, openFulfillmentUnion, optionGroupKindSchema, optionGroupRequestSchema, optionGroupSchema, optionModelRequestSchema, optionModelSchema, optionSelectionSchema, optionSortSchema, optionValueRequestSchema, optionValueSchema, orderCanceledWebhookEventDataSchema, orderCanceledWebhookEventSchema, orderDiscountSchema, orderFlowActionResultSchema, orderFulfilledWebhookEventDataSchema, orderFulfilledWebhookEventSchema, orderItemFlowSchema, orderItemFulfillmentSchema, orderItemFulfillmentSnapshotResponseSchema, orderItemFulfillmentSnapshotSchema, orderItemListQuerySchema, orderItemMemoResultSchema, orderItemPageSchema, orderItemSchema, orderItemStatusSchema, orderListQuerySchema, orderPaymentAddedWebhookEventDataSchema, orderPaymentAddedWebhookEventSchema, orderPaymentRequestedWebhookEventDataSchema, orderPaymentRequestedWebhookEventSchema, orderPaymentSchema, orderSchema, orderSummaryPageSchema, orderSummarySchema, orderWebhookEventDataSchema, orderWebhookEventSchema, pageInfoSchema, pageQueryShape, pageSchema, parseOrderNo, parseWebhookEvent, payPalCredentialsInputSchema, paymentAttemptRecordSchema, paymentAttemptStatusSchema, paymentCredentialSetSchema, paymentFailureWarningSchema, paymentListQuerySchema, paymentProviderSchema, paymentProviderVerificationSchema, paymentRecordDetailSchema, paymentRecordPageSchema, paymentRecordSchema, paymentRecordStatusSchema, paymentRefundRecordSchema, paymentSettingsSchema, paymentStatusProviderSchema, paymentStatusSchema, pgEnvironmentSchema, pgPaymentMethodSchema, pgProviderResponseSchema, pgProviderSchema, pgVerificationResultSchema, pickupLocationRequestSchema, pickupLocationSchema, pickupLocationSnapshotSchema, planCodeSchema, planEntitlementsSchema, planErrorDetailsSchema, platformCodeSchema, pointAdjustmentRequestSchema, pointAdjustmentResultSchema, pointEarnOf, pointEarnRateBpSchema, pointEarningEnabled, pointEntrySchema, pointExpiresAtOf, pointHistoryQuerySchema, pointLotSchema, pointPolicyNoticeSchema, pointPolicySchema, pointRestoreExpiresAtOf, pointUseOf, pointUsePolicySchema, policyDocumentUrlSchema, policyVersionSchema, portOneChannelSchema, portOneCredentialsInputSchema, productCertificationsRequestSchema, productCertificationsSchema, productCreateRequestSchema, productCurrencyPriceSchema, productCurrencyPricesSchema, productFulfillmentCreateSchema, productFulfillmentResponseSchema, productFulfillmentSchema, productFulfillmentUpdateSchema, productImageRejection, productImageUrlSchema, productListQuerySchema, productLocalizationNeedsTranslation, productLocalizationRequestSchema, productLocalizationSchema, productNoticeRequestSchema, productNoticeSchema, productOutOfStockWebhookEventDataSchema, productOutOfStockWebhookEventSchema, productPatchRequestSchema, productRefundPolicyOverride, productRefundPolicyPatchSchema, productReplaceRequestSchema, productSchema, productSortSchema, productStatusSchema, productSummarySchema, productVariantRequestSchema, productVariantSchema, proratedPaidRefundBase, proratedPointRefund, proratedRefundBase, publicPlanSchema, publicPlansSchema, publishStorefrontVersionRequestSchema, purchaseDecisionExtendResultSchema, purchaseDecisionRequestResultSchema, purchaseEarnPolicySchema, purchaseEarnRateOf, putBrandBriefRequestSchema, quoteDelivery, quotePricing, rankBestSelling, refreshUserToken, refundPolicyPatchSchema, refundPolicySchema, rejectClaimRequestSchema, remoteAreaLabelOf, remoteAreaOf, remoteAreaSchema, remoteSurchargeOf, replaceStorefrontSourceRequestSchema, replayFlowRequestSchema, replayFlowResultSchema, requiresCollection, requiresShipping, resolvePointPolicy, resolveRefundPolicy, resolveShippingPolicy, resolvedFlowSchema, responsePlanCodeSchema, responsePointEntryTypeSchema, reviewListQuerySchema, reviewReportResultSchema, reviewRewardPointOf, reviewRewardPolicySchema, reviewSchema, reviewSortSchema, reviewWebhookEventDataSchema, reviewWebhookEventSchema, rollbackStorefrontRequestSchema, runStorefrontCheckRequestSchema, salesReportCurrencySchema, salesReportGroupBySchema, salesReportQuerySchema, salesReportRowSchema, salesReportSchema, salesTotalsSchema, saveFlowDraftRequestSchema, saveFlowSecretRequestSchema, saveLoginProviderRequestSchema, savedCustomInputRequestSchema, savedCustomInputSchema, savedOptionGroupRequestSchema, savedOptionGroupSchema, savedOptionSetCompositionSchema, savedOptionSetFromProductRequestSchema, savedOptionSetFromProductResultSchema, savedOptionSetListQuerySchema, savedOptionSetLocalizationRequestSchema, savedOptionSetLocalizationSchema, savedOptionSetRequestSchema, savedOptionSetSchema, savedOptionSetSortSchema, savedOptionValueRequestSchema, savedOptionValueSchema, scopeAccessSchema, scopesCoverEvent, searchStorefrontFilesRequestSchema, sellerAddressListQuerySchema, sellerAddressRequestSchema, sellerAddressSchema, sellerCancelPreviewSchema, sellerCheckoutLineSchema, sellerCheckoutPageSchema, sellerCheckoutSchema, sellerCustomerInquirySchema, sendAiMessageRequestSchema, sendAiMessageResponseSchema, setCalendarRequestSchema, setPlatformTestKeysRequestSchema, setStorefrontDeployApprovalRequestSchema, setStorefrontVisibilityRequestSchema, settleCouponShortfall, settlementDetailQuerySchema, settlementDetailSchema, settlementListQuerySchema, settlementStatusSchema, settlementSummarySchema, settlementWithDetailsSchema, shippingAddressSchema, shippingCurrencyPriceSchema, shippingCurrencyPricesSchema, shippingPolicyPatchSchema, shippingPolicySchema, simulateFlowRequestSchema, simulateFlowResultSchema, simulationStepSchema, splitRefund, starterSellerTaskSchema, starterStageSchema, starterStatusSchema, starterStoreInfoFieldSchema, stayRangeSchema, staySnapshotSchema, storeAppDetailSchema, storeAppSchema, storeCodeSchema, storeDraftPreviewSchema, storeDraftSchema, storeIndustrySchema, storeMemberRoleUpdatedSchema, storeMemberSchema, storePointPolicySchema, storeRoleSchema, storeSchema, storeScopeResourceSchema, storeSetupBriefSchema, storeShopTypeSchema, storeSubscriptionSchema, storeTemplateSchema, storedAdditionalCurrencyPriceSchema, storedProductCurrencyPriceSchema, storedShippingCurrencyPriceSchema, storefrontBuildDependenciesSchema, storefrontBuildListQuerySchema, storefrontBuildSchema, storefrontBuildStatusSchema, storefrontCheckSchema, storefrontCheckStatusSchema, storefrontCustomDomainStatusSchema, storefrontCustomHostnameProblem, storefrontDependencyFindingSchema, storefrontDeploymentLogSchema, storefrontDeploymentSchema, storefrontDeploymentStepSchema, storefrontDevLogsSchema, storefrontDnsRecordSchema, storefrontDomainSchema, storefrontDomainTxtNameOf, storefrontEditFailureSchema, storefrontEditPreviewLabelOf, storefrontEditPreviewSchema, storefrontEditSessionSchema, storefrontEditSessionStatusSchema, storefrontEditingSchema, storefrontFileConflictDetailsSchema, storefrontFileContentQuerySchema, storefrontFileContentSchema, storefrontFileDeleteResultSchema, storefrontFileEncodingSchema, storefrontFileEntrySchema, storefrontFileHashSchema, storefrontFileListQuerySchema, storefrontFileListSchema, storefrontFileMoveResultSchema, storefrontFilePathSchema, storefrontFileSearchResultSchema, storefrontFileWriteResultSchema, storefrontGitConnectStateSchema, storefrontGitMergeRequestSchema, storefrontGitMergeSchema, storefrontGitRepositorySchema, storefrontGitStatusSchema, storefrontHostingSchema, storefrontPreviewLinkSchema, storefrontProvisioningSchema, storefrontRuleResultSchema, storefrontRuleSeveritySchema, storefrontSiteDomainSchema, storefrontSiteDomainsSchema, storefrontSiteSchema, storefrontSiteSnapshotSchema, storefrontSiteStatusSchema, storefrontSlugAvailabilityQuerySchema, storefrontSlugAvailabilitySchema, storefrontSlugSchema, storefrontSourceArchivePartSchema, storefrontSourceArchiveQuerySchema, storefrontSourceBlobsResultSchema, storefrontSourceModeSchema, storefrontSourceRefSchema, storefrontSourceReplacedSchema, storefrontSourceSchema, storefrontSuspensionSchema, storefrontTemplateSchema, storefrontVerifyReportSchema, storefrontVersionCreatedSchema, storefrontVersionPreviewLabelOf, storefrontVersionSchema, storefrontVersionStatusSchema, storefrontVisibilitySchema, subscriptionLimitsSchema, subscriptionStatusSchema, subscriptionUsageSchema, toDecimalString, toMinor, tossPaymentsCredentialsInputSchema, trackingStageResponseSchema, trackingUpdateResultSchema, unknownWebhookEventSchema, updateCouponRequestSchema, updateLoginProviderRequestSchema, updateLoginSettingsRequestSchema, updateMarketRequestSchema, updateMemberRoleRequestSchema, updatePaymentProviderRequestSchema, updatePaymentSettingsRequestSchema, updatePointPolicyRequestSchema, updateStoreRequestSchema, updateStoreTemplateRequestSchema, uploadExtensionOf, uploadPurposeSchema, uploadRejection, uploadRequestSchema, uploadStorefrontSourceBlobsRequestSchema, uploadTicketSchema, upsertKakaoPayProviderRequestSchema, upsertNaverPayProviderRequestSchema, upsertPayPalProviderRequestSchema, upsertPortOneProviderRequestSchema, upsertTossPaymentsProviderRequestSchema, variantStockRequestSchema, variantStockSchema, verifyPaymentProviderRequestSchema, webhookCreatedSchema, webhookDeliveryDetailSchema, webhookDeliveryErrorCodeSchema, webhookDeliveryListQuerySchema, webhookDeliveryResourceSchema, webhookDeliverySchema, webhookDeliveryStatusSchema, webhookEventSchema, webhookFailureReasonSchema, webhookRedeliverFailedResultSchema, webhookRequestHeaderSchema, webhookRequestSchema, webhookResourceTypeSchema, webhookSchema, webhookSecretRotatedSchema, webhookStatusSchema, webhookTestRequestSchema, webhookTestResultSchema, withdrawCustomerRequestSchema, writeDryRunResultSchema, writePreviewSchema, writeStorefrontFilesRequestSchema };
|
package/package.json
CHANGED
package/src/client.ts
CHANGED
|
@@ -84,7 +84,10 @@ import {
|
|
|
84
84
|
categoryWithPathSchema,
|
|
85
85
|
} from "./schemas/category";
|
|
86
86
|
import {
|
|
87
|
+
type CreateOrderRequest,
|
|
87
88
|
type CreateSellerCheckoutRequest,
|
|
89
|
+
createdOrderSchema,
|
|
90
|
+
createOrderRequestSchema,
|
|
88
91
|
createSellerCheckoutRequestSchema,
|
|
89
92
|
sellerCheckoutPageSchema,
|
|
90
93
|
sellerCheckoutSchema,
|
|
@@ -961,6 +964,14 @@ export function createStoreClient(options: StoreClientOptions) {
|
|
|
961
964
|
query: params as unknown as Query,
|
|
962
965
|
}),
|
|
963
966
|
get: (orderId: string) => storeHttp.request("GET", path`/orders/${orderId}`, orderSchema),
|
|
967
|
+
/**
|
|
968
|
+
* `POST /v1/orders` — 주문 직접 생성(이슈 #117). 결제 대기 주문과 결제 요청을 만든다. 응답 `paymentRequest.checkoutUrl`이 구매자에게 보낼 결제 링크다.
|
|
969
|
+
* 결제 기한까지 결제하지 않으면 주문이 자동으로 취소된다
|
|
970
|
+
*/
|
|
971
|
+
create: (body: CreateOrderRequest) =>
|
|
972
|
+
storeHttp.request("POST", "/orders", createdOrderSchema, {
|
|
973
|
+
body: createOrderRequestSchema.parse(body),
|
|
974
|
+
}),
|
|
964
975
|
/**
|
|
965
976
|
* `POST /v1/orders/{orderId}/cash-receipt/reissue` — 실패했거나 재시도 대기 중인 현금영수증을 지금 다시 발급·취소한다.
|
|
966
977
|
* 상점 플랫폼 OWNER·ADMIN 전용(PAT·M2M 403 `INSUFFICIENT_ROLE`). 404 `CASH_RECEIPT_NOT_FOUND`, 409 `CASH_RECEIPT_NOT_REISSUABLE`
|
|
@@ -133,6 +133,8 @@ export const APP_EVENT_SCOPES: Record<AppEventType, string | null> = {
|
|
|
133
133
|
"ORDER.CANCELED": "order:r",
|
|
134
134
|
"ORDER.FLOW_NOTIFICATION": "order:r",
|
|
135
135
|
"ORDER.FLOW_STATE_CHANGED": "order:r",
|
|
136
|
+
"ORDER.PAYMENT_ADDED": "order:r",
|
|
137
|
+
"ORDER.PAYMENT_REQUESTED": "order:r",
|
|
136
138
|
"CLAIM.CANCEL_REQUESTED": "claim:r",
|
|
137
139
|
"CLAIM.RETURN_REQUESTED": "claim:r",
|
|
138
140
|
"CLAIM.EXCHANGE_REQUESTED": "claim:r",
|
package/src/schemas/checkout.ts
CHANGED
|
@@ -68,6 +68,15 @@ export const createSellerCheckoutRequestSchema = strictRequest(
|
|
|
68
68
|
.optional()
|
|
69
69
|
.default(false)
|
|
70
70
|
.describe("구매자가 이 주문서에 적립금을 쓸 수 있는가. 기본 false"),
|
|
71
|
+
orderId: z
|
|
72
|
+
.string()
|
|
73
|
+
.optional()
|
|
74
|
+
.describe(
|
|
75
|
+
"추가 결제(이슈 #117) — 주면 이 주문에 대한 결제 요청이다. 만들면 줄이 결제 대기로 이 주문에 들어가고, 결제하면 결제완료가 되며 그 줄의 환불은 이 결제에서 한다. " +
|
|
76
|
+
"유효 기한까지 결제하지 않으면(또는 만료시키면) 결제 대기 줄은 자동으로 취소된다. " +
|
|
77
|
+
"주문의 주문자·배송지·통화를 쓰고 배송비가 없다. 쿠폰·적립금을 켤 수 없고(400 `VALIDATION_FAILED`) 재고는 보지 않는다(`trackInventory`를 무시한다). " +
|
|
78
|
+
"없는 주문은 404 `ORDER_NOT_FOUND`",
|
|
79
|
+
),
|
|
71
80
|
}),
|
|
72
81
|
);
|
|
73
82
|
|
|
@@ -122,7 +131,15 @@ export const sellerCheckoutSchema = z.object({
|
|
|
122
131
|
trackInventory: z.boolean(),
|
|
123
132
|
couponsEnabled: z.boolean(),
|
|
124
133
|
pointsEnabled: z.boolean(),
|
|
125
|
-
orderId: z
|
|
134
|
+
orderId: z
|
|
135
|
+
.string()
|
|
136
|
+
.nullable()
|
|
137
|
+
.describe(
|
|
138
|
+
"결제가 속한 주문. 보통 주문서는 결제로 만들어진 주문이고 결제 전이면 null이다. 추가 결제(요청의 `orderId`)는 처음부터 그 주문이다",
|
|
139
|
+
),
|
|
140
|
+
additionalPayment: z
|
|
141
|
+
.boolean()
|
|
142
|
+
.describe("추가 결제(이슈 #117)인가 — true면 결제가 `orderId` 주문에 줄을 붙인다"),
|
|
126
143
|
createdAt: z.string(),
|
|
127
144
|
expiresAt: z.string(),
|
|
128
145
|
});
|
|
@@ -132,3 +149,78 @@ export type SellerCheckout = z.infer<typeof sellerCheckoutSchema>;
|
|
|
132
149
|
export const sellerCheckoutPageSchema = pageSchema(sellerCheckoutSchema);
|
|
133
150
|
|
|
134
151
|
export type SellerCheckoutPage = z.infer<typeof sellerCheckoutPageSchema>;
|
|
152
|
+
|
|
153
|
+
/** 주문 직접 생성의 배송지(이슈 #117) — 국내 배송지다 */
|
|
154
|
+
export const directOrderShippingAddressSchema = z.object({
|
|
155
|
+
receiverName: z.string().min(1).max(50),
|
|
156
|
+
phone: z
|
|
157
|
+
.string()
|
|
158
|
+
.regex(/^0[0-9]{8,11}$/)
|
|
159
|
+
.describe("수령인 연락처(숫자만)"),
|
|
160
|
+
zipCode: z.string().regex(/^[0-9]{5}$/),
|
|
161
|
+
address1: z.string().min(1).max(200),
|
|
162
|
+
address2: z.string().max(200).optional(),
|
|
163
|
+
deliveryMemo: z.string().max(100).optional(),
|
|
164
|
+
});
|
|
165
|
+
|
|
166
|
+
/**
|
|
167
|
+
* 주문 직접 생성 요청(이슈 #117) — 셀러가 결제 대기 주문을 만든다. 회원을 고르거나(`memberId`) 비회원 주문자 정보(`guest`)를 준다.
|
|
168
|
+
* 줄·단가·이행 방식·재고 추적·유효 기한은 셀러 작성 주문서와 같은 규칙이다
|
|
169
|
+
*/
|
|
170
|
+
export const createOrderRequestSchema = strictRequest(
|
|
171
|
+
z.object({
|
|
172
|
+
memberId: z
|
|
173
|
+
.string()
|
|
174
|
+
.optional()
|
|
175
|
+
.describe(
|
|
176
|
+
"주문할 회원. 주면 그 회원의 주문이고 `guest`를 받지 않는다. 생략하면 비회원 주문이다",
|
|
177
|
+
),
|
|
178
|
+
guest: z
|
|
179
|
+
.object({
|
|
180
|
+
name: z.string().min(1).max(50),
|
|
181
|
+
phone: z
|
|
182
|
+
.string()
|
|
183
|
+
.regex(/^0[0-9]{8,11}$/)
|
|
184
|
+
.describe("주문자 연락처(숫자만)"),
|
|
185
|
+
email: z.email().optional(),
|
|
186
|
+
})
|
|
187
|
+
.optional()
|
|
188
|
+
.describe(
|
|
189
|
+
"비회원 주문자. `memberId`가 없으면 필수다. 주문 조회 비밀번호는 구매자가 결제할 때 정한다",
|
|
190
|
+
),
|
|
191
|
+
shippingAddress: directOrderShippingAddressSchema
|
|
192
|
+
.optional()
|
|
193
|
+
.describe(
|
|
194
|
+
"배송지. 택배 배송이 필요한 줄이 있으면 필수(400 `SHIPPING_ADDRESS_REQUIRED`)이고 그 밖에는 버린다",
|
|
195
|
+
),
|
|
196
|
+
items: z.array(sellerCheckoutLineSchema).min(1).max(50),
|
|
197
|
+
expiresAt: z.iso
|
|
198
|
+
.datetime({ offset: true })
|
|
199
|
+
.describe(
|
|
200
|
+
"결제 기한(ISO 8601). 지금 이후여야 하고, 지나도록 결제하지 않으면 주문이 자동으로 취소된다",
|
|
201
|
+
),
|
|
202
|
+
fulfillmentMethod: z
|
|
203
|
+
.enum(["CARRIER", "DIRECT", "PICKUP", "PROVIDED"])
|
|
204
|
+
.optional()
|
|
205
|
+
.describe("이행 방식. 생략하면 줄마다 상품 허용 방식의 첫 값이다"),
|
|
206
|
+
pickupLocationId: z.string().optional().describe("방문 수령 장소"),
|
|
207
|
+
trackInventory: z
|
|
208
|
+
.boolean()
|
|
209
|
+
.optional()
|
|
210
|
+
.default(true)
|
|
211
|
+
.describe("재고 추적. true면 만들 때 재고를 확인하고 결제할 때 뺀다. 기본 true"),
|
|
212
|
+
}),
|
|
213
|
+
);
|
|
214
|
+
|
|
215
|
+
export type CreateOrderRequest = z.input<typeof createOrderRequestSchema>;
|
|
216
|
+
|
|
217
|
+
/** 주문 직접 생성 응답(이슈 #117) — 결제 대기 주문과 그 결제 요청(결제 링크) */
|
|
218
|
+
export const createdOrderSchema = z.object({
|
|
219
|
+
orderId: z.string(),
|
|
220
|
+
orderNo: z.string(),
|
|
221
|
+
paymentRequest: sellerCheckoutSchema.describe(
|
|
222
|
+
"이 주문의 결제 요청. `checkoutUrl`이 구매자에게 보낼 결제 링크다",
|
|
223
|
+
),
|
|
224
|
+
});
|
|
225
|
+
|
|
226
|
+
export type CreatedOrder = z.infer<typeof createdOrderSchema>;
|
package/src/schemas/common.ts
CHANGED
|
@@ -70,6 +70,10 @@ export const changeTypeSchema = z.enum([
|
|
|
70
70
|
// 취소·반품 승인으로 주문상품이 취소됐다 — 서버가 이 값을 쓰므로 목록에 있어야 한다
|
|
71
71
|
// (빠져 있던 동안 클레임이 끝난 주문상품이 섞이면 응답 검증이 깨졌다)
|
|
72
72
|
"CLAIM.COMPLETED",
|
|
73
|
+
// 주문 흐름이 쓰는 주문상품 상태 전이(`ORDER.{상태}`, #115)와 결제 요청의 결제 대기·자동 취소(#117) — 서버가 이 값을 쓰므로 목록에 있어야 한다
|
|
74
|
+
"ORDER.PAYMENT_WAITING",
|
|
75
|
+
"ORDER.DELIVERING",
|
|
76
|
+
"ORDER.CANCELED",
|
|
73
77
|
// 현재 서버가 쓰지 않음. 공개 계약 호환을 위해 값만 남겼다
|
|
74
78
|
"ORDER.ADDRESS_CHANGE_REQUESTED",
|
|
75
79
|
]);
|
package/src/schemas/misc.ts
CHANGED
|
@@ -165,6 +165,10 @@ export const eventTypeSchema = z
|
|
|
165
165
|
"ORDER.FLOW_STATE_CHANGED",
|
|
166
166
|
// 위치별 재고 변화(이슈 #132). 재고 변동 내역 한 행마다 간다
|
|
167
167
|
"INVENTORY.CHANGED",
|
|
168
|
+
// 주문에 추가 결제가 붙음(이슈 #117)
|
|
169
|
+
"ORDER.PAYMENT_ADDED",
|
|
170
|
+
// 흐름 노드 「결제 요청」이 결제 링크를 만듦(이슈 #117)
|
|
171
|
+
"ORDER.PAYMENT_REQUESTED",
|
|
168
172
|
])
|
|
169
173
|
.describe(
|
|
170
174
|
"웹훅 이벤트 타입. `ORDER.ADDRESS_CHANGE_REQUESTED`는 현재 발송하지 않음(호환을 위해 값만 남았고, 구독해도 이벤트가 오지 않는다)",
|
package/src/schemas/order.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import * as z from "zod";
|
|
2
|
+
import { sellerCheckoutSchema } from "./checkout";
|
|
2
3
|
import { commerceNumberField } from "./commerce-number";
|
|
3
4
|
import { changeTypeSchema, orderItemStatusSchema, type PageParams, pageSchema } from "./common";
|
|
4
5
|
import { orderItemFulfillmentSnapshotResponseSchema } from "./fulfillment";
|
|
@@ -71,6 +72,14 @@ export const orderItemSchema = z.object({
|
|
|
71
72
|
"상품주문번호(이슈 #107) — 주문번호 + 줄 순번 2자리(01부터, 100줄부터 3자리). 부분 취소·클레임·송장의 처리 단위 번호이고 생성 후 바뀌지 않습니다",
|
|
72
73
|
),
|
|
73
74
|
orderId: z.string(),
|
|
75
|
+
paymentId: z
|
|
76
|
+
.string()
|
|
77
|
+
.nullable()
|
|
78
|
+
.optional()
|
|
79
|
+
.default(null)
|
|
80
|
+
.describe(
|
|
81
|
+
"이 줄을 결제한 결제(`payments[].paymentId`, 이슈 #117). 줄 하나는 결제 하나가 내고 환불도 그 결제에서 한다. 서버는 항상 싣는다(PG 결제가 없는 0원 주문도 결제 id가 있다)",
|
|
82
|
+
),
|
|
74
83
|
status: orderItemStatusSchema,
|
|
75
84
|
claimStatus: z.enum(["CANCEL_REQUESTED", "RETURN_REQUESTED", "EXCHANGE_REQUESTED"]).nullable(),
|
|
76
85
|
productId: z.string(),
|
|
@@ -169,6 +178,24 @@ export const orderDiscountSchema = z.object({
|
|
|
169
178
|
|
|
170
179
|
export type OrderDiscount = z.infer<typeof orderDiscountSchema>;
|
|
171
180
|
|
|
181
|
+
/** 주문의 결제 한 건 (이슈 #117) — 주문을 만든 첫 결제와 그 주문에 줄을 붙인 추가 결제 */
|
|
182
|
+
export const orderPaymentSchema = z.object({
|
|
183
|
+
paymentId: z.string(),
|
|
184
|
+
additional: z
|
|
185
|
+
.boolean()
|
|
186
|
+
.describe("추가 결제인가. false면 주문을 만든 첫 결제(`payment`와 같은 결제)다"),
|
|
187
|
+
amount: z.number().int().describe("결제(현금) 금액. 적립금·쿠폰으로 낸 몫은 빠진다"),
|
|
188
|
+
approvedMethod: z
|
|
189
|
+
.string()
|
|
190
|
+
.nullable()
|
|
191
|
+
.describe("실제 결제수단(`payment.approvedMethod`와 같은 값). 0원 결제는 null"),
|
|
192
|
+
easyPayProvider: easyPayProviderResponseSchema.nullable(),
|
|
193
|
+
paidAt: z.string(),
|
|
194
|
+
refundedAmount: z.number().int().describe("이 결제에서 환불이 끝난 금액"),
|
|
195
|
+
});
|
|
196
|
+
|
|
197
|
+
export type OrderPayment = z.infer<typeof orderPaymentSchema>;
|
|
198
|
+
|
|
172
199
|
export const orderSchema = z.object({
|
|
173
200
|
orderId: z.string(),
|
|
174
201
|
progressStatus: orderItemStatusSchema
|
|
@@ -286,6 +313,20 @@ export const orderSchema = z.object({
|
|
|
286
313
|
.describe(
|
|
287
314
|
"구매 언어(이슈 #134, BCP 47). 주문상품의 상품명·옵션 이름은 구매자가 이 언어로 본 값이다. null이면 상점 기본 언어다(언어 기능 이전 주문 포함)",
|
|
288
315
|
),
|
|
316
|
+
payments: z
|
|
317
|
+
.array(orderPaymentSchema)
|
|
318
|
+
.optional()
|
|
319
|
+
.default([])
|
|
320
|
+
.describe(
|
|
321
|
+
"이 주문의 결제(이슈 #117) — 첫 결제와 추가 결제를 결제 순서로 싣는다. `payment`는 첫 결제의 내역이다. 서버는 항상 싣는다",
|
|
322
|
+
),
|
|
323
|
+
paymentRequests: z
|
|
324
|
+
.array(sellerCheckoutSchema)
|
|
325
|
+
.optional()
|
|
326
|
+
.default([])
|
|
327
|
+
.describe(
|
|
328
|
+
"결제를 기다리는 결제 요청(이슈 #117) — 결제 대기 줄을 낸 요청이고 `checkoutUrl`이 결제 링크다. 결제되거나 만료되면 빠진다. 서버는 항상 싣는다",
|
|
329
|
+
),
|
|
289
330
|
items: z.array(orderItemSchema),
|
|
290
331
|
});
|
|
291
332
|
|
|
@@ -492,6 +492,48 @@ export const flowStateChangedWebhookEventSchema = z.object({
|
|
|
492
492
|
data: flowStateChangedWebhookEventDataSchema,
|
|
493
493
|
});
|
|
494
494
|
|
|
495
|
+
/**
|
|
496
|
+
* 추가 결제(이슈 #117) — 결제 요청(`POST /v1/checkouts`의 `orderId`)이 결제돼 줄이 주문에 붙었다. 붙은 줄은 이 결제가 냈고 환불도 이 결제에서 한다.
|
|
497
|
+
* 개인정보는 싣지 않는다
|
|
498
|
+
*/
|
|
499
|
+
export const orderPaymentAddedWebhookEventDataSchema = z.object({
|
|
500
|
+
orderId: z.string().describe("주문 ID"),
|
|
501
|
+
orderNo: z.string().describe("주문번호"),
|
|
502
|
+
paymentId: z.string().describe("붙은 결제(주문 응답 `payments[].paymentId`)"),
|
|
503
|
+
checkoutId: z.string().describe("결제한 결제 요청(셀러 작성 주문서) id"),
|
|
504
|
+
amount: z.number().int().describe("결제 금액"),
|
|
505
|
+
orderItemIds: z.array(z.string()).describe("이 결제로 붙은 주문상품"),
|
|
506
|
+
currency: z.string().describe("주문 통화"),
|
|
507
|
+
testPayment: z.boolean(),
|
|
508
|
+
});
|
|
509
|
+
|
|
510
|
+
export const orderPaymentAddedWebhookEventSchema = z.object({
|
|
511
|
+
...envelopeFields,
|
|
512
|
+
type: z.literal("ORDER.PAYMENT_ADDED"),
|
|
513
|
+
data: orderPaymentAddedWebhookEventDataSchema,
|
|
514
|
+
});
|
|
515
|
+
|
|
516
|
+
/**
|
|
517
|
+
* 결제 요청(이슈 #117) — 흐름 노드 「결제 요청」이 이 주문에 대한 결제 링크를 만들었다. 상점이 이 링크를 구매자에게 보낸다(알림톡·메일).
|
|
518
|
+
* 결제되면 `ORDER.PAYMENT_ADDED`가 온다. 개인정보는 싣지 않는다
|
|
519
|
+
*/
|
|
520
|
+
export const orderPaymentRequestedWebhookEventDataSchema = z.object({
|
|
521
|
+
orderId: z.string().describe("주문 ID"),
|
|
522
|
+
orderNo: z.string().describe("주문번호"),
|
|
523
|
+
orderItemIds: z.array(z.string()).describe("결제를 요청한 흐름의 주문상품"),
|
|
524
|
+
checkoutId: z.string().describe("결제 요청(셀러 작성 주문서) id"),
|
|
525
|
+
checkoutUrl: z.string().describe("구매자에게 보낼 결제 링크(sayren 결제 페이지)"),
|
|
526
|
+
amount: z.number().int().describe("결제 금액"),
|
|
527
|
+
currency: z.string().describe("주문 통화"),
|
|
528
|
+
expiresAt: z.string().describe("결제 링크 만료 시각"),
|
|
529
|
+
});
|
|
530
|
+
|
|
531
|
+
export const orderPaymentRequestedWebhookEventSchema = z.object({
|
|
532
|
+
...envelopeFields,
|
|
533
|
+
type: z.literal("ORDER.PAYMENT_REQUESTED"),
|
|
534
|
+
data: orderPaymentRequestedWebhookEventDataSchema,
|
|
535
|
+
});
|
|
536
|
+
|
|
495
537
|
/** 웹훅 요청 본문. `type`으로 판별하며 `data` 형태가 타입별로 다르다 */
|
|
496
538
|
export const webhookEventSchema = z
|
|
497
539
|
.discriminatedUnion("type", [
|
|
@@ -505,6 +547,8 @@ export const webhookEventSchema = z
|
|
|
505
547
|
flowNotificationWebhookEventSchema,
|
|
506
548
|
flowStateChangedWebhookEventSchema,
|
|
507
549
|
inventoryChangedWebhookEventSchema,
|
|
550
|
+
orderPaymentAddedWebhookEventSchema,
|
|
551
|
+
orderPaymentRequestedWebhookEventSchema,
|
|
508
552
|
])
|
|
509
553
|
.describe(
|
|
510
554
|
"웹훅 요청 본문 (얇은 이벤트). 개인정보를 싣지 않으며 `data`의 id로 관리 API를 조회한다",
|