sgkstudio.
엔지니어링

카카오톡챗봇, 비즈니스 채널 없인 못 붙는 이유 — 검사기가 놓친 문장 한 줄

카카오톡챗봇은 카카오톡 채널에 붙이는 순간부터 비즈니스 채널 전환을 전제로 하는데, 그 전제를 뒤집은 문장이 고객에게 나갈 회신과 제안서 마지막 장에 그대로 실려 있었다. 자동 검사 도구는 이미 카카오 관련 비용·무료 주장을 잡는 규칙을 3개나 갖고 있었는데도 이 문장을 통과시켰다. 원인은 두 가지가 겹쳐 있었다 — 참고 문서를 한 층 얕게 읽은 것과, 검사 규칙이 잡던 문장 형태와 실제 문장의 형태가 서로 달랐던 것이다.

2026-09-15미확인 상태였던 사실 8건을 정리하는 과정에서 발견 — 회신과 제안서 마지막 장(7쪽)에 동시 게재검사 스크립트의 금지 문장 목록 직접 확인 — 카카오 비용·무료 관련 규칙 이미 3개 존재자체 시험 — 위반 문장을 심은 문서에서 23건 검출(기준 22건 이상), 정상 문서에서 0건회신·제안서·서식 3종 검사 5개 항목 재실행 전량 통과, 이전 발송분(2026년 8월 13일)도 재검사

카카오톡챗봇, 사진 기능만 빼면 비즈니스 채널 없이도 될까?

미확인 상태로 남아 있던 사실 8건을 하나씩 정리하던 중이었다. 그중 한 건을 확인하다가 고객에게 나갈 회신과 제안서 마지막 장에 이미 틀린 문장이 실려 있는 것을 발견했다.

사진 기능을 빼면 전환 없이도 나머지는 그대로 동작합니다.

이 문장은 카카오톡챗봇을 카카오톡 채널에 붙일 때 사진 전송 기능만 포기하면 비즈니스 채널로 전환하지 않고도 나머지 기능이 그대로 동작한다는 뜻으로 읽힌다. 문제는 전제 자체다. 챗봇을 카카오톡 채널에 연결하는 일 자체에 비즈니스 채널 전환이 필요하다 — 사진 기능과는 관계가 없다.

더 나쁜 건 이 문장이 한 곳에만 있지 않았다는 점이다. 고객에게 보내는 회신과 별도로 만든 제안서 7쪽 양쪽에 같은 취지의 문장이 동시에 실려 있었다. 둘 다 발송 전 자동 검사를 이미 통과한 상태였다.

회신과 제안서는 원래 같은 내용을 담고 있어야 하는 자료다. 그런데 둘 다 같은 발송 전 자동 검사를 이미 따로 통과한 상태였다는 점이 오히려 께름칙했다. 검사를 통과했다는 사실과 두 자료의 내용이 서로 일치하는지는 별개였고, 이 불일치는 뒤에서 다시 다룬다.

제일 먼저 의심한 것 — 검사 규칙이 이 주장을 아예 몰랐던 게 아닐까

발송 전 자동 검사를 이미 통과한 문장이 틀렸다는 걸 확인하고 나니, 가장 먼저 떠오른 의심은 하나였다. 카카오 비용이나 무료 여부에 관한 주장을 잡는 검사 규칙 자체가 애초에 없었던 게 아닐까 하는 것이었다.

이 의심이 그럴듯했던 이유가 있다. 같은 날 새로 확정한 사실도 있었고(챗봇에 올라가는 콘텐츠는 별도 검수 절차가 없다는 사실), 새로 만든 사실 항목도 두 건 있었다. 검사 규칙 목록이 아직 한창 채워지는 중이었으니, 이번 문장을 잡는 규칙이 그 목록에 없는 채로 남아 있었을 가능성이 낮지 않아 보였다.

규칙 목록을 처음부터 끝까지 직접 펼쳐 셌다

의심을 확인하는 방법은 간단했다. 검사 스크립트 안에 있는 금지 문장 목록을 처음부터 끝까지 펼쳐서, 카카오와 비용·무료가 함께 나오는 문장을 잡는 규칙이 몇 개나 있는지 직접 셌다.

  • 규칙 1 — '카카오' 뒤에 '무료' 또는 '비용이 들지/발생하지 않는다'가 나오는 문장
  • 규칙 2 — 반대로 '무료' 또는 '비용이 들지/발생하지 않는다'가 먼저 나오고 뒤에 '카카오'가 나오는 문장 (어순이 바뀐 경우)
  • 규칙 3 — '카카오' 뒤에 '비용·요금이 전혀 발생하지 않습니다' 또는 '없습니다'로 끝나는 문장

