콘텐츠로 건너뛰기

Shopify 이벤트 및 캠페인

앱을 연결하고 주문, 장바구니, 체크아웃 추적에 대해 Shopify가 요청한 권한(read_orders, write_pixels, read_customer_events)을 승인하면, 별도의 Pushwoosh 추적 화면 없이 주문, 체크아웃, 체크아웃 단계 이벤트가 도착하기 시작합니다. 승인 단계는 전제 조건과 1부를 참조하세요. 스토어프론트 탐색(제품 조회 및 장바구니 담기)에도 Push Init Embed 켜짐이 필요합니다.

추적은 세 가지 독립적인 이벤트 그룹을 다룹니다. 각각 다른 액세스가 필요하므로, 하나를 끈다고 해서 나머지가 일시 중지되지는 않습니다:

  • 주문 결제 및 체크아웃: 테마 임베드가 꺼져 있어도 Shopify에서 도착합니다
  • 스토어프론트 탐색(제품 조회 및 장바구니 담기): 테마 임베드가 켜져 있어야 합니다
  • 체크아웃 단계: 위의 주문 추적 권한(read_orders)과 별도로 승인되는, 1부의 Shopify 체크아웃 추적 권한(write_pixels 및 read_customer_events)이 필요합니다

앱을 연결하기 전에, PW_OrderCreated와 PW_AbandonedCart에 대해 Pushwoosh가 금액 및 날짜 속성 유형을 처리하는 방법을 확인하세요. 발견하기 전에 잘못 전송된 유형은 소급하여 수정할 수 없습니다.

주문 결제 및 체크아웃 이벤트

Anchor link to

구매 후 메시징(PW_OrderCreated), 체크아웃 이탈 journey 또는 세그먼트(PW_AbandonedCart / PW_AbandonedCartUpdate), 구매 전환 매핑에 이를 사용하세요. 쇼핑객이 브라우저 추적을 차단하더라도 Shopify에서 도착합니다:

Pushwoosh의 이벤트 이름트리거 시점
PW_OrderCreated주문이 결제됨
PW_AbandonedCart쇼핑객이 체크아웃을 시작함
PW_AbandonedCartUpdate진행 중인 체크아웃에서 쇼핑객이 항목을 추가, 제거, 또는 변경함

이는 Shopify가 자동으로 Pushwoosh에 보내는 주문 및 체크아웃 알림(orders/paid, checkouts/create, checkouts/update webhook, 동기화되는 엔티티에 나열됨)에 해당합니다.

Shopify 자체의 Flow 조건, checkouts/create webhook, Products 블록의 Cart 소스는 모두 장바구니 이탈이라고 불리는 세 가지 서로 다른 것입니다. 아래 표를 사용하여 구축하려는 것과 일치하는 것을 선택하세요.

구축하려는 것사용할 것
Shopify Flow의 리마인더(Shopify 자체의 Cart abandonment 조건)Shopify Flow + Pushwoosh send notification 액션. PW_AbandonedCart 이벤트 이름이 아님.
체크아웃 시작 또는 장바구니 변경에 대한 Pushwoosh의 리마인더 또는 세그먼트PW_AbandonedCart / PW_AbandonedCartUpdate의 Customer Journey 또는 세그먼트
이메일 내에서 쇼핑객의 장바구니 항목 표시Products 블록의 Cart 소스(전송 시점에 PW_AbandonedCartID 태그 사용). 어떤 트리거가 journey를 시작했는지와 무관함.

이 이벤트들의 동작 방식. checkouts/create는 체크아웃이 시작되었다는 것만을 의미합니다. Shopify는 아직 이탈로 판단하지 않았으며, 주문도 확정되지 않았습니다.

쇼핑객이 체크아웃을 편집하는 동안, PW_AbandonedCartUpdate가 동일한 체크아웃에 대해 다시 트리거되어 PW_AbandonedCart에서 저장된 장바구니를 덮어씁니다. Cart 소스를 사용하는 리마인더 이메일은 전송 시점에 최신 항목을 가져옵니다. 장바구니를 새로고침하기 위해서만 두 번째 journey 트리거가 필요하지는 않습니다.

PW_AbandonedCart와 PW_AbandonedCartUpdate는 쇼핑객에게 PW_AbandonedCartID 태그를 설정하며, 이는 Cart 소스가 전송 시점에 읽는 값입니다. PW_OrderCreated는 이를 즉시 지우므로, 이미 체크아웃을 완료한 쇼핑객은 더 이상 갖고 있지 않은 장바구니에 대한 리마인더를 받는 대신 해당 블록을 건너뜁니다. 정확한 삭제 동작은 PW_OrderCreated를 보낼 때 발생하는 일을 참조하세요.

주문 및 체크아웃 이벤트의 속성

