BIZCLIENTv5.2.5

비즈뿌리오 BIZCLIENT

공통 사항

BIZCLIENT 아키텍처 — 큐 테이블 기반 동작 모델과 테이블 구조

동작 모델

고객사 애플리케이션BIZ_MSG큐 테이블 (고객사 DB)BIZCLIENT 모듈비즈뿌리오 서버38300 / 38400 outbound① INSERT② 폴링전송③ 결과 수신④ 업데이트 (STATUS=2 · CALL_STATUS)⑤ 완료 후 이동BIZ_LOG_YYYYMM월별 로그 테이블

  1. 고객사 애플리케이션이 발송 데이터를 biz_msg 테이블에 INSERT (STATUS = 0, 발송 대기)
  2. BIZCLIENT 모듈이 큐를 폴링하여 비즈뿌리오 서버로 메시지 전송
  3. 비즈뿌리오 서버가 발송 결과를 BIZCLIENT 모듈로 회신
  4. BIZCLIENT 모듈이 biz_msgCALL_STATUS 를 기록하고 STATUS = 2 로 변경 (비즈뿌리오 서버가 biz_msg 를 직접 갱신하지 않음)
  5. 처리 완료된 레코드는 월별 로그 테이블 BIZ_LOG_YYYYMM 으로 이동

자동 생성되는 테이블

테이블 생성 권한이 있다면 BIZCLIENT 가 다음 테이블들을 자동 생성:

테이블 용도
biz_msg 메시지 발송 큐 (STATUS=2 까지 데이터 존재)
BIZ_LOG_YYYYMM 월별 로그 — 발송 완료 데이터 이동
BIZ_RCS RCS 발송 큐 (RCS 사용 시)
BIZ_RCS_LOG_YYYYMM RCS 월별 로그
BIZ_ATTACHMENTS 첨부파일 데이터 (FILE_HANDLING_MODE 설정 시)
BIZ_ATTACHMENTS_LOG_YYYYMM 첨부파일 월별 로그

ℹ️ RCS 사용 활성화 — 기본값에서는 RCS 테이블이 생성되지 않습니다. uds.confMESSAGE_SUPPORT_TYPE = ALL 을 추가해야 RCS 테이블이 생성됩니다.

백업 옵션

옵션 기본값 설명
RCS_BACKUP_OPTION N Y 시 RCS 데이터를 로그 테이블로 이동, 미설정 시 BIZ_RCS 데이터 재사용
ATTACHMENTS_BACKUP_OPTION N 첨부파일 테이블 동작도 동일

테이블 간 관계

biz_msg.RCS_REFKEY  ──참조──▶  BIZ_RCS.REFKEY      (RCS 메시지의 본문/버튼)
biz_msg.CMID + ATTACHED_FILE  ──참조──▶  BIZ_ATTACHMENTS.MSG_KEY + SEQ
                                        (첨부파일 테이블 모드 사용 시)

데이터 식별 키

  • CMID — 고객사가 부여하는 고유 키 (Primary Key, ASCII 문자만, 중복 불가)
  • UMID — 비즈뿌리오 서버가 부여하는 메시지 키 (대체 발송의 매핑 키로도 사용)
  • CINFO — Client Indexed Info, 사내 부서/팀 구분용. bizppurio.com [발송 조회] 의 SUB ID 에 표시

⚠️ CMID 중복 시 발송은 진행되지만 결과 리포트 반영이 정상적이지 않을 수 있습니다. 반드시 고유한 값을 사용하세요.

사전 준비

BIZCLIENT 모듈 도입 전 준비 사항 — 사전 점검 / 설치 / 연동 / 용어.

사전 점검

BIZCLIENT 발송 선결 조건 — 발송 전에 필요한 계정·채널·브랜드 등록

1. 비즈뿌리오 계정

항목 절차
회원 가입 www.bizppurio.com
서비스 사용 승인 요청 전화 1599-9782 / 이메일 bizppurio@daou.co.kr

2. 카카오톡 비즈메시지 (AT/BT 사용 시)

단계 위치
카카오톡 채널 개설 및 비즈니스 채널 신청 카카오 비즈니스
발신프로필 키 생성 비즈뿌리오 사이트
알림톡 템플릿 등록·승인 비즈뿌리오 사이트 (알림톡 사용 시 필수)
브랜드메시지 이미지 등록 KAPI (브랜드메시지에 이미지 삽입 시)

3. RCS (RCS 사용 시)

단계 위치
RCS 브랜드 개설 및 대행사 설정 RCS 비즈센터
RCS 브랜드 등록 비즈뿌리오 사이트
RCS 발신번호 등록 비즈뿌리오 사이트
RCS 템플릿 등록·승인 비즈뿌리오 사이트 (템플릿 사용 시 필수)

설치

BIZCLIENT 설치 및 구동

시스템 요구사항

항목 사양
운영체제 JDK 1.8 이상 운용 가능한 OS
CPU 2 GHz 이상 듀얼코어 또는 그 이상의 코어
메모리 4 GB 이상 RAM 권장
디스크 공간 SMS 100만 건 전송 시 약 400 MB 사용
JDK 1.8 이상
DBMS MySQL / Oracle / MSSQL (정식 지원). Sybase / DB2 / DB2 AS400 / CUBRID / EDB / PostgreSQL (버전 따라 지원)

방화벽 오픈

환경 도메인:포트 방향
운영 bizppurio.com:38300, 38400 Outbound
검수 biztest.ppurio.com:38300, 38400 Outbound (2025-08-14 기준 미지원)

⚠️ 기존 BIZCLIENT 구동 여부 확인 — 한 비즈뿌리오 계정을 여러 클라이언트 모듈에 세팅할 경우 리포트가 분산되어 정상 반영되지 않을 수 있습니다. 하나의 모듈에 하나의 계정 을 권장.

DBMS / JDBC 드라이버

  • DBMS 의 버전에 따라 JDBC 드라이버의 JDK 요구사항이 달라질 수 있음
  • 사용하는 DBMS 에 맞게 JDBC 드라이버 교체 위치: {모듈위치}/lib/jdbc/{드라이버}.jar
  • 낮은 버전의 DBMS 를 지원하기 위해 기본 JDBC 드라이버는 버전이 낮게 세팅됨 — 운영 시 사용하는 DBMS 버전에 맞는 드라이버로 교체 필요
DBMS 비고
Microsoft SQL Server 2008 이상 uds.confDBNAME=MSSQL2005 로 설정 (내부적으로 Microsoft JDBC Driver 4.1 사용, JDK 1.7 이상 필요)

설치 및 구동 (Linux/Unix)

# 1) 업로드한 모듈 압축 해제
unzip biz_client_v5xxx.zip

# 2) 환경 설정 파일 수정: {모듈경로}/config/uds.conf
#    - 계정    : UDS_ID / UDS_PW            (bizppurio.com 계정)
#    - DB 연결 : DBNAME / DBURL / DBUSER / DBPASS
#      예) DBNAME=MYSQL   (MYSQL / MSSQL2005 / ORACLE 등)
#          DBURL=jdbc:mysql://localhost:3306/bizclient

# 3) 시작 / 중지: {모듈경로}/script
cd {모듈경로}/script
./biz_start        # 시작
./biz_stop         # 중지

설치 및 구동 (Windows)

# 1) 업로드한 모듈 압축 해제
unzip biz_client_v5xxx.zip

# 2) 환경 설정 파일 수정: {모듈경로}\config\uds.conf   (Linux 와 동일 — 계정·DB 연결 정보)

# 3) 서비스 등록 / 시작 / 중지: {모듈경로}\bat
cd {모듈경로}\bat
service-install.bat      # Windows 서비스 등록
service-start.bat        # 시작 (서비스 상태가 '시작' 으로 변경)
service-stop.bat         # 중지
service-uninstall.bat    # 서비스 제거

서비스 등록 후 제어판 → 관리도구 → 서비스 → "Daoutech BizClient" 에서도 직접 시작/종료할 수 있습니다.

RCS 발송 활성화 (선택)

기본값은 RCS 미지원. RCS 를 사용하려면 uds.conf 에 다음을 추가:

MESSAGE_SUPPORT_TYPE = ALL

설정 후 BIZCLIENT 를 재시작하면 BIZ_RCS 테이블이 자동 생성됨.

연동

BIZCLIENT 고객시스템 연동 구성biz_msg / BIZ_RCS / BIZ_ATTACHMENTS 테이블의 전체 컬럼 정의

BIZCLIENT 는 고객사 데이터베이스에 큐 테이블을 생성하고, 고객사 애플리케이션이 발송 데이터를 INSERT 하면 모듈이 이를 감지하여 비즈뿌리오 서버로 전송하는 방식으로 동작합니다.

biz_msg 컬럼

공통 컬럼 (모든 메시지 타입)

컬럼 타입 필수 설명 기본값
CMID String(32) Y 데이터 ID, 고유한 값. Primary Key. 기본 ASCII 문자만 (옵션으로 확장 가능)
UMID String(32) N 비즈뿌리오 서버에서 정의한 MESSAGE ID
MSG_TYPE Number(1) Y SMS=0 / FAX=2 / PHONE=3 / MMS=5 / AT=6 / RCS=8 / BT=9 (LMS는 5 + ATTACHED_FILE 비어있을 때) 0
STATUS Number(1) Y 발송 상태 — 발송 용어 — STATUS 참고 0
REQUEST_TIME Datetime Y 데이터 등록 시간 NOW()
SEND_TIME Datetime Y 발송 기준 시간 (예약 발송 시 미래) NOW()
REPORT_TIME Datetime N 단말기 수신 시간
DEST_PHONE String(16) Y 수신번호
DEST_NAME String(32) N 수신자명
SEND_PHONE String(16) Y 발신자번호 (사전 등록 필수)
SEND_NAME String(32) N 발신자명
MSG_BODY String(4000) Y 메시지 내용
CALL_STATUS String(4) N 발송 결과 리포트 (발송 결과 코드 참조)
TEL_INFO String(10) N 통신사 정보 (SKT/KTF/LGT/KKO)
CINFO String(32) N Client Indexed Info — 사내 구분용. 특수기호 \/:*?"<>|. 사용 불가

채널별 전용 컬럼

FAX/MMS 전용

  • SUBJECT String(64) — 제목

AT/BT (브랜드메시지) 전용

  • NATION_CODE String(5) Y — 국가코드 (한국 = 82)
  • SENDER_KEY String(40) Y — 발신프로필 키
  • TEMPLATE_CODE String(64) Y — 템플릿 코드

AT 전용

  • RESPONSE_METHOD String(8) — 발송 방식 (PUSH)

AT 전용 (대체 발송)

AT/BT/RCS 공용 (대체 발송)

  • RE_BODY String(4000) — 대체 발송 메시지 내용
  • RE_PART String(1) — 대체 발송 처리 주체 (C: CLIENT, S: Server)

FAX 전용

  • COVER_FLAG Number(1) — 표지 발송 옵션 (0/1, 기본 0)
  • USE_PAGE Number(2) — 발송 페이지 수 (기본 0)

PHONE 전용

  • SMS_FLAG Number(1) — 실패 시 문자 전송 옵션 (기본 0)
  • REPLY_FLAG Number(1) — 시나리오 답변 기능 (Y:1, N:0, 기본 0)
  • VXML_FILE String(64) — 음성 시나리오 파일 이름
  • USE_TIME Number(4) — 발송 소요 시간 (초, 기본 0)
  • SN_RESULT Number(1) — 설문 조사 응답 값 (0~9, 기본 0)

FAX/PHONE 공용

  • RETRY_CNT Number(4) — 재시도 횟수

MMS/FAX/PHONE/AT 공용

  • ATTACHED_FILE String(1000) — [기본 MODE] 첨부파일명 (여러 개는 \| 구분) / [첨부파일 테이블 MODE] 첨부파일 테이블 KEY

legacy (적용 채널 없음 — 과거 친구톡 전용, v5.2.4 친구톡 제거)

  • USER_KEY String(30) — 옐로아이디 봇 사용자 식별키
  • AD_FLAG String(1) — 광고성 메시지 표기 노출 여부 (Y/N, 기본 Y)

RCS 전용

  • RCS_REFKEY String(32) — BIZ_RCS 테이블의 REFKEY 참조

BIZ_RCS 컬럼

RCS 메시지의 본문·버튼을 별도 테이블에 등록. biz_msg.RCS_REFKEY 가 이 테이블의 REFKEY 를 참조.

컬럼 타입 필수 설명 기본값
REFKEY String(32) Y 테이블 참조키 (Primary Key)
CHATBOT_ID String(40) Y RCS 비즈센터 챗봇 ID
HEADER String(1) Y 메시지 상단 식별 문구 (0: Web 발신, 1: 광고). 통합 RCS 는 0 만 허용
FOOTER String(64) N 메시지 하단 수신거부 문구 (안드로이드 RCS 전용)
MESSAGEBASE_ID String(40) Y RCS 공통 포맷 또는 템플릿 ID (전체 목록은 RCS 발송 페이지 참조)
COPY_ALLOWED String(1) N 복사·공유 메뉴 (Y/N) — 안드로이드 RCS 전용 N
RCS_BODY String(4000) Y 메시지 베이스에서 치환할 파라미터 정보 (JSON)
BUTTONS String(4000) N 메시지에 삽입할 버튼 정보 (JSON)
AGENCY_KEY String(64) N 대행사 Key (2차 대행사인 경우 필수)
BRAND_KEY String(64) Y 브랜드별 제공되는 특수 키

BIZ_ATTACHMENTS 컬럼

FILE_HANDLING_MODE 설정에 따라 생성되는 첨부파일 테이블.

컬럼 타입 필수 설명 기본값
MSG_KEY String(32) Y biz_msg 와 매칭되는 KEY (복합키)
SEQ Number Y 데이터 시퀀스 (복합키)
TYPE String(10) Y 데이터 타입 (FILE / HTTP / JSON) FILE
CONTENTS String(2000) Y 데이터 값 (파일명 / URL / JSONString)

ℹ️ 첨부파일 테이블 사용은 변수가 포함된 웹·앱 링크 처리 등 JSON 파일을 미리 만들기 어려운 경우 유용.

인덱스 권고

  • 메시지 테이블의 CMID 컬럼은 Primary Key 로 자동 설정
  • 로그 테이블은 중복 키 허용 (PK 미설정)
  • 추가 인덱스는 운영 환경에 맞게 자유롭게 추가 가능

용어

BIZCLIENT 발송 용어MSG_TYPE / STATUS / CALL_STATUS / RE_TYPE 정의

메시지 인코딩

메시지 문자열은 KSC 5601 (ISO 10646-1 / Unicode 1.1) 한글 코드에 정의된 문자열입니다.

  • AT, 브랜드메시지(BT), RCS, 국제문자 메시지는 이모지 포함 가능
  • 이동통신 3사 인코딩 범위를 벗어나는 문자는 ? 로 표시되어 전송될 수 있음

메시지 타입별 이모지 발송 가능 여부:

메시지 타입 이모지 발송
SMS
LMS / MMS
알림톡 (AT) · 브랜드메시지 (BT)
RCS
FAX / PHONE

ℹ️ FAX 발송 문서 파일에 입력된 이모지는 정상 발송됩니다.

이모지 데이터 발송 시 DBMS 캐릭터 셋 권장 (로그 테이블은 주기적으로 생성되므로 확인 필요):

DBMS Version Character Set
MySQL / MariaDB 5.5.3 이상 UTF8MB4_GENERAL_CI
Oracle 9i 이상 AL32UTF8
MSSQL SQL Server 2017 이상 Latin1_General_100_CI_AI_SC_UTF8

메시지타입 (MSG_TYPE)

코드 메시지 타입 비고
0 SMS 단문
2 FAX
3 PHONE
5 LMS / MMS LMS 는 ATTACHED_FILE 비어있을 때, MMS 는 첨부 있을 때
6 AT 카카오 알림톡
7 FT 카카오 친구톡 (서비스 종료 — 과거 발송 이력 조회 시에만 노출, v5.2.4 친구톡 제거)
8 RCS
9 BT 카카오 브랜드메시지

발송상태변화 (STATUS)

biz_msg.STATUS 의 정상 발송 흐름은 다음과 같습니다.

0발송 대기7발송 중1발송 후 대기2발송 완료로그 테이블 이동

상태 설명
0 발송 대기 신규 INSERT 시 기본값
7 발송 중 BIZCLIENT 가 비즈뿌리오 서버로 전송 중
1 발송 후 대기 서버 송신 완료, 결과 수신 대기
2 발송 결과 업데이트 결과 수신 완료 → 로그 테이블 이동 대상
3 리포트 재요청 후 대기 결과 재요청 후 대기
11 클라이언트 대체 발송 처리 중 대체 발송 진행 중
13 대체 발송 미설정 상태에서 대체 발송 처리됨 로그테이블 미이동

ℹ️ STATUS=13 이 발생하는 경우 대체 발송 사용 여부 설정을 변경해야 합니다.

대체발송타입 (RE_TYPE)

메시지 타입(AT/BT/RCS)에 따라 최대 2차 대체 발송까지 가능. RE_TYPE 필드에 다음 값을 입력:

AT / BT 발송 시

1차 대체 2차 대체 RE_TYPE
SMS SMS
MMS MMS
RCS R
RCS SMS RS
RCS MMS RM

RCS 발송 시

1차 대체 2차 대체 RE_TYPE
SMS SMS
MMS MMS
AT K
AT SMS KS
AT MMS KM
BT U
BT SMS US
BT MMS UM

Quickstart BIZCLIENT

BIZCLIENT를 설치하고 첫 SMS를 보내는 가장 짧은 경로입니다.

사전 조건

  • 비즈뿌리오 운영 또는 검수 계정 (계정ID·암호)
  • 등록된 발신번호 1개
  • 본인 휴대폰 번호 (수신 테스트용)
  • JDK 1.8 이상이 설치된 서버 (Linux/Unix 또는 Windows)
  • MySQL / Oracle / MSSQL DB 접속 정보 (테이블 생성 권한 포함)
  • 비즈뿌리오 서버로의 outbound: bizppurio.com:38300, 38400

준비가 안 됐다면 사전 준비설치 및 구동 페이지를 먼저 확인하세요.

1. BIZCLIENT 설치

Linux/Unix

# 모듈 압축 해제
unzip biz_client_v5xxx.zip
cd biz_client_v5xxx

# 환경 설정
vi config/uds.conf

uds.conf:

UDS_ID    = bizUserId001               # bizppurio.com 계정
UDS_PW    = mypassword
DBNAME    = MYSQL                    # MYSQL / MSSQL2005 / ORACLE 등
DBURL     = jdbc:mysql://localhost:3306/bizclient
DBUSER    = bizclient
DBPASS    = mydbpassword
# 시작
cd script
./biz_start

Windows

unzip biz_client_v5xxx.zip
notepad config\uds.conf       # 같은 항목 설정
cd bat
service-install.bat
service-start.bat

NOTE: 모듈을 처음 시작하면 BIZ_MSG, BIZ_LOG_YYYYMM 테이블이 자동 생성됩니다. 테이블 생성 권한이 있어야 합니다.

2. SMS 1건 발송

BIZ_MSG 테이블에 INSERT 1번이면 끝입니다.

INSERT INTO biz_msg (
  MSG_TYPE, CMID, REQUEST_TIME, SEND_TIME,
  DEST_PHONE, SEND_PHONE, MSG_BODY
) VALUES (
  0,                                   -- SMS = 0
  'QS-001',                            -- 고유 키 (ASCII)
  NOW(), NOW(),                        -- 등록·발송 시간
  '01012345678',                       -- 수신번호 (본인 번호)
  '07000000000',                       -- 등록된 발신번호
  '비즈뿌리오 BIZCLIENT Quickstart 테스트입니다.'
);

INSERT 직후 BIZ_MSG.STATUS = 0 (발송 대기). BIZCLIENT 모듈이 큐를 폴링하여 수 초 내에 비즈뿌리오 서버로 전송합니다.

WARNING: CMID는 고유해야 합니다. 중복되면 발송은 되지만 결과 리포트 매핑이 누락될 수 있습니다.

3. 발송 결과 확인

STATUS 진행

SELECT CMID, STATUS, CALL_STATUS, REQUEST_TIME, REPORT_TIME
FROM biz_msg
WHERE CMID = 'QS-001';
STATUS 의미
0 발송 대기 — 모듈이 픽업 전
7 발송 중 — 비즈뿌리오 서버로 전송 중
1 발송 후 대기 — 결과 수신 대기
2 발송 완료 — 결과 업데이트, 곧 로그 테이블로 이동

