function callEnterPin() { $mod1 = null; $txnid = null; $guid = null; $exp1 = null; $errMsg = null; $errCode = null; $crdNum = null; $epgRefNum = null; $oMerchant = new Merchant(); $oCI = new CardInfo(); $oCI->setCardDetails("RUPAY", crdNum, "111", "2018", "12", "Tester", "DEBIT"); $mod1 = $_POST["Modulus"]; $txnid = $_POST["TxnID"]; $guid = $_POST["GUID"]; $exp1 = $_POST["Exponent"]; $errMsg = $_POST["ErrMsg"]; $errCode = $_POST["ErrCode"]; $crdNum = $_POST["CardNum"]; $epgRefNum = $_POST["EpgTxnID"]; print "<center>"; print "<div id='accu_screen' style='display: none;'></div>"; print "<div id='accu_keypad' style='display: none;'></div>"; print "<div id='accu_form' style='display: none;'></div>"; print "<div id='accu_loading' style='display: none;'></div>"; print "<div id='accu_issuer' style='display: none;'></div>"; print "</center>"; print "<form name='startPin'>"; print "<input type='button' value='Proceed to Paysecure' onclick=if(Acculynk.browserCheck()){ Acculynk.createForm('" . $guid . "," . $crdNum . "," . $mod1 . "," . $exp1 . "');Acculynk.PINPadLoad();}/>"; print "<input type='hidden' name='TxnID' value=" . $txnid . ">"; print "<input type='hidden' name='CardAcceptorID' value=" . $oMerchant->MerchantID . ">"; print "<input type='hidden' name='AuthAmt' value=" . $oMerchant->Amount . ">"; print "<input type='hidden' name='CurrCode' value=" . $oMerchant->CurrCode . ">"; print "<input type='hidden' name='sendAuth' value='Y'>"; print "<input type=hidden name='EpgTxnID' value=" . $epgRefNum . ">"; print "</form>"; }
$guid = null; $exp1 = null; $errMsg = null; $errCode = null; $mod1 = null; $mid1 = null; $amt = null; $curr = null; $npciResp = null; $epgRefNum = null; $crdNum = "6076000000000022"; $oPostLibPHP = new PostLibPHP(); $oPSD = new PaySecureDetails(); $oMerchant = new Merchant(); $oPgResponse = new PGResponse(); $oCI = new CardInfo(); $oReserveData = new PGReserveData(); $oMerchant->setMerchantDetails("00001203", "00001203", "00001203", "10.10.10.167", rand() . "", "", "", "", "INR", "INV123", "req.Sale", "10", "", "Ext1", "Ext2", "Ext3", "Ext4", "Ext5"); $oCI->setCardDetails("RUPAY", $crdNum, "234", "2018", "12", "Tester", "DEBIT"); if ($sendA == "N") { print ".....Inside TestAuth1.php....." . "<br>"; $mod1 = $_POST['Modulus']; $txnid = $_POST['TxnID']; $guid = $_POST['GUID']; $exp1 = $_POST['Exponent']; $errMsg = $_POST['ErrMsg']; $errCode = $_POST['ErrCode']; $crdNum = $_POST['CardNum']; $epgRefNum = $_POST['EpgTxnID']; print "Merchant Txn Id : " . $txnid . "<br>"; print "WS Error Code :" . $errCode . "<br>";
<?php //error_reporting(E_ALL); //ini_set('display_errors', '1'); include "Sfa/BillToAddress.php"; include "Sfa/CardInfo.php"; include "Sfa/Merchant.php"; include "Sfa/MPIData.php"; include "Sfa/ShipToAddress.php"; include "Sfa/PGResponse.php"; include "Sfa/PostLibPHP.php"; include "Sfa/PGReserveData.php"; $oMPI = new MPIData(); $oCI = new CardInfo(); $oPostLibphp = new PostLibPHP(); $oMerchant = new Merchant(); $oBTA = new BillToAddress(); $oSTA = new ShipToAddress(); $oPGResp = new PGResponse(); $oPGReserveData = new PGReserveData(); $oMerchant->setMerchantDetails("00002116", "00002116", "00002116", "10.10.10.238", rand() . "", "OrderRef1", "", "", "INR", "INV1234", "req.Sale", "100", "", "Ext1", "Ext2", "Ext3", "Ext4", "Ext5"); $oSTA->setAddressDetails("Add1", "Add2", "Add3", "City", "State", "443543", "IND", "*****@*****.**"); $oBTA->setAddressDetails("CID", "Tester", "Aline1", "Aline2", "Aline3", "Pune", "MH", "48927489", "IND", "*****@*****.**"); $oCI->setCardDetails("MC", "5081264401288025", "234", "2028", "12", "Tester", "CREDI"); $oMPI->setMPIResponseDetails("02", "NTBlZjRjMThjMjc1NTUxYzk1MTY=", "Y", "AAAAAAAAAAAAAAAAAAAAAAAAAAA=", "84759435", "1000", "356"); $oPGResp = $oPostLibphp->postMOTO($oBTA, $oSTA, $oMerchant, $oMPI, $oCI, $oPGReserveData); $oPGResp->getResponse($oResp); print "Response Code:" . $oPGResp->getRespCode() . "<br>"; print "Response Message:" . $oPGResp->getRespMessage() . "<br>"; print "Transaction ID:" . $oPGResp->getTxnId() . "<br>"; print "Epg Transaction ID:" . $oPGResp->getEpgTxnId() . "<br>";
function postAuth($aoMerchant, $aoCInfo, $aoPGResp, $oPSD, $aoReserveData) { $ojMerchant = new Merchant(); $ojCInfo = new CardInfo(); //$oPGResp = new Java('com.opus.epg.sfa.java.PGResponse'); //$ojPSD = new Java('com.opus.epg.sfa.java.PaySecureDetails'); $ojReserveData = new PGReserveData(); $oPostLib = new PostLibPHP(); $oPGResphp = new PGResponse(); ## Mandetory checks for Merchant objects # check for Merchant id and the Message type # ## if ($aoMerchant == null) { $oPGResphp->setRespCode("2"); $oPGResphp->setRespMessage(" Merchant object is null"); return $oPGResphp; } if ($aoMerchant->getMerchantID() == null || $aoMerchant->getMerchantID() == "") { $oPGResphp->setRespCode("2"); $oPGResphp->setRespMessage(" Merchant id is null or Invalid"); return $oPGResphp; } if ($aoMerchant->getMessageType() == null || $aoMerchant->getMessageType() == "") { $oPGResphp->setRespCode("2"); $oPGResphp->setRespMessage(" Message type is null."); return $oPGResphp; } if ($oPSD->getPaysecureResp() == null || $oPSD->getPaysecureResp() == "") { $oPGResphp->setRespCode("2"); $oPGResphp->setRespMessage(" Invalid Paysecure Response. Transaction cannot be processed."); return $oPGResphp; } if ($oPSD->getPaySecureTxnID() == null || $oPSD->getPaySecureTxnID() == "") { $oPGResphp->setRespCode("2"); $oPGResphp->setRespMessage(" Invalid PaySecure Txn Id. Transaction cannot be processed."); return $oPGResphp; } if ($oPSD->getAuthAmount() == null || $oPSD->getAuthAmount() == "") { $oPGResphp->setRespCode("2"); $oPGResphp->setRespMessage(" Error. Auth Amount is Invalid."); return $oPGResphp; } if ($oPSD->getCardAcceptorID() == null || $oPSD->getCardAcceptorID() == "") { $oPGResphp->setRespCode("2"); $oPGResphp->setRespMessage(" Error. Card Acceptor/Merchant Id is Invalid."); return $oPGResphp; } if ($oPSD->getCurrCode() == null || $oPSD->getCurrCode() == "") { $oPGResphp->setRespCode("2"); $oPGResphp->setRespMessage(" Invalid Currency code. Transaction cannot be processed."); return $oPGResphp; } # Assigning Merchant object of php to Merchant object of java Sfa $ojMerchant->setMerchantDetails($aoMerchant->getMerchantID(), $aoMerchant->getVendor(), $aoMerchant->getPartner(), $aoMerchant->getCustIPAddress(), $aoMerchant->getMerchantTxnID(), $aoMerchant->getOrderReferenceNo(), $aoMerchant->getRespURL(), $aoMerchant->getRespMethod(), $aoMerchant->getCurrCode(), $aoMerchant->getInvoiceNo(), $aoMerchant->getMessageType(), $aoMerchant->getAmount(), $aoMerchant->getGMTTimeOffset(), $aoMerchant->getExt1(), $aoMerchant->getExt2(), $aoMerchant->getExt3(), $aoMerchant->getExt4(), $aoMerchant->getExt5()); # Assigning Card Info object of php to Card info object of java Sfa if ($aoCInfo != null || $aoCInfo != "") { $ojCInfo->setCardDetails($aoCInfo->getCardType(), $aoCInfo->getCardNum(), $aoCInfo->getCVVNum(), $aoCInfo->getExpDtYr(), $aoCInfo->getExpDtMon(), $aoCInfo->getNameOnCard(), $aoCInfo->getInstrType()); } if ($aoReserveData != null || $aoReserveData != "") { $ojReserveData->setReserveObj($aoReserveData->getReserveField1(), $aoReserveData->getReserveField2(), $aoReserveData->getReserveField3(), $aoReserveData->getReserveField4(), $aoReserveData->getReserveField5(), $aoReserveData->getReserveField6(), $aoReserveData->getReserveField7(), $aoReserveData->getReserveField8(), $aoReserveData->getReserveField9(), $aoReserveData->getReserveField10()); } $strData = $this->buildMerchantBillShip($aoMerchant, null, null); $oEncryptionUtilenc = new EncryptionUtil(); $strMotoEncryptedData = $aoMerchant->getMerchantID() . trim($aoMerchant->getMerchantTxnID()) . trim($aoMerchant->getCustIPAddress()) . trim($aoMerchant->getAmount()) . trim($aoMerchant->getMessageType()) . trim($aoMerchant->getCurrCode()) . trim($aoMerchant->getInvoiceNo()) . trim($aoCInfo->getCardNum()) . trim($aoCInfo->getExpDtYr()) . trim($aoCInfo->getExpDtMon()) . $aoCInfo->getCVVNum(); $sDigest = $oEncryptionUtilenc->getHMAC($strMotoEncryptedData, trim($this->mstrKeyDir) . $aoMerchant->getMerchantID() . '.key', $aoMerchant->getMerchantID()); if ($sDigest == null || $sDigest == "") { if ($this->verbose != null && trim($this->verbose) == "true") { error_log("Error in Encrypting/Hashing Merchant Data.Transaction cannot proceed.", 0); } $oPGResphp->setRespCode("2"); $oPGResphp->setRespMessage(" Error while encrypting/hashing data. Transaction cannot be processed."); return $oPGResphp; } $strData = $strData . '&EncryptedData=' . $sDigest; $strData = $strData . '&IntfVer=ASPV2.0'; $strData = $strData . '&OsType=' . trim($this->mstrOSType); $strData = $strData . '&LanguageType=php'; $strData = $strData . '&CustIPAddress=' . $aoMerchant->getCustIPAddress(); $strData = $strData . '&InstrType=' . $aoCInfo->getInstrType(); $strData = $strData . '&CardType=' . $aoCInfo->getCardType(); $strData = $strData . '&CardNum=' . $aoCInfo->getCardNum(); $strData = $strData . '&ExpDtYr=' . $aoCInfo->getExpDtYr(); $strData = $strData . '&ExpDtMon=' . $aoCInfo->getExpDtMon(); $strData = $strData . '&CVVNum=' . $aoCInfo->getCVVNum(); $strData = $strData . '&NameOnCard=' . $aoCInfo->getNameOnCard(); if ($aoMPI == null || $aoMPI == "") { $strData = $strData . '&status=""'; $strData = $strData . '&cavv=""'; $strData = $strData . '&eci=""'; $strData = $strData . '&xid=""'; $strData = $strData . '&purchaseAmount=""'; $strData = $strData . '¤cyVal=""'; $strData = $strData . '&shoppingcontext=""'; } else { $strData = $strData . '&status=' . $aoMPI->getVBVStatus(); $strData = $strData . '&cavv=' . $aoMPI->getCAVV(); $strData = $strData . '&eci=' . $aoMPI->getECI(); $strData = $strData . '&xid=' . $aoMPI->getXID(); $strData = $strData . '&purchaseAmount=' . $aoMPI->getPurchaseAmount(); $strData = $strData . '¤cyVal=' . $aoMPI->getCurrencyVal(); $strData = $strData . '&shoppingcontext=' . $aoMPI->getShoppingContext(); } $strData = $strData . '&Reserve1=' . $aoReserveData->getReserveField1(); $strData = $strData . '&Reserve2=' . $aoReserveData->getReserveField2(); $strData = $strData . '&Reserve3=' . $aoReserveData->getReserveField3(); $strData = $strData . '&Reserve4=' . $aoReserveData->getReserveField4(); $strData = $strData . '&Reserve5=' . $aoReserveData->getReserveField5(); $strData = $strData . '&Reserve6=' . $aoReserveData->getReserveField6(); $strData = $strData . '&Reserve7=' . $aoReserveData->getReserveField7(); $strData = $strData . '&Reserve8=' . $aoReserveData->getReserveField8(); $strData = $strData . '&Reserve9=' . $aoReserveData->getReserveField9(); $strData = $strData . '&Reserve10=' . $aoReserveData->getReserveField10(); $strData = $strData . '&WsErrCode=' . $aoReserveData->getWsErrCode(); $strData = $strData . '&WsErrMsg=' . $aoReserveData->getWsErrMsg(); $strData = $strData . '&WsExponent=' . $aoReserveData->getWsExponent(); $strData = $strData . '&WsGuid=' . $aoReserveData->getWsGuid(); $strData = $strData . '&WsModulus=' . $aoReserveData->getWsModulus(); $strData = $strData . '&WsTxnId=' . $aoReserveData->getWsTxnId(); $oPGResp = $this->postData(trim($this->motoURL), trim($ojReserveData)); # Assigning PGResponse objects of java to PGResponse object of php $oPGResphp->setRespCode($oPGResp->getRespCode()); $oPGResphp->setRespMessage($oPGResp->getRespMessage()); $oPGResphp->setTxnId($oPGResp->getTxnId()); $oPGResphp->setEpgTxnId($oPGResp->getEpgTxnId()); $oPGResphp->setAuthIdCode($oPGResp->getAuthIdCode()); $oPGResphp->setRRN($oPGResp->getRRN()); $oPGResphp->setCVRespCode($oPGResp->getCVRespCode()); $oPGResphp->setReserveFld1($oPGResp->getReserveFld1()); $oPGResphp->setReserveFld2($oPGResp->getReserveFld2()); $oPGResphp->setReserveFld3($oPGResp->getReserveFld3()); $oPGResphp->setReserveFld4($oPGResp->getReserveFld4()); $oPGResphp->setReserveFld5($oPGResp->getReserveFld5()); $oPGResphp->setReserveFld6($oPGResp->getReserveFld6()); $oPGResphp->setReserveFld7($oPGResp->getReserveFld7()); $oPGResphp->setReserveFld8($oPGResp->getReserveFld8()); $oPGResphp->setReserveFld9($oPGResp->getReserveFld9()); $oPGResphp->setReserveFld10($oPGResp->getReserveFld10()); # Returning PGResponse object of php return $oPGResphp; }