本章では、開発用の eコマース環境について説明します。
3.1. eコマース開発環境へのアクセスについて
開発環境の eショップサーバーに接続するためには、開発機に任天堂が指定した DNS を設定する必要があります。開発向けにはDEV3と呼ばれる開発環境が提供されており、DEV3 の eショップサーバーに接続するにはDEV3 用の下記 DNS を設定する必要があります。
205.166.76.187
DNS のアドレスは変更される可能性があります。変更された場合には、任天堂サポートページを参照し、最新のアドレスを使用してください。
DEV3 の eショップ―サーバーおよび DNS は不正に利用されることを防ぐために IP アクセス制限をかけていますので、利用するには IP アクセス制限の解除が必要となります。
IP アクセス制限の解除方法についての詳細は、任天堂サポートサイトを確認してください。
サービスアイテム利用時で eShop REST API を使用する場合は、独自サーバーが DEV3 の eショップサーバーに接続する必要があります。詳細は eShop REST API のマニュアルを参照してください。なお、独自サーバーが接続する DEV3 の eショップサーバーは IP アクセス制限はかけていないため、独自サーバーの IP アドレス制限解除の申請は不要です。また、開発機が DEV3 環境の eショップサーバーからECサービストークンを取得することなどが必要なため、eShop REST API 利用時でも開発機にDNS 設定が必要となります。
3.2. 残高の追加に関して
開発環境では追加コンテンツやサービスアイテムの購入のために残高を追加する場合、ダミーのクレジットカードを利用します。ニンテンドープリペイドカードおよび電子マネーを用いての残高追加は出来ません。
ダミーのクレジットカードとして以下の番号が利用可能です。
クレジットカードの種類 | 番号 | 有効期限 | セキュリティコード | 郵便番号 |
---|---|---|---|---|
Visa | 4444-4444-4444-4448 | 12/2030 | 123 | 任意 |
ダミークレジットは下記の方法で利用できます。
- アプリで ECアプレットを組み込んでいれば、アイテム購入シーケンスから残高が足りない場合、残高追加が可能。
- EcDevTool を利用する。
EcDevTool はeコマース開発補助用のツールで、SDK に付属しています。使い方などの詳細はマニュアルを参照してください。
3.3. 開発環境と製品環境の違い
開発環境と製品環境では、eショップサーバーの設定が異なる部分があります。
例えば、韓国リージョンの本体で製品環境でクレジットカード支払いはできませんが、開発環境だとデバッグ用に残高を追加するため利用可能になっています。
また、サービスアイテム利用時は、開発環境と製品環境で独自サーバーに設定する証明書が異なる点に注意してください。
(ロットチェック環境は基本的に製品機を用いるため、製品環境となります)
3.4. TIN によるアクセス制限
各アプリケーションにはユニーク ID と呼ばれる ID が付与されます。また、OMAS で eコマースアイテムの対応申請をすると TIN(Title Identification Number) という番号が発行されます。
開発環境(DEV3)の eショップのサーバーは、開発会社が異なる開発会社の開発中のタイトル情報を見られないようにするため、クライアントから送信されたユニーク ID と TIN を確認し、API のレスポンスを返すかの判断を行います。 この検証に成功すると、アプリケーションと同じユニーク ID を持つデータタイトル・サービスアイテムに対してのみ、カタログ取得、購入、ダウンロードなどが可能となります。 その他のデータタイトル・サービスアイテムにアクセスすることはできません。
TIN は OMAS の eコマース設定フェーズ後に、OMAS 上で確認することができます。
ユニーク ID と TIN が漏洩することで、第三者がそのアプリケーションになりすますことが可能です。この場合、第三者が該当タイトルに対応するデータタイトル、サービスアイテムにアクセス出来ますので、開発しているアイテム一覧の情報が漏洩する恐れがあります。TIN は秘密情報として考え、取り扱いにご注意ください。
アプリケーションの設定
EC ライブラリを用いてカタログの取得、購入、ダウンロードをする前に、アプリケーションは、アクセスするデータタイトル/サービスタイトルの TIN を EC ライブラリで設定する必要があります。具体的には、セッション初期化時(nn::ec::EcApplet::RequestInitializeSession)に TIN をアプリで指定します。
異なるユニーク ID を持つ追加コンテンツの販売について
異なるユニーク ID を持つデータタイトルの追加コンテンツのリストアップ・購入をしたい場合、そのユニーク ID と TIN のペアを EC ライブラリに指定することでアクセス可能となります。例えば、前作のゲームの追加コンテンツを最新のゲームでも利用したい場合などに利用します。
なお、EC ライブラリに複数のユニーク ID と TIN を同時に指定することはできません。