수출 기초 (3) - 서류 자동 생성

실습 시간: 1.5시간 필요 도구: Google Sheets, Google AI Studio (Gemini API), Apps Script 산출물: 수출 서류 자동 생성 시스템

📚 이전 실습: 무역 정보 검색에서 규제, 관세, 인증 조회 방법을 배웠습니다.


💡 실습 2: 수출 서류 자동 생성 (1.5시간)

문제 상황

현실:

  • 매일 반복되는 서류 작성 (Invoice, Packing List, B/L)
  • 오타, 계산 실수로 클레임 발생
  • 서류당 30분 소요 → 하루 10건이면 5시간

목표:

  • 주문서 입력만으로 모든 서류 자동 생성
  • HS Code 자동 분류
  • 관세 계산 자동화

Step 1: Google Sheets 주문 템플릿 만들기 (20분)

1-1. 새 시트 생성

Google Sheets에서 “수출 주문 관리” 시트 생성

시트1: 주문 마스터

ABCDEFGHIJ
주문번호바이어명제품명수량단가(USD)총액Incoterms출발지도착지서류생성
ORD001Credo Beauty한방 세럼10022.52,250FOB SeoulIncheon PortLA Port[생성]

시트2: 제품 마스터

ABCDEF
제품코드제품명(영문)제품명(한글)HS Code단가(USD)무게(kg)
PRD001Herbal Essence Serum한방 세럼3304.9922.50.15

시트3: 바이어 마스터

ABCDEF
바이어코드바이어명주소연락처담당자이메일
BUY001Credo Beauty123 Market St, San Francisco, CA 94103+1-415-xxx-xxxxSarah Kimsarah@credo.com

1-2. 수식으로 자동 계산

F열 (총액):

=D2*E2

J열 (총 무게):

=SUMIF(제품마스터!$A:$A, C2, 제품마스터!$F:$F) * D2

Step 2: Google AI Studio에서 Gemini API 설정 (30분)

2-1. API 키 발급

  1. aistudio.google.com 접속
  2. “Get API key” 클릭
  3. 새 API 키 생성
  4. 복사해서 안전한 곳에 보관

2-2. Apps Script 설정 - Vibe Coding

핵심 학습: 완성된 코드를 복붙하는 대신, Gemini에게 단계별로 코드를 생성받습니다.

Google Sheets에서: 확장 프로그램 → Apps Script 클릭


Step 1: 기본 구조 요청

Gemini에게 다음 프롬프트 입력:

Google Apps Script로 수출 서류 자동 생성 시스템을 만들어줘.

## 환경
- Google Sheets에서 실행
- Gemini API로 서류 내용 생성

## 시트 구조
- 주문 마스터: 주문번호(A), 바이어명(B), 제품명(C), 수량(D), 단가(E), 총액(F), Incoterms(G), 출발지(H), 도착지(I)
- 바이어 마스터: 바이어코드(A), 바이어명(B), 주소(C), 연락처(D), 담당자(E), 이메일(F)

## 필요한 기능

### 1. 메뉴 시스템 (onOpen)
"🚢 수출 서류 생성" 메뉴:
- "📄 Invoice 생성" → showInvoiceDialog 함수
- "📦 Packing List 생성" → showPackingListDialog 함수
- "🔍 HS Code 조회" → showHSCodeDialog 함수

### 2. Gemini API 호출 함수 (callGeminiAPI)
- prompt를 받아 Gemini API 호출
- 응답 텍스트 반환
- 에러 처리

### 3. API 키 설정
코드 상단에 변수:
- API_KEY (Gemini API 키)
- API_URL (Gemini 2.0 Flash 엔드포인트)

## 출력
- 한글 주석 포함
- 에러 처리

Step 2: HS Code 조회 함수 요청

getHSCode 함수를 구현해줘.

## 동작
1. 제품명을 입력받음
2. Gemini API로 HS Code 추천 요청
3. 6자리 HS Code만 반환 (숫자만)

## 참고
- callGeminiAPI 함수 사용 (이미 구현됨)

Step 3: Invoice 생성 함수 요청

generateInvoice 함수를 구현해줘.

## 동작
1. 주문번호를 입력받음
2. 주문 마스터에서 해당 주문 정보 조회
3. 바이어 마스터에서 바이어 정보 조회
4. Gemini API로 Commercial Invoice 생성 요청
5. Invoices 시트에 결과 저장

## Invoice 프롬프트에 포함할 내용
- Invoice No, Date, Buyer, Product, Quantity, Unit Price, Total Amount, Incoterms
- 바이어 주소
- 판매자 정보 (하드코딩)
- "표준 Commercial Invoice 형식, 마크다운 출력" 요청

## 에러 처리
- 주문번호 못 찾으면 Error throw

Step 4: 다이얼로그 함수 요청

showInvoiceDialog, showHSCodeDialog 함수를 구현해줘.

