고객과 제품 공유

고객과 제품을 공유하는 방법에는 다음과 같이 여러 가지가 있습니다.

  • 카탈로그 메시지 — 눌렀을 때 WhatsApp 내에서 제품 카탈로그를 보여주는 버튼이 있는 자유 형식 메시지
  • 카탈로그 템플릿 메시지 — 눌렀을 때 WhatsApp 내에서 제품 카탈로그를 보여주는 버튼이 있는 템플릿 메시지
  • 카탈로그 링크 메시지 — 카탈로그 썸네일과 제품 카탈로그 전체에 대한 링크가 있는 자유 형식 메시지
  • 제품 메시지 — 제품 카탈로그에 있는 1~30개의 제품에 대한 정보를 포함하는 자유 형식 메시지
  • 다중 제품 템플릿 메시지 — 하나의 메시지에 이커머스 카탈로그에 있는 최대 30개 제품에 대한 정보(최대 10개의 섹션으로 구성됨)를 포함하는 템플릿 메시지

카탈로그 메시지

카탈로그 메시지는 WhatsApp 내에서 제품 카탈로그를 완전히 보여줄 수 있는 자유 형식 메시지입니다.

카탈로그 메시지는 원하는 제품 썸네일 헤더 이미지, 맞춤 본문 텍스트, 고정 텍스트 헤더, 고정 텍스트 하위 헤더, 카탈로그 보기 버튼을 보여줍니다.

고객이 카탈로그 보기 버튼을 누르면 제품 카탈로그가 WhatsApp 내에 나타납니다.

요구 사항

Meta에 업로드된 인벤토리WhatsApp Business 계정에 연결된 이커머스 카탈로그에 있어야 합니다.

요청 구문

WhatsApp Business 전화번호 > 메시지 엔드포인트를 사용하여 카탈로그 메시지를 보냅니다.

POST /<WHATSAPP_BUSINESS_PHONE_NUMBER_ID>/messages

POST 본문

