도매의신 API는 판매자와 공급사가 도매의신 플랫폼과 연동하여 상품정보 조회, 주문 처리, 재고 관리 등을 자동화할 수 있는 프로그래밍 인터페이스입니다.
도매의신에서 상품을 소싱하여 오픈마켓, 스마트스토어 등에 판매하는 분들을 위한 API입니다. 상품정보 수집, 자동발주, 주문상태 확인 등의 기능을 제공합니다.
도매의신에 상품을 공급하는 업체를 위한 API입니다. 상품등록/수정, 주문수집, 송장등록, 취소/반품 처리 등의 기능을 제공합니다.
https://data.domesin.com/API/v11/ | 쓰기/수정: https://domesin.com/API/v11/
판매회원(셀러)은 아래 절차에 따라 API키를 발급받을 수 있습니다.
내정보수정을 클릭합니다.
판매회원용 API키 생성 버튼을 클릭합니다.
공급사(벤더)는 SCM 시스템을 통해 API키를 발급받을 수 있습니다.
업체정보수정 메뉴로 이동합니다.
API KEY 발급 버튼을 클릭합니다.
API키를 발급받으셨나요? 이제 위의 탭에서 판매자 API 또는 공급사 API 메뉴얼을 확인하세요.
| 파라미터 | 필수 | 타입 | 설명 |
|---|---|---|---|
| api_key | ● | String | 도매의신에서 발급받은 API키 |
| m_id | ● | String | 도매의신 회원아이디 |
| page | ● | int | 요청하는 페이지 |
| start_date | ● | date | YYYY-mm-dd (예: 2018-01-01) 해당일자 00시00분 부터 |
| end_date | date | YYYY-mm-dd 해당일자 23시59분59초 까지 (NULL일경우 오늘) | |
| rows | int | 페이지당 데이터수 (최대 500, 초과시 500으로 고정) | |
| cid | int | 도매의신 카테고리코드 (NULL일경우 모든상품) | |
| vender_m_code | String | 도매의신 업체코드 (NULL일경우 전체상품) | |
| is_option | int | 1: 선택옵션 있는 상품만, -1: 선택옵션 없는 상품만, 0/NULL: 전체 | |
| is_overseas | int | 1: 해외직구 상품만, -1: 국내배송상품만, 0/NULL: 전체 | |
| item_sale_type | int | 1:VIP전용, 2:폐쇄몰전용, 3:파트너전용, 4:관리자전용, 0/NULL:일반상품 |
POST http://data.domesin.com/API/v13/item_list.php Content-Type: application/x-www-form-urlencoded api_key=YOUR_API_KEY &m_id=seller123 &page=1 &start_date=2025-05-01 &end_date=2025-05-25 &rows=100
| 필드명 | 타입 | 필수 | 설명 |
|---|---|---|---|
| code | String | ● | 결과코드 (성공: "0000") |
| message | String | 결과 메시지 | |
| total_count | int | ● | 전체 상품수 |
| total_page | int | ● | 전체 페이지수 |
| current_page | int | ● | 현재 페이지 |
| items[] 배열 | |||
| icode | String | ● | 도매의신 고유 상품코드 |
| iname | String | ● | 상품명 |
| iname_del | String | 택배송장명 | |
| cid | String | ● | 카테고리 코드 |
| icountry | String | ● | 원산지 (예: 국내산, 해외|아시아|중국) |
| maker | String | ● | 제조사 |
| brand | String | 브랜드명 | |
| model | String | 모델명 | |
| tax | String | ● | 과세여부 (0:과세, 1:면세) |
| vender_code | String | 공급사 상품코드 | |
| delivery_type | String | ● | 배송구분 (0:기본, 1:무료, 2:착불, 3:수량별) |
| delivery_amount | String | ● | 배송비 |
| price | String | ● | 판매가 (회원등급별 공급가) |
| price_basic | String | 기본 판매가 | |
| islimit | String | ● | 가격준수여부 (0:자율, 1:준수) |
| content | Text | 상품상세설명 (HTML) | |
| img | Array | ● | 상품이미지 URL 배열 |
| select_option | String | 선택옵션 문자열 | |
| status | String | ● | 판매상태 (0:판매중, 1:품절, 2:단종) |
| adult | String | ● | 성인상품 (0:전체, 1:성인전용) |
| reg_datetime | datetime | ● | 등록일시 |
| up_datetime | datetime | ● | 수정일시 |
| isreturn | String | ● | 반품가능 (1:가능, 0:불가) |
| is_overseas | int | ● | 해외직배송 (1:해외, 0:국내) |
| cert_type | String | ● | 인증타입 (0:대상아님, 1:인증대상, 2:상세표기) |
| gosi_code | String | ● | 상품고시코드 |
| item_sale_type | String | ● | 판매유형 (0:일반, 1:VIP, 2:폐쇄몰, 3:파트너, 4:관리자) |
{
"code": "0000",
"message": "성공",
"total_count": 125,
"total_page": 2,
"current_page": 1,
"items": [
{
"icode": "TS10012345",
"iname": "테스트 상품명",
"iname_del": "택배송장명",
"cid": "364",
"icountry": "국내산",
"maker": "제조사명",
"brand": "브랜드명",
"model": "모델명",
"tax": "0",
"vender_code": "TV100001",
"delivery_type": "0",
"delivery_amount": "3000",
"price": "10000",
"price_basic": "10000",
"islimit": "0",
"content": "<p>상품 상세설명 HTML</p>",
"img": [
"https://img.domesin.com/data/shop/297/TS10012345_main.jpg",
"https://img.domesin.com/data/shop/297/TS10012345_sub1.jpg"
],
"select_option": "[색상]\n레드==10000=0=0=0\n블루==10000=0=0=0\n",
"status": "0",
"adult": "0",
"reg_datetime": "2025-01-15 10:30:00",
"up_datetime": "2025-05-20 14:20:00",
"isreturn": "1",
"is_overseas": 0,
"cert_type": "0",
"gosi_code": "11",
"item_sale_type": "0"
}
]
}
| 파라미터 | 필수 | 타입 | 설명 |
|---|---|---|---|
| api_key | ● | String | 도매의신에서 발급받은 API키 |
| m_id | ● | String | 도매의신 회원아이디 |
| page | ● | int | 요청하는 페이지 |
| start_date | ● | date | YYYY-mm-dd 해당일자 00시00분 부터 |
| end_date | date | YYYY-mm-dd 해당일자 23시59분59초 까지 | |
| rows | int | 페이지당 데이터수 (최대 500) | |
| cid | int | 도매의신 카테고리코드 | |
| vender_m_code | String | 공급사 코드 | |
| item_sale_type | int | 1:VIP전용, 2:폐쇄몰전용, 3:파트너전용, 4:관리자전용, 0/NULL:일반상품 | |
| search | ● | String | 'Y' 또는 'N' (N: 모든변경상품, Y: 상세조건에 해당하는 데이터) |
| 변경조건 필터 (search='Y' 일때 사용) | |||
| c_iname | int | 1: 상품명이 변경된 데이터 | |
| c_cost | int | 1: 가격이 변경된 데이터 | |
| c_tax | int | 1: 과세여부가 변경된 데이터 | |
| c_status | int | NULL: 모든판매상태, 0:재입고, 1:품절, 2:단종 | |
| c_content | int | 1: 상품상세설명이 변경된 데이터 | |
| c_delivery | int | 1: 배송정책이 변경된 데이터 | |
| c_isreturn | int | 1: 반품정책이 변경된 데이터 | |
| c_list_option | int | 1: 상품선택옵션이 변경된 데이터 | |
| c_limit | int | 1: 가격준수 여부가 변경된 데이터 | |
| c_limit_price | int | 1: 판매준수가가 변경된 데이터 | |
| c_origin | int | 1: 원산지가 변경된 데이터 | |
| c_company | int | 1: 제조사가 변경된 데이터 | |
| c_adult | int | 1: 성인상품 여부가 변경된 데이터 | |
| c_overseas | int | 1: 해외배송상품 여부가 변경된 데이터 | |
POST http://data.domesin.com/API/v13/item_change_list.php Content-Type: application/x-www-form-urlencoded api_key=YOUR_API_KEY &m_id=seller123 &page=1 &start_date=2025-05-01 &search=Y &c_cost=1 &c_status=0
| 필드명 | 타입 | 필수 | 설명 |
|---|---|---|---|
| code | String | ● | 결과코드 (성공: "0000") |
| message | String | 결과 메시지 | |
| total_count | int | ● | 전체 상품수 |
| total_page | int | ● | 전체 페이지수 |
| current_page | int | ● | 현재 페이지 |
| items[] 배열 (1.1 신규상품과 동일 구조) | |||
{
"code": "0000",
"message": "",
"total_count": 45,
"total_page": 1,
"current_page": 1,
"items": [
{
"icode": "TS10012345",
"iname": "수정된 상품명",
"cid": "364",
"icountry": "국내산",
"maker": "제조사명",
"tax": "0",
"delivery_type": "0",
"delivery_amount": "3000",
"price": "10000",
"status": "0",
"up_datetime": "2025-05-20 14:20:00",
"item_sale_type": "0"
}
]
}
| 파라미터 | 필수 | 타입 | 설명 |
|---|---|---|---|
| api_key | ● | String | 도매의신에서 발급받은 API키 |
| m_id | ● | String | 도매의신 회원아이디 |
| icode | ● | String | 도매의신 상품코드 (예: TS10000001) |
POST http://data.domesin.com/API/v13/item_info.php Content-Type: application/x-www-form-urlencoded api_key=YOUR_API_KEY &m_id=seller123 &icode=TS10012345
| 필드명 | 타입 | 필수 | 설명 |
|---|---|---|---|
| code | String | ● | 결과코드 (성공: "0000") |
| message | String | 결과 메시지 | |
| mb_point | String | 회원 포인트 | |
| items[] 배열 - 기본정보 | |||
| icode | String | ● | 도매의신 고유 상품코드 |
| iname | String | ● | 상품명 |
| cid | String | ● | 카테고리 코드 |
| icountry | String | ● | 원산지 (예: 국내산, 해외|아시아|중국) |
| maker | String | ● | 제조사 |
| brand | String | 브랜드명 | |
| model | String | 모델명 | |
| keyword | String | 검색 키워드 (콤마 구분) | |
| 마켓별 카테고리 경로 | |||
| pa | String | 도매의신 판매카테고리 코드 | |
| pa_auction | String | 옥션 카테고리 경로 | |
| pa_gmarket | String | G마켓 카테고리 경로 | |
| pa_11st | String | 11번가 카테고리 경로 | |
| pa_interpark | String | 인터파크 카테고리 경로 | |
| pa_storefarm | String | 스토어팜 카테고리 경로 | |
| pa_toss | String | 토스쇼핑 카테고리 경로 | |
| pa_lotteon | String | 롯데온 카테고리 경로 | |
| 이셀러스/ESM 카테고리 코드 | |||
| es | String | 이셀러스 기본 카테고리 코드 | |
| es_auction | String | 옥션 이셀러스 카테고리 코드 | |
| es_gmarket | String | G마켓 이셀러스 카테고리 코드 | |
| esm_auction | String | ESM 옥션 카테고리 코드 | |
| esm_gmarket | String | ESM G마켓 카테고리 코드 | |
| es_11st | String | 11번가 이셀러스 카테고리 코드 | |
| es_interpark | String | 인터파크 이셀러스 카테고리 코드 | |
| es_storefarm | String | 스토어팜 이셀러스 카테고리 코드 | |
| es_coupang | String | 쿠팡 이셀러스 카테고리 코드 | |
| domeggok_cate | String | 도매꼭 카테고리 코드 | |
| toss_cate | String | 토스쇼핑 카테고리 코드 | |
| lotteon_cate | String | 롯데온 카테고리 코드 | |
| 가격/배송 정보 | |||
| tax | String | ● | 과세여부 (0:과세, 1:면세) |
| vender_code | String | 공급사 상품코드 | |
| delivery_type | String | ● | 배송구분 (0:기본, 1:무료, 2:착불, 3:수량별) |
| delivery_amount | String | ● | 배송비 |
| r_delivery_amount | String | 반품배송비 | |
| delivery_qty | String | 묶음배송수량 | |
| price | String | ● | 판매가 (회원등급별 공급가) |
| price_consumer | String | 소비자가 | |
| islimit | String | ● | 가격준수여부 (0:자율, 1:준수) |
| limit_price | String | 가격준수가 | |
| 상품 상태/옵션 | |||
| content | Text | 상품상세설명 (HTML) | |
| img | Array | ● | 상품이미지 URL 배열 |
| select_option | String | 선택옵션 문자열 | |
| text_option | String | 입력옵션 문자열 | |
| notice | String | 상품공지 | |
| itype | String | 상품타입 (0:새상품, 1:중고) | |
| status | String | ● | 판매상태 (0:판매중, 1:품절, 2:단종) |
| adult | String | ● | 성인상품 (0:전체, 1:성인전용) |
| reg_datetime | datetime | ● | 등록일시 |
| up_datetime | datetime | ● | 수정일시 |
| isreturn | String | ● | 반품가능 (1:가능, 0:불가) |
| is_overseas | int | ● | 해외직배송 (1:해외, 0:국내) |
| 인증/고시정보 | |||
| cert_type | String | ● | 인증타입 (0:대상아님, 1:인증대상, 2:상세표기) |
| cert | String | 인증유형 코드 | |
| cert_no | String | 인증번호 | |
| gosi_code | String | ● | 상품고시코드 |
| gosi1~gosi22 | String | 상품고시 항목 (고시종류에 따라 다름) | |
| item_sale_type | String | ● | 판매유형 (0:일반, 1:VIP, 2:폐쇄몰, 3:파트너, 4:관리자) |
{
"code": "0000",
"message": "정상적으로 조회 되었습니다",
"mb_point": "100000",
"items": [
{
"icode": "TS14497347",
"iname": "세면대 수전 다양한 각도 회전 연장 수도꼭지",
"cid": "1478",
"pa": "32120300",
"pa_auction": "생활용품>샤워기/수전용품>기타샤워기/수전용품",
"pa_gmarket": "생활용품>샤워기/수전용품>기타샤워기/수전용품",
"pa_11st": "욕실용품>샤워기/수전>욕실/세면수전",
"pa_interpark": "생활/수납/청소/욕실>샤워기/세면기/욕실편의>수도꼭지/수전/폽업/코브라>",
"pa_storefarm": "생활/건강>욕실용품>샤워기/수전용품>수도/수전용품",
"es": "351102000",
"es_auction": "28561700",
"es_gmarket": "300028890",
"esm_auction": "",
"esm_gmarket": "",
"es_11st": "1006820",
"es_interpark": "001830229006",
"es_storefarm": "50002302",
"es_coupang": "64517",
"domeggok_cate": "6479",
"icountry": "해외|아시아|중국",
"maker": "UNK",
"brand": "",
"model": null,
"tax": "0",
"vender_code": "TV100544",
"delivery_type": "0",
"delivery_amount": "3000",
"r_delivery_amount": null,
"delivery_qty": "0",
"keyword": "수전,세면대수전,욕실수전,주방수전,...",
"price": "3570",
"price_consumer": "",
"islimit": "0",
"limit_price": "0",
"content": "<p align=\"center\"><img src=\"...\" /></p>",
"img": [
"https://img.domesin.com/data/shop/450/14497347_RKv5i.jpg"
],
"select_option": "[선택]\n단일==3570=0=0=0\n",
"text_option": "",
"notice": "",
"itype": "0",
"status": "0",
"adult": "0",
"reg_datetime": "2025-07-24 13:35:37",
"up_datetime": "2026-06-01 22:41:04",
"isreturn": "1",
"is_overseas": 0,
"cert_type": "0",
"cert": "0",
"cert_no": "",
"gosi_code": "35",
"gosi1": "상세설명 참조",
"gosi2": "상세설명 참조",
"gosi3": "상세설명 참조",
"gosi4": "상세설명 참조",
"gosi5": "상세설명 참조",
"gosi6": "상세설명 참조",
"gosi7": "상세설명 참조",
"gosi8": "상세설명 참조",
"gosi9": "상품상세정보 참조",
"gosi10": "상품상세정보 참조",
"gosi11": "상품상세정보 참조",
"gosi12": "상품상세정보 참조",
"gosi13": "상품상세정보 참조",
"gosi14": "상품상세정보 참조",
"gosi15": "상품상세정보 참조",
"gosi16": "상품상세정보 참조",
"gosi17": "상품상세정보 참조",
"gosi18": "상품상세정보 참조",
"gosi19": "상품상세정보 참조",
"gosi20": "상품상세정보 참조",
"gosi21": "상품상세정보 참조",
"gosi22": "상품상세정보 참조",
"item_sale_type": "0"
}
]
}
| 파라미터 | 필수 | 타입 | 설명 |
|---|---|---|---|
| api_key | ● | String | 도매의신에서 발급받은 API키 |
| m_id | ● | String | 도매의신 회원아이디 |
| page | int | 요청하는 페이지 | |
| rows | int | 페이지당 데이터수 (최대 500) |
POST http://data.domesin.com/API/v13/item_last_month_hit.php Content-Type: application/x-www-form-urlencoded api_key=YOUR_API_KEY &m_id=seller123 &page=1 &rows=100
| 필드명 | 타입 | 필수 | 설명 |
|---|---|---|---|
| code | String | ● | 결과코드 (성공: "0000") |
| message | String | 결과 메시지 | |
| total_count | int | ● | 전체 상품수 |
| items[] 배열 | |||
| rank | int | ● | 인기순위 |
| icode | String | ● | 상품코드 |
| iname | String | ● | 상품명 |
| price | int | ● | 판매가 |
| hit_count | int | ● | 조회수 |
| order_count | int | ● | 주문수 |
| img | String | ● | 대표이미지 URL |
{
"code": "0000",
"message": "성공",
"total_count": 100,
"items": [
{
"rank": 1,
"icode": "TS10012345",
"iname": "인기상품1",
"price": 15000,
"hit_count": 5230,
"order_count": 320,
"img": "https://img.domesin.com/product/TS10012345_1.jpg"
},
{
"rank": 2,
"icode": "TS10012346",
"iname": "인기상품2",
"price": 12000,
"hit_count": 4850,
"order_count": 280,
"img": "https://img.domesin.com/product/TS10012346_1.jpg"
}
]
}
| 필드명 | 타입 | 필수 | 설명 |
|---|---|---|---|
| code | String | NOT NULL | API 결과 (성공시 '0000', 그외 에러) |
| message | String | 결과 메시지 | |
| mb_point | String | 회원 포인트 (item_info API에서만 반환) | |
| total_count | int | NOT NULL | 전체 상품수 (item_list, item_change_list에서만) |
| total_page | int | NOT NULL | 전체 페이지수 (item_list, item_change_list에서만) |
| current_page | int | NOT NULL | 현재 페이지 (item_list, item_change_list에서만) |
| ◼ items 배열 - 기본정보 | |||
| icode | varchar(20) | NOT NULL | 도매의신 고유상품 분류코드 (집결활용) |
| iname | varchar(100) | NOT NULL | 상품이름 |
| iname_del | varchar(100) | 택배송장명 (item_list, item_change_list에서만) | |
| imodel | varchar(40) | 모델명 | |
| icompany | varchar(40) | 제조사 이름 | |
| icountry | varchar(30) | NOT NULL | 원산지 텍스트기록 (국내|강원도|양양) |
| ibrand | varchar(40) | 브랜드 이름 | |
| cid | int(11) | NOT NULL | 소속 카테고리 인덱스 |
| sort_full | varchar(255) | 소속 카테고리의 sort_full (상품검색에 활용하기 위함) | |
| ◼ 마켓별 카테고리 정보 | |||
| pa | String | 도매의신 판매카테고리 코드 | |
| pa_auction | String | 옥션 카테고리 경로 | |
| pa_gmarket | String | G마켓 카테고리 경로 | |
| pa_11st | String | 11번가 카테고리 경로 | |
| pa_interpark | String | 인터파크 카테고리 경로 | |
| pa_storefarm | String | 스토어팜 카테고리 경로 | |
| pa_toss | String | 토스쇼핑 카테고리 경로 | |
| pa_lotteon | String | 롯데온 카테고리 경로 | |
| ◼ 이셀러스 카테고리 코드 | |||
| es | String | 이셀러스 기본 카테고리 코드 | |
| es_auction | String | 옥션 이셀러스 카테고리 코드 | |
| es_gmarket | String | G마켓 이셀러스 카테고리 코드 | |
| esm_auction | String | ESM 옥션 카테고리 코드 (item_info에서만) | |
| esm_gmarket | String | ESM G마켓 카테고리 코드 (item_info에서만) | |
| es_11st | String | 11번가 이셀러스 카테고리 코드 | |
| es_interpark | String | 인터파크 이셀러스 카테고리 코드 | |
| es_storefarm | String | 스토어팜 이셀러스 카테고리 코드 | |
| es_coupang | String | 쿠팡 이셀러스 카테고리 코드 | |
| domeggok_cate | String | 도매꼭 카테고리 코드 (item_info에서만) | |
| toss_cate | String | 토스쇼핑 카테고리 코드 | |
| lotteon_cate | String | 롯데온 카테고리 코드 | |
| ◼ 가격 정보 | |||
| cost | int(11) | NOT NULL | 공급원가 |
| amount_g | int(11) | NOT NULL | 일반소비자가격 |
| price | String | NOT NULL | 판매가 (회원등급에 따른 공급가격) |
| price_basic | String | 기본 판매가 (item_list, item_change_list에서만) | |
| price_consumer | String | 일반 소비자 가격 | |
| islimit | tinyint(4) | NOT NULL | 가격준수여부 (0:자율, 1:가격준수) |
| amount_limit | int(11) | islimit가 1일경우 가격준수가 | |
| amount_1 | int(11) | 회원레벨 1의 가격 (idx:2의 가격) | |
| amount_2 | int(11) | 회원레벨 2의 가격 (idx:2의 가격) | |
| amount_3 | int(11) | 회원레벨 3의 가격 (idx:2의 가격) | |
| amount_4 | int(11) | 회원레벨 4의 가격 (idx:2의 가격) | |
| amount_5 | int(11) | 회원레벨 5의 가격 (idx:2의 가격) | |
| per1 | tinyint(4) | 상품가격1의 퍼센트 | |
| per2 | tinyint(4) | 상품가격2의 퍼센트 | |
| per3 | tinyint(4) | 상품가격3의 퍼센트 | |
| per4 | tinyint(4) | 상품가격4의 퍼센트 | |
| per5 | tinyint(4) | 상품가격5의 퍼센트 | |
| tax | tinyint(4) | NOT NULL | 과세여부 (0:과세, 1:면세) |
| point | int(11) | 구매시 지급 포인트 | |
| ◼ 배송 정보 | |||
| delivery_type | tinyint(4) | NOT NULL | 배송타입 (0:기본배송, 1:무료배송, 2:착불배송, 3:수량별배송) |
| delivery_amount | int(11) | NOT NULL | 배송비 |
| delivery_qty | int(11) | 묶음배송수량 (수량별배송일 경우, 묶음배송수량) | |
| r_delivery_amount | int(11) | 반품배송비 | |
| i_delivery_content | mediumtext | 개별배송안내 (~미사용중) | |
| is_overseas | char(1) | NOT NULL | 해외직구여부 (Y:해외직배송, 그외:해외직배송일 경우 배송템플릿(delivery_tp)을 필수입력) |
| ◼ 상품 상태 및 옵션 | |||
| i_type | tinyint(4) | NOT NULL | 중고상품 여부 (1: 중고상품, 0:새상품) |
| status | tinyint(4) | NOT NULL | 상품판매상태 (0:정상판매, 1:일시품절, 2:게시중지, 3: 미승인(관리자승인대기중)) |
| i_hold | int(11) | 재고수량 | |
| i_hold_free | tinyint(4) | 재고제한없이 무제한 판매 여부 (1: 무제한판매, 0: 재고수량기준판매) | |
| is_opt | tinyint(4) | NOT NULL | 상품구매 옵션(색상선택, 사이즈선택) 수 |
| list_option_use | tinyint(4) | 선택옵션에 있을 경우(1), 없을경우 (0) | |
| text_option_use | tinyint(4) | 입력옵션에 있을경우 : 1 | |
| select_option | String | 상품선택옵션 (아래 형식 참조) | |
| select_option_basic | String | 기본가 기준 선택옵션 (item_list, item_change_list에서만) | |
| text_option | String | 상품입력옵션 (=로 구분) | |
| ◼ 이미지 정보 | |||
| img | Array | NOT NULL | 상품이미지 URL 배열 (최대 10개) |
| photo_big | varchar(256) | 큰이미지 파일명 (/data/shop/) | |
| photo_middle | varchar(256) | 중간 이미지 | |
| photo_thum | varchar(256) | 작은 이미지 | |
| photo_qty | tinyint(4) | 추가이미지 갯수 | |
| ◼ 상품 상세 | |||
| i_content | text | 상품설명 | |
| i_content_type | tinyint(4) | 상세설명 타입 (1:html, 0:텍스트) (~ 미사용중) | |
| notice | mediumtext | 상품공지 | |
| keyword | varchar(255) | 키워드 (콤마로 구분하여 5개 이상 등록해 주세요) | |
| question_qty | int(11) | 상품문의 갯 수 | |
| comment_qty | int(11) | 댓글수 | |
| hit | int(11) | 상품조회수 | |
| sale | int(11) | 판매수 | |
| ◼ 공급사 정보 | |||
| vender | varchar(50) | 판다(상품공급사)코드 | |
| vender_m_code | varchar(8) | 판다 회원 코드 | |
| vender_code | varchar(20) | 판다사 자체관리코드 | |
| sort_point | int(11) | 상품추천자수 점수 - 높은숫자 우선 | |
| ◼ 아이콘 및 추천 설정 | |||
| use_icon1 | tinyint(4) | 아이콘1 사용유무 (1사용) | |
| use_icon2 | tinyint(4) | 아이콘2 사용유무 | |
| use_icon3 | tinyint(4) | 아이콘3 사용유무 | |
| use_icon4 | tinyint(4) | 아이콘4 사용유무 | |
| use_icon5 | tinyint(4) | 아이콘5 사용유무 | |
| use_rec | tinyint(4) | 추천상품여부 (1:예) | |
| use_new | tinyint(4) | 신상품여부 (1:예) | |
| use_special | tinyint(4) | 가특상품여부(1:예) | |
| use_sale | tinyint(4) | 세일상품여부(1:예) | |
| ◼ 날짜 정보 | |||
| reg_datetime | datetime | NOT NULL | 상품 최초 등록일시 |
| up_datetime | datetime | NOT NULL | 상품정보 최종 수정일시 |
| del | tinyint(4) | 상품삭제여부(1:삭제, 0:정상) | |
| apploval_date | date | 승인일자 | |
| ◼ 인증 및 고시정보 | |||
| cert_type | tinyint(4) | NOT NULL | 인증대상여부 ~ 0:인증대상 아님, 1: 인증대상, 2:상품상세설명표기 |
| cert | tinyint(4) | 인증유형구분코드 (config_shop.html의 $config[cert_arr] 곤 정의된 순서 1,2,3,...) | |
| cert_no | varchar(30) | 인증유형에 따른 인증번호 | |
| gosi_code | char(3) | NOT NULL | 상품고시 코드 |
| gosi | mediumtext | 고시 구분자 ````` 로 구분저장으며 저장한다 | |
| gosi1~gosi22 | String | 상품고시 항목 (고시종류에 따라 다름, null 가능) | |
| ◼ 판매유형 및 기타 | |||
| adult | tinyint(4) | NOT NULL | 성인전용여부 (1:성인전용, 0:전체이용가상품) |
| item_sale_type | tinyint(4) | NOT NULL | $config[mb_pv_arr] = array('일반상품', 'VIP전용', '폐쇄몰전용', '파트너전용', '관리자전용'); |
| isreturn | tinyint(4) | NOT NULL | 반품가능여부 (1:가능, 0:반품불가) |
| ok | tinyint(4) | 관리자 승인여부 (0:미승인, 1:승인, 2:승인거부, 3:승인취소) | |
| warn | tinyint(1) | 1:판매주의, 0:일반 | |
| a_sale | int(11) | 판매건수 | |
| a_day | double | 평균배송일 | |
| ◼ 공급사 평가 정보 | |||
| v_grade | tinyint(1) | 공급사 현재등급 | |
| v_deal_per | int(3) | 주문이행율 | |
| v_speed | float | 출고속도 | |
| v_talk_per | int(3) | 24시간 답변율 | |
| is_medi | tinyint(1) | 1:의료용품카테고리, 0:일반카테고리 | |
| is_health | tinyint(1) | 1:건강기능식품카테고리, 0:일반카테고리 | |
| is_insourcing | tinyint(1) | 도산배송(내부물류창고)상품: 1, 0:공급사배송 | |
| ◼ 쿠폰 정보 | |||
| cp_amount | int(7) | 쿠폰제공금액 | |
| cp_idx | int(11) | coupons_vender.idx, 값이 ~1일 경우 쿠폰발행 불가상품 | |
| cp_expire | date | 쿠폰 사용 만료일자 | |
[옵션명1=옵션명2]\n옵션값1=옵션값2=가격=준수가=기본가=품절상태\n...[색상]\n레드==10000=0=0=0\n블루==10000=0=0=0\n[색상=사이즈]\n레드=S=10000=0=0=0\n레드=M=10000=0=0=0\n블루=S=10000=0=0=0\n테스트용:
| 파라미터 | 필수 | 타입 | 설명 |
|---|---|---|---|
| api_key | ● | String | 도매의신에서 발급받은 API키 |
| m_id | ● | String | 도매의신 회원아이디 |
| c_name | ● | String | 수취인 이름 |
| c_hp | ● | String | 수취인 휴대폰 번호 |
| c_tel | String | 수취인 연락처 2 | |
| c_zip | ● | String | 수취인 우편번호 |
| c_addr | ● | String | 수취인 주소1 |
| c_addr_detail | ● | String | 수취인 상세주소 |
| c_ship_memo | String | 배송요청사항 | |
| c_memo | String | 주문관리메모 | |
| c_memo2 | String | 기타 (솔루션 주문번호) | |
| items 배열 | |||
| items[].icode | ● | String | 도매의신 상품코드 |
| items[].option1 | String | 1차옵션 이름 (정확한 문자로 입력) | |
| items[].option2 | String | 2차옵션 이름 | |
| items[].qty | ● | int | 수량 |
요청 예시:
POST https://domesin.com/API/v11/order.php
Content-Type: application/json
{
"api_key": "YOUR_API_KEY",
"m_id": "seller123",
"c_name": "홍길동",
"c_hp": "01012345678",
"c_tel": "02-345-6789",
"c_zip": "12345",
"c_addr": "경기도 부천시 원미구",
"c_addr_detail": "123번지 도매아파트 101동 101호",
"c_ship_memo": "부재시 경비실에 부탁합니다.",
"c_memo": "옥션아이디: test",
"c_memo2": "솔루션주문번호12345",
"items": [
{"icode": "TS10323180", "option1": "레드", "option2": "", "qty": 2},
{"icode": "TS10323711", "option1": "소", "option2": "", "qty": 6}
]
}
| 필드명 | 타입 | 필수 | 설명 |
|---|---|---|---|
| code | String | NOT NULL | 주문코드 (성공시 '0000', 그외 에러) |
| message | String | 결과 메시지 | |
| order_code | String | NOT NULL | 장바구니 주문코드 |
| item_amount | int | NOT NULL | 상품합계금액 |
| delivery_amount | int | NOT NULL | 배송비 합계금액 (도서산간 추가배송비 포함) |
| order_list_detail 배열 | |||
| order_list_code | int | NOT NULL | 주문상품 개별원장번호 (주문상태 조회시 사용) |
| icode | String | NOT NULL | 주문상품 코드 |
| iname | String | NOT NULL | 주문상품 이름 |
| qty | int | NOT NULL | 주문상품 수량 |
| item_amount | int | NOT NULL | 주문상품 단가 |
| is_island | int | NOT NULL | 도서산간 추가배송비 여부 (0:해당없음, 1:포함) |
응답 예시:
{
"code": "0000",
"message": "주문이 정상적으로 접수되었습니다.",
"order_code": "ORD20250525001234",
"item_amount": 32000,
"delivery_amount": 6000,
"order_list_detail": [
{
"order_list_code": 98765,
"icode": "TS10323180",
"iname": "테스트상품A [레드]",
"qty": 2,
"item_amount": 20000,
"is_island": 0
},
{
"order_list_code": 98766,
"icode": "TS10323711",
"iname": "테스트상품B [소]",
"qty": 6,
"item_amount": 12000,
"is_island": 0
}
]
}
| 파라미터 | 필수 | 타입 | 설명 |
|---|---|---|---|
| api_key | ● | String | 도매의신에서 발급받은 API키 |
| m_id | ● | String | 도매의신 회원아이디 |
| order_code | ● | String | 도매의신 주문코드 |
요청 예시:
POST https://domesin.com/API/v11/order_status.php
Content-Type: application/json
{
"api_key": "YOUR_API_KEY",
"m_id": "seller123",
"order_code": "ORD20250525001234"
}
| 필드명 | 타입 | 필수 | 설명 |
|---|---|---|---|
| code | String | NOT NULL | 결과코드 |
| message | String | 결과 메시지 | |
| order_code | String | NOT NULL | 도매의신 주문코드 |
| c_name | String | NOT NULL | 수취인 이름 |
| order_list_detail 배열 | |||
| order_list_code | int | NOT NULL | 주문상품 개별원장번호 |
| icode | String | NOT NULL | 주문상품 코드 |
| iname | String | NOT NULL | 주문상품 이름 |
| qty | int | NOT NULL | 주문상품 수량 |
| status | String | NOT NULL | 주문상태 (신규주문, 배송준비중, 발송완료, 취소완료) |
| claim_status | String | 클레임 상태 (취소요청, 취소거절, 반품요청, 반품승인 등) | |
| del_corp | String | 배송업체 이름 | |
| del_no | String | 배송송장번호 | |
응답 예시:
{
"code": "0000",
"message": "조회 성공",
"order_code": "ORD20250525001234",
"c_name": "홍길동",
"order_list_detail": [
{
"order_list_code": 98765,
"icode": "TS10323180",
"iname": "테스트상품A [레드]",
"qty": 2,
"status": "발송완료",
"claim_status": "",
"del_corp": "CJ대한통운",
"del_no": "123456789012"
},
{
"order_list_code": 98766,
"icode": "TS10323711",
"iname": "테스트상품B [소]",
"qty": 6,
"status": "배송준비중",
"claim_status": "",
"del_corp": "",
"del_no": ""
}
]
}
| 파라미터 | 필수 | 타입 | 설명 |
|---|---|---|---|
| api_key | ● | String | 도매의신에서 발급받은 API키 |
| m_id | ● | String | 도매의신 회원아이디 |
| order_code | ● | String | 도매의신 주문코드 (장바구니) |
| order_list_code | ● | int | 주문시 발급받은 상품별 주문코드 |
요청 예시:
POST https://domesin.com/API/v11/order_cancel.php
Content-Type: application/json
{
"api_key": "YOUR_API_KEY",
"m_id": "seller123",
"order_code": "ORD20250525001234",
"order_list_code": 98765
}
응답 예시:
{
"code": "0000",
"message": "주문취소가 접수되었습니다.",
"order_code": "ORD20250525001234",
"order_list_code": 98765,
"cancel_status": "취소요청"
}
| 파라미터 | 필수 | 타입 | 설명 |
|---|---|---|---|
| api_key | ● | String | 도매의신에서 발급받은 API키 |
| m_id | ● | String | 도매의신 회원아이디 |
요청 예시:
POST https://domesin.com/API/v11/my_cash.php Content-Type: application/x-www-form-urlencoded api_key=YOUR_API_KEY &m_id=seller123
응답 예시:
{
"code": "0000",
"message": "조회 성공",
"m_id": "seller123",
"cash": 150000,
"point": 5000,
"total_available": 155000
}
| 코드 | 설명 |
|---|---|
| 0000 | 성공 |
| 상품정보 API (item_list, item_change_list, item_info) | |
| 0010 | API키 에러 |
| 0011 | 회원정보에러 또는 사용권한이 없습니다 |
| 0013 | 파라미터 start_date 오류 또는 미래일자 |
| 0014 | 파라미터 search값 에러 ('Y' 또는 'N'으로 전달해 주세요) |
| 0015 | 존재하지 않는 상품코드입니다 (item_info) |
| 0016 | API 전용상품 권한오류 또는 상품코드 미전달 |
| 0017 | API KEY Error (회원아이디 오류) |
| 0018 | 카테고리 cid 에러 |
| 0022 | 공급사코드 에러 |
| 0100 | 파라미터가 정상적으로 전달되지 않았습니다 (item_info) |
| 0200 | 사용권한이 없습니다 (item_info) |
| 0300 | API KEY Error (item_info) |
| 기타 공통 | |
| 20 | 너무 많은 요청으로 일시적으로 차단된 상태입니다 |
| 21 | 이미 요청한 데이터를 처리중입니다 |
<?php
$url = "http://data.domesin.com/API/v13/item_list.php";
$post_data["m_id"] = "회원아이디";
$post_data["api_key"] = "API키";
$post_data["page"] = 1;
$post_data["start_date"] = "2018-02-10";
$post_data["end_date"] = "2018-02-10";
$post_data["rows"] = 100;
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data);
curl_setopt($ch, CURLOPT_TIMEOUT, 30);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$data = curl_exec($ch);
curl_close($ch);
$data = json_decode($data, true);
if($data['code'] == "0000") {
// 성공
foreach($data['items'] as $item) {
echo $item['icode'] . " : " . $item['iname'] . "\n";
}
} else {
// 실패
echo "Error: " . $data['message'];
}
?>
<?php
// 테스트용 URL (실제 주문은 order.php 사용)
$url = "https://domesin.com/API/v11/order_request_test.php";
$json = array(
"api_key" => "도매의신 셀러API KEY",
"m_id" => "도매의신 셀러아이디",
"c_name" => "수취인",
"c_hp" => "01012345678",
"c_tel" => "02-345-6789",
"c_zip" => "12345",
"c_addr" => "경기도 부천시 원미구",
"c_addr_detail" => "123번지 도매아파트 101동 101호",
"c_ship_memo" => "부재시 경비실에 부탁합니다.",
"c_memo" => "옥션아이디: test",
"c_memo2" => "플레이오토 12345주문",
"items" => array(
array(
"icode" => "TS10323180",
"option1" => "레드",
"option2" => "",
"qty" => "2"
),
array(
"icode" => "TS10323711",
"option1" => "소",
"option2" => "",
"qty" => "6"
)
)
);
$json_string = json_encode($json);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HEADER, FALSE);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json'));
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $json_string);
$data = curl_exec($ch);
curl_close($ch);
$data = json_decode($data, true);
print_r($data);
?>
https://data.domesin.com/API/v11/vender_reference.php공급사 기본 정보를 조회합니다.
| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| api_key | String | O | 공급사 API 키 |
| m_id | String | O | 공급사 회원 ID |
| action | String | O | "vender_info" |
요청 예시:
POST https://data.domesin.com/API/v11/vender_reference.php
Content-Type: application/json
{
"api_key": "YOUR_API_KEY",
"m_id": "supplier123",
"action": "vender_info"
}
응답 예시:
{
"code": "0000",
"message": "조회 성공",
"vender_info": {
"m_id": "supplier123",
"m_code": "V00123",
"company_name": "테스트공급사",
"ceo_name": "홍길동",
"business_no": "123-45-67890",
"tel": "02-1234-5678",
"email": "supplier@example.com",
"grade": "일반",
"reg_datetime": "2024-01-15 10:00:00",
"item_count": 150,
"order_count_month": 320
}
}
공급사의 상품 수량 현황을 조회합니다.
| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| api_key | String | O | 공급사 API 키 |
| m_id | String | O | 공급사 회원 ID |
| action | String | O | "item_count" |
요청 예시:
POST https://data.domesin.com/API/v11/vender_reference.php
Content-Type: application/json
{
"api_key": "YOUR_API_KEY",
"m_id": "supplier123",
"action": "item_count"
}
응답 예시:
{
"code": "0000",
"message": "조회 성공",
"item_count": {
"total": 150,
"selling": 120,
"soldout": 25,
"discontinued": 5
}
}
공급사의 등록된 상품 목록을 조회합니다.
| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| api_key | String | O | 공급사 API 키 |
| m_id | String | O | 공급사 회원 ID |
| action | String | O | "item_list" |
| status | String | 판매상태 (0:판매중, 1:품절, 2:단종, 빈값:전체) | |
| cid | String | 카테고리코드 | |
| search | String | 상품명/상품코드 검색어 | |
| vender_code | String | 업체상품코드 검색 | |
| page | Int | 페이지 번호 (기본값: 1) | |
| rows | Int | 페이지당 개수 (기본값: 50, 최대: 100) |
요청 예시:
POST https://data.domesin.com/API/v11/vender_reference.php
Content-Type: application/json
{
"api_key": "YOUR_API_KEY",
"m_id": "supplier123",
"action": "item_list",
"status": "0",
"page": 1,
"rows": 20
}
응답 예시:
{
"code": "0000",
"message": "조회 성공",
"total_count": 150,
"page": 1,
"rows": 20,
"total_page": 8,
"list": [
{
"iid": 12345,
"icode": "TS10012345",
"vender_code": "MY-001",
"iname": "테스트상품",
"cid": "001001001",
"cost": 10000,
"amount_g": 20000,
"status": 0,
"status_text": "판매중",
"delivery_type": 0,
"delivery_amount": 3000,
"stock": 100,
"regtime": "2024-01-01 10:00:00",
"edittime": "2024-06-01 15:30:00"
}
]
}
상품 등록에 사용할 카테고리 목록을 조회합니다.
| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| api_key | String | O | 공급사 API 키 |
| m_id | String | O | 공급사 회원 ID |
| action | String | O | "category" |
| depth | Int | 카테고리 깊이 (1:대분류, 2:중분류, 3:소분류) | |
| parent_cid | String | 상위 카테고리 ID | |
| search | String | 카테고리명 검색어 |
요청 예시:
POST https://data.domesin.com/API/v11/vender_reference.php
Content-Type: application/json
{
"api_key": "YOUR_API_KEY",
"m_id": "supplier123",
"action": "category",
"depth": 3,
"parent_cid": "001001"
}
응답 예시:
{
"code": "0000",
"message": "조회 성공",
"categories": [
{
"cid": "001",
"name": "패션의류",
"depth": 1,
"parent_cid": ""
},
{
"cid": "001001",
"name": "여성의류",
"depth": 2,
"parent_cid": "001"
},
{
"cid": "001001001",
"name": "원피스",
"depth": 3,
"parent_cid": "001001"
}
]
}
송장 등록에 사용할 택배사 목록을 조회합니다.
| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| api_key | String | O | 공급사 API 키 |
| m_id | String | O | 공급사 회원 ID |
| action | String | O | "delivery" |
요청 예시:
POST https://data.domesin.com/API/v11/vender_reference.php
Content-Type: application/json
{
"api_key": "YOUR_API_KEY",
"m_id": "supplier123",
"action": "delivery"
}
응답 예시:
{
"code": "0000",
"message": "조회 성공",
"delivery_list": [
{"idx": 1, "name": "CJ대한통운"},
{"idx": 2, "name": "롯데택배"},
{"idx": 3, "name": "우체국택배"},
{"idx": 4, "name": "한진택배"},
{"idx": 5, "name": "로젠택배"},
{"idx": 6, "name": "경동택배"},
{"idx": 7, "name": "대신택배"},
{"idx": 8, "name": "일양로지스"},
{"idx": 9, "name": "합동택배"},
{"idx": 10, "name": "홈픽택배"},
{"idx": 99, "name": "기타"}
]
}
등록된 반품지/출고지 목록을 조회합니다.
| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| api_key | String | O | 공급사 API 키 |
| m_id | String | O | 공급사 회원 ID |
| action | String | O | "return_address" |
요청 예시:
POST https://data.domesin.com/API/v11/vender_reference.php
Content-Type: application/json
{
"api_key": "YOUR_API_KEY",
"m_id": "supplier123",
"action": "return_address"
}
응답 예시:
{
"code": "0000",
"message": "조회 성공",
"return_addresses": [
{
"raid": 1,
"name": "기본반품지",
"is_default": 1,
"zip": "12345",
"addr": "경기도 부천시 원미구",
"addr_detail": "123번지 도매물류센터",
"tel": "02-1234-5678",
"manager": "김물류"
},
{
"raid": 2,
"name": "서울창고",
"is_default": 0,
"zip": "06123",
"addr": "서울시 강남구 테헤란로",
"addr_detail": "456번지 서울물류",
"tel": "02-9876-5432",
"manager": "이창고"
}
]
}
테스트용:
| 파라미터 | 필수 | 타입 | 설명 |
|---|---|---|---|
| api_key | ● | String | 도매의신에서 발급받은 API키 |
| m_id | ● | String | 도매의신 공급사 아이디 |
| cid | ● | int | 도매의신 카테고리 코드 (최하위 카테고리) |
| iname | ● | String | 상품명 (최대 100자) |
| origin | ● | String | 원산지 (예: 국내산, 해외|아시아|중국) |
| icompany | ● | String | 제조사 |
| keyword | ● | String | 검색 키워드 (콤마로 구분, 5개 이상) |
| cost | ● | int | 공급가 (VAT포함) |
| tax | ● | int | 0:과세, 1:면세 |
| adult | ● | int | 0:일반상품, 1:성인전용 |
| status | ● | int | 0:판매중, 1:품절, 2:단종 |
| i_type | ● | int | 0:새제품, 1:중고품 |
| amount_g | ● | int | 소비자가 |
| islimit | ● | int | 0:자율판매가, 1:판매가격준수 |
| delivery_type | ● | int | 0:기본배송, 1:무료배송, 2:착불배송, 3:수량별배송 |
| delivery_amount | ● | int | 배송비 |
| r_delivery_amount | ● | int | 반품배송비 (편도) |
| isreturn | ● | int | 0:반품불가, 1:반품가능 |
| is_overseas | ● | String | Y:해외직배송, 빈값:국내배송 |
| cert_type | ● | int | 0:인증대상아님, 1:인증대상, 2:상세설명에표기 |
| i_content | ● | String | 상품상세설명 (HTML) |
| images | ● | Array | 대표이미지 슬롯 URL 배열 (images[0] 필수, 400x400 이상). ※상품등록 단계에서는 대표이미지(images[0])가 반영됩니다. 추가이미지는 이 배열로 등록되지 않습니다. 추가이미지는 등록 후 [2.2 썸네일/이미지 수정 API]의 add_images로 등록하세요. (아래 슬롯 매핑표 참고) |
| vender_code | ● | String | 업체상품코드 |
| item_sale_type | ● | int | 0:일반, 1:VIP전용, 2:폐쇄몰전용, 3:파트너전용 |
images 배열은 상품의 대표이미지 슬롯 5개에 순서대로 매핑됩니다. 상세페이지 하단에 나열되는 추가이미지와는 다른 영역입니다.
| 배열 위치 | 매핑 슬롯 | 비고 |
|---|---|---|
| images[0] | 대표이미지 (photo_thum + photo_big) | 필수. 목록/상세에 노출되는 대표이미지 |
| images[1] | photo_middle | 상품수정 시 초기화될 수 있음 — 사용 비권장 |
| images[2] | photo_big | images[0] 값을 덮어씀 — 사용 비권장 |
| images[3] | img4 | 예비 슬롯 |
| images[4] | img5 | 예비 슬롯 |
images에는 대표이미지 1장만 전송하고("images": ["대표이미지URL"]),
추가이미지는 상품등록 완료 후 [2.2 썸네일/이미지 수정 API]의 add_images로 등록하세요.| 파라미터 | 타입 | 기본값 | 설명 |
|---|---|---|---|
| iname_del | String | 택배송장명 | |
| ibrand | String | 브랜드명 | |
| imodel | String | 모델명 | |
| amount_limit | int | 0 | 판매준수가 (islimit=1일때 필수) |
| delivery_qty | int | 0 | 묶음배송수량 (delivery_type=3일때 필수) |
| raid | int | 반품지 주소 ID (없으면 기본반품지 사용) | |
| cert | String | 인증코드 | |
| cert_no | String | 인증번호 | |
| notice | String | 상품공지 (HTML) | |
| gosi_code | String | 상품고시코드 | |
| gosi | Array | 상품고시정보 배열 |
| 파라미터 | 타입 | 설명 |
|---|---|---|
| options.op_t1 | String | 옵션명1 (예: 색상) |
| options.op_t2 | String | 옵션명2 (예: 사이즈) |
| options.items | Array | 옵션 항목 배열 |
| options.items[].op_n1 | String | 옵션값1 (예: 레드) |
| options.items[].op_n2 | String | 옵션값2 (예: L) |
| options.items[].op_cost | int | 옵션추가금액 (0이면 기본가) |
| options.items[].op_soldout | int | 0:판매중, 1:품절 |
요청 예시:
POST https://domesin.com/API/v11/item_register.php
Content-Type: application/json
{
"api_key": "YOUR_API_KEY",
"m_id": "supplier123",
"cid": 364,
"iname": "테스트 상품명",
"origin": "국내산",
"icompany": "제조사명",
"keyword": "키워드1, 키워드2, 키워드3, 키워드4, 키워드5",
"cost": 10000,
"tax": 0,
"adult": 0,
"status": 0,
"i_type": 0,
"amount_g": 15000,
"islimit": 0,
"delivery_type": 0,
"delivery_amount": 3000,
"r_delivery_amount": 3000,
"isreturn": 1,
"is_overseas": "",
"cert_type": 0,
"vender_code": "MY-PRODUCT-001",
"item_sale_type": 0,
"images": [
"https://example.com/main.jpg"
],
"i_content": "<p>상품 상세설명 HTML</p>",
"options": {
"op_t1": "색상",
"op_t2": "",
"items": [
{"op_n1": "레드", "op_n2": "", "op_cost": 0, "op_soldout": 0},
{"op_n1": "블루", "op_n2": "", "op_cost": 0, "op_soldout": 0}
]
}
}
| 필드명 | 타입 | 설명 |
|---|---|---|
| code | String | 결과코드 (성공: 0000) |
| message | String | 결과 메시지 |
| iid | int | 등록된 상품 고유번호 |
| icode | String | 등록된 상품코드 (예: TS10000001) |
응답 예시:
{
"code": "0000",
"message": "상품이 정상적으로 등록되었습니다.",
"iid": 12345,
"icode": "TS10012345"
}
| 파라미터 | 필수 | 타입 | 설명 |
|---|---|---|---|
| api_key | ● | String | 도매의신에서 발급받은 공급사 API키 |
| m_id | ● | String | 도매의신 공급사 아이디 |
| icode | ● | String | 수정할 상품코드 (예: TS10000001) |
| iname | String | 상품명 (최대 100자) | |
| iname_del | String | 택배송장명 | |
| cid | int | 카테고리 코드 (최하위 카테고리) | |
| origin | String | 원산지 (예: 국내산, 해외|아시아|중국) | |
| icompany | String | 제조사 | |
| ibrand | String | 브랜드명 | |
| imodel | String | 모델명 | |
| keyword | String | 검색 키워드 (콤마로 구분, 5개 이상) | |
| cost | int | 공급가 (VAT포함) | |
| amount_g | int | 소비자가 | |
| tax | int | 0:과세, 1:면세 | |
| adult | int | 0:일반상품, 1:성인전용 | |
| islimit | int | 0:자율판매가, 1:판매가격준수 | |
| amount_limit | int | 판매준수가 (islimit=1일때) | |
| i_content | String | 상품상세설명 (HTML) | |
| notice | String | 상품개별공지 (HTML) | |
| gosi_code | String | 상품고시코드 | |
| gosi | Array | 상품고시정보 배열 | |
| cert_type | int | 0:인증대상아님, 1:인증대상, 2:상세설명에표기 | |
| cert | String | 인증코드 | |
| cert_no | String | 인증번호 | |
| vender_code | String | 업체상품코드 |
요청 예시:
POST https://domesin.com/API/v11/vender_item_edit.php
Content-Type: application/json
{
"api_key": "YOUR_API_KEY",
"m_id": "supplier123",
"icode": "TS10012345",
"iname": "수정된 상품명",
"cost": 12000,
"keyword": "새키워드1, 새키워드2, 새키워드3, 새키워드4, 새키워드5"
}
응답 예시:
{
"code": "0000",
"message": "상품 기본정보가 수정되었습니다.",
"icode": "TS10012345",
"updated_fields": ["iname", "cost", "keyword"]
}
| 파라미터 | 필수 | 타입 | 설명 |
|---|---|---|---|
| api_key | ● | String | 도매의신에서 발급받은 공급사 API키 |
| m_id | ● | String | 도매의신 공급사 아이디 |
| icode | ● | String | 수정할 상품코드 (iid로도 가능) |
| images | Array | 대표이미지 교체용 URL 배열. images[0]이 대표이미지로 반영됩니다. ※추가이미지는 이 배열로 등록되지 않습니다. 추가이미지는 아래 add_images를 사용하세요. | |
| images[0] | String | 대표이미지 URL (최소 400x400) | |
| add_images | Array | 추가이미지 등록용 URL 배열. 상세페이지 추가이미지로 등록됩니다. 여러 장을 한 번에 전송할 수 있습니다. | |
| delete_images | Array | 삭제할 추가이미지 ID(photo_id) 배열. photo_id는 본 API 응답의 add_images[].photo_id 값입니다. | |
| replace_all | int | images 적용 방식. 1: 대표이미지 교체, 0: 비어있는 슬롯에만 추가 (기본: 1) |
images 배열 사용 (images[0]만 대표이미지로 반영)add_images 배열 사용delete_images 배열에 추가이미지 ID(photo_id) 전달saved_count가 적다면 응답의 debug 항목에서 실패한 URL을 확인하세요.add_images 목록으로 즉시 확인할 수 있습니다. (원본 URL·썸네일 URL·photo_id)
요청 예시:
POST https://domesin.com/API/v11/vender_item_thumbnail.php
Content-Type: application/json
{
"api_key": "YOUR_API_KEY",
"m_id": "supplier123",
"icode": "TS10012345",
"images": [
"https://example.com/new_main.jpg"
],
"replace_all": 1,
"add_images": [
"https://example.com/extra1.jpg",
"https://example.com/extra2.jpg",
"https://example.com/extra3.jpg"
],
"delete_images": []
}
응답 예시:
{
"code": "0000",
"message": "이미지가 수정되었습니다.",
"iid": 12345,
"icode": "TS10012345",
"saved_count": 4,
"add_images": [
{
"photo_id": 1024,
"image": "https://domesin.com/data/shop/2/10012345_aB3xZ.jpg",
"thumbnail": "https://domesin.com/data/shop/2/10012345_aB3xZ_t.jpg"
},
{
"photo_id": 1025,
"image": "https://domesin.com/data/shop/2/10012345_kP9mQ.jpg",
"thumbnail": "https://domesin.com/data/shop/2/10012345_kP9mQ_t.jpg"
}
],
"debug": ["add_images saved: 10012345_aB3xZ.jpg"]
}
| 응답 필드 | 설명 |
|---|---|
| saved_count | 이번 요청에서 실제로 저장된 이미지 수 (대표 + 추가) |
| add_images | 요청 처리 후 현재 등록되어 있는 추가이미지 전체 목록 |
| add_images[].photo_id | 추가이미지 고유 ID. delete_images로 개별 삭제할 때 사용합니다. |
| add_images[].image | 등록된 원본 이미지 URL |
| add_images[].thumbnail | 자동 생성된 작은 썸네일(300x300) URL |
| debug | 처리 로그. 다운로드 실패 URL 확인용 |
추가이미지 삭제 예시:
POST https://domesin.com/API/v11/vender_item_thumbnail.php
Content-Type: application/json
{
"api_key": "YOUR_API_KEY",
"m_id": "supplier123",
"icode": "TS10012345",
"delete_images": [1024, 1025]
}
| 파라미터 | 필수 | 타입 | 설명 |
|---|---|---|---|
| api_key | ● | String | 도매의신에서 발급받은 공급사 API키 |
| m_id | ● | String | 도매의신 공급사 아이디 |
| icode | ● | String | 수정할 상품코드 (iid로도 가능) |
| action | String | 옵션 처리 방식 (기본값: update) • replace: 기존 옵션 전체 삭제 후 items로 재등록 • update: 개별 옵션 수정 (각 item에 oid 필수) • add: 옵션 추가 • delete: 옵션 삭제 (options.delete_oids 배열) | |
| options | ● | Object | 옵션 정보 |
| options.op_t1 | ● | String | 1차 옵션명 (예: 색상) — action=replace/add 시 필수 |
| options.op_t2 | String | 2차 옵션명 (예: 사이즈) | |
| options.items | ● | Array | 옵션 항목 배열 |
| options.delete_oids | Array | 삭제할 옵션 ID(oid) 배열 (action=delete 시 사용) |
| 파라미터 | 필수 | 타입 | 설명 |
|---|---|---|---|
| oid | int | 옵션 고유번호. action=update(개별수정) 시 필수 (상품조회로 확인). replace/add 시에는 불필요 | |
| op_n1 | ● | String | 1차 옵션값 (예: 레드) |
| op_n2 | String | 2차 옵션값 (예: L) | |
| op_cost | int | 옵션추가금액 (기본: 0, 범위: 공급가의 ±50%) | |
| op_soldout | int | 0: 판매중, 1: 품절 | |
| op_limit | int | 옵션별 판매준수가 |
"action": "replace"를 함께 전송해야 합니다.update(개별 수정)로 동작하며, 이 경우 각 item에 oid가 없으면
수정 대상을 찾지 못해 아무것도 반영되지 않습니다(응답 result_count=0).
요청 예시 ① 전체 교체 (action=replace):
POST https://domesin.com/API/v11/vender_item_option.php
Content-Type: application/json
{
"api_key": "YOUR_API_KEY",
"m_id": "supplier123",
"icode": "TS10012345",
"action": "replace",
"options": {
"op_t1": "색상",
"op_t2": "사이즈",
"items": [
{"op_n1": "레드", "op_n2": "S", "op_cost": 0, "op_soldout": 0},
{"op_n1": "레드", "op_n2": "M", "op_cost": 0, "op_soldout": 0},
{"op_n1": "레드", "op_n2": "L", "op_cost": 1000, "op_soldout": 0},
{"op_n1": "블루", "op_n2": "S", "op_cost": 0, "op_soldout": 1}
]
}
}
요청 예시 ② 개별 수정 (action=update, oid 필수):
POST https://domesin.com/API/v11/vender_item_option.php
Content-Type: application/json
{
"api_key": "YOUR_API_KEY",
"m_id": "supplier123",
"icode": "TS10012345",
"action": "update",
"options": {
"items": [
{"oid": 1001, "op_cost": 2000, "op_soldout": 0},
{"oid": 1002, "op_soldout": 1}
]
}
}
응답 예시:
{
"code": "0000",
"message": "옵션이 수정되었습니다.",
"iid": 12345,
"icode": "TS10012345",
"result_count": 4
}
| 파라미터 | 필수 | 타입 | 설명 |
|---|---|---|---|
| api_key | ● | String | 도매의신에서 발급받은 공급사 API키 |
| m_id | ● | String | 도매의신 공급사 아이디 |
| icode | ● | String | 수정할 상품코드 |
| status | ● | int | 판매상태 (0:판매중/재입고, 1:품절, 2:단종) |
요청 예시 (단건):
POST https://domesin.com/API/v11/vender_item_status.php
Content-Type: application/json
{
"api_key": "YOUR_API_KEY",
"m_id": "supplier123",
"icode": "TS10012345",
"status": 1
}
| 파라미터 | 필수 | 타입 | 설명 |
|---|---|---|---|
| api_key | ● | String | 도매의신에서 발급받은 공급사 API키 |
| m_id | ● | String | 도매의신 공급사 아이디 |
| items | ● | Array | 상품 상태 변경 배열 |
| items[].icode | ● | String | 상품코드 |
| items[].status | ● | int | 판매상태 |
요청 예시 (일괄):
POST https://domesin.com/API/v11/vender_item_status.php
Content-Type: application/json
{
"api_key": "YOUR_API_KEY",
"m_id": "supplier123",
"items": [
{"icode": "TS10000001", "status": 1},
{"icode": "TS10000002", "status": 0},
{"icode": "TS10000003", "status": 2}
]
}
응답 예시 (단건):
{
"code": "0000",
"message": "판매상태가 변경되었습니다.",
"icode": "TS10012345",
"status": 1,
"status_text": "품절"
}
응답 예시 (일괄):
{
"code": "0000",
"message": "일괄 상태변경 완료",
"success_count": 3,
"fail_count": 0,
"results": [
{"icode": "TS10000001", "status": 1, "result": "success"},
{"icode": "TS10000002", "status": 0, "result": "success"},
{"icode": "TS10000003", "status": 2, "result": "success"}
]
}
| 파라미터 | 필수 | 타입 | 설명 |
|---|---|---|---|
| api_key | ● | String | 도매의신에서 발급받은 공급사 API키 |
| m_id | ● | String | 도매의신 공급사 아이디 |
| icode | ● | String | 수정할 상품코드 |
| delivery_type | ● | int | 배송구분 (0:기본배송, 1:무료배송, 2:착불배송, 3:수량별배송) |
| delivery_amount | int | 배송비 (무료배송 제외시 필수) | |
| delivery_qty | int | 묶음배송수량 (수량별배송시 필수) | |
| r_delivery_amount | int | 반품배송비 (편도, 착불배송 제외시 필수) | |
| isreturn | int | 반품가능여부 (0:반품불가, 1:반품가능) | |
| is_overseas | String | 해외직배송여부 (Y:해외직배송, 빈값:국내배송) | |
| raid | int | 반품지 주소 ID |
요청 예시:
POST https://domesin.com/API/v11/vender_item_delivery.php
Content-Type: application/json
{
"api_key": "YOUR_API_KEY",
"m_id": "supplier123",
"icode": "TS10012345",
"delivery_type": 0,
"delivery_amount": 3500,
"r_delivery_amount": 3500,
"isreturn": 1
}
응답 예시:
{
"code": "0000",
"message": "배송설정이 수정되었습니다.",
"icode": "TS10012345",
"delivery_type": 0,
"delivery_amount": 3500,
"r_delivery_amount": 3500
}
action: list
| 파라미터 | 필수 | 타입 | 설명 |
|---|---|---|---|
| api_key | ● | String | 도매의신에서 발급받은 공급사 API키 |
| m_id | ● | String | 도매의신 공급사 아이디 |
| page | int | 페이지 번호 (기본: 1) | |
| rows | int | 페이지당 건수 (기본: 20, 최대: 100) | |
| status | String | 답변상태 (공백:전체, 1:미답변, 2:답변완료) | |
| start_date | date | 조회시작일 (YYYY-mm-dd, 기본: 1년전) | |
| end_date | date | 조회종료일 (YYYY-mm-dd, 기본: 오늘) |
요청 예시:
POST https://domesin.com/API/v11/vender_qna.php
Content-Type: application/json
{
"api_key": "YOUR_API_KEY",
"m_id": "supplier123",
"action": "list",
"status": "1",
"page": 1,
"rows": 20
}
응답 예시:
{
"code": "0000",
"message": "조회 성공",
"total_count": 25,
"page": 1,
"rows": 20,
"total_page": 2,
"list": [
{
"idx": 12345,
"icode": "TS10012345",
"iname": "테스트상품",
"m_id": "buyer123",
"q_title": "배송 관련 문의드립니다",
"q_content": "언제 발송 예정인가요?",
"q_datetime": "2025-05-24 14:30:00",
"status": 1,
"status_text": "미답변",
"a_content": "",
"a_datetime": ""
},
{
"idx": 12344,
"icode": "TS10012346",
"iname": "테스트상품2",
"m_id": "buyer456",
"q_title": "사이즈 문의",
"q_content": "L사이즈 재입고 예정이 있나요?",
"q_datetime": "2025-05-23 10:00:00",
"status": 2,
"status_text": "답변완료",
"a_content": "안녕하세요, 다음주 입고 예정입니다.",
"a_datetime": "2025-05-23 15:30:00"
}
]
}
action: answer
| 파라미터 | 필수 | 타입 | 설명 |
|---|---|---|---|
| api_key | ● | String | 도매의신에서 발급받은 공급사 API키 |
| m_id | ● | String | 도매의신 공급사 아이디 |
| idx | ● | int | 문의 고유번호 (목록조회의 idx) |
| a_content | ● | String | 답변 내용 |
요청 예시:
POST https://domesin.com/API/v11/vender_qna.php
Content-Type: application/json
{
"api_key": "YOUR_API_KEY",
"m_id": "supplier123",
"action": "answer",
"idx": 12345,
"a_content": "안녕하세요, 문의 주셔서 감사합니다. 해당 상품은 다음주 입고 예정입니다."
}
응답 예시:
{
"code": "0000",
"message": "답변이 등록되었습니다.",
"idx": 12345,
"a_datetime": "2025-05-25 10:30:00"
}
| 파라미터 | 필수 | 타입 | 설명 |
|---|---|---|---|
| api_key | ● | String | 도매의신에서 발급받은 공급사 API키 |
| m_id | ● | String | 도매의신 공급사 아이디 |
| page | int | 페이지 번호 (기본: 1) | |
| rows | int | 페이지당 건수 (기본: 50, 최대: 500) | |
| start_date | ● | date | 조회시작일 (YYYY-mm-dd) |
| end_date | date | 조회종료일 (YYYY-mm-dd, 기본: 오늘) | |
| o_status | int | 주문상태 (0:신규주문, 1:발송대기, 2:발송완료, 3:배송완료, 4:취소/반품) | |
| search_type | String | 검색유형 (order_code, icode, d_name, d_hp) | |
| search_keyword | String | 검색어 |
요청 예시:
POST https://data.domesin.com/API/v11/vender_order_list.php
Content-Type: application/json
{
"api_key": "YOUR_API_KEY",
"m_id": "supplier123",
"page": 1,
"rows": 50,
"start_date": "2025-05-01",
"end_date": "2025-05-25",
"o_status": 1
}
| 필드명 | 타입 | 설명 |
|---|---|---|
| code | String | 결과코드 (성공: 0000) |
| total_count | int | 전체 주문수 |
| total_page | int | 전체 페이지수 |
| current_page | int | 현재 페이지 |
| orders 배열 | ||
| order_list_code | int | 주문상품 개별원장번호 |
| order_code | String | 주문코드 |
| icode | String | 상품코드 |
| iname | String | 상품명 |
| option_name | String | 선택옵션명 |
| qty | int | 주문수량 |
| item_amount | int | 상품금액 |
| o_status | int | 주문상태 |
| o_status_name | String | 주문상태명 |
| d_name | String | 수취인명 |
| d_hp | String | 수취인 연락처 |
| d_zip | String | 우편번호 |
| d_addr | String | 배송주소 |
| d_memo | String | 배송메모 |
| delivery_idx | int | 택배사 코드 |
| delivery_code | String | 송장번호 |
| r_datetime | datetime | 주문일시 |
| cancel_status | int | 취소상태 (0:정상, 1:취소요청, 2:취소완료, 3:취소거부) |
응답 예시:
{
"code": "0000",
"message": "조회 성공",
"total_count": 85,
"total_page": 2,
"current_page": 1,
"orders": [
{
"order_list_code": 98765,
"order_code": "ORD20250525001234",
"icode": "TS10012345",
"iname": "테스트상품",
"option_name": "색상: 레드 / 사이즈: L",
"qty": 2,
"item_amount": 20000,
"o_status": 1,
"o_status_name": "발송대기",
"d_name": "홍길동",
"d_hp": "010-1234-5678",
"d_zip": "12345",
"d_addr": "경기도 부천시 원미구 123번지 도매아파트 101동 101호",
"d_memo": "부재시 경비실에 맡겨주세요",
"delivery_idx": 0,
"delivery_code": "",
"r_datetime": "2025-05-25 09:30:00",
"cancel_status": 0
},
{
"order_list_code": 98764,
"order_code": "ORD20250524001233",
"icode": "TS10012346",
"iname": "테스트상품2",
"option_name": "",
"qty": 1,
"item_amount": 15000,
"o_status": 2,
"o_status_name": "발송완료",
"d_name": "김철수",
"d_hp": "010-9876-5432",
"d_zip": "06123",
"d_addr": "서울시 강남구 테헤란로 456번지",
"d_memo": "",
"delivery_idx": 1,
"delivery_code": "123456789012",
"r_datetime": "2025-05-24 14:00:00",
"cancel_status": 0
}
]
}
| 파라미터 | 필수 | 타입 | 설명 |
|---|---|---|---|
| api_key | ● | String | 도매의신에서 발급받은 공급사 API키 |
| m_id | ● | String | 도매의신 공급사 아이디 |
| order_list_code | ● | int | 주문상품 개별원장번호 |
| delivery_idx | ● | int | 택배사 코드 |
| delivery_code | ● | String | 송장번호 |
요청 예시:
POST https://domesin.com/API/v11/vender_invoice.php
Content-Type: application/json
{
"api_key": "YOUR_API_KEY",
"m_id": "supplier123",
"order_list_code": 98765,
"delivery_idx": 1,
"delivery_code": "123456789012"
}
응답 예시:
{
"code": "0000",
"message": "송장이 등록되었습니다.",
"order_list_code": 98765,
"delivery_idx": 1,
"delivery_code": "123456789012",
"o_status": 2,
"o_status_name": "발송완료"
}
| 파라미터 | 필수 | 타입 | 설명 |
|---|---|---|---|
| api_key | ● | String | 도매의신에서 발급받은 공급사 API키 |
| m_id | ● | String | 도매의신 공급사 아이디 |
| invoices | ● | Array | 송장 정보 배열 |
| invoices[].order_list_code | ● | int | 주문상품 개별원장번호 |
| invoices[].delivery_idx | ● | int | 택배사 코드 |
| invoices[].delivery_code | ● | String | 송장번호 |
요청 예시:
POST https://domesin.com/API/v11/vender_invoice.php
Content-Type: application/json
{
"api_key": "YOUR_API_KEY",
"m_id": "supplier123",
"invoices": [
{"order_list_code": 12345, "delivery_idx": 1, "delivery_code": "123456789012"},
{"order_list_code": 12346, "delivery_idx": 4, "delivery_code": "987654321098"}
]
}
응답 예시:
{
"code": "0000",
"message": "일괄 송장등록 완료",
"success_count": 2,
"fail_count": 0,
"results": [
{
"order_list_code": 12345,
"result": "success",
"delivery_code": "123456789012"
},
{
"order_list_code": 12346,
"result": "success",
"delivery_code": "987654321098"
}
]
}
| 코드 | 택배사명 | 코드 | 택배사명 |
|---|---|---|---|
| 1 | CJ대한통운 | 2 | 롯데택배 |
| 3 | 우체국택배 | 4 | 한진택배 |
| 5 | 로젠택배 | 6 | 경동택배 |
| 7 | 대신택배 | 8 | 일양로지스 |
| 9 | 합동택배 | 10 | 홈픽택배 |
| 11 | 쿠팡로켓배송 | 12 | GS편의점택배 |
| 13 | CU편의점택배 | 14 | GSMNtoN |
| 99 | 기타 |
| 파라미터 | 필수 | 타입 | 설명 |
|---|---|---|---|
| api_key | ● | String | 도매의신에서 발급받은 공급사 API키 |
| m_id | ● | String | 도매의신 공급사 아이디 |
| order_code | ● | String | 주문코드 (주문목록 조회의 order_code) |
| o_status | ● | int | 변경할 주문상태 (0 또는 1만 가능) |
요청 예시:
POST https://domesin.com/API/v11/vender_order_status.php
Content-Type: application/json
{
"api_key": "YOUR_API_KEY",
"m_id": "supplier123",
"order_code": "ORD20250525001234",
"o_status": 1
}
응답 예시:
{
"code": "0000",
"message": "주문상태가 변경되었습니다.",
"order_code": "ORD20250525001234",
"o_status": 1,
"o_status_name": "배송준비중"
}
| 코드 | 상태명 | 설명 |
|---|---|---|
| 0 | 신규주문 | 결제 완료 후 초기 상태 (배송준비중 → 신규주문 변경시 사용) |
| 1 | 배송준비중 | 주문확인 (신규주문 → 배송준비중 변경시 사용) |
action: list
| 파라미터 | 필수 | 타입 | 설명 |
|---|---|---|---|
| api_key | ● | String | 도매의신에서 발급받은 공급사 API키 |
| m_id | ● | String | 도매의신 공급사 아이디 |
| action | ● | String | "list" 고정 |
| start_date | String | 조회 시작일 (YYYY-MM-DD, 기본: 1개월전) | |
| end_date | String | 조회 종료일 (YYYY-MM-DD, 기본: 오늘) | |
| cancel_status | String | 취소상태 (1:취소요청, 2:취소승인, 0:전체, 기본:1) | |
| page | int | 페이지 (기본: 1) | |
| rows | int | 조회개수 (기본: 20, 최대: 100) |
요청 예시:
POST https://domesin.com/API/v11/vender_cancel.php
Content-Type: application/json
{
"api_key": "YOUR_API_KEY",
"m_id": "supplier123",
"action": "list",
"cancel_status": "1",
"page": 1,
"rows": 20
}
응답 예시:
{
"code": "0000",
"message": "조회 성공",
"total_count": 5,
"page": 1,
"rows": 20,
"total_page": 1,
"list": [
{
"order_code": "ORD20250525001234",
"order_list_code": 98765,
"icode": "TS10012345",
"iname": "테스트상품",
"option_name": "색상: 레드",
"qty": 2,
"item_amount": 20000,
"cancel_status": 1,
"cancel_status_text": "취소요청",
"cancel_reason": "단순변심",
"cancel_datetime": "2025-05-25 10:00:00",
"d_name": "홍길동"
}
]
}
action: approve 또는 reject
| 파라미터 | 필수 | 타입 | 설명 |
|---|---|---|---|
| api_key | ● | String | 도매의신에서 발급받은 공급사 API키 |
| m_id | ● | String | 도매의신 공급사 아이디 |
| order_code | ● | String | 주문코드 (목록조회의 order_code) |
| action | ● | String | 처리유형 (approve:취소승인, reject:취소거부) |
| cancel_reason | △ | String | 취소사유 (action=approve일때 필수) |
| delivery_idx | △ | int | 택배사코드 (action=reject일때 필수) |
| delivery_code | △ | String | 송장번호 (action=reject일때 필수) |
요청 예시 (취소승인):
POST https://domesin.com/API/v11/vender_cancel.php
Content-Type: application/json
{
"api_key": "YOUR_API_KEY",
"m_id": "supplier123",
"order_code": "ORD20250525001234",
"action": "approve",
"cancel_reason": "고객 요청에 의한 취소"
}
요청 예시 (취소거부):
POST https://domesin.com/API/v11/vender_cancel.php
Content-Type: application/json
{
"api_key": "YOUR_API_KEY",
"m_id": "supplier123",
"order_code": "ORD20250525001234",
"action": "reject",
"delivery_idx": 1,
"delivery_code": "123456789012"
}
응답 예시 (취소승인):
{
"code": "0000",
"message": "취소가 승인되었습니다.",
"order_code": "ORD20250525001234",
"cancel_status": 2,
"cancel_status_text": "취소완료"
}
응답 예시 (취소거부):
{
"code": "0000",
"message": "취소가 거부되었습니다. 송장이 등록되었습니다.",
"order_code": "ORD20250525001234",
"cancel_status": 3,
"cancel_status_text": "취소불가",
"delivery_idx": 1,
"delivery_code": "123456789012"
}
action: list
| 파라미터 | 필수 | 타입 | 설명 |
|---|---|---|---|
| api_key | ● | String | 도매의신에서 발급받은 공급사 API키 |
| m_id | ● | String | 도매의신 공급사 아이디 |
| action | ● | String | "list" 고정 |
| start_date | String | 조회 시작일 (YYYY-MM-DD, 기본: 1개월전) | |
| end_date | String | 조회 종료일 (YYYY-MM-DD, 기본: 오늘) | |
| return_status | String | 반품상태 (1:반품요청, 2:회수진행, 3:반품승인, 4:반품불가, 공백:1+2) | |
| page | int | 페이지 (기본: 1) | |
| rows | int | 조회개수 (기본: 20, 최대: 100) |
요청 예시:
POST https://domesin.com/API/v11/vender_return.php
Content-Type: application/json
{
"api_key": "YOUR_API_KEY",
"m_id": "supplier123",
"action": "list",
"return_status": "1",
"page": 1,
"rows": 20
}
응답 예시:
{
"code": "0000",
"message": "조회 성공",
"total_count": 3,
"page": 1,
"rows": 20,
"total_page": 1,
"list": [
{
"order_code": "ORD20250520001230",
"order_list_code": 98760,
"icode": "TS10012340",
"iname": "테스트상품",
"option_name": "색상: 블루",
"qty": 1,
"item_amount": 15000,
"return_status": 1,
"return_status_text": "반품요청",
"return_reason": "상품 불량",
"return_datetime": "2025-05-22 14:00:00",
"d_name": "김철수"
}
]
}
action: collecting, approve 또는 reject
| 파라미터 | 필수 | 타입 | 설명 |
|---|---|---|---|
| api_key | ● | String | 도매의신에서 발급받은 공급사 API키 |
| m_id | ● | String | 도매의신 공급사 아이디 |
| order_code | ● | String | 주문코드 (목록조회의 order_code) |
| action | ● | String | 처리유형 (collecting:회수진행, approve:반품승인, reject:반품거부) |
| reason | △ | String | 처리사유 (action=reject일때 필수) |
요청 예시 (회수진행):
POST https://domesin.com/API/v11/vender_return.php
Content-Type: application/json
{
"api_key": "YOUR_API_KEY",
"m_id": "supplier123",
"order_code": "ORD20250520001230",
"action": "collecting"
}
요청 예시 (반품승인):
POST https://domesin.com/API/v11/vender_return.php
Content-Type: application/json
{
"api_key": "YOUR_API_KEY",
"m_id": "supplier123",
"order_code": "ORD20250520001230",
"action": "approve"
}
요청 예시 (반품거부):
POST https://domesin.com/API/v11/vender_return.php
Content-Type: application/json
{
"api_key": "YOUR_API_KEY",
"m_id": "supplier123",
"order_code": "ORD20250520001230",
"action": "reject",
"reason": "상품 사용 흔적으로 인해 반품이 불가합니다."
}
응답 예시 (회수진행):
{
"code": "0000",
"message": "회수진행 상태로 변경되었습니다.",
"order_code": "ORD20250520001230",
"return_status": 2,
"return_status_text": "회수진행중"
}
응답 예시 (반품승인):
{
"code": "0000",
"message": "반품이 승인되었습니다.",
"order_code": "ORD20250520001230",
"return_status": 3,
"return_status_text": "반품승인"
}
응답 예시 (반품거부):
{
"code": "0000",
"message": "반품이 거부되었습니다.",
"order_code": "ORD20250520001230",
"return_status": 4,
"return_status_text": "반품불가",
"reason": "상품 사용 흔적으로 인해 반품이 불가합니다."
}
| 코드 | 상태명 | 설명 |
|---|---|---|
| 0 | 정상 | 취소 관련 없음 |
| 1 | 취소요청 | 고객이 취소 요청 |
| 2 | 취소완료 | 취소 승인됨 |
| 3 | 취소불가 | 공급사가 취소 거부 |
| 4 | 취소철회 | 고객이 취소 요청 철회 |
| 코드 | 상태명 | 설명 |
|---|---|---|
| 0 | 정상 | 반품 관련 없음 |
| 1 | 반품요청 | 고객이 반품 요청 |
| 2 | 회수진행중 | 반품 상품 회수 진행중 |
| 3 | 반품승인 | 반품 승인 및 환불 완료 |
| 4 | 반품불가 | 공급사가 반품 거부 |
| 5 | 반품철회 | 고객이 반품 요청 철회 |
| 코드 | 설명 |
|---|---|
| 0000 | 성공 |
| 10 | API키 에러 |
| 11 | 회원아이디 에러 |
| 16 | API 사용 권한 에러 (공급사 권한 필요) |
| 30 | 상품등록 가능 수량 초과 |
| 31 | 카테고리(cid) 미입력 |
| 32 | 유효하지 않은 카테고리 |
| 33 | 상품명(iname) 미입력 |
| 34 | 상품명 100자 초과 |
| 35 | 원산지(origin) 미입력 |
| 36 | 제조사(icompany) 미입력 |
| 37 | 키워드 5개 미만 |
| 38 | 공급가(cost) 미입력 |
| 39~43 | 배송정보 관련 에러 |
| 44 | 대표이미지 미등록 |
| 45 | 과세여부(tax) 미입력 |
| 46 | 성인상품여부(adult) 미입력 |
| 47 | 판매상태(status) 미입력 |
| 48 | 상품구분(i_type) 미입력 |
| 49 | 소비자가(amount_g) 미입력 |
| 50 | DB 등록 실패 |
| 51 | 가격준수여부(islimit) 미입력 |
| 52 | 배송정책(delivery_type) 미입력 |
| 53 | 배송비(delivery_amount) 미입력 |
| 54 | 반품배송비(r_delivery_amount) 미입력 |
| 55 | 반품가능여부(isreturn) 미입력 |
| 56 | 해외직배송여부(is_overseas) 미입력 |
| 57 | 인증타입(cert_type) 미입력 |
| 58 | 상품상세설명(i_content) 미입력 |
| 59 | 판매타입(item_sale_type) 미입력 |
| 60 | 업체상품코드(vender_code) 미입력 |
| 상품수정 관련 | |
| 61 | 상품코드(icode) 미입력 |
| 62 | 상품을 찾을 수 없음 |
| 63 | 수정 권한이 없음 (본인 상품만 수정 가능) |
| 64 | 옵션추가금액이 공급가의 ±50% 초과 |
| 65 | 기본판매가 옵션 없음 (op_cost=0 필요) |
| 66 | 중복된 옵션항목 존재 |
| 67 | 이미지 최소 크기 미달 (400x400 이상) |
| 주문/송장 관련 | |
| 70 | 주문을 찾을 수 없음 |
| 71 | 주문 조회 권한 없음 |
| 72 | 발송대기 상태가 아니어서 송장 등록 불가 |
| 73 | 취소요청 중인 주문은 송장 등록 불가 |
| 74 | 택배사 코드 에러 |
| 75 | 송장번호 미입력 |
| 76 | 주문상태 변경 불가 |
| 77 | 이미 취소된 주문 |
| 78 | 취소요청 상태가 아님 |
| 문의관리 관련 | |
| 80 | 문의를 찾을 수 없음 |
| 81 | 답변 권한 없음 |
| 82 | 답변 내용 미입력 |
<?php
$url = "https://domesin.com/API/v11/item_register.php";
$data = [
"api_key" => "도매의신 API KEY",
"m_id" => "도매의신 공급사아이디",
"cid" => 364, // 카테고리 코드
"iname" => "테스트 상품명",
"origin" => "국내산",
"icompany" => "제조사명",
"keyword" => "키워드1, 키워드2, 키워드3, 키워드4, 키워드5",
"cost" => 10000, // 공급가
"tax" => 0, // 과세
"adult" => 0, // 일반상품
"status" => 0, // 판매중
"i_type" => 0, // 새제품
"amount_g" => 15000, // 소비자가
"islimit" => 0, // 자율판매가
"delivery_type" => 0, // 기본배송
"delivery_amount" => 3000, // 배송비
"r_delivery_amount" => 3000, // 반품배송비
"isreturn" => 1, // 반품가능
"is_overseas" => "", // 국내배송
"cert_type" => 0, // 인증대상아님
"vender_code" => "MY-PRODUCT-001", // 업체상품코드
"item_sale_type" => 0, // 일반상품
"images" => [
"https://example.com/main.jpg" // 대표이미지 1장만. 추가이미지는 등록 후 vender_item_thumbnail.php 의 add_images 로 등록
],
"i_content" => "<p>상품 상세설명 HTML</p>",
"options" => [
"op_t1" => "색상",
"op_t2" => "",
"items" => [
["op_n1" => "레드", "op_n2" => "", "op_cost" => 0, "op_soldout" => 0],
["op_n1" => "블루", "op_n2" => "", "op_cost" => 0, "op_soldout" => 0]
]
]
];
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, ['Content-Type: application/json']);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));
$response = curl_exec($ch);
curl_close($ch);
$result = json_decode($response, true);
if ($result['code'] == '0000') {
echo "등록 성공! 상품코드: " . $result['icode'];
} else {
echo "등록 실패: " . $result['message'];
}
?>
상품등록 후 상세페이지 추가이미지를 등록합니다. 여러 장을 한 번에 전송하면 되며, 작은 썸네일은 서버가 자동 생성합니다.
<?php
$url = "https://domesin.com/API/v11/vender_item_thumbnail.php";
$data = [
"api_key" => "YOUR_API_KEY",
"m_id" => "supplier123",
"icode" => "TS10012345", // 상품등록 응답으로 받은 상품코드
"add_images" => [
"https://example.com/extra1.jpg",
"https://example.com/extra2.jpg",
"https://example.com/extra3.jpg"
]
];
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, ['Content-Type: application/json']);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));
$response = curl_exec($ch);
curl_close($ch);
$result = json_decode($response, true);
if ($result['code'] == '0000') {
echo "저장된 이미지 수: " . $result['saved_count'] . "\n";
// 등록 결과 확인 (원본 / 자동생성된 썸네일 / 삭제용 photo_id)
foreach ($result['add_images'] as $img) {
echo "photo_id : " . $img['photo_id'] . "\n";
echo "원본 : " . $img['image'] . "\n";
echo "썸네일 : " . $img['thumbnail'] . "\n";
}
// 요청 장수보다 saved_count 가 적으면 실패한 URL 확인
if ($result['saved_count'] < count($data['add_images'])) {
print_r($result['debug']);
}
} else {
echo "실패: " . $result['message'];
}
?>
<?php
$url = "https://domesin.com/API/v11/item_status_batch_update.php";
$data = [
"api_key" => "도매의신 API KEY",
"m_id" => "도매의신 공급사아이디",
"items" => [
["icode" => "TS10000001", "status" => 1], // 품절
["icode" => "TS10000002", "status" => 0], // 재입고
["icode" => "TS10000003", "status" => 2] // 단종
]
];
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, ['Content-Type: application/json']);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));
$response = curl_exec($ch);
curl_close($ch);
$result = json_decode($response, true);
print_r($result);
?>
<?php
$url = "https://data.domesin.com/API/v11/vender_order_list.php";
$data = [
"api_key" => "도매의신 API KEY",
"m_id" => "도매의신 공급사아이디",
"page" => 1,
"rows" => 50,
"start_date" => "2025-05-01",
"end_date" => "2025-05-08",
"o_status" => 1 // 발송대기 주문만
];
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, ['Content-Type: application/json']);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));
$response = curl_exec($ch);
curl_close($ch);
$result = json_decode($response, true);
if ($result['code'] == '0000') {
foreach ($result['orders'] as $order) {
echo "주문번호: " . $order['order_code'] . "\n";
echo "상품: " . $order['iname'] . "\n";
echo "수취인: " . $order['d_name'] . "\n";
echo "---\n";
}
}
?>
<?php
$url = "https://domesin.com/API/v11/vender_invoice_batch_update.php";
$data = [
"api_key" => "도매의신 API KEY",
"m_id" => "도매의신 공급사아이디",
"invoices" => [
[
"order_list_code" => 12345,
"delivery_idx" => 1, // CJ대한통운
"delivery_code" => "123456789012"
],
[
"order_list_code" => 12346,
"delivery_idx" => 4, // 한진택배
"delivery_code" => "987654321098"
]
]
];
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, ['Content-Type: application/json']);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));
$response = curl_exec($ch);
curl_close($ch);
$result = json_decode($response, true);
if ($result['code'] == '0000') {
echo "성공: " . $result['success_count'] . "건\n";
echo "실패: " . $result['fail_count'] . "건\n";
}
?>
<?php
// 취소 승인
$url = "https://domesin.com/API/v11/vender_cancel_process.php";
$data = [
"api_key" => "도매의신 API KEY",
"m_id" => "도매의신 공급사아이디",
"order_list_code" => 12345,
"action" => "approve" // 취소 승인
];
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, ['Content-Type: application/json']);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));
$response = curl_exec($ch);
curl_close($ch);
$result = json_decode($response, true);
print_r($result);
// 취소 거부
$data2 = [
"api_key" => "도매의신 API KEY",
"m_id" => "도매의신 공급사아이디",
"order_list_code" => 12346,
"action" => "reject",
"reject_reason" => "이미 상품이 출고되어 취소가 불가합니다."
];
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data2));
$response2 = curl_exec($ch);
curl_close($ch);
?>
