Claude Code 활용 해외 직구 배송대행지 요율 자동 비교 에이전트 30분 완성
복잡한 배송 요금 계산을 자동화 도구로 해결하기
해외 직구를 자주 이용하는 사람이라면 누구나 배송 비용을 비교해 본 적이 있을 것이다. 몰테일, 오마이집, 아이포터 등 각 업체마다 책정하는 기본 운임은 서로 다르다. 실제 무게와 부피 규격 중 어느 쪽을 기준으로 삼느냐에 따라 최종 요금이 결정되기 때문이다. 매번 요율표를 직접 대조하며 계산하다 보면 번거로울 뿐 아니라 실수하기도 쉽다.
이런 번거로움을 해결하고자 AI 개발 도구인 Claude Code를 활용해 조건별 비용을 계산하는 자동 비교 페이지를 제작해 보기로 한다. 개발 경험이 적은 사용자도 터미널 명령어를 입력하여 단계별로 진행할 수 있다. 대화형 인터페이스를 통해 필요한 요구 사항을 전달하면 빠른 시간 안에 실행 가능한 웹페이지가 완성된다.

부피무게 판정 방식과 운임 체계의 구조화
운송 비용을 계산할 때는 실무게와 부피무게 중 더 무거운 쪽을 기준으로 삼는 것이 일반적이다. 체적무게의 경우 상자의 가로, 세로, 높이(cm)를 곱한 값을 6000으로 나누어 산출한다. 업체별로 제공하는 상자 크기 기준 할인이나 면제 혜택이 다르기 때문에 최종 선택에 신중을 기할 필요가 있다.
각 업체의 요금표와 할인 조건을 데이터화하여 입력값에 맞춰 실시간으로 정렬하는 연산식을 화면에 배치한다. 복잡한 서버 설정 없이 웹 브라우저에서 직접 구동 가능한 단일 HTML 형식을 채택하여 관리 효율성을 크게 개선했다. 연산 공식을 코드 내부에 한데 모아두면 향후 요율 정책이 변경되더라도 수월하게 대처할 수 있다.

