마켓플레이스

등록 상태 조회

웹훅을 놓쳐도 같은 값으로 다시 맞춘다.

하위 가맹점 한 곳의 PG 가맹 신청서를 최신순으로 읽는다. 각 항목의 값은 리셀러 웹훅 의 data 와 같은 이름이라, 웹훅을 놓쳤거나 순서가 뒤바뀌었을 때 이 API 로 최신 상태를 다시 맞춘다.

핵심 요약

  • 그 가맹점의 신청서를 전부 보여 준다. 리셀러가 발급한 등록 폼으로 낸 신청(channel=hosted)뿐 아니라 판매자가 부트페이 콘솔에서 직접 낸 신청(console)도 나온다.
  • 최신순 20건까지. onboarding_id 를 주면 그 1건만 온다.
  • 신청이 없으면 {"list": []} 로 200 이다.
  • 본사 담당자의 메모·연락 기록·제출 서류·담당자 연락처는 내려 주지 않는다.

API 정보

GEThttps://api.bootpay.co.kr/v2/reseller/seller/:provider_id/onboardingBasic Auth (리셀러 계정 키)

요청 파라미터

파라미터 타입 필수 설명
provider_id String 필수 하위 가맹점의 provider_id (URL 경로)
onboarding_id String 선택 신청서 하나만 볼 때 (쿼리)

코드 예제

import fetch from 'node-fetch'

const RESELLER_AUTH = 'Basic ' + Buffer
  .from(`${process.env.BOOTPAY_RESELLER_CLIENT_KEY}:${process.env.BOOTPAY_RESELLER_SECRET_KEY}`)
  .toString('base64')

const providerId = '65a1c0aa8f1b5b00367a0001'
const res = await fetch(`https://api.bootpay.co.kr/v2/reseller/seller/${providerId}/onboarding`, {
    headers: { 'Authorization': RESELLER_AUTH }
})
const { list } = await res.json()
console.log(list[0]?.stage, list[0]?.stage_owner)javascript

응답

{
  "list": [
    {
      "provider_id":        "65a1c0aa8f1b5b00367a0001",
      "onboarding_id":      "6718a0aa8f1b5b00367a0101",
      "kind":               "pg_join",
      "status":             1,
      "status_name":        "구비서류 전달 필요",
      "stage":              "doc_wait",
      "stage_owner":        "merchant",
      "due_at":             "2026-10-30T18:00:00+09:00",
      "reject_reason":      null,
      "pg_wait_id":         "6718a0aa8f1b5b00367a0101",
      "pg":                 "nicepay",
      "overdue":            false,
      "required_documents": ["doc"],
      "channel":            "hosted",
      "c_at":               "2026-10-27T10:00:00+09:00",
      "u_at":               "2026-10-27T11:20:00+09:00"
    }
  ]
}json

응답 파라미터

파라미터 타입 설명
list Array 신청서 목록(최신순, 최대 20건)
list[].provider_id String 하위 가맹점 provider_id
list[].onboarding_id String 신청서 식별자. mode=edit 세션의 pg_wait_id 로 쓴다
list[].pg_wait_id String onboarding_id 와 같은 값
list[].kind String pg_join
list[].status Number 신청 상태 번호
list[].status_name String 신청 상태 이름
list[].stage String 단계 — 아래 단계 표
list[].stage_owner String 지금 할 차례: ours 부트페이 · merchant 판매자 · pg PG사 · 끝난 단계는 null
list[].due_at String 이 단계의 기한(ISO 8601). 기한이 없는 단계는 null
list[].overdue Boolean 기한이 지났는지
list[].required_documents Array 서류 대기 단계일 때의 대기 사유 코드(doc 서류 · esign 전자계약 · fee 가맹비 · insurance 보증보험 · service_fix 서비스 보완 · review_fix PG 심사 보완 · card_fix 카드사 보완). 그 밖의 단계는 []
list[].reject_reason String 반려 사유(반려일 때만, 그 밖은 null)
list[].pg String 신청한 PG 별칭. 아직 정해지지 않았으면 null
list[].channel String 접수 입구: hosted 리셀러 등록 폼 · console 부트페이 콘솔 · api 리셀러 API
list[].c_at · u_at String 접수·마지막 변경 시각(ISO 8601)

단계 표

stage 뜻 (status) stage_owner
intake 접수됨 — 부트페이가 확인 중 (0 미확인) ours
doc_wait 판매자의 서류·정보 보완을 기다림 (1 구비서류 전달 필요 · 3 미비사항 전달 필요 · 4 구비서류 원본 등기 필요) merchant
doc_review 부트페이가 서류 검토 중 (2 구비서류 확인중) ours
pg_submit PG사에 접수함 (10 PG사 접수) pg
pg_review PG사 심사 중 (11 PG사 접수 확인 · 5 PG사 심사 진행중 · 7 진행중) pg
done 신청 완료 (6 신청완료) merchant
closed 끝남 (8 심사반려 · 9 신청 철회) null

doc_wait 이면 판매자에게 보완을 안내한다. 고친 신청서는 같은 onboarding_id 로 mode=edit 세션을 발급 해 다시 내게 한다.

에러 코드

코드 메시지 대처 방법
API_ONLY_RESELLER (601) 리셀러만 이용이 가능한 API 다 리셀러 권한 계정 키로 호출한다
RESELLER_SUSPENDED (343) 본사가 리셀러 사용을 멈췄다 (HTTP 403) 부트페이에 문의한다
PROVIDER_NOT_FOUND (300) 본인 하위 가맹점이 아니다 (HTTP 404) provider_id 가 본인 하위 가맹점인지 확인한다
PG_WAIT_NOT_FOUND (11000) 그 가맹점의 신청서가 아니다 (HTTP 404) onboarding_id 를 목록에서 다시 확인한다

함께 보기