구매자 결과 화면에는 GET /v1/orders/:order_number/result를 사용해요. 결제 성공은 리다이렉트 쿼리가 아니라 서버에 저장된 상태로 판단해요. 이 API는 자기 주문만 조회하며 결제·배송 상태와 금액·상품을 돌려줘요. 전체 계약은 주문 API를 확인해요.
구매자 결과 조회
회원은 Bootpay-User-JWT 또는 secretKey로 인증한 쇼핑몰 서버의 user_id를 보내요. 비회원은 주문 준비의 견적 방식 비URL 응답에서 받은 result_token을 Bootpay-Order-Result-Token 헤더로 보내고, 주문 준비 때와 같은 Bootpay-Device-UUID도 보내요. 주문번호나 기기 UUID만으로는 비회원 결과를 볼 수 없어요.
{
"order_number": "2609231234567890",
"payment_status": "paid",
"fulfillment_status": "preparing",
"amounts": {
"currency": "KRW",
"product_price": 29000,
"delivery_price": 3000,
"total_price": 32000,
"paid_price": 32000,
"refunded_price": 0
},
"items": [
{ "product_id": "66f0...", "product_option_id": "66f0...", "name": "기본 티셔츠 블랙-L", "quantity": 1 }
],
"updated_at": "2026-09-23T03:01:12Z"
}jsonpayment_status는 pending, paid, partially_refunded, refunded, failed, cancelled 중 하나예요. pending이면 응답의 Retry-After(가상계좌 입금 대기 60초, 그 외 3초) 뒤에 다시 조회해요. 비회원 토큰은 24시간 유효하고, 만료되면 ORDER_RESULT_TOKEN_EXPIRED예요. 이 응답에는 구매자 개인정보와 영수증 원문이 없어요.
기존 결과 화면 API
GET /v1/order/result/:order_number는 API·SDK 주문이면 payload, extra, sdk, use_redirect, redirect_url 객체를 돌려줘요. 쇼핑몰 화면에서 만든 주문이면 암호화된 JSON 문자열이 올 수 있어요. GET /v1/order/result/subscription?oid=ORDER_NUMBER는 구독 주문서의 결과 분기예요. 두 API 모두 인증한 프로젝트의 주문만 조회하고, 구독 결과에는 Bootpay-User-JWT 또는 secretKey 인증의 user_id로 회원을 지정해야 해요. 세부 규칙은 주문 처리 API를 확인해요.
가맹점 서버가 금액·상태·영수증을 검증할 때는 주문 상세 GET /v1/orders/:order_number를 사용해요.