Anchor link to

PW_OrderCreated와 PW_AbandonedCart에는 다음이 포함됩니다:

속성설명
orderId주문 또는 체크아웃 식별자
email쇼핑객의 email
totalPrice주문 또는 장바구니 총액
shippingAmount배송비
taxAmount세금 금액
discountAmount할인 금액
currency통화 코드
items장바구니의 항목
customerId등록된 고객에게만 해당되며, 게스트 체크아웃에는 없음
orderUrlPW_OrderCreated의 주문 상태 페이지, 또는 PW_AbandonedCart와 PW_AbandonedCartUpdate의 이탈된 체크아웃 복구 URL. “구매 완료하기” 링크나 버튼을 만드는 데 사용하세요.
createdDate주문 또는 체크아웃이 생성된 시점
abandonedDatePW_AbandonedCart와 PW_AbandonedCartUpdate에만 해당. 장바구니가 처음 생성된 시점이 아니라 마지막으로 수정된 시점

게스트 체크아웃도 주문 및 장바구니 이벤트를 보낼 수 있지만, 이벤트에 등록된 고객 ID는 없습니다.

PW_AbandonedCartUpdate는 동일한 속성을 가집니다. 계정에 Magento 연동도 연결되어 있다면, 해당 주문과 이탈된 장바구니는 동일한 이벤트 이름으로 게시되므로, PW_OrderCreated / PW_AbandonedCart를 기반으로 구축된 세그먼트나 journey는 두 스토어를 모두 포착하며, 위의 속성 유형도 둘 다에 적용됩니다. Magento는 진행 중인 체크아웃 편집을 추적하지 않으므로 PW_AbandonedCartUpdate에 상응하는 것이 없습니다.

특히 items는 Shopify로부터 몇 개의 필드만 채워진 채로 도착합니다.

스토어프론트 탐색 이벤트

Anchor link to

탐색 이탈 세그먼트나 journey, 그리고 제품 조회가 필요한 이메일 추천 전략(예: Based on what they viewed)에 이를 사용하세요. 이메일에서 제품 추천 설정하는 방법을 참조하세요.

두 이벤트 모두 동일한 테마 임베드로 수집됩니다. Push Init Embed가 켜지면 테마에 추가할 것은 그 외에 없습니다:

  • PW_ProductViewed: 쇼핑객이 제품 페이지를 엽니다.
  • PW_AddToCart: 쇼핑객이 페이지를 새로고침하지 않고 항목을 장바구니에 추가합니다. 이는 대부분의 Shopify 테마가 작동하는 방식입니다.

스토어프론트 탐색 이벤트의 속성

Anchor link to

두 이벤트 모두 다음을 포함합니다:

속성설명
items조회되거나 추가된 제품(들), 각각 productId, name, sku, quantity, price 포함
totalPriceitems의 합산 가격
productUrl쇼핑객이 있던 페이지
currency스토어프론트가 이를 노출하는 경우에만

totalPrice를 표시하는 메시지는 숫자 하나만으로는 어떤 통화인지 알 수 없으므로 currency가 없을 때를 대비한 대체 값이 필요합니다.

두 이벤트 모두 email이나 customerId를 속성으로 가지고 있지 않습니다. 쇼핑객은 이벤트 페이로드가 아니라, 나머지 테마 임베드와 동일한 방식으로, 메타필드 User ID에 연결된 SDK 세션을 통해 식별됩니다(2부 참조).

PW_ProductViewed와 PW_AddToCart의 items는 Shopify가 보강 이전에 보내는 동일한 필드를 가집니다: productId, name, sku, quantity, price. PW_AbandonedCart의 items에 대해 하는 것처럼(위의 장바구니 항목은 제품 카탈로그에서 보강됩니다 참조), Pushwoosh는 이 두 이벤트에 대해 나머지 카탈로그 필드를 채우지 않습니다.

Based on what they viewed처럼 전체 제품 세부 정보가 필요한 추천 전략은 메시지가 렌더링될 때 productId로 제품 카탈로그에서 이를 조회합니다. 각 전략에 필요한 것은 이메일에서 제품 추천 설정하는 방법을 참조하세요.

체크아웃 단계 이벤트

Anchor link to

구매 전에 사람들이 어디서 이탈하는지 확인하고, 체크아웃을 시작했지만 결제된 주문에 도달하지 못한 사람들에게 메시지를 보내는 데 이를 사용하세요.

  • PW_CheckoutContactInfo: 쇼핑객이 연락처 정보를 입력했습니다.
  • PW_PaymentInfoSubmitted: 쇼핑객이 결제 정보를 제출했습니다.

완료된 판매는 위 섹션의 PW_OrderCreated이지, 이 두 이벤트가 아닙니다.

