# GreenBricks - CPS

- `gb_click` , `gb_media` 파라미터를 인식하여 쿠키를 24시간 생성합니다.

- 새로운 `gb_click` , `gb_media` 가 들어오면 기존 쿠키는 삭제후 라스트 어트리뷰션으로 쿠키가 생성됩니다.

- 구매 완료시 [Schema](#Schema) 맞춰서 [Purchase](#Purchase) 함수를 보내면 완료입니다.

- `gb_cps` 쿠키가 존재하지 않으면 실행되지 않습니다.

## Contents

- [Script](#Script)
- [Schema](#Schema)
- [Version](#Version)
- [Purchase](#Purchase)

## Script

- ` <script src="https://cdn.jsdelivr.net/npm/greenbricks-cps-sdk@latest/dist/greenbricks-cps-sdk.iife.js"></script>`

## Schema 딜팡

| Name       | Type         | Required | Description  | 예시값                        |
| ---------- | ------------ | -------- | ------------ | ----------------------------- |
| gb_media   | varchar(30)  | ✅       | 매체명       | media                         |
| utm_source | varchar(30)  | ✅       | 매체명       | media                         |
| gb_click   | varchar(200) | ✅       | 고유토큰값    | 1234abcd                     |
| apclid     | varchar(200) | ✅       | 고유토큰값    | 1234abcd                     |
| AdNm       | varchar(30)  | ✅       | 광고주명     | 광고주D                       |
| ordNo      | varchar(20)  | ✅       | 주문번호     | ORD20250001                   |
| itemId     | varchar(15)  | ✅       | 상품ID       | ITEM0001                      |
| itemNm     | varchar(400) | ✅       | 상품명       | 로션 400ml 기획 (+257ml 증정)  |
| sellprc    | integer      | ✅       | 판매가격     | 10000                         |
| ordAmt     | integer      | ✅       | 주문금액     | 9500                          |
| dcAmt      | integer      | ✅       | 할인가격     | 500                           |
| rlordAmt   | integer      | ✅       | 실주문금액   | 9000                          |
| rlordQty   | integer      | ✅       | 실주문갯수   | 1                             |
| ordState   | varchar(20)  | ✅       | 주문상태     | 완료                          |
| ordDate    | varchar(20)  | ✅       | 주문일자     | 2025-04-01                    |
| Commission | integer      | ✅       | 수수료       | 1000                          |
| ordUniqNo  | varchar(10)  | ❌       | 주문고유번호 | UNIQ1234                      |
| updateDate | varchar(20)  | ❌       | 수정일자     | 2025-04-25                    |
| affp1      | varchar(50)  | ❌       | 커스텀1      | custom1                       |
| affp2      | varchar(50)  | ❌       | 커스텀2      | custom2                       |
| affp3      | varchar(50)  | ❌       | 커스텀3      | custom3                       |
| affp4      | varchar(50)  | ❌       | 커스텀4      | custom4                       |
| affp5      | varchar(50)  | ❌       | 커스텀5      | custom5                       |


## Schema ssg
| Name       | Type         | Required | Description  | 예시값                        |
| ---------- | ------------ | -------- | ------------ | ----------------------------- |
| ckwhere    | varchar(30)  | ✅       | 채널명       | media_cps_1                  |
| AdNm       | varchar(30)  | ✅       | 광고주명     | 광고주S                       |
| ordNo      | varchar(20)  | ✅       | 주문번호     | 20250000001                   |
| itemId     | varchar(15)  | ✅       | 상품ID       | ITEM0001                      |
| itemNm     | varchar(400) | ✅       | 상품명       | 물티슈(캡) 110매 * 24팩        |
| sellprc    | integer      | ✅       | 판매가격     | 20000                         |
| ordAmt     | integer      | ✅       | 주문금액     | 1900                          |
| dcAmt      | integer      | ✅       | 할인가격     | 1000                           |
| rlordAmt   | integer      | ✅       | 실주문금액   | 18000                          |
| rlordQty   | integer      | ✅       | 실주문갯수   | 2                             |
| ordState   | varchar(20)  | ✅       | 주문상태     | 완료                          |
| ordDate    | varchar(20)  | ✅       | 주문일자     | 2025-02-13                    |
| Commission | integer      | ✅       | 수수료       | 1000                          |
| ordUniqNo  | varchar(10)  | ❌       | 주문고유번호 | UNIQ1234                      |
| updateDate | varchar(20)  | ❌       | 수정일자     | 2025-02-20                    |
| affp1     | varchar(200)  | ✅       | 고유토큰값    | 1234abcd                    |
| affp2      | varchar(50)  | ❌       | 커스텀2      | custom2                       |
| affp3      | varchar(50)  | ❌       | 커스텀3      | custom3                       |
| affp4      | varchar(50)  | ❌       | 커스텀4      | custom4                       |
| affp5      | varchar(50)  | ❌       | 커스텀5      | custom5                       |


## Schema 링크루루

| Name                    | Type         | Required | Description  | 예시값                         |
| ----------------------- | ------------ | -------- | ------------ | ----------------------------- |
| sortDate                | varchar(30)  | ✅       | 날짜         | "2024-08-22"                  |
| linkrewSettleDailySeq   | integer      | ✅       | 일집계번호    | 450                           |
| serviceCode             | integer      | ✅       | 서비스코드    | 1001                          |
| subId                   | integer      | ✅       | 발급코드      | 10001                         |
| orderAmount             | integer      | ✅       | 수량         | 2                             |
| paymentNo               | integer      | ✅       | 결제번호      | 4228077143                    |
| orderNo                 | integer      | ✅       | 주문번호      | 2542124762                    |
| itemNo                  | varchar(30)  | ✅       | 상품번호     | "1102874071"                    |
| itemName                | varchar(500) | ✅       | 상품명       | "링크루 정산 테스트 1 (프로모션)" |
| paymentStatus           | varchar(30)  | ✅       | 결제상태     | "결제-정상, 결제-취소/환불"       |
| orderDate               | varchar(30)  | ✅       | 주문일자     | "2024-08-22"                    |
| returnDate              | varchar(30)  | ✅       | 환불일자     |  null, 2024-08-22               |
| transportCompletedDate  | varchar(30)  | ✅       | 배송완료      |  "2024-08-22 13:21:58.003"     |
| orderMoney              | integer      | ✅       | 구매금액     |  340000                        |
| settleMoney             | integer      | ✅       | 예상수익     |  10200                          |
| settleExpectedDate      | varchar(30)  | ✅       | 집계예정일    |  2024-09-24T15:00:00Z"        |
| token                   | varchar(30)  | ✅       | 고유토큰값    |  LINK9a3bo2qld9ac2df3q        |









| Apclid     | varchar(200) | 자동     | 클릭id       | ad_click_123                   |
| AdNm       | varchar(30)  | ✅       | 광고주명     | 광고주S                       |
| ordNo      | varchar(20)  | ✅       | 주문번호     | ORD20250001                   |
| itemId     | varchar(15)  | ✅       | 상품ID       | ITEM0001                      |
| itemNm     | varchar(400) | ✅       | 상품명       | 로션 400ml 기획 (+257ml 증정) |
| sellprc    | integer      | ✅       | 판매가격     | 10000                         |
| ordAmt     | integer      | ✅       | 주문금액     | 9500                          |
| dcAmt      | integer      | ✅       | 할인가격     | 500                           |
| rlordAmt   | integer      | ✅       | 실주문금액   | 9000                          |
| rlordQty   | integer      | ✅       | 실주문갯수   | 1                             |
| ordState   | varchar(20)  | ✅       | 주문상태     | 완료                          |
| ordDate    | varchar(20)  | ✅       | 주문일자     | 2025-02-24                    |
| Commission | integer      | ✅       | 수수료       | 1000                          |
| ordUniqNo  | varchar(10)  | ❌       | 주문고유번호 | UNIQ1234                      |
| updateDate | varchar(20)  | ❌       | 수정일자     | 2025-02-25                    |
| affp1      | varchar(50)  | ❌       | 커스텀1      | custom1                       |
| affp2      | varchar(50)  | ❌       | 커스텀2      | custom2                       |
| affp3      | varchar(50)  | ❌       | 커스텀3      | custom3                       |
| affp4      | varchar(50)  | ❌       | 커스텀4      | custom4                       |
| affp5      | varchar(50)  | ❌       | 커스텀5      | custom5                       |

## Version

- **0.0.1version** : 쿠키제어

- **1.0.5version** : 세팅

- **1.0.6version** : 구매(purchase) & 유효성검사 추가

## Purchase

- GB서버로 로그전송

```typescript
const purchaseData = {
  AdNm: "광고주명",      // 광고주명
  ordNo: "ORD12345678",  // 주문번호
  itemId: "ITEM987654",  // 상품ID
  itemNm: "프리미엄 상품", // 상품명
  sellprc: 50000,        // 판매가격
  ordAmt: 50000,         // 주문금액
  dcAmt: 5000,          // 할인가격
  rloadAmt: 45000,      // 실주문금액
  rloadQty: 1,          // 실주문 갯수
  ordState: "결제완료", // 주문 상태
  ordDate: "2025-02-14 01:33:12", // 주문 일자 YYYY-MM-DD HH:MM:SS

  Commission: 5000,     // 수수료 (선택 사항)
  ordUniqNo: "ORD-UNIQ-12345", // 주문 고유번호 (선택 사항)
  updateDate: "2025-02-14" // 수정일자 (선택 사항)

  affp1: "",//커스텀 파라미터1 (선택 사항)
  affp2: "",//커스텀 파라미터2 (선택 사항)
  affp3: "",//커스텀 파라미터3 (선택 사항)
  affp4: "",//커스텀 파라미터4 (선택 사항)
  affp5: "",//커스텀 파라미터5 (선택 사항)
  };

// ✅ 실행함수
purchase(purchaseData);

```

### 자동설정

- ChNm: "CPS매체" (쿠키에서 자동맵핑)
- Apclid: "앱클릭아이디" (쿠키에서 자동맵핑)

### 유의사항

- Commission : 정해지지 않았으면 null가능
- ordDate : YYYY-MM-DD HH:MM:SS
- ordUniqNo : 묶음주문의 경우 기재
- updateDate : 주문취소등의 상태 변경시 기재
- ordState : 사전에 정해진 값은 아래와 같습니다.

| ordState |
| -------- |
| 배송완료 |
| 배송지시 |
| 입금대기 |
| 주문완료 |
| 주문취소 |
| 출하완료 |
| 판정대기 |
| 전환대기 |
| 전환확정 |
| 구매취소 |
| 환불완료 |
