인앱결제 (iap)
개요
iap 네임스페이스는 네이티브 인앱결제 기능을 제공합니다.
nachocode SDK를 사용해 Android 및 iOS 환경에서 인앱결제를 손쉽게 처리할 수 있으며,
테스트 환경(sandbox)과 운영 환경(production)을 모두 지원합니다.
SDK 연동 전 가이드를 참고해보세요.
참고
필수 선행 작업
nachocode SDK로 인앱결제 기능을 사용하기 위해서는 nachocode 대시보드에서 인앱결제 설정이 모두 완료된 후 빌드된 경우에만 작동합니다.
참고
타입 정의
IapPurchaseResult
declare type IapPurchaseResult = {
purchaseEnv: 'sandbox' | 'production';
userId: string;
productId?: string;
nachoProductId: string;
purchaseId?: number;
os: 'android' | 'ios' | null;
status: {
success: boolean;
error?: {
code: string;
message: string;
};
};
};
| 속성명 | 타입 | 필수 여부 | 설명 |
|---|---|---|---|
purchaseEnv | 'sandbox' | 'production' | ✅ | 구매가 이루어진 환경 (sandbox: 테스트 환경, production: 운영 환경) |
userId | string | ✅ | 인앱결제를 수행한 앱 사용자의 고유 식별자 |
productId | string | ❌ | (optional) 상품키로 조회된 스토어에 등록된 상품의 고유 식별자, Native 호출이 실패한 경우 없음 |
nachoProductId | string | ✅ | nachocode에서 발급받은 인앱 상품의 고유 식별자 |
purchaseId | number | ❌ | (optional) 인앱결제 구매 내역 ID, Native 호출이 실패한 경우 없음 |
os | 'android' | 'ios' | null' | ✅ | 인앱결제가 이루어진 운영 체제 (android, ios, null = OS 정보 없음) |
status | object | ✅ | 인앱결제 호출 상태 정보 |
status.success | boolean | ✅ | 인앱결제 최종 성공 여부 (true: 성공, false: 실패) |
status.error | object | ❌ | (optional) 인앱결제 실패 시 포함되는 오류 정보, success = true인 경우 없음 |
status.error.code | string | ❌ | (optional) 에러 발생 원인을 나타내는 코드, Native 호출이 실패한 경우 없음 |
status.error.message | string | ✅ | 에러 메시지 |