신자가 해당 채널에서 메시지 수신에 동의하고 정상적인 WhatsApp 계정을 보유한 경우 WhatsApp으로 발송하세요. 그 외의 모든 경우에는 문자로 발송하거나 SMS로 대체 발송합니다. WhatsApp Cloud API에서 메시지를 받을 수 없는 번호로 메시지를 보내면 error 131026으로 실패하며, 이는 발송 응답이 아닌 상태 웹훅(webhook)을 통해서만 확인할 수 있습니다. 가장 신뢰할 수 있는 패턴은 수신 동의 시 각 고객의 채널 동의 여부를 기록하고, 발송 전 법적으로 허용된 범위를 확인한 뒤, WhatsApp 상태 실패 시 SMS가 트리거되도록 설정하는 것입니다. BroadNet은 명시적인 대체 발송 규칙과 함께 하나의 Omnichannel API 뒤에서 두 채널을 모두 운영합니다.
핵심 요약
- Error 131026은 Meta가 메시지 전송에 실패했음을 의미합니다. Meta는 세 가지 가능한 이유를 나열합니다: 해당 번호가 WhatsApp 번호가 아니거나, 수신자가 최신 약관에 동의하지 않았거나, 수신자가 구버전 WhatsApp을 사용하는 경우입니다.
- 성공적인 API 응답은 요청이 수락되었음을 의미할 뿐입니다. 전송 결과는 나중에 상태 웹훅을 통해 전송됨, 전송 완료, 읽음 또는 실패로 보고되며, 실패 시에는 오류 배열이 함께 제공됩니다.
- WhatsApp 계정을 보유하고 있다고 해서 누군가에게 메시지를 보낼 권한이 있는 것은 아닙니다. Meta의 정책에 따라 해당 사용자의 번호와 귀하의 메시지를 듣겠다는 수신 동의가 필요합니다.
- 24시간 고객 서비스 시간 외에는 WhatsApp에서 템플릿 메시지만 수락합니다(그렇지 않으면 error 131047 발생).
- 라인 유형은 첫 번째 필터입니다. 유선 전화번호나 수신자 부담 번호로 문자를 발송하면 보통 전송에 실패하며, 메시지 비용은 그대로 발생합니다.
- 대체 발송은 발송 플랫폼에서 기본 규칙으로 설정할 때 가장 효과적입니다. 고객이 선택한 경우 WhatsApp을 우선적으로 사용하고, 전송 실패 상태이거나 WhatsApp 수신 동의가 없는 경우 SMS를 사용합니다.
WhatsApp 에러 131026은 무엇을 의미하나요?
Meta의 Cloud API 에러 참조에 따르면, 131026은 "메시지를 전달할 수 없음"을 의미합니다. Meta에서는 세 가지 가능한 이유를 제시합니다: "수신자 전화번호가 WhatsApp 전화번호가 아님", 수신자가 "새로운 서비스 약관 및 개인정보 처리방침에 동의하지 않음", 또는 수신자가 "이전 버전의 WhatsApp을 사용 중임"입니다. Meta에서 제안하는 해결 방법은 "WhatsApp이 아닌 통신 방식"을 사용하는 사용자에게 귀사의 비즈니스 번호로 메시지를 받을 수 있는지 확인하거나, 최신 약관에 동의하거나, 앱을 업데이트하도록 요청하는 것입니다.
다시 말해, 131026은 코드의 버그가 아니라 라우팅 신호입니다. 일회용 비밀번호, 전송 결과 보고 또는 예약 알림의 경우, Meta에서 언급하는 WhatsApp이 아닌 통신 방식은 보통 SMS를 의미하며, 고객 지원 티켓을 접수한 후가 아니라 자동으로 발송되어야 합니다.
메시지 ID가 생성되었다고 해서 메시지가 전송 성공했다는 의미가 아닌 이유는 무엇인가요?
발송은 비동기 방식으로 이루어집니다. API는 요청을 수락하고 메시지 ID를 반환하며, 이후 발생하는 상황은 웹훅을 통해 전달됩니다. Meta의 메시지 상태 웹훅은 다음 값들을 보고합니다:
| 상태 | Meta 설명 | 조치 사항 |
|---|---|---|
| 발송됨 | Meta 서버에서 메시지가 성공적으로 발송되었습니다 | 전송 성공 또는 실패 대기 |
| 전송 완료 | WhatsApp 사용자의 기기로 메시지가 성공적으로 전송되었습니다 | 대체 발송 불필요 |
| 읽음 | 사용자 기기의 오픈 채팅 스레드에 메시지가 표시되었습니다 | 대체 발송 불필요 |
| 실패 | 사용자 기기로 메시지를 전송하거나 전달하는 데 실패함 | 읽음 오류[].code; 시간 민감형 메시지의 경우 SMS로 대체 발송 |
실패 상태에는 숫자 코드, 제목, 상세 필드 및 오류 참조 링크가 포함된 errors 배열이 포함됩니다. 코드를 로그에 기록하세요. 이 코드는 재시도할지, 채널을 전환할지, 또는 템플릿을 수정해야 하는지를 알려줍니다. 동일한 로직이 SMS에도 적용되며, 통신사로부터 받은 전송 결과 보고(DLR)가 상태 웹훅의 역할을 수행합니다.
WhatsApp 계정이 있다는 이유만으로 상대방에게 메시지를 보낼 수 있나요?
아니요. WhatsApp Business 메시징 정책에 따르면 귀하는 다음의 경우에만 WhatsApp을 통해 연락할 수 있습니다: (a) 고객이 귀하에게 휴대폰 번호 또는 사용자 이름을 제공한 경우, 그리고 (b) 수신자가 귀하로부터 후속 메시지 또는 전화를 받기를 원한다는 수신 동의를 받은 경우입니다. 또한 WhatsApp 내외에서 발생하는 모든 수신 거부 요청을 준수해야 합니다.
따라서 채널 선택은 발송 시점이 아닌 수신 동의 단계부터 시작됩니다. 고객에게 어떤 채널을 허용하는지 확인하고, 해당 선택 사항을 타임스탬프와 함께 저장한 뒤, 고객이 동의한 채널로만 메시지를 발송하세요. 현지 법률에 따라 추가적인 규정이 적용될 수 있습니다. 한 가지 예시로 UAE PDPL SMS 및 WhatsApp 마케팅 가이드를 참조하십시오.
24시간 윈도우와 오류 131047은 무엇인가요?
자유 형식의 WhatsApp 메시지는 고객이 귀하에게 마지막 메시지를 보낸 시점으로부터 24시간 이내에만 발송할 수 있습니다. 이 시간을 초과하면 Cloud API는 "수신자가 발신번호로 마지막 응답을 보낸 후 24시간이 경과했습니다"라는 의미의 131047 오류를 반환하며, Meta의 해결 방법은 "수신자에게 대신 템플릿 메시지를 발송하는 것"입니다. WhatsApp 24시간 제한은 무엇인가를 참조하세요.
대체 발송 설계를 위해 이는 두 가지 서로 다른 실패 상황을 의미합니다. 131047 오류는 WhatsApp에서 승인된 템플릿으로 전환하여 해결할 수 있는 반면, 131026 오류는 채널을 전환하여 해결해야 합니다. 재시도 로직에서 이 두 경우를 다르게 처리하십시오.
어떤 채널을 먼저 사용해야 하나요?
시장마다 정해진 단일 정답은 없으며, 메시지의 종류와 각 고객이 동의한 내용에 따라 달라집니다. 대부분의 경우 수신자별 규칙 세트를 적용하면 됩니다:
| 상황 | 첫 번째 채널 | 대체 발송 |
|---|---|---|
| 고객이 WhatsApp 수신 동의를 했으며 이전에 메시지를 보낸 적이 있음 | WhatsApp (24시간 경과된 템플릿) | 전송 실패 시 문자 발송 |
| 고객이 WhatsApp 수신 동의를 했으나 아직 내역이 없음 | WhatsApp 템플릿 | 전송 실패 또는 설정된 시간 내에 상태가 확인되지 않을 시 문자 발송 |
| WhatsApp 수신 동의 기록 없음 | 문자 | 지원되는 경우 OTP 음성 |
| 이전 WhatsApp 메시지 전송 실패 (오류 코드: 131026) | 문자 | 다음 연락 시 고객에게 WhatsApp 확인을 요청하세요 |
| 번호가 유선전화 또는 수신자 부담 번호입니다 | 문자가 아님: 전송 실패 가능성이 높습니다 | 음성 통화 또는 휴대폰 번호 요청 |
| 고객이 RCS, Telegram 또는 Viber에 수신 동의함 | 메시지를 발송할 수 있는 채널 | SMS |
시장별 보기(WhatsApp, RCS 또는 SMS가 주도하는 경우)를 확인하려면 SMS vs WhatsApp vs RCS 채널 가이드를 읽어보세요.
발송 전 무엇을 확인할 수 있나요?
첫 번째 확인 사항은 앱이 아니라 회선 유형입니다. 일반 전화번호나 수신자 부담 번호로 보내는 문자는 보통 전송에 실패하며, 이 경우에도 메시지 비용이 발생합니다. 현재 프라이빗 프리뷰 단계인 BroadNet 브랜드의 MobileValidate를 사용하면 회선 유형, 현재 통신사, 그리고 번호 이동을 한 번호의 경우 원래 통신사 정보를 확인할 수 있습니다. BroadNet HLR Lookup은 실시간 네트워크 상태를 추가로 제공하여 해당 회선이 현재 통신 가능한 상태인지 알려줍니다.
다른 채널에 수신 동의한 고객의 경우, MobileValidate을(를) 통해 해당 번호가 Telegram, Viber 또는 Zalo에 등록되어 있는지 실시간으로 확인할 수 있으며, 대량 작업 시에는 Signal, iMessage, RCS, LINE 또는 Botim를 확인할 수 있습니다. RCS 확인 기능을 통해 가능한 경우 단말기 플랫폼 정보도 보고받을 수 있습니다. 허용 가능한 사용 정책에 따라 이러한 확인 작업은 사기 방지 및 수신 동의한 연락처에 대한 채널 선택 목적으로만 제한됩니다. 전체 확인 항목 목록은 mobilevalidate.com에서 확인할 수 있습니다. MobileValidate는 독립적인 서비스이며, 확인 대상이 되는 플랫폼과 제휴, 보증 또는 후원을 받지 않습니다. 플랫폼의 명칭은 해당 확인 항목이 무엇을 다루는지 설명하기 위한 용도로만 사용됩니다.
WhatsApp 자체를 위해서는 Meta가 제공하는 신뢰할 수 있는 신호가 중요합니다. 즉, 고객의 수신 동의, 고객의 답장, 그리고 마지막 메시지의 전송 성공 또는 실패 상태입니다. 고객별로 마지막 WhatsApp 결과를 저장하여 다음 발송을 제어하세요.
BroadNet은 대체 발송을 어떻게 처리합니까?
BroadNet은 공식 Meta Business Solution Provider이며, 하나의 플랫폼에서 WhatsApp Business API, SMS, RCS 및 음성을 운영합니다. Omnichannel API은 SMS, WhatsApp, RCS 및 음성에 걸친 명시적인 대체 발송 규칙이 포함된 단일 요청을 받아 통합된 전송 결과 보고를 반환하므로, 애플리케이션에 추가 코드를 작성하지 않고도 WhatsApp 상태 실패 시 SMS로 대체 발송할 수 있습니다.
- 인증번호의 경우, OTP API은 SMS, WhatsApp, 음성 및 플래시 콜에 걸쳐 자동 대체 발송을 지원하며, MyOTP.App은 하나의 계정으로 SMS, WhatsApp 및 Telegram을 모두 지원합니다.
- 시간 제한이 있는 메시지의 경우 시간 제한을 설정하세요. 전송 성공 또는 실패 상태가 제때 도착하지 않으면 대체 발송을 진행합니다.
- 24시간 이외의 시간대에 필요할 수 있는 모든 메시지 유형에 대해 승인된 템플릿을 보유하세요.
- 131026 이후에는 고객이 다시 확인하기 전까지 해당 채널을 차단하여, 반복되는 실패에 대한 비용이 발생하지 않도록 하세요.
더 많은 패턴은 당사의 멀티 채널 페일오버 전략을 읽어보세요.
수신자별 경로 설정 체크리스트는 어떻게 구성되나요?
- 수신 동의 시 고객이 수락한 채널과 날짜, 그리고 동의한 문구를 기록합니다.
- 새 번호의 회선 유형을 확인하고, 유선전화나 수신자 부담 번호인 경우 휴대폰 번호를 요청합니다.
- 국가별 기본 설정에만 의존하지 말고, 고객의 동의 사항과 이력을 바탕으로 첫 번째 채널을 선택합니다.
- 24시간 제한 시간 외에는 WhatsApp 템플릿만 전송합니다.
- 상태 웹훅과 전송 결과 보고를 모니터링하며, 전송 실패 및 시간 초과 발생 시 대체 발송 트리거로 처리합니다.
- 시간이 중요한 메시지의 경우 SMS로 대체 발송하며, 메시지와 함께 WhatsApp 에러 코드를 기록합니다.
- 매주 실패 사례를 검토합니다. 특정 세그먼트에서 131026 에러가 증가한다면 이는 대개 유효하지 않은 번호이거나 수신 동의가 누락되었음을 의미합니다.
자주 묻는 질문
WhatsApp 에러 131026은 무엇을 의미하나요?
"메시지를 전달할 수 없습니다." Meta는 세 가지 가능한 이유를 나열합니다: 번호가 WhatsApp 번호가 아니거나, 수신자가 최신 서비스 약관 및 개인정보 처리방침에 동의하지 않았거나, 수신자가 이전 WhatsApp 버전을 사용하는 경우입니다.
131026 에러로 실패한 메시지를 다시 시도해야 하나요?
WhatsApp으로 즉시 재전송하지 마세요. 대신 시간 민감도가 높은 콘텐츠는 문자로 전송하고, 다른 채널을 통해 고객에게 WhatsApp 번호를 확인하도록 요청하세요.
WhatsApp API로부터 받은 200 응답이 메시지가 전달되었음을 의미하나요?
아니요. 이는 요청이 수락되었음을 의미합니다. 전송 결과는 상태 웹훅을 통해 전송됨, 전달됨, 읽음 또는 실패로 보고됩니다.
고객의 계정이 있는 것을 알고 있다면 WhatsApp을 통해 고객에게 메시지를 보낼 수 있나요?
아니요. Meta의 정책에 따라, 해당 사용자가 귀하에게 번호를 제공하고 WhatsApp에서 귀하의 비즈니스로부터 메시지를 받는 것에 수신 동의를 해야 합니다.
error 131047은 무엇인가요?
고객이 마지막으로 회신한 지 24시간이 경과했습니다. 자유 형식 메시지 대신 승인된 템플릿 메시지를 보내세요.
WhatsApp의 대체 발송 채널은 무엇으로 설정해야 하나요?
대부분의 경우 모든 휴대폰 번호로 도달할 수 있는 문자가 적합합니다. 일회용 비밀번호(OTP)의 경우, 플랫폼이 지원한다면 음성이 추가 대체 수단이 됩니다.
문자를 보내기 전에 번호를 확인할 수 있나요?
네, 법적 근거가 있는 범위 내에서 가능합니다. 먼저 회선 유형을 확인하세요. 수신 동의를 한 고객의 경우, MobileValidate는 Telegram, Viber, RCS와 같은 앱을 통해 등록 여부를 확인할 수 있으며, BroadNet HLR Lookup을 통해 실시간 네트워크 상태를 확인할 수 있습니다.
BroadNet은 SMS 대체 발송을 어떻게 진행하나요?
Omnichannel API는 단일 요청 내에서 대체 발송 규칙을 적용하며, OTP API는 SMS, WhatsApp, 음성 및 플래시 콜 간에 자동으로 대체 발송을 수행합니다.
모든 출처는 2026년 9월 27일에 확인되었습니다. 당사의 편집 기준을 참조하세요.
출처
- 개발자용 Meta — WhatsApp Cloud API 오류 코드(131026, 131047), 2026년 9월 27일 접속: developers.facebook.com.
- 개발자용 Meta — 메시지 상태 웹훅 참조, 2026년 9월 27일 접속: developers.facebook.com.
- WhatsApp Business 메시징 정책 — 수신 동의 및 수신 거부 요구 사항, 2026년 9월 27일 접속: whatsappbusiness.com/policy.
- MobileValidate — 서비스 참조 및 통신사 조회, 최종 업데이트 2026년 9월 25일: mobilevalidate.com/docs/services, mobilevalidate.com/services/carrier-lookup.
- MobileValidate — 허용 가능한 사용 정책, 2026년 9월 27일 접속: mobilevalidate.com/legal/acceptable-use.
