3
votes

i m using ccavenue php integration demo file.when i fill out the merchant id and 32 bit working key and submi the data no response return. Only blank page comes with below url

http://www.ccavenue.com/shopzone/cc_details.jsp

i m unable to understand that whats going wrong with integration.

Here is the code for the form which i m filling:

<form method="post" action="checkout.php">
    <table>
        <tr>
            <td>Merchant Id : </td><td><input type="text" name="Merchant_Id" value=""></td>
        </tr>
        <tr>
            <td>Amount : </td><td><input type="text" name="Amount" value="10.00"></td>
        </tr>
        <tr>
            <td>Order Id : </td><td><input type="text" name="Order_Id" value="test_r1234"></td>
        </tr>
        <tr>
            <td>Redirect URL : </td><td><input type="text" name="Redirect_Url" value="redirect.php"></td>
        </tr>

        The Billing details of the customer have to be mandatorily sent via the below mentioned parameters. Please note this has to be authentic data else the transaction would be rejected by the risk team.

        <tr>
            <td>Bill Name : </td><td><input type="text" name="billing_cust_name" value="sachin tyagi"></td>
        </tr>
        <tr>
            <td>Bill Address : </td><td><input type="text" name="billing_cust_address" value="sector 20- g158 , noida"></td>
        </tr>
        <tr>
            <td>Bill Country : </td><td><input type="text" name="billing_cust_country" value="india"></td>
        </tr>
        <tr>
            <td>Bill State : </td><td><input type="text" name="billing_cust_state" value="UP"></td>
        </tr>
        <tr>
            <td>Bill City : </td><td><input type="text" name="billing_city" value="Noida"></td>
        </tr>
        <tr>
            <td>Bill Zip : </td><td><input type="text" name="billing_zip" value="201301"></td>
        </tr>
        <tr>
            <td>Bill Tel : </td><td><input type="text" name="billing_cust_tel" value="08826483709"></td>
        </tr>
        <tr>
            <td>Bill Email : </td><td><input type="text" name="billing_cust_email" value="[email protected]"></td>
        </tr>
        <tr>
            <td>Ship Name : </td><td><input type="text" name="delivery_cust_name" value="sachin tyagi"></td>
        </tr>
        <tr>
            <td>Ship Address : </td><td><input type="text" name="delivery_cust_address" value="sector 20- g158 , noida"></td>
        </tr>
        <tr>
            <td>Ship Country : </td><td><input type="text" name="delivery_cust_country" value="India"></td>
        </tr>
        <tr>
            <td>Ship State : </td><td><input type="text" name="delivery_cust_state" value="UP"></td>
        </tr>
        <tr>
            <td>delivery city : </td><td><input type="text" name="delivery_city" value="Noida"></td>
        </tr>
        <tr>
            <td>Ship Zip : </td><td><input type="text" name="delivery_zip" value="201301"></td>
        </tr>
        <tr>
            <td>Ship Tel : </td><td><input type="text" name="delivery_cust_tel" value="08826483709"></td>
        </tr>
        <tr>
            <td>Delivery Notes : </td><td><input type="text" name="delivery_cust_notes" value="test Notes"></td>
        </tr>
         <tr>
            <td>PayType: [dummy values, please contact [email protected] for actual bank short codes]: </td><td><input type="text" name="payType" value=""></td>
        </tr>
        <tr>
            <td>Billing Page Heading : </td><td><input type="text" name="billingPageHeading" value=""></td>
        </tr>

        <tr>
            <td colspan='2' align='center'>
                <INPUT TYPE="submit" value="submit">
            </td>
        </tr>
    </table>
</form>
1
plzzz guys help me its too urgent for me..i filled my merchant id and working key from my ccavenue account.Manindra Singh

1 Answers

2
votes

PHP Script for Integration of CCAvenue Payment Gateway :

CCavenue is most popular Payment gateway for online Shopping in india. It provide payment through using International credit card of your Bank (who has bond with CCavenue) online Account or using it’s debit card(ATM card). It is one of the most secure place that provides money to online shop.

For Integrate it with your website you should have CCavenue account and they give you a merchant id and a unique key for your site that is most important for money transaction.

Php Function’s Require TO Validate Require Value for CCAvenue Payment.

It requires 2 files commonly.,like

File #1 : ccavenueValidate.php

