콘텐츠로 건너뛰기

옵트인 및 옵트아웃

WhatsApp 옵트인과 옵트아웃을 잘 처리하는 것은 매우 중요합니다. WhatsApp은 전화번호 품질 등급을 모니터링하며, 등급이 낮으면 메시지 한도가 줄어들 수 있습니다.

높은 품질 등급을 유지하는 한 가지 방법은 사용자가 비즈니스를 차단하거나 신고하지 않도록 하는 것입니다. 이를 위해 고품질 메시징(사용자에게 가치를 제공하는 것 등)을 제공하고, 메시지 빈도를 조절하며, 고객이 향후 커뮤니케이션 수신을 옵트아웃할 수 있도록 하면 됩니다.

WhatsApp 구독 상태에 대한 크로스채널 개요는 구독 상태를 참조하세요. 이 페이지에서는 옵트인 및 옵트아웃 설정 방법과 “정규식” 및 “is” 수정자 간의 차이점을 설명합니다.

옵트인은 외부 소스에서 수집하거나 SMS, 인앱 메시지 및 인브라우저 메시지와 같은 Braze 방법을 통해 수집할 수 있습니다. 옵트아웃은 Braze에서 설정한 키워드와 WhatsApp 마케팅 버튼을 사용하여 처리할 수 있습니다. 옵트인 및 옵트아웃 설정에 대한 안내는 다음 방법을 참조하세요.

옵트인 방법

옵트아웃 방법

Braze WhatsApp 채널의 옵트인 설정

WhatsApp 옵트인을 설정하려면 WhatsApp의 요구 사항을 준수해야 합니다. 또한 Braze에 다음 정보를 제공해야 합니다.

인바운드 WhatsApp 메시지를 받아도 사용자가 WhatsApp 구독 그룹에 자동으로 구독되지는 않습니다. 사용자 업데이트 단계, 웹훅 또는 API 호출로 구독 상태를 명시적으로 업데이트해야 합니다.

Meta는 옵트인 문구에 다음 사항을 요구합니다.

  • 해당 사용자가 귀사로부터 메시지를 수신하는 데 옵트인한다는 사실을 명확하게 밝힐 것
  • 비즈니스 이름을 포함할 것(“메시지를 보내드리겠습니다”와 같은 일반적인 표현은 사용하지 않음)
  • 해당 지역의 관련 법률을 준수할 것

Meta는 WhatsApp 전용 동의 대신 이러한 요구 사항을 충족하는 일반 메시징 동의도 허용합니다. 하지만 Braze는 사용자가 어디에서 메시지를 받게 될지 알 수 있도록 채널별 WhatsApp 동의를 수집할 것을 권장합니다.

WhatsApp 구독 상태는 발신 전화번호와 연결된 구독 그룹에 적용됩니다. 같은 번호를 공유하는 마케팅, 유틸리티 또는 기타 사용 사례를 구분하지 않습니다. 예를 들어 사용자를 구독 그룹에서 구독 취소하면 메시지 카테고리와 관계없이 해당 번호에서 보내는 메시지로 그 사용자를 타겟팅할 수 없습니다.

사용 사례별로 동의를 따로 관리하려면 다음 방법 중 하나를 선택하세요.

  • 사용 사례마다 별도의 WhatsApp 전화번호와 구독 그룹을 사용합니다.
  • 전화번호 하나를 사용하고, 사용 사례별 동의를 커스텀 속성에 저장한 다음, 동의하지 않은 사용자를 관련 Campaign 또는 Canvas 오디언스에서 제외합니다.

커스텀 속성은 WhatsApp 구독 그룹을 대체하지 않습니다. Braze를 통해 메시지를 받으려면 사용자가 여전히 해당 전화번호의 구독 그룹에 구독되어 있어야 합니다.

Braze 외부의 옵트인 방법

앱 또는 웹사이트(계정 등록, 결제 페이지, 계정 설정, 신용카드 단말기)에서 Braze로 전달하는 방법입니다.

