W6 부서별 실무 파이프라인 완성 0%
🏦 Phase 2 마무리 · 부서별 분반 실습
W6

부서별 실무 파이프라인 완성

각자 부서 실제 데이터로 end-to-end 자동화 완성

여신·리스크팀
영업·WM팀
ChatGPT AI
약 90분
Phase 2 Finale · W4~W6 마무리

🎯 Phase 2 총정리 — 지금까지 쌓은 것

W4: AI 분류 (이메일 → 5종 라우팅) — AI가 텍스트를 읽고 라벨을 붙임
W5: AI 분석 + 규칙 결합 (재무 → 3경로 분기) — 하이브리드 의사결정
W6 (오늘): 실전 적용 — 실제 부서 업무 데이터로 파이프라인 완성!
📌 오늘은 분반 실습입니다!
트랙 A: 여신·리스크팀 → 기업 재무제표 자동 위험도 분석
트랙 B: 영업·WM팀 → 만기 도래 예금 고객 개인화 안내

아래에서 본인 부서 트랙을 선택해서 실습하세요. 두 트랙 모두 보고 싶으면 탭을 전환하세요.
Select Your Track

🔀 트랙 선택

📊
트랙 A · 여신·리스크팀
기업 재무제표 자동 위험도 분석
💌
트랙 B · 영업·WM팀
만기 고객 개인화 안내
📊
여신·리스크팀 미션
기업 재무제표 자동 위험도 분석 파이프라인
기업명·재무 수치가 입력된 시트를 GPT가 분석 → 부채비율·유동비율·영업이익률 해석 + 업종 평균 대비 위험 등급 산정 → 등급별(정상/주의/위험) 자동 처리. W5의 확장 버전입니다.

🔧 워크플로 구조

Sheets
Trigger
🤖 GPT
재무 분석
Set
파싱+등급
Switch
3등급
Gmail
등급별 알림
+
Sheets
분석 이력

📋 사전 준비: 재무 분석 시트

Google Sheets에 「기업재무분석」 시트를 만듭니다:

기업명업종매출액(억)영업이익(억)부채비율(%)유동비율(%)영업이익률(%)신용등급
A건설건설업520441201508.5AA
B유통도소매업1805.8210953.2BBB
C테크IT서비스85136022015.3A+
D물류해운업1200-2538070-2.1BB
E식품식품제조310369518011.7A

🤖 GPT 프롬프트 — 재무 심층 분석

📋 System Prompt
당신은 ER은행 여신심사부의 기업 재무 분석 전문가입니다. 기업의 재무제표 핵심 지표를 업종 평균과 비교 분석하고 여신 위험 등급을 산정하세요. 【분석 항목】 1. 부채비율: 업종 평균 대비 수준 (낮을수록 안전) 2. 유동비율: 100% 이상이면 단기 상환 능력 양호 3. 영업이익률: 업종 특성 고려, 마이너스면 적자 경영 4. 종합 판단: 위 3개 + 신용등급 종합 【위험 등급 판정】 - "정상": 부채비율 200% 이하 AND 유동비율 120% 이상 AND 영업이익률 양수 AND 신용등급 A- 이상 - "주의": 위 조건 중 1~2개 미달 OR 신용등급 BBB - "위험": 영업이익률 마이너스 OR 부채비율 300% 초과 OR 유동비율 80% 미만 OR 신용등급 BB 이하 【응답 형식 — 반드시 JSON으로만】 { "등급": "정상", "부채비율판정": "120%로 건설업 평균(180%) 대비 양호", "유동비율판정": "150%로 단기 상환 능력 충분", "영업이익률판정": "8.5%로 안정적 수익 창출 중", "종합의견": "AA등급 우량 건설사. 부채비율·수익성 모두 업종 상위 수준. 정상 여신 유지 권고.", "모니터링포인트": "건설업 경기 사이클에 따른 분기별 수주잔고 점검 필요" }

User Message:

