#lock
-
송금 수취인 계좌 오매칭을 파트너 식별자 조회로 해결
파트너 식별자 기반 계좌 조회로 갈아탄 이유 연락처 송금 흐름 손볼 때 가장 거슬렸던 게 수취인 계좌 매칭 로직임. 기존엔 입력값(연락처 + 이름) 조합으로 계좌를 끌어왔는데, 동명이인이거나 같은 번호를 공유하는 파트너가 끼면 엉뚱한 잔액 계좌로 꽂힐 위험이 있었음. 이번에 파트너 식별자(partnerSn)를 1차 키로 잡고 계좌를 조회하도록 갈아엎음.
읽기 → -
README 정비로 팀 문서화 기준 확립
README.md 추가 문서 작업은 다들 대충 하고 넘어가는데 나중에 후회함. README를 제대로 정리하면서 프로젝트 구조도 같이 다시 봤음. README에 반드시 들어가야 할 것들 markdown 프로젝트 개요 어떤 문제를 해결하는지 1-2줄로 설치 방법 복붙 가능한 명령어 위주로 환경 변수 | 키 | 설명 | 필수 여부 | 아키텍
읽기 → -
파서 감시 패키지를 선택적 의존성으로 분리
chore: @parcel/watcher-darwin-arm64를 optionalDependencies로 이동 이번 작업의 핵심은 기존 기능 안정화와 코드 일관성 확보였음. 변경 범위가 여러 레이어에 걸쳐있어서 영향 범위를 꼼꼼히 체크했음. 변경 영역 | 레이어 | 파일 수 | 주요 변경 | |--------|--------|---------| |
읽기 → -
약관·정책 상세 페이지 추가
feat: 약관/정책 상세 페이지 및 관련 데이터 추가 JSP UI 작업은 레거시 환경에서 어떻게 사용성을 올릴 수 있는지 계속 고민하게 만듦. 테이블 레이아웃 개선 모바일에서 가로 스크롤 없이 보이게 하는 게 과제였음. 카드형 뷰로 폴백 처리함. jsp <%-- PC: 테이블 형태 --%> <div class="admin-table-wrappe
읽기 → -
결제 웹훅 이중 URL 디코딩 버그 수정으로 서명 검증 안정화
fix: 포인트소멸/사용자출금 Webhook도 이중 URL decode 버그 수정 Webhook 처리 로직에서 꽤 골치 아픈 이슈를 잡았음. 핵심은 이중 URL decode 문제임. 문제 발생 배경 결제대행사 Webhook은 POST body로 암호화된 필드를 넘겨주는데, 이 값이 URL-encoded 상태로 들어옴. 서버 프레임워크가 Conten
읽기 → -
결제 웹훅 이중 URL 디코딩으로 인한 시그니처 검증 오류 수정
fix: VBANK_CHARGE Webhook 시그니처 검증 시 URL-encoded trstnId를 primary로 변경 Webhook 처리 로직에서 꽤 골치 아픈 이슈를 잡았음. 핵심은 이중 URL decode 문제임. 문제 발생 배경 결제대행사 Webhook은 POST body로 암호화된 필드를 넘겨주는데, 이 값이 URL-encoded 상태
읽기 → -
결제 Webhook 이중 디코딩 버그 수정으로 검증 오류 해결
feat: 스토어 페이지 다국어 지원 및 Webhook 디코딩 로직 추가 Webhook 처리 로직에서 꽤 골치 아픈 이슈를 잡았음. 핵심은 이중 URL decode 문제임. 문제 발생 배경 결제대행사 Webhook은 POST body로 암호화된 필드를 넘겨주는데, 이 값이 URL-encoded 상태로 들어옴. 서버 프레임워크가 Content-Typ
읽기 → -
스토어 랜딩 페이지 반응형 레이아웃
style: 스토어 관련 CSS/SCSS 스타일 및 JSP 구조 개선 스토어 랜딩 페이지 UI 구현 작업임. 앱 다운로드 유도 + FAQ + 연락처 섹션으로 구성했음. 페이지 구조 [Hero Section] - 메인 카피 + CTA [Feature Cards] - 주요 기능 소개 [App Download] - App Store / Google P
읽기 → -
결제 웹훅 이중 디코딩 버그 수정으로 시그니처 검증 안정화
docs: Webhook API 가이드 v1.3 업데이트 Webhook 처리 로직에서 꽤 골치 아픈 이슈를 잡았음. 핵심은 이중 URL decode 문제임. 문제 발생 배경 결제대행사 Webhook은 POST body로 암호화된 필드를 넘겨주는데, 이 값이 URL-encoded 상태로 들어옴. 서버 프레임워크가 Content-Type: applic
읽기 → -
결제 Webhook 이중 디코딩 버그 수정으로 시그니처 검증 안정화
docs: Webhook API 가이드 수정 (trstnId 평문 기준으로 변경) Webhook 처리 로직에서 꽤 골치 아픈 이슈를 잡았음. 핵심은 이중 URL decode 문제임. 문제 발생 배경 결제대행사 Webhook은 POST body로 암호화된 필드를 넘겨주는데, 이 값이 URL-encoded 상태로 들어옴. 서버 프레임워크가 Conten
읽기 → -
키움페이 Webhook 이중 디코딩 버그 수정으로 결제 검증 안정화
feat: 스토어 테마 등록 및 키움페이 Webhook 연동 가이드 추가 Webhook 처리 로직에서 꽤 골치 아픈 이슈를 잡았음. 핵심은 이중 URL decode 문제임. 문제 발생 배경 결제대행사 Webhook은 POST body로 암호화된 필드를 넘겨주는데, 이 값이 URL-encoded 상태로 들어옴. 서버 프레임워크가 Content-Typ
읽기 → -
주문 결제 트랜잭션 정합성 개선
feat: 주문 결제 트랜잭션 정합성 수정 상품 목록부터 주문까지 이어지는 흐름을 정비했음. 특히 상품 옵션 처리와 페이징, 카테고리 필터가 한 번에 엮이는 부분이 까다로웠음. 상품 옵션 처리 구조 java // 옵션 유무 분기 if (product.hasOption()) { model.addAttribute("options", produc
읽기 → -
결제 Webhook 이중 URL 디코딩 버그 수정으로 시그니처 검증 안정화
docs: 웰컴페이 Webhook 및 ServiceUtil 관련 내용 업데이트 Webhook 처리 로직에서 꽤 골치 아픈 이슈를 잡았음. 핵심은 이중 URL decode 문제임. 문제 발생 배경 결제대행사 Webhook은 POST body로 암호화된 필드를 넘겨주는데, 이 값이 URL-encoded 상태로 들어옴. 서버 프레임워크가 Content-
읽기 → -
JSP 허브 페이지 모바일 반응형
feat: 동적 허브 페이지 구현 및 연락처 관련 UI 개선 JSP UI 작업은 레거시 환경에서 어떻게 사용성을 올릴 수 있는지 계속 고민하게 만듦. 테이블 레이아웃 개선 모바일에서 가로 스크롤 없이 보이게 하는 게 과제였음. 카드형 뷰로 폴백 처리함. jsp <%-- PC: 테이블 형태 --%> <div class="admin-table-wra
읽기 → -
인덱스 무효화 쿼리를 범위 조건으로 개선해 SQL 성능 최적화
SQL 및 메뉴 구조 최적화 SQL 최적화와 쿼리 구조 개선 작업임. 실행 계획 확인 없이 작성된 쿼리들이 문제가 됐음. 인덱스 활용 패턴 sql -- 비효율: 함수 적용으로 인덱스 무효화 WHERE DATE(created_at) = '2026-03-01' -- 효율: 범위 조건으로 인덱스 활용 WHERE created_at >= '2026-03
읽기 → -
파트너 포털 레벨·수수료 설정을 동적으로 개선
feat: 관리자 및 파트너 포털 감사 리포트 개선 및 하드코딩 수정 파트너 관리 기능 정비 작업임. 계정 발급, 레벨 설정, 수수료 설정이 한 화면에서 유기적으로 동작해야 해서 꼼꼼히 짜야 했음. 파트너 등록 필수값 | 필드 | 필수 여부 | 검증 | |------|--------|------| | 상호명 | 필수 | NOT NULL | | 대표
읽기 → -
파트너 실시간 문의용 PIP 채팅 위젯 구현
feat: PIP 채팅 위젯 기능 추가 관리자 채팅 기능 추가 작업임. 파트너가 관리자에게 실시간으로 문의할 수 있는 PIP 채팅 위젯 구현. 채팅 아키텍처 WebSocket 대신 Polling 방식으로 구현함. 실시간성이 중요한 채팅이 아니라 문의/답변 형태여서 30초 폴링으로 충분함. javascript // 30초마다 새 메시지 확인 set
읽기 → -
Pay 정책 생성 시 대상 시스템 유효성 검증 강화
fix: Pay 정책 생성 시 targetSysId 유효성 검증 로직 추가 이번 작업의 핵심은 기존 기능 안정화와 코드 일관성 확보였음. 변경 범위가 여러 레이어에 걸쳐있어서 영향 범위를 꼼꼼히 체크했음. 변경 영역 | 레이어 | 파일 수 | 주요 변경 | |--------|--------|---------| | 백엔드 로직 | 1개 | 핵심 처리
읽기 → -
보이스피싱 방지
보이스피싱 방지 기능 및 이용중지 체크 로직 추가 2026-02-06에 마무리한 기능 구현 작업. 컨트롤러, 인터셉터 영역을 중심으로 end-to-end 흐름을 완성했음. 작업 배경 요구사항이 확정된 후 어느 레이어부터 건드릴지 먼저 정했음. 이번엔 API 스펙을 먼저 잡고 역방향으로 내려가는 방식을 택했음. 외부 연동이 있거나 응답 포맷이 먼저
읽기 → -
이커머스 결제 API 문서 전면 보완으로 코드 불일치까지 해결
이커머스 결제 연동 플랫폼 API 명세 전체 보완 및 신규 섹션 추가 2026-02-06. API 문서 작업. 코드가 아무리 잘 짜여 있어도 문서가 없으면 다른 사람이, 또는 미래의 내가 쓰기 어려움. 문서화 범위 - **API 엔드포인트**: 경로, HTTP 메서드, 요청/응답 스펙 - **파라미터 명세**: 필수/선택 여부, 타입, 유효성 규칙
읽기 →