예약 리마인더 자동화: 전날 문자와 AI 회신 전화로 노쇼 줄이기
예약 리마인더 자동화는 예약 전날 문자로 일정을 알리고, 답장이나 회신 전화로 확정·변경·취소를 받아 예약 시스템에 반영하는 구성입니다. KAT Cloud 채팅 API와 웹훅으로 만드는 방법과 월 비용 계산을 정리했습니다.

예약 리마인더 자동화는 예약 전날 고객에게 일정을 문자로 알리고, 고객의 답장이나 회신 전화로 확정·변경·취소를 받아 예약 시스템에 반영하는 구성입니다. KAT Cloud(캣클라우드)에서는 POST /chat으로 리마인더를 보내고, 답장은 MESSAGE_RECEIVED 웹훅으로 받으며, 같은 070 번호로 걸려 오는 회신 전화는 음성 AI가 받아 CALL_COMPLETED 웹훅으로 결과를 넘깁니다. 이 글은 특정 업체 사례가 아니라 병원·미용실·정비소처럼 예약제로 운영하는 곳을 가정한 설계 예시입니다.
리마인더 업무, 왜 손이 많이 가나
예약제로 운영하는 곳은 예약 시간에 손님이 오지 않으면 그 시간을 그대로 잃습니다. 그래서 많은 곳이 전날 오후에 직원이 다음 날 예약자에게 전화나 문자를 돌립니다. 문제는 이 일이 매일 반복되고, 받지 않는 고객에게 다시 걸고, 변경을 원하는 고객과 일정을 맞추는 일까지 이어진다는 점입니다.
리마인더 한 건에는 다음 일이 들어 있습니다.
- 1다음 날 예약 목록 뽑기
- 2고객마다 일정 알리기
- 3확정·변경·취소 답 받기
- 4변경이면 새 시간 잡기, 취소면 빈자리 채우기
- 5답이 없거나 문자가 실패한 고객에게 다시 연락
1·2번은 완전히 자동화할 수 있고, 3번은 정해진 답장과 회신 전화로 대부분 처리됩니다. 4·5번 중 판단이 필요한 부분만 직원에게 남깁니다.
문자 먼저, 전화는 회신과 예외에만
KAT Cloud에서 전화를 거는 방법은 두 가지입니다. AI 상담원 발신 기능(현재 성능 개선 업데이트 중)과, 자체 서버나 PBX를 SIP 트렁크로 연결해 거는 방식입니다. 이 글에서는 지금 바로 쓸 수 있는 SIP 방식을 기준으로 리마인더의 기본 수단은 문자로 하고, 전화는 두 곳에만 씁니다. 하나는 고객이 문자를 보고 거는 회신 전화로, 070 번호의 음성 AI가 받습니다. 다른 하나는 문자가 실패했거나 답이 없는 고객에게 거는 확인 전화로, 직원이 SIP로 KAT Cloud에 연결한 PBX에서 겁니다. 자체 음성 서버를 SIP로 연결해 확인 전화를 자동으로 거는 구성도 가능하지만, 그 경우 발신 로직은 내 서버가 맡습니다.
| 단계 | 수단 | 처리 주체 |
|---|---|---|
| 전날 안내 | POST /chat 문자 | 예약 시스템(자동) |
| 발송 결과 확인 | SEND_RESULT 웹훅 | 예약 시스템(자동) |
| 확정·취소 답장 | MESSAGE_RECEIVED 웹훅 | 예약 시스템(자동) |
| 변경 요청 | 회신 전화 → 음성 AI → CALL_COMPLETED | AI 접수, 시스템·직원 확정 |
| 실패·무응답 | SIP로 연결한 PBX에서 확인 전화 | 직원 |

AI가 받는 회신 전화
회신 전화의 용건은 대부분 "시간을 바꾸고 싶다"입니다. AI는 기존 예약을 확인하고 희망 날짜·시간대를 받아 변경 요청으로 접수합니다. 확정은 예약 시스템이 빈자리를 확인한 뒤 문자로 알립니다. 시술·진료 내용 상담이나 취소 수수료 문의처럼 판단이 필요한 질문은 AI→직원 연결로 그룹 멤버에게 넘깁니다. 병원 예약 접수 전체 흐름은 병·의원 예약 전화 AI에서 다룹니다.