자세한 상태 흐름은 발송 용어 — STATUS 참고.

CALL_STATUS

발송 완료(STATUS = 2)되면 CALL_STATUS 컬럼에 결과 코드가 기록됩니다.

CALL_STATUS 의미
4100 단말기 전달 성공
4400~ 음영 지역, 단말기 전원 꺼짐 등
4430 / 4431 스팸 차단

전체 코드는 발송 결과 코드 참고.

로그 테이블 이동

STATUS = 2인 데이터는 다음 폴링 주기에 월별 로그 테이블로 이동합니다.

SELECT CMID, CALL_STATUS, REPORT_TIME
FROM biz_log_202604       -- BIZ_LOG_YYYYMM
WHERE CMID = 'QS-001';

트러블슈팅

증상 원인·해결
STATUS=0에서 멈춤 모듈이 구동 중인지 확인 (./biz_start / Windows 서비스)
STATUS=0에서 멈춤 (모듈은 구동) DB 접속 정보(uds.conf DBURL/DBUSER/DBPASS) 확인
STATUS=2인데 CALL_STATUS 비어있음 통상 1~5분 내 갱신. 5분 이상이면 비즈뿌리오 [발송 조회]에서 직접 확인
STATUS=13 대체 발송 미설정 상태에서 대체 발송 → 비즈뿌리오에 대체 발송 사용 가능 설정 요청
CALL_STATUS=9020 발송 시간 24시간 초과 — SEND_TIME 확인
CALL_STATUS=9026 블랙리스트 차단

자세한 진단은 BIZCLIENT 발송상태변화·발송 결과 코드 참고.

메시지 전송

BIZCLIENT 메시지 전송biz_msg 큐 테이블 INSERT 방식 발송.

세부 채널별 컬럼·예시·제약은 아래 POST /bizclient/biz_msg 페이지로 들어가서 확인하세요. 우측 Request samples 탭에서 채널별 SQL 을 확인할 수 있습니다.

sql/bizclient/biz_msg/sms

SMS

SMS 채널 — biz_msg 테이블 INSERT 방식으로 발송합니다.

MSG_TYPE = 0

SMS 단문 문자 메시지를 biz_msg 테이블 INSERT 로 발송. EUC-KR 90바이트 이하.

biz_msg 컬럼 (SMS)

