매일 수백 건의 주문을 처리하시나요? 배치 API를 사용하면 엑셀 파일로 최대 1,000건을 한 번에 등록할 수 있습니다.

⚡ 배치 API의 장점
• 1,000건을 3-5분 만에 처리
• 엑셀/CSV 파일 업로드 지원
• 자동 주소/전화번호 검증
• 실패 건 상세 오류 리포트

방법 1: 엑셀 템플릿 사용

1단계: 템플릿 다운로드

대시보드에서 엑셀 템플릿을 다운로드합니다.

택배사 | 수령인명 | 전화번호 | 주소 | 우편번호 | 상품명 | 수량
CJ    | 홍길동  | 010-1234-5678 | 서울시... | 06234 | 노트북 | 1
롯데   | 김철수  | 010-9876-5432 | 경기도... | 13494 | 마우스 | 2

2단계: 대시보드에서 업로드

  1. 대시보드 → 대량 등록 메뉴
  2. 엑셀 파일 선택
  3. 업로드 버튼 클릭
  4. 3-5분 대기
  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" }
    }
  ]
}

검증 규칙

💡 팁
• 업로드 전 엑셀에서 전화번호 형식 확인
• 주소 검색 API로 우편번호 자동 입력
• 실패 건은 수정 후 재업로드

처리 시간

비동기 처리로 빠른 응답을 받고, 진행 상황은 실시간으로 확인할 수 있습니다.