## 동작
- SpreadsheetApp.getUi().prompt로 입력 받기
- OK 버튼 클릭 시 해당 함수 호출
- 결과/에러를 alert로 표시

Step 5: 코드 통합 및 API 키 입력

생성된 코드를 Apps Script에 붙여넣고, API 키 수정:

const API_KEY = "여기에_발급받은_API_키_붙여넣기";

2-3. 저장 및 권한 설정

  1. 저장 (Ctrl+S)
  2. “onOpen” 함수 실행 (▶ 버튼)
  3. 권한 요청 → “고급” → “안전하지 않은 페이지로 이동” → “허용”

Step 3: 서류 생성 테스트 (20분)

3-1. Invoice 생성

  1. Google Sheets 새로고침
  2. 메뉴에 ”🚢 수출 서류 생성” 추가됨
  3. ”📄 Invoice 생성” 클릭
  4. 주문번호 입력 (예: ORD001)
  5. 결과 확인

생성된 Invoice 예시:

# COMMERCIAL INVOICE

**Invoice No:** ORD001
**Date:** 2026-01-22
**Seller:** K-Beauty Organic Co., Ltd.
123 Gangnam-daero, Seoul, South Korea
Tel: +82-2-1234-5678

**Buyer:** Credo Beauty
123 Market St, San Francisco, CA 94103, USA

---

| Item | Description          | HS Code | Quantity | Unit Price | Amount    |
| ---- | -------------------- | ------- | -------- | ---------- | --------- |
| 1    | Herbal Essence Serum | 3304.99 | 100 pcs  | $22.50     | $2,250.00 |

**Incoterms:** FOB Seoul
**Total Amount:** USD $2,250.00

---

**Payment Terms:** T/T 30 days
**Origin:** Republic of Korea

3-2. HS Code 자동 조회

  1. ”🔍 HS Code 조회” 클릭
  2. 제품명 입력 (예: “organic face cream”)
  3. Gemini가 HS Code 추천 (예: 330499)

Step 4: Packing List & B/L 추가 - Vibe Coding (20분)

Gemini에게 추가 함수 요청:

generatePackingList, generateBL 함수를 추가해줘.

## generatePackingList 함수
1. 주문번호를 입력받음
2. Gemini API로 Packing List 생성 요청
3. 프롬프트 내용: 표준 Packing List 형식 (Carton 번호, 제품명, 수량, Net/Gross Weight, Dimensions)
4. 마크다운 표 형식으로 출력 요청

## generateBL 함수
1. 주문번호를 입력받음
2. Gemini API로 B/L 초안 생성 요청
3. 프롬프트 내용: Shipper, Consignee, Port of Loading/Discharge 정보
4. 표준 B/L 형식으로 작성 요청

## 참고
- callGeminiAPI 함수 사용 (이미 구현됨)

메뉴 확장 요청:

onOpen 함수를 업데이트하고, generateAllDocuments 함수를 추가해줘.

## 메뉴 항목 추가
- "🚢 B/L 초안 생성" → showBLDialog
- "📋 모든 서류 생성" → generateAllDocuments

## generateAllDocuments 함수
1. 주문번호 입력 받기 (prompt)
2. Invoice, Packing List, B/L 순서로 생성
3. 완료 알림 표시

✓ 실습 2 체크 포인트

□ Google Sheets 주문 템플릿 완성
□ Gemini에게 기본 구조 + API 호출 함수 생성 요청
□ Gemini에게 HS Code, Invoice 생성 함수 요청
□ Gemini에게 Packing List, B/L 함수 요청
□ 생성된 코드 통합 및 API 키 입력
□ Invoice 자동 생성 테스트 완료
□ 모든 서류 한 번에 생성 가능

💡 응용하기

추가 기능 아이디어:

  1. 관세 계산 자동화

    function calculateDuty(hsCode, country, amount) {
      const prompt = `
      HS Code ${hsCode} 제품을
      ${country}로 수출 시 관세율은?
      총액 $${amount}에 대한 관세 계산.
      `;
      return callGeminiAPI(prompt);
    }
  2. FTA 적용 여부 자동 판단

    • NotebookLM에 FTA 협정서 업로드
    • Gemini로 원산지 판정
  3. 서류 번역 (한↔영)

    • Invoice를 한글로도 자동 생성
    • 바이어에게는 영문, 세관에는 한글
  4. 이메일 자동 발송

    • Gmail API 연동
    • 서류 생성 후 바이어에게 자동 발송

📖 다음 단계

목차

Part 1. 시작하기
Part 2. 핵심 스킬
Part 3. 역할별 가이드
Part 4. 직무별 활용
Part 5. 도구 레퍼런스 > 5.1 전략 가이드
Part 6. 실습 워크북 > 6.1 핵심 스킬 실습
Part 6. 실습 워크북 > 6.2 무역실무 특화 실습