> ## Documentation Index
> Fetch the complete documentation index at: https://docs.fairytech.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# 캐시백 실적 - DB schema 예시

용어 설명

* 고객사 : 페어리 캐시백 서비스를 연동한 기업
* 사용자 : 고객사의 앱에 연동된 페어리 캐시백을 서비스를 통해 쇼핑몰 구매를 하는 엔드유저
* 쇼핑몰 : 페어리 캐시백 서비스의 쇼핑몰들(11번가, 테무, 알리익스프레스 등)
* 실적 : 사용자가 쇼핑몰에서 구매한 내역
  * 실적 생성 : 실적이 페어리에서 확인됨
  * 실적 취소 : 사용자가 구매를 취소함
  * 실적 확정 : 구매 확정, 배송 확정 등으로 실적이 확정됨
  * 캐시 적립 : 확정된 실적에 대해 커미션을 적립
* SDK 푸시 알림 : 페어리 SDK가 사용자 행동 인식 기능을 통해 사용자에게 구매 유도를 위해 보낸 푸시 알림
* 페어리 웹 콘솔 : [https://console.moment.fairytech.ai/](https://console.moment.fairytech.ai/)

| 컬럼명                     | 컬럼 설명(한국)            | 자료형                   | 자료 최대 길이                                   | Not Null | 예시 값                                                                                          | 설명                                                                                                                                                                                                  |
| :---------------------- | :------------------- | :-------------------- | :----------------------------------------- | :------- | :-------------------------------------------------------------------------------------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| id                      | 고유 식별자               | int (auto\_increment) | -                                          | TRUE     | 1                                                                                             | 고객사 DB 데이터 고유 식별자                                                                                                                                                                                   |
| transactionId           | 거래 고유 식별자            | varchar(50)           | 50<br />(현재는 최대 34자이나 향후 호환성 대비)           | TRUE     | 18000602354821<br />coupang\_8264938130659061\_133033257                                      | 페어리 쪽 거래 데이터 고유 식별자                                                                                                                                                                                 |
| type                    | 유형                   | enum 또는 varchar(20)   | 20                                         | TRUE     | IN\_APP<br />NOTIFICATION                                                                     | IN\_APP: 사용자가 고객사 앱을 통해 캐시백에 직접 접속해서 구매한 경우.<br />NOTIFICATION: 사용자가 페어리 SDK 푸시 알림 클릭하여 캐시백에 접속해 구매한 경우.                                                                                            |
| projectId               | 프로젝트 고유 식별자          | varchar(24)           | 24                                         | TRUE     | 67b6f2a9688f4a05db0a1d45                                                                      | 페어리 웹 콘솔에 접속해서 만든 프로젝트의 ID.                                                                                                                                                                         |
| notificationId          | 알림 고유 식별자            | varchar(24)           | 24                                         | FALSE    | 6540c6dfd94458b60d8e7aca                                                                      | 페어리 웹 콘솔에 접속해서 만든 알림 ID.<br />사용자가 SDK 푸시 알림을 클릭해 구매하지 않은 경우 null 값.                                                                                                                                |
| userId                  | 사용자 고유 식별자           | varchar(\<고객사 지정값>)   | \<고객사 지정값>                                 | FALSE    | 6182a2f3-2847-43ef-b738-6d5000d9d7fc                                                          | 고객사가 사용자별로 생성해서 페어리 캐시백 서비스로 넘겨줬던 사용자의 고유한 식별값.<br />고객사 자체 앱 서비스의 사용자 식별값과 해당 userId 맵핑 관리 필요.<br />쇼핑몰 쪽 시스템 누락이나 이상 구매 건으로 userId가 없는 경우가 있음.                                                    |
| orderId                 | 주문 고유 식별자            | varchar(100)          | 100<br />(현재 최대 64자이나 향후 호환성 대비)           | TRUE     | O24076826846                                                                                  | 사용자가 쇼핑몰에서 구매한 고유한 주문 ID. 하나의 주문에 여러 구매 물품이 있을 수 있어 orderId는 중복될 수 있음.                                                                                                                              |
| status                  | 실적 상태                | enum 또는 varchar(20)   | 20<br />(현재 최대 9자이나 향후 호환성 대비)             | TRUE     | CREATED<br />CANCELD<br />CONFIRMED                                                           | CREATED: 실적이 생성됨<br />CANCELED: 실적이 취소됨<br />CONFIRMED: 실적이 확정됨<br /><br />콜백으로 보내드리는 데이터는 현재는 CREATED만 있으나, CANCELED 등도 추가될 예정                                                                     |
| businessId              | 쇼핑몰 고유 식별자           | varchar(30)           | 30<br />(현재 최대 18자이나 향후 쇼핑몰 추가시 호환성 대비)    | TRUE     | emart                                                                                         | 사용자가 구매한 쇼핑몰의 고유한 식별값                                                                                                                                                                               |
| businessName            | 쇼핑몰 이름               | varchar(50)           | 50<br />(현재 최대 29자이나 향후 쇼핑몰 추가시 호환성 대비)    | TRUE     | 이마트                                                                                           | 쇼핑몰의 이름                                                                                                                                                                                             |
| salesAmount             | 총 거래 금액              | float                 |                                            | TRUE     | 8363.29                                                                                       | 사용자가 구매한 금액. 소수점 2째자리까지                                                                                                                                                                             |
| currency                | 거래 통화                | enum 또는 varchar(10)   | 10                                         | TRUE     | KRW                                                                                           | 거래 통화                                                                                                                                                                                               |
| totalCommissionAmount   | 사용자 캐시백 커미션 금액       | float                 |                                            | TRUE     | 167                                                                                           | 사용자가 실적 확정 시 받게 될 캐시백 커미션                                                                                                                                                                           |
| commissionAmount        | 사용자 및 고객사 캐시백 커미션 금액 | float                 |                                            | TRUE     | 150.3                                                                                         | totalCommissionAmount + 고객사가 실적 확정 시 받게 될 커미션                                                                                                                                                       |
| confirmedEvent          | 확정 이벤트 타입            | varchar(30)           | 30<br />(현재 최대 19자이나 향후 호환성 대비)            | TRUE     | PURCHASE\_CONFIRMED<br />PURCHASED<br />USED<br />CHECKOUT<br />DEPARTURE<br />DELIVERY\_DONE | 실적 확정 이벤트.<br />PURCHASE\_CONFIRMED: 사용자가 구매확정했을 경우<br />PURCHASED: 구매했을 경우<br />USED: 티켓 등을 사용했을 경우<br />CHECKOUT: 숙박 등을 체크아웃했을 경우<br />DEPARTURE: 비행기 등이 출발했을 경우<br />DELIVERY\_DONE: 배송이 완료됐을 경우 |
| confirmedDurationAmount | 확정 소요 시간             | int                   |                                            | TRUE     | 3                                                                                             | 구매 후 실적 확정까지 걸리는 최대 시간 값                                                                                                                                                                            |
| confirmedDurationUnit   | 확정 소요 시간 단위          | varchar(10)           | 10<br />(현재 MONTH만 존재해서 최대 5자이나 향후 호환성 대비) | TRUE     | MONTH                                                                                         | 구매 후 실적 확정까지 걸리는 시간의 단위. 현재까지 모든 쇼핑몰 모두 월(MONTH) 단위                                                                                                                                                 |
| transactionCreatedAt    | 거래 생성 시점             | Datetime 또는 Timestamp |                                            | TRUE     | 2025-06-15 9:10:00                                                                            | 페어리 쪽 실적 데이터 최초 생성 시간.                                                                                                                                                                              |
| transactionUpdatedAt    | 거래 변경 시점             | Datetime 또는 Timestamp |                                            | TRUE     | 2025-06-15 9:11:00                                                                            | 페어리 쪽 실적 데이터 마지막 업데이트 시간                                                                                                                                                                            |
| createdAt               | DB 생성 시점             | Datetime 또는 Timestamp |                                            | TRUE     | 2025-06-15 9:11:21                                                                            | 고객사 DB 데이터 최초 생성 시간                                                                                                                                                                                 |
| updatedAt               | DB 변경 시점             | Datetime 또는 Timestamp |                                            | TRUE     | 2025-06-16 20:48:07                                                                           | 고객사 DB 데이터 마지막 업데이트 시간                                                                                                                                                                              |
