PaymentKit SDKは、実際の取引を処理するためのLive Modeと、開発およびテスト用のTest Modeという2つの異なるモードで動作します。すべてのAPIリクエストは、これらの環境のいずれかで実行されます。デフォルトでは、SDKはLive Modeで初期化されます。
開発中はTest Modeを使用して、本番データに影響を与えたり、実際に課金されたりすることなく、インテグレーションを構築・検証することが重要です。
プログラムによる設定
payment.environments オブジェクトで提供されるメソッドを使用して、アプリケーション内でLiveモードとTestモードを動的に切り替えることができます。これは、環境を管理するための推奨されるアプローチです。
Live Modeの設定
Live Modeを明示的に有効にするには、setLivemode メソッドを使用します。それ以降のすべてのAPIコールは、本番環境に向けられます。
Setting Live Mode
import payment from '@blocklet/payment-js';
// 本番トランザクションのためにLive Modeを有効化
payment.environments.setLivemode(true);setLivemode(false) を設定することは、Test Modeを有効化することと同じです。
Test Modeの設定
開発用にTest Modeを有効にするには、setTestmode メソッドを使用します。これにより、すべてのAPIコールがサンドボックス化され、本番データとやり取りしないことが保証されます。
Setting Test Mode
import payment from '@blocklet/payment-js';
// 開発とテストのためにTest Modeを有効化
payment.environments.setTestmode(true);setTestmode(false) を設定することは、Live Modeを有効化することと同じです。
アクティブモードの確認
SDKが現在どのモードを使用するように設定されているかを、プログラムで確認できます。
Live Modeの確認
getLivemode メソッドは、SDKが現在Live Modeの場合に true を返します。
Checking Live Mode
import payment from '@blocklet/payment-js';
const isLive = payment.environments.getLivemode();
console.log(`SDKはLive Modeです: ${isLive}`);
// 期待される出力: SDK is in Live Mode: trueTest Modeの確認
getTestmode メソッドは、SDKが現在Test Modeの場合に true を返します。
Checking Test Mode
import payment from '@blocklet/payment-js';
payment.environments.setTestmode(true);
const isTest = payment.environments.getTestmode();
console.log(`SDKはTest Modeです: ${isTest}`);
// 期待される出力: SDK is in Test Mode: true仕組み
環境モードを設定すると、SDKを介して行われるその後のすべてのAPIコールには、リクエストに必要な livemode パラメータが自動的に含まれます。これにより、リクエストが呼び出しごとに指定する必要なく、正しいPaymentKit環境にルーティングされることが保証されます。
Example API Call in Test Mode
import payment from '@blocklet/payment-js';
// SDKがTest Modeであることを確認
payment.environments.setTestmode(true);
console.log(`Test Modeで動作中: ${payment.environments.getTestmode()}`);
async function listTestCustomers() {
try {
// このAPIコールはテスト環境に送信されます
const customers = await payment.customers.list({ pageSize: 5 });
console.log('テスト顧客を取得しました:', customers.data);
} catch (error) {
console.error('テスト顧客の取得中にエラーが発生しました:', error.message);
}
}
listTestCustomers();環境を適切に管理することは、安全で信頼性の高いインテグレーションにとって重要なステップです。SDKの設定方法を理解したところで、支払いフローの実装に進むことができます。
次に、一般的な支払いワークフローを実装するための実践的なガイドに進みましょう。