Gamepub SDK
Korean
Korean
  • sdk guide
    • 시작하기
      • 다운로드
      • Android 설정
      • iOS 설정
      • 유니티 환경설정
    • 초기화
    • 인증
    • 결제
    • 푸시
    • UI
  • Console Guide
    • PubSDK Admin
      • 프로젝트 설정
    • 구글 콘솔
      • 구글 로그인
        • Android 클라이언트용
        • iOS 클라이언트용
      • 구글 스토어 결제
      • 푸시 (FCM)
    • 애플 콘솔
      • 애플 로그인
      • 앱스토어 결제
      • 푸시 (APNs)
    • 페이스북 콘솔
      • 페이스북 로그인 (AOS & iOS)
    • 원스토어 콘솔
      • 원스토어 결제
Powered by GitBook
On this page
  • 결제 초기화
  • 결제
  • 결제 재시도
  1. sdk guide

결제

Previous인증Next푸시

Last updated 2 years ago

결제 초기화

을 완료한 이후에 호출해야 합니다.

다음과 같은 기능이 있습니다.

  • 결제 기능 초기화

  • 모든인앱 상품 정보 제공

// Action<Result<PubInitBillingResult>> action;
GamePubSDK.Ins.InitBilling(result => {
    result.Match(
        value => {
            // 파라미터로 넘어온 상품 정보로 상점UI를 구성해 주세요.
            foreach (product in value.ProductList)
            {
                // product.ProductId
                // product.Currency
                // product.Price
                // product.Title
                // product.Desc
            }
        },
        error => {
            // error.ErrCode
            // error.Message
        }
    );
});
public class PubInitBillingResult
{
    private PubInAppProduct[] productList; // 상품정보 리스트
}

public class PubInAppProduct
{
    private string productId; // 마켓 상품ID
    private string currency;  // 통화 (예: "KRW")
    private string price;     // 상품 가격 (예: "₩2,000")
    private string title;     // 마켓에 등록한 상품명
    private string desc;      // 마켓에 등록한 상품 설명
}
Error
Code
Description

SUCCESS

1000

성공

NETWORK_ERROR

2003

서버 통신 중 장애가 발생했습니다.

SDK_INTERNAL_ERROR

2004

SDK 내부 오류입니다.

IAP_NOT_INITIALIZED

4001

결제 초기화가 완료되지 않았습니다.

IAP_UNSUPPORTED_MARKET

4002

지원하지 않는 스토어입니다.

IAP_PRODUCT_LIST_NOT_EXISTS

4003

초기화할 상품목록이 없습니다.

IAP_AGENT_GOOGLE_ERROR

4006

Google Play 결제 서비스 오류입니다.

IAP_AGENT_APPLE_ERROR

4007

App Store 결제 서비스 오류입니다.

IAP_AGENT_ONE_ERROR

4008

Onestore 결제 서비스 오류입니다.

IAP_AGENT_GALAXY_ERROR

4009

Galaxy Store 결제 서비스 오류입니다.

IAP_SERVICE_DISCONNECTED

90000

결제 초기화를 재수행해 주세요.

SERVER_INTERNAL_ERROR

40000

서버 내부 오류입니다.

SERVER_UNKNOWN_ERROR

40002

서버에서 알 수 없는 오류가 발생했습니다.

결제

인앱상품 결제 기능입니다.

// string productId;
// string channelId;
// string characterId;
// Action<Result<PubPurchaseResult>> action;
GamePubSDK.Ins.Purchase(
    productId, 
    channelId, 
    characterId, 
    result => {
        result.Match(
            value => {
                // 파라미터로 넘어온 결제정보로 아이템 지급을 진행해 주세요.
                // value.GamepubTid
                // value.PurchaseToken
                // value.OriginalJSONData
            },
            error => {
                // error.ErrCode
                // error.Message
            }
        );
    }
);
public class PubPurchaseResult
{
    private string gamepubTid;        // 게임펍 거래ID
    private string purchaseToken;     // 구매 토큰
    private string originalJSONData;  // 마켓 원본 데이터
}
Error
Code
Description

SUCCESS

1000

성공

NETWORK_ERROR

2003

서버 통신 중 장애가 발생했습니다.

SDK_INTERNAL_ERROR

2004

SDK 내부 오류입니다.

