@yolo-croket-dev/entity-v2 0.3.44 → 0.3.45

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.
@@ -22,6 +22,24 @@ export interface CustomsPcccVerificationEntity {
22
22
  _id: Types.ObjectId | string;
23
23
  reqtNo: string;
24
24
  orderNo?: string;
25
+ /** @description 공개 API로 발급한 인증의 로그인 사용자. 기존 내부 발급 문서에는 없을 수 있다. */
26
+ userId?: string;
27
+ /** @description 인증 발급 당시 결제 시도 주문서 ID. */
28
+ payTryLogId?: string;
29
+ /** 결제 후 보완 인증 대상 주문서 ID. PTL ID와 배타적이다. */
30
+ purchaseReceiptId?: string;
31
+ /** 발급 시점 주문 정책 개정 번호. 재발급과 최종 저장의 경합 검증에 사용한다. */
32
+ customsPolicyRevision?: number;
33
+ /** @description 중복 발급 방지용 활성 주문 키. 완료/대기 중 하나의 발급만 유지한다. */
34
+ activeCheckoutKey?: string;
35
+ /** @description 수령정보와 입력 PCCC의 HMAC. 다른 정보의 인증 결과 재사용을 차단한다. */
36
+ receiverFingerprint?: string;
37
+ /** @description 수령정보·PCCC·확보한 OTP를 요청번호에 결속한 AES-GCM 암호문. CI는 저장하지 않는다. */
38
+ encryptedCredentials?: string;
39
+ /** @description 크로켓 인증 입력 세션의 만료 시각. 관세청 OTP 자체의 유효기간이 아니다. */
40
+ expiresAt?: Date;
41
+ /** @description 사용자 OTP 입력 시도 횟수. */
42
+ attemptCount?: number;
25
43
  status: CustomsPcccVerificationStatusEnum;
26
44
  requestType: '01' | '02';
27
45
  phoneLastFour: string;
@@ -68,3 +86,12 @@ export interface CustomsSequenceEntity {
68
86
  value: number;
69
87
  updatedAt: Date;
70
88
  }
89
+ /** @author 홍준 @description 주문별 통관 인증 적용 상태 @process 필드가 없는 과거 주문은 기존 결제·물류 정책을 유지한다. */
90
+ export interface CustomsVerificationLink {
91
+ /** 서버가 새 통관 흐름에 진입한 대상 주문에만 설정한다. */
92
+ customsVerificationRequired?: boolean;
93
+ /** 최종 수령정보로 검증한 인증 기록 ID. */
94
+ customsVerificationId?: string;
95
+ /** 인증 정책 준비와 최종 저장 사이의 경합을 감지하는 서버 내부 개정 번호. */
96
+ customsPolicyRevision?: number;
97
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@yolo-croket-dev/entity-v2",
3
- "version": "0.3.44",
3
+ "version": "0.3.45",
4
4
  "main": "index.js",
5
5
  "author": "Yolo Co., Ltd.",
6
6
  "description": "크로켓 nest 용 entity-v3",
@@ -1,4 +1,5 @@
1
1
  import { Types } from 'mongoose';
2
+ import { CustomsVerificationLink } from '../customs/customs.entity';
2
3
  import { PurchasedProcessV2Enum } from '../purchased-info';
3
4
  export interface PurchaseReceiptPurchasedInfo {
4
5
  /** @description 결제 아이디 */
@@ -30,7 +31,7 @@ export interface PurchaseReceiptReceiveInfo {
30
31
  /** @description 영문명 이름 */
31
32
  buyerEngLastName?: string;
32
33
  }
33
- export default interface PurchaseReceiptEntity {
34
+ export default interface PurchaseReceiptEntity extends CustomsVerificationLink {
34
35
  _id: Types.ObjectId | string;
35
36
  /** @description 해당 결제 정보 구매자 아이디 */
36
37
  buyerId: Types.ObjectId | string;
@@ -3,6 +3,7 @@ import { SelectionFrameDataTypeEnum } from '@yolo-croket-dev/entity/src/selectio
3
3
  import { SettleVersionEnum } from '@yolo-croket-dev/entity/src/settle';
4
4
  import { PayTryLogPastReservationInfo } from '@yolo-croket-dev/entity/src/pay-try-log/pay-try-log.entity';
5
5
  import { StoreItemKeyword } from '@yolo-croket-dev/entity/src/store-item';
6
+ import { CustomsVerificationLink } from '../customs/customs.entity';
6
7
  import { NicepayBillingApproveResponse } from '../nicepay-billing-log/nicepay-billing-log.entity';
7
8
  import { PartialRefundProcessEnum } from '../partial-refund';
8
9
  import { AttributionDeviceTypeEnum } from '../attribution-touch';
@@ -1283,7 +1284,7 @@ export interface CrawlerProxyOrderInfo {
1283
1284
  changeLogs?: CrawlerProxyOrderInfoChangeLog[];
1284
1285
  }
1285
1286
  /** PInfo schema inteface (아직 선언하다 말았음) */
1286
- export default interface PurchasedInfoEntity {
1287
+ export default interface PurchasedInfoEntity extends CustomsVerificationLink {
1287
1288
  _id: Types.ObjectId | string;
1288
1289
  /** @description 해당 결제 정보 셀러 아이디 */
1289
1290
  sellerId: Types.ObjectId | string;