diff --git a/src/Common/ParamParser.php b/src/Common/ParamParser.php index 4cbd18a..5050386 100644 --- a/src/Common/ParamParser.php +++ b/src/Common/ParamParser.php @@ -116,6 +116,50 @@ public function execSpecialParse($params) return $paramsMap; } + /** + * Exec特殊パラメータ文字列解析2 + * 3DS2.0利用時に実行される想定 + * @param string $params パラメータ文字列 + * @return array paramsMap パラメータ文字列の連想配列 + */ + public function execSpecialParse2($params) + { + + $paramsMap = array(); + + // 既知のキー名の配列を定義 + $keys = array("ACS=", "RedirectUrl="); + + //それぞれのキー名の位置を検出する + $positions = array(); + foreach ($keys as $key) { + $position = mb_strpos($params, $key); + $positions[$key] = $position; + } + + // キー名出現位置でソート + asort($positions); + // キー名毎のkeyとvalueのセットを切り取る + $startPosition = 0; + $endPosition = 0; + for ($counter = 0; $counter < count($keys); $counter++) { + $startPosition = $endPosition; + $endPosition = $positions[$keys[$counter]]; + if ($endPosition - $startPosition === 0) { + // 初回ループはスルー + continue; + } + $value = mb_substr($params, $startPosition, ($endPosition - $startPosition)); + $this->splitKeyValue($value, $paramsMap); + } + + // 最後に残った要素の処理 + $value = mb_substr($params, $endPosition); + $this->splitKeyValue($value, $paramsMap); + + return $paramsMap; + } + /** * ”key=value”の形式になっている文字列を分割してparamMapに連想配列の要素として登録する。 * @param string $value diff --git a/src/Common/RedirectUtil.php b/src/Common/RedirectUtil.php index 4353134..fd8098e 100644 --- a/src/Common/RedirectUtil.php +++ b/src/Common/RedirectUtil.php @@ -1,6 +1,13 @@ リダイレクトページ生成 * @@ -71,6 +78,44 @@ public function createRedirectPage($pagePath, $param, $encode = null) return $strPage; } + /** + * リダイレクトページの内容を作成する + * + * @param string $pagePath 雛形ページファイルへのパス + * @param string $param リダイレクトURL + * @param string $encode 雛形ページファイルの文字コード + * @reutnr string 雛形htmlの文字列 + */ + public function createSecure2RedirectPage($pagePath, $param, $encode = null) + { + $redirectUrl = $param; + + if (empty($redirectUrl)) { + $this->exception = + new GPayException("必須リダイレクトURLに値が入っていません。", $this->exception); + return null; + } + + // 雛形ページファイル読込 + // ※file_get_contents()はPHP4.3.0以降で動作します。 + $strPage = file_get_contents($pagePath, true); + if (!$strPage) { + $this->exception = + new GPayException("リダイレクトページの作成に失敗しました。", $this->exception); + return null; + } + + // $encodeが指定されていれば指定文字コードへ変換 + if (!is_null($encode)) { + $strPage = mb_convert_encoding($strPage, $encode, 'EUC-JP,UTF-8,SJIS,ASCII'); + } + + // 雛形ページ中のパラメータ項目を置き換え + $strPage = str_replace('${RedirectUrl}', $redirectUrl, $strPage); + + return $strPage; + } + /** * リダイレクトページの内容を作成する * @@ -171,7 +216,7 @@ public function webmoneyQuickStart($pagePath, $param, $encode = null) $accessID = $param->getAccessID(); if ( - empty($accessID) + empty($accessID) ) { $this->exception = new GPayException("必須Webmoneyクイック支払い手続き開始パラメータに値が入っていません。", $this->exception); @@ -1051,6 +1096,342 @@ public function sbAcceptStart($pagePath, $param, $encode = null) return $strPage; } + /** + * リダイレクトページの内容を作成する + * + * @param string $pagePath 雛形ページファイルへのパス + * @param SbStartInput param 支払手続き開始パラメタ + * @param string $encode 雛形ページファイルの文字コード + * @reutnr string 雛形htmlの文字列 + */ + public function famipayStart($pagePath, $param, $encode = null) + { + $accessID = $param->getAccessID(); + $token = $param->getToken(); + + + if ( + empty($accessID) || + empty($token) + ) { + $this->exception = + new GPayException("必須FamiPay手続き開始パラメータに値が入っていません。", $this->exception); + return null; + } + + // 雛形ページファイル読込 + // ※file_get_contents()はPHP4.3.0以降で動作します。 + $strPage = file_get_contents($pagePath, true); + if (!$strPage) { + $this->exception = + new GPayException("リダイレクトページの作成に失敗しました。", $this->exception); + return mb_convert_encoding("リダイレクトページの作成に失敗しました。", 'SJIS', 'UTF-8'); + } + + // $encodeが指定されていれば指定文字コードへ変換 + if (!is_null($encode)) { + $strPage = mb_convert_encoding($strPage, $encode, 'EUC-JP,UTF-8,SJIS,ASCII'); + } + + $urlMap = new ConnectUrlMap(); + $url = $urlMap->getUrl('famipayStart'); + // 雛形ページ中のパラメータ項目を置き換え + $strPage = str_replace('${FamipayStartURL}', $url, $strPage); + $strPage = str_replace('${AccessID}', $accessID, $strPage); + $strPage = str_replace('${Token}', $token, $strPage); + + + return $strPage; + } + + /** + * リダイレクトページの内容を作成する + * + * @param string $pagePath 雛形ページファイルへのパス + * @param SbStartInput param 支払手続き開始パラメタ + * @param string $encode 雛形ページファイルの文字コード + * @reutnr string 雛形htmlの文字列 + */ + public function epospayStart($pagePath, $param, $encode = null) + { + $accessID = $param->getAccessID(); + $token = $param->getToken(); + + + if ( + empty($accessID) || + empty($token) + ) { + $this->exception = + new GPayException("必須エポスかんたん決済手続き開始パラメータに値が入っていません。", $this->exception); + return null; + } + + // 雛形ページファイル読込 + // ※file_get_contents()はPHP4.3.0以降で動作します。 + $strPage = file_get_contents($pagePath, true); + if (!$strPage) { + $this->exception = + new GPayException("リダイレクトページの作成に失敗しました。", $this->exception); + return mb_convert_encoding("リダイレクトページの作成に失敗しました。", 'SJIS', 'UTF-8'); + } + + // $encodeが指定されていれば指定文字コードへ変換 + if (!is_null($encode)) { + $strPage = mb_convert_encoding($strPage, $encode, 'EUC-JP,UTF-8,SJIS,ASCII'); + } + + $urlMap = new ConnectUrlMap(); + $url = $urlMap->getUrl('epospayStart'); + // 雛形ページ中のパラメータ項目を置き換え + $strPage = str_replace('${EpospayStartURL}', $url, $strPage); + $strPage = str_replace('${AccessID}', $accessID, $strPage); + $strPage = str_replace('${Token}', $token, $strPage); + + + return $strPage; + } + + /** + * リダイレクトページの内容を作成する + * + * @param string $pagePath 雛形ページファイルへのパス + * @param SbStartInput param 支払手続き開始パラメタ + * @param string $encode 雛形ページファイルの文字コード + * @reutnr string 雛形htmlの文字列 + */ + public function merpayStart($pagePath, $param, $encode = null) + { + $accessID = $param->getAccessID(); + $token = $param->getToken(); + + + if ( + empty($accessID) || + empty($token) + ) { + $this->exception = + new GPayException("必須メルペイ手続き開始パラメータに値が入っていません。", $this->exception); + return null; + } + + // 雛形ページファイル読込 + // ※file_get_contents()はPHP4.3.0以降で動作します。 + $strPage = file_get_contents($pagePath, true); + if (!$strPage) { + $this->exception = + new GPayException("リダイレクトページの作成に失敗しました。", $this->exception); + return mb_convert_encoding("リダイレクトページの作成に失敗しました。", 'SJIS', 'UTF-8'); + } + + // $encodeが指定されていれば指定文字コードへ変換 + if (!is_null($encode)) { + $strPage = mb_convert_encoding($strPage, $encode, 'EUC-JP,UTF-8,SJIS,ASCII'); + } + + $urlMap = new ConnectUrlMap(); + $url = $urlMap->getUrl('merpayStart'); + // 雛形ページ中のパラメータ項目を置き換え + $strPage = str_replace('${MerpayStartURL}', $url, $strPage); + $strPage = str_replace('${AccessID}', $accessID, $strPage); + $strPage = str_replace('${Token}', $token, $strPage); + + + return $strPage; + } + + /** + * リダイレクトページの内容を作成する + * + * @param string $pagePath 雛形ページファイルへのパス + * @param SbStartInput param 支払手続き開始パラメタ + * @param string $encode 雛形ページファイルの文字コード + * @reutnr string 雛形htmlの文字列 + */ + public function paypayStart($pagePath, $param, $encode = null) + { + $accessID = $param->getAccessID(); + $token = $param->getToken(); + + + if ( + empty($accessID) || + empty($token) + ) { + $this->exception = + new GPayException("必須PayPay手続き開始パラメータに値が入っていません。", $this->exception); + return null; + } + + // 雛形ページファイル読込 + // ※file_get_contents()はPHP4.3.0以降で動作します。 + $strPage = file_get_contents($pagePath, true); + if (!$strPage) { + $this->exception = + new GPayException("リダイレクトページの作成に失敗しました。", $this->exception); + return mb_convert_encoding("リダイレクトページの作成に失敗しました。", 'SJIS', 'UTF-8'); + } + + // $encodeが指定されていれば指定文字コードへ変換 + if (!is_null($encode)) { + $strPage = mb_convert_encoding($strPage, $encode, 'EUC-JP,UTF-8,SJIS,ASCII'); + } + + $urlMap = new ConnectUrlMap(); + $url = $urlMap->getUrl('paypayStart'); + // 雛形ページ中のパラメータ項目を置き換え + $strPage = str_replace('${PaypayStartURL}', $url, $strPage); + $strPage = str_replace('${AccessID}', $accessID, $strPage); + $strPage = str_replace('${Token}', $token, $strPage); + + + return $strPage; + } + + /** + * リダイレクトページの内容を作成する + * + * @param string $pagePath 雛形ページファイルへのパス + * @param SbStartInput param 支払手続き開始パラメタ + * @param string $encode 雛形ページファイルの文字コード + * @reutnr string 雛形htmlの文字列 + */ + public function paypayAcceptStart($pagePath, $param, $encode = null) + { + $accessID = $param->getAccessID(); + $token = $param->getToken(); + + + if ( + empty($accessID) || + empty($token) + ) { + $this->exception = + new GPayException("必須PayPay随時(利用承諾)手続き開始パラメータに値が入っていません。", $this->exception); + return null; + } + + // 雛形ページファイル読込 + // ※file_get_contents()はPHP4.3.0以降で動作します。 + $strPage = file_get_contents($pagePath, true); + if (!$strPage) { + $this->exception = + new GPayException("リダイレクトページの作成に失敗しました。", $this->exception); + return mb_convert_encoding("リダイレクトページの作成に失敗しました。", 'SJIS', 'UTF-8'); + } + + // $encodeが指定されていれば指定文字コードへ変換 + if (!is_null($encode)) { + $strPage = mb_convert_encoding($strPage, $encode, 'EUC-JP,UTF-8,SJIS,ASCII'); + } + + $urlMap = new ConnectUrlMap(); + $url = $urlMap->getUrl('paypayAcceptStart'); + // 雛形ページ中のパラメータ項目を置き換え + $strPage = str_replace('${PaypayAcceptStartURL}', $url, $strPage); + $strPage = str_replace('${AccessID}', $accessID, $strPage); + $strPage = str_replace('${Token}', $token, $strPage); + + + return $strPage; + } + + /** + * リダイレクトページの内容を作成する + * + * @param string $pagePath 雛形ページファイルへのパス + * @param SbStartInput param 支払手続き開始パラメタ + * @param string $encode 雛形ページファイルの文字コード + * @reutnr string 雛形htmlの文字列 + */ + public function aupayStart($pagePath, $param, $encode = null) + { + $accessID = $param->getAccessID(); + $token = $param->getToken(); + + + if ( + empty($accessID) || + empty($token) + ) { + $this->exception = + new GPayException("必須au PAY手続き開始パラメータに値が入っていません。", $this->exception); + return null; + } + + // 雛形ページファイル読込 + // ※file_get_contents()はPHP4.3.0以降で動作します。 + $strPage = file_get_contents($pagePath, true); + if (!$strPage) { + $this->exception = + new GPayException("リダイレクトページの作成に失敗しました。", $this->exception); + return mb_convert_encoding("リダイレクトページの作成に失敗しました。", 'SJIS', 'UTF-8'); + } + + // $encodeが指定されていれば指定文字コードへ変換 + if (!is_null($encode)) { + $strPage = mb_convert_encoding($strPage, $encode, 'EUC-JP,UTF-8,SJIS,ASCII'); + } + + $urlMap = new ConnectUrlMap(); + $url = $urlMap->getUrl('aupayStart'); + // 雛形ページ中のパラメータ項目を置き換え + $strPage = str_replace('${AupayStartURL}', $url, $strPage); + $strPage = str_replace('${AccessID}', $accessID, $strPage); + $strPage = str_replace('${Token}', $token, $strPage); + + + return $strPage; + } + + /** + * リダイレクトページの内容を作成する + * + * @param string $pagePath 雛形ページファイルへのパス + * @param SbStartInput param 支払手続き開始パラメタ + * @param string $encode 雛形ページファイルの文字コード + * @reutnr string 雛形htmlの文字列 + */ + public function rakutenpayStart($pagePath, $param, $encode = null) + { + $accessID = $param->getAccessID(); + $token = $param->getToken(); + + + if ( + empty($accessID) || + empty($token) + ) { + $this->exception = + new GPayException("必須楽天ペイ手続き開始パラメータに値が入っていません。", $this->exception); + return null; + } + + // 雛形ページファイル読込 + // ※file_get_contents()はPHP4.3.0以降で動作します。 + $strPage = file_get_contents($pagePath, true); + if (!$strPage) { + $this->exception = + new GPayException("リダイレクトページの作成に失敗しました。", $this->exception); + return mb_convert_encoding("リダイレクトページの作成に失敗しました。", 'SJIS', 'UTF-8'); + } + + // $encodeが指定されていれば指定文字コードへ変換 + if (!is_null($encode)) { + $strPage = mb_convert_encoding($strPage, $encode, 'EUC-JP,UTF-8,SJIS,ASCII'); + } + + $urlMap = new ConnectUrlMap(); + $url = $urlMap->getUrl('rakutenpayStart'); + // 雛形ページ中のパラメータ項目を置き換え + $strPage = str_replace('${RakutenpayStartURL}', $url, $strPage); + $strPage = str_replace('${AccessID}', $accessID, $strPage); + $strPage = str_replace('${Token}', $token, $strPage); + + + return $strPage; + } + /** * リダイレクトページの内容を作成する @@ -1100,6 +1481,56 @@ public function bankAccountStart($pagePath, $param, $encode = null) return $strPage; } + /** + * リダイレクトページの内容を作成する + * + * @param string $pagePath 雛形ページファイルへのパス + * @param SbStartInput param 支払手続き開始パラメタ + * @param string $encode 雛形ページファイルの文字コード + * @reutnr string 雛形htmlの文字列 + */ + public function amazonpayStart($pagePath, $param, $encode = null) + { + $accessID = $param->getAccessID(); + $token = $param->getToken(); + $amazonAccessToken = $param->getAmazonAccessToken(); + + + if ( + empty($accessID) || + empty($token) + ) { + $this->exception = + new GPayException("必須Amazon Pay手続き開始パラメータに値が入っていません。", $this->exception); + return null; + } + + // 雛形ページファイル読込 + // ※file_get_contents()はPHP4.3.0以降で動作します。 + $strPage = file_get_contents($pagePath, true); + if (!$strPage) { + $this->exception = + new GPayException("リダイレクトページの作成に失敗しました。", $this->exception); + return mb_convert_encoding("リダイレクトページの作成に失敗しました。", 'SJIS', 'UTF-8'); + } + + // $encodeが指定されていれば指定文字コードへ変換 + if (!is_null($encode)) { + $strPage = mb_convert_encoding($strPage, $encode, 'EUC-JP,UTF-8,SJIS,ASCII'); + } + + $urlMap = new ConnectUrlMap(); + $url = $urlMap->getUrl('amazonpayStart'); + // 雛形ページ中のパラメータ項目を置き換え + $strPage = str_replace('${AmazonpayStartURL}', $url, $strPage); + $strPage = str_replace('${AccessID}', $accessID, $strPage); + $strPage = str_replace('${Token}', $token, $strPage); + $strPage = str_replace('${AmazonAccessToken}', $amazonAccessToken, $strPage); + + + return $strPage; + } + /** * 例外の発生を判定する * diff --git a/src/Input/AcsParam.php b/src/Input/AcsParam.php index 879c128..328d9d6 100644 --- a/src/Input/AcsParam.php +++ b/src/Input/AcsParam.php @@ -1,6 +1,7 @@ リダイレクトページ生成用パラメータホルダー * @@ -45,6 +46,33 @@ public function getAcsUrl() return $this->acsUrl; } + /** + * 取引ID取得 + * @return string 取引データ + */ + public function getMd() + { + return $this->md; + } + + /** + * 3Dセキュア認証要求電文取得 + * @return string 3Dセキュア認証要求電文 + */ + public function getPaReq() + { + return $this->paReq; + } + + /** + * 結果受取用URL取得 + * @return string 結果受け取りURL + */ + public function getTermUrl() + { + return $this->termUrl; + } + /** * ACS(発行元カード会社)URL設定 * @@ -59,15 +87,6 @@ public function setAcsUrl($acsUrl) $this->acsUrl = $acsUrl; } - /** - * 取引ID取得 - * @return string 取引データ - */ - public function getMd() - { - return $this->md; - } - /** * 取引ID設定 * @@ -78,14 +97,6 @@ public function setMd($md) $this->md = $md; } - /** - * 3Dセキュア認証要求電文取得 - * @return string 3Dセキュア認証要求電文 - */ - public function getPaReq() - { - return $this->paReq; - } /** * 3Dセキュア認証要求電文設定 @@ -101,14 +112,6 @@ public function setPaReq($paReq) $this->paReq = $paReq; } - /** - * 結果受取用URL取得 - * @return string 結果受け取りURL - */ - public function getTermUrl() - { - return $this->termUrl; - } /** * 結果受取用URLを設定 @@ -125,4 +128,4 @@ public function setTermUrl($termUrl) } -?> +?> \ No newline at end of file diff --git a/src/Input/EntryExecTranInput.php b/src/Input/EntryExecTranInput.php index 4b35d84..7c199b3 100644 --- a/src/Input/EntryExecTranInput.php +++ b/src/Input/EntryExecTranInput.php @@ -1,7 +1,12 @@ 登録・決済一括実行 入力パラメータクラス * @@ -48,16 +53,6 @@ public function &getEntryTranInput() return $this->entryTranInput; } - /** - * 取引登録入力パラメータ設定 - * - * @param EntryTranInput entryTranInput 取引登録入力パラメータ - */ - public function setEntryTranInput(&$entryTranInput) - { - $this->entryTranInput = $entryTranInput; - } - /** * 決済実行入力パラメータ取得 * @return ExecTranInput 決済実行時パラメータ @@ -67,16 +62,6 @@ public function &getExecTranInput() return $this->execTranInput; } - /** - * 決済実行入力パラメータ設定 - * - * @param ExecTranInput 決済実行入力パラメータ - */ - public function setExecTranInput(&$execTranInput) - { - $this->execTranInput = $execTranInput; - } - /** * ショップID取得 * @return string ショップID @@ -158,6 +143,24 @@ public function getTdTenantName() return $this->entryTranInput->getTdTenantName(); } + /** + * 3DS2.0非対応時取り扱い取得 + * @return string 3DS2.0非対応時取り扱い + */ + public function getTds2Type() + { + return $this->entryTranInput->getTds2Type(); + } + + /** + * 3DS必須タイプ + * @return string 3DS必須タイプ + */ + public function getTdRequired() + { + return $this->entryTranInput->getTdRequired(); + } + /** * 取引ID取得 * @return string 取引ID @@ -339,294 +342,1300 @@ public function getTokenType() } /** - * ショップID設定 - * - * @param string $shopId + * 加盟店戻りURL取得 + * @return string 加盟店戻りURL */ - public function setShopId($shopId) + public function getRetUrl() { - $this->entryTranInput->setShopId($shopId); + return $this->execTranInput->getRetUrl(); } /** - * ショップパスワード設定 - * - * @param string $shopPass + * モバイルアプリモード取得 + * @return string モバイルアプリモード */ - public function setShopPass($shopPass) + public function getAppMode() { - $this->entryTranInput->setShopPass($shopPass); + return $this->execTranInput->getAppMode(); + } + + /** + * 3DS2.0 authentication challenge request type + */ + public function getTds2ChallengeIndType() + { + return $this->execTranInput->getTds2ChallengeIndType(); } /** - * オーダーID設定 - * - * @param string $orderId + * コールバック方法取得 + * @return string コールバック方法 */ - public function setOrderId($orderId) + public function getCallbackType() { - $this->entryTranInput->setOrderId($orderId); - $this->execTranInput->setOrderId($orderId); + return $this->execTranInput->getCallbackType(); } /** - * 処理区分設定 - * - * @param string $jobCd + * カード会員最終更新日取得 + * @return string カード会員最終更新日 */ - public function setJobCd($jobCd) + public function getTds2ChAccChange() { - $this->entryTranInput->setJobCd($jobCd); + return $this->execTranInput->getTds2ChAccChange(); } /** - * 商品コード設定 - * - * @param string $itemCode + * カード会員作成日取得 + * @return string カード会員作成日 */ - public function setItemCode($itemCode) + public function getTds2ChAccDate() { - $this->entryTranInput->setItemCode($itemCode); + return $this->execTranInput->getTds2ChAccDate(); } /** - * 利用金額設定 - * - * @param integer $amount + * カード会員パスワード変更日取得 + * @return string カード会員パスワード変更日 */ - public function setAmount($amount) + public function getTds2ChAccPwChange() { - $this->entryTranInput->setAmount($amount); + return $this->execTranInput->getTds2ChAccPwChange(); } /** - * 税送料設定 - * - * @param integer $tax + * 過去6ヶ月間の購入回数取得 + * @return integer 過去6ヶ月間の購入回数 */ - public function setTax($tax) + public function getTds2NbPurchaseAccount() { - $this->entryTranInput->setTax($tax); + return $this->execTranInput->getTds2NbPurchaseAccount(); } /** - * 3Dセキュア使用フラグ設定 - * - * @param string $tdFlag + * カード登録日取得 + * @return string カード登録日 */ - public function setTdFlag($tdFlag) + public function getTds2PaymentAccAge() { - $this->entryTranInput->setTdFlag($tdFlag); + return $this->execTranInput->getTds2PaymentAccAge(); } /** - * 3Dセキュア表示店舗名設定 - * - * @param string $tdTenantName + * 過去24時間のカード追加の試行回数取得 + * @return integer 過去24時間のカード追加の試行回数 */ - public function setTdTenantName($tdTenantName) + public function getTds2ProvisionAttemptsDay() { - $this->entryTranInput->setTdTenantName($tdTenantName); + return $this->execTranInput->getTds2ProvisionAttemptsDay(); } /** - * 取引ID設定 - * - * @param string $accessId + * 配送先住所の初回使用日取得 + * @return string 配送先住所の初回使用日 */ - public function setAccessId($accessId) + public function getTds2ShipAddressUsage() { - $this->execTranInput->setAccessId($accessId); + return $this->execTranInput->getTds2ShipAddressUsage(); } /** - * 取引パスワード設定 - * - * @param string $accessPass + * カード会員名と配送先名の一致/不一致取得 + * @return string カード会員名と配送先名の一致/不一致 */ - public function setAccessPass($accessPass) + public function getTds2ShipNameInd() { - $this->execTranInput->setAccessPass($accessPass); + return $this->execTranInput->getTds2ShipNameInd(); } /** - * 支払い方法設定 - * - * @param string $method + * カード会員の不審行為情報取得 + * @return string カード会員の不審行為情報 */ - public function setMethod($method) + public function getTds2SuspiciousAccActivity() { - $this->execTranInput->setMethod($method); + return $this->execTranInput->getTds2SuspiciousAccActivity(); } /** - * 支払回数設定 - * - * @param string $payTimes + * 過去24時間の取引回数取得 + * @return integer 過去24時間の取引回数 */ - public function setPayTimes($payTimes) + public function getTds2TxnActivityDay() { - $this->execTranInput->setPayTimes($payTimes); + return $this->execTranInput->getTds2TxnActivityDay(); } /** - * カード番号設定 - * - * @param string $cardNo + * 前年の取引回数取得 + * @return integer 前年の取引回数 */ - public function setCardNo($cardNo) + public function getTds2TxnActivityYear() { - $this->execTranInput->setCardNo($cardNo); + return $this->execTranInput->getTds2TxnActivityYear(); } /** - * 有効期限設定 - * - * @param string $expire + * ログイン証跡取得 + * @return string ログイン証跡 */ - public function setExpire($expire) + public function getTds2ThreeDSReqAuthData() { - $this->execTranInput->setExpire($expire); + return $this->execTranInput->getTds2ThreeDSReqAuthData(); } /** - * サイトID設定 - * @param string $siteID + * ログイン方法取得 + * @return string ログイン方法 */ - public function setSiteId($siteID) + public function getTds2ThreeDSReqAuthMethod() { - $this->execTranInput->setSiteId($siteID); + return $this->execTranInput->getTds2ThreeDSReqAuthMethod(); } /** - * サイトパスワード設定 - * @param string $sitePass + * ログイン日時取得 + * @return string ログイン日時 */ - public function setSitePass($sitePass) + public function getTds2ThreeDSReqAuthTimestamp() { - $this->execTranInput->setSitePass($sitePass); + return $this->execTranInput->getTds2ThreeDSReqAuthTimestamp(); } /** - * 会員ID設定 - * @param string $memberId + * 請求先住所と配送先住所の一致/不一致取得 + * @return string 請求先住所と配送先住所の一致/不一致 */ - public function setMemberId($memberId) + public function getTds2AddrMatch() { - $this->execTranInput->setMemberId($memberId); + return $this->execTranInput->getTds2AddrMatch(); } /** - * カード登録連番設定 - * @param integer $cardseq + * 請求先住所の都市取得 + * @return string 請求先住所の都市 */ - public function setCardSeq($cardseq) + public function getTds2BillAddrCity() { - $this->execTranInput->setCardSeq($cardseq); + return $this->execTranInput->getTds2BillAddrCity(); } /** - * カード連番モード設定 - * @param string $seqMode + * 請求先住所の国番号取得 + * @return string 請求先住所の国番号 */ - public function setSeqMode($seqMode) + public function getTds2BillAddrCountry() { - $this->execTranInput->setSeqMode($seqMode); + return $this->execTranInput->getTds2BillAddrCountry(); } /** - * カードパスワード設定 - * @param string $cardPass + * 請求先住所の区域部分の1行目取得 + * @return string 請求先住所の区域部分の1行目 */ - public function setCardPass($cardPass) + public function getTds2BillAddrLine1() { - $this->execTranInput->setCardPass($cardPass); + return $this->execTranInput->getTds2BillAddrLine1(); } + /** + * 請求先住所の区域部分の2行目取得 + * @return string 請求先住所の区域部分の2行目 + */ + public function getTds2BillAddrLine2() + { + return $this->execTranInput->getTds2BillAddrLine2(); + } /** - * セキュリティコード設定 - * - * @param string $securityCode + * 請求先住所の区域部分の3行目取得 + * @return string 請求先住所の区域部分の3行目 */ - public function setSecurityCode($securityCode) + public function getTds2BillAddrLine3() { - $this->execTranInput->setSecurityCode($securityCode); + return $this->execTranInput->getTds2BillAddrLine3(); } + /** + * 請求先住所の郵便番号取得 + * @return string 請求先住所の郵便番号 + */ + public function getTds2BillAddrPostCode() + { + return $this->execTranInput->getTds2BillAddrPostCode(); + } /** - * HTTP_ACCEPT設定 - * - * @param string $httpAccept + * 請求先住所の州または都道府県番号取得 + * @return string 請求先住所の州または都道府県番号 */ - public function setHttpAccept($httpAccept) + public function getTds2BillAddrState() { - $this->execTranInput->setHttpAccept($httpAccept); + return $this->execTranInput->getTds2BillAddrState(); } + /** + * カード会員のメールアドレス取得 + * @return string カード会員のメールアドレス + */ + public function getTds2Email() + { + return $this->execTranInput->getTds2Email(); + } /** - * HTTP_USER_AGENT設定 - * - * @param string $httpUserAgent + * 自宅電話の国コード取得 + * @return string 自宅電話の国コード */ - public function setHttpUserAgent($httpUserAgent) + public function getTds2HomePhoneCC() { - $this->execTranInput->setHttpUserAgent($httpUserAgent); + return $this->execTranInput->getTds2HomePhoneCC(); } + /** + * 自宅電話番号取得 + * @return string 自宅電話番号 + */ + public function getTds2HomePhoneSubscriber() + { + return $this->execTranInput->getTds2HomePhoneSubscriber(); + } /** - * 加盟店自由項目1設定 - * - * @param string $clientField1 + * 携帯電話の国コード取得 + * @return string 携帯電話の国コード */ - public function setClientField1($clientField1) + public function getTds2MobilePhoneCC() { - $this->execTranInput->setClientField1($clientField1); + return $this->execTranInput->getTds2MobilePhoneCC(); } /** - * 加盟店自由項目2設定 - * - * @param string $clientField2 + * 携帯電話番号取得 + * @return string 携帯電話番号 */ - public function setClientField2($clientField2) + public function getTds2MobilePhoneSubscriber() { - $this->execTranInput->setClientField2($clientField2); + return $this->execTranInput->getTds2MobilePhoneSubscriber(); } + /** + * 職場電話の国コード取得 + * @return string 職場電話の国コード + */ + public function getTds2WorkPhoneCC() + { + return $this->execTranInput->getTds2WorkPhoneCC(); + } /** - * 加盟店自由項目3設定 - * - * @param string $clientField3 + * 職場電話番号取得 + * @return string 職場電話番号 */ - public function setClientField3($clientField3) + public function getTds2WorkPhoneSubscriber() { - $this->execTranInput->setClientField3($clientField3); + return $this->execTranInput->getTds2WorkPhoneSubscriber(); } /** - * 利用明細に記載される文言設定 - * - * @param string $displayInfo + * 配送先住所の都市取得 + * @return string 配送先住所の都市 */ - public function setDisplayInfo($displayInfo) + public function getTds2ShipAddrCity() { - $this->execTranInput->setDisplayInfo($displayInfo); + return $this->execTranInput->getTds2ShipAddrCity(); } /** - * トークンタイプ設定 - * - * @param string $tokenType + * 配送先住所の国番号取得 + * @return string 配送先住所の国番号 */ - public function setTokenType($tokenType) + public function getTds2ShipAddrCountry() { - $this->execTranInput->setTokenType($tokenType); + return $this->execTranInput->getTds2ShipAddrCountry(); + } + + /** + * 配送先住所の区域部分の1行目取得 + * @return string 配送先住所の区域部分の1行目 + */ + public function getTds2ShipAddrLine1() + { + return $this->execTranInput->getTds2ShipAddrLine1(); + } + + /** + * 配送先住所の区域部分の2行目取得 + * @return string 配送先住所の区域部分の2行目 + */ + public function getTds2ShipAddrLine2() + { + return $this->execTranInput->getTds2ShipAddrLine2(); + } + + /** + * 配送先住所の区域部分の3行目取得 + * @return string 配送先住所の区域部分の3行目 + */ + public function getTds2ShipAddrLine3() + { + return $this->execTranInput->getTds2ShipAddrLine3(); + } + + /** + * 配送先住所の郵便番号取得 + * @return string 配送先住所の郵便番号 + */ + public function getTds2ShipAddrPostCode() + { + return $this->execTranInput->getTds2ShipAddrPostCode(); + } + + /** + * 配送先住所の州または都道府県番号取得 + * @return string 配送先住所の州または都道府県番号 + */ + public function getTds2ShipAddrState() + { + return $this->execTranInput->getTds2ShipAddrState(); + } + + /** + * 納品先電子メールアドレス取得 + * @return string 納品先電子メールアドレス + */ + public function getTds2DeliveryEmailAddress() + { + return $this->execTranInput->getTds2DeliveryEmailAddress(); + } + + /** + * 商品納品時間枠取得 + * @return string 商品納品時間枠 + */ + public function getTds2DeliveryTimeframe() + { + return $this->execTranInput->getTds2DeliveryTimeframe(); + } + + /** + * プリペイドカードまたはギフトカードの総購入金額取得 + * @return string プリペイドカードまたはギフトカードの総購入金額 + */ + public function getTds2GiftCardAmount() + { + return $this->execTranInput->getTds2GiftCardAmount(); + } + + /** + * 購入されたプリペイドカードまたはギフトカード の総数取得 + * @return integer 購入されたプリペイドカードまたはギフトカード の総数 + */ + public function getTds2GiftCardCount() + { + return $this->execTranInput->getTds2GiftCardCount(); + } + + /** + * 購入されたプリペイドカードまたはギフトカードの通貨コード取得 + * @return string 購入されたプリペイドカードまたはギフトカードの通貨コード + */ + public function getTds2GiftCardCurr() + { + return $this->execTranInput->getTds2GiftCardCurr(); + } + + /** + * 商品の発売予定日取得 + * @return string 商品の発売予定日 + */ + public function getTds2PreOrderDate() + { + return $this->execTranInput->getTds2PreOrderDate(); + } + + /** + * 商品の販売時期情報取得 + * @return string 商品の販売時期情報 + */ + public function getTds2PreOrderPurchaseInd() + { + return $this->execTranInput->getTds2PreOrderPurchaseInd(); + } + + /** + * 商品の注文情報取得 + * @return string 商品の注文情報 + */ + public function getTds2ReorderItemsInd() + { + return $this->execTranInput->getTds2ReorderItemsInd(); + } + + /** + * 取引の配送方法取得 + * @return string 取引の配送方法 + */ + public function getTds2ShipInd() + { + return $this->execTranInput->getTds2ShipInd(); + } + + /** + * 継続課金の期限取得 + * @return string 継続課金の期限 + */ + public function getTds2RecurringExpiry() + { + return $this->execTranInput->getTds2RecurringExpiry(); + } + + /** + * 継続課金の課金最小間隔日数取得 + * @return integer 継続課金の課金最小間隔日数 + */ + public function getTds2RecurringFrequency() + { + return $this->execTranInput->getTds2RecurringFrequency(); + } + + /** + * 取引登録入力パラメータ設定 + * + * @param EntryTranInput entryTranInput 取引登録入力パラメータ + */ + public function setEntryTranInput(&$entryTranInput) + { + $this->entryTranInput = $entryTranInput; + } + + /** + * 決済実行入力パラメータ設定 + * + * @param ExecTranInput 決済実行入力パラメータ + */ + public function setExecTranInput(&$execTranInput) + { + $this->execTranInput = $execTranInput; + } + + /** + * ショップID設定 + * + * @param string $shopId + */ + public function setShopId($shopId) + { + $this->entryTranInput->setShopId($shopId); + } + + /** + * ショップパスワード設定 + * + * @param string $shopPass + */ + public function setShopPass($shopPass) + { + $this->entryTranInput->setShopPass($shopPass); + } + + /** + * オーダーID設定 + * + * @param string $orderId + */ + public function setOrderId($orderId) + { + $this->entryTranInput->setOrderId($orderId); + $this->execTranInput->setOrderId($orderId); + } + + /** + * 処理区分設定 + * + * @param string $jobCd + */ + public function setJobCd($jobCd) + { + $this->entryTranInput->setJobCd($jobCd); + } + + /** + * 商品コード設定 + * + * @param string $itemCode + */ + public function setItemCode($itemCode) + { + $this->entryTranInput->setItemCode($itemCode); + } + + /** + * 利用金額設定 + * + * @param integer $amount + */ + public function setAmount($amount) + { + $this->entryTranInput->setAmount($amount); + } + + /** + * 税送料設定 + * + * @param integer $tax + */ + public function setTax($tax) + { + $this->entryTranInput->setTax($tax); + } + + /** + * 3Dセキュア使用フラグ設定 + * + * @param string $tdFlag + */ + public function setTdFlag($tdFlag) + { + $this->entryTranInput->setTdFlag($tdFlag); + } + + /** + * 3Dセキュア表示店舗名設定 + * + * @param string $tdTenantName + */ + public function setTdTenantName($tdTenantName) + { + $this->entryTranInput->setTdTenantName($tdTenantName); + } + + /** + * 3DS2.0非対応時取り扱い設定 + * + * @param string $tds2Type + */ + public function setTds2Type($tds2Type) + { + $this->entryTranInput->setTds2Type($tds2Type); + } + + /** + * 3DS必須タイプ + * + * @param string $tdRequired + */ + public function setTdRequired($tdRequired) + { + $this->entryTranInput->setTdRequired($tdRequired); + } + + /** + * 取引ID設定 + * + * @param string $accessId + */ + public function setAccessId($accessId) + { + $this->execTranInput->setAccessId($accessId); + } + + /** + * 取引パスワード設定 + * + * @param string $accessPass + */ + public function setAccessPass($accessPass) + { + $this->execTranInput->setAccessPass($accessPass); + } + + /** + * 支払い方法設定 + * + * @param string $method + */ + public function setMethod($method) + { + $this->execTranInput->setMethod($method); + } + + /** + * 支払回数設定 + * + * @param string $payTimes + */ + public function setPayTimes($payTimes) + { + $this->execTranInput->setPayTimes($payTimes); + } + + /** + * カード番号設定 + * + * @param string $cardNo + */ + public function setCardNo($cardNo) + { + $this->execTranInput->setCardNo($cardNo); + } + + /** + * 有効期限設定 + * + * @param string $expire + */ + public function setExpire($expire) + { + $this->execTranInput->setExpire($expire); + } + + /** + * サイトID設定 + * @param string $siteID + */ + public function setSiteId($siteID) + { + $this->execTranInput->setSiteId($siteID); + } + + /** + * サイトパスワード設定 + * @param string $sitePass + */ + public function setSitePass($sitePass) + { + $this->execTranInput->setSitePass($sitePass); + } + + /** + * 会員ID設定 + * @param string $memberId + */ + public function setMemberId($memberId) + { + $this->execTranInput->setMemberId($memberId); + } + + /** + * カード登録連番設定 + * @param integer $cardseq + */ + public function setCardSeq($cardseq) + { + $this->execTranInput->setCardSeq($cardseq); + } + + /** + * カード連番モード設定 + * @param string $seqMode + */ + public function setSeqMode($seqMode) + { + $this->execTranInput->setSeqMode($seqMode); + } + + /** + * カードパスワード設定 + * @param string $cardPass + */ + public function setCardPass($cardPass) + { + $this->execTranInput->setCardPass($cardPass); + } + + + /** + * セキュリティコード設定 + * + * @param string $securityCode + */ + public function setSecurityCode($securityCode) + { + $this->execTranInput->setSecurityCode($securityCode); + } + + + /** + * HTTP_ACCEPT設定 + * + * @param string $httpAccept + */ + public function setHttpAccept($httpAccept) + { + $this->execTranInput->setHttpAccept($httpAccept); + } + + + /** + * HTTP_USER_AGENT設定 + * + * @param string $httpUserAgent + */ + public function setHttpUserAgent($httpUserAgent) + { + $this->execTranInput->setHttpUserAgent($httpUserAgent); + } + + + /** + * 加盟店自由項目1設定 + * + * @param string $clientField1 + */ + public function setClientField1($clientField1) + { + $this->execTranInput->setClientField1($clientField1); + } + + /** + * 加盟店自由項目2設定 + * + * @param string $clientField2 + */ + public function setClientField2($clientField2) + { + $this->execTranInput->setClientField2($clientField2); + } + + + /** + * 加盟店自由項目3設定 + * + * @param string $clientField3 + */ + public function setClientField3($clientField3) + { + $this->execTranInput->setClientField3($clientField3); + } + + /** + * 利用明細に記載される文言設定 + * + * @param string $displayInfo + */ + public function setDisplayInfo($displayInfo) + { + $this->execTranInput->setDisplayInfo($displayInfo); + } + + /** + * トークンタイプ設定 + * + * @param string $tokenType + */ + public function setTokenType($tokenType) + { + $this->execTranInput->setTokenType($tokenType); + } + + /** + * 加盟店戻りURL設定 + * + * @param string $retUrl + */ + public function setRetUrl($retUrl) + { + $this->execTranInput->setRetUrl($retUrl); + } + + /** + * モバイルアプリモード設定 + * + * @param string $appMode + */ + public function setAppMode($appMode) + { + $this->execTranInput->setAppMode($appMode); + } + + /** + * 3DS2.0 authentication challenge request type + */ + public function setTds2ChallengeIndType($tds2ChallengeIndType) + { + $this->execTranInput->setTds2ChallengeIndType($tds2ChallengeIndType); + } + + /** + * コールバック方法設定 + * + * @param string $callbackType + */ + public function setCallbackType($callbackType) + { + $this->execTranInput->setCallbackType($callbackType); + } + + /** + * カード会員最終更新日設定 + * + * @param string $tds2ChAccChange + */ + public function setTds2ChAccChange($tds2ChAccChange) + { + $this->execTranInput->setTds2ChAccChange($tds2ChAccChange); + } + + /** + * カード会員作成日設定 + * + * @param string $tds2ChAccDate + */ + public function setTds2ChAccDate($tds2ChAccDate) + { + $this->execTranInput->setTds2ChAccDate($tds2ChAccDate); + } + + /** + * カード会員パスワード変更日設定 + * + * @param string $tds2ChAccPwChange + */ + public function setTds2ChAccPwChange($tds2ChAccPwChange) + { + $this->execTranInput->setTds2ChAccPwChange($tds2ChAccPwChange); + } + + /** + * 過去6ヶ月間の購入回数設定 + * + * @param integer $tds2NbPurchaseAccount + */ + public function setTds2NbPurchaseAccount($tds2NbPurchaseAccount) + { + $this->execTranInput->setTds2NbPurchaseAccount($tds2NbPurchaseAccount); + } + + /** + * カード登録日設定 + * + * @param string $tds2PaymentAccAge + */ + public function setTds2PaymentAccAge($tds2PaymentAccAge) + { + $this->execTranInput->setTds2PaymentAccAge($tds2PaymentAccAge); + } + + /** + * 過去24時間のカード追加の試行回数設定 + * + * @param integer $tds2ProvisionAttemptsDay + */ + public function setTds2ProvisionAttemptsDay($tds2ProvisionAttemptsDay) + { + $this->execTranInput->setTds2ProvisionAttemptsDay($tds2ProvisionAttemptsDay); + } + + /** + * 配送先住所の初回使用日設定 + * + * @param string $tds2ShipAddressUsage + */ + public function setTds2ShipAddressUsage($tds2ShipAddressUsage) + { + $this->execTranInput->setTds2ShipAddressUsage($tds2ShipAddressUsage); + } + + /** + * カード会員名と配送先名の一致/不一致設定 + * + * @param string $tds2ShipNameInd + */ + public function setTds2ShipNameInd($tds2ShipNameInd) + { + $this->execTranInput->setTds2ShipNameInd($tds2ShipNameInd); + } + + /** + * カード会員の不審行為情報設定 + * + * @param string $tds2SuspiciousAccActivity + */ + public function setTds2SuspiciousAccActivity($tds2SuspiciousAccActivity) + { + $this->execTranInput->setTds2SuspiciousAccActivity($tds2SuspiciousAccActivity); + } + + /** + * 過去24時間の取引回数設定 + * + * @param integer $tds2TxnActivityDay + */ + public function setTds2TxnActivityDay($tds2TxnActivityDay) + { + $this->execTranInput->setTds2TxnActivityDay($tds2TxnActivityDay); + } + + /** + * 前年の取引回数設定 + * + * @param integer $tds2TxnActivityYear + */ + public function setTds2TxnActivityYear($tds2TxnActivityYear) + { + $this->execTranInput->setTds2TxnActivityYear($tds2TxnActivityYear); + } + + /** + * ログイン証跡設定 + * + * @param string $tds2ThreeDSReqAuthData + */ + public function setTds2ThreeDSReqAuthData($tds2ThreeDSReqAuthData) + { + $this->execTranInput->setTds2ThreeDSReqAuthData($tds2ThreeDSReqAuthData); + } + + /** + * ログイン方法設定 + * + * @param string $tds2ThreeDSReqAuthMethod + */ + public function setTds2ThreeDSReqAuthMethod($tds2ThreeDSReqAuthMethod) + { + $this->execTranInput->setTds2ThreeDSReqAuthMethod($tds2ThreeDSReqAuthMethod); + } + + /** + * ログイン日時設定 + * + * @param string $tds2ThreeDSReqAuthTimestamp + */ + public function setTds2ThreeDSReqAuthTimestamp($tds2ThreeDSReqAuthTimestamp) + { + $this->execTranInput->setTds2ThreeDSReqAuthTimestamp($tds2ThreeDSReqAuthTimestamp); + } + + /** + * 請求先住所と配送先住所の一致/不一致設定 + * + * @param string $tds2AddrMatch + */ + public function setTds2AddrMatch($tds2AddrMatch) + { + $this->execTranInput->setTds2AddrMatch($tds2AddrMatch); + } + + /** + * 請求先住所の都市設定 + * + * @param string $tds2BillAddrCity + */ + public function setTds2BillAddrCity($tds2BillAddrCity) + { + $this->execTranInput->setTds2BillAddrCity($tds2BillAddrCity); + } + + /** + * 請求先住所の国番号設定 + * + * @param string $tds2BillAddrCountry + */ + public function setTds2BillAddrCountry($tds2BillAddrCountry) + { + $this->execTranInput->setTds2BillAddrCountry($tds2BillAddrCountry); + } + + /** + * 請求先住所の区域部分の1行目設定 + * + * @param string $tds2BillAddrLine1 + */ + public function setTds2BillAddrLine1($tds2BillAddrLine1) + { + $this->execTranInput->setTds2BillAddrLine1($tds2BillAddrLine1); + } + + /** + * 請求先住所の区域部分の2行目設定 + * + * @param string $tds2BillAddrLine2 + */ + public function setTds2BillAddrLine2($tds2BillAddrLine2) + { + $this->execTranInput->setTds2BillAddrLine2($tds2BillAddrLine2); + } + + /** + * 請求先住所の区域部分の3行目設定 + * + * @param string $tds2BillAddrLine3 + */ + public function setTds2BillAddrLine3($tds2BillAddrLine3) + { + $this->execTranInput->setTds2BillAddrLine3($tds2BillAddrLine3); + } + + /** + * 請求先住所の郵便番号設定 + * + * @param string $tds2BillAddrPostCode + */ + public function setTds2BillAddrPostCode($tds2BillAddrPostCode) + { + $this->execTranInput->setTds2BillAddrPostCode($tds2BillAddrPostCode); + } + + /** + * 請求先住所の州または都道府県番号設定 + * + * @param string $tds2BillAddrState + */ + public function setTds2BillAddrState($tds2BillAddrState) + { + $this->execTranInput->setTds2BillAddrState($tds2BillAddrState); + } + + /** + * カード会員のメールアドレス設定 + * + * @param string $tds2Email + */ + public function setTds2Email($tds2Email) + { + $this->execTranInput->setTds2Email($tds2Email); + } + + /** + * 自宅電話の国コード設定 + * + * @param string $tds2HomePhoneCC + */ + public function setTds2HomePhoneCC($tds2HomePhoneCC) + { + $this->execTranInput->setTds2HomePhoneCC($tds2HomePhoneCC); + } + + /** + * 自宅電話番号設定 + * + * @param string $tds2HomePhoneSubscriber + */ + public function setTds2HomePhoneSubscriber($tds2HomePhoneSubscriber) + { + $this->execTranInput->setTds2HomePhoneSubscriber($tds2HomePhoneSubscriber); + } + + /** + * 携帯電話の国コード設定 + * + * @param string $tds2MobilePhoneCC + */ + public function setTds2MobilePhoneCC($tds2MobilePhoneCC) + { + $this->execTranInput->setTds2MobilePhoneCC($tds2MobilePhoneCC); + } + + /** + * 携帯電話番号設定 + * + * @param string $tds2MobilePhoneSubscriber + */ + public function setTds2MobilePhoneSubscriber($tds2MobilePhoneSubscriber) + { + $this->execTranInput->setTds2MobilePhoneSubscriber($tds2MobilePhoneSubscriber); + } + + /** + * 職場電話の国コード設定 + * + * @param string $tds2WorkPhoneCC + */ + public function setTds2WorkPhoneCC($tds2WorkPhoneCC) + { + $this->execTranInput->setTds2WorkPhoneCC($tds2WorkPhoneCC); + } + + /** + * 職場電話番号設定 + * + * @param string $tds2WorkPhoneSubscriber + */ + public function setTds2WorkPhoneSubscriber($tds2WorkPhoneSubscriber) + { + $this->execTranInput->setTds2WorkPhoneSubscriber($tds2WorkPhoneSubscriber); + } + + /** + * 配送先住所の都市設定 + * + * @param string $tds2ShipAddrCity + */ + public function setTds2ShipAddrCity($tds2ShipAddrCity) + { + $this->execTranInput->setTds2ShipAddrCity($tds2ShipAddrCity); + } + + /** + * 配送先住所の国番号設定 + * + * @param string $tds2ShipAddrCountry + */ + public function setTds2ShipAddrCountry($tds2ShipAddrCountry) + { + $this->execTranInput->setTds2ShipAddrCountry($tds2ShipAddrCountry); + } + + /** + * 配送先住所の区域部分の1行目設定 + * + * @param string $tds2ShipAddrLine1 + */ + public function setTds2ShipAddrLine1($tds2ShipAddrLine1) + { + $this->execTranInput->setTds2ShipAddrLine1($tds2ShipAddrLine1); + } + + /** + * 配送先住所の区域部分の2行目設定 + * + * @param string $tds2ShipAddrLine2 + */ + public function setTds2ShipAddrLine2($tds2ShipAddrLine2) + { + $this->execTranInput->setTds2ShipAddrLine2($tds2ShipAddrLine2); + } + + /** + * 配送先住所の区域部分の3行目設定 + * + * @param string $tds2ShipAddrLine3 + */ + public function setTds2ShipAddrLine3($tds2ShipAddrLine3) + { + $this->execTranInput->setTds2ShipAddrLine3($tds2ShipAddrLine3); + } + + /** + * 配送先住所の郵便番号設定 + * + * @param string $tds2ShipAddrPostCode + */ + public function setTds2ShipAddrPostCode($tds2ShipAddrPostCode) + { + $this->execTranInput->setTds2ShipAddrPostCode($tds2ShipAddrPostCode); + } + + /** + * 配送先住所の州または都道府県番号設定 + * + * @param string $tds2ShipAddrState + */ + public function setTds2ShipAddrState($tds2ShipAddrState) + { + $this->execTranInput->setTds2ShipAddrState($tds2ShipAddrState); + } + + /** + * 納品先電子メールアドレス設定 + * + * @param string $tds2DeliveryEmailAddress + */ + public function setTds2DeliveryEmailAddress($tds2DeliveryEmailAddress) + { + $this->execTranInput->setTds2DeliveryEmailAddress($tds2DeliveryEmailAddress); + } + + /** + * 商品納品時間枠設定 + * + * @param string $tds2DeliveryTimeframe + */ + public function setTds2DeliveryTimeframe($tds2DeliveryTimeframe) + { + $this->execTranInput->setTds2DeliveryTimeframe($tds2DeliveryTimeframe); + } + + /** + * プリペイドカードまたはギフトカードの総購入金額設定 + * + * @param string $tds2GiftCardAmount + */ + public function setTds2GiftCardAmount($tds2GiftCardAmount) + { + $this->execTranInput->setTds2GiftCardAmount($tds2GiftCardAmount); + } + + /** + * 購入されたプリペイドカードまたはギフトカード の総数設定 + * + * @param integer $tds2GiftCardCount + */ + public function setTds2GiftCardCount($tds2GiftCardCount) + { + $this->execTranInput->setTds2GiftCardCount($tds2GiftCardCount); + } + + /** + * 購入されたプリペイドカードまたはギフトカードの通貨コード設定 + * + * @param string $tds2GiftCardCurr + */ + public function setTds2GiftCardCurr($tds2GiftCardCurr) + { + $this->execTranInput->setTds2GiftCardCurr($tds2GiftCardCurr); + } + + /** + * 商品の発売予定日設定 + * + * @param string $tds2PreOrderDate + */ + public function setTds2PreOrderDate($tds2PreOrderDate) + { + $this->execTranInput->setTds2PreOrderDate($tds2PreOrderDate); + } + + /** + * 商品の販売時期情報設定 + * + * @param string $tds2PreOrderPurchaseInd + */ + public function setTds2PreOrderPurchaseInd($tds2PreOrderPurchaseInd) + { + $this->execTranInput->setTds2PreOrderPurchaseInd($tds2PreOrderPurchaseInd); + } + + /** + * 商品の注文情報設定 + * + * @param string $tds2ReorderItemsInd + */ + public function setTds2ReorderItemsInd($tds2ReorderItemsInd) + { + $this->execTranInput->setTds2ReorderItemsInd($tds2ReorderItemsInd); + } + + /** + * 取引の配送方法設定 + * + * @param string $tds2ShipInd + */ + public function setTds2ShipInd($tds2ShipInd) + { + $this->execTranInput->setTds2ShipInd($tds2ShipInd); + } + + /** + * 継続課金の期限設定 + * + * @param string $tds2RecurringExpiry + */ + public function setTds2RecurringExpiry($tds2RecurringExpiry) + { + $this->execTranInput->setTds2RecurringExpiry($tds2RecurringExpiry); + } + + /** + * 継続課金の課金最小間隔日数設定 + * + * @param integer $tds2RecurringFrequency + */ + public function setTds2RecurringFrequency($tds2RecurringFrequency) + { + $this->execTranInput->setTds2RecurringFrequency($tds2RecurringFrequency); } } -?> +?> \ No newline at end of file diff --git a/src/Input/EntryTranInput.php b/src/Input/EntryTranInput.php index 4bf10aa..5d6d5b1 100644 --- a/src/Input/EntryTranInput.php +++ b/src/Input/EntryTranInput.php @@ -2,6 +2,9 @@ namespace Gineign\GmoPayment\Input; +use Gineign\GmoPayment\Input\BaseInput; + +#require_once 'com/gmo_pg/client/input/BaseInput.php'; /** * 取引登録 入力パラメータクラス * @@ -12,300 +15,327 @@ * @version 1.0 * @created 01-01-2008 00:00:00 */ -class EntryTranInput extends BaseInput -{ - - /** - * @var string GMO-PGが発行する、PGカード決済サービス中で加盟店様を識別するID - */ - private $shopId; - - /** - * @var string ショップIDと対になるパスワード - */ - private $shopPass; - - /** - * @var string 加盟店様が発行する、オーダー取引を識別するID - */ - private $orderId; - - /** - * @var string 処理区分 - */ - private $jobCd; - - /** - * @var string カード会社が定義する、商材を表すコード - */ - private $itemCode; - - /** - * @var integer $amount - */ - private $amount; - - /** - * @var integer $tax - */ - private $tax; - - /** - * @var string 3Dセキュアの利用有無を表すフラグ - */ - private $tdFlag; - - /** - * @var string 3Dセキュアの本人認証画面で表示される店舗名 - */ - private $tdTenantName; - - - /** - * コンストラクタ - * - * @param array $params 入力パラメータ - */ - public function __construct($params = null) - { - parent::__construct($params); - } - - /** - * デフォルト値設定 - */ - public function setDefaultValues() - { - // 商品コード +class EntryTranInput extends BaseInput { + + /** + * @var string GMO-PGが発行する、PGカード決済サービス中で加盟店様を識別するID + */ + private $shopId; + + /** + * @var string ショップIDと対になるパスワード + */ + private $shopPass; + + /** + * @var string 加盟店様が発行する、オーダー取引を識別するID + */ + private $orderId; + + /** + * @var string 処理区分 + */ + private $jobCd; + + /** + * @var string カード会社が定義する、商材を表すコード + */ + private $itemCode; + + /** + * @var integer $amount + */ + private $amount; + + /** + * @var integer $tax + */ + private $tax; + + /** + * @var string 3Dセキュアの利用有無を表すフラグ + */ + private $tdFlag; + + /** + * @var string 3Dセキュアの本人認証画面で表示される店舗名 + */ + private $tdTenantName; + + /** + * @var string 3DS2.0非対応時取り扱い + */ + private $tds2Type; + + /** + * @var string 3DS必須タイプ + */ + private $tdRequired; + + /** + * コンストラクタ + * + * @param array $params 入力パラメータ + */ + public function __construct($params = null) { + parent::__construct($params); + } + + + + /** + * 利用金額取得 + * @return integer 利用金額 + */ + public function getAmount() { + return $this->amount; + } + + /** + * 商品コード取得 + * @return string 商品コード + */ + public function getItemCode() { + return $this->itemCode; + } + + /** + * 処理区分取得 + * @return string 処理区分 + */ + public function getJobCd() { + return $this->jobCd; + } + + /** + * オーダーID取得 + * @return string オーダーID + */ + public function getOrderId() { + return $this->orderId; + } + + /** + * ショップID取得 + * @return string ショップID + */ + public function getShopId() { + return $this->shopId; + } + + /** + * ショップパスワード取得 + * @return string ショップパスワード + */ + public function getShopPass() { + return $this->shopPass; + } + + /** + * 税送料取得 + * @return integer 税送料 + */ + public function getTax() { + return $this->tax; + } + + /** + * 3Dセキュア使用フラグ取得 + * @return string 3Dセキュア使用フラグ + */ + public function getTdFlag() { + return $this->tdFlag; + } + + /** + * 3Dセキュア表示店舗名取得 + * @return string 3Dセキュア表示店舗名 + */ + public function getTdTenantName() { + return $this->tdTenantName; + } + + /** + * 3DS2.0非対応時取り扱い取得 + * @return string 3DS2.0非対応時取り扱い + */ + public function getTds2Type() { + return $this->tds2Type; + } + + /** + * 3DS必須タイプ + * @return string 3DS必須タイプ + */ + public function getTdRequired() { + return $this->tdRequired; + } + + /** + * 利用金額設定 + * + * @param integer $amount + */ + public function setAmount($amount) { + $this->amount = $amount; + } + + /** + * 商品コード設定 + * + * @param string $itemCode + */ + public function setItemCode($itemCode) { + $this->itemCode = $itemCode; + } + + /** + * 処理区分設定 + * + * @param string $jobCd + */ + public function setJobCd($jobCd) { + $this->jobCd = $jobCd; + } + + /** + * オーダーID設定 + * + * @param string $orderId + */ + public function setOrderId($orderId) { + $this->orderId = $orderId; + } + + /** + * ショップID設定 + * + * @param string $shopId + */ + public function setShopId($shopId) { + $this->shopId = $shopId; + } + + /** + * ショップパスワード設定 + * + * @param string $shopPass + */ + public function setShopPass($shopPass) { + $this->shopPass = $shopPass; + } + + /** + * 税送料設定 + * + * @param integer $tax + */ + public function setTax($tax) { + $this->tax = $tax; + } + + /** + * 3Dセキュア表示店舗名設定 + * + * @param string $tdTenantName + */ + public function setTdTenantName($tdTenantName) { + $this->tdTenantName = $tdTenantName; + } + + /** + * 3Dセキュア使用フラグ設定 + * + * @param string $tdFlag + */ + public function setTdFlag($tdFlag) { + $this->tdFlag = $tdFlag; + } + + /** + * 3DS2.0非対応時取り扱い + * + * @param string $tds2Type + */ + public function setTds2Type($tds2Type) { + $this->tds2Type = $tds2Type; + } + + /** + * 3DS必須タイプ + * + * @param string $tdRequired + */ + public function setTdRequired($tdRequired) { + $this->tdRequired = $tdRequired; + } + + /** + * デフォルト値設定 + */ + public function setDefaultValues() { + // 商品コード $this->setItemCode('0000990'); // 3Dセキュア利用フラグ(デフォルトは0=使用しない) $this->setTdFlag('0'); - } - - /** - * 入力パラメータ群の値を設定する - * - * @param IgnoreCaseMap $params 入力パラメータ - */ - public function setInputValues($params) - { - // 入力パラメータがnullの場合は設定処理を行わない - if (is_null($params)) { - return; - } - - // 各項目の設定(Amount,Taxは値が数値でないものは無効とする) - $this->setShopId($this->getStringValue($params, 'ShopID', $this->getShopId())); - $this->setShopPass($this->getStringValue($params, 'ShopPass', $this->getShopPass())); + } + + /** + * 入力パラメータ群の値を設定する + * + * @param IgnoreCaseMap $params 入力パラメータ + */ + public function setInputValues($params) { + // 入力パラメータがnullの場合は設定処理を行わない + if (is_null($params)) { + return; + } + + // 各項目の設定(Amount,Taxは値が数値でないものは無効とする) + $this->setShopId($this->getStringValue($params, 'ShopID', $this->getShopId())); + $this->setShopPass($this->getStringValue($params, 'ShopPass', $this->getShopPass())); $this->setOrderId($this->getStringValue($params, 'OrderID', $this->getOrderId())); - $this->setJobCd($this->getStringValue($params, 'JobCd', $this->getJobCd())); - $this->setItemCode($this->getStringValue($params, 'ItemCode', $this->getItemCode())); - $this->setAmount($this->getIntegerValue($params, 'Amount', $this->getAmount())); - $this->setTax($this->getIntegerValue($params, 'Tax', $this->getTax())); - $this->setTdFlag($this->getStringValue($params, 'TdFlag', $this->getTdFlag())); - $this->setTdTenantName($this->getStringValue($params, 'TdTenantName', $this->getTdTenantName())); - } - - /** - * ショップID取得 - * @return string ショップID - */ - public function getShopId() - { - return $this->shopId; - } - - /** - * ショップID設定 - * - * @param string $shopId - */ - public function setShopId($shopId) - { - $this->shopId = $shopId; - } - - /** - * ショップパスワード取得 - * @return string ショップパスワード - */ - public function getShopPass() - { - return $this->shopPass; - } - - /** - * ショップパスワード設定 - * - * @param string $shopPass - */ - public function setShopPass($shopPass) - { - $this->shopPass = $shopPass; - } - - /** - * オーダーID取得 - * @return string オーダーID - */ - public function getOrderId() - { - return $this->orderId; - } - - /** - * オーダーID設定 - * - * @param string $orderId - */ - public function setOrderId($orderId) - { - $this->orderId = $orderId; - } - - /** - * 処理区分取得 - * @return string 処理区分 - */ - public function getJobCd() - { - return $this->jobCd; - } - - /** - * 処理区分設定 - * - * @param string $jobCd - */ - public function setJobCd($jobCd) - { - $this->jobCd = $jobCd; - } - - /** - * 商品コード取得 - * @return string 商品コード - */ - public function getItemCode() - { - return $this->itemCode; - } - - /** - * 商品コード設定 - * - * @param string $itemCode - */ - public function setItemCode($itemCode) - { - $this->itemCode = $itemCode; - } - - /** - * 利用金額取得 - * @return integer 利用金額 - */ - public function getAmount() - { - return $this->amount; - } - - /** - * 利用金額設定 - * - * @param integer $amount - */ - public function setAmount($amount) - { - $this->amount = $amount; - } - - /** - * 税送料取得 - * @return integer 税送料 - */ - public function getTax() - { - return $this->tax; - } - - /** - * 税送料設定 - * - * @param integer $tax - */ - public function setTax($tax) - { - $this->tax = $tax; - } - - /** - * 3Dセキュア使用フラグ取得 - * @return string 3Dセキュア使用フラグ - */ - public function getTdFlag() - { - return $this->tdFlag; - } - - /** - * 3Dセキュア使用フラグ設定 - * - * @param string $tdFlag - */ - public function setTdFlag($tdFlag) - { - $this->tdFlag = $tdFlag; - } - - /** - * 3Dセキュア表示店舗名取得 - * @return string 3Dセキュア表示店舗名 - */ - public function getTdTenantName() - { - return $this->tdTenantName; - } - - /** - * 3Dセキュア表示店舗名設定 - * - * @param string $tdTenantName - */ - public function setTdTenantName($tdTenantName) - { - $this->tdTenantName = $tdTenantName; - } - - /** - * 文字列表現 - * @return string 接続文字列表現 - */ - public function toString() - { - - $str = 'ShopID=' . $this->encodeStr($this->getShopId()); - $str .= '&'; - $str .= 'ShopPass=' . $this->encodeStr($this->getShopPass()); - $str .= '&'; - $str .= 'OrderID=' . $this->encodeStr($this->getOrderId()); - $str .= '&'; - $str .= 'JobCd=' . $this->encodeStr($this->getJobCd()); - $str .= '&'; - $str .= 'ItemCode=' . $this->encodeStr($this->getItemCode()); - $str .= '&'; - $str .= 'Amount=' . $this->encodeStr($this->getAmount()); - $str .= '&'; - $str .= 'Tax=' . $this->encodeStr($this->getTax()); - $str .= '&'; - $str .= 'TdFlag=' . $this->encodeStr($this->getTdFlag()); - $str .= '&'; - $str .= 'TdTenantName=' . $this->encodeStr($this->getTdTenantName()); - - return $str; - } + $this->setJobCd($this->getStringValue($params, 'JobCd', $this->getJobCd())); + $this->setItemCode($this->getStringValue($params, 'ItemCode', $this->getItemCode())); + $this->setAmount($this->getIntegerValue($params, 'Amount', $this->getAmount())); + $this->setTax($this->getIntegerValue($params, 'Tax', $this->getTax())); + $this->setTdFlag($this->getStringValue($params, 'TdFlag', $this->getTdFlag())); + $this->setTdTenantName($this->getStringValue($params, 'TdTenantName', $this->getTdTenantName())); + $this->setTds2Type($this->getStringValue($params, 'Tds2Type', $this->getTds2Type())); + $this->setTdRequired($this->getStringValue($params, 'TdRequired', $this->getTdRequired())); + } + + /** + * 文字列表現 + * @return string 接続文字列表現 + */ + public function toString() { + + $str = 'ShopID=' . $this->encodeStr($this->getShopId()); + $str .= '&'; + $str .= 'ShopPass=' . $this->encodeStr($this->getShopPass()); + $str .= '&'; + $str .= 'OrderID=' . $this->encodeStr($this->getOrderId()); + $str .= '&'; + $str .= 'JobCd=' . $this->encodeStr($this->getJobCd()); + $str .= '&'; + $str .= 'ItemCode=' . $this->encodeStr($this->getItemCode()); + $str .= '&'; + $str .= 'Amount=' . $this->encodeStr($this->getAmount()); + $str .= '&'; + $str .= 'Tax=' . $this->encodeStr($this->getTax()); + $str .= '&'; + $str .= 'TdFlag=' . $this->encodeStr($this->getTdFlag()); + $str .= '&'; + $str .= 'TdTenantName=' . $this->encodeStr($this->getTdTenantName()); + $str .= '&'; + $str .= 'Tds2Type=' . $this->encodeStr($this->getTds2Type()); + $str .= '&'; + $str .= 'TdRequired=' . $this->encodeStr($this->getTdRequired()); + + return $str; + } } - -?> +?> \ No newline at end of file diff --git a/src/Input/ExecTranInput.php b/src/Input/ExecTranInput.php index ca7027d..5510e2a 100644 --- a/src/Input/ExecTranInput.php +++ b/src/Input/ExecTranInput.php @@ -2,6 +2,9 @@ namespace Gineign\GmoPayment\Input; +use Gineign\GmoPayment\Input\BaseInput; + +#require_once 'com/gmo_pg/client/input/BaseInput.php'; /** * 決済実行 入力パラメータクラス * @@ -12,660 +15,1878 @@ * @version 1.0 * @created 01-01-2008 00:00:00 */ -class ExecTranInput extends BaseInput -{ - - /** - * @var string 取引ID。GMO-PGが払い出した、取引を特定するID - */ - private $accessId; - - /** - * @var string 取引パスワード。取引IDと対になるパスワード - */ - private $accessPass; - - /** - * @var string オーダーID。加盟店様が発番した、取引を表すID - */ - private $orderId; - - /** - * @var string 支払方法 - */ - private $method; - - /** - * @var integer 支払回数 - */ - private $payTimes; - - /** - * @var string カード番号 +class ExecTranInput extends BaseInput { + + /** + * @var string 取引ID。GMO-PGが払い出した、取引を特定するID + */ + private $accessId; + + /** + * @var string 取引パスワード。取引IDと対になるパスワード + */ + private $accessPass; + + /** + * @var string オーダーID。加盟店様が発番した、取引を表すID + */ + private $orderId; + + /** + * @var string 支払方法 + */ + private $method; + + /** + * @var integer 支払回数 + */ + private $payTimes; + + /** + * @var string カード番号 + */ + private $cardNo; + + /** + * @var string トークン + */ + private $token; + + /** + * @var string サイトID + */ + private $siteId; + + /** + * @var string サイトパスワード + */ + private $sitePass; + + /** + * @var string 会員ID + */ + private $memberId; + + /** + * @var string カード連番モード + */ + private $seqMode; + + /** + * @var integer 登録カード連番 + */ + private $cardSeq; + + /** + * @var string カードパスワード + */ + private $cardPass; + + /** + * @var string 有効期限 + */ + private $expire; + + /** + * @var string セキュリティコード + */ + private $securityCode; + + /** + * @var string HTTP_ACCEPT + */ + private $httpAccept; + + /** + * @var string HTTP_USER_AGENT + */ + private $httpUserAgent; + + /** + * @var string 加盟店自由項目1 + */ + private $clientField1; + + /** + * @var string 加盟店自由項目 + */ + private $clientField2; + + /** + * @var string 加盟店自由項目3 + */ + private $clientField3; + + /** + * @var string 加盟店自由項目返却フラグ + */ + private $clientFieldFlag; + + /** + * @var string 使用端末情報 */ - private $cardNo; + private $deviceCategory; /** - * @var string トークン + * @var string 利用明細に記載される文言 */ - private $token; + private $displayInfo; /** - * @var string サイトID + * @var string トークンタイプ */ - private $siteId; + private $tokenType; - /** - * @var string サイトパスワード + /** + * @var string 加盟店戻りURL */ - private $sitePass; + private $retUrl; /** - * @var string 会員ID + * @var string モバイルアプリモード */ - private $memberId; + private $appMode; - /** - * @var string カード連番モード - */ - private $seqMode; + private $tds2ChallengeIndType; - /** - * @var integer 登録カード連番 - */ - private $cardSeq; /** - * @var string カードパスワード + * @var string コールバック方法 */ - private $cardPass; + private $callbackType; /** - * @var string 有効期限 + * @var string カード会員最終更新日 */ - private $expire; + private $tds2ChAccChange; /** - * @var string セキュリティコード + * @var string カード会員作成日 */ - private $securityCode; + private $tds2ChAccDate; /** - * @var string HTTP_ACCEPT + * @var string カード会員パスワード変更日 */ - private $httpAccept; + private $tds2ChAccPwChange; /** - * @var string HTTP_USER_AGENT + * @var integer 過去6ヶ月間の購入回数 */ - private $httpUserAgent; + private $tds2NbPurchaseAccount; /** - * @var string 加盟店自由項目1 + * @var string カード登録日 */ - private $clientField1; + private $tds2PaymentAccAge; /** - * @var string 加盟店自由項目 + * @var integer 過去24時間のカード追加の試行回数 */ - private $clientField2; + private $tds2ProvisionAttemptsDay; /** - * @var string 加盟店自由項目3 + * @var string 配送先住所の初回使用日 */ - private $clientField3; + private $tds2ShipAddressUsage; /** - * @var string 加盟店自由項目返却フラグ + * @var string カード会員名と配送先名の一致/不一致 */ - private $clientFieldFlag; + private $tds2ShipNameInd; /** - * @var string 使用端末情報 + * @var string カード会員の不審行為情報 */ - private $deviceCategory; + private $tds2SuspiciousAccActivity; /** - * @var string 利用明細に記載される文言 + * @var integer 過去24時間の取引回数 */ - private $displayInfo; + private $tds2TxnActivityDay; /** - * @var string トークンタイプ + * @var integer 前年の取引回数 */ - private $tokenType; + private $tds2TxnActivityYear; /** - * コンストラクタ - * - * @param array $params 入力パラメータ + * @var string ログイン証跡 */ - public function __construct($params = null) - { - parent::__construct($params); - } + private $tds2ThreeDSReqAuthData; /** - * デフォルト値を設定する + * @var string ログイン方法 */ - public function setDefaultValues() - { - // 加盟店自由項目返却フラグ(固定値) - $this->clientFieldFlag = "1"; - // 使用端末情報(固定値) - $this->deviceCategory = "0"; - } + private $tds2ThreeDSReqAuthMethod; /** - * 入力パラメータ群の値を設定する - * - * @param IgnoreCaseMap $params 入力パラメータ + * @var string ログイン日時 */ - public function setInputValues($params) - { - // 入力パラメータがnullの場合は設定処理を行わない - if (is_null($params)) { - return; - } - - // 各項目の設定(PayTimesは値が数値でないものは無効とする) - $this->setAccessId($this->getStringValue($params, 'AccessID', $this->getAccessId())); - $this->setAccessPass($this->getStringValue($params, 'AccessPass', $this->getAccessPass())); - $this->setOrderId($this->getStringValue($params, 'OrderID', $this->getOrderId())); - $this->setMethod($this->getStringValue($params, 'Method', $this->getMethod())); - $this->setPayTimes($this->getIntegerValue($params, 'PayTimes', $this->getPayTimes())); - $this->setCardNo($this->getStringValue($params, 'CardNo', $this->getCardNo())); - $this->setToken($this->getStringValue($params, 'Token', $this->getToken())); - $this->setSiteId($this->getStringValue($params, 'SiteID', $this->getSiteId())); - $this->setSitePass($this->getStringValue($params, 'SitePass', $this->getSitePass())); - $this->setMemberId($this->getStringValue($params, 'MemberID', $this->getMemberId())); - $this->setSeqMode($this->getStringValue($params, 'SeqMode', $this->getSeqMode())); - $this->setCardSeq($this->getIntegerValue($params, 'CardSeq', $this->getCardSeq())); - $this->setCardPass($this->getStringValue($params, 'CardPass', $this->getCardPass())); - $this->setExpire($this->getStringValue($params, 'Expire', $this->getExpire())); - $this->setSecurityCode($this->getStringValue($params, 'SecurityCode', $this->getSecurityCode())); - $this->setHttpAccept($this->getStringValue($params, 'HttpAccept', $this->getHttpAccept())); - $this->setHttpUserAgent($this->getStringValue($params, 'HttpUserAgent', $this->getHttpUserAgent())); - $this->setClientField1($this->getStringValue($params, 'ClientField1', $this->getClientField1())); - $this->setClientField2($this->getStringValue($params, 'ClientField2', $this->getClientField2())); - $this->setClientField3($this->getStringValue($params, 'ClientField3', $this->getClientField3())); - $this->setDisplayInfo($this->getStringValue($params, 'DisplayInfo', $this->getDisplayInfo())); - $this->setTokenType($this->getStringValue($params, 'TokenType', $this->getTokenType())); - } - + private $tds2ThreeDSReqAuthTimestamp; /** - * 取引ID取得 - * @return string 取引ID + * @var string 請求先住所と配送先住所の一致/不一致 */ - public function getAccessId() - { - return $this->accessId; - } + private $tds2AddrMatch; /** - * 取引ID設定 - * - * @param string $accessId 取引ID + * @var string 請求先住所の都市 */ - public function setAccessId($accessId) - { - $this->accessId = $accessId; - } + private $tds2BillAddrCity; /** - * 取引パスワード取得 - * @return string 取引パスワード + * @var string 請求先住所の国番号 */ - public function getAccessPass() - { - return $this->accessPass; - } + private $tds2BillAddrCountry; /** - * 取引パスワードを設定 - * - * @param string $accessPass 取引パスワード + * @var string 請求先住所の区域部分の1行目 */ - public function setAccessPass($accessPass) - { - $this->accessPass = $accessPass; - } + private $tds2BillAddrLine1; /** - * オーダーID取得 - * @return string オーダーID + * @var string 請求先住所の区域部分の2行目 */ - public function getOrderId() - { - return $this->orderId; - } + private $tds2BillAddrLine2; /** - * オーダーID設定 - * - * @param string $orderId オーダーID + * @var string 請求先住所の区域部分の3行目 */ - public function setOrderId($orderId) - { - $this->orderId = $orderId; - } + private $tds2BillAddrLine3; /** - * 支払い方法取得 - * @return string 支払方法 + * @var string 請求先住所の郵便番号 */ - public function getMethod() - { - return $this->method; - } + private $tds2BillAddrPostCode; /** - * 支払い方法設定 - * - * @param string $method 支払い方法 + * @var string 請求先住所の州または都道府県番号 */ - public function setMethod($method) - { - $this->method = $method; - } + private $tds2BillAddrState; /** - * 支払回数取得 - * @return integer 支払回数 + * @var string カード会員のメールアドレス */ - public function getPayTimes() - { - return $this->payTimes; - } + private $tds2Email; /** - * 支払回数設定 - * - * @param integer $payTimes 支払回数 + * @var string 自宅電話の国コード */ - public function setPayTimes($payTimes) - { - $this->payTimes = $payTimes; - } + private $tds2HomePhoneCC; /** - * カード番号取得 - * @return string カード番号 + * @var string 自宅電話番号 */ - public function getCardNo() - { - return $this->cardNo; - } + private $tds2HomePhoneSubscriber; /** - * カード番号設定 - * - * @param string $cardNo カード番号 + * @var string 携帯電話の国コード */ - public function setCardNo($cardNo) - { - $this->cardNo = $cardNo; - } + private $tds2MobilePhoneCC; /** - * トークン取得 - * @return string トークン + * @var string 携帯電話番号 */ - public function getToken() - { - return $this->token; - } + private $tds2MobilePhoneSubscriber; /** - *トークン設定 - * - * @param string $token トークン + * @var string 職場電話の国コード */ - public function setToken($token) - { - $this->token = $token; - } + private $tds2WorkPhoneCC; /** - * サイトID取得 - * @return string サイトID + * @var string 職場電話番号 */ - public function getSiteId() - { - return $this->siteId; - } + private $tds2WorkPhoneSubscriber; /** - * サイトID設定 - * @param string $siteId サイトID + * @var string 配送先住所の都市 */ - public function setSiteId($siteId) - { - $this->siteId = $siteId; - } + private $tds2ShipAddrCity; /** - * サイトパスワード取得 - * @return string サイトパスワード + * @var string 配送先住所の国番号 */ - public function getSitePass() - { - return $this->sitePass; - } + private $tds2ShipAddrCountry; /** - * サイトパスワード設定 - * - * @param string $sitePass サイトパスワード + * @var string 配送先住所の区域部分の1行目 */ - public function setSitePass($sitePass) - { - $this->sitePass = $sitePass; - } + private $tds2ShipAddrLine1; /** - * 会員ID取得 - * @return string 会員ID + * @var string 配送先住所の区域部分の2行目 */ - public function getMemberId() - { - return $this->memberId; - } + private $tds2ShipAddrLine2; /** - * 会員ID設定 - * - * @param string $memberId 会員ID + * @var string 配送先住所の区域部分の3行目 */ - public function setMemberId($memberId) - { - $this->memberId = $memberId; - } + private $tds2ShipAddrLine3; /** - * カード連番指定モード取得 - * @return string カード連番指定モード + * @var string 配送先住所の郵便番号 */ - public function getSeqMode() - { - return $this->seqMode; - } + private $tds2ShipAddrPostCode; /** - * カード連番指定モード設定 - * @param string $seqMode カード連番指定モード + * @var string 配送先住所の州または都道府県番号 */ - public function setSeqMode($seqMode) - { - $this->seqMode = $seqMode; - } + private $tds2ShipAddrState; /** - * 登録カード連番取得 - * @return integer 登録カード連番 + * @var string 納品先電子メールアドレス */ - public function getCardSeq() - { - return $this->cardSeq; - } + private $tds2DeliveryEmailAddress; /** - * 登録カード連番設定 - * @param integer $cardSeq 登録カード連番 + * @var string 商品納品時間枠 */ - public function setCardSeq($cardSeq) - { - $this->cardSeq = $cardSeq; - } + private $tds2DeliveryTimeframe; /** - * カードパスワード取得 - * @return string カードパスワード + * @var string プリペイドカードまたはギフトカードの総購入金額 */ - public function getCardPass() - { - return $this->cardPass; - } + private $tds2GiftCardAmount; /** - * カードパスワード設定 - * @param string $cardPass カードパスワード + * @var integer 購入されたプリペイドカードまたはギフトカード の総数 */ - public function setCardPass($cardPass) - { - $this->cardPass = $cardPass; - } + private $tds2GiftCardCount; /** - * 有効期限取得 - * @return string 有効期限(YYMM) + * @var string 購入されたプリペイドカードまたはギフトカードの通貨コード */ - public function getExpire() - { - return $this->expire; - } + private $tds2GiftCardCurr; /** - * 有効期限設定 - * - * @param string $expire 有効期限(YYMM) + * @var string 商品の発売予定日 */ - public function setExpire($expire) - { - $this->expire = $expire; - } + private $tds2PreOrderDate; /** - * セキュリティコード取得 - * @return string セキュリティコード + * @var string 商品の販売時期情報 */ - public function getSecurityCode() - { - return $this->securityCode; - } + private $tds2PreOrderPurchaseInd; /** - * セキュリティコード設定 - * - * @param string $securityCode セキュリティコード + * @var string 商品の注文情報 */ - public function setSecurityCode($securityCode) - { - $this->securityCode = $securityCode; - } + private $tds2ReorderItemsInd; /** - * HTTP_ACCEPT取得 - * @return string HTTP_ACCEPT + * @var string 取引の配送方法 */ - public function getHttpAccept() - { - return $this->httpAccept; - } + private $tds2ShipInd; /** - * HTTP_ACCEPT設定 - * - * @param string $httpAccept HTTP_ACCEPT + * @var string 継続課金の期限 */ - public function setHttpAccept($httpAccept) - { - $this->httpAccept = $httpAccept; - } + private $tds2RecurringExpiry; /** - * HTTP_USER_AGENT取得 - * @return string HTTP_USER_AGENT + * @var integer 継続課金の課金最小間隔日数 */ - public function getHttpUserAgent() - { - return $this->httpUserAgent; - } + private $tds2RecurringFrequency; - /** - * HTTP_USER_AGENT設定 - * - * @param string $httpUserAgent HTTP_USER_AGENT - */ - public function setHttpUserAgent($httpUserAgent) - { - $this->httpUserAgent = $httpUserAgent; - } - /** - * 加盟店自由項目1取得 - * @return string 加盟店自由項目1 - */ - public function getClientField1() - { - return $this->clientField1; - } /** - * 加盟店自由項目1設定 - * - * @param string $clientField1 加盟店自由項目1 - */ - public function setClientField1($clientField1) - { - $this->clientField1 = $clientField1; - } + * コンストラクタ + * + * @param array $params 入力パラメータ + */ + public function __construct($params = null) { + parent::__construct($params); + } - /** - * 加盟店自由項目2取得 - * @return string 加盟店自由項目2 - */ - public function getClientField2() - { - return $this->clientField2; - } + /** + * デフォルト値を設定する + */ + public function setDefaultValues() { + // 加盟店自由項目返却フラグ(固定値) + $this->clientFieldFlag = "1"; + // 使用端末情報(固定値) + $this->deviceCategory = "0"; + } - /** - * 加盟店自由項目2設定 - * - * @param string $clientField2 加盟店自由項目2 - */ - public function setClientField2($clientField2) - { - $this->clientField2 = $clientField2; - } + /** + * 入力パラメータ群の値を設定する + * + * @param IgnoreCaseMap $params 入力パラメータ + */ + public function setInputValues($params) { + // 入力パラメータがnullの場合は設定処理を行わない + if (is_null($params)) { + return; + } - /** - * 加盟店自由項目3取得 - * @return string 加盟店自由項目3 - */ - public function getClientField3() - { - return $this->clientField3; - } - /** - * 加盟店自由項目3設定 - * - * @param string $clientField3 加盟店自由項目3 - */ - public function setClientField3($clientField3) - { - $this->clientField3 = $clientField3; - } - - /** - * 利用明細に記載される文言取得 - * @return string 利用明細に記載される文言 - */ - public function getDisplayInfo() - { - return $this->displayInfo; - } - - /** - * 利用明細に記載される文言設定 - * - * @param string $clientField3 利用明細に記載される文言 - */ - public function setDisplayInfo($displayInfo) - { - $this->displayInfo = $displayInfo; - } - - /** - * トークンタイプ取得 - * @return string トークンタイプ - */ - public function getTokenType() - { - return $this->tokenType; - } - - /** - * トークンタイプ設定 - * - * @param string $tokneType トークンタイプ - */ - public function setTokenType($tokneType) - { - $this->tokenType = $tokneType; - } - - /** - * 文字列表現 - * URLのパラメータ文字列の形式の文字列を生成する - * @return string 接続文字列表現 - */ - public function toString() - { - - $str = 'AccessID=' . $this->encodeStr($this->getAccessId()); - $str .= '&'; - $str .= 'AccessPass=' . $this->encodeStr($this->getAccessPass()); - $str .= '&'; - $str .= 'OrderID=' . $this->encodeStr($this->getOrderId()); - $str .= '&'; - $str .= 'Method=' . $this->encodeStr($this->getMethod()); - $str .= '&'; - $str .= 'PayTimes=' . $this->encodeStr($this->getPayTimes()); - $str .= '&'; - $str .= 'CardNo=' . $this->encodeStr($this->getCardNo()); - $str .= '&'; - $str .= 'Token=' . $this->encodeStr($this->getToken()); - $str .= '&'; - $str .= 'SiteID=' . $this->encodeStr($this->getSiteId()); - $str .= '&'; - $str .= 'SitePass=' . $this->encodeStr($this->getSitePass()); - $str .= '&'; - $str .= 'MemberID=' . $this->encodeStr($this->getMemberId()); - $str .= '&'; - $str .= 'SeqMode=' . $this->encodeStr($this->getSeqMode()); - $str .= '&'; - $str .= 'CardSeq=' . $this->encodeStr($this->getCardSeq()); - $str .= '&'; - $str .= 'CardPass=' . $this->encodeStr($this->getCardPass()); - $str .= '&'; - $str .= 'Expire=' . $this->encodeStr($this->getExpire()); - $str .= '&'; - $str .= 'SecurityCode=' . $this->encodeStr($this->getSecurityCode()); - $str .= '&'; - $str .= 'HttpAccept=' . $this->encodeStr($this->getHttpAccept()); - $str .= '&'; - $str .= 'HttpUserAgent=' . $this->encodeStr($this->getHttpUserAgent()); - $str .= '&'; - $str .= 'ClientField1=' . $this->encodeStr($this->getClientField1()); - $str .= '&'; - $str .= 'ClientField2=' . $this->encodeStr($this->getClientField2()); - $str .= '&'; - $str .= 'ClientField3=' . $this->encodeStr($this->getClientField3()); - $str .= '&'; - $str .= 'ClientFieldFlag=' . $this->clientFieldFlag; - $str .= '&'; - $str .= 'DeviceCategory=' . $this->deviceCategory; - $str .= '&'; - $str .= 'DisplayInfo=' . $this->encodeStr($this->getDisplayInfo()); - $str .= '&'; - $str .= 'TokenType=' . $this->encodeStr($this->getTokenType()); - - return $str; - } + // 各項目の設定(PayTimesは値が数値でないものは無効とする) + $this->setAccessId($this->getStringValue($params, 'AccessID', $this->getAccessId())); + $this->setAccessPass($this->getStringValue($params, 'AccessPass', $this->getAccessPass())); + $this->setOrderId($this->getStringValue($params, 'OrderID', $this->getOrderId())); + $this->setMethod($this->getStringValue($params, 'Method', $this->getMethod())); + $this->setPayTimes($this->getIntegerValue($params, 'PayTimes', $this->getPayTimes())); + $this->setCardNo($this->getStringValue($params, 'CardNo', $this->getCardNo())); + $this->setToken($this->getStringValue($params, 'Token', $this->getToken())); + $this->setSiteId($this->getStringValue($params, 'SiteID',$this->getSiteId())); + $this->setSitePass($this->getStringValue($params , 'SitePass' , $this->getSitePass())); + $this->setMemberId($this->getStringValue($params,'MemberID',$this->getMemberId())); + $this->setSeqMode($this->getStringValue($params,'SeqMode',$this->getSeqMode())); + $this->setCardSeq($this->getIntegerValue($params,'CardSeq',$this->getCardSeq())); + $this->setCardPass($this->getStringValue($params,'CardPass',$this->getCardPass())); + $this->setExpire($this->getStringValue($params, 'Expire', $this->getExpire())); + $this->setSecurityCode($this->getStringValue($params, 'SecurityCode', $this->getSecurityCode())); + $this->setHttpAccept($this->getStringValue($params, 'HttpAccept', $this->getHttpAccept())); + $this->setHttpUserAgent($this->getStringValue($params, 'HttpUserAgent', $this->getHttpUserAgent())); + $this->setClientField1($this->getStringValue($params, 'ClientField1', $this->getClientField1())); + $this->setClientField2($this->getStringValue($params, 'ClientField2', $this->getClientField2())); + $this->setClientField3($this->getStringValue($params, 'ClientField3', $this->getClientField3())); + $this->setDisplayInfo($this->getStringValue($params, 'DisplayInfo', $this->getDisplayInfo())); + $this->setTokenType($this->getStringValue($params, 'TokenType', $this->getTokenType())); + $this->setRetUrl($this->getStringValue($params, 'RetUrl', $this->getRetUrl())); + $this->setTds2ChallengeIndType($this->getStringValue($params, 'Tds2ChallengeIndType', $this->getTds2ChallengeIndType())); + $this->setAppMode($this->getStringValue($params, 'AppMode', $this->getAppMode())); + $this->setCallbackType($this->getStringValue($params, 'CallbackType', $this->getCallbackType())); + $this->setTds2ChAccChange($this->getStringValue($params, 'Tds2ChAccChange', $this->getTds2ChAccChange())); + $this->setTds2ChAccDate($this->getStringValue($params, 'Tds2ChAccDate', $this->getTds2ChAccDate())); + $this->setTds2ChAccPwChange($this->getStringValue($params, 'Tds2ChAccPwChange', $this->getTds2ChAccPwChange())); + $this->setTds2NbPurchaseAccount($this->getIntegerValue($params, 'Tds2NbPurchaseAccount', $this->getTds2NbPurchaseAccount())); + $this->setTds2PaymentAccAge($this->getStringValue($params, 'Tds2PaymentAccAge', $this->getTds2PaymentAccAge())); + $this->setTds2ProvisionAttemptsDay($this->getIntegerValue($params, 'Tds2ProvisionAttemptsDay', $this->getTds2ProvisionAttemptsDay())); + $this->setTds2ShipAddressUsage($this->getStringValue($params, 'Tds2ShipAddressUsage', $this->getTds2ShipAddressUsage())); + $this->setTds2ShipNameInd($this->getStringValue($params, 'Tds2ShipNameInd', $this->getTds2ShipNameInd())); + $this->setTds2SuspiciousAccActivity($this->getStringValue($params, 'Tds2SuspiciousAccActivity', $this->getTds2SuspiciousAccActivity())); + $this->setTds2TxnActivityDay($this->getIntegerValue($params, 'Tds2TxnActivityDay', $this->getTds2TxnActivityDay())); + $this->setTds2TxnActivityYear($this->getIntegerValue($params, 'Tds2TxnActivityYear', $this->getTds2TxnActivityYear())); + $this->setTds2ThreeDSReqAuthData($this->getStringValue($params, 'Tds2ThreeDSReqAuthData', $this->getTds2ThreeDSReqAuthData())); + $this->setTds2ThreeDSReqAuthMethod($this->getStringValue($params, 'Tds2ThreeDSReqAuthMethod', $this->getTds2ThreeDSReqAuthMethod())); + $this->setTds2ThreeDSReqAuthTimestamp($this->getStringValue($params, 'Tds2ThreeDSReqAuthTimestamp', $this->getTds2ThreeDSReqAuthTimestamp())); + $this->setTds2AddrMatch($this->getStringValue($params, 'Tds2AddrMatch', $this->getTds2AddrMatch())); + $this->setTds2BillAddrCity($this->getStringValue($params, 'Tds2BillAddrCity', $this->getTds2BillAddrCity())); + $this->setTds2BillAddrCountry($this->getStringValue($params, 'Tds2BillAddrCountry', $this->getTds2BillAddrCountry())); + $this->setTds2BillAddrLine1($this->getStringValue($params, 'Tds2BillAddrLine1', $this->getTds2BillAddrLine1())); + $this->setTds2BillAddrLine2($this->getStringValue($params, 'Tds2BillAddrLine2', $this->getTds2BillAddrLine2())); + $this->setTds2BillAddrLine3($this->getStringValue($params, 'Tds2BillAddrLine3', $this->getTds2BillAddrLine3())); + $this->setTds2BillAddrPostCode($this->getStringValue($params, 'Tds2BillAddrPostCode', $this->getTds2BillAddrPostCode())); + $this->setTds2BillAddrState($this->getStringValue($params, 'Tds2BillAddrState', $this->getTds2BillAddrState())); + $this->setTds2Email($this->getStringValue($params, 'Tds2Email', $this->getTds2Email())); + $this->setTds2HomePhoneCC($this->getStringValue($params, 'Tds2HomePhoneCC', $this->getTds2HomePhoneCC())); + $this->setTds2HomePhoneSubscriber($this->getStringValue($params, 'Tds2HomePhoneSubscriber', $this->getTds2HomePhoneSubscriber())); + $this->setTds2MobilePhoneCC($this->getStringValue($params, 'Tds2MobilePhoneCC', $this->getTds2MobilePhoneCC())); + $this->setTds2MobilePhoneSubscriber($this->getStringValue($params, 'Tds2MobilePhoneSubscriber', $this->getTds2MobilePhoneSubscriber())); + $this->setTds2WorkPhoneCC($this->getStringValue($params, 'Tds2WorkPhoneCC', $this->getTds2WorkPhoneCC())); + $this->setTds2WorkPhoneSubscriber($this->getStringValue($params, 'Tds2WorkPhoneSubscriber', $this->getTds2WorkPhoneSubscriber())); + $this->setTds2ShipAddrCity($this->getStringValue($params, 'Tds2ShipAddrCity', $this->getTds2ShipAddrCity())); + $this->setTds2ShipAddrCountry($this->getStringValue($params, 'Tds2ShipAddrCountry', $this->getTds2ShipAddrCountry())); + $this->setTds2ShipAddrLine1($this->getStringValue($params, 'Tds2ShipAddrLine1', $this->getTds2ShipAddrLine1())); + $this->setTds2ShipAddrLine2($this->getStringValue($params, 'Tds2ShipAddrLine2', $this->getTds2ShipAddrLine2())); + $this->setTds2ShipAddrLine3($this->getStringValue($params, 'Tds2ShipAddrLine3', $this->getTds2ShipAddrLine3())); + $this->setTds2ShipAddrPostCode($this->getStringValue($params, 'Tds2ShipAddrPostCode', $this->getTds2ShipAddrPostCode())); + $this->setTds2ShipAddrState($this->getStringValue($params, 'Tds2ShipAddrState', $this->getTds2ShipAddrState())); + $this->setTds2DeliveryEmailAddress($this->getStringValue($params, 'Tds2DeliveryEmailAddress', $this->getTds2DeliveryEmailAddress())); + $this->setTds2DeliveryTimeframe($this->getStringValue($params, 'Tds2DeliveryTimeframe', $this->getTds2DeliveryTimeframe())); + $this->setTds2GiftCardAmount($this->getStringValue($params, 'Tds2GiftCardAmount', $this->getTds2GiftCardAmount())); + $this->setTds2GiftCardCount($this->getIntegerValue($params, 'Tds2GiftCardCount', $this->getTds2GiftCardCount())); + $this->setTds2GiftCardCurr($this->getStringValue($params, 'Tds2GiftCardCurr', $this->getTds2GiftCardCurr())); + $this->setTds2PreOrderDate($this->getStringValue($params, 'Tds2PreOrderDate', $this->getTds2PreOrderDate())); + $this->setTds2PreOrderPurchaseInd($this->getStringValue($params, 'Tds2PreOrderPurchaseInd', $this->getTds2PreOrderPurchaseInd())); + $this->setTds2ReorderItemsInd($this->getStringValue($params, 'Tds2ReorderItemsInd', $this->getTds2ReorderItemsInd())); + $this->setTds2ShipInd($this->getStringValue($params, 'Tds2ShipInd', $this->getTds2ShipInd())); + $this->setTds2RecurringExpiry($this->getStringValue($params, 'Tds2RecurringExpiry', $this->getTds2RecurringExpiry())); + $this->setTds2RecurringFrequency($this->getIntegerValue($params, 'Tds2RecurringFrequency', $this->getTds2RecurringFrequency())); + } + + + /** + * 取引ID取得 + * @return string 取引ID + */ + public function getAccessId() { + return $this->accessId; + } + + /** + * 取引パスワード取得 + * @return string 取引パスワード + */ + public function getAccessPass() { + return $this->accessPass; + } + + /** + * オーダーID取得 + * @return string オーダーID + */ + public function getOrderId() { + return $this->orderId; + } + + /** + * 支払回数取得 + * @return integer 支払回数 + */ + public function getPayTimes() { + return $this->payTimes; + } + + /** + * カード番号取得 + * @return string カード番号 + */ + public function getCardNo() { + return $this->cardNo; + } + + /** + * トークン取得 + * @return string トークン + */ + public function getToken() { + return $this->token; + } + + /** + * サイトID取得 + * @return string サイトID + */ + public function getSiteId(){ + return $this->siteId; + } + + /** + * サイトパスワード取得 + * @return string サイトパスワード + */ + public function getSitePass() { + return $this->sitePass; + } + + /** + * 会員ID取得 + * @return string 会員ID + */ + public function getMemberId(){ + return $this->memberId; + } + + /** + * カード連番指定モード取得 + * @return string カード連番指定モード + */ + public function getSeqMode(){ + return $this->seqMode; + } + + /** + * 登録カード連番取得 + * @return integer 登録カード連番 + */ + public function getCardSeq(){ + return $this->cardSeq; + } + + /** + * カードパスワード取得 + * @return string カードパスワード + */ + public function getCardPass(){ + return $this->cardPass; + } + + /** + * 支払い方法取得 + * @return string 支払方法 + */ + public function getMethod() { + return $this->method; + } + + /** + * 有効期限取得 + * @return string 有効期限(YYMM) + */ + public function getExpire() { + return $this->expire; + } + + /** + * セキュリティコード取得 + * @return string セキュリティコード + */ + public function getSecurityCode() { + return $this->securityCode; + } + + /** + * HTTP_ACCEPT取得 + * @return string HTTP_ACCEPT + */ + public function getHttpAccept() { + return $this->httpAccept; + } + + /** + * HTTP_USER_AGENT取得 + * @return string HTTP_USER_AGENT + */ + public function getHttpUserAgent() { + return $this->httpUserAgent; + } + + /** + * 加盟店自由項目1取得 + * @return string 加盟店自由項目1 + */ + public function getClientField1() { + return $this->clientField1; + } + + /** + * 加盟店自由項目2取得 + * @return string 加盟店自由項目2 + */ + public function getClientField2() { + return $this->clientField2; + } + + /** + * 加盟店自由項目3取得 + * @return string 加盟店自由項目3 + */ + public function getClientField3() { + return $this->clientField3; + } + + /** + * 利用明細に記載される文言取得 + * @return string 利用明細に記載される文言 + */ + public function getDisplayInfo() { + return $this->displayInfo; + } + + /** + * トークンタイプ取得 + * @return string トークンタイプ + */ + public function getTokenType() { + return $this->tokenType; + } + + /** + * 加盟店戻りURL取得 + * @return string 加盟店戻りURL + */ + public function getRetUrl() { + return $this->retUrl; + } + + /** + * モバイルアプリモード取得 + * @return string モバイルアプリモード + */ + public function getAppMode() { + return $this->appMode; + } + + public function getTds2ChallengeIndType() { + return $this->tds2ChallengeIndType; + } + + /** + * コールバック方法取得 + * @return string コールバック方法 + */ + public function getCallbackType() { + return $this->callbackType; + } + + /** + * カード会員最終更新日取得 + * @return string カード会員最終更新日 + */ + public function getTds2ChAccChange() { + return $this->tds2ChAccChange; + } + + /** + * カード会員作成日取得 + * @return string カード会員作成日 + */ + public function getTds2ChAccDate() { + return $this->tds2ChAccDate; + } + + /** + * カード会員パスワード変更日取得 + * @return string カード会員パスワード変更日 + */ + public function getTds2ChAccPwChange() { + return $this->tds2ChAccPwChange; + } + + /** + * 過去6ヶ月間の購入回数取得 + * @return integer 過去6ヶ月間の購入回数 + */ + public function getTds2NbPurchaseAccount() { + return $this->tds2NbPurchaseAccount; + } + + /** + * カード登録日取得 + * @return string カード登録日 + */ + public function getTds2PaymentAccAge() { + return $this->tds2PaymentAccAge; + } + + /** + * 過去24時間のカード追加の試行回数取得 + * @return integer 過去24時間のカード追加の試行回数 + */ + public function getTds2ProvisionAttemptsDay() { + return $this->tds2ProvisionAttemptsDay; + } + + /** + * 配送先住所の初回使用日取得 + * @return string 配送先住所の初回使用日 + */ + public function getTds2ShipAddressUsage() { + return $this->tds2ShipAddressUsage; + } + + /** + * カード会員名と配送先名の一致/不一致取得 + * @return string カード会員名と配送先名の一致/不一致 + */ + public function getTds2ShipNameInd() { + return $this->tds2ShipNameInd; + } + + /** + * カード会員の不審行為情報取得 + * @return string カード会員の不審行為情報 + */ + public function getTds2SuspiciousAccActivity() { + return $this->tds2SuspiciousAccActivity; + } + + /** + * 過去24時間の取引回数取得 + * @return integer 過去24時間の取引回数 + */ + public function getTds2TxnActivityDay() { + return $this->tds2TxnActivityDay; + } + + /** + * 前年の取引回数取得 + * @return integer 前年の取引回数 + */ + public function getTds2TxnActivityYear() { + return $this->tds2TxnActivityYear; + } + + /** + * ログイン証跡取得 + * @return string ログイン証跡 + */ + public function getTds2ThreeDSReqAuthData() { + return $this->tds2ThreeDSReqAuthData; + } + + /** + * ログイン方法取得 + * @return string ログイン方法 + */ + public function getTds2ThreeDSReqAuthMethod() { + return $this->tds2ThreeDSReqAuthMethod; + } + + /** + * ログイン日時取得 + * @return string ログイン日時 + */ + public function getTds2ThreeDSReqAuthTimestamp() { + return $this->tds2ThreeDSReqAuthTimestamp; + } + + /** + * 請求先住所と配送先住所の一致/不一致取得 + * @return string 請求先住所と配送先住所の一致/不一致 + */ + public function getTds2AddrMatch() { + return $this->tds2AddrMatch; + } + + /** + * 請求先住所の都市取得 + * @return string 請求先住所の都市 + */ + public function getTds2BillAddrCity() { + return $this->tds2BillAddrCity; + } + + /** + * 請求先住所の国番号取得 + * @return string 請求先住所の国番号 + */ + public function getTds2BillAddrCountry() { + return $this->tds2BillAddrCountry; + } + + /** + * 請求先住所の区域部分の1行目取得 + * @return string 請求先住所の区域部分の1行目 + */ + public function getTds2BillAddrLine1() { + return $this->tds2BillAddrLine1; + } + + /** + * 請求先住所の区域部分の2行目取得 + * @return string 請求先住所の区域部分の2行目 + */ + public function getTds2BillAddrLine2() { + return $this->tds2BillAddrLine2; + } + + /** + * 請求先住所の区域部分の3行目取得 + * @return string 請求先住所の区域部分の3行目 + */ + public function getTds2BillAddrLine3() { + return $this->tds2BillAddrLine3; + } + + /** + * 請求先住所の郵便番号取得 + * @return string 請求先住所の郵便番号 + */ + public function getTds2BillAddrPostCode() { + return $this->tds2BillAddrPostCode; + } + + /** + * 請求先住所の州または都道府県番号取得 + * @return string 請求先住所の州または都道府県番号 + */ + public function getTds2BillAddrState() { + return $this->tds2BillAddrState; + } + + /** + * カード会員のメールアドレス取得 + * @return string カード会員のメールアドレス + */ + public function getTds2Email() { + return $this->tds2Email; + } + + /** + * 自宅電話の国コード取得 + * @return string 自宅電話の国コード + */ + public function getTds2HomePhoneCC() { + return $this->tds2HomePhoneCC; + } + + /** + * 自宅電話番号取得 + * @return string 自宅電話番号 + */ + public function getTds2HomePhoneSubscriber() { + return $this->tds2HomePhoneSubscriber; + } + + /** + * 携帯電話の国コード取得 + * @return string 携帯電話の国コード + */ + public function getTds2MobilePhoneCC() { + return $this->tds2MobilePhoneCC; + } + + /** + * 携帯電話番号取得 + * @return string 携帯電話番号 + */ + public function getTds2MobilePhoneSubscriber() { + return $this->tds2MobilePhoneSubscriber; + } + + /** + * 職場電話の国コード取得 + * @return string 職場電話の国コード + */ + public function getTds2WorkPhoneCC() { + return $this->tds2WorkPhoneCC; + } + + /** + * 職場電話番号取得 + * @return string 職場電話番号 + */ + public function getTds2WorkPhoneSubscriber() { + return $this->tds2WorkPhoneSubscriber; + } + + /** + * 配送先住所の都市取得 + * @return string 配送先住所の都市 + */ + public function getTds2ShipAddrCity() { + return $this->tds2ShipAddrCity; + } + + /** + * 配送先住所の国番号取得 + * @return string 配送先住所の国番号 + */ + public function getTds2ShipAddrCountry() { + return $this->tds2ShipAddrCountry; + } + + /** + * 配送先住所の区域部分の1行目取得 + * @return string 配送先住所の区域部分の1行目 + */ + public function getTds2ShipAddrLine1() { + return $this->tds2ShipAddrLine1; + } + + /** + * 配送先住所の区域部分の2行目取得 + * @return string 配送先住所の区域部分の2行目 + */ + public function getTds2ShipAddrLine2() { + return $this->tds2ShipAddrLine2; + } + + /** + * 配送先住所の区域部分の3行目取得 + * @return string 配送先住所の区域部分の3行目 + */ + public function getTds2ShipAddrLine3() { + return $this->tds2ShipAddrLine3; + } + + /** + * 配送先住所の郵便番号取得 + * @return string 配送先住所の郵便番号 + */ + public function getTds2ShipAddrPostCode() { + return $this->tds2ShipAddrPostCode; + } + + /** + * 配送先住所の州または都道府県番号取得 + * @return string 配送先住所の州または都道府県番号 + */ + public function getTds2ShipAddrState() { + return $this->tds2ShipAddrState; + } + + /** + * 納品先電子メールアドレス取得 + * @return string 納品先電子メールアドレス + */ + public function getTds2DeliveryEmailAddress() { + return $this->tds2DeliveryEmailAddress; + } + + /** + * 商品納品時間枠取得 + * @return string 商品納品時間枠 + */ + public function getTds2DeliveryTimeframe() { + return $this->tds2DeliveryTimeframe; + } + + /** + * プリペイドカードまたはギフトカードの総購入金額取得 + * @return string プリペイドカードまたはギフトカードの総購入金額 + */ + public function getTds2GiftCardAmount() { + return $this->tds2GiftCardAmount; + } + + /** + * 購入されたプリペイドカードまたはギフトカード の総数取得 + * @return integer 購入されたプリペイドカードまたはギフトカード の総数 + */ + public function getTds2GiftCardCount() { + return $this->tds2GiftCardCount; + } + + /** + * 購入されたプリペイドカードまたはギフトカードの通貨コード取得 + * @return string 購入されたプリペイドカードまたはギフトカードの通貨コード + */ + public function getTds2GiftCardCurr() { + return $this->tds2GiftCardCurr; + } + + /** + * 商品の発売予定日取得 + * @return string 商品の発売予定日 + */ + public function getTds2PreOrderDate() { + return $this->tds2PreOrderDate; + } + + /** + * 商品の販売時期情報取得 + * @return string 商品の販売時期情報 + */ + public function getTds2PreOrderPurchaseInd() { + return $this->tds2PreOrderPurchaseInd; + } + + /** + * 商品の注文情報取得 + * @return string 商品の注文情報 + */ + public function getTds2ReorderItemsInd() { + return $this->tds2ReorderItemsInd; + } + + /** + * 取引の配送方法取得 + * @return string 取引の配送方法 + */ + public function getTds2ShipInd() { + return $this->tds2ShipInd; + } + + /** + * 継続課金の期限取得 + * @return string 継続課金の期限 + */ + public function getTds2RecurringExpiry() { + return $this->tds2RecurringExpiry; + } + + /** + * 継続課金の課金最小間隔日数取得 + * @return integer 継続課金の課金最小間隔日数 + */ + public function getTds2RecurringFrequency() { + return $this->tds2RecurringFrequency; + } + + /** + * 取引ID設定 + * + * @param string $accessId 取引ID + */ + public function setAccessId($accessId) { + $this->accessId = $accessId; + } + + /** + * 取引パスワードを設定 + * + * @param string $accessPass 取引パスワード + */ + public function setAccessPass($accessPass) { + $this->accessPass = $accessPass; + } + + /** + * オーダーID設定 + * + * @param string $orderId オーダーID + */ + public function setOrderId($orderId) { + $this->orderId = $orderId; + } + + /** + * 支払い方法設定 + * + * @param string $method 支払い方法 + */ + public function setMethod($method) { + $this->method = $method; + } + + /** + * 支払回数設定 + * + * @param integer $payTimes 支払回数 + */ + public function setPayTimes($payTimes) { + $this->payTimes = $payTimes; + } + + /** + * カード番号設定 + * + * @param string $cardNo カード番号 + */ + public function setCardNo($cardNo) { + $this->cardNo = $cardNo; + } + + /** + *トークン設定 + * + * @param string $token トークン + */ + public function setToken($token) { + $this->token = $token; + } + + /** + * サイトID設定 + * @param string $siteId サイトID + */ + public function setSiteId($siteId){ + $this->siteId = $siteId; + } + + /** + * サイトパスワード設定 + * + * @param string $sitePass サイトパスワード + */ + public function setSitePass($sitePass) { + $this->sitePass = $sitePass; + } + + /** + * 会員ID設定 + * + * @param string $memberId 会員ID + */ + public function setMemberId($memberId){ + $this->memberId = $memberId; + } + + /** + * カード連番指定モード設定 + * @param string $seqMode カード連番指定モード + */ + public function setSeqMode($seqMode){ + $this->seqMode = $seqMode; + } + + /** + * 登録カード連番設定 + * @param integer $cardSeq 登録カード連番 + */ + public function setCardSeq($cardSeq){ + $this->cardSeq = $cardSeq; + } + + /** + * カードパスワード設定 + * @param string $cardPass カードパスワード + */ + public function setCardPass($cardPass){ + $this->cardPass=$cardPass; + } + + /** + * 有効期限設定 + * + * @param string $expire 有効期限(YYMM) + */ + public function setExpire($expire) { + $this->expire = $expire; + } + + /** + * セキュリティコード設定 + * + * @param string $securityCode セキュリティコード + */ + public function setSecurityCode($securityCode) { + $this->securityCode = $securityCode; + } + + /** + * HTTP_ACCEPT設定 + * + * @param string $httpAccept HTTP_ACCEPT + */ + public function setHttpAccept($httpAccept) { + $this->httpAccept = $httpAccept; + } + + /** + * HTTP_USER_AGENT設定 + * + * @param string $httpUserAgent HTTP_USER_AGENT + */ + public function setHttpUserAgent($httpUserAgent) { + $this->httpUserAgent = $httpUserAgent; + } + + /** + * 加盟店自由項目1設定 + * + * @param string $clientField1 加盟店自由項目1 + */ + public function setClientField1($clientField1) { + $this->clientField1 = $clientField1; + } + + /** + * 加盟店自由項目2設定 + * + * @param string $clientField2 加盟店自由項目2 + */ + public function setClientField2($clientField2) { + $this->clientField2 = $clientField2; + } + + /** + * 加盟店自由項目3設定 + * + * @param string $clientField3 加盟店自由項目3 + */ + public function setClientField3($clientField3) { + $this->clientField3 = $clientField3; + } + + /** + * 利用明細に記載される文言設定 + * + * @param string $clientField3 利用明細に記載される文言 + */ + public function setDisplayInfo($displayInfo) { + $this->displayInfo = $displayInfo; + } + + /** + * トークンタイプ設定 + * + * @param string $tokneType トークンタイプ + */ + public function setTokenType($tokneType) { + $this->tokenType = $tokneType; + } + + /** + * 加盟店戻りURL設定 + * + * @param string $retUrl 加盟店戻りURL + */ + public function setRetUrl($retUrl) { + $this->retUrl = $retUrl; + } + + /** + * モバイルアプリモード設定 + * + * @param string $appMode モバイルアプリモード + */ + public function setAppMode($appMode) { + $this->appMode = $appMode; + } + + public function setTds2ChallengeIndType($tds2ChallengeIndType) { + $this->tds2ChallengeIndType = $tds2ChallengeIndType; + } + + /** + * コールバック方法設定 + * + * @param string $callbackType コールバック方法 + */ + public function setCallbackType($callbackType) { + $this->callbackType = $callbackType; + } + + /** + * カード会員最終更新日設定 + * + * @param string $tds2ChAccChange カード会員最終更新日 + */ + public function setTds2ChAccChange($tds2ChAccChange) { + $this->tds2ChAccChange = $tds2ChAccChange; + } + + /** + * カード会員作成日設定 + * + * @param string $tds2ChAccDate カード会員作成日 + */ + public function setTds2ChAccDate($tds2ChAccDate) { + $this->tds2ChAccDate = $tds2ChAccDate; + } + + /** + * カード会員パスワード変更日設定 + * + * @param string $tds2ChAccPwChange カード会員パスワード変更日 + */ + public function setTds2ChAccPwChange($tds2ChAccPwChange) { + $this->tds2ChAccPwChange = $tds2ChAccPwChange; + } + + /** + * 過去6ヶ月間の購入回数設定 + * + * @param integer $tds2NbPurchaseAccount 過去6ヶ月間の購入回数 + */ + public function setTds2NbPurchaseAccount($tds2NbPurchaseAccount) { + $this->tds2NbPurchaseAccount = $tds2NbPurchaseAccount; + } + + /** + * カード登録日設定 + * + * @param string $tds2PaymentAccAge カード登録日 + */ + public function setTds2PaymentAccAge($tds2PaymentAccAge) { + $this->tds2PaymentAccAge = $tds2PaymentAccAge; + } + + /** + * 過去24時間のカード追加の試行回数設定 + * + * @param integer $tds2ProvisionAttemptsDay 過去24時間のカード追加の試行回数 + */ + public function setTds2ProvisionAttemptsDay($tds2ProvisionAttemptsDay) { + $this->tds2ProvisionAttemptsDay = $tds2ProvisionAttemptsDay; + } + + /** + * 配送先住所の初回使用日設定 + * + * @param string $tds2ShipAddressUsage 配送先住所の初回使用日 + */ + public function setTds2ShipAddressUsage($tds2ShipAddressUsage) { + $this->tds2ShipAddressUsage = $tds2ShipAddressUsage; + } + + /** + * カード会員名と配送先名の一致/不一致設定 + * + * @param string $tds2ShipNameInd カード会員名と配送先名の一致/不一致 + */ + public function setTds2ShipNameInd($tds2ShipNameInd) { + $this->tds2ShipNameInd = $tds2ShipNameInd; + } + + /** + * カード会員の不審行為情報設定 + * + * @param string $tds2SuspiciousAccActivity カード会員の不審行為情報 + */ + public function setTds2SuspiciousAccActivity($tds2SuspiciousAccActivity) { + $this->tds2SuspiciousAccActivity = $tds2SuspiciousAccActivity; + } + + /** + * 過去24時間の取引回数設定 + * + * @param integer $tds2TxnActivityDay 過去24時間の取引回数 + */ + public function setTds2TxnActivityDay($tds2TxnActivityDay) { + $this->tds2TxnActivityDay = $tds2TxnActivityDay; + } + + /** + * 前年の取引回数設定 + * + * @param integer $tds2TxnActivityYear 前年の取引回数 + */ + public function setTds2TxnActivityYear($tds2TxnActivityYear) { + $this->tds2TxnActivityYear = $tds2TxnActivityYear; + } + + /** + * ログイン証跡設定 + * + * @param string $tds2ThreeDSReqAuthData ログイン証跡 + */ + public function setTds2ThreeDSReqAuthData($tds2ThreeDSReqAuthData) { + $this->tds2ThreeDSReqAuthData = $tds2ThreeDSReqAuthData; + } + + /** + * ログイン方法設定 + * + * @param string $tds2ThreeDSReqAuthMethod ログイン方法 + */ + public function setTds2ThreeDSReqAuthMethod($tds2ThreeDSReqAuthMethod) { + $this->tds2ThreeDSReqAuthMethod = $tds2ThreeDSReqAuthMethod; + } + + /** + * ログイン日時設定 + * + * @param string $tds2ThreeDSReqAuthTimestamp ログイン日時 + */ + public function setTds2ThreeDSReqAuthTimestamp($tds2ThreeDSReqAuthTimestamp) { + $this->tds2ThreeDSReqAuthTimestamp = $tds2ThreeDSReqAuthTimestamp; + } + + /** + * 請求先住所と配送先住所の一致/不一致設定 + * + * @param string $tds2AddrMatch 請求先住所と配送先住所の一致/不一致 + */ + public function setTds2AddrMatch($tds2AddrMatch) { + $this->tds2AddrMatch = $tds2AddrMatch; + } + + /** + * 請求先住所の都市設定 + * + * @param string $tds2BillAddrCity 請求先住所の都市 + */ + public function setTds2BillAddrCity($tds2BillAddrCity) { + $this->tds2BillAddrCity = $tds2BillAddrCity; + } + + /** + * 請求先住所の国番号設定 + * + * @param string $tds2BillAddrCountry 請求先住所の国番号 + */ + public function setTds2BillAddrCountry($tds2BillAddrCountry) { + $this->tds2BillAddrCountry = $tds2BillAddrCountry; + } + + /** + * 請求先住所の区域部分の1行目設定 + * + * @param string $tds2BillAddrLine1 請求先住所の区域部分の1行目 + */ + public function setTds2BillAddrLine1($tds2BillAddrLine1) { + $this->tds2BillAddrLine1 = $tds2BillAddrLine1; + } + + /** + * 請求先住所の区域部分の2行目設定 + * + * @param string $tds2BillAddrLine2 請求先住所の区域部分の2行目 + */ + public function setTds2BillAddrLine2($tds2BillAddrLine2) { + $this->tds2BillAddrLine2 = $tds2BillAddrLine2; + } + + /** + * 請求先住所の区域部分の3行目設定 + * + * @param string $tds2BillAddrLine3 請求先住所の区域部分の3行目 + */ + public function setTds2BillAddrLine3($tds2BillAddrLine3) { + $this->tds2BillAddrLine3 = $tds2BillAddrLine3; + } + + /** + * 請求先住所の郵便番号設定 + * + * @param string $tds2BillAddrPostCode 請求先住所の郵便番号 + */ + public function setTds2BillAddrPostCode($tds2BillAddrPostCode) { + $this->tds2BillAddrPostCode = $tds2BillAddrPostCode; + } + + /** + * 請求先住所の州または都道府県番号設定 + * + * @param string $tds2BillAddrState 請求先住所の州または都道府県番号 + */ + public function setTds2BillAddrState($tds2BillAddrState) { + $this->tds2BillAddrState = $tds2BillAddrState; + } + + /** + * カード会員のメールアドレス設定 + * + * @param string $tds2Email カード会員のメールアドレス + */ + public function setTds2Email($tds2Email) { + $this->tds2Email = $tds2Email; + } + + /** + * 自宅電話の国コード設定 + * + * @param string $tds2HomePhoneCC 自宅電話の国コード + */ + public function setTds2HomePhoneCC($tds2HomePhoneCC) { + $this->tds2HomePhoneCC = $tds2HomePhoneCC; + } + + /** + * 自宅電話番号設定 + * + * @param string $tds2HomePhoneSubscriber 自宅電話番号 + */ + public function setTds2HomePhoneSubscriber($tds2HomePhoneSubscriber) { + $this->tds2HomePhoneSubscriber = $tds2HomePhoneSubscriber; + } + + /** + * 携帯電話の国コード設定 + * + * @param string $tds2MobilePhoneCC 携帯電話の国コード + */ + public function setTds2MobilePhoneCC($tds2MobilePhoneCC) { + $this->tds2MobilePhoneCC = $tds2MobilePhoneCC; + } + + /** + * 携帯電話番号設定 + * + * @param string $tds2MobilePhoneSubscriber 携帯電話番号 + */ + public function setTds2MobilePhoneSubscriber($tds2MobilePhoneSubscriber) { + $this->tds2MobilePhoneSubscriber = $tds2MobilePhoneSubscriber; + } + + /** + * 職場電話の国コード設定 + * + * @param string $tds2WorkPhoneCC 職場電話の国コード + */ + public function setTds2WorkPhoneCC($tds2WorkPhoneCC) { + $this->tds2WorkPhoneCC = $tds2WorkPhoneCC; + } + + /** + * 職場電話番号設定 + * + * @param string $tds2WorkPhoneSubscriber 職場電話番号 + */ + public function setTds2WorkPhoneSubscriber($tds2WorkPhoneSubscriber) { + $this->tds2WorkPhoneSubscriber = $tds2WorkPhoneSubscriber; + } + + /** + * 配送先住所の都市設定 + * + * @param string $tds2ShipAddrCity 配送先住所の都市 + */ + public function setTds2ShipAddrCity($tds2ShipAddrCity) { + $this->tds2ShipAddrCity = $tds2ShipAddrCity; + } + + /** + * 配送先住所の国番号設定 + * + * @param string $tds2ShipAddrCountry 配送先住所の国番号 + */ + public function setTds2ShipAddrCountry($tds2ShipAddrCountry) { + $this->tds2ShipAddrCountry = $tds2ShipAddrCountry; + } + + /** + * 配送先住所の区域部分の1行目設定 + * + * @param string $tds2ShipAddrLine1 配送先住所の区域部分の1行目 + */ + public function setTds2ShipAddrLine1($tds2ShipAddrLine1) { + $this->tds2ShipAddrLine1 = $tds2ShipAddrLine1; + } + + /** + * 配送先住所の区域部分の2行目設定 + * + * @param string $tds2ShipAddrLine2 配送先住所の区域部分の2行目 + */ + public function setTds2ShipAddrLine2($tds2ShipAddrLine2) { + $this->tds2ShipAddrLine2 = $tds2ShipAddrLine2; + } + + /** + * 配送先住所の区域部分の3行目設定 + * + * @param string $tds2ShipAddrLine3 配送先住所の区域部分の3行目 + */ + public function setTds2ShipAddrLine3($tds2ShipAddrLine3) { + $this->tds2ShipAddrLine3 = $tds2ShipAddrLine3; + } + + /** + * 配送先住所の郵便番号設定 + * + * @param string $tds2ShipAddrPostCode 配送先住所の郵便番号 + */ + public function setTds2ShipAddrPostCode($tds2ShipAddrPostCode) { + $this->tds2ShipAddrPostCode = $tds2ShipAddrPostCode; + } + + /** + * 配送先住所の州または都道府県番号設定 + * + * @param string $tds2ShipAddrState 配送先住所の州または都道府県番号 + */ + public function setTds2ShipAddrState($tds2ShipAddrState) { + $this->tds2ShipAddrState = $tds2ShipAddrState; + } + + /** + * 納品先電子メールアドレス設定 + * + * @param string $tds2DeliveryEmailAddress 納品先電子メールアドレス + */ + public function setTds2DeliveryEmailAddress($tds2DeliveryEmailAddress) { + $this->tds2DeliveryEmailAddress = $tds2DeliveryEmailAddress; + } + + /** + * 商品納品時間枠設定 + * + * @param string $tds2DeliveryTimeframe 商品納品時間枠 + */ + public function setTds2DeliveryTimeframe($tds2DeliveryTimeframe) { + $this->tds2DeliveryTimeframe = $tds2DeliveryTimeframe; + } + + /** + * プリペイドカードまたはギフトカードの総購入金額設定 + * + * @param string $tds2GiftCardAmount プリペイドカードまたはギフトカードの総購入金額 + */ + public function setTds2GiftCardAmount($tds2GiftCardAmount) { + $this->tds2GiftCardAmount = $tds2GiftCardAmount; + } + + /** + * 購入されたプリペイドカードまたはギフトカード の総数設定 + * + * @param integer $tds2GiftCardCount 購入されたプリペイドカードまたはギフトカード の総数 + */ + public function setTds2GiftCardCount($tds2GiftCardCount) { + $this->tds2GiftCardCount = $tds2GiftCardCount; + } + + /** + * 購入されたプリペイドカードまたはギフトカードの通貨コード設定 + * + * @param string $tds2GiftCardCurr 購入されたプリペイドカードまたはギフトカードの通貨コード + */ + public function setTds2GiftCardCurr($tds2GiftCardCurr) { + $this->tds2GiftCardCurr = $tds2GiftCardCurr; + } + + /** + * 商品の発売予定日設定 + * + * @param string $tds2PreOrderDate 商品の発売予定日 + */ + public function setTds2PreOrderDate($tds2PreOrderDate) { + $this->tds2PreOrderDate = $tds2PreOrderDate; + } + + /** + * 商品の販売時期情報設定 + * + * @param string $tds2PreOrderPurchaseInd 商品の販売時期情報 + */ + public function setTds2PreOrderPurchaseInd($tds2PreOrderPurchaseInd) { + $this->tds2PreOrderPurchaseInd = $tds2PreOrderPurchaseInd; + } + + /** + * 商品の注文情報設定 + * + * @param string $tds2ReorderItemsInd 商品の注文情報 + */ + public function setTds2ReorderItemsInd($tds2ReorderItemsInd) { + $this->tds2ReorderItemsInd = $tds2ReorderItemsInd; + } + + /** + * 取引の配送方法設定 + * + * @param string $tds2ShipInd 取引の配送方法 + */ + public function setTds2ShipInd($tds2ShipInd) { + $this->tds2ShipInd = $tds2ShipInd; + } + + /** + * 継続課金の期限設定 + * + * @param string $tds2RecurringExpiry 継続課金の期限 + */ + public function setTds2RecurringExpiry($tds2RecurringExpiry) { + $this->tds2RecurringExpiry = $tds2RecurringExpiry; + } + + /** + * 継続課金の課金最小間隔日数設定 + * + * @param integer $tds2RecurringFrequency 継続課金の課金最小間隔日数 + */ + public function setTds2RecurringFrequency($tds2RecurringFrequency) { + $this->tds2RecurringFrequency = $tds2RecurringFrequency; + } + + + /** + * 文字列表現 + * URLのパラメータ文字列の形式の文字列を生成する + * @return string 接続文字列表現 + */ + public function toString() { + + $str = 'AccessID=' . $this->encodeStr($this->getAccessId()); + $str .= '&'; + $str .= 'AccessPass=' . $this->encodeStr($this->getAccessPass()); + $str .= '&'; + $str .= 'OrderID=' . $this->encodeStr($this->getOrderId()); + $str .= '&'; + $str .= 'Method=' . $this->encodeStr($this->getMethod()); + $str .= '&'; + $str .= 'PayTimes=' . $this->encodeStr($this->getPayTimes()); + $str .= '&'; + $str .= 'CardNo=' . $this->encodeStr($this->getCardNo()); + $str .= '&'; + $str .= 'Token=' . $this->encodeStr($this->getToken()); + $str .= '&'; + $str .= 'SiteID=' . $this->encodeStr($this->getSiteId()); + $str .= '&'; + $str .= 'SitePass=' . $this->encodeStr($this->getSitePass()); + $str .= '&'; + $str .= 'MemberID=' . $this->encodeStr($this->getMemberId()); + $str .= '&'; + $str .= 'SeqMode=' . $this->encodeStr($this->getSeqMode()); + $str .= '&'; + $str .= 'CardSeq=' . $this->encodeStr($this->getCardSeq()); + $str .= '&'; + $str .= 'CardPass=' . $this->encodeStr($this->getCardPass()); + $str .= '&'; + $str .= 'Expire=' . $this->encodeStr($this->getExpire()); + $str .= '&'; + $str .= 'SecurityCode=' . $this->encodeStr($this->getSecurityCode()); + $str .= '&'; + $str .= 'HttpAccept=' . $this->encodeStr($this->getHttpAccept()); + $str .= '&'; + $str .= 'HttpUserAgent=' . $this->encodeStr($this->getHttpUserAgent()); + $str .= '&'; + $str .= 'ClientField1=' . $this->encodeStr($this->getClientField1()); + $str .= '&'; + $str .= 'ClientField2=' . $this->encodeStr($this->getClientField2()); + $str .= '&'; + $str .= 'ClientField3=' . $this->encodeStr($this->getClientField3()); + $str .= '&'; + $str .= 'ClientFieldFlag=' . $this->clientFieldFlag; + $str .= '&'; + $str .= 'DeviceCategory=' . $this->deviceCategory; + $str .= '&'; + $str .= 'DisplayInfo=' . $this->encodeStr($this->getDisplayInfo()); + $str .= '&'; + $str .= 'TokenType=' . $this->encodeStr($this->getTokenType()); + $str .= '&'; + $str .= 'RetUrl=' . $this->encodeStr($this->getRetUrl()); + $str .= '&'; + $str .= 'AppMode=' . $this->encodeStr($this->getAppMode()); + $str .= '&'; + $str .= 'Tds2ChallengeIndType=' . $this->encodeStr($this->getTds2ChallengeIndType()); + $str .= '&'; + $str .= 'CallbackType=' . $this->encodeStr($this->getCallbackType()); + $str .= '&'; + $str .= 'Tds2ChAccChange=' . $this->encodeStr($this->getTds2ChAccChange()); + $str .= '&'; + $str .= 'Tds2ChAccDate=' . $this->encodeStr($this->getTds2ChAccDate()); + $str .= '&'; + $str .= 'Tds2ChAccPwChange=' . $this->encodeStr($this->getTds2ChAccPwChange()); + $str .= '&'; + $str .= 'Tds2NbPurchaseAccount=' . $this->encodeStr($this->getTds2NbPurchaseAccount()); + $str .= '&'; + $str .= 'Tds2PaymentAccAge=' . $this->encodeStr($this->getTds2PaymentAccAge()); + $str .= '&'; + $str .= 'Tds2ProvisionAttemptsDay=' . $this->encodeStr($this->getTds2ProvisionAttemptsDay()); + $str .= '&'; + $str .= 'Tds2ShipAddressUsage=' . $this->encodeStr($this->getTds2ShipAddressUsage()); + $str .= '&'; + $str .= 'Tds2ShipNameInd=' . $this->encodeStr($this->getTds2ShipNameInd()); + $str .= '&'; + $str .= 'Tds2SuspiciousAccActivity=' . $this->encodeStr($this->getTds2SuspiciousAccActivity()); + $str .= '&'; + $str .= 'Tds2TxnActivityDay=' . $this->encodeStr($this->getTds2TxnActivityDay()); + $str .= '&'; + $str .= 'Tds2TxnActivityYear=' . $this->encodeStr($this->getTds2TxnActivityYear()); + $str .= '&'; + $str .= 'Tds2ThreeDSReqAuthData=' . $this->encodeStr($this->getTds2ThreeDSReqAuthData()); + $str .= '&'; + $str .= 'Tds2ThreeDSReqAuthMethod=' . $this->encodeStr($this->getTds2ThreeDSReqAuthMethod()); + $str .= '&'; + $str .= 'Tds2ThreeDSReqAuthTimestamp=' . $this->encodeStr($this->getTds2ThreeDSReqAuthTimestamp()); + $str .= '&'; + $str .= 'Tds2AddrMatch=' . $this->encodeStr($this->getTds2AddrMatch()); + $str .= '&'; + $str .= 'Tds2BillAddrCity=' . $this->encodeStr($this->getTds2BillAddrCity()); + $str .= '&'; + $str .= 'Tds2BillAddrCountry=' . $this->encodeStr($this->getTds2BillAddrCountry()); + $str .= '&'; + $str .= 'Tds2BillAddrLine1=' . $this->encodeStr($this->getTds2BillAddrLine1()); + $str .= '&'; + $str .= 'Tds2BillAddrLine2=' . $this->encodeStr($this->getTds2BillAddrLine2()); + $str .= '&'; + $str .= 'Tds2BillAddrLine3=' . $this->encodeStr($this->getTds2BillAddrLine3()); + $str .= '&'; + $str .= 'Tds2BillAddrPostCode=' . $this->encodeStr($this->getTds2BillAddrPostCode()); + $str .= '&'; + $str .= 'Tds2BillAddrState=' . $this->encodeStr($this->getTds2BillAddrState()); + $str .= '&'; + $str .= 'Tds2Email=' . $this->encodeStr($this->getTds2Email()); + $str .= '&'; + $str .= 'Tds2HomePhoneCC=' . $this->encodeStr($this->getTds2HomePhoneCC()); + $str .= '&'; + $str .= 'Tds2HomePhoneSubscriber=' . $this->encodeStr($this->getTds2HomePhoneSubscriber()); + $str .= '&'; + $str .= 'Tds2MobilePhoneCC=' . $this->encodeStr($this->getTds2MobilePhoneCC()); + $str .= '&'; + $str .= 'Tds2MobilePhoneSubscriber=' . $this->encodeStr($this->getTds2MobilePhoneSubscriber()); + $str .= '&'; + $str .= 'Tds2WorkPhoneCC=' . $this->encodeStr($this->getTds2WorkPhoneCC()); + $str .= '&'; + $str .= 'Tds2WorkPhoneSubscriber=' . $this->encodeStr($this->getTds2WorkPhoneSubscriber()); + $str .= '&'; + $str .= 'Tds2ShipAddrCity=' . $this->encodeStr($this->getTds2ShipAddrCity()); + $str .= '&'; + $str .= 'Tds2ShipAddrCountry=' . $this->encodeStr($this->getTds2ShipAddrCountry()); + $str .= '&'; + $str .= 'Tds2ShipAddrLine1=' . $this->encodeStr($this->getTds2ShipAddrLine1()); + $str .= '&'; + $str .= 'Tds2ShipAddrLine2=' . $this->encodeStr($this->getTds2ShipAddrLine2()); + $str .= '&'; + $str .= 'Tds2ShipAddrLine3=' . $this->encodeStr($this->getTds2ShipAddrLine3()); + $str .= '&'; + $str .= 'Tds2ShipAddrPostCode=' . $this->encodeStr($this->getTds2ShipAddrPostCode()); + $str .= '&'; + $str .= 'Tds2ShipAddrState=' . $this->encodeStr($this->getTds2ShipAddrState()); + $str .= '&'; + $str .= 'Tds2DeliveryEmailAddress=' . $this->encodeStr($this->getTds2DeliveryEmailAddress()); + $str .= '&'; + $str .= 'Tds2DeliveryTimeframe=' . $this->encodeStr($this->getTds2DeliveryTimeframe()); + $str .= '&'; + $str .= 'Tds2GiftCardAmount=' . $this->encodeStr($this->getTds2GiftCardAmount()); + $str .= '&'; + $str .= 'Tds2GiftCardCount=' . $this->encodeStr($this->getTds2GiftCardCount()); + $str .= '&'; + $str .= 'Tds2GiftCardCurr=' . $this->encodeStr($this->getTds2GiftCardCurr()); + $str .= '&'; + $str .= 'Tds2PreOrderDate=' . $this->encodeStr($this->getTds2PreOrderDate()); + $str .= '&'; + $str .= 'Tds2PreOrderPurchaseInd=' . $this->encodeStr($this->getTds2PreOrderPurchaseInd()); + $str .= '&'; + $str .= 'Tds2ReorderItemsInd=' . $this->encodeStr($this->getTds2ReorderItemsInd()); + $str .= '&'; + $str .= 'Tds2ShipInd=' . $this->encodeStr($this->getTds2ShipInd()); + $str .= '&'; + $str .= 'Tds2RecurringExpiry=' . $this->encodeStr($this->getTds2RecurringExpiry()); + $str .= '&'; + $str .= 'Tds2RecurringFrequency=' . $this->encodeStr($this->getTds2RecurringFrequency()); + + return $str; + } } - -?> +?> \ No newline at end of file diff --git a/src/Input/TdVerify2Input.php b/src/Input/TdVerify2Input.php new file mode 100644 index 0000000..40ff187 --- /dev/null +++ b/src/Input/TdVerify2Input.php @@ -0,0 +1,107 @@ +3DS2.0認証後決済 入力パラメータクラス + * + * @package com.gmo_pg.client + * @subpackage input + * @see inputPackageInfo.php + * @author GMO PaymentGateway + * @version 1.0 + * @created 08-18-2020 00:00:00 + */ +class TdVerify2Input extends BaseInput { + + /** + * @var string 取引ID + */ + private $accessID; + + /** + * @var string 取引パスワード + */ + private $accessPass; + + /** + * コンストラクタ + * + * @param array $params 入力パラメータ + */ + public function __construct($params = null) { + parent::__construct($params); + } + + /** + * デフォルト値を設定する + */ + public function setDefaultValues() { + // ※デフォルト値無しの為何もしない + } + + /** + * 入力パラメータ群の値を設定する + * + * @param IgnoreCaseMap $params 入力パラメータ + */ + public function setInputValues($params) { + // 入力パラメータが無い(=null)場合は設定処理を行わない。 + if (is_null($params)) { + return; + } + + // 各項目の設定 + $this->setAccessID($this->getStringValue($params, 'AccessID', $this->getAccessID())); + $this->setAccessPass($this->getStringValue($params, 'AccessPass', $this->getAccessPass())); + } + + /** + * 取引ID取得 + * @return string 取引ID + */ + public function getAccessID() { + return $this->accessID; + } + + /** + * 取引パスワード取得 + * @return string 取引パスワード + */ + public function getAccessPass() { + return $this->accessPass; + } + + /** + * 取引ID設定 + * @param string $accessID + */ + public function setAccessID($accessID) { + $this->accessID = $accessID; + } + + /** + * 取引パスワード設定 + * + * @param string $accessPass + */ + public function setAccessPass($accessPass) + { + $this->accessPass = $accessPass; + } + + /** + * 文字列表現 + * URLのパラメータ文字列の形式の文字列を生成する + * @return string 接続文字列 + */ + public function toString() { + $str = 'AccessID=' . $this->encodeStr($this->getAccessID()); + $str .= '&'; + $str .= 'AccessPass=' . $this->encodeStr($this->getAccessPass()); + + return $str; + } +} +?> \ No newline at end of file diff --git a/src/Input/Tds2AuthInput.php b/src/Input/Tds2AuthInput.php new file mode 100644 index 0000000..7524fc9 --- /dev/null +++ b/src/Input/Tds2AuthInput.php @@ -0,0 +1,126 @@ +Tds2Auth 3DS2.0 authentication execution + * + * @package com.gmo_pg.client + * @subpackage input + * @see inputPackageInfo.php + * @author GMO PaymentGateway + * @version 1.0 + * @created 08-18-2020 00:00:00 + */ +class Tds2AuthInput extends BaseInput { + + /** + * @var string 取引ID + */ + private $accessID; + + /** + * @var string 取引パスワード + */ + private $accessPass; + + /** + * 3DS 2.0 authentication parameters + */ + + private $tds2Param; + + /** + * コンストラクタ + * + * @param array $params 入力パラメータ + */ + public function __construct($params = null) { + parent::__construct($params); + } + + /** + * デフォルト値を設定する + */ + public function setDefaultValues() { + // ※デフォルト値無しの為何もしない + } + + /** + * 入力パラメータ群の値を設定する + * + * @param IgnoreCaseMap $params 入力パラメータ + */ + public function setInputValues($params) { + // 入力パラメータが無い(=null)場合は設定処理を行わない。 + if (is_null($params)) { + return; + } + + // 各項目の設定 + $this->setAccessID($this->getStringValue($params, 'AccessID', $this->getAccessID())); + $this->setAccessPass($this->getStringValue($params, 'AccessPass', $this->getAccessPass())); + $this->setTds2Param($this->getStringValue($params, 'Tds2Param', $this->getTds2Param())); + } + + /** + * 取引ID取得 + * @return string 取引ID + */ + public function getAccessID() { + return $this->accessID; + } + + /** + * 取引パスワード取得 + * @return string 取引パスワード + */ + public function getAccessPass() { + return $this->accessPass; + } + + public function getTds2Param() { + return $this->tds2Param; + } + + /** + * 取引ID設定 + * @param string $accessID + */ + public function setAccessID($accessID) { + $this->accessID = $accessID; + } + + /** + * 取引パスワード設定 + * + * @param string $accessPass + */ + public function setAccessPass($accessPass) + { + $this->accessPass = $accessPass; + } + + public function setTds2Param($tds2Param) { + $this->tds2Param = $tds2Param; + } + + /** + * 文字列表現 + * URLのパラメータ文字列の形式の文字列を生成する + * @return string 接続文字列 + */ + public function toString() { + $str = 'AccessID=' . $this->encodeStr($this->getAccessID()); + $str .= '&'; + $str .= 'AccessPass=' . $this->encodeStr($this->getAccessPass()); + $str .= '&'; + $str .= 'Tds2Param=' . $this->encodeStr($this->getTds2Param()); + + return $str; + } +} +?> \ No newline at end of file diff --git a/src/Output/EntryExecTranOutput.php b/src/Output/EntryExecTranOutput.php index f45928b..9fd4edd 100644 --- a/src/Output/EntryExecTranOutput.php +++ b/src/Output/EntryExecTranOutput.php @@ -2,6 +2,12 @@ namespace Gineign\GmoPayment\Output; +use Gineign\GmoPayment\Output\EntryTranOutput; +use Gineign\GmoPayment\Output\ExecTranOutput; + +/*require_once 'com/gmo_pg/client/output/EntryTranOutput.php'; +require_once 'com/gmo_pg/client/output/ExecTranOutput.php';*/ + /** * 取引登録・決済一括実行 出力パラメータクラス * @@ -45,16 +51,6 @@ public function &getEntryTranOutput() return $this->entryTranOutput; } - /** - * 取引登録出力パラメータ設定 - * - * @param EntryTranOutput $entryTranOutput 取引登録出力パラメータ - */ - public function setEntryTranOutput(&$entryTranOutput) - { - $this->entryTranOutput = $entryTranOutput; - } - /** * 決済実行出力パラメータ取得 * @return ExecTranOutput 決済実行出力パラメータ @@ -64,16 +60,6 @@ public function &getExecTranOutput() return $this->execTranOutput; } - /** - * 決済実行出力パラメータ設定 - * - * @param ExecTranOutput $execTranOutput 決済実行出力パラメータ - */ - public function setExecTranOutput(&$execTranOutput) - { - $this->execTranOutput = $execTranOutput; - } - /** * 取引パスワード取得 * @return string 取引パスワード @@ -137,6 +123,15 @@ public function getApprovalNo() return $this->execTranOutput->getApprovalNo(); } + /** + * 3Dセキュアフラグ取得 + * @return string 3Dセキュアフラグ + */ + public function getSecureFlag() + { + return $this->execTranOutput->getSecureFlag(); + } + /** * 支払回数取得 * @return integer 支払回数 @@ -227,6 +222,34 @@ public function getMd() return $this->execTranOutput->getMd(); } + /** + * ActiveServerへのリダイレクトURL取得 + */ + public function getRedirectUrl() + { + return $this->execTranOutput->getRedirectUrl(); + } + + /** + * 取引登録出力パラメータ設定 + * + * @param EntryTranOutput $entryTranOutput 取引登録出力パラメータ + */ + public function setEntryTranOutput(&$entryTranOutput) + { + $this->entryTranOutput = $entryTranOutput; + } + + /** + * 決済実行出力パラメータ設定 + * + * @param ExecTranOutput $execTranOutput 決済実行出力パラメータ + */ + public function setExecTranOutput(&$execTranOutput) + { + $this->execTranOutput = $execTranOutput; + } + /** * 取引ID設定 * @@ -285,6 +308,15 @@ public function setApprovalNo($approvalNo) $this->execTranOutput->setApprovalNo($approvalNo); } + /** + * 3Dセキュアフラグ設定 + * @param string $flag 3Dセキュアフラグ + */ + public function setSecureFlag($flag) + { + $this->execTranOutput->setSecureFlag($flag); + } + /** * 支払い方法設定 * @@ -394,6 +426,14 @@ public function setMd($md) $this->execTranOutput->setMd($md); } + /** + * ActiveServerへのリダイレクトURLを設定 + */ + public function setRedirectUrl($redirectUrl) + { + $this->execTranOutput->setRedirectUrl($redirectUrl); + } + /** * 取引登録エラーリスト取得 * @return array エラーリスト @@ -412,15 +452,6 @@ public function &getExecErrList() return $this->execTranOutput->getErrList(); } - /** - * エラー発生判定 - * @return boolean エラー発生有無(true=エラー発生) - */ - public function isErrorOccurred() - { - return $this->isEntryErrorOccurred() || $this->isExecErrorOccurred(); - } - /** * 取引登録エラー発生判定 * @return boolean 取引登録時エラー有無(true=エラー発生) @@ -441,6 +472,15 @@ public function isExecErrorOccurred() return 0 < count($execErrList); } + /** + * エラー発生判定 + * @return boolean エラー発生有無(true=エラー発生) + */ + public function isErrorOccurred() + { + return $this->isEntryErrorOccurred() || $this->isExecErrorOccurred(); + } + /** * 3Dセキュア判定 * @return boolean 3Dセキュア実行要否フラグ(true=3Dセキュア実行要) @@ -450,6 +490,14 @@ public function isTdSecure() return $this->execTranOutput->isTdSecure(); } + /** + * 3Dセキュア2.0判定 + * @return boolean 3Dセキュア2.0実行要否フラグ(true=3Dセキュア2.0実行要) + */ + public function isTdSecure2() + { + return $this->execTranOutput->isTdSecure2(); + } } -?> +?> \ No newline at end of file diff --git a/src/Output/ExecTranOutput.php b/src/Output/ExecTranOutput.php index 63150fa..99fc5c9 100644 --- a/src/Output/ExecTranOutput.php +++ b/src/Output/ExecTranOutput.php @@ -1,7 +1,9 @@ 決済実行 出力パラメータクラス * @@ -12,103 +14,105 @@ * @version 1.0 * @created 01-01-2008 00:00:00 */ -class ExecTranOutput extends BaseOutput -{ - - /** - * @var string 3Dセキュアフラグ '1'=3Dセキュア続行 '0'=3Dセキュア必要なし - */ - private $acs; - - /** - * @var string オーダーID - */ - private $orderId; - - /** - * @var string カード会社略称(SUMITOMO固定) - */ - private $cardName; - - /** - * @var string 仕向先コード 決済を仕向けたカード会社コード - */ - private $forward; - - /** - * @var string カード会社承認番号 - */ - private $approve; - - /** - * @var string 支払方法 - */ - private $method; - - /** - * @var integer 支払回数 - */ - private $payTimes; - - /** - * @var string トランザクションID - */ - private $transactionId; - - /** - * @var string 決済日付(yyyyMMddHHmmss) - */ - private $tranDate; - - /** - * @var string MD5ハッシュ(orderId~tranDate + ショップパスワードのMD5ハッシュ) - */ - private $checkString; - - /** - * @var string 加盟店自由項目1 - */ - private $clientField1; - - /** - * @var string 加盟店自由項目2 - */ - private $clientField2; - - /** - * @var string 加盟店自由項目3 - */ - private $clientField3; - - /** - * @var string ACS(発行元カード会社)URL - */ - private $acsUrl; - - /** - * @var string 3Dセキュア認証要求電文 - */ - private $paReq; - - /** - * @var string 取引ID - */ - private $md; - - /** - * コンストラクタ - * - * @param IgnoreCaseMap $params 出力パラメータ - */ - public function __construct($params = null) - { - parent::__construct($params); - - // 引数が無い場合は戻る +class ExecTranOutput extends BaseOutput { + + /** + * @var string 3Dセキュアフラグ '1'=3Dセキュア続行 '0'=3Dセキュア必要なし + */ + private $acs; + + /** + * @var string オーダーID + */ + private $orderId; + + /** + * @var string カード会社略称(SUMITOMO固定) + */ + private $cardName; + + /** + * @var string 仕向先コード 決済を仕向けたカード会社コード + */ + private $forward; + + /** + * @var string カード会社承認番号 + */ + private $approve; + + /** + * @var string 支払方法 + */ + private $method; + + /** + * @var integer 支払回数 + */ + private $payTimes; + + /** + * @var string トランザクションID + */ + private $transactionId; + + /** + * @var string 決済日付(yyyyMMddHHmmss) + */ + private $tranDate; + + /** + * @var string MD5ハッシュ(orderId~tranDate + ショップパスワードのMD5ハッシュ) + */ + private $checkString; + + /** + * @var string 加盟店自由項目1 + */ + private $clientField1; + + /** + * @var string 加盟店自由項目2 + */ + private $clientField2; + + /** + * @var string 加盟店自由項目3 + */ + private $clientField3; + + /** + * @var string ACS(発行元カード会社)URL + */ + private $acsUrl; + + /** + * @var string 3Dセキュア認証要求電文 + */ + private $paReq; + + /** + * @var string 取引ID + */ + private $md; + + /** + * @var string ActiveServerへのリダイレクトURL + */ + private $redirectUrl; + + /** + * コンストラクタ + * + * @param IgnoreCaseMap $params 出力パラメータ + */ + public function __construct($params = null) { + parent::__construct($params); + + // 引数が無い場合は戻る if (is_null($params)) { return; } - // マップの展開 $this->setOrderId($params->get('OrderID')); $this->setCardName($params->get('CardName')); @@ -132,118 +136,320 @@ public function __construct($params = null) $this->setAcsUrl($params->get('AcsUrl')); $this->setPaReq($params->get('PaReq')); $this->setMd($params->get('MD')); - } - - /** - * トランザクションID設定 - * @param string $id トランザクションID - */ - public function setTranId($id) - { - $this->transactionId = $id; - } - - /** - * 承認番号設定 - * @param string $approve 承認番号 - */ - public function setApprovalNo($approve) - { - $this->approve = $approve; - } - - /** - * 3Dセキュアフラグ設定 - * @param string $flag 3Dセキュアフラグ - */ - public function setSecureFlag($flag) - { - $this->acs = $flag; - } - - /** - * 仕向先コード取得 - * @return string 仕向先コード - */ - public function getForward() - { - return $this->forward; - } - - /** - * 仕向先コード設定 - * @param string $仕向先コード - */ - public function setForward($forward) - { - $this->forward = $forward; - } - - /** - * 承認番号取得 - * @return string 承認番号 - */ - public function getApprovalNo() - { - return $this->approve; - } - - /** - * 3Dセキュアフラグ取得 - * @return string 3Dセキュアフラグ - */ - public function getSecureFlag() - { - return $this->acs; - } - - /** - * トランザクションID取得 - * @return string トランザクションID - */ - public function getTranId() - { - return $this->transactionId; - } - - /** - * 3Dセキュア判定 - * @return boolean 3Dセキュア続行要否(true=認証ページへのリダイレクトの必要あり) - */ - public function isTdSecure() - { - return is_null($this->getAcsUrl()) ? false : true; - } - - /** - * ACS(発行元カード会社)URL取得 - * @return string ACS(発行元カード会社)URL(AcsUrl) - */ - public function getAcsUrl() - { - return $this->acsUrl; - } - - /** - * ACS(発行元カード会社)URL設定 - * - * @param string $acsUrl ACS(発行元カード会社)URL - */ - public function setAcsUrl($acsUrl) - { - $this->acsUrl = $acsUrl; - } - - /** - * 文字列表現 - *
- * 現在の各パラメータを、パラメータ名=値&パラメータ名=値の形式で取得します。 - *
- * @return 出力パラメータ文字列表現 - */ - public function toString() - { - $str = 'OrderID=' . $this->getOrderId(); + + // 3Dセキュア2.0設定部分 + $this->setRedirectUrl($params->get('RedirectUrl')); + } + + /** + * オーダーID取得 + * @return string オーダーID + */ + public function getOrderId() { + return $this->orderId; + } + + /** + * 仕向先コード取得 + * @return string 仕向先コード + */ + public function getForward() { + return $this->forward; + } + + /** + * 承認番号取得 + * @return string 承認番号 + */ + public function getApprovalNo() { + return $this->approve; + } + + /** + * 3Dセキュアフラグ取得 + * @return string 3Dセキュアフラグ + */ + public function getSecureFlag(){ + return $this->acs; + } + + /** + * トランザクションID取得 + * @return string トランザクションID + */ + public function getTranId() { + return $this->transactionId; + } + + /** + * カード会社略称取得 + * @return string カード会社略称 + */ + public function getCardName() { + return $this->cardName; + } + + /** + * 支払い方法取得 + * @return string 支払方法コード + */ + public function getMethod() { + return $this->method; + } + + /** + * 支払回数取得 + * @return integer 支払回数 + */ + public function getPayTimes() { + return $this->payTimes; + } + + /** + * 決済日付取得 + * @return string 決済日付(yyyyMMddHHmmss形式) + */ + public function getTranDate() { + return $this->tranDate; + } + + /** + * MD5ハッシュ取得 + * @return string MD5ハッシュ + */ + public function getCheckString() { + return $this->checkString; + } + + /** + * 加盟店自由項目1取得 + * @return string 加盟店自由項目1 + */ + public function getClientField1() { + return $this->clientField1; + } + + /** + * 加盟店自由項目2取得 + * @return string 加盟店自由項目2 + */ + public function getClientField2() { + return $this->clientField2; + } + + /** + * 加盟店自由項目3取得 + * @return string 加盟店自由項目3 + */ + public function getClientField3() { + return $this->clientField3; + } + + /** + * ACS(発行元カード会社)URL取得 + * @return string ACS(発行元カード会社)URL(AcsUrl) + */ + public function getAcsUrl() { + return $this->acsUrl; + } + + /** + * 3Dセキュア認証要求電文取得 + * @return string 3Dセキュア認証要求電文(PaReq) + */ + public function getPaReq() { + return $this->paReq; + } + + /** + * 取引ID取得 + * @return string 取引ID + */ + public function getMd() { + return $this->md; + } + + /** + * ActiveServerへのリダイレクトURL取得 + * @return string ActiveServerへのリダイレクトURL + */ + public function getRedirectUrl() { + return $this->redirectUrl; + } + + /** + * オーダーID設定 + * + * @param string $orderId オーダーID + */ + public function setOrderId($orderId) { + $this->orderId = $orderId; + } + + /** + * カード会社略称設定 + * + * @param string $cardName カード会社略称 + */ + public function setCardName($cardName) { + $this->cardName = $cardName; + } + + /** + * 支払い方法設定 + * + * @param string $method 支払い方法 + */ + public function setMethod($method) { + $this->method = $method; + } + + /** + * 支払回数設定 + * + * @param integer $payTimes 支払回数 + */ + public function setPayTimes($payTimes) { + $this->payTimes = $payTimes; + } + + /** + * 決済日付設定 + * + * @param string $tranDate 決済日付(yyyyMMddHHmmss形式) + */ + public function setTranDate($tranDate) { + $this->tranDate = $tranDate; + } + + /** + * MD5ハッシュ設定 + * + * @param string $checkString MD5ハッシュ + */ + public function setCheckString($checkString) { + $this->checkString = $checkString; + } + + /** + * 加盟店自由項目1設定 + * + * @param string $clientField1 加盟店自由項目1 + */ + public function setClientField1($clientField1) { + $this->clientField1 = $clientField1; + } + + /** + * 加盟店自由項目2設定 + * + * @param string $clientField2 加盟店自由項目2 + */ + public function setClientField2($clientField2) { + $this->clientField2 = $clientField2; + } + + /** + * 加盟店自由項目3設定 + * + * @param string $clientField3 加盟店自由項目3 + */ + public function setClientField3($clientField3) { + $this->clientField3 = $clientField3; + } + + /** + * ACS(発行元カード会社)URL設定 + * + * @param string $acsUrl ACS(発行元カード会社)URL + */ + public function setAcsUrl($acsUrl) { + $this->acsUrl = $acsUrl; + } + + /** + * 3Dセキュア認証要求電文設定 + * + * @param string $paReq 3Dセキュア認証要求電文 + */ + public function setPaReq($paReq) { + $this->paReq = $paReq; + } + + /** + * 取引ID設定 + * + * @param string $md 取引ID + */ + public function setMd($md) { + $this->md = $md; + } + + /** + * 仕向先コード設定 + * @param string $仕向先コード + */ + public function setForward( $forward ) { + $this->forward = $forward; + } + + /** + * 承認番号設定 + * @param string $approve 承認番号 + */ + public function setApprovalNo( $approve ) { + $this->approve = $approve; + } + + /** + * 3Dセキュアフラグ設定 + * @param string $flag 3Dセキュアフラグ + */ + public function setSecureFlag( $flag ){ + $this->acs = $flag; + } + + /** + * トランザクションID設定 + * @param string $id トランザクションID + */ + public function setTranId( $id ) { + $this->transactionId = $id; + } + + /** + * ActiveServerへのリダイレクトURL設定 + * @param string $id トランザクションID + */ + public function setRedirectUrl( $redirectUrl ) { + $this->redirectUrl = $redirectUrl; + } + + /** + * 3Dセキュア判定 + * @return boolean 3Dセキュア続行要否(true=認証ページへのリダイレクトの必要あり) + */ + public function isTdSecure() { + return is_null($this->getAcsUrl()) ? false : true; + } + + /** + * 3Dセキュア2.0判定 + * @return boolean 3Dセキュア2.0続行要否(true=認証ページへのリダイレクトの必要あり) + */ + public function isTdSecure2() { + return is_null($this->getRedirectUrl()) ? false : true; + } + + /** + * 文字列表現 + *+ * 現在の各パラメータを、パラメータ名=値&パラメータ名=値の形式で取得します。 + *
+ * @return 出力パラメータ文字列表現 + */ + public function toString() { + $str = 'OrderID=' . $this->getOrderId(); $str .= '&'; $str .= 'CardName=' . $this->getCardName(); $str .= '&'; @@ -275,218 +481,12 @@ public function toString() $str .= '&'; $str .= 'MD=' . $this->getMd(); + // 3Dセキュア2.0 + $str .= '&'; + $str .= 'RedirectUrl=' . $this->getRedirectUrl(); + return $str; - } - - /** - * オーダーID取得 - * @return string オーダーID - */ - public function getOrderId() - { - return $this->orderId; - } - - /** - * オーダーID設定 - * - * @param string $orderId オーダーID - */ - public function setOrderId($orderId) - { - $this->orderId = $orderId; - } - - /** - * カード会社略称取得 - * @return string カード会社略称 - */ - public function getCardName() - { - return $this->cardName; - } - - /** - * カード会社略称設定 - * - * @param string $cardName カード会社略称 - */ - public function setCardName($cardName) - { - $this->cardName = $cardName; - } - - /** - * 支払い方法取得 - * @return string 支払方法コード - */ - public function getMethod() - { - return $this->method; - } - - /** - * 支払い方法設定 - * - * @param string $method 支払い方法 - */ - public function setMethod($method) - { - $this->method = $method; - } - - /** - * 支払回数取得 - * @return integer 支払回数 - */ - public function getPayTimes() - { - return $this->payTimes; - } - - /** - * 支払回数設定 - * - * @param integer $payTimes 支払回数 - */ - public function setPayTimes($payTimes) - { - $this->payTimes = $payTimes; - } - - /** - * 決済日付取得 - * @return string 決済日付(yyyyMMddHHmmss形式) - */ - public function getTranDate() - { - return $this->tranDate; - } - - /** - * 決済日付設定 - * - * @param string $tranDate 決済日付(yyyyMMddHHmmss形式) - */ - public function setTranDate($tranDate) - { - $this->tranDate = $tranDate; - } - - /** - * MD5ハッシュ取得 - * @return string MD5ハッシュ - */ - public function getCheckString() - { - return $this->checkString; - } - - /** - * MD5ハッシュ設定 - * - * @param string $checkString MD5ハッシュ - */ - public function setCheckString($checkString) - { - $this->checkString = $checkString; - } - - /** - * 加盟店自由項目1取得 - * @return string 加盟店自由項目1 - */ - public function getClientField1() - { - return $this->clientField1; - } - - /** - * 加盟店自由項目1設定 - * - * @param string $clientField1 加盟店自由項目1 - */ - public function setClientField1($clientField1) - { - $this->clientField1 = $clientField1; - } - - /** - * 加盟店自由項目2取得 - * @return string 加盟店自由項目2 - */ - public function getClientField2() - { - return $this->clientField2; - } - - /** - * 加盟店自由項目2設定 - * - * @param string $clientField2 加盟店自由項目2 - */ - public function setClientField2($clientField2) - { - $this->clientField2 = $clientField2; - } - - /** - * 加盟店自由項目3取得 - * @return string 加盟店自由項目3 - */ - public function getClientField3() - { - return $this->clientField3; - } - - /** - * 加盟店自由項目3設定 - * - * @param string $clientField3 加盟店自由項目3 - */ - public function setClientField3($clientField3) - { - $this->clientField3 = $clientField3; - } - - /** - * 3Dセキュア認証要求電文取得 - * @return string 3Dセキュア認証要求電文(PaReq) - */ - public function getPaReq() - { - return $this->paReq; - } - - /** - * 3Dセキュア認証要求電文設定 - * - * @param string $paReq 3Dセキュア認証要求電文 - */ - public function setPaReq($paReq) - { - $this->paReq = $paReq; - } - - /** - * 取引ID取得 - * @return string 取引ID - */ - public function getMd() - { - return $this->md; - } - - /** - * 取引ID設定 - * - * @param string $md 取引ID - */ - public function setMd($md) - { - $this->md = $md; - } + } } - -?> +?> \ No newline at end of file diff --git a/src/Output/TdVerify2Output.php b/src/Output/TdVerify2Output.php new file mode 100644 index 0000000..317a0eb --- /dev/null +++ b/src/Output/TdVerify2Output.php @@ -0,0 +1,355 @@ +3DS2.0認証後決済 出力パラメータクラス + * + * @package com.gmo_pg.client + * @subpackage output + * @see outputPackageInfo.php + * @author GMO PaymentGateway + * @version 1.0 + * @created 08-18-2020 00:00:00 + */ +class TdVerify2Output extends BaseOutput { + + /** + * @var string オーダーID + */ + private $orderId; + + /** + * @var string 仕向先コード + */ + private $forward; + + /** + * @var string カード会社略称(SUMITOMO固定) + */ + private $cardName; + + /** + * @var integer 支払回数 + */ + private $payTimes; + + /** + * @var string 支払方法 + */ + private $method; + + /** + * @var string 承認番号 + */ + private $approve; + + /** + * @var string トランザクションID + */ + private $transactionId; + + /** + * @var string 決済日付(yyyyMMddHHmmss書式) + */ + private $tranDate; + + /** + * @var string MD5ハッシュ(orderIdからtranDate + ショップパスワードのMD5ハッシュ) + */ + private $checkString; + + /** + * @var string 加盟店自由項目1 + */ + private $clientField1; + + /** + * @var string 加盟店自由項目2 + */ + private $clientField2; + + /** + * @var string 加盟店自由項目3 + */ + private $clientField3; + + /** + * コンストラクタ + * + * @param IgnoreCaseMap $params 出力パラメータ + */ + public function __construct($params = null) { + parent::__construct($params); + + // 引数が無い場合は戻る + if (is_null($params)) { + return; + } + + // マップの展開 + $this->setForward($params->get('Forward')); + $this->setOrderId($params->get('OrderID')); + $this->setCardName($params->get('CardName')); + $this->setMethod($params->get('Method')); + + $times = $params->get('PayTimes'); + if (!is_null($times) && 0 != strlen($times)) { + // 数値の場合のみ値をセットする + $this->setPayTimes(is_numeric($times) ? $times : null); + } + + $this->setTranId( $params->get('TranID') ); + $this->setTranDate($params->get('TranDate')); + $this->setApprovalNo($params->get('Approve')); + $this->setCheckString($params->get('CheckString')); + + $this->setClientField1($params->get('ClientField1')); + $this->setClientField2($params->get('ClientField2')); + $this->setClientField3($params->get('ClientField3')); + } + + /** + * オーダーID取得 + * @return string オーダーID + */ + public function getOrderId() { + return $this->orderId; + } + + /** + * カード会社略称取得 + * @return string カード会社略称 + */ + public function getCardName() { + return $this->cardName; + } + + /** + * 仕向先カード会社コード取得 + * @reutrn string 仕向先カード会社コード + */ + public function getForward(){ + return $this->forward; + } + + /** + * 決済日付取得 + * @return string 決済日付(yyyyMMddHHmmdd形式) + */ + public function getTranDate() { + return $this->tranDate; + } + + /** + * 承認番号取得 + * @return string 承認番号 + */ + public function getApprovalNo(){ + return $this->approve; + } + + /** + * トランザクションID取得 + * @return string トランザクションID + */ + public function getTranId(){ + return $this->transactionId; + } + + /** + * 支払回数取得 + * @return integer 支払回数 + */ + public function getPayTimes() { + return $this->payTimes; + } + + /** + * 支払い方法取得 + * @return string 支払方法コード + */ + public function getMethod() { + return $this->method; + } + + /** + * MD5ハッシュ取得 + * @return string MD5ハッシュ + */ + public function getCheckString() { + return $this->checkString; + } + + /** + * 加盟店自由項目1取得 + * @return string 加盟店自由項目1 + */ + public function getClientField1() { + return $this->clientField1; + } + + /** + * 加盟店自由項目2取得 + * @return string 加盟店自由項目2 + */ + public function getClientField2() { + return $this->clientField2; + } + + /** + * 加盟店自由項目3取得 + * @return string 加盟店自由項目3 + */ + public function getClientField3() { + return $this->clientField3; + } + + /** + * オーダーID設定 + * + * @param string $orderId オーダーID + */ + public function setOrderId($orderId) { + $this->orderId = $orderId; + } + + /** + * 仕向先カード会社コード設定 + * @param string $forward 仕向先カード会社コード + */ + public function setForward( $forward ){ + $this->forward = $forward; + } + + /** + * カード会社略称設定 + * + * @param string $cardName カード会社略称 + */ + public function setCardName($cardName) { + $this->cardName = $cardName; + } + + /** + * 支払回数設定 + * + * @param integer $payTimes 支払回数 + */ + public function setPayTimes($payTimes) { + $this->payTimes = $payTimes; + } + + /** + * 支払い方法設定 + * + * @param string $method 支払方法コード + */ + public function setMethod($method) { + $this->method = $method; + } + + /** + * トランザクションID設定 + * @param string $tranID トランザクションID + */ + public function setTranId( $tranID ){ + $this->transactionId = $tranID; + } + + /** + * 決済日付設定 + * + * @param string $tranDate 決済日付(yyyyMMddHHmmss形式) + */ + public function setTranDate($tranDate) { + $this->tranDate = $tranDate; + } + + /** + * 承認番号設定 + * @param string $approvalNo 承認番号 + */ + public function setApprovalNo( $approvalNo ){ + $this->approve = $approvalNo; + } + + /** + * MD5ハッシュ設定 + * + * @param string $checkString MD5ハッシュ + */ + public function setCheckString($checkString) { + $this->checkString = $checkString; + } + + /** + * 加盟店自由項目1設定 + * + * @param string $clientField1 加盟店自由項目1 + */ + public function setClientField1($clientField1) { + $this->clientField1 = $clientField1; + } + + /** + * 加盟店自由項目2設定 + * + * @param string $clientField2 加盟店自由項目2 + */ + public function setClientField2($clientField2) { + $this->clientField2 = $clientField2; + } + + /** + * 加盟店自由項目3設定 + * + * @param string $clientField3 加盟店自由項目3 + */ + public function setClientField3($clientField3) { + $this->clientField3 = $clientField3; + } + + /** + * TdVerifyOutputの文字列表現 + *+ * 現在の各パラメータを、パラメータ名=値&パラメータ名=値の形式で取得します。 + *
+ * @return string 出力パラメータの文字列表現 + */ + public function toString() { + $str = 'OrderID=' . $this->getOrderId(); + $str .= '&'; + $str .= 'CardName=' . $this->getCardName(); + $str .= '&'; + $str .= 'Forward=' . $this->getForward(); + $str .= '&'; + $str .= 'Method=' . $this->getMethod(); + $str .= '&'; + $str .= 'PayTimes=' . $this->getPayTimes(); + $str .= '&'; + $str .= 'TranID=' . $this->getTranId(); + $str .= '&'; + $str .= 'TranDate=' . $this->getTranDate(); + $str .= '&'; + $str .= 'Approve=' . $this->getApprovalNo(); + $str .= '&'; + $str .= 'CheckString=' . $this->getCheckString(); + $str .= '&'; + $str .= 'ClientField1=' . $this->getClientField1(); + $str .= '&'; + $str .= 'ClientField2=' . $this->getClientField2(); + $str .= '&'; + $str .= 'ClientField3=' . $this->getClientField3(); + + if ($this->isErrorOccurred()) { + // エラー文字列を連結して返す + $errString = parent::toString(); + $str .= '&' . $errString; + } + return $str; + } +} +?> \ No newline at end of file diff --git a/src/Output/Tds2AuthOutput.php b/src/Output/Tds2AuthOutput.php new file mode 100644 index 0000000..e2fa6c8 --- /dev/null +++ b/src/Output/Tds2AuthOutput.php @@ -0,0 +1,138 @@ +Tds2Auth 3DS2.0 authentication execution + * + * @package com.gmo_pg.client + * @subpackage output + * @see outputPackageInfo.php + * @author GMO PaymentGateway + * @version 1.0 + * @created 01-01-2008 00:00:00 + */ +class Tds2AuthOutput extends BaseOutput +{ + + /** + * @var string Authentication result + */ + private $tds2TransResult; + + /** + * @var string Authentication result reason + */ + private $tds2TransResultReason; + + /** + * @var string 3DS 2.0 Authentication Challenge URL + */ + private $challengeUrl; + + /** + * コンストラクタ + * + * @param IgnoreCaseMap $params 出力パラメータ + */ + public function __construct($params = null) + { + parent::__construct($params); + + // 引数が無い場合は戻る + if (is_null($params)) { + return; + } + + // マップの展開 + $this->setTds2TransResult($params->get('Tds2TransResult')); + $this->setTds2TransResultReason($params->get('Tds2TransResultReason')); + } + + /** + * 文字列表現 + *+ * 現在の各パラメータを、パラメータ名=値&パラメータ名=値の形式で取得します。 + *
+ * @return string 出力パラメータの文字列表現 + */ + public function toString() + { + $str = 'Tds2TransResult=' . $this->getTds2TransResult(); + $str .= '&'; + $str .= 'Tds2TransResultReason=' . $this->getTds2TransResultReason(); + $str .= '&'; + $str .= 'ChallengeUrl=' . $this->getChallengeUrl(); + + if ($this->isErrorOccurred()) { + // エラー文字列を連結して返す + $errString = parent::toString(); + $str .= '&' . $errString; + } + + return $str; + } + + /** + * Authentication result + * @return string Authentication result + */ + public function getTds2TransResult() + { + return $this->tds2TransResult; + } + + /** + * Authentication result + * + * @param string Authentication result + */ + public function setTds2TransResult($tds2TransResult) + { + $this->tds2TransResult = $tds2TransResult; + } + + /** + * Tds2TransResultReason + * @return string Tds2TransResultReason + */ + public function getTds2TransResultReason() + { + return $this->tds2TransResultReason; + } + + /** + * Tds2TransResultReason + * + * @param string Tds2TransResultReason + */ + public function setTds2TransResultReason($tds2TransResultReason) + { + $this->tds2TransResultReason = $tds2TransResultReason; + } + + /** + * 3DS 2.0 Authentication Challenge URL + * @return string 3DS 2.0 Authentication Challenge URL + */ + public function getChallengeUrl() + { + return $this->challengeUrl; + } + + /** + * 3DS 2.0 Authentication Challenge URL + * + * @param string 3DS 2.0 Authentication Challenge URL + */ + public function setChallengeUrl($challengeUrl) + { + $this->challengeUrl = $challengeUrl; + } + +} + +?> diff --git a/src/Tran/BaseTran.php b/src/Tran/BaseTran.php index 893a70f..49b95b2 100644 --- a/src/Tran/BaseTran.php +++ b/src/Tran/BaseTran.php @@ -21,8 +21,8 @@ class BaseTran { - private $user = 'MODP-3.110.158'; - private $version = '158'; + private $user = 'MODP-3.110.178'; + private $version = '178'; /** * @var Gmopg_Log 独自ログクラス @@ -42,114 +42,6 @@ public function __construct() $this->log = new Gmopg_Log(get_class($this)); } - /** - * 例外の発生を判定する - * - * @return boolean 判定結果(true = 例外発生) - */ - public function isExceptionOccured() - { - return false == is_null($this->exception); - } - - /** - * 例外を返す - * - * @return GPayException 例外 - */ - public function &getException() - { - return $this->exception; - } - - /** - * プロトコルタイプを呼び出し、結果を返す。 - * 呼び出し先のURLはクラス名をもとに取得する。 - * - * @param string $params プロトコルタイプへ送信するパラメータ文字列 - * @return IgnoreCaseMap 出力パラメータマップ - * @exception GPayException - */ - protected function callProtocol($params) - { - // URLを取得 - $urlMap = new ConnectUrlMap(); - // $key = get_class($this); - $arr = explode('\\', get_class($this)); - $key = end($arr); - $url = $urlMap->getUrl($key); - - $this->log->debug("キー値 : $key 取得URL : $url パラメータ : $params"); - - - // URLを取得できなかったときはエラーとする - if (is_null($url)) { - $this->exception = - new GPayException("呼び出し先のURLを取得できませんでした。[$key]", $this->exception); - return null; - } - - //更新者として、製品バージョンを設定 - return $this->callProtocol_($url, $params . '&User=' . $this->user . '&Version=' . $this->version); - } - - /** - * プロトコルタイプを呼び出し、結果を返す。 - * - * @param string $url プロトコルタイプへのURL文字列 - * @param string $params プロトコルタイプへ送信するパラメータ文字列 - * @return IgnoreCaseMap 出力パラメータマップ - * @exception GPayException - */ - protected function callProtocol_($url, $params) - { - - // プロトコルタイプのURLへの接続 - $urlConnect = $this->connect($url); - - // データの送信 - $retData = $this->sendData($urlConnect, $params); - - // 戻り値の取り出し - $retData = $this->recvData($retData); - - // プロトコルタイプのURLへの接続を解除 - $this->disconnect($urlConnect); - - $this->log->debug("戻り値 : $retData"); - - if (!$retData) { - return null; - } - - // 戻り値を解析 - $parser = new ParamParser(); - if ( - mb_strpos($url, "ListVirtualaccount") != false || - mb_strpos($url, "InquiryVirtualaccountTransfer") != false || - mb_strpos($url, "InquiryTransferGANB") != false - ) { - $resultMap = $parser->parseCsv($retData); - } else if (mb_strpos($url, "ExecTran.idPass") === false - && mb_strpos($url, "ExecTranVPreCa.idPass") === false - && mb_strpos($url, "ExecTranLimited.idPass") === false) { - // ExecTran(カード系)の呼び出しではない - $resultMap = $parser->parse($retData); - } else { - // ExecTran(カード系)の呼び出しである - if (mb_strpos($retData, "ACS=1") === false) { - //ACS=1ではない場合は通常のパースを行う - $resultMap = $parser->parse($retData); - } else { - // EntryTranの呼び出し、かつ、ACS=1である場合、特殊パースを行う(3DS用URLの仕様変更のため) - $resultMap = $parser->execSpecialParse($retData); - } - } - $resultMap = new IgnoreCaseMap($resultMap); - - return $resultMap; - } - /** * プロトコルタイプのURLへ接続する。 * @@ -199,6 +91,18 @@ protected function connect($url) return $urlConnect; } + /** + * プロトコルタイプのURLへの接続を解除する。 + * + * @param mixed $urlConnect プロトコルタイプへのURL接続 + */ + protected function disconnect(&$urlConnect) + { + if ($urlConnect) { + curl_close($urlConnect); + } + } + /** * プロトコルタイプのURLへデータを送信する。 * @@ -251,15 +155,120 @@ protected function recvData($retData) } /** - * プロトコルタイプのURLへの接続を解除する。 + * プロトコルタイプを呼び出し、結果を返す。 * - * @param mixed $urlConnect プロトコルタイプへのURL接続 + * @param string $url プロトコルタイプへのURL文字列 + * @param string $params プロトコルタイプへ送信するパラメータ文字列 + * @return IgnoreCaseMap 出力パラメータマップ + * @exception GPayException */ - protected function disconnect(&$urlConnect) + protected function callProtocol_($url, $params) { - if ($urlConnect) { - curl_close($urlConnect); + + // プロトコルタイプのURLへの接続 + $urlConnect = $this->connect($url); + + // データの送信 + $retData = $this->sendData($urlConnect, $params); + + // if(strstr($url,'payment/SecureTran2.idPass')){ + // dd($retData); + // } + + // 戻り値の取り出し + $retData = $this->recvData($retData); + + // プロトコルタイプのURLへの接続を解除 + $this->disconnect($urlConnect); + + $this->log->debug("戻り値 : $retData"); + + if (!$retData) { + return null; + } + + // 戻り値を解析 + $parser = new ParamParser(); + if ( + mb_strpos($url, "ListVirtualaccount") != false || + mb_strpos($url, "InquiryVirtualaccountTransfer") != false || + mb_strpos($url, "InquiryTransferGANB") != false + ) { + $resultMap = $parser->parseCsv($retData); + } else if (mb_strpos($url, "ExecTran.idPass") === false + && mb_strpos($url, "ExecTranVPreCa.idPass") === false + && mb_strpos($url, "ExecTranLimited.idPass") === false) { + // ExecTran(カード系)の呼び出しではない + $resultMap = $parser->parse($retData); + } else { + // ExecTran(カード系)の呼び出しである + if (mb_strpos($retData, "ACS=1") === false) { + if (mb_strpos($retData, "ACS=2") === false) { + //ACS=1or2ではない場合は通常のパースを行う + $resultMap = $parser->parse($retData); + } else { + // EntryTranの呼び出し、かつ、ACS=2である場合、3DS2.0用の特殊パースを行う + $resultMap = $parser->execSpecialParse2($retData); + } + } else { + // EntryTranの呼び出し、かつ、ACS=1である場合、特殊パースを行う(3DS用URLの仕様変更のため) + $resultMap = $parser->execSpecialParse($retData); + } } + $resultMap = new IgnoreCaseMap($resultMap); + + return $resultMap; + } + + /** + * プロトコルタイプを呼び出し、結果を返す。 + * 呼び出し先のURLはクラス名をもとに取得する。 + * + * @param string $params プロトコルタイプへ送信するパラメータ文字列 + * @return IgnoreCaseMap 出力パラメータマップ + * @exception GPayException + */ + protected function callProtocol($params) + { + // URLを取得 + $urlMap = new ConnectUrlMap(); + // $key = get_class($this); + $arr = explode('\\', get_class($this)); + $key = end($arr); + $url = $urlMap->getUrl($key); + + $this->log->debug("キー値 : $key 取得URL : $url パラメータ : $params"); + + + // URLを取得できなかったときはエラーとする + if (is_null($url)) { + $this->exception = + new GPayException("呼び出し先のURLを取得できませんでした。[$key]", $this->exception); + return null; + } + + //更新者として、製品バージョンを設定 + return $this->callProtocol_($url, $params . '&User=' . $this->user . '&Version=' . $this->version); + } + + /** + * 例外の発生を判定する + * + * @return boolean 判定結果(true = 例外発生) + */ + public function isExceptionOccured() + { + return false == is_null($this->exception); + } + + /** + * 例外を返す + * + * @return GPayException 例外 + */ + public function &getException() + { + return $this->exception; } } diff --git a/src/Tran/EntryExecTran.php b/src/Tran/EntryExecTran.php index 3fdc6f8..aa77d04 100644 --- a/src/Tran/EntryExecTran.php +++ b/src/Tran/EntryExecTran.php @@ -1,11 +1,22 @@ 取引登録・決済一括実行 実行クラス @@ -37,6 +48,20 @@ public function __construct() $this->log = new Gmopg_Log(get_class($this)); } + /** + * 例外の発生を判定する + * + * @param mixed $target 判定対象 + */ + private function errorTrap(&$target) + { + if (is_null($target->getException())) { + return false; + } + $this->exception = $target->getException(); + return true; + } + /** * 例外の発生を判定する * @@ -118,20 +143,6 @@ public function exec(&$input) return $output; } - /** - * 例外の発生を判定する - * - * @param mixed $target 判定対象 - */ - private function errorTrap(&$target) - { - if (is_null($target->getException())) { - return false; - } - $this->exception = $target->getException(); - return true; - } - /** * リダイレクトページの内容を作成する * @@ -186,4 +197,4 @@ public function requestTdVerify($paRes, $md) } -?> +?> \ No newline at end of file diff --git a/src/Tran/ExecTran.php b/src/Tran/ExecTran.php index 957bd68..cd56a0a 100644 --- a/src/Tran/ExecTran.php +++ b/src/Tran/ExecTran.php @@ -33,9 +33,11 @@ public function __construct() */ public function exec(&$input) { + // dd($input->toString()); // プロトコル呼び出し・結果取得 + // $inputString="AccessID={$input->getAccessId()}&AccessPass={$input->getAccessPass()}&OrderID={$input->getOrderId()}&Method=1&Token={$input->getToken()}&TdRequired=1&Tds2ChallengeIndType=1&CallbackType=3&RetUrl=http://127.0.0.1:8000/shop/gmo/retUrl"; + // $resultMap = $this->callProtocol($inputString); $resultMap = $this->callProtocol($input->toString()); - // 戻り値がnullの場合、nullを戻す if (is_null($resultMap)) { return null; diff --git a/src/Tran/TdVerify2.php b/src/Tran/TdVerify2.php new file mode 100644 index 0000000..2798069 --- /dev/null +++ b/src/Tran/TdVerify2.php @@ -0,0 +1,52 @@ +3DS2.0認証後決済実行 実行クラス + * + * @package com.gmo_pg.client + * @subpackage tran + * @see tranPackageInfo.php + * @author GMO PaymentGateway + * @version 1.0 + * @created 01-01-2008 00:00:00 + */ +class TdVerify2 extends BaseTran +{ + + /** + * コンストラクタ + */ + public function __construct() + { + parent::__construct(); + } + + /** + * 3DS2.0認証後決済実行を実行する + * + * @param TdVerify2Input $input 入力パラメータ + * @return TdVerify2Output $output 出力パラメータ + */ + public function exec(&$input) + { + // 接続しプロトコル呼び出し・結果取得 + $resultMap = $this->callProtocol($input->toString()); + + // 戻り値がnullの場合、nullを戻す + if (is_null($resultMap)) { + return null; + } + + // EntryTranOutput作成し、戻す + return new TdVerify2Output($resultMap); + } +} diff --git a/src/Tran/Tds2Auth.php b/src/Tran/Tds2Auth.php new file mode 100644 index 0000000..e92ba47 --- /dev/null +++ b/src/Tran/Tds2Auth.php @@ -0,0 +1,53 @@ +3DS2.0認証後決済実行 実行クラス + * + * @package com.gmo_pg.client + * @subpackage tran + * @see tranPackageInfo.php + * @author GMO PaymentGateway + * @version 1.0 + * @created 01-01-2008 00:00:00 + */ +class Tds2Auth extends BaseTran +{ + + /** + * コンストラクタ + */ + public function __construct() + { + parent::__construct(); + } + + /** + * 3DS2.0/payment/Tds2Auth.idPass + * + * @param Tds2AuthInput $input 入力パラメータ + * @return Tds2AuthOutput $output 出力パラメータ + */ + public function exec(&$input) + { + + // 接続しプロトコル呼び出し・結果取得 + $resultMap = $this->callProtocol($input->toString()); + + // 戻り値がnullの場合、nullを戻す + if (is_null($resultMap)) { + return null; + } + + // EntryTranOutput作成し、戻す + return new Tds2AuthOutput($resultMap); + } +} diff --git a/src/conf/connector.properties b/src/conf/connector.properties index 0ccc646..bc77fbe 100644 --- a/src/conf/connector.properties +++ b/src/conf/connector.properties @@ -2,7 +2,9 @@ EntryTran=https://pt01.mul-pay.jp/payment/EntryTran.idPass ExecTran=https://pt01.mul-pay.jp/payment/ExecTran.idPass AlterTran=https://pt01.mul-pay.jp/payment/AlterTran.idPass TdVerify=https://pt01.mul-pay.jp/payment/SecureTran.idPass +TdVerify2=https://pt01.mul-pay.jp/payment/SecureTran2.idPass ChangeTran=https://pt01.mul-pay.jp/payment/ChangeTran.idPass +Tds2Auth=https://pt01.mul-pay.jp/payment/Tds2Auth.idPass SaveCard=https://pt01.mul-pay.jp/payment/SaveCard.idPass DeleteCard=https://pt01.mul-pay.jp/payment/DeleteCard.idPass diff --git a/src/conf/connector.properties.honban b/src/conf/connector.properties.honban index d8f0128..ae76a32 100644 --- a/src/conf/connector.properties.honban +++ b/src/conf/connector.properties.honban @@ -2,7 +2,9 @@ EntryTran=https://p01.mul-pay.jp/payment/EntryTran.idPass ExecTran=https://p01.mul-pay.jp/payment/ExecTran.idPass AlterTran=https://p01.mul-pay.jp/payment/AlterTran.idPass TdVerify=https://p01.mul-pay.jp/payment/SecureTran.idPass +TdVerify2=https://pt01.mul-pay.jp/payment/SecureTran2.idPass ChangeTran=https://p01.mul-pay.jp/payment/ChangeTran.idPass +Tds2Auth=https://pt01.mul-pay.jp/payment/Tds2Auth.idPass SaveCard=https://p01.mul-pay.jp/payment/SaveCard.idPass DeleteCard=https://p01.mul-pay.jp/payment/DeleteCard.idPass