기업명: {{ $json.기업명 }} 업종: {{ $json.업종 }} 매출액: {{ $json['매출액(억)'] }}억원 영업이익: {{ $json['영업이익(억)'] }}억원 부채비율: {{ $json['부채비율(%)'] }}% 유동비율: {{ $json['유동비율(%)'] }}% 영업이익률: {{ $json['영업이익률(%)'] }}% 신용등급: {{ $json.신용등급 }}

⚙️ Set 노드 — AI 결과 파싱 + 등급별 처리

// AI 분석 결과 파싱 위험등급: {{ JSON.parse($json.output).등급 }} 종합의견: {{ JSON.parse($json.output).종합의견 }} 모니터링: {{ JSON.parse($json.output).모니터링포인트 }} 부채비율판정: {{ JSON.parse($json.output).부채비율판정 }} 유동비율판정: {{ JSON.parse($json.output).유동비율판정 }} 영업이익률판정: {{ JSON.parse($json.output).영업이익률판정 }} 기업명 {{ $('Get row(s) in sheet').item.json['기업명'] }} 업종: {{ $('Get row(s) in sheet').item.json['업종'] }} 신용등급: {{ $('Get row(s) in sheet').item.json['신용등급'] }}

🔀 Switch — 3등급 분기 후 처리

등급이메일 대상이메일 어조Slack 알림
정상담당 심사역정기 모니터링 안내없음
주의팀장 + 심사역주의 등급 전환 통보#리스크-주의
위험팀장 + 본부장긴급 점검 요청#리스크-위험 🚨

📧 이메일 예시 — "정상" 등급

Subject: [정상등급] {{ $json.기업명 }} - 정기 모니터링 안내 <div style="background:#fef3c7;border-left:4px solid #f59e0b;padding:14px;border-radius:0 8px 8px 0"> <strong>정기 모니터링 안내</strong> </div> <br> 🏢 기업: {{ $json.기업명 }} ({{ $json.업종 }})<br> 📊 신용등급: {{ $json.신용등급 }}<br> <br> 【AI 재무 분석 결과】<br> · 부채비율: {{ $json.부채비율판정 }}<br> · 유동비율: {{ $json.유동비율판정 }}<br> · 영업이익률: {{ $json.영업이익률판정 }}<br> <br> 【종합 의견】<br> {{ $json.종합의견 }}<br> <br> ⚠️ 모니터링 포인트: {{ $json.모니터링 }}

📧 이메일 예시 — "주의" 등급

Subject: [주의등급] {{ $json.기업명 }} - 주의 등급 전환 안내 <div style="background:#ffedd5;border-left:4px solid #f97316;padding:14px;border-radius:0 8px 8px 0"> <strong>리스크-주의</strong> </div> <br> 🏢 기업: {{ $json.기업명 }} ({{ $json.업종 }})<br> 📊 신용등급: {{ $json.신용등급 }}<br> <br> 【AI 재무 분석 결과】<br> · 부채비율: {{ $json.부채비율판정 }}<br> · 유동비율: {{ $json.유동비율판정 }}<br> · 영업이익률: {{ $json.영업이익률판정 }}<br> <br> 【종합 의견】<br> {{ $json.종합의견 }}<br> <br> ⚠️ 모니터링 포인트: {{ $json.모니터링 }}

📧 이메일 예시 — "위험" 등급

Subject: 🚨[위험등급] {{ $json.기업명 }} — 긴급 여신 점검 요청 <div style="background:#fee2e2;border-left:4px solid #ef4444;padding:14px;border-radius:0 8px 8px 0"> <strong>>리스크-위험🚨</strong> </div> <br> 🏢 기업: {{ $json.기업명 }} ({{ $json.업종 }})<br> 📊 신용등급: {{ $json.신용등급 }}<br> <br> 【AI 재무 분석 결과】<br> · 부채비율: {{ $json.부채비율판정 }}<br> · 유동비율: {{ $json.유동비율판정 }}<br> · 영업이익률: {{ $json.영업이익률판정 }}<br> <br> 【종합 의견】<br> {{ $json.종합의견 }}<br> <br> ⚠️ 모니터링 포인트: {{ $json.모니터링 }}