셋 다 확인됐다. 카카오 관련 비용·무료 주장을 잡는 규칙은 어순까지 바꿔가며 이미 3개나 있었다. 게다가 이 규칙들은 카카오톡챗봇 공식 문서 전체를 처음부터 끝까지 훑어(문서 47쪽 전수 확인) 만든 것이었다 — 대충 만든 목록이 아니었다.

이 검사 도구는 원래 사실을 조회하고 회신 문서를 확인하는 용도로 만든 것이다. 사실 하나를 번호로 찾아보는 기능, 고객에게 그대로 옮겨 써도 되는 문장만 골라 보여주는 기능, 확인한 지 오래돼서 다시 봐야 하는 사실을 알려주는 기능까지 여덟 가지 기능이 한 도구 안에 들어 있다. 그중 회신 초안 파일 하나를 넣으면 금지 문장에 걸리는지 바로 알려주는 기능이 이번에 쓴 확인 수단이었다.

이 도구가 잡는 것은 비용·무료 주장만이 아니다. 고객사를 '귀사'라고 부르는 대신 업체명을 쓰게 하는 규칙, '실제로 만들어 봤다'처럼 우리 쪽이 한 행위를 신뢰 근거로 내세우는 문장을 걸러내는 규칙도 같은 목록 안에 있다. 규칙의 폭 자체는 넓은 편이었다는 뜻이다.

기존 규칙 3개가 잡는 문장 형태와 실제 제안서 문장 '비용은 없는 구성입니다'의 형태 비교표
규칙은 3개였지만 실제 문장의 서술 형태는 어느 규칙과도 안 맞았다

'규칙이 없다'는 가설은 틀렸다

결론부터 말하면 처음 의심은 틀렸다. '카카오 비용·무료 주장을 잡는 규칙이 없어서 놓쳤다'는 가설은 규칙 목록을 직접 세어 본 순간 반증됐다. 규칙은 3개나 있었고, 심지어 카카오라는 단어가 문장 앞에 오든 뒤에 오든 잡히도록 두 방향으로 설계돼 있었다.

규칙이 이미 충분히 갖춰져 있었다면, 남는 설명은 하나뿐이다. 문제는 규칙의 존재가 아니라 규칙이 실제로 무엇을 '잡는' 문장인지였다. 있는 규칙과 실제로 걸러야 했던 문장 사이에 어딘가 틈이 있었다는 뜻이다.

진짜 원인 하나 — 8월부터 갖고 있던 참고 문서를 한 층 얕게 읽었다

사실 목록에는 8월부터 이미 카카오 쪽 배포 문서 원문이 들어 있었다. "운영 채널과 개발 채널이 모두 동일한 비즈 앱에 연결"된다는 문장이었다. 이 문장을 '채널이 2개 필요하다'는 뜻으로만 읽고 넘어간 게 첫 번째 원인이다.

한 층 더 들어가면 다른 문장이 있었다. 카카오 개발자 공식 문서에는 "비즈 앱과 비즈니스 채널로 각각 전환해야 합니다"라는 문장이 따로 있다. 비즈 앱(챗봇을 만들고 관리하는 계정)과 비즈니스 채널(실제 상담이 오가는 채널)은 서로 다른 개념이고, 둘 다 각각 전환하는 절차를 거쳐야 한다는 뜻이다.

이 문서 층을 안 가서 '챗봇을 채널에 붙일 때 비즈니스 채널 전환이 필요한가'라는 사실이 계속 확인 안 된 상태로 남아 있었다. 확인 안 된 상태에서 작성자가 문장을 뽑다 보니, '전환 없이도 동작한다'는 잘못된 결론이 그대로 굳어졌다.

같은 조사 과정에서 다른 문제도 함께 드러났다. 카카오톡챗봇 채널을 개발용 앱에 연결하는 심사에는 영업일로 3일에서 5일이 걸리는데, 이 기간이 작업 일정 계획에서 통째로 빠져 있었다. 착수부터 완료까지 걸리는 기간 자체를 실제보다 짧게 잡고 있었다는 뜻이다.

