내 경력과의 적합도 보통
기기를 원격 제어하는 서버, 관리 대시보드, PG 결제 연동은 해본 유형입니다. 하지만 공고에 적힌 ESP32 펌웨어·회로설계·PCB·PromptPay 경험이 없어 임베디드 부분은 협력사가 필요합니다.
공고 유형무인 락커 결제 웹·관리 대시보드 + ESP32 펌웨어·PCB
필요 기술ESP32-S3, PWA, PromptPay, PCB
프로젝트 개요
- 태국 콘도미니엄 1층(반옥외)에 설치하는 무인 생수 판매 락커(30칸)의 소프트웨어와 제어보드(회로설계·PCB·펌웨어)를 개발합니다. 고객이 기기의 QR을 스캔해 모바일 웹에서 PromptPay로 결제하면, 서버가 서명된 명령을 보내 해당 칸의 잠금만 풀리는 구조입니다.
- 범위는 고객 결제 웹, 관리 서버·대시보드, ESP32 펌웨어, 회로설계·PCB 제작까지입니다. 캐비닛·도어 등 기구 하드웨어는 설계가 이미 나와 있어 이번 범위에서 제외합니다.
- 1차로 테스트용 1대를 태국 현지에서 운영 시험(결제·은행 연동 포함)하고, 그 결과를 바탕으로 5~20대 양산 여부를 결정합니다.
- SW와 임베디드(회로설계·PCB 등)를 한 업체가 모두 수행하는 것을 우선합니다. 어려운 경우 SW 업체가 임베디드 협력 업체와 함께 참여하는 방식도 가능합니다.
- 국내 파트너와 해외 업체의 견적을 함께 비교해 선정하는 입찰 방식으로 진행하며, 절차는 아래
입찰 진행 절차
에 정리했습니다.
클라이언트 소개
- 해외에 본사를 둔 회사로, 태국 콘도 입주민을 대상으로 무인 생수 판매 락커 설치를 추진하고 있습니다. 결제 화면은 일반 소비자가, 대시보드는 저희 관리자가 사용합니다.
- 프로젝트 의사결정 구조: 해외 본사에서 작성한 요구사항을 한국 담당자가 번역해 입찰을 진행하며, 파트너 문의는 한국 담당자가 대응합니다.
필수 과업 범위와 결과물
1. 수행 범위
- 임베디드 개발: ESP32-S3 펌웨어
- 회로설계·PCB: 참고 회로 기반 회로설계, PCB 아트웍, 시제품 제작·검증, 잠금장치·센서 등 부품 조달·공급
- SW 개발: 고객 결제 웹(PWA), 관리 서버, 관리자 대시보드, PG 연동
- 인프라 구축·배포: 클라우드 구성과 배포. Git 저장소·클라우드·도메인 계정은 발주사 명의로 생성합니다.
- 테스트·QA: 기구 측과의 합동 통전 시험, 피크 시간대 동시 주문 부하 테스트
- 유지보수: 무상 하자보수 기간과 이후 월 유지보수(클라우드 포함)를 개발비와 분리해 제시해 주세요. 태국 현장 대응이 어려우면 한국에서 원격 대응도 가능합니다.
- 자유실시조사(FTO)는 저희 법무팀이 진행하므로 견적에서 제외합니다. 검토 결과에 따라 회로·통신 구조 조정이 필요할 수 있습니다.
2. 상세 기능 요구 사항
- 화면 목업, 참고 회로, 회로설계 가이드라인은 지원하신 파트너께 기술사양서와 함께 전달합니다.
2-1. 고객 결제 화면 (모바일 웹, PWA)
- 접속: 기기 전면 QR 스캔 후 앱 설치 없이 브라우저 접속
- 다국어: 태국어 기본, 한국어·영어 지원 및 언어 선택창
- 상품 선택: 물 용량 및 개수 선택 (1회 1상품, 장바구니 없음)
- 결제: Thai QR(PromptPay) 필수, 결제 버튼 클릭 시 외부 결제 앱·사이트 이동 (PG 연동, 웹훅 서명 검증, 결제 원천정보 미저장 토큰화 방식)
- 개방 안내: 결제 확인 후 열린 칸 번호 안내 표시
- 예외 처리: 미개방·60초 초과 개방 시 자동 환불 및 관리자 알림
2-2. 관리자 대시보드 (PC 웹)
- 기기 현황: 기기 목록·상태 및 기기별 재고·도어 상태 조회
- 재고 관리: 기기·칸별 실시간 재고 및 저재고 자동 알림
- 상품·가격 설정: 칸별 상품·가격 매핑 변경
- 거래 이력: 기기ID·칸 번호·상품·금액·결제수단·시각 기록, 위치별 필터·집계 및 매출 통계
- 보충 모드: 전원 차단 없이 관리자 인증 후 필요한 칸만 개별 개방, 칸·실행자·시각 감사로그 기록
- 원격 강제 개방: 특정 칸 강제 개방 (결제 개방과 동일한 서명 경로, 조작 로그 기록)
- 계정·권한: 다중 기기 통합 관리, 등급별 접근 권한, 한국·태국 관리자 권한 분리, 2단계 인증, 전체 접속·작업 로그
2-3. 관리 서버·기기 통신
- 거래 상태 관리: 대기→예약→결제 대기→결제 완료→개방 중→문 열림→문 닫힘→완료 상태 전이 (실패 시 만료·개방 실패·도어 경보)
- 잠금해제 명령: MQTT(TLS+mTLS), HMAC-SHA256 서명, Nonce 기반 재전송 방지, 기기별 Topic ACL 분리
- 기기 상태 수신: 하트비트, 30칸 도어 상태, 명령 수신 20초 내 ACK
- 개방 큐잉: 동시 개방 최대 10칸 제한, 다중 구매 시 서버 순차 처리
- 칸 자동 배정: 결제 후 서버 내부 처리, 화면 미노출 (저희 쪽 참고 로직 제공)
- 개인정보·로그: 태국 PDPA·한국 PIPA 기준 수집 동의·보관 기간·파기 처리, 국외 이전 요건 반영, 주문·결제·문열림·보충 로그 최소 5년 보존
2-4. 임베디드 펌웨어 (ESP32-S3)
- 기반: FreeRTOS, OTA 펌웨어 업데이트
- 입출력 제어: 솔레노이드 30채널 구동 및 리드스위치 30채널 입력 (74HC595·ULN2803A·CD4021B 각 4개 조합)
- 명령 검증: HMAC 서명 검증된 명령에만 개방
- 순차 구동: 전압 강하 방지 큐 구동 (동시 개방 10칸 제한 연동)
- 상태 표시: 랙 전체 LED 스트립 및 이상 알림 부저 (칸별 LED·LCD 없음)
- 통신: WiFi 기본, 설치 현장별 4G 라우터 옵션 대응
2-5. 회로설계·PCB·부품
- 통합 PCB: 컨트롤러·확장칩·구동회로를 PCB 1장에 실장 (참고 회로 및 가이드라인 기반 회로설계·제작)
- 전원: 12V SMPS 이후 구간 설계 (220V 인입·접지는 기구 측), 정전 시 솔레노이드 잠금 상태 확인 및 안전 측 설계
- 4G 확장: 4G 라우터 옵션을 위한 회로 확장 슬롯 반영
- 제어박스: IP54 이상 방수·방진 케이스
- WiFi 안테나: 철제 캐비닛 신호 감쇠 대비 외장 안테나(연장 케이블형) 공급
- 부품 공급: 솔레노이드 래치 30개, 리드스위치 30개, SMPS, LED 스트립, 배선·커넥터 등 (기준 BOM 대당 약 4,060 THB)
- 설치 사양서: 치수·타공 위치·배선 경로를 기구 측에 제공
3. 결과물
- 전체 소스코드 및 저작재산권 일체 양도
- PCB 회로도, 전기 배선도, BOM
- 설치 사양서
- API 명세서, 시스템 아키텍처 문서, 운영 매뉴얼
- 부하 테스트 시나리오 및 결과
- 오픈소스 라이선스 사용 내역
아직 정하지 않은 범위
- 아래는 저희가 확정하지 못한 항목입니다. 어느 쪽을 권하시는지와 그 이유를 적어 주세요.
1. 언어 선택 적용 방식 — 선택 후 리다이렉션 / 자동 전환 중 미정. 결제 사이트 연동 구조에 따라 달라지므로 두 방식의 장단점을 비교해 주세요
2. 개수 선택 화면 — 1~5 고정 버튼 / 직접 입력 중 미정
3. 서브 결제수단 — TrueMoney, Rabbit LINE Pay 등 간편결제 연동 방안
4. WiFi 안테나 배치 — 캐비닛 외부 / 아크릴 창(비금속부) 쪽 중 현장 신호 시험으로 확정 예정
5. 무선모듈 태국 인증·수입 — 인증·통관 검토 결과에 따라 무선모듈을 태국 현지에서 별도 조립하는 방식도 검토 중
기술 스택
- 서버: Node.js 또는 Python (권장)
- DB: PostgreSQL, 임시 상태 관리 Redis (권장)
- 컨트롤러: ESP32-S3 (FreeRTOS)
- 통신: MQTT (TLS + mTLS)
클라이언트 준비 사항
- 준비된 것: 기술사양서, 참고 회로와 회로설계 가이드라인, 관리자 화면 목업, 프론트엔드·백엔드 가이드용 코드와 구현 영상, 기구 하드웨어 설계
- 이 프로젝트 담당: 한국 담당자가 요구사항 전달과 파트너 문의 대응을 맡습니다.
예산 범위
입찰 진행 절차
1. 지원: 위시켓 공고를 통해 지원해 주세요.
2. 자료 전달: 지원하신 파트너께 기술사양서, 화면 목업, 참고 회로, 회로설계 가이드라인을 전달합니다.
3. 미팅: 지원하신 파트너와 미팅을 진행합니다.
4. 견적서 제출: 미팅 후 견적서를 제출해 주세요. 제출하신 견적서를 입찰 참가 신청으로 봅니다.
5. 내부 검토: 국내 파트너 견적과 해외 업체 견적을 함께 비교 검토합니다.
6. 결과 안내: 검토 결과를 안내해 드립니다.
7. 입찰 서류 작성 및 계약: 견적 검토 이후 입찰 참가신청서 등 저희 양식을 안내하며, 계약은 위시켓을 통해 진행합니다.
진행 방식
- 지원하신 파트너와 미팅 후 견적서를 받으며, 제출하신 견적서를 입찰 참가 신청으로 보고 내부 검토합니다.
- 국내 파트너 견적과 해외 업체 견적을 함께 비교 검토합니다.
- 입찰 참가신청서 등 저희 양식은 이후 단계에서 안내합니다.
- 제출하신 견적은 제출일로부터 60일간 유효한 것으로 보며, 제출 후 정정은 원칙적으로 어렵습니다.
- 견적서에는 초기 구축비(결제 웹·서버·대시보드·펌웨어·PCB), 월 인프라·유지보수비, 결제 연동 비용(PromptPay 필수와 서브 결제수단 옵션별), 개발 리드타임(가이드 코드 검토 기간·투입 인력·납품 일정), 설치 사양서 작성 비용과 부품 공급 일정, SLA 조건(목표 가동률·장애 대응 시간·미달 시 배상), 대금 지급 조건(계약금·중도금·잔금)을 구분해 적어 주세요.
제안 포함 필수 사항
1. 적합한 기술 스택과 그 선택 이유를 제안에 포함해 주세요.
2. 파트너님께서 판단하시기에 어떤 부분이 완료되어야 이 프로젝트가 성공적으로 마무리되었다고 보시는지 제안에 포함해 주세요. 전문가로서 이 프로젝트의 결과물에 대한 의견 부탁드립니다.
3. 위 '아직 정하지 않은 범위' 각 항목에 대한 의견을 제안에 포함해 주세요. 어느 쪽을 권하시는지와 그 이유를 함께 의견 부탁드립니다. 공고만으로 판단이 어려워 확인이 필요한 부분도 함께 적어 주세요.
4. SW와 임베디드(펌웨어·PCB)를 직접 수행하시는지, 하청으로 함께 참여하시는지와 그 수행 체계를 제안에 포함해 주세요.
5. 잠금해제 명령의 위조·재전송을 어떻게 막으실지(mTLS·HMAC 적용 방식)와, 정전 시 솔레노이드 잠금 상태를 어떻게 안전하게 설계하실지 제안에 포함해 주세요. 결제 없이 칸이 열리는 상황을 막는 것을 특히 중요하게 보고 있습니다.
※ 원문 그대로 표시했습니다. 전체 내용은 원본 공고에서 확인하세요.