kkwoj
1
안녕하세요,
“인앱결제” 구현하고 있는데요,
가이드 문서에 보니까 “IAP.createOneTimePurchaseOrder” 을 통해서 결제를 요청하고,
“IAP.getPendingOrders”을 통해서 대기중인 목록을 가져오고, (결제는 되었지만 상품이 지급되지 않음)
“IAP.completeProductGrant”을 통해서 상품 지급 완료 처리하기 (대기중인 주문의 상품 지급을 완료 처리하는 함수)
이렇게 확인을 했는데요, 궁금한 점이 있습니다.
“대기중인 목록”은 소모품/비소모품 관계없이 모두 나올 수 있는건가요?
소모품/비소모품 관계없이 “IAP.completeProductGrant” 을 호출해서 지급 완료 처리해야 하는지 궁금합니다.
“IAP.createOneTimePurchaseOrder”을 통해서 SUCCESS를 받았는데
“대기중인 목록”이 생긴다는게 이해가 잘 안되서요..
“IAP.createOneTimePurchaseOrder”을 통해서 SUCCESS를 받은 경우에는
“IAP.completeProductGrant” 을 호출 안해도 되는거죠?
kkwoj
2
안드로이드나 애플에서는, 결제 후 클라이언트 쪽에서 항상 “FinishTransactions” 보내주었습니다.
그러면 토스에서도 결제 시 “IAP.completeProductGrant” 항상 호출해야 하는거 아닌가요?
그런데 “대기중인 주문의 상품 지급 완료를 처리하는 함수” 라고 지정해놓은거 보니까
“대기중인 주문”에만 사용하는거 같아서 질문 드렸습니다.
@kkwoj 님 안녕하세요
소모품/비소모품 관계없이 상품 지급이 되지 않은 주문건들에 대해 지급 완료 처리 부탁드립니다.
createOneTimePurchaseOrder 호출 후 processProductGrant 에서 상품 지급 로직을 개발해주시면 됩니다.
상품 지급이 정상적으로 되었다면 return true를 보내주시면 되는데,
정상적으로 지급이 되지 않았다면 return false 로 부탁드립니다.
return false 이거나 return 이 오지 않을 경우, 결제는 완료되었으나 상품 지급이 처리 되지 않은 상황으로 인지되어 getPendingOrders 함수를 호출하면 미결 주문건을 확인하실 수 있습니다.