채널을 전환하는 심사에는 서류도 필요하다. 사업자등록증 같은 첨부서류를 내야 하는데, 신청하는 사람이 어떤 유형인지, 대표자 본인인지 대행인지에 따라 요구되는 서류가 달라진다. 이 부분까지 한 번에 정리해 두지 않으면 신청 단계에서 서류를 다시 준비해야 한다.

문서 층을 한 단계 더 안 가서 사실이 확인 안 된 상태로 남고, 그 상태에서 잘못된 문장이 작성돼 회신과 제안서에 실리기까지의 흐름도
한 층을 더 가지 않아 확인 안 된 상태가 그대로 발송 문장이 됐다

진짜 원인 둘 — 검사 규칙이 다른 문장 형태를 보고 있었다

기존 규칙 3개는 전부 '비용이 들지 않습니다', '요금이 발생하지 않습니다', '비용이 없습니다'처럼 문장이 딱 잘라 끝나는 형태만 잡도록 만들어져 있었다. 그런데 제안서에 실제로 실린 문장은 '비용은 없는 구성입니다'였다 — '없다'로 바로 끝나지 않고 '없는 구성'이라는 말을 하나 더 만든 뒤 '입니다'로 마무리하는, 다른 문장 구조였다.

문장 구조가 다르니 3개 규칙 중 어느 것도 이 문장을 잡지 못했다. 게다가 이 문장은 '비용은'으로 시작했는데, 이 형태를 잡는 규칙을 처음 추가할 때 조사를 '는' 한 형태로만 적고 '은'은 빠뜨린 적이 있었다. 같은 뜻이라도 조사 하나만 바뀌면 규칙을 통과했다.

기존 규칙 3개와 실제로 걸린 문장의 형태 차이
구분문장이 끝나는 형태
규칙 1·2…비용이 들지/발생하지 않는다
규칙 3…비용·요금이 전혀 발생하지 않습니다 / 없습니다
실제 제안서 문장…비용은 없는 구성입니다

세 규칙 모두 문장이 '않는다/없습니다'로 바로 끝나는 형태만 잡았다. 제안서 문장은 '없는 구성입니다'로 끝나 어느 규칙에도 걸리지 않았다.

왜 아무도 미리 못 봤을까. 검사 규칙을 스스로 시험하는 자료 — 일부러 위반 문장을 심어 둔 문서 — 에도 이 문장 형태의 예시가 한 줄도 없었다. 스스로 시험하는 절차가 있어도 그 시험 자료 자체에 구멍이 있으면, 구멍은 구멍인 채로 계속 통과한다.

이런 규칙이 애초에 필요했던 이유도 짚어 둘 만하다. 카카오 쪽 비용이 정확히 얼마인지는 공식 문서에 값 자체가 없다. '요금이 명시된 문서가 없다'는 것까지만 확인됐을 뿐, 무료라고 단정할 근거는 어디에도 없다. 그래서 '무료' 또는 '비용이 없다'는 취지의 문장이 나가려 하면 일단 걸러서 사람이 다시 보게 만드는 것이 이 규칙들의 목적이다.

고친 방법 — 문서 층과 검사 규칙을 같이 고쳤다

먼저 사실 목록부터 고쳤다. '챗봇을 채널에 붙일 때 비즈니스 채널 전환이 필요한가'라는 항목을 '확인 안 됨'에서 '확인됨'으로 뒤집었고, '카카오톡챗봇 콘텐츠에는 별도 검수 절차가 없다'는 사실도 문서 47쪽 전수 확인을 거쳐 새로 확정했다. 관련 사실 2건도 새로 목록에 추가했다.

콘텐츠 검수가 없다는 사실은 카카오 쪽에서 챗봇 대화 내용을 미리 걸러 주지 않는다는 뜻이기도 하다. 내보내는 문장이 맞는지는 만든 쪽이 스스로 책임져야 한다는 뜻이라, 발송 전 자동 검사가 왜 필요한지가 한 번 더 확인된 셈이다.

검사 규칙에는 2종을 새로 넣었다. 하나는 '없는 구성입니다'처럼 서술형으로 끝나는 문장을 잡는 규칙이고, 다른 하나는 조사가 '은'이든 '는'이든 상관없이 걸리도록 일반화한 규칙이다. 그리고 이 두 규칙이 실제로 작동하는지 스스로 확인할 수 있도록, 시험 자료에 위반 예시를 1줄 추가했다.

