PG 결제

Windows 빌링은 HIVESTORE를 통해 진행할 수 있습니다. HIVESTORE(PG결제)는 상품 목록 조회와 구매만 지원하며, 클라이언트 기반 영수증 검증을 진행하지 않습니다.
Windows 환경에서 HIVESTORE로 구매하는 경우에는 호출 즉시 새 창에서 결제 요청 화면이 표시됩니다.

img

CS_IapV4Purchase(const char* marketPid, const char* additionalInfo, ReceiptInfoCB cb);를 호출하면 영수증 정보 없이 ReceiptInfoCB를 통해 “ErrorCode:IAPSUCCESS=90″와 “Code:IAPV4HiveStoreSuccess=-6110000” 응답을 즉시 반환하며, ErrorCode(또는 Code)를 판별하여 게임 내에서 구매 중임을 알리는 팝업을 노출하면 됩니다.

자세한 내용은 Hive PG 결제 소개에서 확인하세요.

C2SInAppV4 스팀 결제

스팀을 타겟으로 빌드 시 C2SInAppV4 모듈을 통해 스팀 결제를 지원합니다.

결제 방식은 일반적인 C2SInAppV4와 동일합니다.

빌링 사용 방법

리소스 파일 준비하기

컴파일

컴파일을 진행해 Windows용 게임 실행 파일과 폴더를 생성합니다.

컴파일 후 작업

  1. steamworks의 sdk/redistributable_bin/win64/steam_api64.dll 을 실행 파일
    폴더/steam_api64.dll 로 복사합니다
  2. 준비한 steam_appid.txt 을 “게임 실행 파일 폴더/steam_appid.txt”에 배치합니다. 이 과정은 스팀에 게임을 업로드 하기 전 테스트를 위해 필요하지만, 게임을 실제로 업로드 하는 경우에는 필요 없는 과정입니다.

C2SINAPPV4 Google Play 결제

결제 방식은 일반적인 C2SInAppV4와 유사합니다. 결제용 Google 계정 연동 결제를 위해 외부 브라우저 이동이 발생하며 비동기 방식으로 진행합니다.

marketConnect() 메서드 호출 시 주의사항

Hive SDK Windows 24.2.0부터 Google Play용 Windows 앱을 지원하며, GOOGLE_PLAYSTORE 마켓을 사용할 수 있습니다. 이 경우, 개발 시 아래 사항을 참고하세요.

  • 초기화(IAPV4.marketConnect)는 IdP 로그인 이후에 실행해야 합니다.
  • IAPV4.marketConnect가 처음으로 호출될 때, 마켓에서 상품을 결제할 Google 계정을 선택하는 상품 결제용 Google 계정 로그인 화면이 앱 사용자에게 나타납니다. 이 로그인 과정은 앱 개발사가 구현하는 기능이 아니며, Hive SDK에서 자동으로 수행합니다.
  • 상품 결제용 Google 계정 로그인은 Hive SDK 인증 모듈에서 제공하는 Google IdP 로그인과는 다릅니다. 만약, (Google 포함한) IdP 사용자가 로그아웃하면 상품 결제용 Google 계정도 자동으로 로그아웃됩니다.

getProductInfo() 메서드 호출 시 주의사항

Google Play용 Windows 앱(Hive SDK Windows 24.2.0 이상)에서 GOOGLE_PLAYSTORE 마켓을 사용할 때, IAPV4.getProductInfo가 처음으로 호출되면 마켓에서 상품을 결제할 계정을 선택하는 Google 계정 로그인 화면이 앱 사용자에게 나타납니다. 이 로그인 과정은 앱 개발사가 구현하는 기능이 아니며, Hive SDK에서 자동으로 수행합니다. 결제용 Google 계정의 인증 정보가 만료되면, Hive SDK는 자동으로 재인증 과정을 실행합니다.

purchase() 메서드 호출 시 주의사항

Google Play용 Windows 앱(Hive SDK Windows 24.2.0 이상)에서 GOOGLE_PLAYSTORE 마켓을 사용할 때, 결제용 Google 계정의 인증 정보가 만료되면, Hive SDK는 자동으로 재인증 과정을 실행합니다.

Google Play용 Windows 앱(Hive SDK Windows 24.2.0 이상)에서 GOOGLE_PLAYSTORE 마켓을 사용할 때, 사용자가 앱상에 나타난 결제 대기 팝업의 확인 버튼을 눌렀을 때, 결제 완료 여부가 확인되지 않은 경우 onIAPV4PurchaseCB로 result IAPSUCCESS=90과 errorCode IAPV4PendingPurchase=-6100013 응답을 반환합니다. 이 응답은 결제에 실패한 상황이 아니며, 사용자가 돈을 지불했지만 내부 오류로 결제 완료가 확인되지 않았거나, 사용자가 결제를 하지 않은 경우에 해당합니다. 이 경우 영수증을 반환하지 않으며, 사용자가 결제 브라우저 창에서 결제를 완료했다면 IAPV4.restore로 영수증을 얻을 수 있습니다.