Skip to content

App API ​

토스 프론트의 기본 정보를 관리하는 API예요. 단말기 설정, 매장 정보 조회, 시리얼 번호 확인 등의 기능을 제공해요.

Methods ​

restartOnboarding ​

단말기를 로그아웃하고 온보딩 화면으로 이동해요.

Example ​

js
/**
 * 단말기 로그아웃 및 온보딩 재시작
 */
await sdk.app.restartOnboarding();

getSerialNumber ​

단말기의 고유 시리얼 번호를 조회해요.

Example ​

js
/**
 * 단말기 시리얼 번호 조회
 * @returns {Object} 시리얼 번호 정보
 */
const { serialNumber } = await sdk.app.getSerialNumber();

getMerchant ​

현재 로그인된 매장의 정보를 조회해요.

Example ​

js
/**
 * 매장 정보 조회
 * @returns {Object} 매장 정보 객체
 */
const merchant = await sdk.app.getMerchant();
console.log("매장 ID:", merchant.id);
console.log("매장명:", merchant.name);
console.log("사업자등록번호:", merchant.businessNumber);
console.log("tid 목록:", merchant.tidList);

openSetting ​

단말기의 설정 화면을 열어요.

Example ​

js
/**
 * 단말기 설정 화면 열기
 */
await sdk.app.openSetting();

setIdle ​

첫화면으로 이동해요.

Example ​

js
/**
 * 단말기 첫화면 열기
 */
await sdk.app.setIdle();

isDebugMode ​

실행 중인 플러그인이 개발모드인지, 아닌지 확인해요.

Example ​

js
/**
 * 개발모드 여부
 * @returns {Boolean}
 */
const isDebugMode = await sdk.app.isDebugMode();
console.log("개발모드인지:", isDebugMode);

사용 예시 ​

단말기 관리 클래스 ​

js
class DeviceManager {
  constructor() {
    this.serialNumber = null;
    this.merchant = null;
  }

  /**
   * 단말기 정보 초기화
   */
  async initialize() {
    try {
      const { serialNumber } = await sdk.app.getSerialNumber();
      this.serialNumber = serialNumber;
      this.merchant = await sdk.app.getMerchant();
    } catch (error) {
      console.error("단말기 정보 조회 실패:", error);
    }
  }

  /**
   * 단말기 로그아웃
   */
  async logout() {
    await sdk.app.restartOnboarding();
  }

  /**
   * 설정 화면 열기
   */
  async openSettings() {
    await sdk.app.openSetting();
  }

  /**
   * 매장 정보 조회
   * @returns {Object} 매장 정보
   */
  getMerchantInfo() {
    return this.merchant;
  }

  /**
   * 시리얼 번호 조회
   * @returns {string} 시리얼 번호
   */
  getSerialNumber() {
    return this.serialNumber;
  }
}

// 사용 예시
async function manageDevice() {
  const deviceManager = new DeviceManager();
  await deviceManager.initialize();

  // 매장 정보 출력
  const merchant = deviceManager.getMerchantInfo();
  console.log("매장명:", merchant.name);
  console.log("사업자등록번호:", merchant.businessNumber);
}