1. 상품 구매 상태 호출
StovePC_ConfirmPurchase 함수로 상품 구매 상태를 확인합니다.
// 입력 파라미터
// int64 transactionMasterNo : 거래 고유 마스터 번호(OnStartPurchase 콜백 파라미터 StovePCPurchase.transactionMasterNo를 통해 취득)
StovePCResult result = StovePC_ConfirmPurchase(TRANSACTION_MASTER_NO);
if(result == StovePCResult::STOVE_PC_NO_ERROR)
{
// 성공 처리
}
C++
복사
StovePC_ConfirmPurchase 함수가 정상적으로 처리되면 OnConfirmPurchase 콜백이 호출됩니다.
콜백에 전달되는 StovePCPurchaseProduct 구조체에는 구매된 상품에 대한 메타정보가 포함되어 있고, status 콜백 파라미터는 상품 구매 상태를 전달합니다.
•
StovePCPurchaseProduct.totalQuantity : 상품 총 판매 수량
•
StovePCPurchaseProduct.memberQuantity : 회원 구매 수량
•
StovePCPurchaseProduct.guidQuantity : Guid 구매 수량(상품 구매 주체[CharacterNo/Guid/MemberNo]의 구매 수량)
별도의 게임서버가 없는 게임의 경우 구매 결과가 성공이라면 게임은 아이템을 지급할 수도 있습니다.
게임서버가 있는 게임의 경우 게임서버가 구매에 대한 알림을 받을 수 있고 이때 아이템을 지급할 수도 있습니다.
void OnConfirmPurchase(const int size, StovePCPurchaseProduct* purchaseProducts, bool status, char* shopKey)
{
printf("OnConfirmPurchase");
printf(" - status : %s", status ? "true":"false");
printf(" - shopKey: %s", shopKey);
printf("-puchaseProduct size = %d", size);
for (int i = 0; i < size; i++, purchaseProducts++)
{
printf(" - purchaseProducts[%d].productId: %lld", i, purchaseProducts->productId);
printf(" - purchaseProducts[%d].categoryId: %s", i, purchaseProducts->categoryId);
printf(" - purchaseProducts[%d].totalQuantity: %d", i, purchaseProducts->totalQuantity);
printf(" - purchaseProducts[%d].memberQuantity: %d", i, purchaseProducts->memberQuantity);
printf(" - purchaseProducts[%d].guidQuantity: %d", i, purchaseProducts->guidQuantity);
}
}
C++
복사
Reference
위 샘플코드에서 함수에서 string shopKey는StovePC_IAPInit 함수로 호출하는 YOUR_SHOP_KEY와 동일한 값입니다.
shopKey를 입력 파라메터로 YOUR_SHOP_KEY를 보내야 합니다.
StovePC.ConfirmPurchase 함수가 실행중에 오류가 발생하면 OnError 콜백이 호출됩니다.
StovePCError 구조체의 ExternalError 필드를 통해 외부 오류를 확인할 수 있습니다.
ExternalError | Description |
500 | Internal Server Error
⇒ 스토브 담당자에게 문의 부탁드립니다. |
999999 | 정의되지 않은 오류
⇒ 스토브 담당자에게 문의 부탁드립니다. |