PW_AbandonedCart는 체크아웃이 시작되었다는 것만 알려줍니다. 이 두 이벤트는 동일한 체크아웃에서 다음 순서로 이후의 두 지점을 표시합니다: 먼저 연락처 정보, 그다음 결제 정보. PW_PaymentInfoSubmitted에 도달했지만 이후 PW_OrderCreated를 받지 못한 쇼핑객은 PW_AbandonedCart만 트리거한 쇼핑객보다 더 진행한 것이므로, 이 단계를 기반으로 한 메시지는 일반적인 장바구니 리마인더 대신 정체된 결제를 구체적으로 다룰 수 있습니다.

체크아웃 단계 이벤트의 속성

Anchor link to

두 이벤트 모두 다음을 포함합니다:

속성설명
items체크아웃의 항목, 각각 productId, name, sku, quantity, price 포함
orderId체크아웃 토큰, 또는 체크아웃에 Shopify 주문 ID가 생긴 이후에는 해당 ID
totalPrice체크아웃 총액
email체크아웃에 있는 경우에만. 전화 기반 체크아웃(email 미입력)은 이 필드 없이 이벤트를 보냅니다.
currency체크아웃에 있는 경우에만

작동 여부 확인

Anchor link to

스토어에서 해당 작업을 수행한 다음, 이벤트 이름이 Pushwoosh에 나타나는지 확인하세요. 이벤트 자체는 실시간으로 처리되지만, 확인할 수 있는 두 곳은 Pushwoosh가 아직 보지 못한 이름에 다르게 반응합니다:

  • 이벤트로 세그먼트를 생성할 때 Event 드롭다운에서는 새 이름이 즉시 나타납니다.
  • Customer Journey 트리거를 추가할 때 Event 드롭다운에서는 새 이름이 나타나는 데 최대 10분이 걸릴 수 있습니다(이 드롭다운은 캐시됩니다). 아직 보이지 않는다면, 연동이 고장 났다고 가정하기보다는 기다리세요.
테스트 작업이벤트
테스트 주문 결제PW_OrderCreated
체크아웃 시작PW_AbandonedCart
해당 체크아웃에서 항목 변경PW_AbandonedCartUpdate
제품 페이지 열기(Push Init Embed 켜짐)PW_ProductViewed
장바구니에 항목 추가PW_AddToCart
체크아웃에서 연락처 정보 입력PW_CheckoutContactInfo
체크아웃에서 결제 정보 제출PW_PaymentInfoSubmitted

이벤트 사용하기

Anchor link to

필요한 이벤트를 파악한 후에는, 다음 두 곳에서 이를 사용하세요:

결제된 주문의 경우, PW_OrderCreated를 전환 이벤트로 매핑하여 Shopify 구매가 RFM 세그멘테이션, journey 기여도, Product 블록 통계에 반영되도록 할 수도 있습니다.

캠페인 예시

Anchor link to

각각은 쇼핑객 경로의 다른 지점에서 트리거되므로 서로 다른 대상에게 도달합니다: 누군가 이탈하기 전에 얼마나 멀리 갔는지, 또는 체크아웃에 도달했는지 여부가 어떤 것이 적용되는지를 결정합니다.

  • 장바구니 이탈 리마인더. 얼마나 멀리 갔든 체크아웃을 시작한 모든 쇼핑객을 포착합니다 — 여기서 가장 넓은 대상입니다. Customer Journey로 구축하세요: PW_AbandonedCart에 트리거하고, PW_OrderCreated를 기다린 다음, 결제하지 않은 사람에게 Cart 소스 블록이 포함된 이메일을 보냅니다. 전체 설정은 장바구니 이탈 캠페인 설정하는 방법을 참조하세요.
  • 정체된 체크아웃에 대한 후속 조치. 연락처 정보 입력까지 도달했지만 결제하지 않은 쇼핑객만 포착합니다. 위 대상보다 더 좁은 범위입니다. PW_CheckoutContactInfo로 세그먼트를 만든 다음, PW_PaymentInfoSubmitted나 PW_OrderCreated도 있는 사람을 제외합니다.
  • 정체된 결제에 대한 회복. 결제에는 도달했지만 주문을 완료하지 않은 쇼핑객을 포착합니다. 위의 후속 조치보다 더 진행되었으며 상호 배타적입니다. PW_PaymentInfoSubmitted로 세그먼트를 만든 다음, PW_OrderCreated도 있는 사람을 제외합니다.
  • 탐색 추천 이메일. 제품을 봤지만 체크아웃을 아예 시작하지 않은 쇼핑객을 포착합니다. 위의 리마인더와는 다른 대상입니다. Products 블록의 Based on what they viewed 전략과 함께 PW_ProductViewed를 사용하세요. 이메일에서 제품 추천 설정하는 방법을 참조하세요.