비교 도구 제작 환경 준비 및 초기 구현
작업을 진행할 폴더를 구성한 뒤 터미널 창을 활용해 도구를 구동하는 순서이다.
작업 공간을 새로 만들고 터미널에서 도구를 실행하는 단계이다.
이어서 자동화 도구에 설계할 프로그램의 사양을 명확하게 규정할 필요가 있다. 몰테일, 오마이집, 아이포터의 미국 뉴저지 기준 무게별 운임을 산출하고 최저가를 실시간 정렬하는 다크모드 기반 단일 HTML 파일의 제작을 요구해 본다. 이때 작성하는 구체적인 지시 문장은 아래와 같다.
도구에 프롬프트를 전달하면 사용자 요구에 맞춘 소스코드가 화면에 자동으로 구현되는 구조이다.
도구를 통해 출력된 HTML 파일 소스코드를 폴더 내에 저장한다. 사용자가 입력 값을 변경하는 즉시 연산 함수가 자동으로 실행되어 각 회사의 예상 운임이 일목요연하게 출력되는 방식이다.
<!DOCTYPE html>
<html lang="ko">
<head>
<meta charset="UTF-8">
<title>운송 요금 비교 계산기</title>
<style>
body { background: #121212; color: #e0e0e0; font-family: sans-serif; margin: 20px; }
.container { max-width: 600px; margin: 0 auto; background: #1e1e1e; padding: 25px; border-radius: 12px; box-shadow: 0 4px 15px rgba(0,0,0,0.6); }
h1 { font-size: 1.6rem; text-align: center; color: #00ff66; margin-bottom: 25px; }
.input-row { display: flex; gap: 15px; margin-bottom: 15px; }
.input-group { flex: 1; }
label { display: block; font-size: 0.85rem; margin-bottom: 6px; color: #aaa; }
input { width: 100%; padding: 12px; border-radius: 6px; border: 1px solid #333; background: #2a2a2a; color: #fff; box-sizing: border-box; }
button { width: 100%; padding: 14px; background: #00ff66; color: #121212; border: none; border-radius: 6px; font-weight: bold; cursor: pointer; font-size: 1.05rem; margin-top: 15px; transition: 0.2s; }
button:hover { background: #00dd55; }
.results { margin-top: 25px; border-top: 1px solid #333; padding-top: 20px; }
.result-card { display: flex; justify-content: space-between; align-items: center; padding: 15px; background: #252525; margin-bottom: 12px; border-radius: 6px; border-left: 5px solid #444; }
.result-card.cheapest { border-left-color: #00ff66; background: #1a3222; }
.agency-name { font-weight: bold; color: #fff; font-size: 1.05rem; }
.price-info { text-align: right; }
.price { font-weight: bold; color: #00ff66; font-size: 1.1rem; }
</style>
</head>
<body>
<div class="container">
<h1>배송 요금 실시간 비교기</h1>
<div class="input-row">
<div class="input-group">
<label>실무게 (kg)</label>
<input type="number" id="weight" value="2.0" step="0.1">
</div>
<div class="input-group">
<label>가로 (cm)</label>
<input type="number" id="width" value="30">
</div>
</div>
<div class="input-row">
<div class="input-group">
<label>세로 (cm)</label>
<input type="number" id="length" value="25">
</div>
<div class="input-group">
<label>높이 (cm)</label>
<input type="number" id="height" value="20">
</div>
</div>
<button >배송 요금 계산</button>
<div class="results" id="results"></div>
</div>
<script>
function calculateShipping() {
const weight = parseFloat(document.getElementById('weight').value);
const w = parseFloat(document.getElementById('width').value);
const l = parseFloat(document.getElementById('length').value);
const h = parseFloat(document.getElementById('height').value);
const volWeight = (w * l * h) / 6000;
const exchangeRate = 1380;
const agencies = [
{ name: "오마이집 (Ohmyzip)", base: 10.5, perHalf: 1.8, volDiscount: 0.0 },
{ name: "몰테일 (Malltail)", base: 13.2, perHalf: 2.1, volDiscount: 0.5 },
{ name: "아이포터 (Iporter)", base: 12.0, perHalf: 2.0, volDiscount: 0.3 }
];
let resultsHTML = '';
const calculated = agencies.map(agency => {
const effectiveWeight = Math.max(weight, weight + (volWeight - weight) * (1 - agency.volDiscount));
const roundedWeight = Math.ceil(effectiveWeight * 2) / 2;
const costUSD = agency.base + (Math.max(0, roundedWeight - 0.5) / 0.5) * agency.perHalf;
const costKRW = Math.round(costUSD * exchangeRate);
return { name: agency.name, costUSD, costKRW, finalWeight: roundedWeight };
}).sort((a, b) => a.costKRW - b.costKRW);
calculated.forEach((item, index) => {
const isCheapest = index === 0;
resultsHTML += `
<div class="result-card ${isCheapest ? 'cheapest' : ''}">
<span class="agency-name">${item.name} ${isCheapest ? ' [최저가]' : ''}</span>
<div class="price-info">
<div class="price">${item.costKRW.toLocaleString()}원</div>
<small style="color: #888;">$${item.costUSD.toFixed(2)} (적용무게: ${item.finalWeight}kg)</small>
</div>
</div>
`;
});
document.getElementById('results').innerHTML = resultsHTML;
}
window.
</script>
</body>
</html>
규칙 파일을 통한 연산 기준 일치
요금 정보와 환율 계산 공식이 업데이트 과정에서 훼손되지 않도록 별도의 규칙 파일을 프로젝트 폴더에 생성해 둔다. 루트 경로에 CLAUDE.md 문서를 배치해 두면 AI가 연산 규칙을 일관되게 학습하는 데 유용하다. 계산 지침을 한 파일에 명시하여 작업 방향을 통일감 있게 이끌어 갈 수 있다.
프로젝트 최상위 경로에 연산 지침을 명시한 규칙 문서를 추가한다.
사전에 명확한 기준이 정립되면 요율표 조정이나 부가 기능 설계 시 발생할 수 있는 계산 오류를 미연에 방지할 수 있다. 수치 정보와 정렬 공식이 파일로 기록되어 있어 프로젝트 전반의 동작 신뢰도가 한층 향상된다.
로컬 웹서버 연동 및 연산 검증
HTML 화면 구성과 가이드라인 파일 작성을 마친 다음, 브라우저에서 계산 로직이 제대로 도는지 점검할 필요가 있다.
아래 명령어로 로컬 개발 서버를 구동한다.
로컬 서버를 켠 뒤 브라우저를 활용해 해당 포트로 접속하는 단계이다. 상자의 가로, 세로, 높이 수치를 적절히 조정하면서 계산된 결괏값의 정렬 방식을 세밀하게 살펴본다. 값을 교체할 때마다 상자 크기별 무게 규정이 자동 계산되어 화면 상단에 최저 요금 업체가 올라오는 구조를 목격할 수 있다.
이전에는 개별 대행사 사이트를 돌며 운임표를 일일이 대조했지만 이제는 단일 화면에서 곧바로 계산이 끝난다. 무게와 부피 조건을 실시간으로 연산하여 정렬해 주는 맞춤형 프로그램 덕분이다. 향후 요금 체계 변동이나 실시간 환율 동기화 기능도 구조가 단순한 덕분에 쉽게 개선할 수 있다. 한 차례 잘 구축해 둔 나만의 계산기를 이용한다면 실질적인 배송비 절약에 큰 도움을 얻게 된다.
효율적인 활용 방안
해당 프로그램의 매력은 다양한 배송비 연산 규정을 웹 브라우저 한 곳에 모두 집약했다는 점에 있다. 계산에 쓰이는 규칙들을 코드와 문서에 각각 분리해 두었으므로 추후 유지보수가 무척 간편하다. 반복되는 대조 작업을 자동화하여 일상적인 해외 직구에서 배송비 계산 시간을 획기적으로 아낄 수 있다.
포장 상자의 크기와 실제 무게를 바탕으로 실시간 운임을 산출하므로 더 합리적인 배송 대행사 선택이 가능해진다. 세부 조건이 조금씩 다른 업체 요금표가 통합되어 있어 단순한 수치 입력만으로 최저 가격이 바로 도출되는 덕분이다. 일관되게 다듬어진 계산 구조를 활용해 번거로운 수작업 단계를 줄이고 불필요한 시간 낭비도 제거할 수 있다. 궁극적으로 직구 과정에서 예산 계획을 명확히 수립하는 데 긍정적인 영향을 준다.
Claude Code 같은 도구를 활용하면 웹 서비스 제작의 전 과정이 한결 수월해질 수 있다. 핵심 계산 기능 구현과 가이드 문서 정리를 조화롭게 연계하면 추후 데이터가 바뀌어도 금세 유연한 대응이 가능해질 것이다. 요금 비교 웹페이지를 잘 운용함으로써 직구 비용을 현명하게 아끼고 의사결정 효율도 극대화한다.
이런 글도 있어요
관련 검색어
- 🔍 Claude Code 사용법
- 🔍 Claude Code 비교
- 🔍 해외직구 사용법
- 🔍 해외직구 비교
- 🔍 배송대행지 사용법
- 🔍 배송대행지 비교