✅ 기대 결과

기업AI 등급 (기대)처리
A건설 (AA, 부채120%)정상심사역 이메일
B유통 (BBB, 부채210%)주의팀장 이메일 + Slack
C테크 (A+, 부채60%)정상심사역 이메일
D물류 (BB, 영업이익 적자)위험본부장 이메일 + Slack 🚨
E식품 (A, 부채95%)정상심사역 이메일
💌
영업·WM팀 미션
만기 도래 예금 고객 개인화 안내 파이프라인
만기 예정 고객 목록 → GPT가 고객별 자산 규모·성향에 맞는 재예치·전환 상품 추천 문안 생성 → 개인별 이메일 대량 발송. "고객마다 다른 메일"이 핵심입니다.

🔧 워크플로 구조

Sheets
Trigger
🤖 GPT
맞춤 추천
Set
이메일 구성
Gmail
개인화 발송
+
Sheets
발송 이력
💡 트랙 A와의 차이점
트랙 A는 분석 후 3등급 분기 (Switch)가 핵심이었습니다.
트랙 B는 분기 없이, GPT가 고객마다 다른 추천 문안을 생성하는 것이 핵심입니다.
같은 AI Agent를 쓰되, 목적이 "분류/분석"이 아니라 "생성"입니다.

📋 사전 준비: 만기 고객 시트 및 이력 관리 시트

Google Sheets에 「만기예금관리」 시트를 만듭니다:

고객명이메일연령대총자산(만원)만기상품만기금액(만원)만기일투자성향
김영수kim@test.com60대80000정기예금 1년300002026-04-20안정형
이지은lee@test.com30대15000적금 2년50002026-04-22중립형
박현우park@test.com40대200000정기예금 6개월1000002026-04-25적극투자형
최미래choi@test.com50대50000정기예금 1년200002026-04-28안정형
정하늘jung@test.com20대3000적금 1년12002026-04-30중립형

Google Sheets에 「만기예금관리-이력」 시트를 만듭니다:

고객명이메일연령대총자산(만원)만기상품만기금액(만원)만기일투자성향추천상품1추천상품2

🤖 GPT 프롬프트 — 개인화 추천 문안 생성

📋 System Prompt
당신은 ER은행의 고객 자산관리(WM) 전문 상담사입니다. 만기 예정 고객의 정보를 바탕으로, 고객 맞춤형 재예치 또는 상품 전환 추천 안내문을 작성하세요. 【고객 맞춤 원칙】 - 안정형: 정기예금 재예치, 국공채 펀드 추천. 원금 보장 강조. - 중립형: 혼합형 펀드, ELS, 정기예금+적금 조합 추천. 수익·안전 균형. - 적극투자형: 주식형 펀드, 해외 ETF, ISA 계좌 추천. 수익률 강조. 【연령대 고려】 - 20~30대: 적금·ISA 중심, 장기 투자 권유 - 40~50대: 분산 투자, 은퇴 준비 언급 - 60대 이상: 원금 보장, 이자 수령 빈도 강조 【자산 규모 고려】 - 5,000만원 미만: 기본 상품 위주 - 5,000만~2억: PB 상담 권유 - 2억 이상: VIP PB 연결, 맞춤 포트폴리오 제안 【응답 형식 — 반드시 JSON으로만】 { "인사말": "김영수 고객님, 안녕하세요. ER은행 자산관리팀입니다.", "추천상품1": "ER 안심 정기예금 (1년, 연 3.8%)", "추천이유1": "원금 100% 보장으로 안정적 이자 수령 가능", "추천상품2": "ER 국공채 월이자 펀드", "추천이유2": "매월 이자를 수령하며 생활비 보충에 적합", "마무리멘트": "궁금하신 점은 담당 PB에게 문의해 주세요.", "PB연결여부": "일반 상담" }

