coupang
POST/v2/providers/openapi/apis/api/v4/vendors/{vendorId}/orders/invoicesv1

송장업로드 처리

# 01

요약

API 적용 가능한 구매자 사용자 지역 : 한국 송장을 업로드하여 주문을 배송지시 상태로 변경합니다. 상품준비중 상태의 주문에 대해서만 송장업로드가 가능합니다. 분리배송이 필요한 경우, 송장 업로드 예시는 FAQ 를 참고해주세요. 6개월 이내에 중복된 송장번호를 입력할 경우 송장중복에러가 발생할 수 있습니다.

# 02

상세

 API 적용 가능한 구매자 사용자 지역: 한국

송장을 업로드하여 주문을 배송지시 상태로 변경합니다.
상품준비중 상태의 주문에 대해서만 송장업로드가 가능합니다.
분리배송이 필요한 경우, 송장 업로드 예시는 FAQ를 참고해주세요.

6개월 이내에 중복된 송장번호를 입력할 경우 송장중복에러가 발생할 수 있습니다. 
(단, 수취인의 이름과 주소가 동일한 서로 다른 주문에 대해서는 동일한 송장번호를 입력할 수 있습니다.)
올바르지 않은 운송장을 입력하여 정확한 배송흐름을 추적할 수 없거나 기한 내 운송장을 입력하지 않아 고객이 취소를 요청할 경우 이로 인해 발생하는 배송비는 판매자가 부담해야 합니다.

Path

POST

/v2/providers/openapi/apis/api/v4/vendors/{vendorId}/orders/invoices

Example Endpoint

https://api-gateway.coupang.com/v2/providers/openapi/apis/api/v4/vendors/A00012345/orders/invoices

Request Parameters

Path Segment Parameter

Name Required Type Description
vendorId O String
판매자 ID
쿠팡에서 업체에게 발급한 고유 코드
예) A00012345

Body Parameter

Name Required Type Description
vendorId O String
판매자 ID
쿠팡에서 업체에게 발급한 고유 코드. 
예) A00012345
orderSheetInvoiceApplyDtos O Object
배송지시 상태로 변경할 대상 정보 목록
  shipmentBoxId O Number
배송번호(=묶음배송번호)
분리배송 시, 이미 발송한 상품의 shipmentBoxId는 변경됩니다. (orderId로 발주서 단건 조회API를 통해 확인 가능)
  orderId O Number
주문번호
  deliveryCompanyCode O String
택배사 코드
  invoiceNumber O String
송장번호
분리배송 시 선택. 입력 하지 않는 경우 "" 공백으로 입력한다.
분리배송 시에는 송장번호 또는 출고예정일 둘중에 한가지만 입력한다. 
업체직송(DIRECT)일 경우 임의의 숫자만 입력가능하며 배송트래킹은 지원하지 않습니다.
  vendorItemId O Number
옵션Id
송장을 업로드 할 상품의 옵션 ID를 입력. 
분리배송 시 해당 shipmentBoxId의 vendorItemId단위로 접수해야한다.
  splitShipping O Boolean
분리배송 여부
● false(전체배송) 
1개의 주문번호에 포함된 전체 상품을 1개의 송장번호로 배송하는 경우 
● true(분리배송) 
1개의 주문번호에 포함 된 상품을 분리하여 여러 송장번호로 배송하는 경우
  preSplitShipped O Boolean
분리 배송중인지 여부
● false 
분리배송을 하지 않는 경우 (=splitshipping이 false인 경우)
해당 주문번호에 대해 처음으로 분리배송처리 할 경우 
● true 
해당 주문번호에 이미 분리배송을 진행한 상품이 있을 경우
  estimatedShippingDate O String
(분리배송)출고예정일
YYYY-MM-DD 포멧으로 분리배송 시에만 선택적으로 입력. 
입력 하지 않는 경우 "" 공백을 입력한다.
분리배송 시, 송장번호 또는 출고예정일 둘 중 한가지만 입력.

Request Example

{
  "vendorId": "A00034612",
  "orderSheetInvoiceApplyDtos": [
    {
      "shipmentBoxId": 123456789012345678,
      "orderId": 4000019469460,
      "vendorItemId": 3823839899,
      "deliveryCompanyCode": "KDEXP",
      "invoiceNumber": "20180731040123",
      "splitShipping": false,
      "preSplitShipped": false,
      "estimatedShippingDate": ""
    },
    {
      "shipmentBoxId": 123456789012345679,
      "orderId": 4000019469460,
      "vendorItemId": 3834780191,
      "deliveryCompanyCode": "KDEXP",
      "invoiceNumber": "20180731040123",
      "splitShipping": false,
      "preSplitShipped": false,
      "estimatedShippingDate": ""
    }
  ]
}

