3

単一のアイテムを追加するのに最適なPayPalのクラスを作成しましたが、複数の商品を追加してロゴを使用してページをカスタマイズできるように、これをカートとして機能させようとしています。

誰かが私がこれを行う方法の例を提供できますか?私はかなりの数のウェブサイトを見回しました、しかしそれらのどれも本当によく説明していないようです。私が理解していることから、私はPayPal標準を使用しています。

public static class PayPal
{

    public static string _URLRedirect;
    public static void ProcessPayment(int Amount, string ItemName)
    {

        const string Server_URL = "https://www.sandbox.paypal.com/cgi-bin/webscr?";
        const string return_URL = "https://www.paypal.com/xclick/Sample@gmail.com";
        const string cancelreturn_URL = "http://www.PageWhenCancel.com/cc.fail.aspx";

        //Assigning Cmd Path as Statically to Parameter
        string cmd = "_xclick";

        //Assigning business Id as Statically to Parameter
        string business = "payments@xxx.xx.xx";// Enter your business account here

        //Assigning item name as Statically to Parameter
        string item_name = ItemName.ToString();

        //Passing Amount as Statically to parameter 
        int amount = Amount;

        //Passing Currency as Statically to parameter
        string currency_code = "GBP";

        string redirect = "";

        //Pass your Server_Url,cmd,business,item_name,amount,currency_code variable.        
        redirect += Server_URL;
        redirect += "cmd=" + cmd;
        redirect += "&business=" + business;
        redirect += "&item_name=" + item_name;
        redirect += "&amount=" + amount;
        redirect += "&currency_code=" + currency_code;


        redirect += "&return=" + return_URL;
        redirect += "&cancel_return" + cancelreturn_URL;


        //Redirect to the payment page
        _URLRedirect = redirect.ToString();
    }
}
4

2 に答える 2

1

こんにちは、asp.net リピーターがこれを解決するのに役立つことがわかるまで、現在同様の問題に直面しています。

たとえば、アプリケーション インターフェイスでは、この ff を含める必要があります。デフォルトのコード行 (項目リストを動的にしたい場合に備えて):

<form id="Paypal" name="Paypal" action="https://www.sandbox.paypal.com/cgi-bin/webscr">
method="post">
<input type="hidden" name="cmd" value="_cart" />
<input type="hidden" name="upload" value="1" />
<input type="hidden" name="business" value="<%=System.Web.Configuration.WebConfigurationManager.AppSettings[" paypalemail="] %>" />
<asp:repeater id="rptItems" runat="server" xmlns:asp="#unknown">
<itemtemplate>
    <input type="hidden" name="item_name_<%# Eval("itemCount") %>" value="<%# Eval("itemValue") %>" />
    <input type="hidden" name="quantity_<%# Eval("itemCount") %>" value="<%# Eval("quantityValue") %>" />
    <input type="hidden" name="amount_<%# Eval("itemCount") %>" value="<%# Eval("amountValue") %>" />
</itemtemplate>
</asp:repeater>
<input type="hidden" name="shipping_1" value="5" />
<input type="hidden" name="handling_1" value="5" />
<input type="hidden" name="tax_1" value="5" /> 
<input type="hidden" name="currency_code" value="USD" />
<input type="hidden" name="return" value="<%=System.Web.Configuration.WebConfigurationManager.AppSettings[" successurl="] %>" />
<input type="hidden" name="cancel_return" value="<%=System.Web.Configuration.WebConfigurationManager.AppSettings[" failedurl="] %>" />
<input type="hidden" name="lc" value="test lc country" />
<input type="submit" value="Submit" />

</form>

一方:

必要なサード パーティのショッピング カート変数 HTML コードには、少なくとも次の非表示の HTML 変数が必要です。変数の完全なリストについては、付録 A「ウェブ ペイメント スタンダードの HTML 変数」を参照してください。表 4.1

必要なサード パーティのショッピング カート変数名

説明 item_name1 - 単一アイテムの名前

amount_1 - 単一のアイテムの価格またはショッピング カート内のすべてのアイテムの合計価格

quantity_1 - 単一アイテムの数量

ビジネス-
PayPal アカウントのメールアドレス

item_name_1 - アイテムの名前またはショッピング カート全体の名前

アップロード- サード パーティのショッピング カートの使用を示します。サード パーティのショッピング カートを PayPal およびウェブ ペイメント スタンダードと統合するには、次の 2 つの方法があります。

個々のアイテムの詳細を渡します。

個々のアイテムの詳細ではなく、カートの合計支払いの合計金額を渡します。

コードビハインドでは、次のようなことができます。

if (!Page.IsPostBack)
    {
        DataTable dtItems = new DataTable();
        dtItems.Columns.Add("itemCount");
        dtItems.Columns.Add("itemValue");
        dtItems.Columns.Add("quantityValue");
        dtItems.Columns.Add("amountValue");
        dtItems.Rows.Add("1","Cellphone", "10", "200.00");
        dtItems.Rows.Add("2", "Bag", "2", "250.00");
        dtItems.Rows.Add("3", "Mouse", "10", "3500.00");
        dtItems.Rows.Add("4", "Keyboard", "5", "200.00");

        rptItems.DataSource = dtItems;
        rptItems.DataBind();
   }

そして大声で!サンドボックスにリダイレクトすると、次の結果が得られます。 Paypal_capture

この投稿があなたの懸念に答えることを願っています。:) :)

于 2012-08-03T05:17:17.527 に答える
0

私は過去にこの同じ問題を抱えていました。私がしなければならなかったのは、Paypal とは独立した独自のカートを作成することでした。次に、顧客がチェックアウトする準備ができたら、Paypal に転送します。複数のアイテムと価格を送信する代わりに、Paypal 用にすべてをまとめます。

たとえば、顧客が 3 つの異なる商品をそれぞれ 5 ドルで注文した場合、私のサイトには 3 つの商品と 3 つの価格が表示されます。ただし、Paypal に転送されると、顧客には 1 つのアイテム (つまり、"My Company Order") と 1 つの価格 (つまり、15 ドル) が表示されます。しかし、私のサイトに戻ったとき、顧客は再び 3 つの商品が注文されていることを確認しました。

優れたカート システムをお探しの場合は、Paypal とこの方法をサポートする、文字通り何百もの利用可能なカート システムがあります。

于 2012-08-02T22:27:38.873 に答える