시작하기
SOLAPI는 2008년부터 17년간 메시징 서비스 개발 및 운영 경험을 보유한 기업입니다.
본 문서는 누리고 제휴 및 솔라피 기반 서비스와 100% 호환되는 메시지 연동 개발 가이드를 제공합니다.
SDK 및 샘플 프로젝트
개발 환경에 적합한 SDK를 선택하여 연동을 시작하세요.
📄️ Node.js(서버) SDK 연동 가이드
📄️ Java/Kotlin SDK 연동 가이드
📄️ PHP SDK 연동 가이드
📄️ Python 연동 가이드
🔗 C# 연동 샘플 프로젝트
🔗 DB 연동형 에이전트(MySQL, MariaDB Only)
🔗 Go 연동 샘플 및 SDK 코드 프로젝트
🔗 Ruby 연동 샘플 프로젝트
🔗 VB.NET 연동 샘플 프로젝트
🔗 Classic ASP 연동 샘플 프로젝트
개발 연동 FAQ
메시지 그룹과 메시지 ID의 개념

SOLAPI에서 메시지 그룹 은 하나 이상의 메시지 발송 요청을 논리적으로 묶어서 관리하는 단위입니다.
개발자가 여러 메시지 발송을 요청하면, SOLAPI 시스템은 이를 먼저 그룹으로 묶어서 처리합니다.
매시지들이 그룹에 추가되는 과정과 실제 통신사나 메시지 서비스사로 발송하는 과정은 완전히 분리되어 독립적으로 동작합니다.
이러한 구조를 통해 대량 발송 시에도 안정적인 처리가 가능하며, 각 메시지는 고유한 메시지 ID 를 통해 개별적으로 상태 추적 및 관리할 수 있습니다.
pfId와 templateId 식별자
카카오톡 채널 연동을 위해 사용되는 고유 식별자입니다:
pfId (Plus Friend ID)
- 카카오 비즈니스 채널의 SOLAPI 내부 고유 식별자
- 알림톡과 친구톡 발송 시 공통으로 사용
- 카카오 비즈니스센터에서 채널을 SOLAPI와 연동할 때 자동 생성
templateId (Template ID)
- 카카오 알림톡 템플릿의 SOLAPI 내부 고유 식별자
- 알림톡 발송 시에만 사용 (친구톡은 사용하지 않음)
- 카카오 비즈니스센터에서 승인받은 템플릿을 SOLAPI와 동기화할 때 생성
예약 발송 지원 여부
지원됩니다. SOLAPI는 API 레벨에서 예약 발송 기능을 완전히 지원합니다.
예약 발송 특징:
- 모든 메시지 타입 지원 (SMS, LMS, MMS, 알림톡, 친구톡)
- 최대 예약 가능 기간: 최대 6개월
- 예약된 메시지의 취소 가능
모든 SDK와 샘플 프로젝트에서 예약 발송 구현 예제를 확인할 수 있습니다.
알림톡 변수에서 특수문자 사용
탭 문자와 줄바꿈 문자 모두 정상적으로 지원됩니다.
지원되는 특수문자:
- 줄바꿈:
\n
(개행 문자) - 탭:
\t
(탭 문자, 수신 시 공백으로 표시됨)
적용 범위:
- 알림톡 템플릿 변수 내용
- 친구톡 메시지 내용
주의사항:
- 변수명 (
#{변수명}
)은 카카오 비즈니스센터에서 승인받은 템플릿의 치환문구와 정확히 일치해야 합니다 - 과도한 줄바꿈 사용 시 가독성이 저하될 수 있으므로 적절히 사용하시기 바랍니다
구현 예제
Node.js - 특수문자 사용 예제
const { SolapiMessageService } = require('solapi');
const messageService = new SolapiMessageService("YOUR_API_KEY", "YOUR_API_SECRET");
await messageService.send({
to: "01000000000", // 수신 번호
from: "0200000000", // 사전 등록된 발신번호
kakaoOptions: {
pfId: "KA01PF240000000000000000000000000", // 연동된 채널의 pfId
templateId: "KA01TP240101000000000000000000000", // 승인된 템플릿의 templateId
variables: {
"#{고객명}": "홍길동",
"#{주문상세}": "상품명: 스마트폰\n수량: 1개\n가격: 1,200,000원",
"#{배송정보}": "택배사: CJ대한통운\t송장번호: 123456789"
}
}
});
중요사항
- 예제에 입력된 값은 예시입니다.
- 변수 치환 시 템플릿에서 정의된 변수명과 대소문자, 특수문자까지 정확히 일치해야 정상적으로 치환됩니다.