> For the complete documentation index, see [llms.txt](https://marketing-help.nhn-commerce.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://marketing-help.nhn-commerce.com/conversion-tracking-setup/godomall-script-setup/wcs.trans-version.md).

# 네이버 신규 스크립트 (wcs.trans version)

{% hint style="warning" %}
단순 예시이며, 동작을 보장하지 않습니다.
{% endhint %}

## 네이버 공식 개발 문서

* <https://naver.github.io/conversion-tracking/pages/01_script_guide_wcstrans/>

## 공통키 입력 관련 주의 사항

* 한번 입력한 "네이버공통인증키"(이하 공통키)는 변경하실 수 없습니다. 최초 입력시 충분히 확인 후, \[저장] 버튼을 눌러주시기 바랍니다.
* 만일 잘   못 입력 하였거나 변경이 필요할 경우, NHN커머스 홈페이지 1:1문의를 통해 변경 요청 부탁 드립니다.

## 고도몰 네이버 신규 스크립트 설정 방법

{% hint style="danger" %}
12/5일 신규 생성한 고도몰의 경우 네이버 신규 스크립트 설치만 가능합니다.

(하기와 같이 v2 전환하기 버튼이 존재하지 않습니다.)

신규 고도몰  이용자의 경우 공통키 입력 후 저장 버튼을 누르면 자동으로 네이버 신규 스크립트가 설치 됩니다.
{% endhint %}

{% hint style="danger" %}
기존에 네이버 공통키를 입력하지 않은 고도몰 고객들의 경우에도 하기와 같이 v2 전환하기 버튼이 존재하지 않습니다.

공통키 입력 후 저장 버튼을 누르면 자동으로 네이버 신규 스크립트가 설치 됩니다.
{% endhint %}

### 1.  고도몰 관리자페이지 접근

고도몰 관리자페이지 > 마케팅 > 네이버 쇼핑 > 공통유입 스크립트 설정으로 이동 합니다.

<figure><img src="/files/QFXG74hv3c2EQg9bD2Fv" alt=""><figcaption></figcaption></figure>

### 2. 공통유입 스크립트 설정 v2 전환하기 버튼을 클릭 합니다.

{% hint style="info" %}
고도몰은 네이버 '구'버전 스크립트 및 '신'버전 스크립트 모두 제공하고 있습니다.

신 버전 스크립트를 사용하지 않으실 경우 \[공통유입 스크립트 설정 v2 전환하기] 버튼을 클릭하지 마시기 바랍니다.
{% endhint %}

{% hint style="danger" %}
신 버전 스크립트로 전환 시 기존 스크립트 사용 불가
{% endhint %}

\[공통유입 스크립트 설정 v2 전환하기] 버튼을 클릭 합니다.

<figure><img src="/files/aHk4mnYv0LbtZoWyvp4H" alt=""><figcaption></figcaption></figure>

\[확인] 버튼을 눌러 신버전으로 전환 합니다.

## 고도몰 네이버 신규 스크립트 예시

{% hint style="danger" %}
단순 예시이며, 작동을 보장하지 않습니다.
{% endhint %}

#### 상단 공통 스크립트

1. 고도몰 관리자페이지 > 기본설정 > 외부서비스 설정으로 접근
2. \+ 외부 스크립트 등록 버튼을 클릭하여 스크립트 등록
3. {공통키}와 {쇼핑몰 주소} 변경 필요

```javascript
<!-- wcs import -->
<script type="text/javascript" src="//wcs.naver.net/wcslog.js"></script>

<!-- PV event -->
<script type="text/javascript">
  if (globalThis.wcs) {
    if (!wcs_add) var wcs_add = {};
    wcs_add["wa"] = "{공통키}"; // 네이버 공통키를 입력해주세요
    wcs.inflow("{쇼핑몰주소}"); // domain 주소를 입력합니다. https 및 www 등은 제외 합니다.
    wcs_do();
  }
</script>
```

#### 상품 상세 화면

```javascript
<!-- view_product event -->
<script type="text/javascript">
  var _conv = {};
  _conv.type = "view_product";
  _conv.items = [
    {
      id: "{=goodsView['goodsNo']}", //string 상품 id (필수)
      name: "{=goodsView['goodsNm']}", //string 상품 명 (필수)
      payAmount: Number("{=goodsView['goodsPrice']}"), //number 결제 금액 (필수)
    },
  ];
  wcs.trans(_conv); // 전환 이벤트 정보를 담은 object를 서버에 전송
</script>
```

#### 장바구니

```javascript
<!-- add_to_cart event -->
<script type="text/javascript">
  const naverCartItems = [];
  var _conv = {};
</script>
```

\<!--{  @..value\_ }--> 하단 적용

```javascript
<!-- add_to_cart event -->
<script type="text/javascript">
  naverCartItems.push({
	id: "{=...goodsNo}", //string 상품 id (필수)
	name: "{=gd_remove_only_tag(...goodsNm)}", //string 상품 명 (필수)
	quantity: {=...goodsCnt}, //number 결제 수량 (필수)
	payAmount: Number("{=...price['goodsPriceSubtotal']}".replace(/,/g,'')), //number 결제 금액 (필수)
  });
</script>
```

```javascript
<!-- add_to_cart event -->
<script type="text/javascript">
  if (naverCartItems.length > 0) {
    _conv.type = "add_to_cart";
    _conv.items = naverCartItems;
    _conv.value = Number("{=totalSettlePrice}".replace(/,/g, ""));
    wcs.trans(_conv);
  }
</script>
```

#### 주문서 작성 / 결제&#x20;

```javascript
<!-- begin_checkout event -->
<script type="text/javascript">
  const naverBeginCheckoutItems = [];
  var _conv = {};
</script>
```

\<!--{  @..value\_ }--> 하단 적용

```javascript
<!-- begin_checkout event -->
<script type="text/javascript">
  naverBeginCheckoutItems.push({
	id: "{=...goodsNo}", //string 상품 id (필수)
	name: "{=gd_remove_only_tag(...goodsNm)}", //string 상품 명 (필수)
	quantity: {=...goodsCnt}, //number 결제 수량 (필수)
	payAmount: Number("{=...price['goodsPriceSubtotal']}".replace(/,/g,'')), //number 결제 금액 (필수)
  });
</script>
```

```javascript
<!-- begin_checkout event -->
<script type="text/javascript">
  _conv.type = "begin_checkout";
  _conv.items = naverBeginCheckoutItems;
  _conv.value = Number("{=totalSettlePrice}".replace(/,/g, ""));
  wcs.trans(_conv); // 전환 이벤트 정보를 담은 object를 서버에 전송
</script>
```

#### 주문완료

```javascript
<!-- purchase event -->
<script type="text/javascript">
  const naverPurchasedGoodsInfo = [
      <!--{ @ orderInfo.goods }-->
        {
            id: '{=.goodsNo}',
            name: '{=.goodsNm}',
            quantity: {=.goodsCnt},
            payAmount: {=.goodsPrice},
	    ext1: {=gd_currency_string()} === "원" ? "" : "USD",
        },
      <!--{ / }-->
    ];
		   
    const naverConvPrice = ({=orderInfo.settlePrice}-{=orderInfo.totalDeliveryCharge});
	     
    var _conv = {};
    _conv.type = "purchase";
    _conv.id = "{orderInfo.orderNo}";
    _conv.items = naverPurchasedGoodsInfo;
    _conv.value = naverConvPrice;
    wcs.trans(_conv); 
</script>
```