User Message:

고객명: {{ $json.고객명 }} 연령대: {{ $json.연령대 }} 총자산: {{ $json['총자산(만원)'] }}만원 만기상품: {{ $json.만기상품 }} 만기금액: {{ $json['만기금액(만원)'] }}만원 만기일: {{ $json.만기일 }} 투자성향: {{ $json.투자성향 }}

🤖 GPT 응답 예시

박현우 (40대·2억·적극투자형) 응답
{ "인사말": "박현우 고객님, 안녕하세요. ER은행 VIP 자산관리팀입니다.", "추천상품1": "ER 글로벌 테크 ETF 랩 (목표수익률 연 8~12%)", "추천이유1": "AI·반도체 중심 글로벌 성장주에 분산 투자, 적극투자형 성향에 적합", "추천상품2": "ER ISA 종합계좌 (비과세 한도 활용)", "추천이유2": "1억 만기금액의 세금 효율적 운용, 40대 은퇴 설계와 병행", "마무리멘트": "전담 VIP PB가 맞춤 포트폴리오를 설계해 드립니다.", "PB연결여부": "VIP PB 연결" }

⚙️ Set 노드 — AI 결과 파싱

// AI 분석 결과 파싱 인사말: {{ $json.output.parseJson().인사말 }} 고객명: {{ $('Get row(s) in sheet').item.json['고객명']}} 만기상품: {{ $('Get row(s) in sheet').item.json.만기상품}} 만기금액: {{ $('Get row(s) in sheet').item.json['만기금액(만원)']}} 만기일: {{ $('Get row(s) in sheet').item.json.만기일}} 추천상품1: {{ $json.output.parseJson().추천상품1 }} 추천이유1: {{ $json.output.parseJson().추천이유1 }} 추천상품2: {{ $json.output.parseJson().추천상품2 }} 추천이유2: {{ $json.output.parseJson().추천이유2 }} 마무리멘트: {{ $json.output.parseJson().마무리멘트 }}

📧 개인화 이메일 템플릿

Subject: [ER은행] {{ $json.고객명 }}님, 만기 예정 상품 맞춤 안내 <div style="font-family:sans-serif;max-width:560px;padding:24px"> <p>{{ $json.인사말 }}</p> <p>{{ $json.만기상품 }} ({{ $json.만기금액 }}만원)이 <strong>{{ $json.만기일 }}</strong>에 만기 예정입니다.</p> <div style="background:#fffbeb;border-radius:10px;padding:16px;margin:16px 0"> <strong>💡 추천 상품 1: {{ $json.추천상품1 }}</strong> <p>{{ $json.추천이유1 }}</p> </div> <div style="background:#f0fdf4;border-radius:10px;padding:16px;margin:16px 0"> <strong>💡 추천 상품 2: {{ $json.추천상품2 }}</strong> <p>{{ $json.추천이유2 }}</p> </div> <p>{{ $json.마무리멘트 }}</p> </div>
🎉 핵심! 5명의 고객에게 5개의 완전히 다른 이메일이 발송됩니다. 60대 안정형 김영수님에게는 정기예금·국공채를, 40대 적극투자형 박현우님에게는 글로벌 ETF·ISA를 추천합니다. 이것이 AI 개인화의 힘입니다.
Common Tips · 양쪽 트랙 공통

🔧 W6 실습 팁 & 트러블슈팅

