whatsapp-api
WhatsApp Business API
WhatsApp Business API는 Meta가 제공하는 엔터프라이즈급 메시징·통화 API예요. 이 API를 활용하면 비즈니스가 WhatsApp 사용자에게 템플릿 메시지와 알림을 보내고, 고객과의 대화를 자동화하며, 주문·결제·고객 지원까지 한 플랫폼에서 처리할 수 있어요. 수익 성장을 견인하고 운영 효율을 높이며 탁월한 고객 경험을 만들고 싶다면 Meta의 공식 API 문서를 기반으로 시작하는 걸 추천해요.
출처: 문서
본문
WhatsApp Business 플랫폼의 핵심 구성 요소부터 살펴볼게요. 문서는 크게 메시지(Message), 템플릿(Template), Webhooks, 클라우드 API(Cloud API), 인증 및 권한 부여 영역으로 나뉘어요.
메시지 보내기
플랫폼에서 제공하는 메시지 유형은 다양해요. 텍스트, 이미지, 동영상, 오디오, 문서, 위치, 연락처, 스티커 같은 기본 메시지부터 인터랙티브 메시지(버튼, 리스트)와 카탈로그 메시지(단일/다중 제품)까지 지원해요. 메시지를 보낼 때는 Graph API의 messages 엔드포인트를 호출하면 돼요.
아래는 requests(Python)로 템플릿 메시지를 보내는 예시예요. GRAPH_API_TOKEN과 상대방 전화번호, 메시지 템플릿 이름을 지정해 실제로 전송해 볼 수 있어요.
import requests
url = "https://graph.facebook.com/<API_VERSION>/<WHATSAPP_BUSINESS_PHONE_NUMBER_ID>/messages"
headers = {
"Authorization": "Bearer <ACCESS_TOKEN>",
"Content-Type": "application/json",
}
data = {
"messaging_product": "whatsapp",
"to": "<WHATSAPP_USER_PHONE_NUMBER>",
"type": "template",
"template": {
"name": "hello_world",
"language": {"code": "en_US"},
}
}
response = requests.post(url, headers=headers, json=data, timeout=30)
print(response.json())
템플릿(Template) 메시지
WhatsApp은 사용자의 옵트-인 없이 언제든 보낼 수 있는 메시지가 제한돼요. 비즈니스가 먼저 시작하는 대화(예: 마케팅, 유틸리티, 인증)는 반드시 Meta의 승인을 받은 템플릿 메시지로 보내야 해요. 문서에서는 다음 카테고리를 다뤄요.
- 유틸리티(Utility): 주문 확인, 배송 알림, 계정 업데이트 같은 필수 알림
- 인증(Authentication): OTP 같은 로그인 인증 코드, 한 번 눌러서 자동 입력, 제로 탭, 코드 복사
- 마케팅(Marketing): 프로모션, 맞춤 마케팅 템플릿, 쿠폰 코드, 위치 템플릿, 미디어 카드 슬라이드 템플릿
- 서비스(Service): 고객이 시작한 대화에서 쓰는 응답형 메시지
템플릿은 이름, 언어, 구성 요소(헤더·본문·버튼·푸터)로 정의되며, 품질 평가·검토·일시 중단 규칙도 문서에서 확인할 수 있어요.
Webhooks
Webhooks는 WhatsApp Business API의 핵심 구성 요소예요. 고객이 메시지를 보내거나 사용자가 버튼을 눌렀을 때, 메시지 상태가 바뀌었을 때 등 실시간 이벤트를 비즈니스 서버로 전달하는 역할을 해요. 발신 API로만 메시지를 보내면 수신(대화)을 처리할 수 없으니, 반드시 Webhooks 엔드포인트를 만들고 구독해서 처리해야 해요.
문서에서는 Webhooks 엔드포인트 만들기, 테스트 엔드포인트, 콜백 URL 재정의 방법과 함께 messages, account_update, message_template_status_update 같은 다양한 이벤트 참고 자료를 제공해요.
클라우드 API(Cloud API)
클라우드 API는 Meta가 호스팅하는 WhatsApp Business 솔루션이에요. 별도의 서버나 인프라를 꾸리지 않고도 비즈니스 전화번호로 메시지를 주고받고 통화를 할 수 있어요. Graph API 엔드포인트만 호출하면 되니까 온보딩이 간단하고, 규모에 따라 확장하기도 쉬워요.
이 외에도 플랫폼에는 다음 API가 포함돼요.
- WhatsApp용 마케팅 메시지 API: 클라우드 API에 없는 신기능과 자동 최적화를 제공해요.
- 비즈니스 관리 API: WhatsApp Business 계정과 자산(전화번호, 템플릿, 크레딧)을 프로그래밍 방식으로 관리해요.
인증 및 권한 부여
API를 호출하려면 액세스 토큰이 필요하고, 각 기능마다 필요한 권한(permissions) 이 달라요. 문서의 '플랫폼 정보', '액세스 토큰', '권한' 섹션에서 토큰 발급 방식과 부여할 권한 범위를 확인할 수 있어요.
가격(Pricing)
가격은 메시지가 대화(conversation) 단위로 측정되는 구조예요. 마케팅·유틸리티·인증·서비스 카테고리별로, 그리고 대화를 누가 시작했는지에 따라 요금이 달라져요. 현재 구조에 대한 자세한 내용은 문서의 '가격' 섹션과 '대화 기반 가격' 설명을 참고하는 게 정확해요.