이미 이메일이나 문자 메시지에 대한 마케팅 동의를 받고 있는 곳이라면 WhatsApp에 대한 섹션을 추가하세요. 사용자가 옵트인하면 external_id, 전화번호, 업데이트된 구독 상태가 필요합니다. 이를 위해 Braze 설치 구성에 따라 /subscription/status/set 엔드포인트를 활용하거나 SDK를 사용하세요.

외부에서 구축한 옵트인 목록

이전에 WhatsApp을 사용한 적이 있다면 WhatsApp 요구 사항에 따라 옵트인한 사용자 목록을 이미 구축했을 수 있습니다. 이 경우 CSV를 업로드하거나 API를 사용하여 다음 정보를 Braze로 가져오세요.

고객 지원 WhatsApp 채널의 아웃바운드 메시지

고객 지원 채널에서 문제가 해결된 후 마케팅 메시지 수신에 옵트인할지 묻는 자동 메시지로 후속 조치를 취하세요. 이 기능은 사용 중인 고객 지원 도구의 기능 제공 여부와 사용자 정보를 보관하는 위치에 따라 달라집니다.

  1. WhatsApp Business 전화번호의 메시지 링크를 제공합니다.
  2. 고객이 “예”라고 답장하여 옵트인 의사를 표시할 수 있도록 빠른 답장 작업을 제공합니다.
  3. 커스텀 키워드 트리거를 설정합니다.
  4. 어떤 방법을 선택하든 다음 작업으로 경로를 마무리해야 할 가능성이 높습니다.

인바운드 WhatsApp 메시지

고객이 WhatsApp 번호로 인바운드 메시지를 보내도록 합니다.

새 채널에서 사용자에게 확인 메시지를 보낼지 여부에 따라 Canvas 또는 Campaign으로 설정할 수 있습니다.

  1. 인바운드 메시지를 실행 기반 전달 트리거로 사용하는 Campaign을 만듭니다.
  2. 웹훅 Campaign을 만듭니다. 웹훅 예시는 구독 그룹을 참조하세요.

Braze 기반 옵트인 방법

SMS 메시지

Canvas에서 다음 방법 중 하나를 사용하여 고객에게 WhatsApp 메시지 수신에 옵트인할지 묻는 Campaign을 설정합니다.

  • 고객 Segment: 미국 외 지역의 마케팅 그룹 구독자
  • 커스텀 키워드 트리거 설정

고객 프로필의 구독 상태를 업데이트하는 방법은 구독 그룹에서 확인하세요.

인앱 또는 인브라우저 메시지

고객에게 WhatsApp 사용에 옵트인하도록 요청하는 인앱 메시지 또는 브라우저 내 팝업을 만듭니다.

HTML 인앱 메시지와 JavaScript “브릿지”를 사용하여 Braze SDK와 연동하세요. 반드시 WhatsApp 구독 그룹 ID를 사용해야 합니다.

전화번호 수집 양식

인앱 메시지용 드래그 앤 드롭 편집기에서 전화번호 수집 양식 템플릿을 사용하여 사용자 전화번호를 수집하고 WhatsApp 구독 그룹을 확장하세요.

Braze WhatsApp 채널의 옵트아웃 설정

WhatsApp “제안 및 공지” 토글

WhatsApp은 앱 설정에서 사용자가 마케팅 메시지 수신을 거부할 수 있는 “제안 및 공지”(Offers and Announcements) 토글을 제공합니다. 이 토글은 Braze 구독 그룹과 독립적으로 작동합니다.

  • Braze 구독 그룹은 Braze 통합(API, 환경설정 센터 또는 SDK)을 통해 관리되며, 메시징 대상 사용자를 제어합니다.
  • WhatsApp의 기본 토글은 Meta가 제어하며, Braze 외부의 플랫폼 수준에서 적용됩니다.

이 두 계층은 설계상 자동으로 동기화되지 않습니다. 사용자가 WhatsApp에서 “제안 및 공지” 토글을 끄면, 사용자의 Braze 구독 상태가 “구독됨”(Subscribed)으로 표시되더라도 Meta가 플랫폼 수준에서 마케팅 메시지 전달을 차단합니다. 사용자의 환경설정은 전달 시점에 반영됩니다.

