본문으로 건너뛰기

PSN 미완료 및 소모(Consume) 처리 누락된 리스트 조회

기본 정보​

  1. 구매 검증(verify)은 성공했지만 완료 처리(complete)되지 않아(VERIFY_SUCCESS 상태) 재처리가 필요한 구매 리스트를 조회하는 API입니다.
  2. 아이템 미지급·미소모 구매 건 복구에 사용합니다. 게임서버의 재처리가 필요합니다.
    1. 조회된 boid에 대해 완료 처리(complete)를 재시도한 후 아이템을 지급하세요.
항목내용비고
호출주체게임서버(s2s API)
도메인각 환경별 도메인
인증 방식HTTP 헤더 인증 정보
HTTP 메소드POST
Content-Typeapplication/x-www-form-urlencoded

Request​

HTTP Request end point​

POST https://각 환경별 빌링시스템 도메인/billing/api-game/v1/purchase/psn/retry/list

HTTP Request Header​

  • 아래의 HTTP Header들을 API 요청에 포함시켜야합니다.
이름값비고
X-Req-Pjid프로젝트ID기술 PM 등에게 전달받은 프로젝트ID
X-Auth-Access-Key인증용 키기술 PM 등에게 전달받은 해당 게임용 인증 키

HTTP Request Parameter​

  • 아래 파라미터들을 Content-Type: application/x-www-form-urlencoded 으로 호출하면 됩니다.
keytyperequired설명
pjidStringY프로젝트ID
playerIdStringY대상 유저 ID
maxLimitintegerY최대 조회 건수(1~5)

Response​

  • resultData.retryAbleList : 재처리 대상 배열(대상 없으면 빈 배열)

Response property​

keydata typedescription
boidString빌링 주문ID
playerIdString유저 ID
payment / appStoreStringPSN
productIdString상품ID
purchaseStatusStringVERIFY_SUCCESS
totalPrice / totalMicroPricenumber구매 금액 / micro 단위 금액
currencyString통화코드
completedAt / completedAtUnixTSString / number검증 완료 시각 / unix timestamp

Success sample​

{
"resultCode": "SUCCESS",
"resultMessage": "success",
"resultData": { "retryAbleList": [ { "boid": "...", "purchaseStatus": "VERIFY_SUCCESS" } ] }
}

실패 응답​

  • 비즈니스 실패도 HTTP 200으로 응답됩니다. HTTP status가 아닌 resultCode로 분기하세요. SYSTEM_ERROR(500)·NOT_ALLOW_AUTH(인증 헤더 오류)는 전 API 공통.
resultCodeHTTP발생 조건게임서버 처리
INVALID_PARAMETER200필수값 누락, maxLimit 범위(1~5) 초과요청값 수정 후 재요청
{
"resultCode": "INVALID_PARAMETER",
"resultMessage": "maxLimit: must be less than or equal to 5",
"traceId": "billing_01H..."
}

요청 curl 샘플​

  • 샘플 curl 커맨드입니다. 요청 정보에 맞게 변경해서 호출하세요.
curl -X 'POST' \
'https://API도메인/billing/api-game/v1/purchase/psn/retry/list' \
-H 'X-Req-Pjid: PJID값' \
-H 'X-Auth-Access-Key: API 인증키' \
-H 'Content-Type: application/x-www-form-urlencoded' \
--data-urlencode 'pjid=1201' \
--data-urlencode 'playerId=tester01' \
--data-urlencode 'maxLimit=5'