Full code of EBS payment Gateway Integration in .net
Create Page name as pay.aspx and paste code
<%@ Page
Language="C#"
AutoEventWireup="true"
CodeFile="pay.aspx.cs"
Inherits="new_pay_pay"
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD
XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type"
content="text/html;
charset=iso-8859-1" />
<link rel="stylesheet"
href="Formvalidation.css"></link>
<script type="text/javascript"
src="FormValidation.js"></script>
<style type="text/css">
h1
{
font-family: 'Gentium Book Basic';
font-size: 24pt;
color: #08185A;
font-weight: 100;
margin-bottom: 0.1em;
}
h2.co
{
font-family: Arial,sans-serif;
font-size: 24pt;
color: #FFFFFF;
margin-top: 0.1em;
margin-bottom: 0.1em;
font-weight: 100;
}
h3.co
{
font-family: Arial,sans-serif;
font-size: 16pt;
color: #000000;
margin-top: 0.1em;
margin-bottom: 0.1em;
font-weight: 100;
}
h3
{
font-family: Arial,sans-serif;
font-size: 30pt;
color: #08185A;
}
body
{
font-family: Gentium Book Basic;
font-size: 40pt;
color: #08185A;
margin-top: 0px;
}
th
{
font-size: 15px;
background: #008080;
color: #FFFFFF;
font-weight: bold;
height: 30px;
}
td
{
font-size: 15px;
}
.pageTitle
{
font-size: 24px;
}
#mode
{
width: 126px;
}
</style>
<script language="JavaScript"
type="text/javascript">
function a2() {
document.getElementById('a1').style.display
= "none";
}
function checkit() {
var value = document.getElementById('channel').value;
if (value == '0') {
document.getElementById('a1').style.display
= "none";
}
else {
document.getElementById('a1').style.display
= "inline";
}
}
</script>
</head>
<body onload="a2()" style="background-color: lightgray; margin-left: 300px; margin-right: 300px;
margin-top: 0px;">
<center>
<div style="background-color:white;">
<form runat="server"
name="frmTransaction"
id="frmTransaction"
onsubmit="return
validateForm()" autocomplete="on" >
<div>
<h1>EBS - Version 3</h1>
<table width="700" style="text-align:left; ">
<tr>
<th
colspan="2">Request
Details</th>
</tr>
<tr>
<td
class="fieldName"
width="50%">*Account
Id</td>
<td
align="left"
width="50%"><input id="account_id" name="account_id" type="text" value="" runat="server" /></td>
</tr>
<tr>
<td
class="fieldName">*Channel</td>
<td
align="left">
<select id="channel"
name="channel"
runat="server"
onchange ="checkit()">
<option value="0" selected>Standard</option>
<option value="2">Direct</option>
</select>
</td>
</tr>
<tr>
<td
class="fieldName"
width="50%">*Currency</td>
<td
align="left"
width="50%">
<select id="currency"
name="currency"
runat="server"
onchange ="checkit()">
<option value="INR" selected>INR</option>
<option value="GBP">GBP</option>
<option value="EUR">EUR</option>
<option value="USD">USD</option>
</select>
</tr>
<tr>
<td class="fieldName">*Return URL</td>
<td
align="left"><input id="return_url" name="return_url" type="text" value="" runat="server" /></td>
</tr>
<tr>
<td
class="fieldName">*Mode</td>
<td
align="left"><input id="mode" name="mode" type="text" value="LIVE" runat="server" readonly="true"/></td>
</tr>
<tr>
<td class="fieldName"><span class="error">*</span>Secure Hash
Algorithm</td>
<td align="left">
<select id="algo" name="algo" runat="server">
<option value="MD5">MD5</option>
<option value="SHA1">SHA1</option>
<option value="SHA512">SHA512</option>
</select></td>
<tr>
<th
colspan="2">Transaction
Details</th>
</tr>
<tr>
<td
class="fieldName"><span class="error">*</span>Reference
Number</td>
<td
align="left"
width="50%"><input id="reference_no" name="reference_no" type="text" value="" runat="server" /></td>
</tr>
<tr>
<td
class="fieldName"><span class="error">*</span>Sale Amount</td>
<td
align="left"
width="50%"><input id="amount" name="amount" type="text" value="" runat="server" /></td>
</tr>
<tr>
<td class="fieldName"><span class="error">*</span>Description</td>
<td
align="left"
width="50%"><input id="description" name="description" type="text" value="" runat="server" /></td>
</tr>
<tr>
<th
colspan="2">Billing
Address</th>
</tr>
<tr>
<td
class="fieldName"><span class="error">*</span> Name</td>
<td
align="left"><input id="name" name="name" type="text" value="" runat="server" /></td>
</tr>
<tr>
<td
class="fieldName"><span class="error">*</span>Address</td>
<td
align="left"><input id="address" name="address" type="text" value="" runat="server" /></td>
</tr>
<tr>
<td
class="fieldName"><span class="error">*</span>City</td>
<td
align="left"><input id="city" name="city" type="text" value="" runat="server" /></td>
</tr>
<tr>
<td
class="fieldName">*State/Province</td>
<td
align="left"><input id="state" name="state" type="text" value="" runat="server" /></td>
</tr>
<tr>
<td
class="fieldName"><span class="error">*</span>ZIP/Postal
Code</td>
<td
align="left"><input id="postal_code" name="postal_code" type="text" value="" runat="server" /></td>
</tr>
<tr>
<td
class="fieldName"><span class="error">*</span>Country</td>
<td
align="left">
<select name="country"
id="country"
runat="server">
<option value=""></option>
<option value="ABW">Aruba</option>
<option value="AFG">Afghanistan</option>
<option value="AGO">Angola</option>
<option value="AIA">Anguilla</option>
<option value="ALA">Ã…land
Islands</option>
<option value="ALB">Albania</option>
<option value="AND">Andorra</option>
<option value="ANT">Netherlands
Antilles</option>
<option value="ARE">United
Arab Emirates</option>
<option value="ARG">Argentina</option>
<option value="ARM">Armenia</option>
<option value="ASM">American
Samoa</option>
<option value="ATA">Antarctica</option>
<option value="ATF">French
Southern Territories</option>
<option value="ATG">Antigua
and Barbuda</option>
<option value="AUS">Australia</option>
<option value="AUT">Austria</option>
<option value="AZE">Azerbaijan</option>
<option value="BDI">Burundi</option>
<option value="BEL">Belgium</option>
<option value="BEN">Benin</option>
<option value="BFA">Burkina
Faso</option>
<option value="BGD">Bangladesh</option>
<option value="BGR">Bulgaria</option>
<option value="BHR">Bahrain</option>
<option value="BHS">Bahamas</option>
<option value="BIH">Bosnia
and Herzegovina</option>
<option value="BLM">Saint
Barthélemy</option>
<option value="BLR">Belarus</option>
<option value="BLZ">Belize</option>
<option value="BMU">Bermuda</option>
<option value="BOL">Bolivia</option>
<option value="BRA">Brazil</option>
<option value="BRB">Barbados</option>
<option value="BRN">Brunei
Darussalam</option>
<option value="BTN">Bhutan</option>
<option value="BVT">Bouvet
Island</option>
<option value="BWA">Botswana</option>
<option value="CAF">Central
African Republic</option>
<option value="CAN">Canada</option>
<option value="CCK">Cocos
(Keeling) Islands</option>
<option value="CHE">Switzerland</option>
<option value="CHL">Chile</option>
<option value="CHN">China</option>
<option value="CIV">Côte
d`Ivoire</option>
<option value="CMR">Cameroon</option>
<option value="COD">Congo,
the Democratic Republic of the</option>
<option value="COG">Congo</option>
<option value="COK">Cook Islands</option>
<option value="COL">Colombia</option>
<option value="COM">Comoros</option>
<option value="CPV">Cape
Verde</option>
<option value="CRI">Costa
Rica</option>
<option value="CUB">Cuba</option>
<option value="CXR">Christmas
Island</option>
<option value="CYM">Cayman
Islands</option>
<option value="CYP">Cyprus</option>
<option value="CZE">Czech
Republic</option>
<option value="DEU">Germany</option>
<option value="DJI">Djibouti</option>
<option value="DMA">Dominica</option>
<option value="DNK">Denmark</option>
<option value="DOM">Dominican
Republic</option>
<option value="DZA">Algeria</option>
<option value="ECU">Ecuador</option>
<option value="EGY">Egypt</option>
<option value="ERI">Eritrea</option>
<option value="ESH">Western
Sahara</option>
<option value="ESP">Spain</option>
<option value="EST">Estonia</option>
<option value="ETH">Ethiopia</option>
<option value="FIN">Finland</option>
<option value="FJI">Fiji</option>
<option value="FLK">Falkland
Islands (Malvinas)</option>
<option value="FRA">France</option>
<option value="FRO">Faroe
Islands</option>
<option value="FSM">Micronesia,
Federated States of</option>
<option value="GAB">Gabon</option>
<option value="GBR">United
Kingdom</option>
<option value="GEO">Georgia</option>
<option value="GGY">Guernsey</option>
<option value="GHA">Ghana</option>
<option value="GIN">N
Guinea</option>
<option value="GIB">Gibraltar</option>
<option value="GLP">Guadeloupe</option>
<option value="GMB">Gambia</option>
<option value="GNB">Guinea-Bissau</option>
<option value="GNQ">Equatorial
Guinea</option>
<option value="GRC">Greece</option>
<option value="GRD">Grenada</option>
<option value="GRL">Greenland</option>
<option value="GTM">Guatemala</option>
<option value="GUF">French
Guiana</option>
<option value="GUM">Guam</option>
<option value="GUY">Guyana</option>
<option value="HKG">Hong
Kong</option>
<option value="HMD">Heard
Island and McDonald Islands</option>
<option value="HND">Honduras</option>
<option value="HRV">Croatia</option>
<option value="HTI">Haiti</option>
<option value="HUN">Hungary</option>
<option value="IDN">Indonesia</option>
<option value="IMN">Isle
of Man</option>
<option value="IND" selected="selected">India</option>
<option value="IOT">British
Indian Ocean Territory</option>
<option value="IRL">Ireland</option>
<option value="IRN">Iran,
Islamic Republic of</option>
<option value="IRQ">Iraq</option>
<option value="ISL">Iceland</option>
<option value="ISR">Israel</option>
<option value="ITA">Italy</option>
<option value="JAM">Jamaica</option>
<option value="JEY">Jersey</option>
<option value="JOR">Jordan</option>
<option value="JPN">Japan</option>
<option value="KAZ">Kazakhstan</option>
<option value="KEN">Kenya</option>
<option value="KGZ">Kyrgyzstan</option>
<option value="KHM">Cambodia</option>
<option value="KIR">Kiribati</option>
<option value="KNA">Saint
Kitts and Nevis</option>
<option value="KOR">Korea,
Republic of</option>
<option value="KWT">Kuwait</option>
<option value="LAO">Lao
People`s Democratic Republic</option>
<option value="LBN">Lebanon</option>
<option value="LBR">Liberia</option>
<option value="LBY">Libyan
Arab Jamahiriya</option>
<option value="LCA">Saint
Lucia</option>
<option value="LIE">Liechtenstein</option>
<option value="LKA">Sri Lanka</option>
<option value="LSO">Lesotho</option>
<option value="LTU">Lithuania</option>
<option value="LUX">Luxembourg</option>
<option value="LVA">Latvia</option>
<option value="MAC">Macao</option>
<option value="MAF">Saint
Martin (French part)</option>
<option value="MAR">Morocco</option>
<option value="MCO">Monaco</option>
<option value="MDA">Moldova</option>
<option value="MDG">Madagascar</option>
<option value="MDV">Maldives</option>
<option value="MEX">Mexico</option>
<option value="MHL">Marshall
Islands</option>
<option value="MKD">Macedonia,
the former Yugoslav Republic of</option>
<option value="MLI">Mali</option>
<option value="MLT">Malta</option>
<option value="MMR">Myanmar</option>
<option value="MNE">Montenegro</option>
<option value="MNG">Mongolia</option>
<option value="MNP">Northern
Mariana Islands</option>
<option value="MOZ">Mozambique</option>
<option value="MRT">Mauritania</option>
<option value="MSR">Montserrat</option>
<option value="MTQ">Martinique</option>
<option value="MUS">Mauritius</option>
<option value="MWI">Malawi</option>
<option value="MYS">Malaysia</option>
<option value="MYT">Mayotte</option>
<option value="NAM">Namibia</option>
<option value="NCL">New
Caledonia</option>
<option value="NER">Niger</option>
<option value="NFK">Norfolk
Island</option>
<option value="NGA">Nigeria</option>
<option value="NIC">Nicaragua</option>
<option value="NOR">R
Norway</option>
<option value="NIU">Niue</option>
<option value="NLD">Netherlands</option>
<option value="NPL">Nepal</option>
<option value="NRU">Nauru</option>
<option value="NZL">New
Zealand</option>
<option value="OMN">Oman</option>
<option value="PAK">Pakistan</option>
<option value="PAN">Panama</option>
<option value="PCN">Pitcairn</option>
<option value="PER">Peru</option>
<option value="PHL">Philippines</option>
<option value="PLW">Palau</option>
<option value="PNG">Papua
New Guinea</option>
<option value="POL">Poland</option>
<option value="PRI">Puerto
Rico</option>
<option value="PRK">Korea,
Democratic People`s Republic of</option>
<option value="PRT">Portugal</option>
<option value="PRY">Paraguay</option>
<option value="PSE">Palestinian
Territory, Occupied</option>
<option value="PYF">French
Polynesia</option>
<option value="QAT">Qatar</option>
<option value="REU">Réunion</option>
<option value="ROU">Romania</option>
<option value="RUS">Russian Federation</option>
<option value="RWA">Rwanda</option>
<option value="SAU">Saudi
Arabia</option>
<option value="SDN">Sudan</option>
<option value="SEN">Senegal</option>
<option value="SGP">Singapore</option>
<option value="SGS">South
Georgia and the South Sandwich Islands</option>
<option value="SHN">Saint Helena</option>
<option value="SJM">Svalbard
and Jan Mayen</option>
<option value="SLB">Solomon
Islands</option>
<option value="SLE">Sierra
Leone</option>
<option value="SLV">El
Salvador</option>
<option value="SMR">San
Marino</option>
<option value="SOM">Somalia</option>
<option value="SPM">Saint
Pierre and Miquelon</option>
<option value="SRB">Serbia</option>
<option value="STP">Sao
Tome and Principe</option>
<option value="SUR">Suriname</option>
<option value="SVK">Slovakia</option>
<option value="SVN">Slovenia</option>
<option value="SWE">Sweden</option>
<option value="SWZ">Swaziland</option>
<option value="SYC">Seychelles</option>
<option value="SYR">Syrian
Arab Republic</option>
<option value="TCA">Turks
and Caicos Islands</option>
<option value="TCD">Chad</option>
<option value="TGO">Togo</option>
<option value="THA">Thailand</option>
<option value="TJK">Tajikistan</option>
<option value="TKL">Tokelau</option>
<option value="TKM">Turkmenistan</option>
<option value="TLS">Timor-Leste</option>
<option value="TON">Tonga</option>
<option value="TTO">Trinidad
and Tobago</option>
<option value="TUN">Tunisia</option>
<option value="TUR">Turkey</option>
<option value="TUV">Tuvalu</option>
<option value="TWN">Taiwan,
Province of China</option>
<option value="TZA">Tanzania,
United Republic of</option>
<option value="UGA">Uganda</option>
<option value="UKR">Ukraine</option>
<option value="UMI">United
States Minor Outlying Islands</option>
<option value="URY">Uruguay</option>
<option value="USA">United States</option>
<option value="UZB">Uzbekistan</option>
<option value="VAT">Holy
See (Vatican City State)</option>
<option value="VCT">Saint
Vincent and the Grenadines</option>
<option value="VEN">Venezuela</option>
<option value="VGB">Virgin
Islands, British</option>
<option value="VIR">Virgin
Islands, U.S.</option>
<option value="VNM">Viet
Nam</option>
<option value="VUT">Vanuatu</option>
<option value="WLF">Wallis
and Futuna</option>
<option value="WSM">Samoa</option>
<option value="YEM">Yemen</option>
<option value="ZAF">South
Africa</option>
<option value="ZMB">Zambia</option>
<option value="ZWE">Zimbabwe</option>
</select>
</td>
</tr>
<tr>
<td
class="fieldName"><span class="error">*</span>Email</td>
<td
align="left"><input id="email" name="email" type="text" value="" runat="server" /></td>
</tr>
<tr>
<td
class="fieldName"><span class="error">*</span>Telephone</td>
<td align="left"><input
id="phone"
name="phone"
type="text"
value=""
runat="server"
/></td>
</tr>
<tr>
<th
colspan="2">Shipping
Details</th>
</tr>
<tr>
<td
class="fieldName"><span class="error">*</span>Ship Name</td>
<td
align="left"><input id="ship_name" name="ship_name" type="text" value="" runat="server" /></td>
</tr>
<tr>
<td
class="fieldName"><span class="error">*</span>Ship
Address</td>
<td
align="left"><input id="ship_address" name="ship_address" type="text" value="" runat="server" /></td>
</tr>
<tr>
<td
class="fieldName"><span class="error">*</span>Ship City</td>
<td
align="left"><input id="ship_city" name="ship_city" type="text" value="" runat="server" /></td>
</tr>
<tr>
<td class="fieldName">*Ship State</td>
<td
align="left"><input id="ship_state" name="ship_state" type="text" value="" runat="server" /></td>
</tr>
<tr>
<td
class="fieldName"><span class="error">*</span>Ship
Country</td>
<td
align="left">
<select name="ship_country"
id="ship_country"
runat="server">
<option value=""></option>
<option value="ABW">Aruba</option>
<option value="AFG">Afghanistan</option>
<option value="AGO">Angola</option>
<option value="AIA">Anguilla</option>
<option value="ALA">Ã…land
Islands</option>
<option value="ALB">Albania</option>
<option value="AND">Andorra</option>
<option value="ANT">Netherlands
Antilles</option>
<option value="ARE">United
Arab Emirates</option>
<option value="ARG">Argentina</option>
<option value="ARM">Armenia</option>
<option value="ASM">American
Samoa</option>
<option value="ATA">Antarctica</option>
<option value="ATF">French
Southern Territories</option>
<option value="ATG">Antigua
and Barbuda</option>
<option value="AUS">Australia</option>
<option value="AUT">Austria</option>
<option value="AZE">Azerbaijan</option>
<option value="BDI">Burundi</option>
<option value="BEL">Belgium</option>
<option value="BEN">Benin</option>
<option value="BFA">Burkina
Faso</option>
<option value="BGD">Bangladesh</option>
<option value="BGR">Bulgaria</option>
<option value="BHR">Bahrain</option>
<option value="BHS">Bahamas</option>
<option value="BIH">Bosnia
and Herzegovina</option>
<option value="BLM">Saint
Barthélemy</option>
<option value="BLR">Belarus</option>
<option value="BLZ">Belize</option>
<option value="BMU">Bermuda</option>
<option value="BOL">Bolivia</option>
<option value="BRA">Brazil</option>
<option value="BRB">Barbados</option>
<option value="BRN">Brunei
Darussalam</option>
<option value="BTN">Bhutan</option>
<option value="BVT">Bouvet
Island</option>
<option value="BWA">Botswana</option>
<option value="CAF">Central
African Republic</option>
<option value="CAN">Canada</option>
<option value="CCK">Cocos
(Keeling) Islands</option>
<option value="CHE">Switzerland</option>
<option value="CHL">Chile</option>
<option value="CHN">China</option>
<option value="CIV">Côte
d`Ivoire</option>
<option value="CMR">Cameroon</option>
<option value="COD">Congo,
the Democratic Republic of the</option>
<option value="COG">Congo</option>
<option value="COK">Cook
Islands</option>
<option value="COL">Colombia</option>
<option value="COM">Comoros</option>
<option value="CPV">Cape
Verde</option>
<option value="CRI">Costa
Rica</option>
<option value="CUB">Cuba</option>
<option value="CXR">Christmas
Island</option>
<option value="CYM">Cayman
Islands</option>
<option value="CYP">Cyprus</option>
<option value="CZE">Czech
Republic</option>
<option value="DEU">Germany</option>
<option value="DJI">Djibouti</option>
<option value="DMA">Dominica</option>
<option value="DNK">Denmark</option>
<option value="DOM">Dominican
Republic</option>
<option value="DZA">Algeria</option>
<option value="ECU">Ecuador</option>
<option value="EGY">Egypt</option>
<option value="ERI">Eritrea</option>
<option value="ESH">Western
Sahara</option>
<option value="ESP">Spain</option>
<option value="EST">Estonia</option>
<option value="ETH">Ethiopia</option>
<option value="FIN">Finland</option>
<option value="FJI">Fiji</option>
<option value="FLK">Falkland
Islands (Malvinas)</option>
<option value="FRA">France</option>
<option value="FRO">Faroe
Islands</option>
<option value="FSM">Micronesia,
Federated States of</option>
<option value="GAB">Gabon</option>
<option value="GBR">United
Kingdom</option>
<option value="GEO">Georgia</option>
<option value="GGY">Guernsey</option>
<option value="GHA">Ghana</option>
<option value="GIN">N
Guinea</option>
<option value="GIB">Gibraltar</option>
<option value="GLP">Guadeloupe</option>
<option value="GMB">Gambia</option>
<option value="GNB">Guinea-Bissau</option>
<option value="GNQ">Equatorial
Guinea</option>
<option value="GRC">Greece</option>
<option value="GRD">Grenada</option>
<option value="GRL">Greenland</option>
<option value="GTM">Guatemala</option>
<option value="GUF">French
Guiana</option>
<option value="GUM">Guam</option>
<option value="GUY">Guyana</option>
<option value="HKG">Hong
Kong</option>
<option value="HMD">Heard
Island and McDonald Islands</option>
<option value="HND">Honduras</option>
<option value="HRV">Croatia</option>
<option value="HTI">Haiti</option>
<option value="HUN">Hungary</option>
<option value="IDN">Indonesia</option>
<option value="IMN">Isle
of Man</option>
<option value="IND" selected="selected">India</option>
<option value="IOT">British
Indian Ocean Territory</option>
<option value="IRL">Ireland</option>
<option value="IRN">Iran,
Islamic Republic of</option>
<option value="IRQ">Iraq</option>
<option value="ISL">Iceland</option>
<option value="ISR">Israel</option>
<option value="ITA">Italy</option>
<option value="JAM">Jamaica</option>
<option value="JEY">Jersey</option>
<option value="JOR">Jordan</option>
<option value="JPN">Japan</option>
<option value="KAZ">Kazakhstan</option>
<option value="KEN">Kenya</option>
<option value="KGZ">Kyrgyzstan</option>
<option value="KHM">Cambodia</option>
<option value="KIR">Kiribati</option>
<option value="KNA">Saint
Kitts and Nevis</option>
<option value="KOR">Korea,
Republic of</option>
<option value="KWT">Kuwait</option>
<option value="LAO">Lao
People`s Democratic Republic</option>
<option value="LBN">Lebanon</option>
<option value="LBR">Liberia</option>
<option value="LBY">Libyan
Arab Jamahiriya</option>
<option value="LCA">Saint
Lucia</option>
<option value="LIE">Liechtenstein</option>
<option value="LKA">Sri
Lanka</option>
<option value="LSO">Lesotho</option>
<option value="LTU">Lithuania</option>
<option value="LUX">Luxembourg</option>
<option value="LVA">Latvia</option>
<option value="MAC">Macao</option>
<option value="MAF">Saint
Martin (French part)</option>
<option value="MAR">Morocco</option>
<option value="MCO">Monaco</option>
<option value="MDA">Moldova</option>
<option value="MDG">Madagascar</option>
<option value="MDV">Maldives</option>
<option value="MEX">Mexico</option>
<option value="MHL">Marshall
Islands</option>
<option value="MKD">Macedonia,
the former Yugoslav Republic of</option>
<option value="MLI">Mali</option>
<option value="MLT">Malta</option>
<option value="MMR">Myanmar</option>
<option value="MNE">Montenegro</option>
<option value="MNG">Mongolia</option>
<option value="MNP">Northern
Mariana Islands</option>
<option value="MOZ">Mozambique</option>
<option value="MRT">Mauritania</option>
<option value="MSR">Montserrat</option>
<option value="MTQ">Martinique</option>
<option value="MUS">Mauritius</option>
<option value="MWI">Malawi</option>
<option value="MYS">Malaysia</option>
<option value="MYT">Mayotte</option>
<option value="NAM">Namibia</option>
<option value="NCL">New
Caledonia</option>
<option value="NER">Niger</option>
<option value="NFK">Norfolk
Island</option>
<option value="NGA">Nigeria</option>
<option value="NIC">Nicaragua</option>
<option value="NOR">R
Norway</option>
<option value="NIU">Niue</option>
<option value="NLD">Netherlands</option>
<option value="NPL">Nepal</option>
<option value="NRU">Nauru</option>
<option value="NZL">New
Zealand</option>
<option value="OMN">Oman</option>
<option value="PAK">Pakistan</option>
<option value="PAN">Panama</option>
<option value="PCN">Pitcairn</option>
<option value="PER">Peru</option>
<option value="PHL">Philippines</option>
<option value="PLW">Palau</option>
<option value="PNG">Papua
New Guinea</option>
<option value="POL">Poland</option>
<option value="PRI">Puerto
Rico</option>
<option value="PRK">Korea,
Democratic People`s Republic of</option>
<option value="PRT">Portugal</option>
<option value="PRY">Paraguay</option>
<option value="PSE">Palestinian Territory, Occupied</option>
<option value="PYF">French
Polynesia</option>
<option value="QAT">Qatar</option>
<option value="REU">Réunion</option>
<option value="ROU">Romania</option>
<option value="RUS">Russian
Federation</option>
<option value="RWA">Rwanda</option>
<option value="SAU">Saudi Arabia</option>
<option value="SDN">Sudan</option>
<option value="SEN">Senegal</option>
<option value="SGP">Singapore</option>
<option value="SGS">South
Georgia and the South Sandwich Islands</option>
<option value="SHN">Saint
Helena</option>
<option value="SJM">Svalbard
and Jan Mayen</option>
<option value="SLB">Solomon
Islands</option>
<option value="SLE">Sierra
Leone</option>
<option value="SLV">El
Salvador</option>
<option value="SMR">San
Marino</option>
<option value="SOM">Somalia</option>
<option value="SPM">Saint
Pierre and Miquelon</option>
<option value="SRB">Serbia</option>
<option value="STP">Sao Tome and Principe</option>
<option value="SUR">Suriname</option>
<option value="SVK">Slovakia</option>
<option value="SVN">Slovenia</option>
<option value="SWE">Sweden</option>
<option value="SWZ">Swaziland</option>
<option value="SYC">Seychelles</option>
<option value="SYR">Syrian
Arab Republic</option>
<option value="TCA">Turks
and Caicos Islands</option>
<option value="TCD">Chad</option>
<option value="TGO">Togo</option>
<option value="THA">Thailand</option>
<option value="TJK">Tajikistan</option>
<option value="TKL">Tokelau</option>
<option value="TKM">Turkmenistan</option>
<option value="TLS">Timor-Leste</option>
<option value="TON">Tonga</option>
<option value="TTO">Trinidad
and Tobago</option>
<option value="TUN">Tunisia</option>
<option value="TUR">Turkey</option>
<option value="TUV">Tuvalu</option>
<option value="TWN">Taiwan,
Province of China</option>
<option value="TZA">Tanzania,
United Republic of</option>
<option value="UGA">Uganda</option>
<option value="UKR">Ukraine</option>
<option value="UMI">United
States Minor Outlying Islands</option>
<option value="URY">Uruguay</option>
<option value="USA">United
States</option>
<option value="UZB">Uzbekistan</option>
<option value="VAT">Holy
See (Vatican City State)</option>
<option value="VCT">Saint
Vincent and the Grenadines</option>
<option value="VEN">Venezuela</option>
<option value="VGB">Virgin
Islands, British</option>
<option value="VIR">Virgin
Islands, U.S.</option>
<option value="VNM">Viet
Nam</option>
<option value="VUT">Vanuatu</option>
<option value="WLF">Wallis
and Futuna</option>
<option value="WSM">Samoa</option>
<option value="YEM">Yemen</option>
<option value="ZAF">South
Africa</option>
<option value="ZMB">Zambia</option>
<option value="ZWE">Zimbabwe</option>
</select>
</td>
</tr>
<tr>
<td
class="fieldName"><span class="error">*</span>Ship Phone</td>
<td
align="left"><input id="ship_phone" name="ship_phone" type="text" value="" runat="server" /></td>
</tr>
<tr>
<td
class="fieldName"><span class="error">*</span>Ship Postal
Code</td>
<td
align="left"><input id="ship_postal_code" name="ship_postal_code" type="text" value="" runat="server"
/></td>
</tr>
<tr>
<td
valign="top"
align="center"
colspan="2">
<span class="error">*</span> <span>denotes
required field</span>
</td>
</tr>
<tr>
<td
valign="top"
align="center"
colspan="2">
<asp:Button ID="submitted" runat="server" Text="Submit" onclick="submitted_Click" OnClientClick="cardvalidate();
" />
<input id="submitted1"
name="submit1"
value="Submit"
type="submit"
runat="server"
visible="false"
/>
<input value="Reset"
type="reset"
/>
</td>
</tr>
</table>
</div>
<div id="a1">
<table width="700" style="text-align:left;">
<tr>
<th
colspan="2"
id="a">Card
details</th>
</tr>
<tr>
<td
class="fieldName"
width="50%">*Name
on Card</td>
<td
align="left"
width="50%"><input id="name_on_card" name="name_on_card" type="text" value="" runat="server" /></td>
</tr>
<tr>
<td
class="fieldName"
width="50%">*Card
Number</td>
<td
align="left"
width="50%"><input id="card_number" name="card_number" type="text" value="" runat="server" /></td>
</tr>
<tr>
<td
class="fieldName"
width="50%">*Card
Expiry</td>
<td
align="left"
width="50%"><input id="card_expiry" name="card_expiry" type="text" value="" runat="server"/></td>
</tr>
<tr>
<td
class="fieldName"
width="50%">*CVV</td>
<td
align="left"
width="50%"><input id="card_cvv" name="card_cvv" type="password" value="" runat="server"/></td>
</tr></table>
</div>
</form>
</div>
</center>
</body>
</html>
Paste code in pay.aspx.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Collections.Specialized;
public partial class new_pay_pay
: System.Web.UI.Page
{
protected void
submitted_Click(object sender, EventArgs e)
{
string Url = "hash.aspx";
string Method = "post";
string FormName = "form1";
NameValueCollection FormFields = new NameValueCollection();
FormFields.Add("account_id",
account_id.Value);
FormFields.Add("channel",
channel.Value);
FormFields.Add("currency",
currency.Value);
FormFields.Add("reference_no",
reference_no.Value);
FormFields.Add("amount",
amount.Value);
FormFields.Add("description",
description.Value);
FormFields.Add("name",
name.Value);
FormFields.Add("address",
address.Value);
FormFields.Add("city",
city.Value);
FormFields.Add("state",
state.Value);
FormFields.Add("postal_code",
postal_code.Value);
FormFields.Add("country",
country.Value);
FormFields.Add("email",
email.Value);
FormFields.Add("phone",
phone.Value);
FormFields.Add("mode",
mode.Value);
FormFields.Add("return_url",
return_url.Value);
FormFields.Add("ship_name",
ship_name.Value);
FormFields.Add("ship_address",
ship_address.Value);
FormFields.Add("ship_city",
ship_city.Value);
FormFields.Add("ship_state",
ship_state.Value);
FormFields.Add("ship_country",
ship_country.Value );
FormFields.Add("ship_phone",
ship_phone.Value);
FormFields.Add("algo",
algo.Value);
FormFields.Add("ship_postal_code",
ship_postal_code.Value);
if (channel.Value == "2")
{
FormFields.Add("name_on_card",
name_on_card.Value);
FormFields.Add("card_number", card_number.Value);
FormFields.Add("card_expiry",
card_expiry.Value);
FormFields.Add("card_cvv",
card_cvv.Value);
}
else
{
FormFields.Add("name_on_card",
"null");
FormFields.Add("card_number",
"null");
FormFields.Add("card_expiry",
"null");
FormFields.Add("card_cvv", "null");
}
Response.Clear();
Response.Write("<html><head>");
Response.Write(string.Format("</head><body
onload=\"document.{0}.submit()\">", FormName));
Response.Write(string.Format("<form name=\"{0}\"
method=\"{1}\" action=\"{2}\" >", FormName,
Method, Url));
for (int i = 0; i
< FormFields.Keys.Count; i++)
{
Response.Write(string.Format("<input name=\"{0}\"
type=\"hidden\" value=\"{1}\">",
FormFields.Keys[i], FormFields[FormFields.Keys[i]]));
}
Response.Write("</form>");
Response.Write("</body></html>");
Response.End();
}
protected void
Page_Load(object sender, EventArgs e)
{
submitted.OnClientClick = "return
validateForm()";
}
}
Create page Hash.aspx leave it blank on code behind past code.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Security.Cryptography;
using System.Text;
using System.Collections;
public partial class new_pay_hash
: System.Web.UI.Page
{
static int Compare1(KeyValuePair<string,
string> a, KeyValuePair<string, string> b)
{
return a.Key.CompareTo(b.Key);
}
protected void
Page_Load(object sender, EventArgs e)
{
string name = Request.Form["algo"];
if (Request.HttpMethod == "POST")
{
//Response.Write(name);
string hashValue = "ebskey";
//Pass your Registered secret key available from EBS
secure portal
string V3URL = "https://secure.ebs.in/pg/ma/payment/request";
string HashData = hashValue;
List<KeyValuePair<string, string>>
postparamslist = new List<KeyValuePair<string,
string>>();
for (int i = 0; i
< Request.Form.Keys.Count; i++)
{
KeyValuePair<string, string>
postparam = new KeyValuePair<string, string>(Request.Form.Keys[i],
Request.Form[i]);
if (Request.Form.Keys[i] != "V3URL" && Request.Form.Keys[i]
!= "submitted")
postparamslist.Add(postparam);
}
postparamslist.Sort(Compare1);
foreach (KeyValuePair<string, string>
param in postparamslist)
{
HashData += "|" +
param.Value;
}
string hashedvalue = "";
if (hashValue.Length > 0)
{
hashedvalue += computeHash(HashData, name);
}
string FormName = "form1";
string Method = "post";
Response.Clear();
Response.Write("<html><head>");
Response.Write("<META
HTTP-EQUIV=\"CACHE-CONTROL\" CONTENT=\"no-store, no-cache,
must-revalidate\" />");
Response.Write("<META
HTTP-EQUIV=\"PRAGMA\" CONTENT=\"no-store, no-cache,
must-revalidate\" />");
Response.Write(string.Format("</head><body
onload=\"document.{0}.submit()\">", FormName));
Response.Write(string.Format("<form name=\"{0}\"
method=\"{1}\" action=\"{2}\" >", FormName,
Method, V3URL));
foreach (KeyValuePair<string, string>
param in postparamslist)
{
Response.Write(string.Format("<input name=\"{0}\"
type=\"hidden\" value=\"{1}\" />",
param.Key, param.Value));
}
// Response.Write("<input type=\"hidden\"
name=\"response\" value=" + md5HashData + " />");
Response.Write("<input
type=\"hidden\" name=\"secure_hash\" value=" +
hashedvalue + " />");
Response.Write("</form>");
Response.Write("</body></html>");
Response.End();
}
}
static string
computeHash(string input, string name)
{
byte[] data = null;
switch (name)
{
case "MD5":
data = HashAlgorithm.Create("MD5").ComputeHash(Encoding.ASCII.GetBytes(input));
break;
case "SHA1":
data = HashAlgorithm.Create("SHA1").ComputeHash(Encoding.ASCII.GetBytes(input));
break;
case "SHA512":
data = HashAlgorithm.Create("SHA512").ComputeHash(Encoding.ASCII.GetBytes(input));
break;
default:
break;
}
StringBuilder sBuilder = new
StringBuilder();
for (int i = 0; i
< data.Length; i++)
{
sBuilder.Append(data[i].ToString("x2"));
}
return sBuilder.ToString().ToUpper();
}
}
Now create page response.aspx in code behind past code
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Security.Cryptography;
using System.Text;
using System.Collections;
public partial class new_pay_Response
: System.Web.UI.Page
{
static int Compare1(KeyValuePair<string,
string> a, KeyValuePair<string, string> b)
{
return a.Key.CompareTo(b.Key);
}
protected void
Page_Load(object sender, EventArgs e)
{
List<KeyValuePair<string, string>>
postparamslist = new List<KeyValuePair<string,
string>>();
if (Request.HttpMethod == "GET")
{
for (int i = 0; i
< Request.QueryString.Keys.Count; i++)
{
KeyValuePair<string, string>
postparam = new KeyValuePair<string, string>(Request.QueryString.Keys[i],
Request.QueryString[i]);
postparamslist.Add(postparam);
}
}
else
{
for (int i = 0; i
< Request.Form.Keys.Count; i++)
{
KeyValuePair<string, string>
postparam = new KeyValuePair<string, string>(Request.Form.Keys[i],
Request.Form[i]);
postparamslist.Add(postparam);
}
}
postparamslist.Sort(Compare1);
string HashData = "your secret key here";
//Pass Your SecretKey Here
string resp_hd = Request.Params["SecureHash"];
int rc = Convert.ToInt32(Request.Params["ResponseCode"]);
string
rflag = Request.Params["IsFlagged"];
foreach (KeyValuePair<string, string>
param in postparamslist)
{
if (param.Key != "SecureHash"
&& param.Value != "")
HashData += "|" +
param.Value;
}
string hashedvalue = "";
hashedvalue += computeHash(HashData);
if (hashedvalue == resp_hd)
{
if (rc == 0)
{
if (rflag == "NO")
Response.Write("<center>Your Transaction
was successful</center>");
else
Response.Write("<center>Your
payment is kept on hold</center>");
}
else if (rc == 1)
Response.Write("<center>Your
payment is pending</center>"); //ResponseCode
'1' is only applcable for NEFT/Challan based payments
else
Response.Write("<center>Your
transaction failed</center>");
}
else
Response.Write("<center>Hash
Validation Failed!</center>");
Response.Write("<center><table>");
Response.Write("<tr><th
colspan=\"2\">Transaction Details</th></tr>");
foreach (KeyValuePair<string, string>
param in postparamslist)
{
Response.Write("<tr><td>"
+ param.Key + "</td><td>"
+ param.Value + "</td></tr>");
}
Response.Write("</table></center>");
}
static string
computeHash(string input)
{
byte[] data = null;
data
= HashAlgorithm.Create("SHA512").ComputeHash(Encoding.ASCII.GetBytes(input));
StringBuilder sBuilder = new
StringBuilder();
for (int i = 0; i
< data.Length; i++)
{
sBuilder.Append(data[i].ToString("x2"));
}
return sBuilder.ToString().ToUpper();
}
}
Account ID - 5880
Secret key – ebskey
mode - TEST
Following Card no can be used for testing phase
Card No : 4111111111111111
Exp Date : 07/2020
CVV : 123
Name of the Issuing Bank: EBS
Follow or leave a comment if you have liked it or its helpful for you.
please add code for response.aspx ..above response.aspx code is same as hash.aspx code
ReplyDeleteHi Sorry for the inconvenience, i have updated now you can check.
Delete