Response Message

Name Type Description
code Number
서버 응답 코드
message String
서버 응답 메세지
data Array
 
  responseCode Number
request 전체결과값에 대한 상태메세지
code message remark
-1 NONE 결과없음
0 SUCCESS 성공
1 PARTIAL_ERROR 부분실패
99 FAILED 실패
  responseMessage String
request 전체결과값에 대한 상태메세지
  responseList Array
개별 건에 대한 결과셋
    shipmentBoxId Number
배송번호
    succeed Boolean
성공여부
    resultCode String
결과코드
code retry required remark
OK false 성공
NOT_FOUND_SHIPMENT_BOX false 존재하지 않는 송장번호입니다.
INVALID_STATUS false 배송진행상태가 유효하지 않습니다.
PERMISSION_DENIED true 권한이 없습니다.
DUPLICATE_INVOICE_NUMBER true 이미 저장된 송장번호가 있습니다.
INVALID_INVOICE_NUMBER true 송장번호가 유효하지 않습니다.
ORDER_DELIVERY_CANCELED false 취소된 주문건입니다. or 출고 준비중 상태인경우-> 출고중지 요청건입니다.
ORDER_DELIVERY_PARTIAL_STOP_REQUESTED true 출고중지 요청건입니다.
ORDER_DELIVERY_CANCELED_HOLDING_FOR_CANCEL true 취소대기상태의 주문건입니다.
UNDEFINED_ERROR_OCCUR true 알수없는 오류
NOT_ALLOW_INVOICE_NUMBER_RE_UPLOAD false 이미 저장된 송장번호가 있어, 송장번호 등록이 불가능합니다. (동일송장번호 업로드 조건 : 주문자/수취인정보 동일)
NOT_FOUND_INVOICE_NUMBER false 이미 출고 예정일이 등록된 상품이어서 운송장 번호를 입력하셔야 합니다.
NOT_FOUND_VENDOR_ITEM false 합포장건 중 누락된 상품이 있습니다.
NOT_ALLOW_VENDOR_DIRECT false 업체직송은 분리배송 할 수 없습니다.
PSD_NOT_ALLOW_TO_CHANGE false 출고예정일은 최초 등록 이후 변경 할 수 없습니다.
NOT_ALLOW_SEPARATE_AFTER_NORMAL_DELIVERY false 일반배송 접수 후 분리배송을 다시 할 수 없습니다.
IS_SEPARATE_MUST_BE_TRUE_WHEN_SEPARATE_DELIVERY false 분리배송 접수 후 일반배송으로 처리 할 수 없습니다. 분리배송 여부를 Y로 수정하시기 바랍니다.
NOT_ALLOW_SEPARATE_WHEN_ONE_VENDOR_ITEM false 상품이 한가지인 경우 분리배송 할 수 없습니다.
    resultMessage String
결과메세지
    retryRequired Boolean
retry 가능 여부

Response Example

{
  "code": "200",
  "message": "OK",
  "data": {
    "responseCode": 0,
    "responseMessage": "SUCCESS",
    "responseList": [
      {
        "shipmentBoxId": 123456789012345678,
        "succeed": true,
        "resultCode": "OK",
        "retryRequired": false,
        "resultMessage": null
      }
    ]
  }
}

Error Spec

HTTP 상태 코드(오류 유형) 오류 메시지 해결 방법
400 (요청변수확인) CJ 대한통운의 송장번호 형식에 맞지않는 운송장 번호 입니다. [6255*****632] 올바른 송장번호를 입력했는지 확인합니다.  
400 (요청변수확인) CJ 대한통운의 운송장번호는 숫자로만 구성되어야 합니다. InvoiceNumber must be number. [6257-6**2-10***] 올바른 송장번호를 입력했는지 확인합니다.  송장번호에 숫자 이외의 문자가 포함되었는지 확인합니다.
400 (요청변수확인) 업체직송의 운송장번호는 숫자로만 구성되어야 합니다. InvoiceNumber must be number. [***] 업체직송(DIRECT)의 송장번호를 숫자로 입력합니다. 예) 202002031830
400 (요청변수확인) invalid delivery company code: 올바른 택배사 코드(deliveryCompanyCode)를 입력했는지 확인합니다.
400 (요청변수확인) OO택배의 송장번호 형식에 맞지않는 운송장 번호 입니다. [956****734] 올바른 송장번호를 입력했는지 확인합니다. 

URL API Name

UPDATE_ORDER_SHIPPING_INFO