Как реализовать опцию платежного шлюза CCAvenue

Нам нужно внедрить вариант платежного шлюза CCAvenue. Как я могу сделать это с помощью ASP.net/С#?


person Avinash    schedule 23.02.2010    source источник


Ответы (3)


Пожалуйста, ознакомьтесь с Руководством по интеграции на официальном сайте ccavenue. Надеюсь, оно вам поможет.

http://world.ccavenue.com/content/works_any_shoppingcart.jsp

person amexn    schedule 23.02.2010

Я решил это. Да, CCAvenue обеспечивает хорошую поддержку. Но человек, который использует форум asp.net, всегда будет искать коды asp.net и прямые ответы. :)

Я надеюсь, что это поможет кому-то. Я создал два свойства в коде позади. Один из них — вернуть значение контрольной суммы, а другой — вернуть сведения об элементах оформления заказа.

public string CCAvenueItemList
{
    get
    {
        StringBuilder CCAvenueItems = new StringBuilder();
        DataTable dt = new DataTable();
        DataTable dtClientInfo = new DataTable();
        dt = (DataTable)Session["CheckedItems"];
        dtClientInfo = (DataTable)Session["ClientInfo"];
        for (int i = 0; i <= dt.Rows.Count - 1; i++)
        {

            string amountTemplate = "<input type=\"hidden\" name=\"Amount\" value=\"$Amount$\" />\n";
            string orderTemplate = "<input type=\"hidden\" name=\"Order_Id\" value=\"$Order_Id$\" />\n";

            // BILLING INFO
            string billingNameTemplate = "<input type=\"hidden\" name=\"billing_cust_name\" value=\"$billing_cust_name$\" />\n";
            string billingCustAddressTemplate = "<input type=\"hidden\" name=\"billing_cust_address\" value=\"$billing_cust_address$\" />\n";
            string billingCountryTemplate = "<input type=\"hidden\" name=\"billing_cust_country\" value=\"$billing_cust_country$\" />\n";
            string billingEmailTemplate = "<input type=\"hidden\" name=\"billing_cust_email\" value=\"$billing_cust_email$\" />\n";
            string billingTelTemplate = "<input type=\"hidden\" name=\"billing_cust_tel\" value=\"$billing_cust_tel$\" />\n";
            string billingStateTemplate = "<input type=\"hidden\" name=\"billing_cust_state\" value=\"$billing_cust_state$\" />\n";
            string billingCityTemplate = "<input type=\"hidden\" name=\"billing_cust_city\" value=\"$billing_cust_city$\" />\n";
            string billingZipTemplate = "<input type=\"hidden\" name=\"billing_zip_code\" value=\"$billing_zip_code$\" />\n";

            billingCustAddressTemplate = billingCustAddressTemplate.Replace("$billing_cust_address$", dtClientInfo.Rows[0]["Address"].ToString());
            billingCountryTemplate = billingCountryTemplate.Replace("$billing_cust_country$", dtClientInfo.Rows[0]["Country"].ToString());
            billingEmailTemplate = billingEmailTemplate.Replace("$billing_cust_email$", dtClientInfo.Rows[0]["Email_ID"].ToString());
            billingTelTemplate = billingTelTemplate.Replace("$billing_cust_tel$", dtClientInfo.Rows[0]["Phone_no"].ToString());
            billingStateTemplate = billingStateTemplate.Replace("$billing_cust_state$", dtClientInfo.Rows[0]["State"].ToString());
            billingCityTemplate = billingCityTemplate.Replace("$billing_cust_city$", dtClientInfo.Rows[0]["City"].ToString());
            billingZipTemplate = billingZipTemplate.Replace("$billing_zip_code$", dtClientInfo.Rows[0]["ZipCode"].ToString());

            strAmount = dt.Rows[i]["INR"].ToString();
            amountTemplate = amountTemplate.Replace("$Amount$", dt.Rows[i]["INR"].ToString());
            orderTemplate = orderTemplate.Replace("$Order_Id$", dt.Rows[i]["ClientID"].ToString());
            billingNameTemplate = billingNameTemplate.Replace("$billing_cust_name$", dtClientInfo.Rows[0]["Name"].ToString());

            CCAvenueItems.Append(amountTemplate)
                .Append(orderTemplate)
                .Append(billingNameTemplate)
                .Append(billingCustAddressTemplate)
                .Append(billingCountryTemplate)
                .Append(billingEmailTemplate)
                .Append(billingTelTemplate)
                .Append(billingStateTemplate)
                .Append(billingCityTemplate)
                .Append(billingZipTemplate)
                .Append(deliveryNameTemplate)
                .Append(deliveryCustAddressTemplate)
                .Append(deliveryCountryTemplate)
          }
        return CCAvenueItems.ToString();
    }
}

Еще одно свойство для возврата контрольной суммы:

public string propcheckSum
{
    get {
        libfuncs objLib = new libfuncs();
        string strCheckSum = objLib.getchecksum("YourMerchantID", Session["ClientID"].ToString(), strAmount, "UrReturnUrl", "your working key");
        return strCheckSum;
    }
}

И использовал это свойство в представлении источника дизайна, как показано ниже.

<div>
    <%=CCAvenueItemList%>
    <input type="hidden" name="Merchant_Id" value="yourmerchantID" />
    <input type="hidden" name="Checksum" value="<%=propcheckSum%>" />
    <input type="hidden" name="Redirect_Url" value="YourWebsite'sThankyoupage.aspx" />
    <input type="submit" value="Submit" runat="server" />
</div> 

Вы можете получить идентификатор продавца и сгенерировать рабочий ключ на веб-сайте CCAvenue. То есть в логине мерчанта.

Надеюсь, это хоть кому-то поможет.

person saun4frsh    schedule 10.06.2014

Вам нужно будет сначала зарегистрироваться или свяжитесь с ними и попросите руководство по интеграции платежей. Я не думаю, что это то же самое, что и интеграция PayPal на ваш сайт.

person Shoban    schedule 25.02.2010