💡
Split In Batches 노드 활용
시트에 여러 행이 있을 때 한 번에 모두 처리하면 AI API 호출이 겹칠 수 있습니다. "Split In Batches" 노드를 Trigger 뒤에 넣으면 1건씩 순차 처리됩니다. API 에러(Rate Limit) 방지에 효과적!
💡
AI 응답이 매번 조금씩 달라요 — 정상입니다
같은 데이터를 넣어도 GPT의 표현이 약간 다를 수 있습니다. 등급 판정("정상/주의/위험")은 대체로 일관적이지만, 문장 표현은 다양합니다. 이것이 AI의 특성이며 장점입니다.
⚠️
API 비용 주의
테스트 시 매번 GPT API가 호출됩니다. 5건 × 테스트 3회 = 15회 호출. Sonnet 모델 기준 약 $0.05 정도로 미미하지만, Active 상태에서 시트에 데이터를 대량 붙여넣으면 한꺼번에 호출될 수 있습니다.
JSON.parse() 에러가 계속 나요
GPT가 JSON 앞에 "네, 분석 결과입니다:" 같은 텍스트를 추가하는 경우. 해결법: System Prompt 마지막에 "JSON 외에 어떤 텍스트도 절대 포함하지 마세요. 인사말, 설명, 마크다운 코드블록 없이 순수 JSON만 응답하세요."를 강조.
한글 필드명이 깨져요 (undefined)
Expression에서 $json.매출액(억)처럼 괄호가 있으면 반드시 $json['매출액(억)']으로 씁니다. 괄호·공백·특수문자가 있는 필드는 항상 대괄호+따옴표!
Self-Check · 완료 확인

✅ W6 실습 완료 체크리스트

본인 트랙(A 또는 B)의 테스트 시트를 만들었다
AI Agent Node가 JSON 형식으로 분석/추천 결과를 반환한다
Set 노드에서 AI 응답을 개별 필드로 파싱했다
[트랙A] Switch 3등급 분기가 정확히 동작한다 / [트랙B] 5명에게 서로 다른 이메일이 발송된다
이메일에 AI 분석/추천 내용이 포함되어 있다
이력 시트에 모든 처리 결과가 자동 기록된다
5건 테스트 중 4건 이상 기대 결과와 일치한다
워크플로를 Active로 전환했다
Key Concepts · Phase 2 총정리

📌 Phase 2 핵심 개념 총정리 (W4~W6)

AI
AI 3가지 활용 패턴
① 분류 (W4): 텍스트 → 카테고리 라벨 — 이메일 5종 분류
② 분석 (W5): 데이터 → 평가 + 근거 — 재무 위험도 판정
③ 생성 (W6B): 조건 → 맞춤 텍스트 — 고객별 추천문 작성
P
프롬프트 설계 원칙
역할: "당신은 ~전문가입니다"
기준: 판단/생성 규칙을 명확히 나열
형식: JSON 강제 → n8n이 파싱 가능하게
H
하이브리드 의사결정
AI 판단(텍스트 이해) + 규칙 판단(숫자 조건) 결합. 실무에서 가장 실용적인 패턴. AI만으로도, 규칙만으로도 완전하지 않은 경우에 사용.
🔄
대량 처리 패턴
Split In Batches로 1건씩 순차 처리 → API Rate Limit 방지. 5건이면 괜찮지만, 실무에서 100건+ 처리 시 반드시 필요.
🧱 Phase 1~2 구조 전체 정리
Phase 1 (W1~W3): n8n 기본 구조 — 직선 / 조건 분기 / 멀티 출력
Phase 2 (W4~W6): AI 연동 — 분류 / 분석 / 생성 + 하이브리드 분기

Phase 3 (W7~W9)부터: 24/7 무인 운영 — 스케줄러, Webhook, 멀티채널 알림, 보안·감사 로그!
Next Week Preview · Phase 3 시작

👉 W7 미리보기

Scheduler & Webhook — 자동 실행 트리거
매일 07:50 여신 현황 자동 브리핑 + 이상거래 즉시 알림

W7부터 Phase 3입니다. 지금까지는 "시트에 행 추가" 같은 사용자 행동이 트리거였지만, W7에서는 시간 기반(매일 07:50)외부 이벤트(Webhook) 트리거를 배웁니다. 사람이 n8n을 열지 않아도 24시간 자동으로 돌아가는 시스템을 만듭니다.

n8n Scheduler Webhook GPT API
ER은행 AX 업무혁신 과정 · Track 1 · W6 실습 가이드 · 2026