<?php

    function getCheckSum($MerchantId,$Amount,$OrderId ,$URL,$WorkingKey)
    {
        $str ="$MerchantId|$OrderId|$Amount|$URL|$WorkingKey";
        $adler = 1;
        $adler = adler32($adler,$str);
        return $adler;
    }

    function verifyCheckSum($MerchantId,$OrderId,$Amount,$AuthDesc,$CheckSum,$WorkingKey)
    {
        $str = "$MerchantId|$OrderId|$Amount|$AuthDesc|$WorkingKey";
        $adler = 1;
        $adler = adler32($adler,$str);

        if($adler == $CheckSum)
            return "true" ;
        else
            return "false" ;
    }

    function adler32($adler , $str)
    {
        $BASE =  65521 ;

        $s1 = $adler & 0xffff ;
        $s2 = ($adler >> 16) & 0xffff;
        for($i = 0 ; $i < strlen($str) ; $i++)
        {
            $s1 = ($s1 + Ord($str[$i])) % $BASE ;
            $s2 = ($s2 + $s1) % $BASE ;
            //echo "s1 : $s1 <BR> s2 : $s2 <BR>";

        }
        return leftshift($s2 , 16) + $s1;
    }

    function leftshift($str , $num)
    {

        $str = DecBin($str);

        for( $i = 0 ; $i < (64 - strlen($str)) ; $i++)
            $str = "0".$str ;

        for($i = 0 ; $i < $num ; $i++)
        {
            $str = $str."0";
            $str = substr($str , 1 ) ;
            //echo "str : $str <BR>";
        }
        return cdec($str) ;
    }

    function cdec($num)
    {

        for ($n = 0 ; $n < strlen($num) ; $n++)
        {
            $temp = $num[$n] ;
            $dec =  $dec + $temp*pow(2 , strlen($num) - $n - 1);
        }

        return $dec;
    }
?>

File #2 : form.php

Processing Page Code CCAvenue Passing Parameter That Require for Complete the Shopping In this page data comes from checkout form of shopping cart collect and validate according CCAcenue rules and arrange in given format and send it CCAenue sever for payment Processing.

<?php
    include(ccavenueValidate.php);
    $ccavenuemerchantId= "";//This id(also User Id)  available at "Generate Working Key" of "Settings & Options"
    $Amount = $orderdata[5];//your script should substitute the amount in the quotes provided here
    $orderId= $orderdata[0];;//your script should substitute the order description in the quotes provided here
    $WorkingKey = "";//Given to merchant by ccavenue
    $returnUrl ="http://www.example.com/shopping.php"; //url of your successpage
    $Checksum = getCheckSum($Merchant_Id,$Amount,$orderId,$Redirect_Url,$WorkingKey); // Validate All value
?>

<p align="center" style="font-family:Calibri; font-size:24px;color:#3670A7;">Processing to CCAvenue..............</p>

<form id="submittoserver" method="post" action="https://www.ccavenue.com/shopzone/cc_details.jsp">
    <input type="hidden" name="Merchant_Id" value="<?php echo $ccavenuemerchantId; ?>">
    <input type="hidden" name="Amount" value="<?php echo $Amount; ?>">
    <input type="hidden" name="Order_Id" value="<?php echo $ orderId; ?>">
    <input type="hidden" name="Redirect_Url" value="<?php echo $ returnUrl; ?>">
    <input type="hidden" name="Checksum" value="<?php echo $Checksum; ?>">
    <input type="hidden" name="billing_cust_name" value="<?php echo $orderdata[7].$orderdata[8];?>"> <!--Pass Customer Full Name -->
    <input type="hidden" name="billing_cust_address" value="<?php echo $orderdata[9].$orderdata[10];?>"><!--Pass Customer Full Address-->
    <input type="hidden" name="billing_cust_country" value="<?php echo $orderdata[15];?>"> <!--Pass Customer Country -->
    <input type="hidden" name="billing_cust_state" value="<?php echo $orderdata[14];?>"><!--Pass Customer State -->
    <input type="hidden" name="billing_cust_city" value="<?php echo $orderdata[13];?>"> <!--Pass Customer City -->
    <input type="hidden" name="billing_zip" value="<?php echo $orderdata[16];?>"> <!--Pass Customer Zip Code-->
    <input type="hidden" name="billing_cust_tel" value="<?php echo $orderdata[11];?>"> <!--Pass Customer Phone No-->
    <input type="hidden" name="billing_cust_email" value="<?php echo $orderdata[12];?>"> <!--Pass Customer Email address-->
    <input type="hidden" name="delivery_cust_name" value="<?php echo $orderdata[7].$orderdata[8];?>"> <!--Pass Same or other other detail fill by customer-->
    <input type="hidden" name="delivery_cust_address" value="<?php echo $orderdata[9].$orderdata[10];?>">
    <input type="hidden" name="delivery_cust_country" value="<?php echo $orderdata[15];?>">
    <input type="hidden" name="delivery_cust_state" value="<?php echo $orderdata[14];?>">
    <input type="hidden" name="delivery_cust_tel" value="<?php echo $orderdata[11];?>">
    <input type="hidden" name="delivery_cust_notes" value="">
    <input type="hidden" name="Merchant_Param" value="">
    <input type="hidden" name="billing_zip_code" value="<?php echo $orderdata[16];?>">
    <input type="hidden" name="delivery_cust_city" value="<?php echo $orderdata[13];?>">
    <input type="hidden" name="delivery_zip_code" value="<?php echo $orderdata[16];?>">

</form>

Please refer the above example and also refer the following link CCAvenue Integration PDF

I think this may help you to resolve your problem.