IAP_NOT_INITIALIZED

4001

결제 초기화가 완료되지 않았습니다.

IAP_UNSUPPORTED_MARKET

4002

지원하지 않는 스토어입니다.

IAP_PRODUCT_LIST_NOT_EXISTS

4003

초기화할 상품목록이 없습니다.

IAP_USER_CANCELED

4004

결제가 취소되었습니다.

IAP_PRODUCT_ID_NOT_EXISTS

4005

존재하지 않는 Market ProductID 입니다.

IAP_AGENT_GOOGLE_ERROR

4006

Google Play 결제 서비스 오류입니다.

IAP_AGENT_APPLE_ERROR

4007

App Store 결제 서비스 오류입니다.

IAP_AGENT_ONE_ERROR

4008

Onestore 결제 서비스 오류입니다.

IAP_AGENT_GALAXY_ERROR

4009

Galaxy Store 결제 서비스 오류입니다.

IAP_SERVICE_DISCONNECTED

90000

결제 초기화를 재수행해 주세요.

SERVER_INTERNAL_ERROR

40000

서버 내부 오류입니다.

SERVER_UNKNOWN_ERROR

40002

서버에서 알 수 없는 오류가 발생했습니다.

결제 재시도

Android 환경에서만 동작합니다.

consume 처리가 실패한 인앱상품이 있을 경우 재처리를 시도하는 기능입니다.

아래와 같은 시점에 호출할 것을 권장합니다.

  • 로그인 완료 직후

  • 구매 요청 직전

  • 게임 내 상점 진입시

  • 유저 프로필 또는 우편함 확인시

// string channelId;
// string characterId;
// Action<Result<PubRetryPurchaseResult>> action;
GamePubSDK.Ins.RetryPurchase(
    channelId, 
    characterId, 
    result => {
        result.Match(
            value => {
                foreach (product in value.PurchaseResults)
                {
                    // 파라미터로 넘어온 결제정보로 아이템 지급을 진행해 주세요.
                    // product.GamepubTid
                    // product.PurchaseToken
                    // product.OriginalJSONData
                }
            },
            error => {
                // error.ErrCode
                // error.Message
            }
        );
    }
);
public class PubRetryPurchaseResult
{
    private PubPurchaseResult[] purchaseResults; // 결제정보 목록
}

public class PubPurchaseResult
{
    private string gamepubTid;        // 게임펍 거래ID
    private string purchaseToken;     // 구매 토큰
    private string originalJSONData;  // 마켓 원본 데이터
}
Error
Code
Description

SUCCESS

1000

성공

NETWORK_ERROR

2003

서버 통신 중 장애가 발생했습니다.

SDK_INTERNAL_ERROR

2004

SDK 내부 오류입니다.

IAP_NOT_INITIALIZED

4001

결제 초기화가 완료되지 않았습니다.

IAP_UNSUPPORTED_MARKET

4002

지원하지 않는 스토어입니다.

IAP_PRODUCT_LIST_NOT_EXISTS

4003

초기화할 상품목록이 없습니다.

IAP_USER_CANCELED

4004

결제가 취소되었습니다.

IAP_PRODUCT_ID_NOT_EXISTS

4005

존재하지 않는 Market ProductID 입니다.

IAP_AGENT_GOOGLE_ERROR

4006

Google Play 결제 서비스 오류입니다.

IAP_AGENT_APPLE_ERROR

4007

App Store 결제 서비스 오류입니다.

IAP_AGENT_ONE_ERROR

4008

Onestore 결제 서비스 오류입니다.

IAP_AGENT_GALAXY_ERROR

4009

Galaxy Store 결제 서비스 오류입니다.

IAP_RETRY_LIST_EMPTY

4010

결제를 재시도할 상품이 없습니다.

IAP_SERVICE_DISCONNECTED

90000

결제 초기화를 재수행해 주세요.

SERVER_INTERNAL_ERROR

40000

서버 내부 오류입니다.

SERVER_UNKNOWN_ERROR

40002

서버에서 알 수 없는 오류가 발생했습니다.

, , 을 완료한 이후에 호출해야 합니다.

, , 을 완료한 이후에 호출해야 합니다.

결제 초기화
로그인
결제 초기화
로그인
셋업
셋업
셋업