# カタログとカタログリスト

> Unity Iapでのカタログとカタログ リストの使用方法を理解し、リストを定義する最適なメソッドを選択します。

Unity アプリ内課金では、IAP カタログには、ゲーム内通貨、新しいゲームレベル、プレミアム機能、サブスクリプションなど、プレイヤーがアプリケーション内で購入できるすべてのデジタルアイテムが含まれています。カタログ内の個々のエントリーはカタログのリストです。

カタログは以下のように定義できます。

| **メソッド**                                                                            | **どのような場合に使用するか**                                       | **D2C 互換性のある?** |
| ----------------------------------------------------------------------------------- | ------------------------------------------------------- | --------------- |
| [カタログリストをプログラム](./code-catalog.md)で定義します。                                           | スクリプトで直接カタログを定義します。                                     | はい              |
| エディタまたは API を使用して[リモートカタログを作成](./payment-providers/configure-remote-catalog.md)します。 | これらの方法のいずれかを使用して、クライアントの更新を必要とせずにリストを配布できるカタログを作成します。   | はい              |
| エディタで [IAP Catalog ウィンドウ](./create-catalog-in-editor.md)を使用します。                     | [Codeless IAP](./codeless-iap.md) を使用する場合は、このメソッドが必要です。 | いいえ             |

使用するメソッドに関係なく、ダッシュボードに既存のカタログをインポートして、ダッシュボードからカタログを[管理、編集](./dashboard-catalog/_index.md)、展開できます。

## 属性のリスト##listing-attributes

カタログリストはすべて、その動作とプレイヤーおよびデジタルストアでの表示をコントロールする標準の属性セットで定義します。以下の動作キー属動作す。キー詳細については、[カタログスキーマ](./catalog-schema.md) を参照してください。

### カタログリスト ID##catalog-listing-id

カタログリスト ID は、基礎となる項目の一意のクロスプラットフォーム識別子です。アプリケーション ストアとの通信に使用され、必要に応じてストア固有の ID でオーバーライドできます。カタログリスト ID には、小文字、数字、アンダースコア、ピリオドのみを含める必要があります。

### プロダクトタイプ##product-types

製品タイプは、項目の購入方法と復元できるかどうかを定義します。以下の製品タイプが利用可能です。

| Type (タイプ)    | 説明                                                                                            | 例                                                  | D2C 互換性のある? |
| :------------ | :-------------------------------------------------------------------------------------------- | :------------------------------------------------- | :---------- |
| **消費型**       | プレイヤーが複数回購入でき、使用時に消費される項目。消費型アイテムはリストアできません。例えば、ゲーム内通貨や一時的なパワーアップなどです。                        | ゲーム内通貨  - ヘルスポーション  - 一時的なパワーアップ                   | はい          |
| **非消費型**      | プレイヤーが 1 回だけ購入できる項目。これらのアイテムは永続的に所有され、アプリケーションの再インストール後に復元できます。例えば、新しいキャラクターのロック解除や広告の削除などです。 | - 武器または鎧  - 余分なコンテンツへのアクセス  - 広告なし                 | はい          |
| **サブスクリプション** | コンテンツまたは機能へのアクセスを設定された期間だけ許可する項目。例えば、毎月の VIP アクセスやバトルパスなどです。                                  | - オンラインゲームへの月間アクセス  - 毎日のボーナスを付与するVIP状態  - 無料トライアル | いいえ         |

### 支払い##payouts

「Payout（支払い）」属性（任意）は、購入が成功した後にプレイヤーが受け取るコンテンツ（100ゴールドコインなど）を指定します。各トランザクションを特定の項目と数量(例えば100ゴールド コイン)に関連付ける支払いを指定します。Payouts (支払い) 属性は、ゲーム内インベントリ管理を簡素化し、プレイヤーが購入に対して正しいゲーム内報酬やアイテムを受け取ることができるようにします。

コード化された IAP を実装するには、スクリプトで [`ProductCatalog.LoadDefaultCatalog`](https://docs.unity3d.com/Packages/com.unity.purchasing@latest?subfolder=/api/UnityEngine.Purchasing.ProductCatalog.html#UnityEngine_Purchasing_ProductCatalog_LoadDefaultCatalog) を呼び出してカタログにアクセスします。Codeless IAPでは、カタログは自動的に統合されるため、追加アクションは必要ありません。独自のカタログをコードで定義する場合は、Unity に任意[の`CatalogProvider`](https://docs.unity3d.com/Packages/com.unity.purchasing@latest?subfolder=/api/UnityEngine.Purchasing.CatalogProvider.html)クラスも用意されており、カスタムカタログの作成プロセスが簡略化されます。
