Skip to content

Toast API

Toss POS에서 사용자에게 toast 메시지를 표시하기 위한 API예요. 플러그인 상태 변경, 오류 발생, 작업 완료 등의 상황에서 사용자에게 즉각적인 피드백을 제공할 수 있어요.

Methods

error

오류 상황을 알리는 토스트 메시지를 표시해요. 필요한 경우 버튼을 함께 노출해 사용자가 후속 동작을 실행하도록 할 수 있어요.

WARNING

메시지 길이가 긴 경우 말줄임 처리가 적용될 수 있어요.

ts
import { posPluginSdk } from '@tossplace/pos-plugin-sdk';

/**
 * 오류 토스트 표시
 * @param params.message 표시할 메시지
 * @param params.button 함께 노출할 버튼 (optional)
 */
posPluginSdk.toast.error({
    message: '플러그인 연결에 실패했어요.',
    button: {
        text: '다시 연결',
        onClick: () => {
            // 버튼 클릭 시 실행할 로직
        },
    },
});

Parameters

NameTypeOptionalDescriptionExample
messagestringfalse표시할 메시지'플러그인 연결에 실패했어요.'
button.textstringtrue버튼에 표시할 텍스트'다시 연결'
button.onClick() => voidtrue버튼 클릭 시 실행할 콜백

Response

반환값이 없어요.

warn

경고 상황을 알리는 토스트 메시지를 표시해요.

ts
import { posPluginSdk } from '@tossplace/pos-plugin-sdk';

posPluginSdk.toast.warn({
    message: '재고가 얼마 남지 않았어요.',
});

Parameters

NameTypeOptionalDescriptionExample
messagestringfalse표시할 메시지'재고가 얼마 남지 않았어요.'
button.textstringtrue버튼에 표시할 텍스트'확인'
button.onClick() => voidtrue버튼 클릭 시 실행할 콜백

Response

반환값이 없어요.

success

작업 완료 등 성공 상황을 알리는 토스트 메시지를 표시해요.

ts
import { posPluginSdk } from '@tossplace/pos-plugin-sdk';

posPluginSdk.toast.success({
    message: '저장을 완료했어요.',
});

Parameters

NameTypeOptionalDescriptionExample
messagestringfalse표시할 메시지'저장을 완료했어요.'
button.textstringtrue버튼에 표시할 텍스트'확인'
button.onClick() => voidtrue버튼 클릭 시 실행할 콜백

Response

반환값이 없어요.

open

Deprecated

open은 더 이상 사용을 권장하지 않아요. 상황에 맞게 error, warn, success를 사용하세요.

토스트 메시지를 화면에 표시해요.

ts
import { posPluginSdk } from '@tossplace/pos-plugin-sdk';

/**
 * 토스트 메시지 표시
 * @param message 표시할 메시지
 */
posPluginSdk.toast.open('플러그인을 다시 연결해주세요.');

Parameters

파라미터타입필수설명
messagestringO표시할 메시지

Response

반환값이 없어요.

on

Deprecated

on('click')은 더 이상 사용을 권장하지 않아요. error, warn, successbutton.onClick을 사용하세요.

토스트의 클릭 이벤트를 수신해요.

ts
import { posPluginSdk } from '@tossplace/pos-plugin-sdk';

posPluginSdk.toast.on('click', () => {
    // 토스트 클릭 처리 로직
});

Parameters

파라미터타입필수설명
event'click'O구독할 이벤트. 현재 'click'만 지원해요
callback() => voidO토스트를 클릭하면 실행돼요

Response

반환값이 없어요.

사용 예시

toast 관리 클래스

ts
import { posPluginSdk } from '@tossplace/pos-plugin-sdk';

class NotificationManager {
    /**
     * 오류 toast 표시
     * @param message 오류 메시지
     */
    showError(message: string) {
        posPluginSdk.toast.error({ message: `오류: ${message}` });
    }

    /**
     * 성공 toast 표시
     * @param message 성공 메시지
     */
    showSuccess(message: string) {
        posPluginSdk.toast.success({ message: `성공: ${message}` });
    }

    /**
     * 경고 toast 표시
     * @param message 경고 메시지
     */
    showWarning(message: string) {
        posPluginSdk.toast.warn({ message: `경고: ${message}` });
    }
}

// 사용 예시
function handleConnectionError() {
    const notification = new NotificationManager();
    notification.showError('플러그인 연결이 끊어졌습니다. 다시 연결해주세요.');
}