{
  "messaging_product": "whatsapp",
  "recipient_type": "individual",
  "to": "<TO>",
  "type": "interactive",
  "interactive" : {
    "type" : "catalog_message",
    "body" : {
      "text": "<BODY_TEXT>"
    },
    "action": {
      "name": "catalog_message",
      
      /* Parameters object is optional */
      "parameters": {
        "thumbnail_product_retailer_id": "<THUMBNAIL_PRODUCT_RETAILER_ID>"
      }
    },

    /* Footer object is optional */
    "footer": {
      "text": "<FOOTER_TEXT>"
  }
}

속성

자리 표시자설명샘플 값

<BODY_TEXT>

문자열

필수 항목.


메시지 본문에 표시되는 텍스트입니다.


최대 1,024자입니다.

Hello! Thanks for your interest. Ordering is easy. Just visit our catalog and add items to purchase.

<FOOTER_TEXT>

문자열

선택 사항.


메시지 바닥글에 표시되는 텍스트입니다.


최대 60자입니다.

Best grocery deals on WhatsApp!

<THUMBNAIL_PRODUCT_RETAILER_ID>

문자열

선택 사항.


품목 SKU 번호입니다. 커머스 관리자에서 레이블이 콘텐츠 ID로 표시됩니다.


이 품목의 썸네일은 메시지의 헤더 이미지로 사용됩니다.


parameters 개체를 생략하는 경우 카탈로그에서 첫 품목의 제품 이미지가 사용됩니다.

2lc20305pt

<TO>

문자열

고객 전화번호입니다.

+16505551234

요청 샘플

curl 'https://graph.facebook.com/v17.0/106540352242922/messages' \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer EAAJB...' \
-d '
{
  "messaging_product": "whatsapp",
  "recipient_type": "individual",
  "to": "+16505551234",
  "type": "interactive",
  "interactive": {
    "type": "catalog_message",
    "body": {
      "text": "Hello! Thanks for your interest. Ordering is easy. Just visit our catalog and add items to purchase."
    },
    "action": {
      "name": "catalog_message",
      "parameters": {
        "thumbnail_product_retailer_id": "2lc20305pt"
      }
    },
    "footer": {
      "text": "Best grocery deals on WhatsApp!"
    }
  }
}'

응답 샘플

{
  "messaging_product": "whatsapp",
  "contacts": [
    {
      "input": "+16505551234",
      "wa_id": "16505551234"
    }
  ],
  "messages": [
    {
      "id": "wamid.HBgLMTY1MDM4Nzk0MzkVAgARGBI0ODVEREUwQzEzQkVBRjQ1RUUA"
    }
  ]
}

카탈로그 템플릿 메시지

카탈로그 템플릿 메시지는 눌렀을 때 WhatsApp 내에서 제품 카탈로그를 보여주는 버튼이 있는 템플릿 메시지입니다.

카탈로그 템플릿 메시지를 보내려면 카탈로그 템플릿이 필요합니다. 이러한 템플릿을 만드는 방법과 템플릿 메시지를 통해 템플릿을 보내는 방법을 알아보려면 카탈로그 템플릿 문서를 참조하세요.

카탈로그 링크 메시지

wa.me 링크를 만들어서 표준 문자 메시지에 포함하면 제품 카탈로그 전체에 대한 링크를 보낼 수 있습니다. 문자 메시지를 보낼 때 선택 사항인 preview_urltrue로 설정하여 메시지 body 문자열에 있는 모든 URL의 제품 카탈로그 썸네일 세트를 메시지에서 렌더링할 수 있습니다.

카탈로그를 비활성화할 경우 wa.me 링크와 카탈로그 링크 메시지의 카탈로그 보기 버튼을 누르면 잘못된 카탈로그 링크 메시지가 표시됩니다.

wa.me 링크를 만들려면 다음 문자열 끝에 국가 번호를 포함한 비즈니스 전화번호를 붙입니다.

https://wa.me/c/

예를 들면 다음과 같습니다.

https://wa.me/c/15555455657

제품 메시지

다중 제품 메시지 및 단일 제품 메시지는 interactive 유형의 메시지입니다.

다중 제품 메시지의 예:
단일 제품 메시지의 예:
사용자가 쇼핑 시작을 클릭하면 트리거되는 메뉴:
제품 상세 정보 페이지의 예:

개요

다중 및 단일 제품 메시지를 받는 고객은 다음 3가지 주요 작업을 수행할 수 있습니다.

  1. 제품 보기: 고객은 제품의 리스트를 보거나 단 하나의 제품을 볼 수 있습니다. 고객이 특정 품목을 클릭할 때마다 WhatsApp에서는 제품의 최신 정보를 가져와서 제품 상세 정보 페이지(PDP) 형식으로 제품을 표시합니다. 현재 PDP는 제품 이미지만 지원합니다. 제품에 추가된 동영상 및/또는 GIF는 PDP에 표시되지 않습니다.
  2. 제품을 장바구니에 추가: 사용자가 제품을 장바구니에 추가할 때마다 WhatsApp에서 해당 품목의 최신 정보를 가져옵니다. 품목 중에 상태 변화가 있을 경우, WhatsApp에서는 "장바구니에서 하나 이상의 품목이 업데이트되었습니다"라는 대화 상자를 표시합니다. 자세한 내용은 제품 업데이트를 참조하세요. 장바구니는 비즈니스에 전송될 때까지는 비즈니스와 고객 사이의 채팅 스레드에 유지됩니다. 자세한 내용은 장바구니 경험을 참조하세요.
  3. 비즈니스에 장바구니 보내기: 모든 필요한 품목을 추가하고 나면 고객이 자신의 장바구니를 비즈니스로 보낼 수 있습니다. 그다음에는 비즈니스가 다음 단계(예: 배송 정보 요청, 결제 옵션 제공)를 정의할 수 있습니다.

고객이 자신의 계정에 여러 기기를 연결한 경우 다중 제품 및 단일 제품 메시지가 모든 기기에서 동기화됩니다. 그러나 장바구니는 각 기기에 로컬로 저장됩니다. 자세한 내용은 장바구니 경험을 참조하세요.

현재 이런 유형의 메시지는 다음의 플랫폼에서 수신할 수 있습니다.

  • iOS: 2.21.100(다중 제품 메시지) 및 2.21.210(단일 제품 메시지).
  • Android: 2.21.9.15(다중 제품 메시지) 및 2.21.19(단일 제품 메시지).
  • 웹: 이런 기능들을 지원하는 웹 클라이언트가 출시되었습니다.

고객의 앱 버전이 다중 또는 단일 제품 메시지를 지원하지 않는 경우, 오래된 버전의 WhatsApp을 사용하고 있어서 메시지를 수신할 수 없다는 내용을 설명하는 메시지를 받게 됩니다. 고객이 오래된 버전의 WhatsApp을 사용하고 있어서 메시지를 보낼 수 없었다는 Webhooks 알림도 비즈니스에 전송됩니다.

메시지의 예상 동작

다중 제품 메시지 및 단일 제품 메시지의 예상 동작은 다음과 같습니다.

  • 한 사용자가 다른 사용자에게 전달할 수 있습니다.
  • 동일한 대화에서 사용자가 다시 열 수 있습니다.

다중 제품 메시지 및 단일 제품 메시지는 다음과 같은 동작을 할 수 없습니다.

  • 알림으로 보낼 수 없습니다. 이들은 기존의 대화의 일부로만 보낼 수 있습니다.

제한 사항

WhatsApp Business 앱을 통해 전송된 제품 메시지와 달리 클라우드 API를 통해 전송된 메시지는 현재 채팅 스레드 헤더에 장바구니 아이콘을 표시하지 않습니다.

제품 업데이트

카탈로그에 있는 품목의 속성을 업데이트해야 할 수 있습니다. 업데이트된 속성에 따라 WhatsApp이 해당 제품을 언급하는 메시지를 처리하는 방법은 다음과 같습니다.

업데이트된 속성업데이트 프로세스

제품 가격, 제목, 설명 및 이미지

  1. 비즈니스가 제품 A를 포함하는 다중 또는 단일 제품 메시지를 보냅니다.
  2. 비즈니스가 카탈로그에서 제품 A의 속성을 업데이트합니다.
  3. 해당 제품을 표시하는 화면은 고객 클라이언트가 서버로부터 변경 사항에 대해 확인하게 되는 즉시 업데이트됩니다.

구매 가능 여부 변경

  1. 비즈니스가 고객에게 제품 B를 포함하는 다중 또는 단일 제품 메시지를 보냅니다.
  2. 비즈니스가 판매 가능한 제품 B의 모든 단위를 판매합니다. 그런 다음, 비즈니스가 제품 B를 더 이상 구매할 수 없다는 메시지로 카탈로그를 업데이트합니다.
  3. 고객이 이미 제품 B를 장바구니에 담은 경우, 해당 품목이 장바구니에서 삭제됩니다. 장바구니에 "장바구니에서 하나 이상의 품목이 업데이트되었습니다"라는 대화 상자가 표시됩니다.
  4. 고객이 제품 B를 장바구니에 추가하지 않은 경우, 이제 다중 또는 단일 제품 메시지에 해당 품목이 품절로 표시됩니다.

장바구니 경험

고객은 제품을 보고 나서 장바구니에 담고 해당 장바구니를 비즈니스로 보낼 수 있습니다. WhatsApp의 커머스에서 장바구니는 다음과 같은 특징이 있습니다.

  • 특정 기기에서 고객/비즈니스 채팅 스레드에 대해 고유함: 고객과 비즈니스 사이의 채팅 스레드 1개당 장바구니가 1개만 생성되고 장바구니가 여러 기기에서 유지되지 않습니다. 장바구니를 보내고 나면 고객은 해당 비즈니스에 대해 다른 장바구니를 열고 프로세스를 다시 시작할 수 있습니다.
  • 만료 날짜가 없음: 장바구니는 비즈니스로 전송될 때까지 채팅 스레드에 유지됩니다. 장바구니를 보내고 나면 장바구니가 비워집니다.

고객은 장바구니에 각각의 단일 카탈로그 항목을 99개까지 추가할 수 있으나 장바구니에 담을 수 있는 개별 품목의 개수에는 제한이 없습니다.

장바구니를 보내고 나면 편집이 불가능합니다. 고객은 새 품목이 필요하거나 주문을 변경하고 싶을 때 새 장바구니를 보낼 수 있습니다. 비즈니스는 고객에게 장바구니를 보낼 수 없습니다.

장바구니 경험의 예시 및 품목 상태 변경 후 예상 동작.

이를 사용해야 하는 이유

다중 제품 메시지와 단일 제품 메시지는 고객이 비즈니스의 모든 인벤토리를 둘러보기보다 자신과 가장 관련 있는 품목들을 안내받기에 더 좋은 단순하고 개인화된 사용자 경험에 가장 적합합니다.

단순성 및 효율성

NLP, 텍스트 검색, 리스트 메시지와 같은 탐색 도구 및 답장 버튼과 기능을 결합하면 고객이 찾는 품목을 빠르게 검색할 수 있습니다.

개인화

고객 또는 상황에 맞게 개인화할 수 있도록 동적으로 채워집니다. 예를 들어 고객이 가장 자주 주문한 품목의 다중 제품 메시지를 표시할 수 있습니다.

비즈니스 성과

주문을 유도하기 위한 우수한 성능의 채널 역할을 합니다. 비즈니스에서 테스트한 결과, 장바구니로 전송된 다중 제품 메시지의 평균 7%가 전환되었습니다.

템플릿 없음

인터랙티브 메시지는 템플릿이나 사전 승인이 필요하지 않습니다. 이들은 실시간으로 생성되고 언제나 인벤토리에서 최신 품목 상세 정보, 가격 및 재고 수준을 반영합니다.

사용해야 하는 시점

다중 제품 메시지는 고객을 다음과 같이 비즈니스 인벤토리의 특정 하위 집합으로 유도하기에 가장 적절합니다.

  • 대화 방식으로 쇼핑합니다. 예를 들어 검색 기능을 사용하여 고객이 쇼핑 리스트를 입력하면 다중 제품 메시지를 응답으로 보낼 수 있도록 합니다.
  • 특정 카테고리로 이동합니다 (예: 피트니스 의류).
  • 맞춤형 쿠폰 또는 추천을 제공합니다.
  • 이전에 주문했던 품목을 다시 주문합니다. 예를 들어 사용자는 30개 미만의 품목으로 구성된 정기 테이크아웃 주문을 다시 주문할 수 있습니다.

단일 제품 메시지는 다음과 같이 비즈니스 인벤토리에서 특정 품목으로 고객을 안내하여 제한된 옵션 세트에서 빠른 응답을 제공하기에 가장 적절합니다.

  • 고객의 특정 요청에 응답합니다.
  • 추천을 제공합니다.
  • 이전의 품목을 다시 주문합니다.

두 기능 모두 인간 상담원 플로에서도 사용할 수 있지만, 인간 상담원이 다중 제품 메시지나 단일 제품 메시지를 스레드에서 생성할 수 있도록 지원하는 툴링을 빌드해야 합니다.

시작하기

제품 메시지를 보내기 전에 자신의 요구 사항에 가장 잘 맞는 시작하기를 따라해 보세요.

이 가이드에서 언급된 모든 API 호출은 액세스 토큰으로 인증해야 합니다. 개발자는 앱 대시보드 > WhatsApp > API 설정 패널에서 생성된 액세스 토큰으로 API 호출을 인증할 수 있습니다. 솔루션 파트너는 whatsapp_business_messaging 권한이 있는 액세스 토큰으로 인증해야 합니다.

1단계: 인터랙티브 개체 만들기

단일 제품 메시지

단일 제품 메시지를 보내려면 다음의 구성 요소로 product 유형의 interactive 개체를 만듭니다.

필수 구성 요소선택적 구성 요소
  • 작업 개체 — catalog_id와 product_retailer_id를 모두 포함해야 합니다.
  • 본문 개체
  • 바닥글 개체

자세한 내용은 메시지, 인터랙티브 개체를 참조하세요. 프로세스가 끝나면 인터랙티브 개체는 다음과 같은 형식이 되어야 합니다.

{
  "messaging_product": "whatsapp",
  "recipient_type": "individual",
  "to": "PHONE_NUMBER",
  "type": "interactive",
  "interactive": {
    "type": "product",
    "body": {
      "text": "BODY_TEXT"
    },
    "footer": {
      "text": "FOOTER_TEXT"
    },
    "action": {
      "catalog_id": "CATALOG_ID",
      "product_retailer_id": "ID_TEST_ITEM_1"
    }
  }
}

다중 제품 메시지

다중 제품 메시지를 보내려면 다음의 구성 요소로 product_list 유형의 interactive 개체를 만듭니다.

필수 구성 요소선택적 구성 요소
  • 헤더 개체 — 헤더의 유형은 text로 설정해야 합니다. 원하는 콘텐츠를 포함한 텍스트 개체를 추가하는 것을 잊지 마세요.
  • 본문 개체
  • 작업 개체 - catalog_id와 섹션을 포함해야 합니다.
    • 섹션은 제목과 product_items를 사용하여 각 섹션을 설명하는 개체의 배열이 되어야 합니다.
      • 각 섹션의 product_items 값은 product_retailer_id와 제품의 SKU 번호를 사용하여 섹션의 각 제품을 설명하는 배열이 되어야 합니다.
  • 바닥글 개체

자세한 내용은 메시지, 인터랙티브 개체를 참조하세요. 프로세스가 끝나면 인터랙티브 개체는 다음과 같은 형식이 되어야 합니다.

{
  "messaging_product": "whatsapp",
  "recipient_type": "individual",
  "to": "PHONE_NUMBER",
  "type": "interactive",
  "interactive": {
    "type": "product_list",
    "header":{
      "type": "text",
      "text": "HEADER_CONTENT"
    },
    "body": {
      "text": "BODY_CONTENT"
    },
    "footer": {
      "text": "FOOTER_CONTENT"
    },
    "action": {
      "catalog_id": "CATALOG_ID",
      "sections": [
        {
          "title": "SECTION_TITLE",
          "product_items": [
            { "product_retailer_id": "PRODUCT-SKU" },
            { "product_retailer_id": "PRODUCT-SKU" },
            ...
          ]

        },
        {
          "title": "SECTION_TITLE",
          "product_items": [
            { "product_retailer_id": "PRODUCT-SKU" },
            { "product_retailer_id": "PRODUCT-SKU" },
            ...
          ]
        }
      ]
    }
  }
}

누락 품목

위의 API 호출에서 제공한 품목 중 비즈니스의 제품 카탈로그에 나와 있는 제품과 일치하는 것이 없을 경우 오류 메시지가 전송되고 다중 또는 단일 제품 메시지가 사용자에게 전송되지 않습니다.

다중 제품 메시지의 경우 제품 리스트에서 하나 이상의 품목이 비즈니스의 제품 카탈로그에 나와 있는 품목과 일치해야 합니다. 이 경우:

  • 메시지가 성공적으로 전송됩니다.
  • 매칭이 없는 품목은 삭제됩니다.
  • 카탈로그 업데이트를 요청하는 오류 메시지를 받게 됩니다.

2단계: 공통적인 메시지 매개변수 추가

인터랙티브 개체가 완료되면 메시지를 구성하는 나머지 매개변수인 recipient_type, to, messaging_producttype을 추가합니다. typeinteractive로 설정하는 것을 잊지 마세요.

curl -X  POST https://graph.facebook.com/v19.0/FROM_PHONE_NUMBER/messages \
 -H 'Authorization: Bearer ACCESS_TOKEN' \
 - d '{
  "messaging_product": "whatsapp",
  "recipient_type": "individual",
  "to": "PHONE_NUMBER",
  "type": "interactive",
  "interactive": {
  // INTERACTIVE OBJECT GOES HERE    
}'

모든 사용 가능한 매개변수를 보려면 참고 자료, 메시지를 참조하세요.

3단계: 메시지 엔드포인트에 요청 보내기

1단계와 2단계에서 만든 JSON 개체를 사용하여 /PHONE_NUMBER_ID/messages 엔드포인트로 POST 호출을 보냅니다. 메시지가 성공적으로 전송되면 다음과 같은 응답을 받습니다.

{
  "messaging_product": "whatsapp",
  "contacts": [{
      "input": "PHONE_NUMBER",
      "wa_id": "WHATSAPP_ID",
    }]
  "messages": [{
      "id": "wamid.ID",
    }]
}

다중 제품 템플릿 메시지

다중 제품 템플릿 메시지를 보내려면 다중 제품 메시지 템플릿이 필요합니다. 템플릿을 만드는 방법과 템플릿 메시지를 통해 보내는 방법을 알아보려면 다중 제품 메시지 템플릿 문서를 참조하세요.