포스를 확장하는 가장 빠른 방법, 포스 플러그인
고태완/윤보미 토스 · 토스 기술 블로그
AI 핵심 요약
업종마다 필요한 기능이 달라 제휴를 늘릴수록 POS 코드의 복잡도와 유지보수 부담이 커지고, 기능의 오너십도 모호해지는 문제가 있었습니다. 이를 해결하기 위해 토스플레이스는 VSCode 확장 구조를 참고해 플러그인 사일로를 만들고, 플러그인 코드를 웹 워커에서 격리한 뒤 SDK와 메시지 통신으로 주문·결제 등 POS 리소스에 접근하도록 설계했습니다. 공통 인터페이스를 통해 제휴사가 자체 기능을 연동하게 해 POS에 제휴사별 코드를 반복해서 추가하지 않도록 했으며, 개발자는 결제수단 등록과 콜백 구현, 개발자센터 배포 절차로 플러그인을 만들 수 있습니다. 핵심 교훈은 다양한 요구를 공통 규격으로 추상화하고 장애를 격리하면 POS의 안정성을 지키면서 외부 개발자의 확장도 지원할 수 있다는 점입니다.
- 플러그인 코드는 웹 워커에서 실행하고 메시지 기반으로 통신하면, 외부 코드의 장애가 POS 핵심 기능으로 번지는 것을 막을 수 있습니다.
- 이벤트 통신의 복잡성은 SDK로 감싸 비동기 메시지 처리와 POS 리소스 접근을 익숙한 함수 호출 형태로 제공할 수 있습니다.
- 제휴사별 구현을 POS에 직접 추가하기보다 공통 리소스와 인터페이스를 정의하면 코드 중복과 유지보수 부담을 줄일 수 있습니다.
- UI 확장 기능은 파트너별 요구를 그대로 반영하기보다 여러 플러그인에 공통으로 필요한 범위부터 제공하는 것이 중요합니다.
소개
토스플레이스 Plugin Silo에서 다양한 서비스에 쉽게 녹아드는 유연한 구조를 고민하며, 사용자와 외부 개발자 모두에게 가치 있는 경험을 만든 경험을 공유합니다.
비슷한 학습 자료
컨퍼런스 SLASH
토스ㅣSLASH 24 - 토스가 오프라인 결제를 빠르고 안정적으로 혁신하는 방법
컨퍼런스 SLASH
요즘 매장들의 요즘 결제는 어떻게 달라야 할까요? 빠른 배포 속도와 결제 안정성까지 모두 잡은 토스 포스 제작기를 소개합니다. 유건 / 토스플레이스 Frontend Developer 나석주 / 토스플레이스 Frontend Developer 토스 개발자 컨퍼런스 SLASH에 대한 자세한 정보는 👉🏻 https://toss.im/slash-24 컨퍼런스 및 세션에 대한 문의는 👉🏻 slash@toss.im 토스플레이스에 합류하고 싶다면 👉🏻 https://toss.im/career/jobs?company=%ED%86%A0%EC%8A%A4%ED%94%8C%EB%A0%88%EC%9D%B4%EC%8A%A4) #토스 #개발자컨퍼런스 #SLASH #SLASH24 #frontend #frontenddeveloper #POS 유의 사항 *본 발표자료의 저작권은 연사에 있으며, 저작권자의 사전 서면 동의 없이 자료의 일부 또는 전부를 이용하거나 배포할 수 없습니다. *또한 해...
프론트엔드 데스크톱 앱 개발
문서 최진영
100년 가는 프론트엔드 코드, SDK
문서 정석호
200여개 서비스 모노레포의 파이프라인 최적화
문서 임재후/최수민
웹에서 복잡한 퍼널 쉽게 관리하기
문서 이지윤