음성 모델은 이 글에서 분당 30원인 Gemini 3.1 Flash Live로 계산합니다. 회신 전화는 짧고 용건이 정해져 있어 분당 10원인 Qwen3.8 Omni Flash Realtime도 후보입니다. 응대 지침과 모델 선택은 KAT Cloud 콘솔에서 설정합니다.
KAT Cloud로 구성하기
- 1리마인더 발송: 예약 시스템이 전날 정해진 시각에 다음 날 예약 목록을 읽고, 고객마다
POST /chat-room으로 채팅방 ID를 받은 뒤POST /chat으로 보냅니다.externalMessageId에 예약 ID를 넣어 재시도 때 같은 리마인더가 두 번 가지 않게 합니다. 요청 형식은 채팅 API로 문자 보내기에 있습니다. - 2발송 결과:
SEND_RESULT웹훅의resultStatus가 SMS4100, LMS6600이 아니면 실패로 보고 확인 전화 목록에 올립니다. 결과 코드는 문자 발송 결과 확인에 정리했습니다. - 3답장 처리:
MESSAGE_RECEIVED웹훅에서chatRoomId로 예약을 찾고, 정해진 답을 처리합니다. - 4회신 전화:
CALL_COMPLETED의fromNumber로 예약을 찾고summary에서 희망 일정을 읽어 변경 요청을 만듭니다.
// MESSAGE_RECEIVED: 리마인더 답장 처리
async function onReply(data) {
const appt = await db.findAppointmentByChatRoom(data.chatRoomId);
if (!appt) return;
const answer = data.content.trim();
if (answer === '1') await db.confirm(appt.id);
else if (answer === '3') await db.cancel(appt.id);
else await db.flagForStaff(appt.id, data.content); // '2'나 자유 문장
}리마인더 문구에는 "확정 1, 취소 3 답장, 변경은 이 번호로 전화"처럼 답하는 방법을 적습니다. 답장 1은 확정, 3은 취소로 바로 처리하고, 2나 자유 문장은 회신 전화를 안내하거나 직원 확인으로 넘깁니다. 자유 문장을 LLM으로 분류하는 방법은 수신 문자 자동응답 만들기를 참고하세요. 이벤트 필드는 웹훅 이벤트 문서에 있습니다.
한 달 비용 가늠하기
아래 가정으로 계산합니다. 금액은 모두 부가세 별도입니다.
- 비즈니스 플랜(월 50,000원, 수신 3,000분·발신 400분·SMS 200건 포함)
- 월 예약 2,000건, 리마인더 2,000건과 변경·취소 확정 문자 300건 → SMS 2,300건
- 회신 전화 300건 × 2분 = 600분, 음성 AI가 받음(분당 30원)
- 직원 확인 전화 150건 × 2분 = 300분(PBX에서 SIP로 발신, AI 미사용)
- AI 받아쓰기·요약은 회신 전화 600분에만 적용(각 분당 10원)
- 고객 답장 문자는 계산에 넣지 않음
계산식은 "50,000원 + (2,300 − 200)건 × 10원 + 600분 × 30원 + 600분 × 20원 + 발신 초과분 × 30원"입니다.
| 항목 | 계산 | 금액 |
|---|---|---|
| 비즈니스 플랜 | 월 고정 | 50,000원 |
| 문자 | (2,300 − 200)건 × 10원 | 21,000원 |
| 수신 통화 | 600분, 포함 3,000분 이내 | 0원 |
| 발신 통화 | 300분, 포함 400분 이내 | 0원 |
| 음성 모델 | 600분 × 30원 | 18,000원 |
| 받아쓰기·요약 | 600분 × 20원 | 12,000원 |
| 합계 | 50,000 + 21,000 + 18,000 + 12,000 | 101,000원 |
리마인더 문구가 90바이트(한글 약 45자)를 넘으면 LMS가 됩니다. 2,300건을 모두 LMS 초과 단가(32원)로 잡으면 문자 항목이 73,600원으로 늘어나므로, 문구를 짧게 유지하는 것이 비용에 가장 큰 영향을 줍니다. 고객 답장 문자의 과금 기준은 요금 안내에서 확인하세요.
도입 전에 챙길 점
- 광고와 분리: 리마인더는 예약한 고객에게 보내는 거래 안내입니다. 여기에 할인 쿠폰이나 신상품 소개를 섞으면 광고성 정보 전송 규정이 적용될 수 있으므로 문자를 분리합니다. 실제 적용은 법률 검토가 필요합니다.
- 발송 시각: 늦은 밤이나 이른 아침을 피하고, 예약 시간에 따라 전날 오후나 당일 오전처럼 시각을 나눕니다.
- 문자에 넣지 않을 정보: 진료과목이나 시술 내용처럼 다른 사람이 보면 곤란할 수 있는 정보는 넣지 않고 "내일 15시 예약" 수준으로 씁니다.
- Rate Limit: API는 60초에 1,200건까지 요청을 받습니다. 리마인더 2,000건을 한 번에 보내면 채팅방 생성과 발송을 합쳐 4,000건의 요청이 되므로, 채팅방 ID를 저장해 두고 몇 분에 걸쳐 나눠 보냅니다.
- 녹음 고지: AI가 받는 회신 전화와 직원 확인 전화 모두 첫마디에 녹음 사실을 알립니다.
- 웹훅 누락: 웹훅은 10초 안에 2xx로 응답해야 성공으로 처리되므로 받자마자 큐에 넣습니다. 놓친 통화는
GET /call-history의updatedAfter커서로 다시 가져옵니다.
자주 묻는 질문
예약 리마인더를 전화로 자동 발신할 수 있나요?
KAT Cloud에서 전화를 거는 방법은 AI 상담원 발신 기능(현재 성능 개선 업데이트 중)과, 기존 PBX나 자체 음성 서버를 SIP로 KAT Cloud에 연결해 KAT Cloud 회선으로 거는 방식 두 가지입니다. 지금 바로 전화 리마인더를 걸려면 SIP 방식을 씁니다. 이 글은 문자 리마인더를 기본으로 하고 회신 전화를 AI가 받게 해, 발신 전화는 실패·무응답 고객에게만 남기는 구성입니다.
고객이 리마인더에 "2"나 다른 말로 답하면 어떻게 하나요?
KAT Cloud는 고객 답장을 MESSAGE_RECEIVED 웹훅으로 전달하므로, 서버가 내용을 보고 처리 방식을 정합니다. "1"·"3"처럼 정해진 답은 자동 처리하고, "2"나 자유 문장은 회신 전화를 안내하거나 직원 확인 목록에 올리는 방식을 권합니다.
알림톡으로 리마인더를 보낼 수도 있나요?
KAT Cloud는 SMS·LMS·MMS와 함께 알림톡·브랜드메시지를 지원하며, 요금표에도 알림톡 단가가 있습니다. 이 글은 API 문서에 요청 형식이 나온 채팅 API 문자 발송을 기준으로 설명했으므로, 알림톡 연동 방식은 도입 문의로 확인하는 것이 좋습니다.
- #예약 리마인더
- #노쇼 방지
- #문자 자동화
- #AI 전화