고객에게 나갈 회신은 여덟 번째 판으로, 제안서는 7쪽을 동시에 고쳐 두 자료가 서로 다른 말을 하지 않도록 맞대봤다. 맞대보는 과정에서 회신과 제안서가 서로 다른 내용을 담고 있던 부분도 두 군데 더 나왔다 — 전달이 실패했을 때의 안내는 제안서에만, 개발용 채널 안내는 회신에만 있었다. 양쪽에 똑같이 넣어 맞췄다.

확인이 끝나지 않은 사실 8건 중에서는, '이번 건과는 무관하다'고 못박은 3건과 실제로 채널을 연결한 뒤 다시 재야 하는 2건으로 나눠 처리했다. 정리 결과 확인 안 된 채 남은 항목은 8건에서 6건으로 줄었고, 나머지는 전부 메모로 남겨 뒀다.

수정 결과 요약 — 확인 안 된 사실 8건에서 6건으로 감소, 회신·제안서·서식 3종 검사 5개 항목 전량 통과, 채널 연결 심사 영업일 3일에서 5일이 일정에 반영됨
문서 층 하나와 검사 규칙 하나, 두 곳을 같이 고쳤다

같은 실수를 막는 장치는 무엇을 확인하는가?

스스로 시험하는 절차를 문서 한 종류가 아니라 두 종류로 나눴다. 일부러 위반 문장을 심은 문서와, 위반이 하나도 없는 정상 문서다. 위반 문서에서는 최소 22건 이상이 걸려야 통과이고, 정상 문서에서는 0건이 나와야 통과다. 둘 중 하나만 맞아서는 안 된다.

이유는 간단하다. 무조건 다 통과시키기만 하는 고장 난 검사기도 정상 문서에서는 0건을 낸다. 정상 문서 결과 하나만 보고는 검사기가 실제로 작동하는지, 그냥 아무것도 안 잡고 있는지 구분할 수 없다. 위반 문서와 정상 문서를 같이 재야 두 가지가 구분된다.

검사에 문장이 걸리면 그냥 '틀렸다'고만 하지 않는다. 어떤 문장이 왜 걸렸는지 이유를 같이 보여주고, 고객에게 대신 쓸 수 있는 문장이 있으면 그 자리에서 함께 제안한다. 사람이 규칙을 외워서 고치는 대신, 도구가 이유와 대안을 같이 내놓는 구조를 그대로 유지했다.

자체 시험 결과 막대그래프 — 위반을 심은 문서에서 23건 검출(기준 22건 이상), 정상 문서에서 0건 검출
위반 문서에서는 걸리고 정상 문서에서는 안 걸려야 검사기가 정상이다

고친 뒤 다시 돌린 결과는 위반 문서 23건 검출, 정상 문서 0건이었다. 이어서 회신·제안서·서식 3종에 걸친 검사 5개 항목을 전부 다시 돌려 전량 통과를 확인했고, 이전에 이미 내보낸 자료(2026년 8월 13일 발송분)에도 같은 검사를 다시 돌려 이번 수정이 예전 자료를 오히려 잘못 걸리게 만들지는 않았는지도 같이 확인했다.

카카오톡챗봇 도입을 검토 중이라면 이번 사례에서 확인해 둘 점이 있다. 비즈니스 채널 전환은 선택이 아니라 전제이고, 채널을 연결하는 심사에는 영업일로 3일에서 5일이 걸리며, 사업자등록증 같은 서류도 미리 준비해야 한다. '전환 없이 바로 된다'거나 '비용이 전혀 없다'는 설명을 들으면 그 자체로 한 번 더 확인이 필요한 지점이라는 뜻이다.

이 목록과 검사 절차를 처음 만든 과정은 챗봇 상담 자동 검수, 위반만 잡으면 충분한 줄 알았다에 있다. 카카오톡챗봇 도입을 검토 중이라면 상담에서 구체적인 구성을 물어봐도 된다.

같은 방식으로 우리 업무를 재보고 싶다면

이 글에 쓴 계측·판정·자동화는 저희가 실제로 매일 돌리는 방식 그대로입니다. 어떤 작업을 자동화할 수 있고 어디를 사람이 잡아야 하는지, 현재 업무 흐름을 놓고 같이 짚어 드립니다.

새 글이 올라오면 알려 드립니다

이런 계측 기록을 새로 쓰면 메일로 한 통 보냅니다. 광고나 판촉은 보내지 않습니다.