弊社の KOMOJU 端末には、署名済みの、事前に審査されたアプリケーションがインストールされています。これにより、事業者やシステム インテグレーターは、端末上で独自のアプリを実行しつつ、このアプリケーションから決済処理を呼び出せます。
サードパーティ アプリケーションからの決済処理の開始
端末用アプリケーションは、デバイスにインストールされている他のアプリケーションから呼び出せるエンドポイントを公開します。これらのエンドポイントは komoju:// で始まり、他の Android アプリから Intent 機能を使用して起動できます。
次に例を示します。
komoju://terminal/start/eyJhY3Rpb24iOiJzYWxlIiwiYW1vdW50IjoxMDAwLCJjYW5jZWxfdXJsIjoidGVzdDovL2NhbmNlbCIsInJldHVybl91cmwiOiJ0ZXN0Oi8vcmV0dXJuIn0=この URL には、アプリを通じて決済を開始するために必要なすべての詳細情報を含む、Base64 でエンコードされた JSON ペイロードが含まれています。
このペイロードの例は次のとおりです。
{
"action":"sale",
"amount":1000,
"external_order_number":"1234567890",
"cancel_url":"test://cancel",
"return_url":"test://return"
}指定できるパラメータは次のとおりです。
| パラメータ名 | 必須 | 説明 |
|---|---|---|
| action | はい | これは、呼び出し元の意図したアクションに応じて、sale または pre_auth のいずれかに相当します。 |
| amount | はい | これは日本円 (JPY) で表される金額の整数値です。 |
| external_order_number | いいえ | システムによって生成される注文 ID です。必須ではありません。空白のままにすると、端末によってランダムに数字が生成されます。この番号は取引ごとに一意である必要があります。 |
| cancel_url | はい | 取引がキャンセルされた場合のキャンセル URL です。これは通常、アプリケーションでキャンセル/エラーのメッセージを表示するアクティビティにマップされます。URL の末尾にはスラッシュを追加しないでください。 |
| return_url | はい | 取引が成功した場合の戻り先 URL です。これは通常、アプリケーションの "ありがとうございます" または "成功" 画面にマッピングされます。URL の末尾にはスラッシュを追加しないでください。 |
戻り先となる決済ステータス
端末用アプリケーションは、キャンセルの場合は cancel_url にリダイレクトし、成功した場合は return_url に戻ります。これらのパラメータで提供される URL は、宛先アプリケーションの intent-filter を通じて定義される必要があります。
たとえば、宛先アプリケーションの決済成功画面が yourapp://payment/success にマッピングされている場合、決済の開始時にこの URL を return_url パラメーターに提供できます。
決済アプリケーションは、決済 ID を URL に追加して、ユーザーを URL yourapp://payment/success/:payment_id にリダイレクトします。この決済 ID は、API を呼び出して決済のステータスを取得するために使用できます。
サンプル アプリケーション
実装中に参照できるよう、サンプル アプリケーションをご用意しました。サンプル アプリケーションのソースを入手するための詳細については、弊社にお問い合わせください。