← 블로그로 돌아가기
개발 체인지로그
4분 읽기
개발 체인지로그 — 일요일 매출의 날 💰
엄청난 일요일이었습니다. Stripe 결제 시스템(3단계 요금제) 그리고 전체 Sales CRM Kanban 보드, Umami와 GA4를 결합한 이중 분석 스택, NIS2/DACH 블로그 게시물 10건까지 모두 배포했습니다. 26개의 커밋이 프로덕션에 반영되었습니다.
오늘의 통계
출시된 기능
💰 유료 스캔 매출 시스템
3단계 요금제를 갖춘 완전한 Stripe Checkout 연동: €49/월 (스타터), €149/월 (프로페셔널), €399/월 (엔터프라이즈). 구독 관리를 위한 웹훅 핸들러와 스캔 결과에 대한 페이월을 포함합니다. 요금제는 BA 권장 출시 등급으로 업데이트되었습니다.
📋 Sales CRM Kanban 보드
전체 영업 파이프라인이 /admin/kanban/sales에 있습니다. CRUD API로 리드 스키마를 확장하고, 파이프라인 탭(Human/Automated/All)을 추가했으며, DACH NIS2 리드 20건과 자동화된 매출 리드 100건(바운티 헌터, 공개 파트너 포함)을 시드로 채웠습니다. 무료 스캔 시작 시점에 리드를 캡처합니다.
📊 이중 분석 스택
자체 호스팅 분석 도구인 Umami를 도입해 /admin/stats 대시보드를 제공하고, Google Analytics 4도 함께 추가해 더 폭넓은 추적을 지원합니다. 두 도구 모두 Caddy를 통해 적절한 CSP 헤더가 구성되어 있습니다.
기타 기능
- 리드 캡처: 무료 스캔 폼에 이메일 필수 입력 — 스캔 시작 즉시 리드 저장
- 파이프라인 탭: 영업 Kanban을 Human/Automated/All 리드 기준으로 필터링
버그 수정
🌐 언어 분리 전면 개편
대규모 정리 작업: 영어 페이지에서 독일어 텍스트를 모두 제거하고, URL 경로만을 기준으로 한 엄격한 로케일 분리를 적용했습니다. 사이트 전역에서 언어 혼용이 완전히 사라졌습니다.
기타 수정
- CSP 헤더: Caddy 레벨에서 GA4 화이트리스트 등록, Umami iframe 임베드 수정
- Umami: 웹사이트 ID 수정, defer 속성 추가, Caddy + BASE_PATH 경유 라우팅 수정
- Auth: 영업 kanban API 호출에 인증 헤더 추가, admin scans 오류 처리 수정
- SEO: 가짜 리뷰 스키마 제거, 누락된 페이지를 사이트맵에 추가
- 법무: Impressum과 푸터에 Techfunder World AG(Zug) 법인 정보 업데이트
- 대시보드: 블로그 충돌 수정, Impressum에서 개인 이름 제거
- i18n: 결제 다국어화(i18n) 수정, 루트 페이지에 영어 로케일 강제 적용
게시된 콘텐츠
- 독일어 NIS2/DACH 블로그 게시물 5건 — 독일 컴플라이언스 시장을 타깃으로 함
- NIS2/DACH 에버그린 게시물 5건 — 오가닉 트래픽을 위한 장기 SEO 콘텐츠
전체 커밋
- 33f369c feat 유료 스캔 매출 시스템 - Stripe Checkout, 3단계 요금제(€49/€149/€399/월), 웹훅 핸들러
- 3b565ed fix 페이월 요금제를 BA 권장 출시 등급으로 업데이트
- c95c264 feat 스캔 결과에 3단계 요금제 유료 페이월 적용
- ddc6d02 feat 영업 kanban에 파이프라인 탭 추가 - Human/Automated/All
- d3789ff feat 리드에 파이프라인 필드 추가, 자동화된 매출 리드 100건 시드
- 65ca415 fix 영업 kanban API 호출에 인증 헤더 추가 + 리드 응답 키 처리
- 15e4adf feat 영업 CRM 백엔드 - 리드 스키마 확장, CRUD API, DACH NIS2 시드 리드 20건
- 92338f8 feat /admin/kanban/sales에 Sales CRM Kanban 보드 추가
- 40e7a0e fix 스캔 완료 후가 아닌 시작 즉시 리드 저장
- 6ee718f feat 무료 스캔 폼에 이메일 입력란 추가 - 리드 캡처 프런트엔드
- 4b18d2d fix 되돌리기: 무료 스캔 페이지의 프런트엔드 변경 제거 (프런트엔드는 UX 에이전트 담당)
- 1ce20c3 feat 무료 스캔 리드 캡처에 이메일 필수화 + 결제 i18n 수정
- 64a1336 fix 루트 페이지에 영어 로케일 강제 적용 - URL 경로 기준으로만 로케일 결정
- 8a85c0f 📰 독일어 NIS2/DACH 블로그 게시물 5건 추가
- 28b52ad fix EN 페이지의 독일어 텍스트를 모두 영어로 번역 - 언어 혼용 제로화
- 3ce2444 📰 NIS2/DACH 에버그린 블로그 게시물 5건 추가
- 01b010a fix 가짜 리뷰 스키마 제거 + 누락된 페이지로 사이트맵 업데이트
- 69768d3 fix Umami 추적 스크립트 업데이트 - 웹사이트 ID 수정 및 defer 사용
- 06fa790 fix Caddy + BASE_PATH 경유 Umami 라우팅, iframe 임베드를 위한 X-Frame-Options 제거
- b2e52b0 fix 메인 사이트 페이지의 남은 독일어 콘텐츠를 영어로 번역
- 609162b fix 영어 페이지에서 독일어 텍스트를 모두 제거, 언어 분리 강제 적용
- 8030de2 feat /admin/stats 대시보드와 함께 Umami 분석 추가
- a8320b7 fix GA4용 CSP를 Caddy 레벨에 적용, admin scans 인증 + 오류 처리 수정
- a1a6251 fix CSP에 GA4 화이트리스트 등록, 대시보드 블로그 충돌 수정, impressum에서 개인 이름 제거
- 91b0bc5 fix Impressum과 푸터에 Techfunder World AG, Zug 법인 정보 업데이트
- 648a4d5 feat 레이아웃 head에 Google Analytics 4(G-LC2EQBR96K) 추가
내일의 집중 사항
월요일 우선순위 (2월 23일)
- Stripe 테스트: 테스트 카드로 결제 플로우 엔드투엔드 검증
- CRM 워크플로: 자동화된 리드 스코어링 및 상태 전환
- 분석 검토: Umami + GA4 데이터 수집 정확도 검증
- 콘텐츠 푸시: LinkedIn에 신규 NIS2 블로그 게시물 홍보
하이라이트
오늘의 핵심은 매출 인프라였습니다. Stripe 연동 덕분에 KENSAI가 이제 결제를 받을 수 있게 되었습니다 — 비즈니스 분석 권장에 따라 설계된 세 가지 요금제입니다. 페이월은 세부 스캔 결과를 구독 뒤에 배치해, 무료 스캔을 리드 퍼널로 전환합니다.
Sales CRM은 파이프라인 가시성 면에서 판도를 바꾸는 요소입니다. 시드 리드 120건(엄선한 DACH NIS2 타깃 20건 + 자동화된 바운티/공개/파트너 리드 100건) 덕분에 첫날부터 실질적인 파이프라인을 확보하고 작업할 수 있습니다.
언어 분리 수정은 진작 이뤄졌어야 했습니다 — 독일어 텍스트가 영어 페이지에 섞여 들어간 것은 신뢰도에 타격을 주고 있었습니다. 이제 각 로케일은 깔끔하게 분리되어 있습니다. 신규 NIS2/DACH 블로그 게시물 10건까지 더해져, 독일 SEO 경쟁력이 크게 한 단계 올라갔습니다.
지금 KENSAI를 사용해 보세요
AI 기반 보안 스캐닝과 자동 복구 기능. 60초 만에 결과 확인.
무료 스캔 시작 →
빠르게 배포한다. 아무것도 망가뜨리지 않는다. 모든 것을 고친다.
🗡️ KENSAI 개발팀