일반 옵트아웃 키워드

특정 단어로 메시지를 보낸 사용자가 향후 메시징을 수신 거부할 수 있도록 Campaign 또는 Canvas를 설정할 수 있습니다. Canvases는 옵트아웃이 성공적으로 완료되었음을 확인하는 후속 메시지를 포함할 수 있어 특히 유용합니다.

1단계: “인바운드 WhatsApp 메시지” 트리거로 Canvas 만들기

WhatsApp 인바운드 메시지를 보낸 사용자를 진입시키는 실행 기반 Canvas 항목 단계

키워드 트리거를 선택할 때 “Stop” 또는 “No Message”와 같은 단어를 포함하세요. 이 방법을 선택하는 경우, 고객이 옵트아웃 단어를 알고 있도록 해야 합니다. 예를 들어 최초 옵트인을 받은 후 “이 메시지 수신을 거부하려면 언제든지 ‘Stop’이라고 메시지를 보내세요.”와 같은 후속 응답을 포함하세요.

메시지 본문이 "STOP" 또는 "NO MESSAGE"인 WhatsApp 인바운드 메시지를 보내는 메시지 단계

2단계: 고객 프로필 업데이트

구독 그룹에 설명된 방법 중 하나를 사용하여 고객 프로필을 업데이트합니다.

마케팅 옵트아웃 선택

WhatsApp 메시지 템플릿 작성기에서 “마케팅 옵트아웃” 옵션을 포함할 수 있습니다. 이 옵션을 포함할 때는 항상 해당 템플릿이 구독 그룹 변경을 위한 후속 단계가 있는 Canvas에서 사용되도록 해야 합니다.

  1. “마케팅 옵트아웃” 빠른 답장이 포함된 메시지 템플릿을 만듭니다.
    푸터 옵션이 "마케팅 옵트아웃"인 메시지 템플릿

    마케팅 옵트아웃 버튼을 구성하는 섹션

  2. 이 메시지 템플릿을 사용하는 Canvas를 만듭니다.

  3. 앞의 예시와 동일한 단계를 따르되, 트리거 텍스트를 “STOP PROMOTIONS”로 설정합니다.

  4. 구독 그룹에 설명된 방법 중 하나를 사용하여 사용자의 구독 상태를 업데이트합니다.

옵트인 및 옵트아웃 워크플로 설정

다음 두 가지 방법으로 WhatsApp의 “START” 및 “STOP” 키워드 응답 워크플로를 구성할 수 있습니다.

사용자 업데이트 단계

사용자 업데이트 단계를 사용하면 사용자가 구독 그룹의 전화번호로 키워드를 보낼 때 사용자의 전화번호를 WhatsApp 구독 그룹에 추가할 수 있습니다.

사용자 업데이트 단계를 사용하면 사용자의 전화번호가 구독 그룹에 추가되기 전에는 사용자가 Canvas의 다음 단계로 진행하지 않으므로 경합 조건을 방지할 수 있습니다. 또한 다른 방법보다 설정 단계가 적기 때문에 Braze는 일반적으로 이 방법을 권장합니다.

  1. 실행 기반 단계 Send a WhatsApp Inbound Message로 Canvas를 생성합니다. Where the message body를 선택하고 Is에 “START”를 입력합니다.

메시지 본문이 "START"인 WhatsApp 메시지 단계.

  1. Canvas에서 Set Up User Update 단계를 생성하고 Action에서 Advanced JSON Editor를 선택합니다.

    작업이 "Advanced JSON Editor"로 설정된 사용자 업데이트 단계.

  2. User Update object에 다음 JSON 페이로드를 입력하고, XXXXXXXXXXX를 구독 그룹 ID로 바꿉니다.
{
    "attributes": [
        {
            "subscription_groups": [
                {
                    "subscription_group_id": "XXXXXXXXXXX",
                    "subscription_state": "subscribed"
                }
            ]
        }
    ]
}
  1. 이어서 WhatsApp 메시지 단계를 추가합니다.

    Canvas의 사용자 업데이트 단계.

