Appearance
자주 묻는 질문
개발 방식과 구현 방법에 대한 자주 묻는 질문입니다.
1. 인증 및 보안
플러그인 웹에서 인증 처리는 어떻게 하나요?
A. 일반적인 웹 인증 방식을 그대로 사용할 수 있습니다.
- JWT 토큰, 세션 기반, OAuth 등 솔루션사의 서버 인증 구조에 따라 모든 방식을 사용할 수 있습니다.
다른 웹사이트로 이동이 가능한가요?
A. 보안상 제한이 있습니다.
- 외부 링크는 기본적으로 차단됨
- 개발자센터에서 ACL(접근 제어 목록)에 도메인 등록 필요
2. 데이터 저장 및 관리
토큰 등 특정 값을 저장할 수 있나요?
A. 네, 여러 방법으로 데이터 저장이 가능합니다.
- SDK 스토리지:
sdk.storageAPI 제공 (암호화 지원) - 서버 저장: 자체 서버 DB에 저장 후 API로 조회
설치된 단말기 정보나 매장 정보를 알 수 있나요?
A. 네, SDK를 통해 기본 정보를 조회할 수 있습니다.
javascript
// 단말기 시리얼 번호 조회
const { serialNumber } = await sdk.app.getSerialNumber();
// 매장 정보 조회
const merchant = await sdk.app.getMerchant();
console.log("매장명:", merchant.name);
console.log("사업자등록번호:", merchant.businessNumber);결제 내역을 직접 관리해주나요?
A. 아니요, 결제 내역은 직접 관리해야 합니다.
- 프론트에서는 결제 성공/실패 결과만 콜백으로 전달
- 결제 내역, 취소 내역 등은 자체 서버에서 관리
3. 시스템 구성 가이드 예시
3-1. 고객이 프론트에서 결제를 진행하는 경우
- 모드 : 결제 단말기 모드
- 예시 : 셀프 키오스크
- 연동 방식 : API
3-2. 외부 시스템(서버)에서 프론트로 결제를 요청하는 경우
모드 : 결제 단말기 모드
예시 : 별도의 모바일 포스와 연동되는 결제 단말기
연동 방식 : API
외부 시스템(서버)에서 프론트로 결제를 요청하는 방법은 서버 구현에 따라 자유롭게 선택하실 수 있습니다. 저희는 아래 3가지 방안을 권장하고 있습니다.
- API Polling: 플러그인 웹에서 결제 목록을 조회하는 API를 1초마다 Polling 후 결제 진행
- Websocket: 자체 서버에서 WS 서버를 띄우고, 플러그인 웹에서 해당 웹소켓 서버에 연결
- SSE (Server Sent Events): 자체 서버에서 결제 요청 시, 플러그인 웹으로 SSE 이벤트 발송
3-3. 외부 시스템(클라이언트)에서 프론트로 결제를 요청하는 경우
- 모드 : 리더기 모드
- 예시 : EMR 클라이언트와 연동되는 멀티 패드
- 연동 방식 : Serial 유선
INFO
외부 시스템(클라이언트)와 연동되지만, 리더기 모드가 아닌 결제 단말기로 사용하시려면 DLL 연동을 권장합니다.