매일 수백 건의 주문을 처리하시나요? 배치 API를 사용하면 엑셀 파일로 최대 1,000건을 한 번에 등록할 수 있습니다.
⚡ 배치 API의 장점
• 1,000건을 3-5분 만에 처리
• 엑셀/CSV 파일 업로드 지원
• 자동 주소/전화번호 검증
• 실패 건 상세 오류 리포트
• 1,000건을 3-5분 만에 처리
• 엑셀/CSV 파일 업로드 지원
• 자동 주소/전화번호 검증
• 실패 건 상세 오류 리포트
방법 1: 엑셀 템플릿 사용
1단계: 템플릿 다운로드
대시보드에서 엑셀 템플릿을 다운로드합니다.
택배사 | 수령인명 | 전화번호 | 주소 | 우편번호 | 상품명 | 수량
CJ | 홍길동 | 010-1234-5678 | 서울시... | 06234 | 노트북 | 1
롯데 | 김철수 | 010-9876-5432 | 경기도... | 13494 | 마우스 | 2
2단계: 대시보드에서 업로드
- 대시보드 → 대량 등록 메뉴
- 엑셀 파일 선택
- 업로드 버튼 클릭
- 3-5분 대기
- 결과 확인 (성공/실패)
방법 2: 배치 API 사용
JavaScript 예제
const axios = require('axios');
const fs = require('fs');
const FormData = require('form-data');
async function uploadBulkDeliveries() {
const form = new FormData();
form.append('file', fs.createReadStream('deliveries.xlsx'));
try {
const response = await axios.post(
'https://api.deliveryapi.co.kr/v1/deliveries/batch',
form,
{
headers: {
'Authorization': `Bearer ${API_KEY}`,
...form.getHeaders()
}
}
);
console.log('배치 ID:', response.data.batchId);
return response.data.batchId;
} catch (error) {
console.error('업로드 실패:', error);
}
}
진행 상황 확인
async function checkBatchStatus(batchId) {
const response = await axios.get(
`https://api.deliveryapi.co.kr/v1/deliveries/batch/${batchId}`,
{
headers: { 'Authorization': `Bearer ${API_KEY}` }
}
);
console.log('처리 상태:', response.data.status);
console.log('성공:', response.data.successCount);
console.log('실패:', response.data.failureCount);
}
오류 처리
실패한 건은 상세 오류와 함께 리포트됩니다.
{
"batchId": "batch_abc123",
"status": "completed",
"totalCount": 100,
"successCount": 95,
"failureCount": 5,
"failures": [
{
"row": 3,
"reason": "잘못된 전화번호 형식",
"data": { "phone": "010-123-456" }
},
{
"row": 7,
"reason": "우편번호 불일치",
"data": { "zipCode": "00000" }
}
]
}
검증 규칙
- 전화번호: 010-0000-0000 형식
- 우편번호: 5자리 숫자
- 주소: 도로명/지번 주소
- 택배사: cj, lotte, hanjin 등
💡 팁
• 업로드 전 엑셀에서 전화번호 형식 확인
• 주소 검색 API로 우편번호 자동 입력
• 실패 건은 수정 후 재업로드
• 업로드 전 엑셀에서 전화번호 형식 확인
• 주소 검색 API로 우편번호 자동 입력
• 실패 건은 수정 후 재업로드
처리 시간
- 100건: 약 30초
- 500건: 약 2분
- 1,000건: 약 3-5분
비동기 처리로 빠른 응답을 받고, 진행 상황은 실시간으로 확인할 수 있습니다.