Initial Commit
This commit is contained in:
@@ -0,0 +1,178 @@
|
||||
<?php
|
||||
|
||||
$MERCHANT_KEY = "";
|
||||
$SALT = "";
|
||||
// Merchant Key and Salt as provided by Payu.
|
||||
|
||||
// $PAYU_BASE_URL = "https://sandboxsecure.payu.in"; // For Sandbox Mode
|
||||
$PAYU_BASE_URL = "https://secure.payu.in"; // For Production Mode
|
||||
|
||||
$action = '';
|
||||
|
||||
$posted = array();
|
||||
if(!empty($_POST)) {
|
||||
//print_r($_POST);
|
||||
foreach($_POST as $key => $value) {
|
||||
$posted[$key] = $value;
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
$formError = 0;
|
||||
|
||||
if(empty($posted['txnid'])) {
|
||||
// Generate random transaction id
|
||||
$txnid = substr(hash('sha256', mt_rand() . microtime()), 0, 20);
|
||||
} else {
|
||||
$txnid = $posted['txnid'];
|
||||
}
|
||||
$hash = '';
|
||||
// Hash Sequence
|
||||
$hashSequence = "key|txnid|amount|productinfo|firstname|email|udf1|udf2|udf3|udf4|udf5|udf6|udf7|udf8|udf9|udf10";
|
||||
if(empty($posted['hash']) && sizeof($posted) > 0) {
|
||||
if(
|
||||
empty($posted['key'])
|
||||
|| empty($posted['txnid'])
|
||||
|| empty($posted['amount'])
|
||||
|| empty($posted['firstname'])
|
||||
|| empty($posted['email'])
|
||||
|| empty($posted['phone'])
|
||||
|| empty($posted['productinfo'])
|
||||
|| empty($posted['surl'])
|
||||
|| empty($posted['furl'])
|
||||
|| empty($posted['service_provider'])
|
||||
) {
|
||||
$formError = 1;
|
||||
} else {
|
||||
//$posted['productinfo'] = json_encode(json_decode('[{"name":"tutionfee","description":"","value":"500","isRequired":"false"},{"name":"developmentfee","description":"monthly tution fee","value":"1500","isRequired":"false"}]'));
|
||||
$hashVarsSeq = explode('|', $hashSequence);
|
||||
$hash_string = '';
|
||||
foreach($hashVarsSeq as $hash_var) {
|
||||
$hash_string .= isset($posted[$hash_var]) ? $posted[$hash_var] : '';
|
||||
$hash_string .= '|';
|
||||
}
|
||||
|
||||
$hash_string .= $SALT;
|
||||
|
||||
|
||||
$hash = strtolower(hash('sha512', $hash_string));
|
||||
$action = $PAYU_BASE_URL . '/_payment';
|
||||
}
|
||||
} elseif(!empty($posted['hash'])) {
|
||||
$hash = $posted['hash'];
|
||||
$action = $PAYU_BASE_URL . '/_payment';
|
||||
}
|
||||
?>
|
||||
<html>
|
||||
<head>
|
||||
<script>
|
||||
var hash = '<?php echo $hash ?>';
|
||||
function submitPayuForm() {
|
||||
if(hash == '') {
|
||||
return;
|
||||
}
|
||||
var payuForm = document.forms.payuForm;
|
||||
payuForm.submit();
|
||||
}
|
||||
</script>
|
||||
</head>
|
||||
<body onload="submitPayuForm()">
|
||||
<h2>PayU Form</h2>
|
||||
<br/>
|
||||
<?php if($formError) { ?>
|
||||
|
||||
<span style="color:red">Please fill all mandatory fields.</span>
|
||||
<br/>
|
||||
<br/>
|
||||
<?php } ?>
|
||||
<form action="<?php echo $action; ?>" method="post" name="payuForm">
|
||||
<input type="hidden" name="key" value="<?php echo $MERCHANT_KEY ?>" />
|
||||
<input type="hidden" name="hash" value="<?php echo $hash ?>"/>
|
||||
<input type="hidden" name="txnid" value="<?php echo $txnid ?>" />
|
||||
<table>
|
||||
<tr>
|
||||
<td><b>Mandatory Parameters</b></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Amount: </td>
|
||||
<td><input name="amount" value="<?php echo (empty($posted['amount'])) ? '' : $posted['amount'] ?>" /></td>
|
||||
<td>First Name: </td>
|
||||
<td><input name="firstname" id="firstname" value="<?php echo (empty($posted['firstname'])) ? '' : $posted['firstname']; ?>" /></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Email: </td>
|
||||
<td><input name="email" id="email" value="<?php echo (empty($posted['email'])) ? '' : $posted['email']; ?>" /></td>
|
||||
<td>Phone: </td>
|
||||
<td><input name="phone" value="<?php echo (empty($posted['phone'])) ? '' : $posted['phone']; ?>" /></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Product Info: </td>
|
||||
<td colspan="3"><textarea name="productinfo"><?php echo (empty($posted['productinfo'])) ? '' : $posted['productinfo'] ?></textarea></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Success URI: </td>
|
||||
<td colspan="3"><input name="surl" value="<?php echo (empty($posted['surl'])) ? '' : $posted['surl'] ?>" size="64" /></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Failure URI: </td>
|
||||
<td colspan="3"><input name="furl" value="<?php echo (empty($posted['furl'])) ? '' : $posted['furl'] ?>" size="64" /></td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td colspan="3"><input type="hidden" name="service_provider" value="payu_paisa" size="64" /></td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td><b>Optional Parameters</b></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Last Name: </td>
|
||||
<td><input name="lastname" id="lastname" value="<?php echo (empty($posted['lastname'])) ? '' : $posted['lastname']; ?>" /></td>
|
||||
<td>Cancel URI: </td>
|
||||
<td><input name="curl" value="" /></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Address1: </td>
|
||||
<td><input name="address1" value="<?php echo (empty($posted['address1'])) ? '' : $posted['address1']; ?>" /></td>
|
||||
<td>Address2: </td>
|
||||
<td><input name="address2" value="<?php echo (empty($posted['address2'])) ? '' : $posted['address2']; ?>" /></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>City: </td>
|
||||
<td><input name="city" value="<?php echo (empty($posted['city'])) ? '' : $posted['city']; ?>" /></td>
|
||||
<td>State: </td>
|
||||
<td><input name="state" value="<?php echo (empty($posted['state'])) ? '' : $posted['state']; ?>" /></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Country: </td>
|
||||
<td><input name="country" value="<?php echo (empty($posted['country'])) ? '' : $posted['country']; ?>" /></td>
|
||||
<td>Zipcode: </td>
|
||||
<td><input name="zipcode" value="<?php echo (empty($posted['zipcode'])) ? '' : $posted['zipcode']; ?>" /></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>UDF1: </td>
|
||||
<td><input name="udf1" value="<?php echo (empty($posted['udf1'])) ? '' : $posted['udf1']; ?>" /></td>
|
||||
<td>UDF2: </td>
|
||||
<td><input name="udf2" value="<?php echo (empty($posted['udf2'])) ? '' : $posted['udf2']; ?>" /></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>UDF3: </td>
|
||||
<td><input name="udf3" value="<?php echo (empty($posted['udf3'])) ? '' : $posted['udf3']; ?>" /></td>
|
||||
<td>UDF4: </td>
|
||||
<td><input name="udf4" value="<?php echo (empty($posted['udf4'])) ? '' : $posted['udf4']; ?>" /></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>UDF5: </td>
|
||||
<td><input name="udf5" value="<?php echo (empty($posted['udf5'])) ? '' : $posted['udf5']; ?>" /></td>
|
||||
<td>PG: </td>
|
||||
<td><input name="pg" value="<?php echo (empty($posted['pg'])) ? '' : $posted['pg']; ?>" /></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<?php if(!$hash) { ?>
|
||||
<td colspan="4"><input type="submit" value="Submit" /></td>
|
||||
<?php } ?>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,29 @@
|
||||
<?php
|
||||
$status=$_POST["status"];
|
||||
$firstname=$_POST["firstname"];
|
||||
$amount=$_POST["amount"];
|
||||
$txnid=$_POST["txnid"];
|
||||
|
||||
$posted_hash=$_POST["hash"];
|
||||
$key=$_POST["key"];
|
||||
$productinfo=$_POST["productinfo"];
|
||||
$email=$_POST["email"];
|
||||
$salt="";
|
||||
|
||||
// Salt should be same Post Request
|
||||
|
||||
If (isset($_POST["additionalCharges"])) {
|
||||
$additionalCharges=$_POST["additionalCharges"];
|
||||
$retHashSeq = $additionalCharges.'|'.$salt.'|'.$status.'|||||||||||'.$email.'|'.$firstname.'|'.$productinfo.'|'.$amount.'|'.$txnid.'|'.$key;
|
||||
} else {
|
||||
$retHashSeq = $salt.'|'.$status.'|||||||||||'.$email.'|'.$firstname.'|'.$productinfo.'|'.$amount.'|'.$txnid.'|'.$key;
|
||||
}
|
||||
$hash = hash("sha512", $retHashSeq);
|
||||
|
||||
if ($hash != $posted_hash) {
|
||||
echo "Invalid Transaction. Please try again";
|
||||
} else {
|
||||
echo "<h3>Your order status is ". $status .".</h3>";
|
||||
echo "<h4>Your transaction id for this transaction is ".$txnid.". You may try making the payment by clicking the link below.</h4>";
|
||||
}
|
||||
?>
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 3.3 KiB |
@@ -0,0 +1,28 @@
|
||||
<?php
|
||||
$status=$_POST["status"];
|
||||
$firstname=$_POST["firstname"];
|
||||
$amount=$_POST["amount"];
|
||||
$txnid=$_POST["txnid"];
|
||||
$posted_hash=$_POST["hash"];
|
||||
$key=$_POST["key"];
|
||||
$productinfo=$_POST["productinfo"];
|
||||
$email=$_POST["email"];
|
||||
$salt="";
|
||||
|
||||
// Salt should be same Post Request
|
||||
|
||||
If (isset($_POST["additionalCharges"])) {
|
||||
$additionalCharges=$_POST["additionalCharges"];
|
||||
$retHashSeq = $additionalCharges.'|'.$salt.'|'.$status.'|||||||||||'.$email.'|'.$firstname.'|'.$productinfo.'|'.$amount.'|'.$txnid.'|'.$key;
|
||||
} else {
|
||||
$retHashSeq = $salt.'|'.$status.'|||||||||||'.$email.'|'.$firstname.'|'.$productinfo.'|'.$amount.'|'.$txnid.'|'.$key;
|
||||
}
|
||||
$hash = hash("sha512", $retHashSeq);
|
||||
if ($hash != $posted_hash) {
|
||||
echo "Invalid Transaction. Please try again";
|
||||
} else {
|
||||
echo "<h3>Thank You. Your order status is ". $status .".</h3>";
|
||||
echo "<h4>Your Transaction ID for this transaction is ".$txnid.".</h4>";
|
||||
echo "<h4>We have received a payment of Rs. " . $amount . ". Your order will soon be shipped.</h4>";
|
||||
}
|
||||
?>
|
||||
Reference in New Issue
Block a user