원스토어

Prev Next

Classic/VPC 환경에서 이용 가능합니다.

원스토어 빌드를 위한 콘솔 사용 가이드입니다.
게임팟 연동 이외 콘솔 사용법은 다음을 참조해 주십시오

콘솔 인앱 상품 추가

  1. ONE store developer center 접속 > APPS > 프로젝트 선택 > In-App 정보 > 관리상품 > [In-App 상품 등록] 버튼을 클릭해 주십시오.
    gamepot-OneStore01.png

  2. In-App 상품 정보를 입력한 후 [저장] 버튼을 클릭해 주십시오.
    gamepot-OneStore02.png

    • In-App ID: 인앱 고유 아이디 (product id) 값
    • In-App 상품제목: 인앱 상품명(유저에게 노출되는 명칭)
    • In-App 상품종류: 게임팟 SDK에서는 '관리상품' 타입만 지원하기 때문에 반드시 '관리상품'으로 선택
    • In-App 기본가격: 한화 기준으로 VAT 포함된 가격 입력

결제 테스터 추가 적용

  1. ONE store developer center 접속 > APPS > 프로젝트 선택 > In-App 정보 > 결제테스트를 클릭해 주십시오.

  2. 테스트 ID 조회: 결제 테스트를 할 원스토어 계정(이메일정보) 입력 후 [조회] 버튼을 클릭해 주십시오.

    • 원스토어 계정이 조회되면 하단의 '테스트 ID 조회 결과' 부분이 표시됩니다.
  3. 조회된 결과에서 결제 환경을 'sandbox 혹은 상용결제'으로 선택한 후 등록해 주십시오.

    • 인앱 상품 추가 후, 최초 테스트 시에는 sandbox 환경으로 설정해야 합니다.
      gamepot-OneStore03.png

GAMEPOT 대시보드에 스토어 정보 등록

  1. GAMEPOT 대시보드 > 프로젝트 설정 > 스토어 > 원스토어 메뉴를 차례대로 클릭해 주십시오.
    gamepot-OneStore04.png

  2. 스토어 등록 시 필요한 정보는 In-App정보 > 관리상품 > In-App API 관리에서 확인해 주십시오.
    gamepot-OneStore05.png

    • Server Key: 라이선스 키 값 입력
    • Client ID: Oauth 인증 정보의 Client ID 값 입력
    • Client Secret: Oauth 인증 정보의 Client Secret 값 입력

게임팟 대시보드의 인앱 상품 추가

GAMEPOT 대시보드 > 구매 > 앱 내 구매 > [추가] 버튼을 클릭해 주십시오.

gamepot-GooglePlayStore16.png

  • 상태: 활성화 상태로 등록 (사용하지 않는 상품은 비활성화)
  • 스토어: 인앱을 등록하려는 스토어 선택
  • 상품 이름: 인앱의 상품명
  • 상품 아이디: 스토어 콘솔에 입력한 인앱 아이디(Product Id)

앱 설정

Kotlin Gradle 설정

  1. 프로젝트의 settings.gradle.kts 파일에 아래 정의를 추가해 주십시오.

    dependencyResolutionManagement {
        repositories {
            ...
            google()
            // onestore repo
            maven(url = "https://repo.onestore.co.kr/repository/onestore-sdk-public")
        }
    }
    
  2. 프로젝트에 (Module : app)의 build.gradle.kts 파일에 SDK 종속성을 추가해 주십시오.

    dependencies {
    ...
        implementation("io.nbase:nbase-adapter-billing-one:3.0.1")
        implementation("com.onestorecorp.sdk:sdk-iap:21.01.00")
    }
    
  3. AndroidManifest.xml 파일에 아래 queries를 추가해 주십시오.

    <manifest>
        <queries>
            <intent>
                <action android:name="com.onestore.ipc.iap.IapService.ACTION" />
            </intent>
            <intent>
                <action android:name="android.intent.action.VIEW" />
                <data android:scheme="onestore" />
            </intent>
        </queries>
        ...
        <application>
            ...
        </application>
    </manifest>
    

Java Gradle 설정

  1. 프로젝트 (Module : project)의 build.gradle 파일에 아래 정의를 추가해 주십시오.

    allprojects {
        repositories {
            ...
            google()
            // onestore repo
            maven { url "https://repo.onestore.co.kr/repository/onestore-sdk-public"}
        }
    }
    
  2. 프로젝트에 (Module : app)의 build.gradle 파일에 SDK 종속성을 추가해 주십시오.

    dependencies {
    ...
        implementation("io.nbase:nbase-adapter-billing-one:3.0.1")
        implementation("com.onestorecorp.sdk:sdk-iap:21.01.00")
    }
    
  3. AndroidManifest.xml 파일에 아래 queries를 추가해 주십시오.

    <manifest>
        <queries>
            <intent>
                <action android:name="com.onestore.ipc.iap.IapService.ACTION" />
            </intent>
            <intent>
                <action android:name="android.intent.action.VIEW" />
                <data android:scheme="onestore" />
            </intent>
        </queries>
        ...
        <application>
            ...
        </application>
    </manifest>
    

Unity Gradle 설정

  1. Assets/NBaseSDK/Editor/NBaseSDKDependencies.xml 파일에 아래 정의를 추가해 주십시오.

    <!-- # 원스토어 -->
    <androidPackage spec="com.onestorecorp.sdk:sdk-iap:21.01.00"/>
        <repositories>
            <repository>https://repo.onestore.co.kr/repository/onestore-sdk-public</repository>
        </repositories>
    </androidPackage>
    <androidPackage spec="io.nbase:nbase-adapter-billing-one:3.0.1" />
    
  2. Assets > External Dependency Manager > Android Resolver > Force Resolve를 1회 실행해 주십시오.

  3. 프로젝트의 AndroidManifest.xml 파일에 아래 queries를 추가해 주십시오.

    <manifest>
        <queries>
            <intent>
                <action android:name="com.onestore.ipc.iap.IapService.ACTION" />
            </intent>
            <intent>
                <action android:name="android.intent.action.VIEW" />
                <data android:scheme="onestore" />
            </intent>
        </queries>
        ...
        <application>
            ...
        </application>
    </manifest>
    

문제 해결

Q. 원스토어 결제 시도 시 responseCode: 3, message: An error occurred during the purchase process. 오류가 발생합니다.
A. 원스토어 로그인 계정이 결제 테스터로 추가되어있는지 확인해 주십시오.

Q. 결제 완료 후 바로 실패가 발생합니다.
A. 샌드박스 환경 결제 시 대시보드 > 프로젝트 설정 > 일반 > 웹훅 항목 내 화이트리스트 경로를 통해 구매/쿠폰 유형으로 결제 환경의 IP 를 등록해 주십시오.
프로덕션 환경 결제 시 구매/쿠폰 유형으로 결제 환경의 IP가 등록되어 있지 않도록 확인해 주십시오.