컬럼 타입 필수 설명 기본값
MSG_TYPE number(1) Y SMS = 0 0
CMID string(32) Y 데이터 ID (Primary Key, ASCII)
REQUEST_TIME datetime Y 데이터 등록 시간 NOW()
SEND_TIME datetime Y 발송 기준 시간 (예약 시 미래) NOW()
DEST_PHONE string(16) Y 수신번호
SEND_PHONE string(16) Y 발신번호 (사전 등록 필수)
MSG_BODY string(4000) Y 메시지 내용 (90바이트 이하)
DEST_NAME string(32) N 수신자명
SEND_NAME string(32) N 발신자명
CINFO string(32) N Client Indexed Info (특수기호 \/:*?"<>|. 사용 불가)

제한사항

  • 본문 90바이트 초과 시 LMS 자동 전환 없음 — 호출 측에서 명시
  • 첨부 파일 미지원 (MMS 섹션 참고)
  • 광고성 메시지는 (광고)/수신거부 표기 필수
SQL
INSERT INTO biz_msg (
  MSG_TYPE, CMID, REQUEST_TIME, SEND_TIME,
  DEST_PHONE, SEND_PHONE, MSG_BODY
) VALUES (
  0, '201XXXXXXXXX', NOW(), NOW(),
  '01012345678', '0212341234',
  '본 메시지는 SMS 테스트 메시지 입니다.'
);
응답
200INSERT 성공 시 `STATUS=0` (발송 대기) 로 큐에 적재. BIZCLIENT 모듈이 폴링 → `STATUS=7` (발송 중) → `1` (발송 후 대기) → `2` (발송 완료). `CALL_STATUS` 컬럼에 [결과 코드](#tag/BizclientCodes) 기록.
sql/bizclient/biz_msg/lms

LMS

LMS 채널 — biz_msg 테이블 INSERT 방식으로 발송합니다.

MSG_TYPE = 5

장문 문자 메시지 (제목 + 본문). EUC-KR 본문 최대 2000바이트, 제목 최대 64바이트.
LMS와 MMS는 동일 MSG_TYPE 을 공유하며 ATTACHED_FILE 컬럼이 비어 있으면 LMS로 발송.

biz_msg 컬럼 (LMS)

컬럼 타입 필수 설명
MSG_TYPE number(1) Y LMS = 5 (MMS와 공유)
CMID string(32) Y 데이터 ID (Primary Key, ASCII)
REQUEST_TIME datetime Y 데이터 등록 시간 (NOW())
SEND_TIME datetime Y 발송 기준 시간 (예약 시 미래, NOW())
DEST_PHONE string(16) Y 수신번호
SEND_PHONE string(16) Y 발신번호 (사전 등록 필수)
SUBJECT string(64) N 제목 (최대 64바이트)
MSG_BODY string(4000) Y 본문 (최대 2000바이트)
DEST_NAME string(32) N 수신자명
SEND_NAME string(32) N 발신자명
CINFO string(32) N Client Indexed Info (특수기호 \/:*?"<>|. 사용 불가)
SQL
INSERT INTO biz_msg (
  MSG_TYPE, CMID, REQUEST_TIME, SEND_TIME,
  DEST_PHONE, SEND_PHONE,
  SUBJECT, MSG_BODY
) VALUES (
  5, '201XXXXXXXXX', NOW(), NOW(),
  '01012345678', '0212341234',
  'LMS 제목', '본 메시지는 LMS 테스트 메시지 입니다.'
);
응답
200INSERT 성공 시 `STATUS=0` (발송 대기) 로 큐에 적재. BIZCLIENT 모듈이 폴링 → `STATUS=7` (발송 중) → `1` (발송 후 대기) → `2` (발송 완료). `CALL_STATUS` 컬럼에 [결과 코드](#tag/BizclientCodes) 기록.
sql/bizclient/biz_msg/mms

MMS

MMS 채널 — biz_msg 테이블 INSERT 방식으로 발송합니다.

MSG_TYPE = 5 (+ ATTACHED_FILE)

이미지 첨부 멀티미디어 메시지. LMS 컬럼 + ATTACHED_FILE. 본문은 선택 (이미지만 발송 가능).

ℹ️ 여러 첨부 파일은 | 문자로 구분해 ATTACHED_FILE 한 컬럼에 입력. 첨부파일 테이블 모드 사용 시 이 컬럼에는 첨부파일 테이블 KEY를 입력. 이미지 파일 업로드·경로/테이블 모드는 첨부파일 관리 (FILE_HANDLING_MODE) 참고.

biz_msg 컬럼 (MMS)

컬럼 타입 필수 설명
MSG_TYPE number(1) Y MMS = 5 (LMS와 공유)
CMID string(32) Y 데이터 ID (Primary Key, ASCII)
REQUEST_TIME datetime Y 데이터 등록 시간 (NOW())
SEND_TIME datetime Y 발송 기준 시간 (예약 시 미래, NOW())
DEST_PHONE string(16) Y 수신번호
SEND_PHONE string(16) Y 발신번호 (사전 등록 필수)
SUBJECT string(64) N 제목 (최대 64바이트)
MSG_BODY string(4000) N 본문 (이미지만 발송 시 생략 가능)
ATTACHED_FILE string(1000) N 첨부파일 경로 (여러 개는 | 로 구분) 또는 첨부파일 테이블 KEY
DEST_NAME string(32) N 수신자명
SEND_NAME string(32) N 발신자명
CINFO string(32) N Client Indexed Info (특수기호 \/:*?"<>|. 사용 불가)

첨부 제약 (BIZCLIENT)

  • 파일당 60 KB 이하
  • 첨부 최대 3개
SQL
INSERT INTO biz_msg (
  MSG_TYPE, CMID, REQUEST_TIME, SEND_TIME,
  DEST_PHONE, SEND_PHONE,
  SUBJECT, MSG_BODY, ATTACHED_FILE
) VALUES (
  5, '201XXXXXXXXX', NOW(), NOW(),
  '01012345678', '0212341234',
  'MMS 제목', '본 메시지는 MMS 테스트 메시지 입니다.',
  'image1.jpg|image2.jpg'
);
응답
200INSERT 성공 시 `STATUS=0` (발송 대기) 로 큐에 적재. BIZCLIENT 모듈이 폴링 → `STATUS=7` (발송 중) → `1` (발송 후 대기) → `2` (발송 완료). `CALL_STATUS` 컬럼에 [결과 코드](#tag/BizclientCodes) 기록.
sql/bizclient/biz_msg/rcs

RCS

RCS 채널 — biz_msg 테이블 INSERT 방식으로 발송합니다.

MSG_TYPE = 8

통신사 RCS 메시지 (안드로이드 RCS / 통합 RCS). 발송 전 본문/버튼을 별도 테이블에 등록한 뒤 발송 요청.

사전 준비

  • RCS 비즈센터(RBC) 에서 챗봇 ID, 브랜드 키 발급
  • 사용할 MESSAGEBASE_ID 결정 — 목록·카드 유형별 선택 방법은 RCS 연동 규격 참고
  • 2023.08.01 이후 잘못된 agencykey / brandkey 는 실패 처리

발송은 BIZ_RCS(본문·버튼) 등록 후 biz_msg(RCS_REFKEY 로 연결)에 INSERT 하는 2단계 구조입니다.

ℹ️ BIZ_RCS.BUTTONS 의 외부 키는 대문자 BUTTONS 이지만, JSON 내부 키는 소문자 suggestions / action 사용 (대소문자 구분).

BIZ_RCS 컬럼

컬럼 타입 필수 설명
REFKEY string(32) Y RCS 본문 식별 키 (Primary Key)
CHATBOT_ID string(40) Y RCS 비즈센터 챗봇 ID
HEADER string(1) Y 메시지 상단 식별 (0=Web / 1=광고)
FOOTER string(64) N 메시지 하단 수신거부 문구
MESSAGEBASE_ID string(40) Y RCS 공통 포맷 또는 템플릿 ID
COPY_ALLOWED string(1) N 복사/공유 메뉴 (Y/N, 기본 N)
RCS_BODY string(4000) Y 메시지 베이스 치환 파라미터 (JSON)
BUTTONS string(4000) N 버튼 정보 (JSON)
AGENCY_KEY string(64) N 대행사 Key (2차 대행사 필수)
BRAND_KEY string(64) Y 브랜드별 제공되는 특수 키

RCS 상세 규격

MESSAGEBASE_ID 목록·카드 유형별 글자수·통합 RCS·RCS_BODY·media·BUTTONS 규격은 RCS 연동 규격 을 참고하세요.

biz_msg 컬럼 (RCS, BIZ_RCS 등록 후 사용)

컬럼 타입 필수 설명
MSG_TYPE number(1) Y RCS = 8
CMID string(32) Y 데이터 ID (Primary Key, ASCII)
REQUEST_TIME datetime Y 데이터 등록 시간 (NOW())
SEND_TIME datetime Y 발송 기준 시간 (예약 시 미래, NOW())
RCS_REFKEY string(32) Y BIZ_RCS.REFKEY 참조
DEST_PHONE string(16) Y 수신번호
SEND_PHONE string(16) Y 발신번호
RE_TYPE string(3) N 대체발송 타입
RE_BODY string(4000) N 대체발송 본문
RE_PART string(1) N 대체발송 처리 주체 (C/S)
CINFO string(32) N Client Indexed Info — 사내 구분용. 특수기호 \/:*?"<>|. 사용 불가

대체 발송

RCS 미수신 단말은 SMS/MMS/AT/BT 자동 전환 (1차/2차 대체 가능).

SQL
INSERT INTO BIZ_RCS (
  REFKEY, CHATBOT_ID, HEADER, FOOTER, MESSAGEBASE_ID,
  AGENCY_KEY, BRAND_KEY, RCS_BODY, BUTTONS
) VALUES (
  'RCS_TEMPLATE_005', '15999782', 0, '01012345678', 'CMwMhM0300',
  '', 'BK.9T0MMk615qoEOl1',
  '{"description1":"첫번째 이미지 설명","media1":"maapfile://...","description2":"..."}',
  '{"buttons":[{"suggestions":[{"action":{"urlAction":{"openUrl":{"url":"https://..."}}}, "displayText":"이동"}]}]}'
);

INSERT INTO biz_msg (
  MSG_TYPE, CMID, REQUEST_TIME, SEND_TIME,
  DEST_PHONE, SEND_PHONE, RCS_REFKEY
) VALUES (
  8, 'SEND_BIZ_MSG_001', NOW(), NOW(),
  '01012345678', '15999782', 'RCS_TEMPLATE_005'
);
응답
200INSERT 성공 시 `STATUS=0` (발송 대기) 로 큐에 적재. BIZCLIENT 모듈이 폴링 → `STATUS=7` (발송 중) → `1` (발송 후 대기) → `2` (발송 완료). `CALL_STATUS` 컬럼에 [결과 코드](#tag/BizclientCodes) 기록.
sql/bizclient/biz_msg/alimtalk

카카오 알림톡

카카오 알림톡 (AT / AI) 채널 — biz_msg 테이블 INSERT 방식으로 발송합니다.

MSG_TYPE = 6

사전 검수된 템플릿을 기반으로 발송하는 카카오톡 메시지. 친구 추가가 필요 없음.
버튼·바로연결·아이템리스트 사용 시 ATTACHMENT JSON 파일을 별도 업로드합니다 — 업로드 방식은 첨부파일 관리 (FILE_HANDLING_MODE) 참고.

사전 준비

  • 카카오 비즈메시지 채널 + 템플릿 모두 검수 승인 필수
  • 발신 프로필 키 / 템플릿 코드 발급

ℹ️ MSG_BODY변수가 이미 치환된 최종 본문입니다. 비즈뿌리오 사이트에 등록한 템플릿 원문을 호출 측(고객사 애플리케이션)에서 치환한 결과를 INSERT 합니다. 변수(#{...})는 BIZCLIENT 가 치환하지 않습니다.

템플릿 변수 치환 예시

구분 내용
템플릿 원문 (비즈뿌리오 사이트 등록) #{고객명} 고객님 다우기술 비즈메시지 프로모션에 당첨 되었습니다.
MSG_BODY 입력값 (치환 결과) 박다우 고객님 다우기술 비즈메시지 프로모션에 당첨 되었습니다.

⚠️ 치환 결과 본문은 검수 승인된 템플릿 내용과 일치해야 합니다. 불일치 시 발송이 실패할 수 있습니다.

ATTACHMENT JSON 사용 (버튼·바로연결·아이템리스트·강조표기)

JSON 파일을 환경설정의 FILE_PATH 경로에 업로드한 뒤 ATTACHED_FILE 에 파일명 지정 (UTF-8):

INSERT INTO biz_msg (
  MSG_TYPE, ..., TEMPLATE_CODE, SENDER_KEY, NATION_CODE,
  ATTACHED_FILE
) VALUES (
  6, ..., '{템플릿코드}', '{발신프로필키}', '82',
  '{파일명}.json'
);

웹·앱 링크에 변수가 있어 JSON 파일을 미리 만들기 어려운 경우 FILE_HANDLING_MODE 테이블 활용.

biz_msg 컬럼 (AT)

컬럼 타입 필수 설명
MSG_TYPE number(1) Y AT = 6
CMID string(32) Y 데이터 ID (Primary Key, ASCII)
REQUEST_TIME datetime Y 데이터 등록 시간 (NOW())
SEND_TIME datetime Y 발송 기준 시간 (예약 시 미래, NOW())
DEST_PHONE string(16) Y 수신번호
SEND_PHONE string(16) Y 발신번호 (사전 등록 필수)
SENDER_KEY string(40) Y 발신 프로필 키
TEMPLATE_CODE string(64) Y 템플릿 코드
NATION_CODE string(5) Y 국가 코드 (한국 = 82)
MSG_BODY string(4000) Y 치환 완료된 본문
ATTACHED_FILE string(1000) N ATTACHMENT JSON 파일명 또는 첨부파일 테이블 KEY
RESPONSE_METHOD string(8) N 발송 방식 (PUSH)
TIMEOUT string(4) N 대체 발송용 타임아웃 (초)
RE_TYPE string(3) N 대체 발송 타입
RE_BODY string(4000) N 대체 발송 본문
RE_PART string(1) N 대체 발송 처리 주체 (C=CLIENT / S=Server)
CINFO string(32) N Client Indexed Info — 사내 구분용. 특수기호 \/:*?"<>|. 사용 불가

ATTACHMENT JSON · 버튼 규격

버튼·바로연결·아이템리스트·강조표기 등 ATTACHMENT JSON 상세 규격과 예시는 카카오 연동 규격 을 참고하세요.

SQL
INSERT INTO biz_msg (
  MSG_TYPE, CMID, REQUEST_TIME, SEND_TIME,
  DEST_PHONE, SEND_PHONE,
  MSG_BODY, TEMPLATE_CODE, SENDER_KEY, NATION_CODE
) VALUES (
  6, '201XXXXXXXXX', NOW(), NOW(),
  '01012345678', '0212341234',
  '박다우 고객님 다우기술 비즈메시지 프로모션에 당첨 되었습니다.',
  '{템플릿코드}', '{발신프로필키}', '82'
);
응답
200INSERT 성공 시 `STATUS=0` (발송 대기) 로 큐에 적재. BIZCLIENT 모듈이 폴링 → `STATUS=7` (발송 중) → `1` (발송 후 대기) → `2` (발송 완료). `CALL_STATUS` 컬럼에 [결과 코드](#tag/BizclientCodes) 기록.
sql/bizclient/biz_msg/brand

카카오 브랜드메시지

카카오 브랜드메시지 채널 — biz_msg 테이블 INSERT 방식으로 발송합니다.

MSG_TYPE = 9

브랜드메시지는 고객사의 광고성 정보 수신 동의 회원(send_target: marketing) 또는 카카오 채널 친구(send_target: friend) 대상으로 발송하는 광고성 메시지 상품입니다. biz_msgMSG_TYPE=9 로 INSERT 하고, 말풍선 형태·본문·버튼 등 상세 구성은 ATTACHMENT JSON 파일(snake_case 키)로 전달합니다.

말풍선 형태는 ATTACHMENT JSON 의 extra.chat_bubble_type 으로 지정하며 8종을 지원합니다:

chat_bubble_type 설명
TEXT 텍스트
IMAGE 이미지
WIDE 와이드 이미지
WIDE_ITEM_LIST 와이드 아이템 리스트
PREMIUM_VIDEO 프리미엄 동영상
COMMERCE 커머스
CAROUSEL_FEED 캐러셀 피드
CAROUSEL_COMMERCE 캐러셀 커머스

타입별 본문/이미지/버튼 필드 구성·글자수, 변수 분리 방식과 전문 방식의 차이는 카카오 연동 규격 을 참고하세요.

발송 조건

  • 광고성 메시지 — 08:00 ~ 20:50 (KST). 해외 사용자(해외 전화번호 가입자)는 시간 제한 없음
  • 채널을 차단한 사용자에게는 발송되지 않음
  • 고객사 회원 대상(marketing) 발송은 사전 권한 신청 필요 + 카카오톡 25.4.0 이상 사용자에게만 발송
  • 채널 친구 대상(friend) 발송은 발신프로필 등록 후 바로 발송 가능

사전 등록: 카카오 채널 + 템플릿 + 이미지/동영상 (KAPI 등록)

biz_msg 컬럼 (BT)

컬럼 타입 필수 설명
MSG_TYPE number(1) Y BT = 9
CMID string(32) Y 데이터 ID (Primary Key, ASCII)
REQUEST_TIME datetime Y 데이터 등록 시간 (NOW())
SEND_TIME datetime Y 발송 기준 시간 (예약 시 미래, NOW())
DEST_PHONE string(16) Y 수신번호
SEND_PHONE string(16) Y 발신번호 (사전 등록 필수)
SENDER_KEY string(40) Y 발신 프로필 키
NATION_CODE string(5) Y 국가 코드 (한국 = 82)
TEMPLATE_CODE string(64) Y 템플릿 코드 (기본형 필수)
MSG_BODY string(4000) N 본문 (전문 방식에서 변수 있는 경우 필수)
ATTACHED_FILE string(1000) Y ATTACHMENT JSON 파일명
RE_TYPE string(3) N 대체 발송 타입 (대체 발송 사용 시)
RE_BODY string(4000) N 대체 발송 본문
RE_PART string(1) N 대체 발송 처리 주체 (C=CLIENT / S=Server)
CINFO string(32) N Client Indexed Info — 사내 구분용. 특수기호 \/:*?"<>|. 사용 불가

ℹ️ 브랜드메시지도 미수신 시 SMS/MMS 등으로 대체 발송이 가능합니다 (RE_TYPE/RE_BODY/RE_PART). 타입 매핑은 발송 용어 — 대체발송타입 참고.

ATTACHMENT JSON 규격 · 예시

chat_bubble_type 8종·전문방식 본문 객체 스키마·CAROUSEL 객체, 그리고 발송 대상·방식별 전체 예시는 카카오 연동 규격 을 참고하세요.

SQL
INSERT INTO biz_msg (
  MSG_TYPE, CMID, REQUEST_TIME, SEND_TIME,
  DEST_PHONE, SEND_PHONE,
  SENDER_KEY, NATION_CODE, TEMPLATE_CODE, ATTACHED_FILE
) VALUES (
  9, '201XXXXXXXXX', NOW(), NOW(),
  '01012345678', '0212341234',
  '{발신프로필키}', '82', '{템플릿코드}', '{파일명}.json'
);
응답
200INSERT 성공 시 `STATUS=0` (발송 대기) 로 큐에 적재. BIZCLIENT 모듈이 폴링 → `STATUS=7` (발송 중) → `1` (발송 후 대기) → `2` (발송 완료). `CALL_STATUS` 컬럼에 [결과 코드](#tag/BizclientCodes) 기록.
대상
방식
고객사 회원 › 변수 미사용 › 텍스트brand_message_type: BASICsend_target: marketingtargeting: O
attach.json· TEXT
{
  "extra": {
    "chat_bubble_type": "TEXT",
    "brand_message_type": "BASIC",
    "send_target": "marketing",
    "targeting": "O"
  }
}

ATTACHMENT JSON 예시 — 전체 64개 조합

발송 대상 2 × 방식 4 × 타입 8. 인쇄/PDF 전용 선형 목록입니다.

고객사 회원 › 변수 미사용 › 텍스트 (TEXT)
{
  "extra": {
    "chat_bubble_type": "TEXT",
    "brand_message_type": "BASIC",
    "send_target": "marketing",
    "targeting": "O"
  }
}
고객사 회원 › 변수 미사용 › 이미지 (IMAGE)
{
  "extra": {
    "chat_bubble_type": "IMAGE",
    "brand_message_type": "BASIC",
    "send_target": "marketing",
    "targeting": "M"
  }
}
고객사 회원 › 변수 미사용 › 와이드 이미지 (WIDE)
{
  "extra": {
    "chat_bubble_type": "WIDE",
    "brand_message_type": "BASIC",
    "send_target": "marketing",
    "targeting": "M"
  }
}
고객사 회원 › 변수 미사용 › 와이드 리스트 (WIDE_ITEM_LIST)
{
  "extra": {
    "chat_bubble_type": "WIDE_ITEM_LIST",
    "brand_message_type": "BASIC",
    "send_target": "marketing",
    "targeting": "M"
  }
}
고객사 회원 › 변수 미사용 › 캐러셀 피드 (CAROUSEL_FEED)
{
  "extra": {
    "chat_bubble_type": "CAROUSEL_FEED",
    "brand_message_type": "BASIC",
    "send_target": "marketing",
    "targeting": "M"
  }
}
고객사 회원 › 변수 미사용 › 프리미엄 동영상 (PREMIUM_VIDEO)
{
  "extra": {
    "chat_bubble_type": "PREMIUM_VIDEO",
    "brand_message_type": "BASIC",
    "send_target": "marketing",
    "targeting": "M"
  }
}
고객사 회원 › 변수 미사용 › 커머스 (COMMERCE)
{
  "extra": {
    "chat_bubble_type": "COMMERCE",
    "brand_message_type": "BASIC",
    "send_target": "marketing",
    "targeting": "M"
  }
}
고객사 회원 › 변수 미사용 › 캐러셀 커머스 (CAROUSEL_COMMERCE)
{
  "extra": {
    "chat_bubble_type": "CAROUSEL_COMMERCE",
    "brand_message_type": "BASIC",
    "send_target": "marketing",
    "targeting": "O"
  }
}
고객사 회원 › 변수 분리 방식 › 텍스트 (TEXT)
{
  "extra": {
    "chat_bubble_type": "TEXT",
    "brand_message_type": "BASIC",
    "send_target": "marketing",
    "targeting": "M",
    "message_variable": {
      "변수1": "치환 문구"
    },
    "button_variable": {
      "변수7": "https://www.bizppurio.com/"
    },
    "coupon_variable": {
      "변수5": "https://www.bizppurio.com/"
    }
  }
}
고객사 회원 › 변수 분리 방식 › 이미지 (IMAGE)
{
  "extra": {
    "chat_bubble_type": "IMAGE",
    "brand_message_type": "BASIC",
    "send_target": "marketing",
    "targeting": "M",
    "message_variable": {
      "변수1": "치환 문구"
    },
    "image_variable": {
      "변수2": "https://example.com/image.jpg"
    },
    "button_variable": {
      "변수7": "https://www.bizppurio.com/"
    },
    "coupon_variable": {
      "변수5": "https://www.bizppurio.com/"
    }
  }
}
고객사 회원 › 변수 분리 방식 › 와이드 이미지 (WIDE)
{
  "extra": {
    "chat_bubble_type": "WIDE",
    "brand_message_type": "BASIC",
    "send_target": "marketing",
    "targeting": "M",
    "message_variable": {
      "변수1": "치환 문구"
    },
    "image_variable": {
      "변수2": "https://example.com/image.jpg"
    },
    "button_variable": {
      "변수7": "https://www.bizppurio.com/"
    },
    "coupon_variable": {
      "변수5": "https://www.bizppurio.com/"
    }
  }
}
고객사 회원 › 변수 분리 방식 › 와이드 리스트 (WIDE_ITEM_LIST)
{
  "extra": {
    "chat_bubble_type": "WIDE_ITEM_LIST",
    "brand_message_type": "BASIC",
    "send_target": "marketing",
    "targeting": "M",
    "message_variable": {
      "변수1": "치환 문구"
    },
    "image_variable": {
      "변수2": "https://example.com/image.jpg"
    },
    "button_variable": {
      "변수7": "https://www.bizppurio.com/"
    },
    "coupon_variable": {
      "변수5": "https://www.bizppurio.com/"
    }
  }
}
고객사 회원 › 변수 분리 방식 › 캐러셀 피드 (CAROUSEL_FEED)
{
  "extra": {
    "chat_bubble_type": "CAROUSEL_FEED",
    "brand_message_type": "BASIC",
    "send_target": "marketing",
    "targeting": "M",
    "carousel_variable": [
      {
        "message_variable": {
          "변수1": "치환 메시지"
        },
        "image_variable": {
          "변수2": "https://example.com/image.jpg"
        },
        "button_variable": {
          "변수3": "https://www.bizppurio.com/"
        },
        "coupon_variable": {
          "변수4": "https://www.bizppurio.com/"
        }
      },
      {
        "message_variable": {
          "변수1": "치환 메시지"
        },
        "image_variable": {
          "변수2": "https://example.com/image.jpg"
        },
        "button_variable": {
          "변수3": "https://www.bizppurio.com/"
        },
        "coupon_variable": {
          "변수4": "https://www.bizppurio.com/"
        }
      }
    ]
  }
}
고객사 회원 › 변수 분리 방식 › 프리미엄 동영상 (PREMIUM_VIDEO)
{
  "extra": {
    "chat_bubble_type": "PREMIUM_VIDEO",
    "brand_message_type": "BASIC",
    "send_target": "marketing",
    "targeting": "M",
    "message_variable": {
      "변수1": "치환 문구"
    },
    "button_variable": {
      "변수7": "https://www.bizppurio.com/"
    },
    "coupon_variable": {
      "변수5": "https://www.bizppurio.com/"
    }
  }
}
고객사 회원 › 변수 분리 방식 › 커머스 (COMMERCE)
{
  "extra": {
    "chat_bubble_type": "COMMERCE",
    "brand_message_type": "BASIC",
    "send_target": "marketing",
    "targeting": "O",
    "message_variable": {
      "변수1": "변수1"
    },
    "commerce_variable": {
      "변수2": "변수2"
    },
    "button_variable": {
      "변수7": "test15",
      "변수8": "test14"
    },
    "coupon_variable": {
      "변수5": "test5",
      "변수6": "test6"
    }
  }
}
고객사 회원 › 변수 분리 방식 › 캐러셀 커머스 (CAROUSEL_COMMERCE)
{
  "extra": {
    "chat_bubble_type": "CAROUSEL_COMMERCE",
    "brand_message_type": "BASIC",
    "send_target": "marketing",
    "targeting": "O",
    "carousel_variable": [
      {
        "button_variable": {
          "변수5": "test3",
          "변수4": "test4"
        },
        "coupon_variable": {
          "변수5": "test3",
          "변수6": "test6"
        }
      },
      {
        "button_variable": {
          "변수5": "test3",
          "변수4": "test4"
        },
        "coupon_variable": {
          "변수5": "test3",
          "변수6": "test6"
        }
      }
    ]
  }
}
고객사 회원 › 전문 방식 › 텍스트 (TEXT)
{
  "extra": {
    "chat_bubble_type": "TEXT",
    "brand_message_type": "BASIC",
    "send_target": "marketing",
    "targeting": "O"
  },
  "button": [
    {
      "type": "WL",
      "url_mobile": "https://www.bizppurio.com/변수4",
      "url_pc": "https://www.bizppurio.com/변수3"
    },
    {
      "type": "WL",
      "url_mobile": "https://www.bizppurio.com/변수4",
      "url_pc": "https://www.bizppurio.com/변수3"
    },
    {
      "type": "WL",
      "url_mobile": "https://www.bizppurio.com/변수4",
      "url_pc": "https://www.bizppurio.com/변수3"
    },
    {
      "type": "WL",
      "url_mobile": "https://www.bizppurio.com/변수4",
      "url_pc": "https://www.bizppurio.com/변수3"
    }
  ],
  "coupon": {
    "title": "변수5 무료 쿠폰",
    "description": "변수6 쿠폰 설명",
    "url_mobile": "https://www.bizppurio.com/변수10",
    "url_pc": "https://www.bizppurio.com/변수9",
    "scheme_ios": "https://www.bizppurio.com/변수8"
  }
}
고객사 회원 › 전문 방식 › 이미지 (IMAGE)
{
  "extra": {
    "chat_bubble_type": "IMAGE",
    "brand_message_type": "BASIC",
    "send_target": "marketing",
    "targeting": "O"
  },
  "image": {
    "img_url": "https://example.com/image.jpg",
    "img_link": "https://www.bizppurio.com/"
  },
  "button": [
    {
      "type": "WL",
      "url_mobile": "https://www.bizppurio.com/변수4",
      "url_pc": "https://www.bizppurio.com/변수3"
    },
    {
      "type": "WL"
    },
    {
      "type": "WL"
    },
    {
      "type": "WL"
    }
  ],
  "coupon": {
    "title": "변수5 무료 쿠폰",
    "description": "변수6 쿠폰 설명"
  }
}
고객사 회원 › 전문 방식 › 와이드 이미지 (WIDE)
{
  "extra": {
    "chat_bubble_type": "WIDE",
    "brand_message_type": "BASIC",
    "send_target": "marketing",
    "targeting": "O"
  },
  "image": {
    "img_url": "https://example.com/image.jpg",
    "img_link": "https://www.bizppurio.com/"
  },
  "button": [
    {
      "type": "WL",
      "url_mobile": "https://www.bizppurio.com/변수4",
      "url_pc": "https://www.bizppurio.com/변수3"
    },
    {
      "type": "WL"
    }
  ],
  "coupon": {
    "title": "변수5 무료 쿠폰",
    "description": "변수6 쿠폰 설명"
  }
}
고객사 회원 › 전문 방식 › 와이드 리스트 (WIDE_ITEM_LIST)
{
  "extra": {
    "chat_bubble_type": "WIDE_ITEM_LIST",
    "brand_message_type": "BASIC",
    "send_target": "marketing",
    "targeting": "O",
    "header": "템플릿 헤더변수1"
  },
  "item": {
    "list": [
      {
        "img_url": "https://example.com/image.jpg",
        "title": "아이템 제목1234",
        "url_mobile": "https://www.bizppurio.com/11",
        "url_pc": "https://www.bizppurio.com/22",
        "scheme_ios": "https://www.bizppurio.com/11"
      },
      {
        "img_url": "https://example.com/image.jpg",
        "title": "아이템 제목1234",
        "url_mobile": "https://www.bizppurio.com/11",
        "url_pc": "https://www.bizppurio.com/22",
        "scheme_ios": "https://www.bizppurio.com/11"
      },
      {
        "img_url": "https://example.com/image.jpg",
        "title": "아이템 제목1234",
        "url_mobile": "https://www.bizppurio.com/11",
        "url_pc": "https://www.bizppurio.com/22",
        "scheme_ios": "https://www.bizppurio.com/11"
      },
      {
        "img_url": "https://example.com/image.jpg"
      }
    ]
  },
  "button": [
    {
      "type": "WL",
      "url_mobile": "https://www.bizppurio.com/11",
      "url_pc": "https://www.bizppurio.com/22"
    },
    {
      "type": "WL",
      "url_mobile": "https://www.bizppurio.com/11",
      "url_pc": "https://www.bizppurio.com/22"
    }
  ],
  "coupon": {
    "title": "변수5 무료 쿠폰",
    "description": "#{변수6} 쿠폰 설명"
  }
}
고객사 회원 › 전문 방식 › 캐러셀 피드 (CAROUSEL_FEED)
{
  "extra": {
    "chat_bubble_type": "CAROUSEL_FEED",
    "brand_message_type": "BASIC",
    "send_target": "marketing",
    "targeting": "O",
    "carousel": {
      "list": [
        {
          "attachment": {
            "button": [
              {
                "type": "WL",
                "url_mobile": "https://www.bizppurio.com/변수4",
                "url_pc": "https://www.bizppurio.com/변수3"
              },
              {
                "type": "WL"
              }
            ],
            "coupon": {
              "title": "변수5 무료 쿠폰",
              "description": "변수6 쿠폰 설명"
            },
            "image": {
              "img_url": "https://example.com/image.jpg"
            }
          }
        },
        {
          "attachment": {
            "button": [
              {
                "type": "WL",
                "url_mobile": "https://www.bizppurio.com/변수4",
                "url_pc": "https://www.bizppurio.com/변수3"
              },
              {
                "type": "WL"
              }
            ],
            "coupon": {
              "title": "변수5 무료 쿠폰",
              "description": "변수6 쿠폰 설명"
            },
            "image": {
              "img_url": "https://example.com/image.jpg"
            }
          }
        },
        {
          "attachment": {
            "image": {
              "img_url": "https://example.com/image.jpg"
            }
          }
        },
        {
          "attachment": {
            "image": {
              "img_url": "https://example.com/image.jpg"
            }
          }
        },
        {
          "attachment": {
            "image": {
              "img_url": "https://example.com/image.jpg"
            }
          }
        },
        {
          "attachment": {
            "image": {
              "img_url": "https://example.com/image.jpg"
            }
          }
        }
      ]
    }
  }
}
고객사 회원 › 전문 방식 › 프리미엄 동영상 (PREMIUM_VIDEO)
{
  "extra": {
    "chat_bubble_type": "PREMIUM_VIDEO",
    "brand_message_type": "BASIC",
    "send_target": "marketing",
    "targeting": "O",
    "header": "템플릿 헤더변수1"
  },
  "button": [
    {
      "type": "WL",
      "url_mobile": "https://www.bizppurio.com/변수6",
      "url_pc": "https://www.bizppurio.com/변수5"
    }
  ],
  "coupon": {
    "title": "변수5 무료 쿠폰",
    "description": "변수6 쿠폰 설명"
  }
}
고객사 회원 › 전문 방식 › 커머스 (COMMERCE)
{
  "extra": {
    "chat_bubble_type": "COMMERCE",
    "brand_message_type": "BASIC",
    "send_target": "marketing",
    "targeting": "O",
    "additional_content": "템플릿 부가정보변수1"
  },
  "coupon": {
    "title": "변수5 무료 쿠폰",
    "description": "#{변수6} 쿠폰 설명"
  },
  "commerce": {
    "title": "상품 제목변수2."
  },
  "button": [
    {
      "type": "WL",
      "url_mobile": "https://www.bizppurio.com/11",
      "url_pc": "https://www.bizppurio.com/22"
    },
    {
      "type": "WL",
      "url_mobile": "https://www.bizppurio.com/11",
      "url_pc": "https://www.bizppurio.com/22"
    }
  ],
  "image": {
    "img_url": "https://example.com/image.jpg"
  }
}
고객사 회원 › 전문 방식 › 캐러셀 커머스 (CAROUSEL_COMMERCE)
{
  "extra": {
    "chat_bubble_type": "CAROUSEL_COMMERCE",
    "brand_message_type": "BASIC",
    "send_target": "marketing",
    "targeting": "O",
    "carousel": {
      "head": {
        "url_mobile": "https://www.bizppurio.com/11",
        "url_pc": "https://www.bizppurio.com/11",
        "scheme_ios": "https://www.bizppurio.com/11",
        "header": "캐러셀 인트로 헤더#{변수1}",
        "content": "캐러셀 인트로 내용변수2",
        "image_url": "https://example.com/image.jpg"
      },
      "list": [
        {
          "additional_content": "변수4",
          "header": "상품 제목변수4",
          "attachment": {
            "button": [
              {
                "type": "WL",
                "url_pc": "https://www.bizppurio.com/변수4",
                "url_mobile": "https://www.bizppurio.com/변수4"
              },
              {
                "type": "WL",
                "url_pc": "https://www.bizppurio.com/변수5",
                "url_mobile": "https://www.bizppurio.com/변수5"
              }
            ],
            "coupon": {
              "title": "변수5 무료 쿠폰",
              "description": "변수6 쿠폰 설명"
            },
            "commerce": {
              "title": "상품 제목변수4"
            }
          }
        }
      ]
    }
  }
}
고객사 회원 › 자유형 › 텍스트 (TEXT)
{
  "extra": {
    "chat_bubble_type": "TEXT",
    "brand_message_type": "FREE",
    "send_target": "marketing",
    "targeting": "O"
  },
  "button": [
    {
      "name": "버튼1",
      "type": "WL",
      "url_mobile": "https://www.bizppurio.com/",
      "url_pc": "https://www.bizppurio.com/"
    },
    {
      "name": "버튼2",
      "type": "WL",
      "url_mobile": "https://www.bizppurio.com/",
      "url_pc": "https://www.bizppurio.com/"
    },
    {
      "name": "버튼3",
      "type": "WL",
      "url_mobile": "https://www.bizppurio.com/",
      "url_pc": "https://www.bizppurio.com/"
    },
    {
      "name": "버튼4",
      "type": "WL",
      "url_mobile": "https://www.bizppurio.com/",
      "url_pc": "https://www.bizppurio.com/"
    }
  ],
  "coupon": {
    "title": "배송비 할인 쿠폰",
    "description": "쿠폰 상세 내용입니다.",
    "url_mobile": "https://bizppurio.com"
  }
}
고객사 회원 › 자유형 › 이미지 (IMAGE)
{
  "extra": {
    "chat_bubble_type": "IMAGE",
    "brand_message_type": "FREE",
    "send_target": "marketing",
    "targeting": "O"
  },
  "image": {
    "img_url": "https://example.com/image.jpg",
    "img_link": "https://www.bizppurio.com/"
  },
  "button": [
    {
      "name": "버튼1",
      "type": "WL",
      "url_mobile": "https://www.bizppurio.com/",
      "url_pc": "https://www.bizppurio.com/"
    },
    {
      "name": "버튼2",
      "type": "WL",
      "url_mobile": "https://www.bizppurio.com/",
      "url_pc": "https://www.bizppurio.com/"
    },
    {
      "name": "버튼3",
      "type": "WL",
      "url_mobile": "https://www.bizppurio.com/",
      "url_pc": "https://www.bizppurio.com/"
    },
    {
      "name": "버튼4",
      "type": "WL",
      "url_mobile": "https://www.bizppurio.com/",
      "url_pc": "https://www.bizppurio.com/"
    }
  ],
  "coupon": {
    "title": "배송비 할인 쿠폰",
    "description": "쿠폰 상세 내용입니다.",
    "url_mobile": "https://bizppurio.com"
  }
}
고객사 회원 › 자유형 › 와이드 이미지 (WIDE)
{
  "extra": {
    "chat_bubble_type": "WIDE",
    "brand_message_type": "FREE",
    "send_target": "marketing",
    "targeting": "O"
  },
  "image": {
    "img_url": "https://example.com/image.jpg",
    "img_link": "https://www.bizppurio.com/"
  },
  "button": [
    {
      "name": "버튼1",
      "type": "WL",
      "url_mobile": "https://www.bizppurio.com/",
      "url_pc": "https://www.bizppurio.com/"
    },
    {
      "name": "버튼2",
      "type": "WL",
      "url_mobile": "https://www.bizppurio.com/",
      "url_pc": "https://www.bizppurio.com/"
    }
  ],
  "coupon": {
    "title": "배송비 할인 쿠폰",
    "description": "쿠폰 상세 내용입니다.",
    "url_mobile": "https://bizppurio.com"
  }
}
고객사 회원 › 자유형 › 와이드 리스트 (WIDE_ITEM_LIST)
{
  "extra": {
    "chat_bubble_type": "WIDE_ITEM_LIST",
    "brand_message_type": "FREE",
    "send_target": "marketing",
    "targeting": "O",
    "header": "헤덩"
  },
  "item": {
    "list": [
      {
        "img_url": "https://example.com/image.jpg",
        "title": "타이틀 입니다.",
        "url_mobile": "https://daou.co.kr/"
      },
      {
        "img_url": "https://example.com/image.jpg",
        "title": "타이틀2 입니다.",
        "url_mobile": "https://daou.co.kr/2"
      },
      {
        "img_url": "https://example.com/image.jpg",
        "title": "타이틀3 입니다.",
        "url_mobile": "https://daou.co.kr/3"
      },
      {
        "img_url": "https://example.com/image.jpg",
        "title": "타이틀4 입니다.",
        "url_mobile": "https://daou.co.kr/4"
      }
    ]
  },
  "button": [
    {
      "name": "버튼1",
      "type": "WL",
      "url_mobile": "https://www.bizppurio.com/",
      "url_pc": "https://www.bizppurio.com/"
    },
    {
      "name": "버튼2",
      "type": "WL",
      "url_mobile": "https://www.bizppurio.com/",
      "url_pc": "https://www.bizppurio.com/"
    }
  ],
  "coupon": {
    "title": "배송비 할인 쿠폰",
    "description": "쿠폰 상세 내용입니다.",
    "url_mobile": "https://m.naver.com"
  }
}
고객사 회원 › 자유형 › 캐러셀 피드 (CAROUSEL_FEED)
{
  "extra": {
    "chat_bubble_type": "CAROUSEL_FEED",
    "brand_message_type": "FREE",
    "send_target": "marketing",
    "targeting": "M",
    "carousel": {
      "list": [
        {
          "header": "헤더입니다.",
          "message": "안녕하세요! 겨울 신상 패딩을 할인 판매 중입니다.\n지금 89,000원에 만나보세요.",
          "attachment": {
            "button": [
              {
                "name": "버튼1",
                "type": "WL",
                "url_mobile": "https://www.bizppurio.com/",
                "url_pc": "https://www.bizppurio.com/"
              },
              {
                "name": "버튼2",
                "type": "WL",
                "url_mobile": "https://www.bizppurio.com/",
                "url_pc": "https://www.bizppurio.com/"
              }
            ],
            "image": {
              "img_url": "https://example.com/image.jpg"
            },
            "coupon": {
              "title": "배송비 할인 쿠폰",
              "description": "쿠폰 상세 내용입니다.",
              "url_mobile": "https://bizppurio.com"
            }
          }
        },
        {
          "header": "헤더입니다.",
          "message": "안녕하세요! 겨울 신상 패딩을 할인 판매 중입니다.\n지금 89,000원에 만나보세요.",
          "attachment": {
            "button": [
              {
                "name": "버튼1",
                "type": "WL",
                "url_mobile": "https://www.bizppurio.com/",
                "url_pc": "https://www.bizppurio.com/"
              },
              {
                "name": "버튼2",
                "type": "WL",
                "url_mobile": "https://www.bizppurio.com/",
                "url_pc": "https://www.bizppurio.com/"
              }
            ],
            "image": {
              "img_url": "https://example.com/image.jpg"
            }
          }
        }
      ],
      "tail": {
        "url_mobile": "https://www.bizppurio.com/",
        "url_pc": "https://www.bizppurio.com/",
        "scheme_ios": "https://www.bizppurio.com/",
        "scheme_android": "https://www.bizppurio.com/"
      }
    }
  }
}
고객사 회원 › 자유형 › 프리미엄 동영상 (PREMIUM_VIDEO)
{
  "extra": {
    "chat_bubble_type": "PREMIUM_VIDEO",
    "brand_message_type": "FREE",
    "send_target": "marketing",
    "targeting": "M",
    "header": "헤더입니다."
  },
  "video": {
    "video_url": "https://tv.kakao.com/channel/XXXXX/cliplink/447422551",
    "thumbnail_url": "http://thumb.kakaocdn.net/dna/kamp/source/XXXXX/thumbs/thumb.jpg"
  },
  "button": [
    {
      "name": "버튼명입니다.",
      "type": "WL",
      "url_mobile": "https://www.naver.com"
    }
  ],
  "coupon": {
    "title": "배송비 할인 쿠폰",
    "description": "쿠폰 상세 내용입니다.",
    "url_mobile": "https://bizppurio.com"
  }
}
고객사 회원 › 자유형 › 커머스 (COMMERCE)
{
  "extra": {
    "chat_bubble_type": "COMMERCE",
    "brand_message_type": "FREE",
    "send_target": "marketing",
    "targeting": "M",
    "additional_content": "부가정보"
  },
  "commerce": {
    "title": "상품명입니다.",
    "regular_price": 10,
    "discount_price": 10,
    "discount_rate": "10",
    "discount_fixed": "10"
  },
  "image": {
    "img_url": "https://example.com/image.jpg"
  },
  "button": [
    {
      "name": "버튼1",
      "type": "WL",
      "url_mobile": "https://www.bizppurio.com/",
      "url_pc": "https://www.bizppurio.com/"
    },
    {
      "name": "버튼2",
      "type": "WL",
      "url_mobile": "https://www.bizppurio.com/",
      "url_pc": "https://www.bizppurio.com/"
    }
  ],
  "coupon": {
    "title": "배송비 할인 쿠폰",
    "description": "쿠폰 상세 내용입니다.",
    "url_mobile": "https://www.naver.com"
  }
}
고객사 회원 › 자유형 › 캐러셀 커머스 (CAROUSEL_COMMERCE)
{
  "extra": {
    "chat_bubble_type": "CAROUSEL_COMMERCE",
    "brand_message_type": "FREE",
    "send_target": "marketing",
    "targeting": "M",
    "carousel": {
      "head": {
        "header": "이번 주 특가 모음",
        "content": "엄선한 상품을 특별한 가격에 만나보세요.",
        "image_url": "https://example.com/image.jpg",
        "url_mobile": "https://www.bizppurio.com/",
        "url_pc": "https://www.bizppurio.com/",
        "scheme_android": "https://www.bizppurio.com/",
        "scheme_ios": "https://www.bizppurio.com/"
      },
      "list": [
        {
          "additional_content": "",
          "attachment": {
            "image": {
              "img_url": "https://example.com/image.jpg"
            },
            "commerce": {
              "title": "타이틀",
              "regular_price": 10,
              "discount_price": 10,
              "discount_rate": 10,
              "discount_fixed": 10
            },
            "button": [
              {
                "name": "버튼1",
                "type": "WL",
                "url_mobile": "https://www.bizppurio.com/",
                "url_pc": "https://www.bizppurio.com/"
              },
              {
                "name": "버튼2",
                "type": "WL",
                "url_mobile": "https://www.bizppurio.com/",
                "url_pc": "https://www.bizppurio.com/"
              }
            ]
          }
        }
      ],
      "tail": {
        "url_mobile": "https://www.bizppurio.com/",
        "url_pc": "https://www.bizppurio.com/",
        "scheme_ios": "https://www.bizppurio.com/",
        "scheme_android": "https://www.bizppurio.com/"
      }
    }
  }
}
채널 친구 › 변수 미사용 › 텍스트 (TEXT)
{
  "extra": {
    "chat_bubble_type": "TEXT",
    "brand_message_type": "BASIC",
    "send_target": "friend",
    "targeting": "O"
  }
}
채널 친구 › 변수 미사용 › 이미지 (IMAGE)
{
  "extra": {
    "chat_bubble_type": "IMAGE",
    "brand_message_type": "BASIC",
    "send_target": "friend"
  }
}
채널 친구 › 변수 미사용 › 와이드 이미지 (WIDE)
{
  "extra": {
    "chat_bubble_type": "WIDE",
    "brand_message_type": "BASIC",
    "send_target": "friend"
  }
}
채널 친구 › 변수 미사용 › 와이드 리스트 (WIDE_ITEM_LIST)
{
  "extra": {
    "chat_bubble_type": "WIDE_ITEM_LIST",
    "brand_message_type": "BASIC",
    "send_target": "friend"
  }
}
채널 친구 › 변수 미사용 › 캐러셀 피드 (CAROUSEL_FEED)
{
  "extra": {
    "chat_bubble_type": "CAROUSEL_FEED",
    "brand_message_type": "BASIC",
    "send_target": "friend"
  }
}
채널 친구 › 변수 미사용 › 프리미엄 동영상 (PREMIUM_VIDEO)
{
  "extra": {
    "chat_bubble_type": "PREMIUM_VIDEO",
    "brand_message_type": "BASIC",
    "send_target": "friend"
  }
}
채널 친구 › 변수 미사용 › 커머스 (COMMERCE)
{
  "extra": {
    "chat_bubble_type": "COMMERCE",
    "brand_message_type": "BASIC",
    "send_target": "friend"
  }
}
채널 친구 › 변수 미사용 › 캐러셀 커머스 (CAROUSEL_COMMERCE)
{
  "extra": {
    "chat_bubble_type": "CAROUSEL_COMMERCE",
    "brand_message_type": "BASIC",
    "send_target": "friend",
    "targeting": "O"
  }
}
채널 친구 › 변수 분리 방식 › 텍스트 (TEXT)
{
  "extra": {
    "chat_bubble_type": "TEXT",
    "brand_message_type": "BASIC",
    "send_target": "friend",
    "message_variable": {
      "변수1": "치환 문구"
    },
    "button_variable": {
      "변수7": "https://www.bizppurio.com/"
    },
    "coupon_variable": {
      "변수5": "https://www.bizppurio.com/"
    }
  }
}
채널 친구 › 변수 분리 방식 › 이미지 (IMAGE)
{
  "extra": {
    "chat_bubble_type": "IMAGE",
    "brand_message_type": "BASIC",
    "send_target": "friend",
    "message_variable": {
      "변수1": "치환 문구"
    },
    "image_variable": {
      "변수2": "https://example.com/image.jpg"
    },
    "button_variable": {
      "변수7": "https://www.bizppurio.com/"
    },
    "coupon_variable": {
      "변수5": "https://www.bizppurio.com/"
    }
  }
}
채널 친구 › 변수 분리 방식 › 와이드 이미지 (WIDE)
{
  "extra": {
    "chat_bubble_type": "WIDE",
    "brand_message_type": "BASIC",
    "send_target": "friend",
    "message_variable": {
      "변수1": "치환 문구"
    },
    "image_variable": {
      "변수2": "https://example.com/image.jpg"
    },
    "button_variable": {
      "변수7": "https://www.bizppurio.com/"
    },
    "coupon_variable": {
      "변수5": "https://www.bizppurio.com/"
    }
  }
}
채널 친구 › 변수 분리 방식 › 와이드 리스트 (WIDE_ITEM_LIST)
{
  "extra": {
    "chat_bubble_type": "WIDE_ITEM_LIST",
    "brand_message_type": "BASIC",
    "send_target": "friend",
    "message_variable": {
      "변수1": "치환 문구"
    },
    "image_variable": {
      "변수2": "https://example.com/image.jpg"
    },
    "button_variable": {
      "변수7": "https://www.bizppurio.com/"
    },
    "coupon_variable": {
      "변수5": "https://www.bizppurio.com/"
    }
  }
}
채널 친구 › 변수 분리 방식 › 캐러셀 피드 (CAROUSEL_FEED)
{
  "extra": {
    "chat_bubble_type": "CAROUSEL_FEED",
    "brand_message_type": "BASIC",
    "send_target": "friend",
    "carousel_variable": [
      {
        "message_variable": {
          "변수1": "치환 메시지"
        },
        "image_variable": {
          "변수2": "https://example.com/image.jpg"
        },
        "button_variable": {
          "변수3": "https://www.bizppurio.com/"
        },
        "coupon_variable": {
          "변수4": "https://www.bizppurio.com/"
        }
      },
      {
        "message_variable": {
          "변수1": "치환 메시지"
        },
        "image_variable": {
          "변수2": "https://example.com/image.jpg"
        },
        "button_variable": {
          "변수3": "https://www.bizppurio.com/"
        },
        "coupon_variable": {
          "변수4": "https://www.bizppurio.com/"
        }
      }
    ]
  }
}
채널 친구 › 변수 분리 방식 › 프리미엄 동영상 (PREMIUM_VIDEO)
{
  "extra": {
    "chat_bubble_type": "PREMIUM_VIDEO",
    "brand_message_type": "BASIC",
    "send_target": "friend",
    "message_variable": {
      "변수1": "치환 문구"
    },
    "button_variable": {
      "변수7": "https://www.bizppurio.com/"
    },
    "coupon_variable": {
      "변수5": "https://www.bizppurio.com/"
    }
  }
}
채널 친구 › 변수 분리 방식 › 커머스 (COMMERCE)
{
  "extra": {
    "chat_bubble_type": "COMMERCE",
    "brand_message_type": "BASIC",
    "send_target": "friend",
    "message_variable": {
      "변수1": "변수1"
    },
    "commerce_variable": {
      "변수2": "변수2"
    },
    "button_variable": {
      "변수7": "test15",
      "변수8": "test14"
    },
    "coupon_variable": {
      "변수5": "test5",
      "변수6": "test6"
    }
  }
}
채널 친구 › 변수 분리 방식 › 캐러셀 커머스 (CAROUSEL_COMMERCE)
{
  "extra": {
    "chat_bubble_type": "CAROUSEL_COMMERCE",
    "brand_message_type": "BASIC",
    "send_target": "friend",
    "carousel_variable": [
      {
        "button_variable": {
          "변수5": "test3",
          "변수4": "test4"
        },
        "coupon_variable": {
          "변수5": "test3",
          "변수6": "test6"
        }
      },
      {
        "button_variable": {
          "변수5": "test3",
          "변수4": "test4"
        },
        "coupon_variable": {
          "변수5": "test3",
          "변수6": "test6"
        }
      }
    ]
  }
}
채널 친구 › 전문 방식 › 텍스트 (TEXT)
{
  "extra": {
    "chat_bubble_type": "TEXT",
    "brand_message_type": "BASIC",
    "send_target": "friend"
  },
  "button": [
    {
      "type": "WL",
      "url_mobile": "https://www.bizppurio.com/변수4",
      "url_pc": "https://www.bizppurio.com/변수3"
    },
    {
      "type": "WL",
      "url_mobile": "https://www.bizppurio.com/변수4",
      "url_pc": "https://www.bizppurio.com/변수3"
    },
    {
      "type": "WL",
      "url_mobile": "https://www.bizppurio.com/변수4",
      "url_pc": "https://www.bizppurio.com/변수3"
    },
    {
      "type": "WL",
      "url_mobile": "https://www.bizppurio.com/변수4",
      "url_pc": "https://www.bizppurio.com/변수3"
    }
  ],
  "coupon": {
    "title": "변수5 무료 쿠폰",
    "description": "변수6 쿠폰 설명",
    "url_mobile": "https://www.bizppurio.com/변수10",
    "url_pc": "https://www.bizppurio.com/변수9",
    "scheme_ios": "https://www.bizppurio.com/변수8"
  }
}
채널 친구 › 전문 방식 › 이미지 (IMAGE)
{
  "extra": {
    "chat_bubble_type": "IMAGE",
    "brand_message_type": "BASIC",
    "send_target": "friend"
  },
  "image": {
    "img_url": "https://example.com/image.jpg",
    "img_link": "https://www.bizppurio.com/"
  },
  "button": [
    {
      "type": "WL",
      "url_mobile": "https://www.bizppurio.com/변수4",
      "url_pc": "https://www.bizppurio.com/변수3"
    },
    {
      "type": "WL"
    },
    {
      "type": "WL"
    },
    {
      "type": "WL"
    }
  ],
  "coupon": {
    "title": "변수5 무료 쿠폰",
    "description": "변수6 쿠폰 설명"
  }
}
채널 친구 › 전문 방식 › 와이드 이미지 (WIDE)
{
  "extra": {
    "chat_bubble_type": "WIDE",
    "brand_message_type": "BASIC",
    "send_target": "friend"
  },
  "image": {
    "img_url": "https://example.com/image.jpg",
    "img_link": "https://www.bizppurio.com/"
  },
  "button": [
    {
      "type": "WL",
      "url_mobile": "https://www.bizppurio.com/변수4",
      "url_pc": "https://www.bizppurio.com/변수3"
    },
    {
      "type": "WL"
    }
  ],
  "coupon": {
    "title": "변수5 무료 쿠폰",
    "description": "변수6 쿠폰 설명"
  }
}
채널 친구 › 전문 방식 › 와이드 리스트 (WIDE_ITEM_LIST)
{
  "extra": {
    "chat_bubble_type": "WIDE_ITEM_LIST",
    "brand_message_type": "BASIC",
    "send_target": "friend",
    "header": "템플릿 헤더변수1"
  },
  "item": {
    "list": [
      {
        "img_url": "https://example.com/image.jpg",
        "title": "아이템 제목1234",
        "url_mobile": "https://www.bizppurio.com/11",
        "url_pc": "https://www.bizppurio.com/22",
        "scheme_ios": "https://www.bizppurio.com/11"
      },
      {
        "img_url": "https://example.com/image.jpg",
        "title": "아이템 제목1234",
        "url_mobile": "https://www.bizppurio.com/11",
        "url_pc": "https://www.bizppurio.com/22",
        "scheme_ios": "https://www.bizppurio.com/11"
      },
      {
        "img_url": "https://example.com/image.jpg",
        "title": "아이템 제목1234",
        "url_mobile": "https://www.bizppurio.com/11",
        "url_pc": "https://www.bizppurio.com/22",
        "scheme_ios": "https://www.bizppurio.com/11"
      },
      {
        "img_url": "https://example.com/image.jpg"
      }
    ]
  },
  "button": [
    {
      "type": "WL",
      "url_mobile": "https://www.bizppurio.com/11",
      "url_pc": "https://www.bizppurio.com/22"
    },
    {
      "type": "WL",
      "url_mobile": "https://www.bizppurio.com/11",
      "url_pc": "https://www.bizppurio.com/22"
    }
  ],
  "coupon": {
    "title": "변수5 무료 쿠폰",
    "description": "#{변수6} 쿠폰 설명"
  }
}
채널 친구 › 전문 방식 › 캐러셀 피드 (CAROUSEL_FEED)
{
  "extra": {
    "chat_bubble_type": "CAROUSEL_FEED",
    "brand_message_type": "BASIC",
    "send_target": "friend",
    "carousel": {
      "list": [
        {
          "attachment": {
            "button": [
              {
                "type": "WL",
                "url_mobile": "https://www.bizppurio.com/변수4",
                "url_pc": "https://www.bizppurio.com/변수3"
              },
              {
                "type": "WL"
              }
            ],
            "coupon": {
              "title": "변수5 무료 쿠폰",
              "description": "변수6 쿠폰 설명"
            },
            "image": {
              "img_url": "https://example.com/image.jpg"
            }
          }
        },
        {
          "attachment": {
            "button": [
              {
                "type": "WL",
                "url_mobile": "https://www.bizppurio.com/변수4",
                "url_pc": "https://www.bizppurio.com/변수3"
              },
              {
                "type": "WL"
              }
            ],
            "coupon": {
              "title": "변수5 무료 쿠폰",
              "description": "변수6 쿠폰 설명"
            },
            "image": {
              "img_url": "https://example.com/image.jpg"
            }
          }
        },
        {
          "attachment": {
            "image": {
              "img_url": "https://example.com/image.jpg"
            }
          }
        },
        {
          "attachment": {
            "image": {
              "img_url": "https://example.com/image.jpg"
            }
          }
        },
        {
          "attachment": {
            "image": {
              "img_url": "https://example.com/image.jpg"
            }
          }
        },
        {
          "attachment": {
            "image": {
              "img_url": "https://example.com/image.jpg"
            }
          }
        }
      ]
    }
  }
}
채널 친구 › 전문 방식 › 프리미엄 동영상 (PREMIUM_VIDEO)
{
  "extra": {
    "chat_bubble_type": "PREMIUM_VIDEO",
    "brand_message_type": "BASIC",
    "send_target": "friend",
    "header": "템플릿 헤더변수1"
  },
  "button": [
    {
      "type": "WL",
      "url_mobile": "https://www.bizppurio.com/변수6",
      "url_pc": "https://www.bizppurio.com/변수5"
    }
  ],
  "coupon": {
    "title": "변수5 무료 쿠폰",
    "description": "변수6 쿠폰 설명"
  }
}
채널 친구 › 전문 방식 › 커머스 (COMMERCE)
{
  "extra": {
    "chat_bubble_type": "COMMERCE",
    "brand_message_type": "BASIC",
    "send_target": "friend",
    "additional_content": "템플릿 부가정보변수1"
  },
  "coupon": {
    "title": "변수5 무료 쿠폰",
    "description": "#{변수6} 쿠폰 설명"
  },
  "commerce": {
    "title": "상품 제목변수2."
  },
  "button": [
    {
      "type": "WL",
      "url_mobile": "https://www.bizppurio.com/11",
      "url_pc": "https://www.bizppurio.com/22"
    },
    {
      "type": "WL",
      "url_mobile": "https://www.bizppurio.com/11",
      "url_pc": "https://www.bizppurio.com/22"
    }
  ],
  "image": {
    "img_url": "https://example.com/image.jpg"
  }
}
채널 친구 › 전문 방식 › 캐러셀 커머스 (CAROUSEL_COMMERCE)
{
  "extra": {
    "chat_bubble_type": "CAROUSEL_COMMERCE",
    "brand_message_type": "BASIC",
    "send_target": "friend",
    "carousel": {
      "head": {
        "url_mobile": "https://www.bizppurio.com/11",
        "url_pc": "https://www.bizppurio.com/11",
        "scheme_ios": "https://www.bizppurio.com/11",
        "header": "캐러셀 인트로 헤더#{변수1}",
        "content": "캐러셀 인트로 내용변수2",
        "image_url": "https://example.com/image.jpg"
      },
      "list": [
        {
          "additional_content": "변수4",
          "header": "상품 제목변수4",
          "attachment": {
            "button": [
              {
                "type": "WL",
                "url_pc": "https://www.bizppurio.com/변수4",
                "url_mobile": "https://www.bizppurio.com/변수4"
              },
              {
                "type": "WL",
                "url_pc": "https://www.bizppurio.com/변수5",
                "url_mobile": "https://www.bizppurio.com/변수5"
              }
            ],
            "coupon": {
              "title": "변수5 무료 쿠폰",
              "description": "변수6 쿠폰 설명"
            },
            "commerce": {
              "title": "상품 제목변수4"
            }
          }
        }
      ]
    }
  }
}
채널 친구 › 자유형 › 텍스트 (TEXT)
{
  "extra": {
    "chat_bubble_type": "TEXT",
    "brand_message_type": "FREE",
    "send_target": "friend"
  },
  "button": [
    {
      "name": "버튼1",
      "type": "WL",
      "url_mobile": "https://www.bizppurio.com/",
      "url_pc": "https://www.bizppurio.com/"
    },
    {
      "name": "버튼2",
      "type": "WL",
      "url_mobile": "https://www.bizppurio.com/",
      "url_pc": "https://www.bizppurio.com/"
    },
    {
      "name": "버튼3",
      "type": "WL",
      "url_mobile": "https://www.bizppurio.com/",
      "url_pc": "https://www.bizppurio.com/"
    },
    {
      "name": "버튼4",
      "type": "WL",
      "url_mobile": "https://www.bizppurio.com/",
      "url_pc": "https://www.bizppurio.com/"
    }
  ],
  "coupon": {
    "title": "배송비 할인 쿠폰",
    "description": "쿠폰 상세 내용입니다.",
    "url_mobile": "https://bizppurio.com"
  }
}
채널 친구 › 자유형 › 이미지 (IMAGE)
{
  "extra": {
    "chat_bubble_type": "IMAGE",
    "brand_message_type": "FREE",
    "send_target": "friend"
  },
  "image": {
    "img_url": "https://example.com/image.jpg",
    "img_link": "https://www.bizppurio.com/"
  },
  "button": [
    {
      "name": "버튼1",
      "type": "WL",
      "url_mobile": "https://www.bizppurio.com/",
      "url_pc": "https://www.bizppurio.com/"
    },
    {
      "name": "버튼2",
      "type": "WL",
      "url_mobile": "https://www.bizppurio.com/",
      "url_pc": "https://www.bizppurio.com/"
    },
    {
      "name": "버튼3",
      "type": "WL",
      "url_mobile": "https://www.bizppurio.com/",
      "url_pc": "https://www.bizppurio.com/"
    },
    {
      "name": "버튼4",
      "type": "WL",
      "url_mobile": "https://www.bizppurio.com/",
      "url_pc": "https://www.bizppurio.com/"
    }
  ],
  "coupon": {
    "title": "배송비 할인 쿠폰",
    "description": "쿠폰 상세 내용입니다.",
    "url_mobile": "https://bizppurio.com"
  }
}
채널 친구 › 자유형 › 와이드 이미지 (WIDE)
{
  "extra": {
    "chat_bubble_type": "WIDE",
    "brand_message_type": "FREE",
    "send_target": "friend"
  },
  "image": {
    "img_url": "https://example.com/image.jpg",
    "img_link": "https://www.bizppurio.com/"
  },
  "button": [
    {
      "name": "버튼1",
      "type": "WL",
      "url_mobile": "https://www.bizppurio.com/",
      "url_pc": "https://www.bizppurio.com/"
    },
    {
      "name": "버튼2",
      "type": "WL",
      "url_mobile": "https://www.bizppurio.com/",
      "url_pc": "https://www.bizppurio.com/"
    }
  ],
  "coupon": {
    "title": "배송비 할인 쿠폰",
    "description": "쿠폰 상세 내용입니다.",
    "url_mobile": "https://bizppurio.com"
  }
}
채널 친구 › 자유형 › 와이드 리스트 (WIDE_ITEM_LIST)
{
  "extra": {
    "chat_bubble_type": "WIDE_ITEM_LIST",
    "brand_message_type": "FREE",
    "send_target": "friend",
    "header": "헤덩"
  },
  "item": {
    "list": [
      {
        "img_url": "https://example.com/image.jpg",
        "title": "타이틀 입니다.",
        "url_mobile": "https://daou.co.kr/"
      },
      {
        "img_url": "https://example.com/image.jpg",
        "title": "타이틀2 입니다.",
        "url_mobile": "https://daou.co.kr/2"
      },
      {
        "img_url": "https://example.com/image.jpg",
        "title": "타이틀3 입니다.",
        "url_mobile": "https://daou.co.kr/3"
      },
      {
        "img_url": "https://example.com/image.jpg",
        "title": "타이틀4 입니다.",
        "url_mobile": "https://daou.co.kr/4"
      }
    ]
  },
  "button": [
    {
      "name": "버튼1",
      "type": "WL",
      "url_mobile": "https://www.bizppurio.com/",
      "url_pc": "https://www.bizppurio.com/"
    },
    {
      "name": "버튼2",
      "type": "WL",
      "url_mobile": "https://www.bizppurio.com/",
      "url_pc": "https://www.bizppurio.com/"
    }
  ],
  "coupon": {
    "title": "배송비 할인 쿠폰",
    "description": "쿠폰 상세 내용입니다.",
    "url_mobile": "https://m.naver.com"
  }
}
채널 친구 › 자유형 › 캐러셀 피드 (CAROUSEL_FEED)
{
  "extra": {
    "chat_bubble_type": "CAROUSEL_FEED",
    "brand_message_type": "FREE",
    "send_target": "friend",
    "carousel": {
      "list": [
        {
          "header": "헤더입니다.",
          "message": "안녕하세요! 겨울 신상 패딩을 할인 판매 중입니다.\n지금 89,000원에 만나보세요.",
          "attachment": {
            "button": [
              {
                "name": "버튼1",
                "type": "WL",
                "url_mobile": "https://www.bizppurio.com/",
                "url_pc": "https://www.bizppurio.com/"
              },
              {
                "name": "버튼2",
                "type": "WL",
                "url_mobile": "https://www.bizppurio.com/",
                "url_pc": "https://www.bizppurio.com/"
              }
            ],
            "image": {
              "img_url": "https://example.com/image.jpg"
            },
            "coupon": {
              "title": "배송비 할인 쿠폰",
              "description": "쿠폰 상세 내용입니다.",
              "url_mobile": "https://bizppurio.com"
            }
          }
        },
        {
          "header": "헤더입니다.",
          "message": "안녕하세요! 겨울 신상 패딩을 할인 판매 중입니다.\n지금 89,000원에 만나보세요.",
          "attachment": {
            "button": [
              {
                "name": "버튼1",
                "type": "WL",
                "url_mobile": "https://www.bizppurio.com/",
                "url_pc": "https://www.bizppurio.com/"
              },
              {
                "name": "버튼2",
                "type": "WL",
                "url_mobile": "https://www.bizppurio.com/",
                "url_pc": "https://www.bizppurio.com/"
              }
            ],
            "image": {
              "img_url": "https://example.com/image.jpg"
            }
          }
        }
      ],
      "tail": {
        "url_mobile": "https://www.bizppurio.com/",
        "url_pc": "https://www.bizppurio.com/",
        "scheme_ios": "https://www.bizppurio.com/",
        "scheme_android": "https://www.bizppurio.com/"
      }
    }
  }
}
채널 친구 › 자유형 › 프리미엄 동영상 (PREMIUM_VIDEO)
{
  "extra": {
    "chat_bubble_type": "PREMIUM_VIDEO",
    "brand_message_type": "FREE",
    "send_target": "friend",
    "header": "헤더입니다."
  },
  "video": {
    "video_url": "https://tv.kakao.com/channel/XXXXX/cliplink/447422551",
    "thumbnail_url": "http://thumb.kakaocdn.net/dna/kamp/source/XXXXX/thumbs/thumb.jpg"
  },
  "button": [
    {
      "name": "버튼명입니다.",
      "type": "WL",
      "url_mobile": "https://www.naver.com"
    }
  ],
  "coupon": {
    "title": "배송비 할인 쿠폰",
    "description": "쿠폰 상세 내용입니다.",
    "url_mobile": "https://bizppurio.com"
  }
}
채널 친구 › 자유형 › 커머스 (COMMERCE)
{
  "extra": {
    "chat_bubble_type": "COMMERCE",
    "brand_message_type": "FREE",
    "send_target": "friend",
    "additional_content": "부가정보"
  },
  "commerce": {
    "title": "상품명입니다.",
    "regular_price": 10,
    "discount_price": 10,
    "discount_rate": "10",
    "discount_fixed": "10"
  },
  "image": {
    "img_url": "https://example.com/image.jpg"
  },
  "button": [
    {
      "name": "버튼1",
      "type": "WL",
      "url_mobile": "https://www.bizppurio.com/",
      "url_pc": "https://www.bizppurio.com/"
    },
    {
      "name": "버튼2",
      "type": "WL",
      "url_mobile": "https://www.bizppurio.com/",
      "url_pc": "https://www.bizppurio.com/"
    }
  ],
  "coupon": {
    "title": "배송비 할인 쿠폰",
    "description": "쿠폰 상세 내용입니다.",
    "url_mobile": "https://www.naver.com"
  }
}
채널 친구 › 자유형 › 캐러셀 커머스 (CAROUSEL_COMMERCE)
{
  "extra": {
    "chat_bubble_type": "CAROUSEL_COMMERCE",
    "brand_message_type": "FREE",
    "send_target": "friend",
    "carousel": {
      "head": {
        "header": "이번 주 특가 모음",
        "content": "엄선한 상품을 특별한 가격에 만나보세요.",
        "image_url": "https://example.com/image.jpg",
        "url_mobile": "https://www.bizppurio.com/",
        "url_pc": "https://www.bizppurio.com/",
        "scheme_android": "https://www.bizppurio.com/",
        "scheme_ios": "https://www.bizppurio.com/"
      },
      "list": [
        {
          "additional_content": "",
          "attachment": {
            "image": {
              "img_url": "https://example.com/image.jpg"
            },
            "commerce": {
              "title": "타이틀",
              "regular_price": 10,
              "discount_price": 10,
              "discount_rate": 10,
              "discount_fixed": 10
            },
            "button": [
              {
                "name": "버튼1",
                "type": "WL",
                "url_mobile": "https://www.bizppurio.com/",
                "url_pc": "https://www.bizppurio.com/"
              },
              {
                "name": "버튼2",
                "type": "WL",
                "url_mobile": "https://www.bizppurio.com/",
                "url_pc": "https://www.bizppurio.com/"
              }
            ]
          }
        }
      ],
      "tail": {
        "url_mobile": "https://www.bizppurio.com/",
        "url_pc": "https://www.bizppurio.com/",
        "scheme_ios": "https://www.bizppurio.com/",
        "scheme_android": "https://www.bizppurio.com/"
      }
    }
  }
}
sql/bizclient/biz_msg/fax

FAX

FAX 채널 — biz_msg 테이블 INSERT 방식으로 발송합니다.

MSG_TYPE = 2

한글 100자 이하의 표지를 포함한 이미지 및 문서를 팩스 번호로 발송하는 채널.

⚠️ FAX는 BIZCLIENT 전용 채널입니다.

biz_msg 컬럼 (FAX)

컬럼 타입 필수 설명 기본값
MSG_TYPE number(1) Y FAX = 2
CMID string(32) Y 데이터 ID (Primary Key, ASCII)
REQUEST_TIME datetime Y 데이터 등록 시간 NOW()
SEND_TIME datetime Y 발송 기준 시간 (예약 시 미래) NOW()
DEST_PHONE string(16) Y 수신 팩스번호
SEND_PHONE string(16) Y 발신 팩스번호 (사전 등록 필수)
SUBJECT string(64) N 표지 제목 (한글 100자 이하)
MSG_BODY string(4000) N 표지 내용
ATTACHED_FILE string(1000) Y 첨부 파일 경로 (여러 개는 | 로 구분)
COVER_FLAG number(1) N 팩스 표지 사용 여부 (0/1) 0
USE_PAGE number(2) N 발송 페이지 수 0
RETRY_CNT number(4) N 재시도 횟수
CINFO string(32) N Client Indexed Info — 사내 구분용. 특수기호 \/:*?"<>|. 사용 불가

응답·결과

  • 발송 결과: biz_msg.STATUS (0:대기, 7:발송중, 1:발송 후 대기, 2:발송완료) 및 CALL_STATUS 컬럼
  • 발송 페이지 수: USE_PAGE 컬럼에 기록

제한사항

항목
표지 제목 한글 100자 이하
첨부 포맷 TIF / PDF 등
SQL
INSERT INTO biz_msg (
  MSG_TYPE, CMID, REQUEST_TIME, SEND_TIME,
  DEST_PHONE, SEND_PHONE,
  SUBJECT, MSG_BODY,
  ATTACHED_FILE, COVER_FLAG
) VALUES (
  2, '201XXXXXXXXX', NOW(), NOW(),
  '03112341234', '0212341234',
  '표지제목', '표지내용',
  'document.tif',
  1
);
응답
200INSERT 성공 시 `STATUS=0` (발송 대기) 로 큐에 적재. BIZCLIENT 모듈이 폴링 → `STATUS=7` (발송 중) → `1` (발송 후 대기) → `2` (발송 완료). `CALL_STATUS` 컬럼에 [결과 코드](#tag/BizclientCodes) 기록.
sql/bizclient/biz_msg/phone

PHONE

PHONE 채널 — biz_msg 테이블 INSERT 방식으로 발송합니다.

MSG_TYPE = 3

한글 100자 이하의 TTS(Text-to-Speech) 또는 3분 미만의 WAVE 시나리오 파일을 전화로 발송하는 채널.
시나리오 답변(설문 응답) 기능도 지원.

⚠️ PHONE은 BIZCLIENT 전용 채널입니다.

biz_msg 컬럼 (PHONE)

컬럼 타입 필수 설명 기본값
MSG_TYPE number(1) Y PHONE = 3
CMID string(32) Y 데이터 ID (Primary Key, ASCII)
REQUEST_TIME datetime Y 데이터 등록 시간 NOW()
SEND_TIME datetime Y 발송 기준 시간 (예약 시 미래) NOW()
DEST_PHONE string(16) Y 수신번호
SEND_PHONE string(16) Y 발신번호 (사전 등록 필수)
MSG_BODY string(4000) Y TTS 변환 본문 (한글 100자 이하)
VXML_FILE string(64) N 음성 시나리오 파일명 (WAVE 시나리오 사용 시)
REPLY_FLAG number(1) N 시나리오 답변 기능 (Y:1, N:0) 0
SMS_FLAG number(1) N 실패 시 문자 전송 옵션 0
RETRY_CNT number(4) N 재시도 횟수
USE_TIME number(4) N 발송 소요 시간 (초) 0
SN_RESULT number(1) N 설문 조사 응답 값 (0~9) 0
ATTACHED_FILE string(1000) N WAVE 파일 경로
CINFO string(32) N Client Indexed Info — 사내 구분용. 특수기호 \/:*?"<>|. 사용 불가

응답·결과

  • 발송 결과: biz_msg.STATUS (0:대기, 7:발송중, 1:발송 후 대기, 2:발송완료) 및 CALL_STATUS 컬럼
  • 시나리오 답변 결과: SN_RESULT 컬럼에 0~9 의 값으로 기록
  • 통화 시간: USE_TIME 컬럼 (초 단위)

제한사항

항목
TTS 본문 한글 100자 이하
WAVE 파일 3분 미만, wav (8bit-8KHz mono 형식)
설문 응답 0~9 단일 자리 숫자
SQL
INSERT INTO biz_msg (
  MSG_TYPE, CMID, REQUEST_TIME, SEND_TIME,
  DEST_PHONE, SEND_PHONE, MSG_BODY
) VALUES (
  3, '201XXXXXXXXX', NOW(), NOW(),
  '01012345678', '0212341234',
  '본 메시지는 테스트입니다. 다우기술 비즈메시지 서비스를 이용해주셔서 감사합니다.'
);

INSERT INTO biz_msg (
  MSG_TYPE, CMID, REQUEST_TIME, SEND_TIME,
  DEST_PHONE, SEND_PHONE, MSG_BODY,
  VXML_FILE, REPLY_FLAG
) VALUES (
  3, '201XXXXXXXXX', NOW(), NOW(),
  '01012345678', '0212341234',
  'TTS 백업 본문',
  'survey_2025.vxml',
  1
);
응답
200INSERT 성공 시 `STATUS=0` (발송 대기) 로 큐에 적재. BIZCLIENT 모듈이 폴링 → `STATUS=7` (발송 중) → `1` (발송 후 대기) → `2` (발송 완료). `CALL_STATUS` 컬럼에 [결과 코드](#tag/BizclientCodes) 기록.

가이드

BIZCLIENT 운영 가이드 — 대체발송 / 지원 가능한 첨부파일 타입 / 운영 설정 옵션.

대체발송

BIZCLIENT 대체 발송 쿼리 — AT/BT + 1·2차 대체 발송 / RCS + 1·2차 대체 발송 INSERT 예제

발송 실패 시 다른 채널로 자동 전환. RE_TYPE 코드 정의는 발송 용어 — 대체발송타입 참고.

⚠️ 대체 발송을 사용하려면 비즈뿌리오 ID 가 대체 발송 사용 가능 으로 설정되어 있어야 합니다.

매핑 키 동작

대체 발송이 이루어진 경우 BIZCLIENT 는 결과 리포트 업데이트 시점에 대체 발송 정보를 추가 레코드 로 신규 생성:

  • 원본 메시지의 UMID ↔ 1차 대체 발송의 CMID
  • 2차 대체가 있는 경우: UMID 앞에 RE_ 가 추가된 문자열이 2차 대체의 CMID (1차 대체의 UMID 도 같은 값)

SMS / MMS 대체 — 본문 동작

  • RE_BODY 를 비워두면 원본 MSG_BODY 가 그대로 사용됨
  • 단, SMS 대체 의 경우 MSG_BODY 길이가 SMS 허용 길이(90바이트) 를 초과하면 발송되지 않음

AT/BT + 1차 대체 발송

AT + SMS 대체

INSERT INTO biz_msg (
  MSG_TYPE, CMID, REQUEST_TIME, SEND_TIME,
  DEST_PHONE, SEND_PHONE,
  MSG_BODY, TEMPLATE_CODE, SENDER_KEY, NATION_CODE,
  RE_TYPE, RE_BODY
) VALUES (
  6, '201XXXXXXXXX', NOW(), NOW(),
  '01012345678', '0212341234',
  '박다우 고객님 다우기술 비즈메시지 프로모션에 당첨 되었습니다.',
  '{템플릿코드}', '{발신프로필키}', '82',
  'SMS', '[다우기술] 응모하신 프로모션에 당첨되셨습니다.'
);

AT + MMS 대체

INSERT INTO biz_msg (
  MSG_TYPE, CMID, REQUEST_TIME, SEND_TIME,
  DEST_PHONE, SEND_PHONE,
  MSG_BODY, TEMPLATE_CODE, SENDER_KEY, NATION_CODE,
  RE_TYPE, RE_BODY, ATTACHED_FILE
) VALUES (
  6, '201XXXXXXXXX', NOW(), NOW(),
  '01012345678', '0212341234',
  '박다우 고객님 다우기술 비즈메시지 프로모션에 당첨 되었습니다.',
  '{템플릿코드}', '{발신프로필키}', '82',
  'MMS', '[다우기술] 응모하신 프로모션에 당첨되셨습니다.', '{첨부파일명.jpg}'
);

AT + RCS 대체BIZ_RCS 에 미리 등록된 RCS 메시지의 REFKEYRCS_REFKEY 로 연결.

INSERT INTO biz_msg (
  MSG_TYPE, CMID, REQUEST_TIME, SEND_TIME,
  DEST_PHONE, SEND_PHONE,
  MSG_BODY, TEMPLATE_CODE, SENDER_KEY, NATION_CODE,
  RE_TYPE, RCS_REFKEY
) VALUES (
  6, '201XXXXXXXXX', NOW(), NOW(),
  '01012345678', '0212341234',
  '박다우 고객님 다우기술 비즈메시지 프로모션에 당첨 되었습니다.',
  '{템플릿코드}', '{발신프로필키}', '82',
  'R', '{RCS_REFKEY}'
);

BT 의 1차 대체도 위 패턴과 동일하며, MSG_TYPE 만 9(BT) 로 변경.

AT/BT + 2차 대체 발송

1차 대체가 RCS 이고, RCS 도 실패할 경우 2차 대체로 SMS 또는 MMS 발송.

AT + RCS(1차) + SMS(2차)

INSERT INTO biz_msg (
  MSG_TYPE, CMID, REQUEST_TIME, SEND_TIME,
  DEST_PHONE, SEND_PHONE,
  MSG_BODY, TEMPLATE_CODE, SENDER_KEY, NATION_CODE,
  RE_TYPE, RE_BODY, RCS_REFKEY
) VALUES (
  6, '201XXXXXXXXX', NOW(), NOW(),
  '01012345678', '0212341234',
  '박다우 고객님 다우기술 비즈메시지 프로모션에 당첨 되었습니다.',
  '{템플릿코드}', '{발신프로필키}', '82',
  'RS', '[다우기술] 응모하신 프로모션에 당첨되셨습니다.', '{RCS_REFKEY}'
);

AT + RCS(1차) + MMS(2차)

INSERT INTO biz_msg (
  MSG_TYPE, CMID, REQUEST_TIME, SEND_TIME,
  DEST_PHONE, SEND_PHONE,
  MSG_BODY, TEMPLATE_CODE, SENDER_KEY, NATION_CODE,
  RE_TYPE, RE_BODY, ATTACHED_FILE, RCS_REFKEY
) VALUES (
  6, '201XXXXXXXXX', NOW(), NOW(),
  '01012345678', '0212341234',
  '박다우 고객님 다우기술 비즈메시지 프로모션에 당첨 되었습니다.',
  '{템플릿코드}', '{발신프로필키}', '82',
  'RM', '[다우기술] 응모하신 프로모션에 당첨되셨습니다.', '{첨부파일명.jpg}', '{RCS_REFKEY}'
);

RCS + 1차 대체 발송

RCS 발송 실패 시 SMS / MMS / AT / BT 중 하나로 대체.

RCS + SMS 대체

INSERT INTO biz_msg (
  MSG_TYPE, CMID, REQUEST_TIME, SEND_TIME,
  DEST_PHONE, SEND_PHONE,
  RCS_REFKEY, RE_TYPE, RE_BODY
) VALUES (
  8, '201XXXXXXXXX', NOW(), NOW(),
  '01012345678', '0212341234',
  '{RCS_REFKEY}', 'SMS', '[다우기술] 응모하신 프로모션에 당첨되셨습니다.'
);

RCS + MMS 대체

INSERT INTO biz_msg (
  MSG_TYPE, CMID, REQUEST_TIME, SEND_TIME,
  DEST_PHONE, SEND_PHONE,
  RCS_REFKEY, RE_TYPE, RE_BODY, ATTACHED_FILE
) VALUES (
  8, '201XXXXXXXXX', NOW(), NOW(),
  '01012345678', '0212341234',
  '{RCS_REFKEY}', 'MMS', '[다우기술] 응모하신 프로모션에 당첨되셨습니다.', '{첨부파일.jpg}'
);

RCS + AT 대체 — 알림톡 대체 발송은 MSG_BODY 필드의 데이터를 사용.

INSERT INTO biz_msg (
  MSG_TYPE, CMID, REQUEST_TIME, SEND_TIME,
  DEST_PHONE, SEND_PHONE,
  MSG_BODY, TEMPLATE_CODE, SENDER_KEY, NATION_CODE,
  RE_TYPE, RCS_REFKEY
) VALUES (
  8, '201XXXXXXXXX', NOW(), NOW(),
  '01012345678', '0212341234',
  '박다우 고객님 다우기술 비즈메시지 프로모션에 당첨 되었습니다.',
  '{템플릿코드}', '{발신프로필키}', '82',
  'K', '{RCS_REFKEY}'
);

RCS + BT 대체 — 브랜드메시지 대체도 MSG_BODY·TEMPLATE_CODE 등 채널 필수 컬럼을 그대로 포함하며 RE_TYPE = U.

INSERT INTO biz_msg (
  MSG_TYPE, CMID, REQUEST_TIME, SEND_TIME,
  DEST_PHONE, SEND_PHONE,
  MSG_BODY, TEMPLATE_CODE, SENDER_KEY, NATION_CODE,
  RE_TYPE, RCS_REFKEY
) VALUES (
  8, '201XXXXXXXXX', NOW(), NOW(),
  '01012345678', '0212341234',
  '박다우 고객님 다우기술 비즈메시지 프로모션에 당첨 되었습니다.',
  '{템플릿코드}', '{발신프로필키}', '82',
  'U', '{RCS_REFKEY}'
);

RCS + 2차 대체 발송

RCS 발송 실패 시 1차로 AT/BT, 그것도 실패하면 2차로 SMS/MMS 발송. RE_TYPE 은 1차·2차 코드를 조합합니다 (KS = AT→SMS, KM = AT→MMS, US = BT→SMS, UM = BT→MMS).

1차가 AT/BT 이므로 MSG_BODY 에 1차(AT/BT) 본문, RE_BODY 에 2차(SMS/MMS) 본문을 넣습니다. TEMPLATE_CODE·SENDER_KEY·NATION_CODE 등 1차 채널의 필수 컬럼을 모두 포함해야 합니다.

RCS + AT(1차) + SMS(2차)RE_TYPE = KS

INSERT INTO biz_msg (
  MSG_TYPE, CMID, REQUEST_TIME, SEND_TIME,
  DEST_PHONE, SEND_PHONE, RCS_REFKEY, RE_TYPE,
  MSG_BODY, TEMPLATE_CODE, SENDER_KEY, NATION_CODE, RE_BODY
) VALUES (
  8, '201XXXXXXXXX', NOW(), NOW(),
  '01012345678', '0212341234', '{RCS_REFKEY}', 'KS',
  '박다우 고객님, 알림톡 대체 본문입니다.',
  '{템플릿코드}', '{발신프로필키}', '82',
  '[다우기술] SMS 2차 대체 본문입니다.'
);

RCS + AT(1차) + MMS(2차)RE_TYPE = KM

INSERT INTO biz_msg (
  MSG_TYPE, CMID, REQUEST_TIME, SEND_TIME,
  DEST_PHONE, SEND_PHONE, RCS_REFKEY, RE_TYPE,
  MSG_BODY, TEMPLATE_CODE, SENDER_KEY, NATION_CODE, RE_BODY, ATTACHED_FILE
) VALUES (
  8, '201XXXXXXXXX', NOW(), NOW(),
  '01012345678', '0212341234', '{RCS_REFKEY}', 'KM',
  '박다우 고객님, 알림톡 대체 본문입니다.',
  '{템플릿코드}', '{발신프로필키}', '82',
  '[다우기술] MMS 2차 대체 본문입니다.', '{첨부파일명.jpg}'
);

RCS + BT(1차) + SMS(2차)RE_TYPE = US

INSERT INTO biz_msg (
  MSG_TYPE, CMID, REQUEST_TIME, SEND_TIME,
  DEST_PHONE, SEND_PHONE, RCS_REFKEY, RE_TYPE,
  MSG_BODY, TEMPLATE_CODE, SENDER_KEY, NATION_CODE, RE_BODY
) VALUES (
  8, '201XXXXXXXXX', NOW(), NOW(),
  '01012345678', '0212341234', '{RCS_REFKEY}', 'US',
  '박다우 고객님, 브랜드메시지 대체 본문입니다.',
  '{템플릿코드}', '{발신프로필키}', '82',
  '[다우기술] SMS 2차 대체 본문입니다.'
);

RCS + BT(1차) + MMS(2차)RE_TYPE = UM

INSERT INTO biz_msg (
  MSG_TYPE, CMID, REQUEST_TIME, SEND_TIME,
  DEST_PHONE, SEND_PHONE, RCS_REFKEY, RE_TYPE,
  MSG_BODY, TEMPLATE_CODE, SENDER_KEY, NATION_CODE, RE_BODY, ATTACHED_FILE
) VALUES (
  8, '201XXXXXXXXX', NOW(), NOW(),
  '01012345678', '0212341234', '{RCS_REFKEY}', 'UM',
  '박다우 고객님, 브랜드메시지 대체 본문입니다.',
  '{템플릿코드}', '{발신프로필키}', '82',
  '[다우기술] MMS 2차 대체 본문입니다.', '{첨부파일명.jpg}'
);

전체 코드 매핑은 발송 용어 — 대체발송타입 표 참고.

지원 가능한 첨부파일 타입

메시지 타입별로 첨부 가능한 파일 형식입니다.

MMS

구분 지원 형식
Image jpg
Audio ma3
Video k3g

Image 를 제외한 타입에 대해서는 전송은 되지만 일부 이동통신사 또는 단말기에서 지원하지 않을 수 있습니다.

AT / BT

구분 지원 형식
Button / Image json

PHONE

구분 지원 형식
Voice wav (8bit-8KHz mono 형식)

FAX

구분 지원 형식
Docs doc, docx, xls, xlsx, ppt, pptx, hwp, pdf, txt, html
Image bmp, gif, jpg, png

운영 설정 옵션

config/uds.conf (및 config/data/columns-{DBMS}.json) 에서 설정하는 모듈 운영 옵션입니다.

DB 데이터 복호화 — DB_DATA_DECRYPTION

BIZ_MSG.MSG_BODY / RE_BODY 등 본문이 암호화 상태로 DB에 저장된 경우, 모듈이 복호화 후 발송하도록 설정합니다. 기본 대상 필드는 MSG_BODYRE_BODY 입니다.

옵션 설명
DB_DATA_DECRYPTION A (API) 어플리케이션 단에서 AES 복호화
P (PLUG-IN) DBMS 에 설치된 복호화 함수(모듈)로 복호화
N (NONE) 사용 안 함 (기본값)
DB_DATA_DECRYPTION_FIELDS (필드 목록) 복호화 대상 필드. 기본 MSG_BODY|RE_BODY, 복수는 | 로 구분
USE_DECRYPTION_SEPARATION_FIELD Y / N 복호화 구분 필드(USE_DECRYPT) 사용 여부. 기본 Y
DB_DATA_DECRYPTION_FUNCTION (함수명) PLUG-IN 방식 — 복호화 함수명
DB_DATA_DECRYPTION_PARAMETER_COUNT (1~) PLUG-IN 함수 매개변수 개수. 기본 1
DB_DATA_DECRYPTION_PARAMETER_1~N (값) 매개변수 — 복호화 대상 필드 위치를 비워두면 모듈이 자동 입력
DB_DATA_DECRYPTION_KEY (키) API 방식 — AES 키. 모듈 정상 구동 시 자동 암호화되어 저장됨

사용 예시 (PLUG-IN 방식)

DB_DATA_DECRYPTION = P
DB_DATA_DECRYPTION_FIELDS = MSG_BODY|RE_BODY
DB_DATA_DECRYPTION_FUNCTION = DECRYPT_FUNCTION
DB_DATA_DECRYPTION_PARAMETER_COUNT = 3
DB_DATA_DECRYPTION_PARAMETER_1 = 1
DB_DATA_DECRYPTION_PARAMETER_2 = 'PHONE'
DB_DATA_DECRYPTION_PARAMETER_3 =

→ 호출되는 SQL: DECRYPT_FUNCTION(1, 'PHONE', MSG_BODY) / DECRYPT_FUNCTION(1, 'PHONE', RE_BODY)

백업 시 본문 길이만 보관 — USE_BACKUP_PERSONAL_DATA_PROCESSING (Y/N)

발송 완료 메시지가 메시지 테이블에서 로그 테이블로 이동할 때, MSG_BODY / RE_BODY내용 대신 길이만 저장합니다 (개인정보 최소 보관).

첨부파일 관리 — FILE_HANDLING_MODE

동작
0 (기본값) 첨부파일 데이터를 biz_msg 에서 관리. ATTACHED_FILE 에 파일명, 여러 개는 | 로 구분
1 FILE_PATH1~FILE_PATH5 컬럼(사용자 추가)으로 관리. 파일명을 포함한 전체 경로 입력
2 BIZ_ATTACHMENTS 테이블로 관리. 데이터 타입 입력 필요, 여러 개는 동일 MSG_KEY 입력

FILE_HANDLING_MODE = 2 의 데이터 타입: FILE(기본, 파일명) / HTTP(http·https URL) / JSON(알림톡·브랜드메시지 버튼 정보 JSONString).

FILE_HANDLING_MODE = 2 사용 시 biz_msg.ATTACHED_FILEMSG_KEY 를 넣고, 같은 키로 BIZ_ATTACHMENTS 테이블에 첨부 데이터를 등록합니다.

INSERT INTO biz_msg (
  MSG_TYPE, CMID, REQUEST_TIME, SEND_TIME, DEST_PHONE, SEND_PHONE,
  MSG_BODY, TEMPLATE_CODE, SENDER_KEY, NATION_CODE,
  RE_TYPE, RE_BODY, ATTACHED_FILE
) VALUES (
  6, '201XXXXXXXXX', NOW(), NOW(), '01012341234', '0212341234',
  '홍길동 고객님 다우기술 비즈메시지 프로모션에 당첨 되었습니다', '{템플릿코드}', '{발신프로필키}', '82',
  'MMS', '[다우기술] 응모하신 프로모션에 당첨되었습니다.', 'msgKey1'
);

BIZ_ATTACHMENTS 테이블 — 동일 MSG_KEY(msgKey1) 로 첨부 데이터 등록:

MSG_KEY SEQ TYPE CONTENTS
msgKey1 1 FILE 파일명
msgKey1 2 HTTP http://www.daou.co.kr/file/jpg.jpg
msgKey1 3 JSON 버튼 정보 JSON (아래)
{
  "button": [
    { "name": "미리 주문하기", "type": "WL", "url_mobile": "http://www.bizppurio.com" },
    { "name": "상담원 연결하기", "type": "MD" },
    { "name": "발송 알림 설정 보기", "type": "AL", "scheme_android": "daumapps://open", "scheme_ios": "daumapps://open" }
  ]
}

첨부파일 경로 — ABSOLUTE_PATH_OPTION (Y/N)

동작
N (상대경로) 파일명만 입력하고 기본 경로 ./spool 에 파일을 둔다
Y (절대경로) 파일명을 포함한 전체 경로(예: D:/img.jpg)를 입력

모듈 재구동 시 오래된 데이터 처리 — SEND_VALID_TIME (0~1440, 분)

모듈 재구동 / DB 세션 재연결 시 실패 처리할 발송 유효 시간 (대상: SEND_TIME).

의미
0 사용 안 함
1~1440 재구동 시점 기준 N분 지난 미발송 메시지 실패 처리 (결과코드 9034)
기본값 180 (3시간)

잔존 메시지 처리

네트워크 장애·모듈 비정상 종료 등으로 백업되지 않고 메시지 테이블에 남은 메시지를, 서버에 결과 재요청하거나 실패 처리하여 백업 테이블로 이동시키는 옵션입니다. BATCH 스레드에서 5분 간격으로 동작합니다.

⚠️ 사용 시 비즈 서버 통계와 고객사 DB 통계 간 불일치가 발생할 수 있습니다.

옵션 기본값 설명
REPORT_RECONFIRM_OPTION (Y/N) N STATUS=1(발송 후 대기)이고 발송 후 55시간(최대 리포트 타임아웃) 경과 메시지에 리포트 1회 재요청 후 STATUS=3 으로 변경. 3일 내 미수신 시 실패 처리 (결과코드 9023)
REPORT_RECONFIRM_COUNT 100 재요청 대상 메시지 FETCH COUNT
REMOVE_PRESEND_MSG_OPTION (Y/N) N STATUS=7(발송 중)이고 발송 후 3일(클라이언트 타임아웃) 경과 메시지를 실패 처리 (결과코드 9037)
REMOVE_PRESEND_MSG_COUNT 100 처리 대상 메시지 FETCH COUNT
WAIT_REPORT_HOUR 55 최대 리포트 타임아웃 시간 (최소 55)
CLIENT_TIMEOUT_HOUR 72 클라이언트 타임아웃 시간 (최소 56 = WAIT_REPORT_HOUR + 1)

RCS 대행사 ID — AGENCY_ID (biz_client_v3000 이상)

RCS 발신번호(chatbotId)에 대한 발송 권한이 대행사에 있는지 체크하며, 권한이 없으면 발송 실패합니다. 다우기술 대행사 ID 는 daoutech 이며 미설정 시 기본값으로 적용됩니다.

  • config/data/columns-{DBMS}.json 의 RCS BUTTONS 컬럼 정보 아래 AGENCY_ID 컬럼 정보 추가
  • 기존 BIZ_RCS 테이블이 있으면 AGENCY_ID VARCHAR(20) 컬럼 추가
  • 모듈 재구동 후 AGENCY_ID 컬럼에 대행사 ID 를 입력하여 발송

최초 발신사업자 식별코드 — RESELLERCODE (biz_client_v3015 이상)

특수부가사업자 등록번호(숫자 9자리)를 의미합니다.

  • USE_RESELLERCODE (Y/N, 기본 N) 설정 시 메시지 발송에 식별코드를 포함하여 전송
  • 메시지/로그 테이블에 RESELLERCODE VARCHAR(10) 컬럼 추가 (신규 설치 시 옵션 설정 후 구동하면 자동 추가)

CMID 추가 문자 사용 (biz_client_v4000 이상)

CMID 는 기본적으로 ASCII 범위 문자열만 입력 가능합니다.

동작
Y (기본값) ASCII 문자로 구성된 CMID 만 사용
N ASCII 범위 외 한글·특수문자 포함 허용

⚠️ 허용되지 않는 CMID 입력 시 발송이 실패할 수 있습니다.

중복 발송 제한 — DUPLICATE_SENDING_POLICY (biz_client_v3016 이상)

BIZCLIENT는 동일 메시지의 의도치 않은 중복 발송을 차단합니다. 옵션은 uds.conf 에서 설정합니다.

옵션 설명
DUPLICATE_SENDING_POLICY 0 사용 안 함 (기본값)
1 수신번호 기준으로 중복 차단
2 수신번호 + 메시지 내용 기준으로 차단
DUPLICATE_SENDING_MONIT_SECONDS 30 ~ 60 모니터링 시간 (초). 기본 30
DUPLICATE_SENDING_ALLOW_COUNT 1 이상 모니터링 시간 내 허용 발송 수. 기본 1
  • 적용 채널: SMS, LMS, MMS, AT, BT, RCS. 버튼·첨부파일·대체 발송 본문은 비교하지 않습니다.
  • 차단된 메시지는 CALL_STATUS = 9041 (중복 발송 차단) 로 기록됩니다.

예) 사용자가 OTP 인증 버튼을 1초 내 3번 클릭 → 정책 = 2 + ALLOW_COUNT = 1 이면 1건만 발송되고 나머지 2건은 차단됩니다.

RCS 연동 규격

BIZCLIENT RCS 발송의 상세 규격입니다 — MESSAGEBASE_ID(안드로이드/통합)·MESSAGE(RCS_BODY·media)·BUTTON.

MESSAGEBASE_ID

MESSAGEBASE_ID 는 메시지 포맷(카드 유형)을 지정하는 코드입니다. 발송하려는 메시지 형태에 맞는 ID 를 선택해 입력합니다. RCS 는 안드로이드 RCS통합 RCS 두 체계로 구분됩니다.

안드로이드 RCS 와 통합 RCS 공통점

  • 동일한 상품 타입 및 발송 변수 이용

안드로이드 RCS 와 통합 RCS 차이점

구분 (기존) 안드로이드 RCS 통합 RCS
수신 가능 단말 안드로이드 채팅+ 지원 단말 (예: 삼성 갤럭시) 국내 이통사와 RCS 연동된 모든 단말
* 애플 단말기 iOS 26 이상
* 안드로이드 10(Q-OS 버전) 이상
(광고) 표기 BIZ_RCS.HEADER 로 (광고) 표기 설정 메시지 타이틀 혹은 본문에 직접 표기하여 메시지 발송 (글자수에 포함)
무료수신거부 표기 BIZ_RCS.FOOTER 로 표기 설정 메시지 본문 끝에 직접 표기하여 메시지 발송 (글자수에 포함됨)
CopyAllowed 지원 — 메시지별 사용자 복사 가능 여부 설정 가능 미지원 — 단말 정책에 따라 복사 기능 제공됨
KISA 안심마크 (확인된 발신번호) 삼성 단말에 한하여 표시 삼성 단말에 한하여 표시
대화방 메뉴 지원 삼성 단말에 한하여 제공, 연내 타 제조사 확대 예정
오픈리치카드 지원 미지원

안드로이드 RCS

안드로이드 채팅+ 지원 단말(예: 삼성 갤럭시)에서 수신 가능한 표준 포맷입니다.

MESSAGEBASE_ID 목록

MESSAGEBASE_ID 상품 메시지 타입 카드(형태) 카드 장수 카드별 최대 버튼 수 최대 본문 글자 수
SS000000 SMS Standalone - 1 1 100
SL000000 LMS Standalone - 1 3 1300
SMwThT00 MMS 세로형(Tall) - 1 2 1300
SMwThM00 MMS 세로형(Medium) - 1 2 1300
CMwMhM0200 MMS 슬라이드형(Medium, 2장) Carousel Medium 2 2 글자/라인수 정의 표 참고
CMwMhM0300 MMS 슬라이드형(Medium, 3장) Carousel Medium 3 2 글자/라인수 정의 표 참고
CMwMhM0400 MMS 슬라이드형(Medium, 4장) Carousel Medium 4 2 글자/라인수 정의 표 참고
CMwMhM0500 MMS 슬라이드형(Medium, 5장) Carousel Medium 5 2 글자/라인수 정의 표 참고
CMwMhM0600 MMS 슬라이드형(Medium, 6장) Carousel Medium 6 2 글자/라인수 정의 표 참고
CMwShS0200 MMS 슬라이드형(Small, 2장) Carousel Small 2 2 글자/라인수 정의 표 참고
CMwShS0300 MMS 슬라이드형(Small, 3장) Carousel Small 3 2 글자/라인수 정의 표 참고
CMwShS0400 MMS 슬라이드형(Small, 4장) Carousel Small 4 2 글자/라인수 정의 표 참고
CMwShS0500 MMS 슬라이드형(Small, 5장) Carousel Small 5 2 글자/라인수 정의 표 참고
CMwShS0600 MMS 슬라이드형(Small, 6장) Carousel Small 6 2 글자/라인수 정의 표 참고
OMHITV0001 MMS (신규) 이미지 & 타이틀 강조형 (3:4) - 1 2 150
OMHITS0001 MMS (신규) 이미지 & 타이틀 강조형 (1:1) - 1 2 150
OMHIMV0001 MMS (신규) 이미지 강조형 (3:4) - 1 2 150
OMHIMS0001 MMS (신규) 이미지 강조형 (1:1) - 1 2 150
OMTBNV0001 MMS (신규) 썸네일형 (세로) - 1 2 150
OMTBNH0001 MMS (신규) 썸네일형 (가로) - 1 2 150
OMSNSS0001 MMS (신규) SNS형 - 1 2 150
OMSNSH0001 MMS (신규) SNS형 - 1 2 150

카드 장수가 2 이상인 슬라이드형(Carousel)의 본문 글자수는 고정값이 아니라 아래 카드 유형별 글자수/라인수 정의 표를 따릅니다.

템플릿군 (접두 코드별)

시작 접두 상품/구분 템플릿 유형 카드 장수 카드별 최대 버튼 수 최대 본문 글자 수
UBR 로 시작 템플릿별 상이 (텍스트 템플릿) 서술(description) 1 2 90
UBR 로 시작 템플릿별 상이 (텍스트 템플릿) 스타일(cell) 1 2 90
UBR 로 시작 템플릿별 상이 (텍스트 템플릿) 기본(free) 1 0 90
IBR 로 시작 템플릿별 상이 (이미지 템플릿) 신규 MMS 동일 (8종) 1 2 1000
LBR 로 시작 템플릿별 상이 (LMS 템플릿) LMS 템플릿 (4종) 1 2 1300
  • 포토 여부 / 타이틀 글자 수 / 버튼 개수에 따라 입력 가능한 본문 글자 수가 상이할 수 있습니다.
  • 이미지 사이즈 규격이 일치해야 정상적으로 발송됩니다.

카드 유형별 글자수 / 라인수 정의

  • 글자 수: 1줄당 정상적으로 표현 가능한 글자 수, 한글 '가' 기준 측정
  • 줄(라인) 수: expand 없이 메시지 버블 최대 크기에서 표현 가능한 description 줄 수
LMS (Standalone, No media)

[글자 수]

항목 타이틀 디스크립션 버튼명
글자 수 16 18 17

[줄 수 (접혀있는 경우)]

구성 버튼 0개 버튼 1개 버튼 2개 버튼 3개
디스크립션 only 28 26 24 22
타이틀 1줄 + 디스크립션 27 25 23 20
타이틀 2줄 + 디스크립션 26 23 21 19
MMS (Standalone Media Top — 세로형)

[글자 수]

항목 타이틀 디스크립션 버튼명
글자 수 16 18 17

[줄 수 (Media Tall 인 경우, 접혀있는 경우)]

구성 버튼 0개 버튼 1개 버튼 2개
디스크립션 only 9 8 6
타이틀 1줄 + 디스크립션 8 6 4
타이틀 2줄 + 디스크립션 7 5 3

[줄 수 (Media Medium 인 경우, 접혀있는 경우)]

구성 버튼 0개 버튼 1개 버튼 2개
디스크립션 only 15 13 11
타이틀 1줄 + 디스크립션 14 12 10
타이틀 2줄 + 디스크립션 13 11 9
MMS (Carousel Medium — 슬라이드형)

[글자 수]

항목 타이틀 디스크립션 버튼명
글자 수 13 14 13

[줄 수 (Media 없는 경우, RCS A2P 단말 기준)]

구성 버튼 0개 버튼 1개 버튼 2개
디스크립션 only 28 26 23
타이틀 1줄 + 디스크립션 27 25 23
타이틀 2줄 + 디스크립션 26 23 21
타이틀 3줄 + 디스크립션 24 22 20

[줄 수 (Media Medium 인 경우, RCS A2P 단말 기준)]

구성 버튼 0개 버튼 1개 버튼 2개
디스크립션 only 17 15 13
타이틀 1줄 + 디스크립션 16 14 12
타이틀 2줄 + 디스크립션 15 13 11
타이틀 3줄 + 디스크립션 14 12 10
MMS (Carousel Small — 슬라이드형)

[글자 수]

항목 타이틀 디스크립션 버튼명
글자 수 5 6 5

[줄 수 (Media Short 인 경우, RCS A2P 단말 기준)]

구성 버튼 0개 버튼 1개 버튼 2개
디스크립션 only 20 18 16
타이틀 1줄 + 디스크립션 19 17 15
타이틀 2줄 + 디스크립션 18 16 14
타이틀 3줄 + 디스크립션 17 15 13
타이틀 4줄 + 디스크립션 16 14 12
타이틀 5줄 + 디스크립션 15 13 11

통합 RCS

통합 RCS 는 단말 제조사 상관없이 국내 이통 3사에서 제공하는 RCS 표준 규격입니다. (안드로이드, iOS 26 버전 이상 지원)

통합 RCS — MESSAGEBASE_ID

MESSAGEBASE_ID 상품 유형명 최대 버튼 수 최대 본문 글자 수
RPSSAXX001 RCS SMS 통합 SMS 카드 1 100
RPLSAXX001 RCS LMS 통합 LMS 카드 3 1300
RPMSMMX001 RCS MMS 통합 MMS 카드 M 2 1300
RPMSMTX001 RCS MMS 통합 MMS 카드 T 2 1300
브랜드별 자동 발급* 텍스트 템플릿 통합 프리 템플릿 - 90
템플릿 등록 필요 텍스트 템플릿 통합 정보성 템플릿 - 90
템플릿 등록 필요 이미지 템플릿 통합 이미지 템플릿 M - 500
템플릿 등록 필요 이미지 템플릿 통합 이미지 템플릿 T - 500

* 프리템플릿

  • 브랜드마다 "통합 프리 템플릿" 1개가 자동 발급됩니다. (기존 발급된 프리 템플릿은 2026년 7월 31일까지 동시 이용 가능)
  • 사전 등록 없이 자동 발급되는 정보성 템플릿입니다. 각 브랜드의 통합 프리 템플릿 messagebase ID 는 RBC 접속하여 템플릿 목록에서 확인할 수 있습니다.

통합 RCS 기본 정보 (안드로이드 RCS 와의 분기)

설명
HEADER "0"만 허용, "1" 입력 시 실패 처리됨. "(광고)" 표시 기능 지원되지 않음
FOOTER 사용하지 않는 값입니다.
COPY_ALLOWED 사용하지 않는 값입니다.
title (RCS_BODY) 광고 메시지인 경우 "(광고)" 표기
description (RCS_BODY) 광고 메시지인 경우 본문 끝에 무료수신거부 방식 표기 필요

MESSAGE

메시지 본문(RCS_BODY)과 첨부 미디어(media) 규격입니다.

RCS_BODY 는 사용하는 MESSAGEBASE_ID(메시지 포맷)의 유형에 따라 입력 키가 달라집니다. 모든 값은 string 타입입니다.

1. 리치카드 넘버링형 (신규 MMS 제외)

필수 설명
media N main 첨부파일
title N main 제목
description N main 내용
title1 N 1번째 카드 제목
description1 N 1번째 카드 본문 텍스트
media1 N 1번째 카드 첨부파일

리치카드 개수·순서에 따라 넘버링합니다 (title1, title2 …).

2. 이미지 & 타이틀 강조형 (신규 MMS · 이미지 템플릿)

필수 설명
media Y 이미지 (*이미지 템플릿 발송 시 불필요)
mediaUrl N 이미지 클릭 시 랜딩 URL
title N 제목
subTitle1 Y 소제목 1
subDesc1 Y 소본문 1

3. 이미지 강조형 · SNS형 (신규 MMS · 이미지 템플릿)

필수 설명
media Y 이미지 (*이미지 템플릿 발송 시 불필요)
mediaUrl N 이미지 클릭 시 랜딩 URL
title N 제목
description Y 본문

4. 썸네일형 (세로) (신규 MMS · 이미지 템플릿)

필수 설명
media Y main 첨부파일 (*이미지 템플릿 발송 시 불필요)
mediaUrl N 이미지 클릭 시 랜딩 URL
title N 제목
description N 본문
subMedia1 Y 서브 이미지 1
subMediaUrl1 N 서브 이미지 1 클릭 시 랜딩 URL
subDesc1 Y 소본문 1

리치카드 개수·순서에 따라 넘버링합니다 (subMedia1, subMedia2 …).

5. 썸네일형 (가로) (신규 MMS · 이미지 템플릿)

필수 설명
media Y main 첨부파일 (*이미지 템플릿 발송 시 불필요)
mediaUrl N 이미지 클릭 시 랜딩 URL
title N 제목
description N 본문
subMedia1 Y 서브 이미지 1
subMediaUrl1 N 서브 이미지 1 클릭 시 랜딩 URL

RCS_BODY 넘버링 규칙

카드가 1개면 넘버 없이, 2개 이상이면 카드 순서대로 1, 2 … 를 키 뒤에 붙입니다.

// 카드 1개
{
  "title": "카드",
  "media": "등록된 이미지 URL",
  "description": "안녕하세요!"
}
// 카드 2개 이상
{
  "title1": "카드",
  "media1": "등록된 이미지 URL",
  "description1": "안녕하세요!",
  "title2": "카드2",
  "media2": "등록된 이미지 URL",
  "description2": "안녕하세요!"
}

통합 RCS LMS (MESSAGEBASE_ID = RPLSAXX001) 예시:

{
  "title": "줄바꿈 없는 14자 권장, 최대 30자",
  "description": "(광고)\n안녕하세요! RCS LMS\n무료 수신 거부 080-1234-5678"
}

media 종류

1. 이미지

비즈뿌리오 사이트 [메시지관리] – [RCS 관리] – [RCS 이미지 관리] 에서 등록한 이미지를 사용합니다. 이미지는 등록일로부터 365일간 발송 가능하며 이후 자동 삭제됩니다.

항목
포맷 maapfile://{fileId}
예시 "media": "maapfile://..."

2. 동영상 스트리밍

  • 3가지 형태의 YouTube URL 주소를 지원하며, 정확한 형식을 준수해야 합니다 (일부만 일치하면 실패).
  • 동영상 썸네일은 등록된 이미지만 사용 가능하며, YouTube URL 뒤에 콤마(,)와 함께 입력합니다. 콤마 외 공백을 포함하면 실패합니다.
  • 동영상 발송 시 Footer 에 동영상 재생 시 데이터 요금제가 적용됩니다. 문구가 자동 삽입됩니다.
항목
포맷 https://www.youtube.com/watch?v=[videoId],maapfile://{썸네일 fileId}
포맷 https://youtu.be/[videoId],maapfile://{썸네일 fileId}
포맷 https://m.youtube.com/watch?v=[videoId],maapfile://{썸네일 fileId}
예시 "media1": "https://www.youtube.com/watch?v=...,maapfile://..."

BUTTON

RCS 에 버튼 링크를 추가할 경우 BIZ_RCS.BUTTONS 필드에 아래 JSON 구조로 입력합니다.

ℹ️ 외부 컬럼 키는 대문자 BUTTONS 이지만, JSON 내부 키는 소문자 suggestions / action 을 사용합니다 (JSON KEY 대소문자 구분).

단계 타입 필수 설명
BUTTONS suggestions Array N 버튼 묶음
suggestions action Object Y 버튼 동작
action [Action 타입] Object Y 아래 Action 타입 중 하나
action displayText text Y 버튼에 출력될 텍스트
action postback Object N 콜백 데이터
postback data text Y postback 데이터

Action 타입

# Action 동작 중첩 필드
1 urlAction URL 연결하기 openUrlurl
2 dialerAction 전화 연결하기 dialPhoneNumberphoneNumber
3 mapAction 지도 보여주기 showLocationlocation(query / latitude / longitude / label), fallbackUrl
4 mapAction 현재 위치 공유하기 requestLocationPush
5 calendarAction 캘린더 등록 createCalendarEventstartTime / endTime / title / description
6 composeAction 메시지 전송 composeTextMessagephoneNumber / text
7 clipboardAction 복사하기 copyToClipboardtext

BUTTONS 카드 패딩 규칙

BUTTONS 배열은 카드 수만큼 요소를 가집니다. 버튼이 없는 카드는 빈 객체 {} 로 패딩합니다. 예) 카드 3장에 버튼이 각각 2개 / 0개 / 1개인 경우:

{
  "buttons": [
    { "suggestions": [
        { "action": {
            "urlAction": { "openUrl": { "url": "https://..." } },
            "displayText": "Open website or deep link",
            "postback": { "data": "set_by_chatbot_open_url" }
        }},
        { "action": {
            "urlAction": { "openUrl": { "url": "https://..." } },
            "displayText": "Open website or deep link",
            "postback": { "data": "set_by_chatbot_open_url_2" }
        }}
    ]},
    {},
    { "suggestions": [
        { "action": {
            "urlAction": { "openUrl": { "url": "https://..." } },
            "displayText": "Open website or deep link",
            "postback": { "data": "set_by_chatbot_open_url_2" }
        }}
    ]}
  ]
}

카카오 연동 규격

BIZCLIENT 카카오 발송(알림톡·브랜드메시지)의 ATTACHMENT JSON 상세 규격과 발송 예시입니다. 각 발송 페이지(알림톡·브랜드메시지)에서 이 페이지를 참조합니다.

알림톡

알림톡 발송 시 ATTACHED_FILE 로 첨부하는 ATTACHMENT JSON 규격입니다.

ATTACHMENT JSON 최상위 구조

타입 설명
button BUTTON[] 버튼 배열 (최대 5개)
item_highlight ITEMHIGHLIGHT 아이템 하이라이트
item ITEM 아이템리스트와 요약정보
extra EXTRA 추가 기능 (강조표기·바로연결·헤더·대표링크·msg_type AT/AI 구분 등)

알림톡 버튼

ATTACHMENT JSON · button[] 필드

JSON 파일 최상위 button 은 배열이며 최대 5개. 바로연결(extra.supplement.quick_reply) 사용 시 버튼은 2개로 제한.

타입 필수 설명
name text(14) Y 버튼 제목. AC 타입인 경우 채널 추가 로 고정
type text(2) Y 버튼 타입 (아래 [버튼 타입] 참조)
url_pc text - PC 환경에서 버튼 클릭 시 이동할 URL
url_mobile text - Mobile 환경에서 버튼 클릭 시 이동할 URL
scheme_ios text - Mobile iOS 환경에서 버튼 클릭 시 실행할 Application Custom Scheme
scheme_android text - Mobile Android 환경에서 버튼 클릭 시 실행할 Application Custom Scheme
chat_extra text(50) - 상담톡/봇 전환 시 전달할 메타정보
chat_event text(50) - 봇 전환 시 연결할 봇 이벤트명
plugin_id text(24) - 플러그인 ID
relay_id text - 플러그인 실행 시 X-Kakao-Plugin-Relay-Id 헤더로 전달받을 값
oneclick_id text - 원클릭 결제 플러그인에서 사용하는 결제 정보
product_id text - 원클릭 결제 플러그인에서 사용하는 결제 정보
biz_form_id text - 카카오 비즈니스폼 ID (BF 타입)
tel_number text(14) - 전화번호 (숫자·하이픈 포함 최대 14자). ex) 1234-5678, 12345678
map_address text - 지도보기 버튼 클릭 시 보여줄 주소. ex) 경기도 성남시 분당구 판교역로 166
map_coordinates text - 지도보기 버튼 클릭 시 보여줄 위경도 좌표. map_address 와 함께 입력 시 map_address 우선. ex) 37.3955,127.1103

버튼 타입

type 설명 사용 가능 파라미터 필수 파라미터
WL 지정한 웹 링크로 이동 name
type
url_mobile
url_pc
name
type
url_mobile
AL 지정한 앱 스킴 또는 웹 링크로 이동 name
type
scheme_android
scheme_ios
url_mobile
url_pc
name
type
(다음 중 2가지 이상)
scheme_android
scheme_ios
url_mobile
DS 버튼 클릭 시 배송조회 페이지로 이동 name
type
name
type
BK 해당 버튼 텍스트 발송 name
type
name
type
MD 해당 버튼 텍스트 + 메시지 본문 발송 name
type
name
type
BC 상담톡을 이용하는 카카오톡 채널만 이용 가능 name
type
chat_extra
name
type
BT 카카오 I 오픈빌더의 챗봇을 사용하는 카카오톡 채널만 이용 가능 name
type
chat_extra
chat_event
name
type
AC 버튼 클릭 시 카카오톡 채널 추가 name
type
name
type
P1 이미지 보안 전송 플러그인 name
type
name
type
P2 개인정보이용 플러그인 name
type
name
type
P3 원클릭 결제 플러그인 name
type
name
type
(다음 중 1가지 이상)
oneclick_id
product_id
BF 카카오 비즈니스폼을 실행 name
type
biz_form_id
name
type
biz_form_id
TN 전화 앱 실행 (모바일 환경에서만 이용 가능) name
type
tel_number
name
type
tel_number
MP 버튼 클릭 시 지도 보기 name
type
map_address
map_coordinates
name
type
(다음 중 1가지 이상)
map_address
map_coordinates

item_highlight 필드 (아이템 하이라이트, JSON · N)

타입 필수 설명
title text(30) Y 타이틀 (이미지가 있는 경우 최대 21자). 내용 마지막에 \s 플래그 포함 시 취소선 스타일 적용
description text(19) Y 부가정보 (이미지가 있는 경우 최대 13자)

item 필드 (아이템리스트 + 요약정보, JSON · N)

타입 필수 설명
list array N 아이템리스트 (최소 2개 ~ 최대 10개)
list[].title text(6) Y 타이틀
list[].description text(23) Y 부가정보
summary json N 아이템 요약정보
summary.title text(6) Y 타이틀
summary.description text(14) Y 가격정보. 허용 문자: 통화기호(유니코드 통화기호, 元/円/원), 통화코드(ISO 4217), 숫자, 콤마, 소수점, 공백. 소수점 2자리까지 허용

extra 필드 (추가 기능, JSON)

타입 필수 설명
title text(50) - 템플릿 내용 중 강조 표기할 핵심 정보 (강조표기)
supplement json - 메시지에 첨부할 바로연결 (아래 [supplement] 참조)
price number - 모먼트 광고 전환 최적화 전용. 메시지 내 포함된 가격/금액/결제금액
currency_type text(3) - 모먼트 광고 전환 최적화 전용. 가격/금액/결제금액의 통화단위. KRW·USD·EUR 등 국제 통화 코드
header text(16) - 메시지 상단에 표기할 제목
msg_type text N 카카오 발송 유형 (AT: 알림톡, AI: 이미지 알림톡). 이미지(IMAGE) 강조 유형 템플릿은 AI 필수 입력
link json N 대표 링크 (아래 필드)
link.url_mobile text - Mobile 환경에서 클릭 시 이동할 URL
link.url_pc text - PC 환경에서 클릭 시 이동할 URL
link.scheme_android text - Mobile Android 환경에서 클릭 시 실행할 Application Custom Scheme
link.scheme_ios text - Mobile iOS 환경에서 클릭 시 실행할 Application Custom Scheme

알림톡 바로연결

extra.supplement 필드 (바로연결)

바로연결은 알림톡 하단에 가로 슬라이드 형태로 표시되며 웹/앱 연결·상담톡 전환 등을 호출하는 기능. 상담톡 또는 챗봇을 사용하는 발신프로필만 이용 가능. 최대 10개까지 사용 가능하며, 사용 시 버튼 개수는 2개로 제한.

supplement.quick_reply[] 필드:

타입 필수 설명
name text(14) Y 바로연결 제목
type text(2) Y 바로연결 타입 (아래 [바로연결 타입] 참조)
scheme_android text - Mobile Android 환경에서 바로연결 클릭 시 실행할 Application Custom Scheme
scheme_ios text - Mobile iOS 환경에서 바로연결 클릭 시 실행할 Application Custom Scheme
url_mobile text - Mobile 환경에서 바로연결 클릭 시 이동할 URL
url_pc text - PC 환경에서 클릭 시 이동할 URL
chat_extra text(50) - 상담톡/봇 전환 시 전달할 메타정보
chat_event text(50) - 봇 전환 시 연결할 봇 이벤트명

바로연결 타입

type 설명 사용 가능 파라미터 필수 파라미터
WL 지정한 웹 링크로 이동 name
type
url_mobile
url_pc
name
type
url_mobile
AL 지정한 앱 스킴 또는 웹 링크로 이동 name
type
scheme_android
scheme_ios
url_mobile
url_pc
name
type
(다음 중 2가지 이상)
scheme_android
scheme_ios
url_mobile
BK 해당 버튼 텍스트 발송 name
type
name
type
BC 상담톡을 이용하는 카카오톡 채널만 이용 가능 name
type
chat_extra
name
type
BT 카카오 I 오픈빌더의 챗봇을 사용하는 카카오톡 채널만 이용 가능 name
type
chat_extra
chat_event
name
type
BF 카카오 비즈니스폼을 실행 name
type
biz_form_id
name
type
biz_form_id

강조표기 / 아이템리스트 규칙

  • 강조표기 (extra.title): 템플릿 내용 중 강조 표기할 핵심 정보. 강조 표기 타이틀은 최대 50자, 알림톡 본문(1000자)에 포함되지 않음.
  • 이미지·아이템리스트: 기본 텍스트 알림톡에 (이미지 / 헤더 / 아이템 하이라이트 / 아이템리스트 / 아이템 요약정보) 5개 항목이 추가 구성. 이미지·헤더·아이템 하이라이트 영역을 필요에 따라 1개 이상 필수 선택하여 템플릿 등록. 템플릿당 고정 이미지만 사용 가능. 아이템리스트는 최소 2개 ~ 최대 10개.
  • msg_type: 알림톡 템플릿 강조 유형이 이미지형(IMAGE)인 경우에만 msg_typeAI 로 설정해야 발송 가능. (아이템리스트형이고 이미지가 포함된 경우 AI 로 설정 시 발송 실패)

ATTACHMENT JSON 예시

버튼 (button.json):

{
  "button": [
    { "name": "미리 주문하기", "type": "WL", "url_mobile": "http://www.bizppurio.com" },
    { "name": "상담원 연결하기", "type": "MD" },
    { "name": "방송 알림 설정 보기", "type": "AL", "scheme_android": "daumapps://open", "scheme_ios": "daumapps://open" }
  ]
}

바로연결 (quick_reply.json):

{
  "button": [
    { "name": "비즈뿌리오 바로가기", "type": "WL", "url_mobile": "https://www.bizppurio.com/" }
  ],
  "extra": {
    "supplement": {
      "quick_reply": [
        { "name": "비즈뿌리오", "type": "WL", "url_mobile": "https://www.bizppurio.com/" },
        { "name": "봇키워드하기", "type": "BK" },
        { "name": "메시지전달하기", "type": "MD" },
        { "name": "상담톡전환", "type": "BC" }
      ]
    }
  }
}

강조표기 (title.json, 버튼 없는 경우):

{
  "extra": { "title": "입금 123,456 원" }
}

강조표기 (title.json, 버튼 있는 경우):

{
  "button": [
    { "name": "채널 추가", "type": "AC" }
  ],
  "extra": { "title": "입금 123,456 원" }
}

이미지형 (alimtalk_image.json):

{
  "extra": { "msg_type": "AI" }
}

아이템리스트형 — 헤더 + 아이템리스트 + 요약정보 (alimtalk_item_list.json):

{
  "item": {
    "list": [
      { "title": "가입일자", "description": "2021.5.23" },
      { "title": "이름", "description": "김카카오" }
    ],
    "summary": { "title": "구매가격", "description": "18,000 원" }
  },
  "extra": { "header": "카카오 가입을 환영합니다.", "msg_type": "AT" }
}

아이템리스트형 — 버튼 + 이미지 + 아이템 하이라이트 (alimtalk_item_list_button.json):

{
  "button": [
    { "name": "채널 추가", "type": "AC" }
  ],
  "item_highlight": { "title": "가입 환영 포인트", "description": "10,000P" }
}

브랜드메시지

브랜드메시지 소개

ATTACHMENT JSON extra (snake_case)

타입 필수 설명
chat_bubble_type text Y TEXT / IMAGE / WIDE / WIDE_ITEM_LIST / CAROUSEL_FEED / PREMIUM_VIDEO / COMMERCE / CAROUSEL_COMMERCE
brand_message_type text Y BASIC (기본형) / FREE (자유형)
send_target text Y 발송 대상 — marketing (고객사의 광고성 정보 수신동의 회원) / friend (채널 친구)
targeting text N 타겟팅 — send_target=marketing 일 때만 필수(발송 권한 신청 필요), friend 일 때 미사용. M 광고성 수신동의 회원 / N 수신동의 회원 ∖ 채널 친구 / O 수신동의 회원 ∩ 채널 친구
push_alarm text(1) N Y/N (기본 Y)
group_tag_key text(40) N 그룹태그 키 (자유형) — 등록 시 템플릿 통계 확인 가능
message_variable object N 메시지 영역 변수 (key=템플릿 변수명, value=치환값)
button_variable object N 버튼 링크 변수
coupon_variable object N 쿠폰 링크 변수
image_variable array N 이미지 변수
video_variable object N 비디오 변수 (PREMIUM_VIDEO 전용)
commerce_variable object N 커머스 변수 (COMMERCE 전용)
carousel_variable array N 캐러셀 변수 배열
unsubscribe_phone_number text(13) N 무료수신거부 전화번호 — send_target=marketing 일 때만 사용 (예: 080-1234-1234)
unsubscribe_auth_number text(10) N 무료수신거부 인증번호 — marketing 일 때만 사용, unsubscribe_phone_number 없이 단독 입력 불가
header text(25) N 헤더. WIDE_ITEM_LIST 최대 20자(BASIC 최소 1자)·PREMIUM_VIDEO 최대 20자, 둘 다 줄바꿈 불가
additional_content text(34) N 부가정보. COMMERCE 최대 34자(공백 포함, 줄바꿈 ≤1)
adult text(1) N 성인용 메시지 여부 Y/N. 기본값 N (자유형(FREE) 전용)
carousel json N 캐러셀 객체. CAROUSEL_FEED / CAROUSEL_COMMERCE 시 필수. 아래 CAROUSEL 참조

chat_bubble_type 8종 · 본문 영역(message) 글자수

extra.chat_bubble_type 으로 말풍선 형태를 지정한다. 본문 텍스트는 MSG_BODY 컬럼(=message)에 넣는다.

chat_bubble_type 설명 message(=MSG_BODY) image item video commerce carousel
TEXT 텍스트 필수, 최대 1,300자 (줄바꿈 ≤99, URL 가능) - - - - -
IMAGE 이미지 필수, 최대 1,300자 (줄바꿈 ≤99, URL 가능) 필수 - - - -
WIDE 와이드 이미지 필수, 최대 76자 (줄바꿈 ≤5) 필수 - - - -
WIDE_ITEM_LIST 와이드 리스트 사용 안 함 - 필수 - - -
PREMIUM_VIDEO 프리미엄 동영상 선택, 최대 76자 (줄바꿈 ≤5) - - 필수 - -
COMMERCE 커머스 사용 안 함 필수 - - 필수 -
CAROUSEL_FEED 캐러셀 피드 사용 안 함 - - - - 필수
CAROUSEL_COMMERCE 캐러셀 커머스 사용 안 함 - - - - 필수
  • unsubscribe_phone_number / unsubscribe_auth_number둘 다 미입력 시 발신프로필에 등록된 무료수신거부 정보로 발송된다. unsubscribe_phone_number 없이 unsubscribe_auth_number 만 입력은 불가.

전문방식 본문 객체 스키마 (brand_message_type=BASIC)

전문방식은 등록된 템플릿 구조를 기준으로 본문 객체를 직접 전송한다. 변수가 존재하는 영역의 정보만 전달하고(변수 없는 영역은 생략), 변수가 있는 버튼을 보낼 때는 type 필드를 함께 전달한다(변수 없는 버튼도 type 필요).

image (json) — IMAGE·WIDE·COMMERCE 필수
타입 필수(BASIC / FREE) 설명
img_url text (BASIC: N) / FREE: Y 이미지 업로드 API로 등록한 이미지 URL
img_link text(1000) N 이미지 클릭 시 이동 URL. 미설정 시 카카오톡 내 이미지 뷰어 사용
item (json) — WIDE_ITEM_LIST 필수 (ITEM 구조)

item.list[] 배열. 와이드 아이템 목록.

타입 필수(BASIC / FREE) 설명
list array (BASIC: N) / FREE: Y 와이드 아이템 목록
list[].title text(25) 조건부 아이템 제목. 1번째 최대 25자, 2~5번째 최대 30자 (줄바꿈 ≤1)
list[].img_url text (BASIC: N) / FREE: Y 아이템 이미지 URL
list[].url_mobile text(1000) (BASIC: N) / FREE: Y Mobile 클릭 시 이동 URL
list[].url_pc text(1000) N PC 클릭 시 이동 URL
list[].scheme_android text(1000) N Android custom scheme
list[].scheme_ios text(1000) N iOS custom scheme
coupon (json) — 메시지 최하단에 쿠폰 추가

채널 쿠폰 URL(포맷 alimtalk=coupon://) 사용 시 scheme_android·scheme_ios 중 하나 필수. 기본 쿠폰 사용 시 url_mobile 필수.

타입 필수(BASIC / FREE) 설명
title text (BASIC: N) / FREE: Y 쿠폰 제목. 형식: ${숫자}원 할인쿠폰(1~99,999,999) / ${숫자}% 할인 쿠폰(1~100) / 배송비 할인 쿠폰 / ${7자 이내} 무료 쿠폰 / ${7자 이내} UP 쿠폰
description text (BASIC: N) / FREE: Y 쿠폰 설명. WIDE·WIDE_ITEM_LIST·PREMIUM_VIDEO 최대 18자, 그 외 최대 12자 (줄바꿈 불가)
url_pc text(1000) N PC 클릭 시 이동 URL
url_mobile text(1000) 조건부 Mobile 클릭 시 이동 URL
scheme_android text(1000) 조건부 Android custom scheme
scheme_ios text(1000) 조건부 iOS custom scheme

변수분리 방식에서 coupon_variable"ESCAPE_COUPON" 을 넣으면 템플릿에 쿠폰이 있어도 말풍선에 포함하지 않는다.

commerce (json) — COMMERCE 필수
타입 필수(BASIC / FREE) 설명
title text(30) (BASIC: N) / FREE: Y 상품 제목. 최대 30자 (줄바꿈 불가)
regular_price number (BASIC: N) / FREE: Y 정상 가격 (0 ~ 99,999,999)
discount_price number N 할인 후 가격 (0 ~ 99,999,999)
discount_rate number N 할인율 (0 ~ 100). 할인가격 존재 시 discount_rate·discount_fixed 중 하나 필수
discount_fixed number N 정액 할인 가격 (0 ~ 999,999). 할인가격 존재 시 discount_rate·discount_fixed 중 하나 필수
video (json) — PREMIUM_VIDEO 필수
타입 필수(BASIC / FREE) 설명
video_url text(500) (BASIC: N) / FREE: Y 카카오TV 동영상 URL
thumbnail_url text(500) 조건부 동영상 썸네일용 이미지 URL(이미지 업로드 API 등록). 없으면 기본 썸네일. 비공개 동영상이면 필수

브랜드메시지 버튼

개수 제약: TEXT·IMAGE = 쿠폰 적용 시 최대 4개·그 외 최대 5개 / WIDE·WIDE_ITEM_LIST = 최대 2개 / PREMIUM_VIDEO = 최대 1개 / COMMERCE = 최소 1개·최대 2개

타입 필수(BASIC / FREE) 설명
name text(28) (BASIC: 생략 가능) / FREE: Y 버튼 제목. TEXT·IMAGE 최대 14자, 그 외 최대 8자
type text(2) Y 버튼 타입(AC/WL/AL/BK/MD/BC/BT/BF). 버튼 타입별 속성 참조
url_pc text(1000) N PC 클릭 시 이동 URL
url_mobile text(1000) 조건부 Mobile 클릭 시 이동 URL
scheme_ios text(1000) 조건부 iOS custom scheme
scheme_android text(1000) 조건부 Android custom scheme
chat_extra text N 상담톡↔카카오톡 챗봇 전환 시 전달 메타정보 (BC/BT)
chat_event text N 카카오톡 챗봇 전환 시 연결할 이벤트명 (BT)
biz_form_key text N 비즈니스폼 업로드로 발급받은 bizFormKey (BF)

버튼 타입별 속성

타입 설명 사용 가능 파라미터 필수 파라미터
AC 카카오톡 채널 추가(강조형 노란 버튼). TEXT·IMAGE는 첫 번째, 그 외 두 번째 버튼 위치. name은 "채널 추가" 고정. 캐러셀형은 전체 통틀어 1개. targeting M·N만 가능 name
type
name
type
WL 지정한 웹 링크로 이동 name
type
url_mobile
url_pc
name
type
url_mobile
AL 지정한 앱 스킴 또는 웹 링크로 이동 name
type
scheme_android
scheme_ios
url_mobile
url_pc
name
type
(다음 중 2가지 이상)
scheme_android
scheme_ios
url_mobile
BK 버튼 텍스트 발송 name
type
name
type
MD 버튼 텍스트 + 본문 발송 name
type
name
type
BC 상담톡 채널 전용 name
type
chat_extra
name
type
BT 카카오 I 오픈빌더 챗봇 채널 전용 name
type
chat_extra
chat_event
name
type
BF 카카오 비즈니스폼 실행(강조형). AC 유무에 따라 위치 가변. name은 "톡에서 예약하기/설문하기/응모하기" 중 name
type
biz_form_key
name
type
biz_form_key

extra.carousel 하위 head(인트로) · list[](아이템) · tail(더보기)로 구성.

리스트 개수 규칙: 인트로(head) 사용 시 1~6개, 미사용 시 2~6개.

carousel.head (json) — 캐러셀 인트로 (선택)

타입 필수(BASIC / FREE) 설명
header text(20) (BASIC: N) / FREE: Y 인트로 헤더 (줄바꿈 불가)
content text(50) (BASIC: N) / FREE: Y 인트로 내용 (줄바꿈 ≤2)
image_url text (BASIC: N) / FREE: Y 인트로 이미지 주소
url_mobile text(1000) 조건부 Mobile 클릭 시 이동 URL
url_pc text(1000) N PC 클릭 시 이동 URL
scheme_android text(1000) N Android custom scheme
scheme_ios text(1000) N iOS custom scheme

carousel.list[] (array) — 캐러셀 리스트

타입 필수 설명
header text(20) CAROUSEL_FEED 필수 / CAROUSEL_COMMERCE 사용불가 리스트 헤더. 최대 20자 (줄바꿈 불가)
message text(180) CAROUSEL_FEED 필수 / CAROUSEL_COMMERCE 사용불가 아이템 메시지. 최대 180자 (줄바꿈 ≤10)
additional_content text(34) N (CAROUSEL_FEED 사용불가) 부가 정보. 최대 34자 (줄바꿈 ≤1)
attachment json Y 아이템 이미지·버튼·쿠폰·커머스 정보 (아래)

carousel.list[].attachment

타입 필수 설명
button array N 캐러셀 리스트 버튼 목록. 최소 1개·최대 2개. 항목 키: name(필수, TEXT·IMAGE 14자/그 외 8자) · type(필수) · scheme_android · scheme_ios · url_mobile · url_pc · chat_extra · chat_event · biz_form_key
image json CAROUSEL_FEED 필수 img_url(필수, 캐러셀 썸네일 이미지 주소) · img_link(클릭 시 이동 URL, 미설정 시 이미지 뷰어)
coupon json N 캐러셀 리스트 최하단 노출. 키 구성은 본문 coupon 과 동일(title·description·url_·scheme_)
commerce json CAROUSEL_COMMERCE 필수 / CAROUSEL_FEED 사용불가 본문 commerce 와 동일(title·regular_price·discount_price·discount_rate·discount_fixed)

carousel.tail (json) — 더보기 버튼 (선택)

타입 필수 설명
url_mobile text(1000) Y Mobile 클릭 시 이동 URL
url_pc text(1000) N PC 클릭 시 이동 URL
scheme_ios text(1000) N iOS custom scheme
scheme_android text(1000) N Android custom scheme

채널 친구 대상(send_target=friend) 차이점

대부분 marketing 과 동일하며 차이만 정리한다.

  • extra.send_target: friend 입력 필수. targeting 불필요.
  • 변수 미사용 발송 가능 — extra(chat_bubble_type·brand_message_type·send_target) 만으로 발송. 변수 존재 시 전문방식 또는 변수분리 방식 선택.
  • 발신프로필 등록 후 바로 발송 가능(별도 권한 신청 불필요).