고려 사항

Braze는 사용자 업데이트 단계 요청을 일괄 처리하므로 업데이트 완료 속도가 달라질 수 있습니다. 구독 업데이트 직후 확인 메시지를 바로 보내야 하는 시간에 민감한 옵트인 플로의 경우, 사용자 업데이트 단계 대신 웹훅 방법을 사용하세요.

두 번째 WhatsApp Campaign을 트리거하는 웹훅 Campaign

웹훅 Campaign은 사용자가 구독 그룹의 전화번호로 키워드를 보낼 때 사용자의 전화번호를 WhatsApp 구독 그룹에 추가한 후, 두 번째 Campaign으로의 진입을 트리거할 수 있습니다.

  1. 실행 기반 단계 Send a WhatsApp Inbound Message로 Campaign 또는 Canvas를 생성합니다. Where the message body를 선택하고 Is에 “START”를 입력합니다.

메시지 본문이 "START"인 WhatsApp 메시지 단계.

  1. Campaign 또는 Canvas에서 웹훅 메시지 단계를 생성하고 Request Body를 Raw Text로 변경합니다.

웹훅용 메시지 단계.

  1. Webhook URL에 고객의 엔드포인트 URL을 입력하고, 그 뒤에 엔드포인트 링크 campaigns/trigger/send를 붙입니다. 예를 들면 https://dashboard-02.braze.eu/campaigns/trigger/send와 같습니다.

"Compose Webhook" 섹션 아래의 웹훅 URL 필드.

  1. 원시 텍스트에 다음 JSON 페이로드를 입력하고 XXXXXXXXXXX를 구독 그룹 ID로 바꿉니다. 두 번째 Campaign을 생성한 후에는 campaign_id를 바꿔야 합니다.
{
    "campaign_id": "XXXXXXXXXXX",
    "recipients": [
        {
            "external_user_id": "{{${user_id}}}",
            "attributes": {
                "subscription_groups": [
                    {
                        "subscription_group_id": "XXXXXXXXXXX",
                        "subscription_state": "subscribed"
                    }
                ]
            }
        }
    ]
}
  1. WhatsApp Campaign(두 번째 Campaign)을 생성하고 트리거를 API로 설정합니다. 이 campaign_id를 첫 번째 Campaign의 JSON 페이로드에 반드시 복사하세요.

고려 사항

  • Canvas API 트리거 JSON 페이로드 내에서의 속성 업데이트는 아직 지원되지 않으므로, WhatsApp 응답 메시지에 대해서는 WhatsApp Campaign만 트리거할 수 있습니다(2단계 참조).
  • WhatsApp 템플릿을 응답 메시지로 보내려면 승인을 받아야 합니다. 빠른 응답을 하려면 인바운드 메시지 트리거가 같은 Campaign 또는 Canvas 안에 있어야 하기 때문입니다. 사용자 업데이트 단계를 사용하면 Meta 승인 없이 빠른 응답 메시지를 보낼 수 있습니다.

“regex” 수정자와 “is” 수정자의 차이점 이해하기

이 표에서는 수정자가 작동하는 방식을 보여주기 위해 STOP을 예시 트리거 단어로 사용합니다.

수정자 트리거 단어 동작
Is STOP 대소문자와 관계없이 “stop”이 하나의 완전한 단어로 사용된 경우를 감지합니다. 예를 들어 “stop”은 감지하지만 “please stop”은 감지하지 않습니다.
Matches regex STOP 정확히 대문자 “STOP”으로 사용된 경우를 모두 감지합니다. 예를 들어 “STOP”과 “PLEASE STOP”은 감지하지만 “stop”은 감지하지 않습니다.
Matches regex (?i)STOP(?-i) 대소문자와 관계없이 “STOP”이 사용된 경우를 모두 감지합니다. 예를 들어 “stop”, “please stop”, “never stop sending me messages”를 모두 감지합니다.
New Stuff!